An open API service indexing awesome lists of open source software.

https://github.com/hawmex/aut_pp_project

This repository contains the files of my project for the "Production Planning" course at AUT (Tehran Polytechnic).
https://github.com/hawmex/aut_pp_project

master-schedule mrp production-planning python

Last synced: 2 months ago
JSON representation

This repository contains the files of my project for the "Production Planning" course at AUT (Tehran Polytechnic).

Awesome Lists containing this project

README

        

# Production Planning

This repository contains the files of my project for the "Production Planning"
course at Amirkabir University of Technology (Tehran Polytechnic).

## Phase 1: Demand Forecasting

### Description

The dataset contains 6 tables, containing the actual demands for 6 type of
products belonging to 3 groups:

- Group 1 (G1): M1, M3, and M4
- Group 2 (G2): M2 and M5
- Group 3 (G3): M6

This phase focuses on 3 major contributions:

1. Predicting the demands for each group at the next 6 steps in the time series,
implementing and using various forecasting methods such as Simple Exponential
Smoothing (SES) and Linear Regression (LR).
2. Conducting error analysis on the resulting predictions from the forecasting
methods, calculating MFE and MAE for each of them.
3. Calculating the tracking signal for each forecasting method.

### Details

Our demand forecasting section contains 5 methods:

1. Simple Exponential Smoothing (SES) with `alpha=0.3`.
2. Simple Moving Average (SMA) with `n=3`.
3. Weighted Moving Average (WMA) with `weights=[0.2, 0.3, 0.5]`.
4. Linear Regression (LR)
5. Adjusted Linear Regression (ALR) with `cycle_length=12`.

### Results

![SES](./1.%20Demand%20Forecasting/plots/SES.jpg)
![SMA](./1.%20Demand%20Forecasting/plots/SMA.jpg)
![WMA](./1.%20Demand%20Forecasting/plots/WMA.jpg)
![LR](./1.%20Demand%20Forecasting/plots/LR.jpg)
![ALR](./1.%20Demand%20Forecasting/plots/ALR.jpg)

### Error Analysis and Tracking Signal

This section's results can be found at
`./1.%20Demand%20Forecasting/output.xlsx`. However, we can have a glimpse at the
tracking signals:




G1
G2
G3




SES
1.627202
1.494879
-5.000000


SMA
-1.497890
-0.543943
-5.000000


WMA
-2.279876
-1.372624
-5.000000


LR
4.758926
4.039556
3.254925


ALR
5.000000
3.809070
1.948311

## Phase 2: S&OP

### Description

In this phase, we use the forecasts of the first phase in the S&OP of these 3
product groups, modeling an LP problem and conducting sensitivity analysis on
two of its parameters.

The objective function, constraints, parameters, and decision variables can be
found at `./2. S&OP/report.pdf`. Also, the implementation of this problem in
Python's PuLP can be found at `./2. S&OP/notebook.ipynb`. Moreover, the solved
model is exported and saved at `./2. S&OP/model.json`.

### Results

```
total cost: 59338527006666.664
```




T20
T21
T22
T23
T24
T25




RP
(434092, 147043, 5215)
(434092, 147043, 5215)
(434092, 147043, 5215)
(434148, 147033, 4644)
(434148, 147033, 4644)
(434148, 147033, 4644)


OP
(5788, 18832, 1413)
(1, 11920, 0)
(0, 0, 0)
(0, 0, 0)
(0, 0, 0)
(0, 0, 0)


PI
(434092, 147043, 5215)
(0, 0, 0)
(0, 0, 0)
(56, 0, 0)
(0, 0, 0)
(0, 0, 0)


PD
(0, 0, 0)
(0, 0, 0)
(0, 0, 0)
(0, 10, 571)
(0, 0, 0)
(0, 0, 0)


IL
(0, 0, 0)
(-599, -2, -300)
(655, -6002, -91)
(0, -6089, 0)
(-44, 8985, 273)
(0, 0, 0)


IS
(0, 0, 0)
(0, 0, 0)
(655, 0, 0)
(0, 0, 0)
(0, 8985, 273)
(0, 0, 0)


IG
(0, 0, 0)
(599, 2, 300)
(0, 6002, 91)
(0, 6089, 0)
(44, 0, 0)
(0, 0, 0)


TW
187632
187632
187632
187464
187464
187464


OW
29157
13352
0
0
0
0


HW
167632
0
0
0
0
0


FW
0
0
0
168
0
0

### Sensitivity Analysis

As said, sensitivity analysis is conducted on two following parameters:

#### Regular Salary

```
rs = 12000000, total cost: 55962663006666.664
rs = 13000000, total cost: 57087951006666.664
rs = 14000000, total cost: 58213239006666.664
rs = 15000000, total cost: 59338527006666.664
rs = 16000000, total cost: 60463815006666.664
rs = 17000000, total cost: 61589103006666.664
rs = 18000000, total cost: 62714391006666.664
```

#### Hiring Cost

```
hc = 1200000, total cost: 59137368606666.664
hc = 1600000, total cost: 59204421406666.664
hc = 2000000, total cost: 59271474206666.664
hc = 2400000, total cost: 59338527006666.664
hc = 2800000, total cost: 59405579806666.664
hc = 3200000, total cost: 59472632606666.664
hc = 3600000, total cost: 59539685406666.664
```

## Phase 3: MPS and MRP

In the final phase, MPS is developed and MRP is conducted for each product
group. More details can be found at `./3. MPS and MRP/notebook.ipynb` and
`./3. MPS and MRP/report.pdf`.

### MPS

#### Group 1




0
1
2
3
4
5
6
7
8
9
...
15
16
17
18
19
20
21
22
23
24




Forecast
0.0
109970.0
109970.0
109970.0
109970.0
108673.0
108673.0
108673.0
108673.0
108210.0
...
108701.0
108701.0
108548.0
108548.0
108548.0
108548.0
108526.0
108526.0
108526.0
108526.0


Order
0.0
101008.0
107570.0
82990.0
92990.0
81660.0
69276.0
62743.0
59740.0
75777.0
...
70151.0
58829.0
61655.0
53822.0
56719.0
59315.0
60527.0
54358.0
53500.0
62392.0


Demand
0.0
101008.0
107570.0
82990.0
92990.0
81660.0
69276.0
108673.0
108673.0
108210.0
...
108701.0
108701.0
108548.0
108548.0
108548.0
108548.0
108526.0
108526.0
108526.0
108526.0


PoH
4740.0
119950.0
12380.0
145608.0
52618.0
187176.0
117900.0
9227.0
116772.0
8562.0
...
6483.0
114000.0
5452.0
113122.0
220792.0
112244.0
219936.0
111410.0
219102.0
110576.0


ATP
0.0
7640.0
0.0
40238.0
0.0
2539.0
0.0
0.0
80701.0
0.0
...
0.0
95734.0
0.0
162396.0
100184.0
0.0
101333.0
0.0
100326.0
0.0


MPS
0.0
216218.0
0.0
216218.0
0.0
216218.0
0.0
0.0
216218.0
0.0
...
0.0
216218.0
0.0
216218.0
216218.0
0.0
216218.0
0.0
216218.0
0.0

#### Group 2




0
1
2
3
4
5
6
7
8
9
...
15
16
17
18
19
20
21
22
23
24




Forecast
0.0
41469.0
41469.0
41469.0
41469.0
39742.0
39742.0
39742.0
39742.0
38261.0
...
36780.0
36780.0
32990.0
32990.0
32990.0
32990.0
39005.0
39005.0
39005.0
39005.0


Order
0.0
37048.0
38661.0
32388.0
30016.0
28078.0
29133.0
33582.0
27698.0
28652.0
...
22506.0
19947.0
23133.0
26109.0
20192.0
22460.0
19769.0
18557.0
18004.0
18910.0


Demand
0.0
37048.0
38661.0
32388.0
30016.0
28078.0
29133.0
39742.0
39742.0
38261.0
...
36780.0
36780.0
32990.0
32990.0
32990.0
32990.0
39005.0
39005.0
39005.0
39005.0


PoH
3160.0
110257.0
71596.0
39208.0
9192.0
125259.0
96126.0
56384.0
16642.0
122526.0
...
41548.0
4768.0
115923.0
82933.0
49943.0
16953.0
122093.0
83088.0
44083.0
5078.0


ATP
0.0
6032.0
0.0
0.0
0.0
25654.0
0.0
0.0
0.0
41413.0
...
0.0
0.0
52251.0
0.0
0.0
0.0
68905.0
0.0
0.0
0.0


MPS
0.0
144145.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
...
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0

#### Group 3




0
1
2
3
4
5
6
7
8
9
...
15
16
17
18
19
20
21
22
23
24




Forecast
0.0
1657.0
1657.0
1657.0
1657.0
1379.0
1379.0
1379.0
1379.0
1252.0
...
1139.0
1139.0
1093.0
1093.0
1093.0
1093.0
1230.0
1230.0
1230.0
1230.0


Order
0.0
1497.0
1195.0
1558.0
1280.0
1426.0
1342.0
1074.0
1041.0
1133.0
...
821.0
1122.0
1122.0
856.0
1019.0
842.0
1074.0
815.0
947.0
855.0


Demand
0.0
1497.0
1195.0
1558.0
1280.0
1426.0
1342.0
1379.0
1379.0
1252.0
...
1139.0
1139.0
1122.0
1093.0
1093.0
1093.0
1230.0
1230.0
1230.0
1230.0


PoH
1975.0
90570.0
89375.0
87817.0
86537.0
85111.0
83769.0
82390.0
81011.0
79759.0
...
72586.0
71447.0
70325.0
69232.0
68139.0
67046.0
65816.0
64586.0
63356.0
62126.0


ATP
0.0
63994.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0


MPS
0.0
90092.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0

### MRP

#### Group 1




0
1
2
3
4
5
6
7
8
9
...
15
16
17
18
19
20
21
22
23
24




Gross Requirements
0.0
216218.0
0.0
216218.0
0.0
216218.0
0.0
0.0
216218.0
0.0
...
0.0
216218.0
0.0
216218.0
216218.0
0.0
216218.0
0.0
216218.0
0.0


Scheduled Receipts
0.0
216218.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0


PoH
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
...
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0
4740.0


Net Requirements
0.0
0.0
0.0
216218.0
0.0
216218.0
0.0
0.0
216218.0
0.0
...
0.0
216218.0
0.0
216218.0
216218.0
0.0
216218.0
0.0
216218.0
0.0


Planned Order Receipt
0.0
0.0
0.0
216218.0
0.0
216218.0
0.0
0.0
216218.0
0.0
...
0.0
216218.0
0.0
216218.0
216218.0
0.0
216218.0
0.0
216218.0
0.0


Planned Order Release
0.0
0.0
216218.0
0.0
216218.0
0.0
0.0
216218.0
0.0
216218.0
...
216218.0
0.0
216218.0
216218.0
0.0
216218.0
0.0
216218.0
0.0
0.0

#### Group 2




0
1
2
3
4
5
6
7
8
9
...
15
16
17
18
19
20
21
22
23
24




Gross Requirements
0.0
144145.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
...
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0


Scheduled Receipts
0.0
144145.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0


PoH
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
...
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0
3160.0


Net Requirements
0.0
0.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
...
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0


Planned Order Receipt
0.0
0.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
...
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0


Planned Order Release
0.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0
144145.0
0.0
...
0.0
144145.0
0.0
0.0
0.0
144145.0
0.0
0.0
0.0
0.0

#### Group 3




0
1
2
3
4
5
6
7
8
9
...
15
16
17
18
19
20
21
22
23
24




Gross Requirements
0.0
90092.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0


Scheduled Receipts
0.0
90092.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0


PoH
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
...
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0
1975.0


Net Requirements
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0


Planned Order Receipt
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0


Planned Order Release
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
...
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0