Professional Documents
Culture Documents
Slama2020 Friday Morning
Slama2020 Friday Morning
Slama2020 Friday Morning
GROUP REPORT
STUDENT ID NAME
IELSIU18086 Hồ Yến Na
TABLE OF CONTENT
I. INTRODUCTION 3
II. METHODOLOGY 5
1. MATHEMATICAL MODEL 5
1.1. BASIC PROBLEM 5
1.2. PROBLEM FORMULATION 6
2. MODEL IMPLEMENTTATION BY CPLEX 9
3. DATA ANALYSIS: 11
3.1 DISASSEMBLY PRODUCT STRUCTURE 11
3.2 DATA OF PARAMETERS 12
III. RESULT 14
IV. CONCLUSION 19
V. REFERENCES 20
CONTRIBUTION FORM 21
Page 1
Inventory Management Group 2
With the complexity and specialization in an organization increase, it becomes more and
more difficult to allocate the available expenditure to the various activities, especially
keeping stock in a way that is most economical for the organization as a whole.
As its name implies, inventory management involves “manage the inventory”. Every
organization holds stocks of materials to allow for variations and uncertainty in supply
and demand. Stocks are replenished by deliveries from suppliers and reduced to meet
demands from customers. Inventory management is responsible for all aspects of stock
control. High stock buffer comes at a high price and organizations are continually
looking for ways of reducing their inventory costs without affecting service. In the
process, inventory management has made a significant contribution to minimize the
expenditure consumed.
Page 2
Inventory Management Group 2
I. INTRODUCTION
2. PROBLEM DESCRIPTION
Customers have a reliable demand for disassembled items for all time periods of the
planning horizon. This demand is both external for non-root items (subassemblies and
leaf items) and internal for non-leaf items stemming from the demand for end-of-life
products and subassemblies. It is satisfied either by disassembling the end-of-life
products or via procurements of new non-root items in the marketplace.
Inventory holding costs arise when the non-root items are held in inventory to meet the
future demand.
The goal of the model is to optimize the disassembly plans for each parent item while
fulfilling the external demand for non-root items. The two primary objectives are to (i)
maximize the profit obtained by the resale of recovered non-root items and (ii) minimize
the total cost tied to the disassembly process over the planning horizon.
Page 3
Inventory Management Group 2
3. OBJECTIVES
This project addresses the capacitated dynamic lot-sizing problem with external
procurement, defective and backordered items, set-up times, and extra capacity. Firstly,
group 2 builds a mathematical model for the problem such that the objective function
represents the economic goal of maximizes the total profit while minimizing the sum of a
combination of costs: inventory holding, backlogging, external procurement, setup, and
overload costs over the planning horizon. Then, group 2 will compute CPLEX software
to generate optimal solution.
4. SCOPE
Our group solves case Slama 2020, starting from mathematical model. This project
facilitates the solving process via CPLEX software. The solving process is conducted
over 14 weeks.
5. LIMITATION
The project is restricted on the information source. All data was drawn from the study
case assessment subjectively. The solving process is influenced by methodologies
extracted from two textbooks: Inventory Management and Production Planning
Scheduling (Third Edition) By Edward A.Silver David F.Pyke Rein Peterson.
6. ASSUMPTIONS
To simplify the problem, the following assumptions have been made:
Page 4
Inventory Management Group 2
II. METHODOLOGY
1. MATHEMATICAL MODEL
1.1. Basic problem
The problem with the disassembly system is shown in figure 1 with only one type of End-of-Life
(EoL) product, part commonalities and a multi-level Bill Of Material (BOM). The item to
disassemble is represented by the parent item. It has more than one child and a child element.
1 DLT = 1
(1) (2)
DLT = 0 2 3 DLT = 1
(2) (1)
(1)
DLT = 1 4 5 DLT = 0
6 7 8
As illustrated in figure 1, the table below shows the relationship between items:
Element Name
1 the root item
2-5 the subassembly items
6-8 the components/ leaf items
7 a common component (can be obtained from parent 4 or parent 5)
Because of quantity discounts, the commonality of items leads to lower disassembly and
inventory costs in disassembly process, which can also reduce the use of materials across several
End-of-Life (EoL) products. Similarly, the number in brackets represents the number of units of
the item obtained when one unit of its parent is disassembled. To be specific, item 5 is
disassembled into 3 units of item 7 and 1 units of item 8. In addition, the disassembly lead time
(DLT) includes the time elapsed between releasing the disassembly order and receiving the
disassembled items. All parent items are disassembled when disassembly process is complete.
Page 5
Inventory Management Group 2
Due to limited disassembly capabilities, the term “overtime” is used in cases where a
disassembly plan so required by adding extra capacity. Moreover, it encompasses all capacity
additions and extra capacity on overtime is also limited.
The model, which is focused on the multi-period capacitated (Disassembly lot-sizing) DLS for
the case of one product type and parts commonalities. Also, it is designed for purpose of
satisfying customer demands by finding the best disassembly timing and quantities. The model is
formulated based on material requirements planning (MRP) model mentioned in “Introduction
to computational optimization models for production planning in a supply chain” and develop it
to a R-MRP version. Therefore, in this case the problem is a reverse of the classical MRP.
(1) ℰ, the set of items 𝑖 with 𝑖 = 1, 2, … , 𝑖𝑙−1 , 𝑖𝑙 , … 𝑃, where 𝑖𝑙 denote the index for the first
leaf item
(2) 𝒜, the set of leaf items 𝑖 of the last level of product structure that can no longer be
disassembled with 𝑖 = 𝑖𝑙 , … , 𝑃 ∀ 𝑖 ∈ 𝒜, ∀ 𝑗 ∈ ℰ|𝑅𝑖,𝑗 = 0
(3) 𝒜𝐶 , the set of remaining items 𝑖 such that 𝒜 ∪ 𝒜𝐶 = ℰ
To make the model easy to understand, a marco, denoted ≡, is indicated the inventory level for
each non-root item 𝑖 in each time period 𝑡. The table below shows list of notations that is used
throughout this report.
Index
𝑡 Index of period 𝑡, 𝑡 ∈ 𝒯
𝑖 Index of item 𝑖, 𝑖 ∈ ℰ
Parameters
𝒯 Set of time period of the planning horizon
ℰ Set of items
𝒜 Set of leaf items 𝑖
𝒜𝐶 Set of sub-assemblies items 𝑖
Number of units of item 𝑗 obtained from disassembling one unit of item
𝑅𝑖,𝑗
𝑖
𝐷𝑖,𝑡 External demand for item 𝑖 in time-period 𝑡
𝐼𝑖,0 Starting inventory of item 𝑖
Page 6
Inventory Management Group 2
Eq. (1) represents the objective function that maximizes the total profit while minimizing the
sum of a combination of costs: inventory holding, backlogging, external procurement, setup, and
overload costs over the planning horizon:
+ −
𝑀𝑎𝑥 ∑ ( ∑ (𝑆𝐶𝑖 . 𝑄𝑖,𝑡 − ℎ𝑖 . 𝐼𝑖,𝑡 − 𝑏𝑖 . 𝐼𝑖,𝑡 − 𝐶𝑖 𝑍𝑖,𝑡 ) − 𝑂𝑡 . 𝑌𝑡 − ∑ 𝑆𝑖 . 𝛿𝑖,𝑡 )
𝑡∈𝒯 𝑖∈ℰ∖{1} 𝑖∈𝒜𝐶
+ −
= 𝑀𝑎𝑥 ∑ ∑ (𝑆𝐶𝑖 . 𝑄𝑖,𝑡 − ℎ𝑖 . 𝐼𝑖,𝑡 − 𝑏𝑖 . 𝐼𝑖,𝑡 − 𝐶𝑖 𝑍𝑖,𝑡 ) − ∑ 𝑂𝑡 . 𝑌𝑡 − ∑ ∑ 𝑆𝑖 . 𝛿𝑖,𝑡 (1)
𝑡∈𝒯 𝑖∈ℰ∖{1} 𝑡∈𝒯 𝑡∈𝒯 𝑖∈𝒜𝐶
Eq. (2) represents the inventory balance for each non-root item i at the end in each time-period t:
Page 7
Inventory Management Group 2
+ −
𝐼𝑖,𝑡 − 𝐼𝑖,𝑡 = 𝐼𝑖,𝑡 ∀ 𝑖 ∈ ℰ∖{1} , ∀𝑡 ∈ 𝒯 (2)
Where 𝐼𝑖,𝑡 is the marco defined as follows:
𝐼𝑖,𝑡 ≡ 𝐼𝑖,𝑡−1 + ∑ 𝑅𝑘,𝑖 . 𝑋𝑘,𝑡−𝐿𝑘 − 𝐷𝑖,𝑡 − 𝑋𝑖,𝑡 − 𝑊𝑖,𝑡 + 𝑍𝑖,𝑡
𝑘∈𝜙𝑖
Eq. (3) defines the demand and materials requirement for all non-root items and periods. In other
words, all demands must be satisfied at the end of the planning horizon:
𝑡
Eq (4) guarantees that a setup cost is generated in a period if any disassembly operation needs to
be performed in that period:
𝑋𝑖,𝑡
𝛿𝑖,𝑡 − ≥0 ∀ 𝑖 ∈ 𝒜𝐶 , ∀𝑡 ∈ 𝒯 (4)
𝑀
Eq. (5) defines the defective quantity for each non-root item i in each time-period t:
𝑊𝑖,𝑡 = 𝛼𝑖 × ∑ 𝑅𝑘,𝑖 . 𝑋𝑘,𝑡−𝐿𝑘 ∀ 𝑖 ∈ ℰ∖{1} , ∀𝑡 ∈ 𝒯 (5)
𝑘∈𝜙𝑖
Eq. (7) represents the lower and upper bounds available for extra capacity on overtime in each
time-period t:
0 ≤ 𝑌𝑡 ≤ 𝐹𝑡 ∀𝑡 ∈ 𝒯 (7)
Eq. (8) defined the sale quantity for each non-root item i and time-period t:
𝑄𝑖,𝑡 = (𝐷𝑖,𝑡 − 𝑍𝑖,𝑡 − 𝐼𝑖,𝑡 ) ∀ 𝑖 ∈ ℰ∖{1} , ∀𝑡 ∈ 𝒯 (8)
Eq. (9) – (17) offer the conditions framing the decision variables:
𝑊𝑖,𝑡 ≥ 0 ∀ 𝑖 ∈ ℰ∖{1} , ∀𝑡 ∈ 𝒯 (9)
𝑌𝑡 ≥ 0 ∀𝑡 ∈ 𝒯 (10)
−
𝐼𝑖,𝑡 ≥ 0 ∀ 𝑖 ∈ ℰ∖{1} , ∀𝑡 ∈ 𝒯 (11)
+
𝐼𝑖,𝑡 ≥ 0 ∀ 𝑖 ∈ ℰ∖{1} , ∀𝑡 ∈ 𝒯 (12)
𝑍𝑖,𝑡 ≥ 0 ∀ 𝑖 ∈ ℰ∖{1} , ∀𝑡 ∈ 𝒯 (13)
𝑄𝑖,𝑡 ≥ 0 ∀ 𝑖 ∈ ℰ∖{1} , ∀𝑡 ∈ 𝒯 (14)
𝑋𝑖,𝑡 ≥ 0 ∀ 𝑖 ∈ 𝒜 𝐶 , ∀𝑡 ∈ 𝒯 (15)
Page 8
Inventory Management Group 2
𝑋𝑖,𝑡 ≤ 0 ∀ 𝑖 ∈ 𝒜𝐶 , ∀𝑡 ∈ 𝒯 (16)
𝛿𝑖,𝑡 ∈ {0, 1} ∀ 𝑖 ∈ 𝒜𝐶 , ∀𝑡 ∈ 𝒯 (17)
Eq. (1) determine objective function and Eq. (2) – (17) determine all the constraints of the
model.
//Variables
dvar int+ X[Item][Period];
dvar int+ Z[Item][Period];
dvar int+ Y[Period];
dvar boolean sigma[Item][Period];
dvar int+ I_p[Item][Period];
dvar int+ I_m[Item][Period];
dvar int+ I[Item][Period];
dvar int+ W[Item][Period];
dvar int+ Q[Item][Period];
Page 9
Inventory Management Group 2
//Constraints
subject to
{
Constraint2: //Inventory balance for non-root item i at t
forall (i in Item, t in Period: i != 1)
I_p[i][t] - I_m[i][t] == I[i][t];
Constraint2Add: //Inventory level for non-root item i at t
forall (i in Item, t in Period: i != 1){
if (t > 1)
I[i][t] == I[i][t-1] + sum(k in Item: phi[i][k] == 1 && t - L[k] >= 1)
(R[k][i]*X[k][t - L[k]]) - D[i][t] - X[i][t] - W[i][t] + Z[i][t];
if (t == 1) //When t = 1, I[i][0]=I0[i]
I[i][t] == I0[i] + sum(k in Item: phi[i][k] == 1 && t - L[k] >= 1)
(R[k][i]*X[k][t - L[k]]) - D[i][t] - X[i][t] - W[i][t] + Z[i][t];
}
Page 10
Inventory Management Group 2
Constraint15:
forall (i in SubAssembly, t in Period)
X[i][t] >= 0;
Constraint16: //Make sure that the only the parent items are disassembled
forall (i in LeafItem, t in Period)
X[i][t] <= 0;
3. DATA ANALYSIS:
3.1 Disassembly product structure
According to the research paper, there are 3 levels of the number of items (10, 20 and 30) that
combined with 3 levels of the number of periods (10,20 and 30). Therefore, our team choose a
combination of 10 items and 10 periods. For each level of the number of items, 5 disassembly
product structures were randomly generated, the figure below showed the structure that our team
used to calculate in our project.
2 3
4 5
6 7 8
9
10
Page 11
Inventory Management Group 2
The number of items obtained from its parent is generated from D ∼ U(1, 4). Those number of
units are selected randomly based on this information. Following the given structure, the item 1
is disassembled into 2 units of item 2 and 3 units of item 3 and so on.
𝑫𝒊,𝒕
Items/
1 2 3 4 5 6 7 8 9 10
Periods
1 0 0 0 0 0 0 0 0 0 0
2 6 35 53 93 28 48 83 18 47 87
3 0 5 51 64 44 48 93 95 52 89
4 27 94 10 12 43 90 54 92 98 76
5 16 28 83 57 16 72 49 33 18 68
6 12 33 5 22 46 83 59 47 40 79
7 64 89 51 69 60 60 9 24 89 25
8 100 16 41 26 97 36 95 93 91 30
9 72 78 2 87 96 24 21 14 23 23
10 76 60 99 58 11 41 66 51 5 42
Table 4. External demand for item 𝑖 in time-period 𝑡
The demand for non-root is the discrete uniform distribution D ∼ U(0, 100). Demand of item 1 is
zero because it is the root item. The demand for item 3 at period 4 is 64 or the demand for item 9
at period 2 is 78 and so on.
Page 12
Inventory Management Group 2
With the disassembly operation time 𝐺𝑖 , setup time 𝑆𝑇𝑖 , setup cost 𝑆𝑖 are generated from D ∼
U(1, 4), D ∼ U(10, 50), D ∼ U(0, 1000), respectively, for parent items i. To be specified, the
disassembly operation time, setup time, setup cost of item 6 is 4, 22, 43 respectively. The item 9,
10 are not generated since they are leaf items
𝒉𝒊 D ∼ U(12, 20)
𝒃𝒊 2 × ℎ𝑖
𝑺𝑪𝒊 γ × (ℎ𝑖 + 𝑆𝑖 )
𝑪𝒊 β × 𝑆𝐶𝑖
γ 1.5
β 1.8
Table 6. Generation of data of ℎ𝑖 , 𝑏𝑖 , 𝑆𝑖 , 𝑆𝐶𝑖 , 𝐶𝑖
With starting inventory of each item, our team assumed that all of them are 20 units.
With disassembly lead time is set to 0, 1 and 2 with probabilities of 0.3, 0.4 and 0.3, respectively.
The expected value of disassembly lead time is 0 × 0.3 + 1 × 0.4 + 2 × 0.3 = 1. Thus, we set
the disassembly lead time for all is 1.
With the defective rate αi for each items is D ∼ U(0, 10), however, with this data, the defective
quantity will be higher than the quantity from disassembly. It is not correct with this situation.
Therefore, our team decided that set the value of alpha is 0.
𝝓𝒊
Page 13
Inventory Management Group 2
phi(i,k) 1 2 3 4 5 6 7 8 9 10
1 0 0 0 0 0 0 0 0 0 0
2 1 0 0 0 0 0 0 0 0 0
3 1 0 0 0 0 0 0 0 0 0
4 0 1 0 0 0 0 0 0 0 0
5 0 1 1 0 0 0 0 0 0 0
6 0 0 0 1 0 0 0 0 0 0
7 0 0 0 1 1 0 0 0 0 0
8 0 0 0 0 1 0 0 0 0 0
9 0 0 0 0 0 1 1 0 0 0
10 0 0 0 0 0 0 1 1 0 0
Table 7. Matrix to determine set of parent of item i
With the set of parent of each item, our team use the matrix and boolean variable phi(i, k) to
determine. For instance, with the item 5, phi(5,1) = 0, that means item 1 is not the parent item of
item 5, however, phi(5,2) = 1, then the item 2 is the parent item of item 5 and so on. Finally, the
set of parent item of item 5 is (2,3).
𝑼𝒕 , 𝑭𝒕 , 𝑶𝒕
𝑼𝒕 D ∼ U(240, 480)
𝑭𝒕 D ∼ U(60, 120)
𝑶𝒕 D ∼ U(20, 25)
Table 9. Generation of data of 𝑈𝑡 , 𝐹𝑡 , 𝑂𝑡
III. RESULTS
Page 14
Inventory Management Group 2
𝜹𝒊,𝒕
Periods
Items
1 2 3 4 5 6 7 8 9 10
1 1 1 1 1 1 1 1 1 1 0
2 1 1 1 1 1 1 1 1 1 0
3 1 1 1 0 0 0 0 0 1 0
4 1 0 1 1 1 0 0 0 0 0
5 1 1 0 1 1 1 1 1 1 1
6 0 0 0 0 0 0 0 0 0 0
7 0 0 0 0 1 0 1 1 0 1
8 0 1 1 1 1 1 0 0 1 1
9 0 0 0 0 0 0 0 0 0 0
10 0 0 0 0 0 0 0 0 0 0
Table 10. Binary indicator of disassembly for item i in time-period 𝑡
QUANTITY TO DISASSEMBLE
Periods
Items
1 2 3 4 5 6 7 8 9 10
1 6 30 22 14 16 37 26 24 30 0
2 15 11 10 10 21 18 17 16 25 0
3 20 13 39 0 0 0 0 0 21 0
4 20 0 23 6 4 0 0 0 0 0
5 10 25 0 23 24 12 23 35 28 71
6 0 0 0 0 0 0 0 0 0 0
7 0 0 0 0 4 0 9 9 0 31
8 0 24 18 2 8 24 0 0 20 81
9 0 0 0 0 0 0 0 0 0 0
10 0 0 0 0 0 0 0 0 0 0
Table 11. Quantity of parent item i to disassemble in time-period 𝑡
Form the result of Cplex, table 8 shows the schedule to disassemble parent items over 10 periods
and table 9 shows the quantity of each parent item should be disassembled in each period. With
the root item, item 1, the quantity that are disassemble from periods 1 to 10 is 6, 30, 22, 14, 16,
37, 26, 24, 30, 0 respectively.
Page 15
Inventory Management Group 2
BACKORDERED QUANTITY
Periods
Items
1 2 3 4 5 6 7 8 9 10
1 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0 0 0
7 0 0 0 0 0 0 0 0 0 0
8 0 0 0 0 0 0 0 0 0 0
9 0 0 0 0 0 0 0 0 0 0
10 0 0 0 0 0 0 0 0 0 0
Table 12. Backordered quantity of item i in time-period 𝑡
The backordered quantity of this solution is zero, so the inventory level of each non-root item in
each time is equal to the inventory level of each item at the end of each time-periods. Having no
backordered quantity, so service level of this solution is quite good. The manager can guarantee
that all demands are able to meet on the desired day.
Page 16
Inventory Management Group 2
PURCHASING QUANTITY
Periods
Items
1 2 3 4 5 6 7 8 9 10
1 0 0 0 0 0 0 0 0 0 0
2 1 34 3 59 21 34 26 0 6 27
3 0 0 0 0 0 0 0 0 0 0
4 27 49 0 0 5 27 0 41 50 1
5 6 0 0 0 0 0 0 0 0 0
6 0 5 5 0 39 79 59 47 40 79
7 44 9 1 0 0 0 0 0 0 0
8 80 0 0 0 0 0 11 1 0 0
9 52 78 2 87 96 12 21 0 0 6
10 56 60 3 0 0 0 0 6 0 0
Table 14. Quantity of item i to procure in time-period 𝑡
According to the model, they can purchase external items for each period this is given in the
table 14.
OVERTIME
Periods Value
1 0
2 90
3 10
4 0
5 28
6 32
7 64
8 0
9 96
10 94
Table 15. Disassembly ‘Overtime’ in time-period 𝑡
Table 15 shows the extra capacity can be added for each period over a planning horizon.
Page 17
Inventory Management Group 2
DEFECTIVE QUANTITY
Periods
Items
1 2 3 4 5 6 7 8 9 10
1 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0 0 0
7 0 0 0 0 0 0 0 0 0 0
8 0 0 0 0 0 0 0 0 0 0
9 0 0 0 0 0 0 0 0 0 0
10 0 0 0 0 0 0 0 0 0 0
Table 16. Defective quantity of item i in time-period 𝑡
SALE QUANTITY
Periods
Items
1 2 3 4 5 6 7 8 9 10
1 0 0 0 0 0 0 0 0 0 0
2 5 1 50 34 7 14 57 0 41 60
3 0 5 51 62 44 48 75 94 52 88
4 0 45 10 0 38 63 54 51 48 75
5 10 1 82 57 16 72 49 33 0 68
6 4 28 0 21 7 4 0 0 0 0
7 20 80 50 69 60 60 3 5 89 25
8 20 16 0 13 97 0 84 92 62 0
9 20 0 0 0 0 12 0 1 6 17
10 20 0 96 44 0 35 30 45 1 0
Table 17. Sale quantity of item i in time-period 𝑡
Finally, table 17 illustrates the optimal sale quantity for this project.
Page 18
Inventory Management Group 2
IV. CONCLUSION
Our group has built a mathematical model for case Slama 2020 and derived solution from CPLEX
based on the model. The core purpose of the model is to consider the trade-off between external
purchases and sale costs of non-root items. Our objective is to maximize profit while minimizing the
sum of cost functions typically encountered in practice over the planning horizon. The results on a
randomly generated problems indicated that the new MIP model can give the optimal disassembly
schedule for most test problems within reasonable computation times. It this becomes feasible to find
the optimum solution using mathematical programming software CPLEX with a disassembly system
having 10 items and 10 periods. Our result is that the optimal total profit is 1,755,665.1 with no
defective and backorder items.
Page 19
Inventory Management Group 2
V. REFERENCES
[1] Edward A.Silver David F.Pyke Rein Peterson. Inventory Management and Production
Planning Scheduling (3rd Edition)
[2] Ilhem Slama, Oussama Ben-Ammarb, Alexandre Dolgui, Faouzi Masmoudi. New mixed
integer approach to solve a multi-level capacitated disassembly lot-sizing problem with defective
items and backlogging. Jounal of manufaturing system 56 (2020) 50-57
Page 20
Inventory Management Group 2
CONTRIBUTION FORM
Hồ Yến Na
100%
IELSIU18086
Page 21