VIETNAM NATIONAL UNIVERSITY HO CHI MINH CITY INTERNATIONAL UNIVERSITY SCHOOL OF INDUSTRIAL AND ENGINEERING MANAGEMENT Semester 1 (2022 – 2023) REPORT INVENTORY MANAGEMENT TOPIC: Optimizing Production and Inventory Decisions for Mixed Make-to-order/Make-to-stock Ready-made Garment Industry Student’s name Nguyễn Hoàng Phát Phạm Thanh Thanh Vy Trần Thị Khánh Huyền Phan Gia Nghi Student’s ID IELSIU20387 IELSIU20084 IELSIU20317 IELSIU20361 Ho Chi Minh City December 2022 Contribution 100% 100% 100% 100% ABSTRACT In this project, a production and inventory planning model for mixed Make-to-order (MTO) and Make-to-stock (MTS) production system in garment industry was applied. Where MTO and MTS production methods are making inroads into mainstream manufacturing to boost revenue and maintain positive cash flow, which is often impaired by seasonality of demand or production planning challenges. While a little focus is on capacity planning for seasonally fluctuating needs. Mathematical programming for capacity planning in mixed garment manufacturing environment MTO and MTS is a possible approach that can make effective management decisions that can help the apparel industry strive in today’s competitive pace. TABLE OF CONTENTS Contents ABSTRACT ........................................................................................................................ 2 TABLE OF CONTENTS .................................................................................................... 2 CHAPTER 1. INTRODUCTION ........................................................................................ 4 CHAPTER 2. LITERATURE REVIEW ............................................................................. 6 CHAPTER 3: METHODOLOGY ....................................................................................... 7 3.1 . Problem descriptions ....................................................................................... 7 3.2 . Mathematical model formulation ................................................................... 9 3.2.1. Model Assumptions: ......................................................................................... 9 3.2.2. Model formulation ............................................................................................ 9 CHAPTER 4: DATA AND RESULTS ............................................................................. 14 4.1 . Data Collection .................................................................................................. 14 4.2 . Result presentation ............................................................................................ 16 4.2.1. MTO results .................................................................................................... 16 4.2.2. MTS results ..................................................................................................... 17 4.2.3. Fabrics results ................................................................................................. 19 4.2.4. Cash flow per period ....................................................................................... 19 4.2.5. Profit results .................................................................................................... 20 CHAPTER 5: SENSITIVITY ANALYSIS....................................................................... 20 5.1. Impact of changing the demand on the profit .................................................. 20 5.2. Impact of changing the fabric prices on the profit .......................................... 22 CHAPTER 6: CONCLUSION AND FUTURE WORK .................................................. 23 6.1. Conclusion ......................................................................................................... 23 6.2. Future works ...................................................................................................... 24 REFERENCES .................................................................................................................. 24 APPENDIX ....................................................................................................................... 26 A. CPLEX CODE (Model file) ................................................................................. 26 B. CPLEX CODE (Data file) ................................................................................... 30 C. Excel file ............................................................................................................... 31 CHAPTER 1. INTRODUCTION 1.1.Problem statement The readymade garment (RMG) industry is a competitive industry. Planning for RMG production is a challenging task, especially when there is variability in the demand types. Short-term production plans are required to cope with the seasonality of the demand in the RMG industry; besides, a short planning horizon is often considered since manufacturers try to meet new fashion trends. Planning decisions, including the timing for production, production quantities, and whether it is made to stock (MTS) or made to order (MTO), must be made thoroughly as they have a direct impact on the costs and revenues. Moreover, fabric prices are a major element of production costs in the RMG industry. Increases in fabric prices are detrimental to cash flows and may hinder production. The shorter the production planning is, the less risky the management will be. Net profits are sensitive to fabric prices and measuring fabric prices’ effects on the net profits is vital. This research paper is motivated by a real-life case study in Egypt. A recent flotation made some RMG factories in Egypt experience financial disturbances and disadvantages to net profits. The main problem lies in managing both make-to-order (MTO) and make-to-stock (MTS) production types with limited production and financial resources within a short planning horizon. This research paper will focus on analyzing an RMG factory that originally depended only on MTO production and suffered from financial deficits due to increasing fabric prices. To overcome the problem, MTS production needs to be considered, which leads to the need for optimized decisions for a mix of MTO-MTS RMG products. Financial aspects, such as the cash flow, will also be engaged with the production planning throughout the planning horizon. 1.2. Scope and Limitations 1.2.1. Scope In the ready-made garment industry, capacity and financial planning decisions for the MTO-MTS production system are taken into consideration as demand exhibits predictable fluctuations. The objective of this project is the maximization of achieved net profits for manufacturers by subtracting the potential cost from sales revenues by using mixed integer linear programming (MILP), which means that it would help businesses to optimize their revenues while considering the capacity limitations and reaching production objectives. Because in the production planning of a hybrid MTOMTS manufacturing system, integrating financial factors plays an essential role as isolating the money from production is no longer a practical solution for the current firm, especially in the readymade garment industry. To approach the optimal solution, the project will follow the constructive way, which is initial profound comprehension of the mathematics model to be applied in the system and then translate it into CPLEX. When having intense background knowledge about the model such as parameters, decision variables, objective function, and constraints, it will be run with available data or randomly generated data. Subsequently, the result analysis and sensitivity analysis are operated to come up with the conclusion. Based on the above structure, the outline for the project is organized as follows. Chapter 1 is the overall introduction of the project topic. The methodology included mathematical model formulation and algorithm (if any) is highlighted in chapter 2 followed by chapter 3 with the presentation of results and sensitivity analysis. Closing with the conclusion and further recommendations along with appendices and references in chapter 4. 1.2.2. Limitations With the application of a mixed MTO/MTS system in the ready-made garment industry, the strengths of these methods can be combined, and their weaknesses mitigated. Nevertheless, this mixture requires a trade-off since additional objectives and restrictions must be taken into consideration at once, thereby increasing complexity. Furthermore, in the apparel industry, most research concentrates on the application of heuristic and hierarchical techniques to create decision planning for achieving the production goals. Thus, in the ready-made textile industry, the hybrid MTS/MTO production system is genuinely not enough to tackle the current environment; in particular, as engaging a financial aspect; cash flow; as a constraint with production, inventory, and capacity aspects in a model, it was not adequately addressed. CHAPTER 2. LITERATURE REVIEW 2.1. Existing methodologies and research gap in literature Following are the research papers that have discussed the production planning in the fashion industry. Algorithms for centralized and decentralized supply chains were suggested and developed in [2] to find the heuristics when it comes to deciding the items and the time to produce the make to order and make to stock. To maximize the profitability of the firm, a mathematical model of a multi-side hybrid made-to-stock or made-to-order was developed in [3]. In this regard, a network of suppliers, manufacturers, and customers are considered to enhance production and marketing competitiveness. Applying make-toorder and make-to-stock policy, a non-linear integer programming model was proposed in [4] to optimize the multi-level inventory matching as well as order planning for both finished and unfinished products. The four basic inventory models were discussed in [5] with an aim to examine the advantages of the make-to-stock (MTS), make-to-order (MTO) and combination of MTS and MTO models. The issues and the characteristics of the models were raised and considered to emphasize the importance of their roles, as applied to the food and beverage processing industry. The production and scheduling policy in [6] are the two main major factors to make a decision upon production policy (MTS versus MTO) and scheduling policy, which is first in first out and cyclic services. For a hybrid MTO/MTS delivery, a model used in [7] aimed at solving order partitioning, determining order penetration point location. A successful integration method of the hybrid MTS and MTO in the food industry was addressed in [8], while in [9] the combined MTO/MTS situation was tackled by identifying possible analytical decisions for short-term batch-scheduling using heuristics. On finding the framework in [8] was generic and lacked analytical decision aids, the approach was updated and adopted to suit the current situation. A multi-production inventory policy analysis for MTO versus MTS was analyzed in [10]. The analysis used a queuing model, with the optimality condition determined by which products are madeto-order and which are in stock. A hybrid approach to decide which item will be made- to-order and which to stock was presented in [11], using a strategic method SWOT analysis and a FAHP. The two methods yielded different results in terms of choosing an ordering for the factors. Quantitative values were then assigned to the SWOT factors based on which method produced the most accurate results. However, the new method did not consider important constraints such as the firm’s capacity and due date. In [12], two different planning rules were used to plan the combined production system MTO and MTS. The MTS policy is changed based on the FIFO scheduling policy while the MTO is considered low-volume and is changed based on the priority rule policy. A robust model for hybrid MTO/MTS multi-product firm was developed in [13]. The model included suppliers, processes, and customers to examine their uncertainties, and to validate the proposed model by applying it to an industrial case. A hierarchical framework has been proposed at the tactical level for production planning for a hybrid MTO and MTS production in the textile industry in [14]. The model proposed in this project is an MILP model with the objective of maximizing the achieved net profits from subtracting potential cost elements from sales revenues. The significance of this work comes from the importance of engaging financial aspects, such as the cash flow, with the production planning of a mixed MTO-MTS manufacturing system. 2.2. Existing methodologies and research gap in literature In a ready-made garment manufacturing environment, the mixed MTO and MTS production systems are extremely popular but still facing a lot of difficulties by many constraints. To solve this problem, we shouldalso consider the financial factor and solve other aspects in a model such as a constraint with production, inventory, and capacity. Most of the research in the garments industry has focused on using heuristic and hierarchical approaches for managers to make the optimal decision to achieve production targets. Production planning in the mixed MTO and MTS garment production system has not been addressed in the literature. The combination of capacity utilization and budgetary considerations is also not to be considered. Therefore, the aims to achieve exactly optimal production and capacity plan for a combinationof MTO and MTS remain an open question. Since this research is just trying to find the optimal solution but still considers the combination of capacity and target of cash flow yet. 2.3. Objective The management team in the factory aims at having a successful operation of MTO and MTS production simultaneously. Based on the costs versus the expected revenues for fulfilling orders (MTO) versus the planned production (MTS) for a season, the objective of this work is to provide the management team with practical insights into the decisions to make. A mixed integer linear programming (MILP) model for production and inventory planning of a mixed MTO/MTS manufacturing system is proposed to solve the problem and offer the optimal production plan. CHAPTER 3: METHODOLOGY 3.1 . Problem descriptions The key distinction between MTO and MTS in the model is that MTS items are manufactured and stocked throughout the planning horizon to fulfill predicted volumes, while MTO products have no the selling occurance during the first four periods. In particular, as an order is approved by MTO method, the product is started to be manufactured, whereas MTS requires the manufacture matching inventory with projected consumer demand. As a result, each sort of production is only suitable for certain unique requirements. One method is only appropriate for one type of manufacturing, the factory's capacity and financial resources are restricted, and different garments necessitate different working hours and fabric amounts for each item. Fabric price affected directly to the production cost, is an essential factor that needs to be considered when planning. There are two major supply sources to purchase fabric: a wholesaler or a retailer. The difference between the wholesale and retail prices is 10% to 15%. A minimum of 30 meters of the same type of fabric must be required when ordering from a wholesaler. Whether fabrics are bought from a retailer or a wholesaler depends on the quantity of products chosen for the MTS manufacturing. Data from the past indicated that MTS textiles were purchased from a retailer without any discounts on account of the tiny amount, and that during other seasons it was because a range of MTS items with restricted quantities per product were available. In MTS production, to decide which source to order fabrics, the manager need to comprehend the cash flow availability and production capacity and base on that to purchase small quantities of each type from retailers for seasonal and limited products or buying in bulk from wholesalers for mass production. In contrast, fabrics for MTO garments are procured only if an order is accepted. Furthermore, due to the pricing difference between a retailer or wholesaler when purchasing fabrics, the more fabrics purchased, the more economical for production, that will benefit to keep track of the date, amount, and location of fabric orders while checking on cash flow, thus, fabric’s supply must be confirmed prior to the start of manufacturing of the potential product or order for smooth production. Planning the production and distribution of textiles while taking into account the cash flow throughout the planning horizon was a challenging task. Therefore, choices must be taken to handle these trade-offs. Examples include the quantity of fabric ordered and the time it takes to be delivered, inventory levels (fabrics inventory, work-in-progress inventory, finished garment inventory), regular and overtime production quantities, periodic cash availability, the ideal amount of MTS production, and various MTO amounts. With MTO, production is linked to a specific sales order while with MTS, production is based onsales projection, typically arrived at as the result of robust planning, therefore combining MTO and MTS production in a readymade garment factory, is a complicated matter. The target is to have a manufacturing production plan that considers the successful operation of seasonal MTO and MTS production at the same time, within the limitations of available resources.To achieve this, there are some issues that need to be considered like the amount of fabric supplied and its ordering time, inventory levels, regular and overtime production quantities, periodical cash availability and the optimum amount of MTS production along with different MTO amounts to some further problems such as capacity allocation for both production types during different seasons, meeting the orders due dates by considering creating an order early and storing it, or producing it later and considering overtime or possibly subcontracting. The objective of this combining model is to maximize the revenue while considering some factorslike inventory, regular time production, overtime production, subtracting cost, the fluctuations in fabric price to maintain a positive cash flow throughout the planning horizon. The suggested model is a deterministic model that is designed to produce a mix of MTO and MTS within the constraints of limited resources. Throughout the planning horizon, the model maximizes net revenues from MTO and MTS sales. It also offers an ideal production plan that considers common manufacturing conditions. 3.2 . Mathematical model formulation 3.2.1. Model Assumptions: 1. Fabrics arrive on time. 2. The cost of other materials required for producing the garment (threads, buttons,zippers…) are included in the fabric cost. 3. MTO are confirmed orders at the beginning of the season. 4. Overtime is allowed for MTO and MTS production. 5. Initial inventory for material is zero for all products in categories. 6. The production capacity is known and fixed. 7. The planning horizon is 1 season, equivalent to 12 weeks. 8. Production cost includes labor cost and maintenance cost. 9. Once an order is delivered its cash is received. 10. No down-payment for MTO items. 11. Safety stock is not considered for either MTO fabrics or MTS products. 3.2.2. Model formulation 3.2.2.1. Index sets Set Index T: set of time periods M: set of made to order (MTO) products t m J: set of made to stock (MTS) products j F: set of fabric types f K: set of price levels k Table 3.2.2.1: Index sets 3.2.2.2. Input parameters PARAMETERS 𝑰𝑪𝑭 𝒇𝒕 Inventory holding cost of fabric f during period t (EGP/𝑚2 /week) 𝑰𝑪𝑶 𝒎𝒕 𝑰𝑪𝑺 𝒋𝒕 Inventory holding cost per unit of MTO product m during period t (EGP/unit/week). Inventory holding cost per unit of MTS product j during period t (EGP/unit/week). 𝑰𝑭𝒊𝒏 𝑰𝑺𝒊𝒏 𝑹𝑪𝑶 𝒎 𝑹𝑪𝑺 𝒋 Inventory of fabric f at period t=0 (𝑚2 ) Inventory of MTS product j at period t=0 Regular time production cost per unit of MTO product m (EGP/unit) Regular time production cost per unit of MTS product j (EGP/unit) 𝑶𝑪𝑶 𝒎 𝑶𝑪𝑺 𝒋 Over- time production cost per unit of MTO product m (EGP/unit) Over- time production cost per unit of MTS product j (EGP/unit) 𝜶𝑶 𝒇𝒎 Amount of fabric f used to make one unit of MTO product m (𝑚2 ) 𝜶𝑺𝒇 𝒋 Amount of fabric f used to make one unit of MTS product j (𝑚2 ) 𝒉𝑶 𝒎 𝒉𝑺𝒋 Labor hours required to process one unit of MTO product m (hrs/unit). Labor hours required to process one unit of MTS product j (hrs/unit). 𝑯𝒎𝒂𝒙 Maximum available regular production hours. 𝑮𝒎𝒂𝒙 𝒘𝒇 Maximum allowed overtime production hours. Warehouse space needed per square meter of fabric f (𝑚2 / 𝑚2 of fabric) 𝑾𝒎𝒂𝒙 𝒗𝑶 𝒎 𝒗𝑺𝒋 Maximum fabric warehouse capacity for fabrics (𝑚2 ) Storage space requirements per unit of finished MTO product m (𝑚2 / unit) Storage space requirements per unit of finished MTS product j (𝑚2 / unit) 𝑽𝒎𝒂𝒙 𝑫𝒎𝒕 𝑭𝒋𝒕 Maximum storage capacity for MTO and MTS final products (𝑚2 ) Demand based on confirmed orders at the beginning of the planning horizon Forecasted demand for MTS product j during period t 𝒑𝑶 𝒎 𝒑𝑺𝒋 Selling price of one unit of MTO product m (EGP/unit) Selling price for one unit of MTS product j (EGP/unit) 𝒓𝒇𝒌 𝑩𝑶 𝒎 𝑩𝑺𝒋 Purchase price r of fabric f at level k, where k=1,2, indicating the two pricing levels (EGP/ 𝑚2 ) Minimum meters of fabric so that the discount is offered/ can purchase from a wholesaler (𝑚2 ) Minimum batch size for production of MTO product m Minimum batch size for production of MTS product j 𝑪𝟎 𝑪𝑻 L Initial cash available at the beginning of the planning horizon (EGP). Minimum final cash targeted at the end of the planning horizon (EGP). A Large positive number 𝒒𝒇 Table 3.2.2: Input parameters 3.2.2.3. Decision variables 𝑭𝑸𝒇𝒌𝒕 DECISION VARIABLES Area of fabric f ordered at price level k during period t (𝑚2 ) 𝑪𝑯𝒕 𝑰𝑶 𝒎𝒕 𝑰𝑺𝒋𝒕 Area of fabric f kept in inventory by the end of period t (𝑚2 ) Cash available by the end of period t (EGP) WIP Inventory level of MTO product m by the end of period t WIP Inventory level of MTS product j by the end of period t 𝑹𝑶 𝒎𝒕 𝑹𝑺𝒋𝒕 Regular time production quantity of MTO product m during period t Regular time production quantity of MTS product j during period 𝑶𝑶 𝒎𝒕 𝑶𝑺𝒋𝒕 Overtime production quantity of MTO product m during period t Overtime production quantity of MTS product j during period t 𝒃𝒇𝒕 =1 if fabric f is purchased for price level k=2, in time period t and = 0 otherwise. 𝜻𝑶 𝒎𝒕 𝜻𝑺𝒋𝒕 =1; if MTO product m is produced during period t, and = 0 otherwise. =1; if MTS product j is produced during period t, and = 0 otherwise. 𝑰𝑭𝒇𝒕 Table 3.2.2.3: Decision variable Superscript notations are C (cost), F (fabric), O (MTO), and S (MTS). 3.2.2.4. Objective function The total profit of the firm is expected to be maximized. Thus, the objective function which aims at maximizing the firm’s total profits ‘P’ is defined as subtracting potential cost elements (including regular costs, overtime costs, fabric costs, inventory holding cost) from sales revenues (of MTO and MTS products). We have the objective function as follows: Maximize P = 𝒔 𝑪𝑺 𝑺 𝑶 𝑶 𝑪𝑶 𝑪𝑶 ∑ ∑ 𝒑𝑶 𝒎 𝑫𝒎𝒕 + ∑ ∑ 𝒑𝒋 𝑭𝒋𝒕 − ∑ 𝑹𝒎 ∑ 𝑹𝒎𝒕 − ∑ 𝑶𝒎 ∑ 𝑶𝒎𝒕 − ∑ 𝑹𝒋 ∑ 𝑹𝒋𝒕 𝒎∈𝑴 𝒕∈𝑻 𝒋∈𝑱 𝒕∈𝑻 − 𝒎∈𝑴 𝑺 ∑ 𝑶𝑪𝑺 𝒋 ∑ 𝑶𝒋𝒕 𝒋∈𝑱 𝒕∈𝑻 𝒕∈𝑻 𝒎∈𝑴 − ∑ ∑ 𝒓𝒇𝒌 𝑭𝑸𝒇𝒌𝒕 − 𝒕∈𝑻 𝒇∈𝑭 𝒕∈𝑻 𝒋∈𝑱 𝒕∈𝑻 𝑪𝑺 𝑺 𝑶 ∑ ∑ 𝑰𝑪𝑶 𝒎𝒕 𝑰𝒎𝒕 − ∑ ∑ 𝑰𝒋𝒕 𝑰𝒋𝒕 𝒎∈𝑴 𝒕∈𝑻 𝒋∈𝑱 𝒕∈𝑻 − ∑ ∑ 𝑰𝑪𝑭 𝒇𝒕 𝑰𝑭𝒇𝒕 𝒕∈𝑻 𝒇∈𝑭 3.2.2.5. Constraints Equation (1) the indicates initial fabric inventory: 𝑰𝑭𝒇𝒕=𝟎 = 𝑰𝑭𝒊𝒏 ∀𝒕 (𝟏) Equation (2) represents the material balance constraints for MTO and MTS products: 𝑰𝑭𝒇𝒕−𝟏 + 𝑭𝑸𝒇𝒌𝒕 − ∑ 𝒎∈𝑴 𝑶 𝑶 𝜶𝑶 𝒇𝒎 (𝑹𝒎𝒕 + 𝑶𝒎𝒕 ) − ∑ 𝒋∈𝑱 𝜶𝑺𝒇𝒋 (𝑹𝑺𝒋𝒕 + 𝑶𝑺𝒋𝒕 ) = 𝑰𝑭𝒇𝒕 ∀𝒇, ∀𝒕 (𝟐) Equation (3) expresses the initial inventory for MTS products: 𝑰𝑺𝒋𝒕=𝟎 = 𝑰𝑺𝒊𝒏 , ∀𝒕 (𝟑) Equation (4) indicates inventory balance equation for meeting MTS forecast: (𝑹𝑺𝒋𝒕 + 𝑶𝑺𝒋𝒕 ) + 𝑰𝑺𝒋𝒕−𝟏 − 𝑰𝑺𝒋𝒕 = 𝑭𝒋𝒕 , ∀𝒋 ∈ 𝑱, ∀𝒕 (𝟒) Equation (5) defines MTO demand satisfaction constraints: 𝑶 𝑰𝒎𝒕−𝟏 + 𝑹𝑶 𝒎𝒕 + 𝑶𝒎𝒕 = 𝑫𝒎𝒕 + 𝑰𝒎𝒕 , ∀𝒎 ∈ 𝑴, ∀𝒕 (𝟓) Equation (6) and (7) are for the capacity constraints for regular and overtime products respectively: 𝑺 𝑺 𝑶 ∑𝒎∈𝑴 𝒉𝑶 𝒎 𝑹𝒎𝒕 + ∑𝒋∈𝑱 𝒉𝒋 𝑹𝒋𝒕 ≤ 𝑯𝒎𝒂𝒙 , ∀𝒕 (𝟔) 𝑺 𝑺 𝑶 ∑𝒎∈𝑴 𝒉𝑶 𝒎 𝑶𝒎𝒕 + ∑𝒋∈𝑱 𝒉𝒋 𝑶𝒋𝒕 ≤ 𝑮𝒎𝒂𝒙 , ∀𝒕 (𝟕) Equation (8) illustrates fabrics storage capacity: ∑𝒇∈𝑭 𝒘𝒇 𝑰𝑭𝒇𝒕 ≤ 𝑾𝒎𝒂𝒙 , ∀𝒕 (𝟖) Equation (9) denotes the storage capacity for MTO and MTS final products: ∑ 𝑶 𝒗𝑶 𝒎 𝑰𝒎𝒕 + ∑ 𝒎∈𝑴 𝒋∈𝑱 𝒗𝑺𝒋 𝑰𝑺𝒋𝒕 ≤ 𝑽𝒎𝒂𝒙 , ∀𝒕 (𝟗) Equation (10) and (11) are developed for the quantity discount on fabric purchase; where k represents the two price levels, k = 1 means that no discount is offered for a quantity less than q f (illustrated in equation (10)), while k = 2 means that the amount purchased is greater than q f , and therefore the discount is offered in equation (11). 𝑭𝑸𝒇𝟏𝒕 ≤ 𝒒𝒇 𝒃𝒇𝒕 , ∀𝒇, ∀𝒕 (𝟏𝟎) 𝒒𝒇 (𝟏 − 𝒃𝒇𝒕 ) ≤ 𝑭𝑸𝒇𝟐𝒕 , ∀𝒇, ∀𝒕 (𝟏𝟏) Equation (12) represents the initial cash at the beginning of the planning horizon: ∀𝒕 = 𝟎 (𝟏𝟐) 𝑪𝑯𝒕 = 𝑪𝑶 , Equation (13) presents the cash balance for the first four periods of the planning horizon: 𝑪𝑺 𝑺 𝑪𝑺 𝑺 𝑪𝑶 𝑶 𝑪𝑶 𝑶 𝑪𝑯𝒕−𝟏 + ∑ 𝒑𝑶 𝒎 𝑫𝒎𝒕 − ∑ 𝒓𝒇𝒌 𝑭𝑸𝒇𝒌𝒕 − ∑ (𝑹𝒎 𝑹𝒎𝒕 + 𝑶𝒎 𝑶𝒎𝒕 ) − ∑(𝑹𝒋 𝑹𝒋𝒕 + 𝑶𝒋 𝑶𝒋𝒕 ) 𝒎∈𝑴 𝒇∈𝑭 𝒎∈𝑴 𝒋∈𝑱 𝑪𝑭 𝑪𝑺 𝑺 𝑶 − ∑ 𝑰𝑪𝑶 𝒎𝒕 𝑰𝒎𝒕 − ∑ 𝑰𝒋𝒕 𝑰𝒋𝒕 − ∑ 𝑰𝒇𝒕 𝑰𝑭𝒇𝒕 = 𝑪𝑯𝒕 , 𝒎∈𝑴 𝒋∈𝑱 𝒇𝒐𝒓 𝒂𝒍𝒍 𝒕 ∈ 𝒕𝟏 , 𝒘𝒉𝒆𝒓𝒆 𝒕𝟏 𝒇∈𝑭 = {𝟏, 𝟐, 𝟑, 𝟒} (𝟏𝟑) Equation (14) indicates the cash balance from period 5 to the end of the planning horizon, where the MTS sales take place with the MTO sales: 𝒔 𝑪𝑶 𝑶 𝑪𝑶 𝑶 𝑪𝑯𝒕−𝟏 + ∑ 𝒑𝑶 𝒎 𝑫𝒎𝒕 + ∑ 𝒑𝒋 𝑭𝒋𝒕 − ∑ 𝒓𝒇𝒌 𝑭𝑸𝒇𝒌𝒕 − ∑ (𝑹𝒎 𝑹𝒎𝒕 + 𝑶𝒎 𝑶𝒎𝒕 ) 𝒎∈𝑴 𝒋∈𝑱 𝒇∈𝑭 𝒎∈𝑴 𝑪𝑭 𝑺 𝑪𝑺 𝑺 𝑪𝑺 𝑺 𝑪𝑶 𝑶 − ∑(𝑹𝑪𝑺 𝒋 𝑹𝒋𝒕 + 𝑶𝒋 𝑶𝒋𝒕 ) − ∑ 𝑰𝒎𝒕 𝑰𝒎𝒕 − ∑ 𝑰𝒋𝒕 𝑰𝒋𝒕 − ∑ 𝑰𝒇𝒕 𝑰𝑭𝒇𝒕 𝒋∈𝑱 𝒎∈𝑴 𝒋∈𝑱 𝒇∈𝑭 = 𝑪𝑯𝒕 , 𝒇𝒐𝒓 𝒕 ∈ 𝒕𝟐 , 𝒘𝒉𝒆𝒓𝒆 𝒕𝟐 = {𝟓, 𝟔, … , 𝟏𝟐} (𝟏𝟒) Equation (15) denotes the final cash at the end of the planning horizon should be greater than or equal an amount CT : 𝑪𝑯𝒕 ≥ 𝑪𝑻 , ∀𝒕 = 𝟏𝟐 (𝟏𝟓) Equation (16) and (17) satisfy the minimum batch production for MTO production: 𝑶 𝑶 𝑶 𝑹𝑶 𝒎𝒕 + 𝑶𝒎𝒕 ≥ 𝑩𝒎 𝜻𝒎𝒕 , 𝜻𝑶 𝒎𝒕 ≥ 𝟏 𝑶 (𝑹 + 𝑶𝑶 𝒎𝒕 ), 𝑳 𝒎𝒕 ∀𝒎, ∀𝒕 (𝟏𝟔) ∀𝒎, ∀𝒕 (𝟏𝟕) Equation (18) and (19) presents the MTS minimum batch production for non-negativity constraints: 𝑹𝑺𝒋𝒕 + 𝑶𝑺𝒋𝒕 ≥ 𝑩𝑺𝒋 𝜻𝑺𝒋𝒕 , ∀𝒋, ∀𝒕 (𝟏𝟖) 𝜻𝑺𝒋𝒕 ≥ 𝟏 (𝑹𝑺𝒋𝒕 + 𝑶𝑺𝒋𝒕 ), 𝑳 ∀𝒋, ∀𝒕 (𝟏𝟗) 𝑺 𝑺 𝑺 𝑶 𝑶 𝑭𝑸𝒇𝒌𝒕 , 𝑰𝑭𝒇𝒕 , 𝑪𝑯𝒕 , 𝑰𝑶 𝒎𝒕 , 𝑰𝒋𝒕 , 𝑹𝒎𝒕 , 𝑹𝒋𝒕 , 𝑶𝒎𝒕 , 𝑶𝒋𝒕 (𝟐𝟎) ≥ 𝟎 CHAPTER 4: DATA AND RESULTS 4.1. Data Collection The base model is for a planning horizon (T) of 12 periods, 4 types of fabric (F), 2 price levels (K), 2 main MTO products (M), and 4 main MTS products (J). Production capacities include the regular, overtime capacity and storage capacities of final products and fabric. The regular hours are 48 hours per week and the overtime hours are 12 hours per week. Production capacity per period 𝑯𝒎𝒂𝒙 1,000 hours 𝑮𝒎𝒂𝒙 256 hours 𝑽𝒎𝒂𝒙 900 𝑚2 𝑾𝒎𝒂𝒙 100 𝑚2 Table 4.1.1: Production capacities The fabric parameters are as follows Fabric parameters Fabric 1 Fabric 2 Fabric 3 Fabric 4 𝒓𝒇𝟏 26 18 28 30 𝒓𝒇𝟐 20 12 22 14 𝑰𝑪𝑭 𝒇𝒕 0.14 0.11 0.15 0.15 𝜶𝑶 𝒇𝒎 2 2 _ _ 𝜶𝑺𝒇𝒋 0 0.75 0.5 0.75 𝒘𝒇 0.004 0.004 0.004 0.004 𝒒𝒇 20 30 90 90 Table 4.1.2: Fabric parameters Initial inventory values and initial cash values are as follows Initial fabric/MTO/MTS inventory 𝑪𝟎 𝑪𝑻 L 0 132,000 EGP 50,000 EGP 9,999,999 Table 4.1.3: Initial inventory values and initial cash values MTO and MTS production parameters are as follows MTO/MTS parameters MTO1 MTO2 MTS1 MTS2 MTS3 MTS4 𝑰𝑪𝑶 𝒎𝒕 0.18 0.19 _ _ _ _ 𝑰𝑪𝑺 𝒋𝒕 _ _ 0.36 0.17 0.19 0.23 𝑹𝑪𝑶 𝒎 80 40 _ _ _ _ 𝑹𝑪𝑺 𝒋 _ _ 34 20 20 20 𝑶𝑪𝑶 𝒎 120 56 _ _ _ _ 𝑶𝑪𝑺 𝒋 _ _ 56 34 34 34 𝑺𝒃𝑪𝒎𝒕 140 75 _ _ _ _ 𝒉𝑶 𝒎 1.3 1.3 _ _ _ _ 𝒉𝑺𝒋 _ _ 1.3 1.2 1 1.1 𝒗𝑶 𝒎 0.4 0.4 _ _ _ _ 𝒗𝑺𝒋 _ _ 0.25 0.25 0.23 0.2 𝒑𝑶 𝒎 180 130 _ _ _ _ 𝒑𝑺𝒋 _ _ 200 90 90 100 𝑩𝑶 𝒎 50 50 _ _ _ _ 𝑩𝑺𝒋 _ _ 50 50 50 50 Table 4.1.4: MTO/MTS parameters MTO demands are as follows MTO demand 𝑫𝒎𝒕 Period 1 2 3 4 5 6 7 8 9 10 11 12 MTO1 _ _ 300 60 _ 1300 _ _ _ _ _ 500 MTO2 _ 260 _ _ _ _ 1350 _ _ _ _ 1150 Table 4.1.5: MTO demand MTS forecasted demands are as follows MTS forecasted demand 𝑭𝒋𝒕 Period 1 2 3 4 5 6 7 8 9 10 11 12 MTS1 _ _ _ _ 250 180 180 _ _ 300 _ _ MTS2 _ _ 350 250 150 _ _ _ _ _ _ _ MTS3 _ _ 150 300 350 _ _ _ _ _ _ _ MTS4 _ 300 250 100 _ _ _ _ _ _ _ _ Table 4.1.6: MTS forecasted demand 4.2. Result presentation The model is executed on the optimization solver IBM® ILOG® CPLEX® Optimization Studio, and the optimal results are obtained as follows 4.2.1. MTO results The table below shows the results of the Inventory level of MTO product 1 and 2 by the end of 12 periods. 𝑰𝑶 𝒎𝒕 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 m=1 m=2 361 0 361 8 61 90 1 90 509 211 0 385 0 0 0 0 0 0 112 0 500 381 0 0 Table 4.2.1.a: Inventory level of MTO product m by the end of period t The table below shows the results of the Regular time production quantity of MTO product 1 and 2 during each period. 𝑹𝑶 𝒎𝒕 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 m=1 m=2 361 0 0 268 0 82 0 0 508 121 769 0 0 769 0 0 0 0 112 0 388 381 0 769 Table 4.2.1.b: Regular time production quantity of MTO product m during period t The table below shows the results of the Overtime production quantity of MTO product 1 and 2 during each period. 𝑶𝑶 𝒎𝒕 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 m=1 m=2 0 0 0 0 0 0 0 0 0 0 22 174 0 196 0 0 0 0 0 0 0 0 0 0 Table 4.2.1.c: Overtime production quantity of MTO product m during period t The table below shows whether the MTO product m is produced during each period. If the result equal to 1, MTO product m is produced during period t, and = 0 otherwise. 𝜻𝑶 𝒎𝒕 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 m=1 m=2 1 0 0 1 0 1 0 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 Table 4.2.1.d: MTO product m is produced during period t 4.2.2. MTS results The table below shows the results of the Inventory level of MTS product 1 to 4 by the end of 12 periods 𝑰𝑺𝒋𝒕 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 j=1 0 0 0 470 360 180 0 0 0 0 0 0 j=2 401 669 400 150 0 0 0 0 0 0 0 0 j=3 0 0 371 350 0 0 0 0 0 0 0 0 j=4 0 0 0 0 0 0 0 0 0 0 0 0 Table 4.2.2.a: Inventory level of MTS products by the end of period The regular time production quantity of MTS product from 1 to 4 for 12 periods are shown in the table below: 𝑹𝑺𝒋𝒕 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 j=1 j=2 j=3 j=4 0 401 0 0 0 268 0 300 0 81 521 250 470 0 279 100 140 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 300 0 0 0 0 0 0 0 0 0 0 0 Table 4.2.2.b: Regular time production quantity of MTS products during period The table below shows the overtime production quantity of MTS product j during period t 𝑶𝑺𝒋𝒕 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 j=1 0 0 0 0 0 0 0 0 0 0 0 0 j=2 0 0 0 0 0 0 0 0 0 0 0 0 j=3 0 0 0 0 0 0 0 0 0 0 0 0 j=4 0 0 0 0 0 0 0 0 0 0 0 0 Table 4.2.2.c: Overtime production quantity of MTS products during period The table below shows whether MTS product j is produced during period t. If the result equal to 1, MTS product j is produced during period t, and = 0 otherwise. 𝜻𝑺𝒋𝒕 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 j=1 0 0 0 1 1 0 0 0 0 1 0 0 j=2 j=3 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 j=4 0 1 1 1 0 0 0 0 0 0 0 0 Table 4.2.2.d: MTS product j is produced during period t 4.2.3. Fabrics results 4.2.4. Cash flow per period CHt (cash/period) 350000 300000 250000 200000 150000 100000 50000 0 1 2 3 4 5 6 7 8 9 10 11 12 4.2.5. Profit results The profit (or the objective) obtained by CPLEX is 358,070 EGP CHAPTER 5: SENSITIVITY ANALYSIS The influential parameters, including the demand for the products and fabric prices, are uncertain and subject to changes in the garment industry. We will change the values of those influential parameters to test how the model will respond to these changes and the impact of them on the profit. 5.1. Impact of changing the demand on the profit The demand for MTO products and forecasted demand for MTS products are changed to examine the model sensitivity towards demand changes. For the base case, the total demand for MTO products and MTS products through 12 periods are 4920 and 3110 respectively as follows 𝑫𝒎𝒕 MTO1 MTO2 t=1 2 3 4 0 0 0 260 300 0 60 0 5 6 7 8 9 10 0 1300 0 0 0 1350 0 0 0 0 0 0 11 12 Total 0 500 4920 0 1150 𝑭𝒋𝒕 MTS1 MTS2 MTS3 MTS4 t=1 2 3 4 5 6 7 8 9 10 11 12 Total 0 0 0 0 0 0 0 300 0 350 150 250 0 250 300 100 250 150 350 0 180 0 0 0 180 0 0 0 0 0 0 0 0 0 0 0 300 0 0 0 0 0 0 0 0 0 3110 0 0 We will decrease the demand for MTO products by 10% and increase the demand for MTS products by 10% simultaneously each time to check the contribution of MTO and MTS products to the profits. The table below shows the different demand changes and the corresponding profits (obtained by CPLEX). Demand change (%) 𝑭𝒋𝒕 𝑫𝒎𝒕 100% (base case) 90% 110% 80% 120% 70% 130% 60% 140% 50% 150% 40% 160% 30% 170% 20% 180% 10% 190% Total 𝑫𝒎𝒕 Total 𝑭𝒋𝒕 Total demand (Total 𝑫𝒎𝒕 + Total 𝑭𝒋𝒕 ) Profit 4920 4428 3936 3444 2952 2460 1968 1476 984 492 3110 3421 3732 4043 4354 4665 4976 5287 5598 5909 8030 7849 7668 7487 7306 7125 6944 6763 6582 6401 358070.17 367379.95 375575.36 383703.47 391785.00 399172.49 406056.52 412750.71 418356.69 422215.73 Although the total demand for the 2 types of products decreases from (8030 - base case to 6401), the profit shows an increasing pattern (from 358,070 EGP to 422,215 EGP) as the demand for MTS products increases (up to 90%). This shows that MTS production contributes significantly to the profit, and therefore, the RMG manufacturer should not depend solely on MTO production and need to use a combination of MTO-MTS products to obtain higher profits. In addition, MTS cannot be the only reliable production type as it is highly subjective to forecast. Profit (EGP) 430000 420000 410000 400000 390000 380000 370000 360000 350000 Profit increases as MTO decreases and MTS increases 5.2. Impact of changing the fabric prices on the profit Fabric price is a substantial parameter of the model, thus measuring its impact on the profits is important. For the base case, the fabric prices are as follows 𝒓𝒇𝒌 Price level 1 Price level 2 Fabric 1 26 20 Fabric 2 18 12 Fabric 3 28 22 Fabric 4 30 14 We will decrease the fabric prices by 10% each time to check the response of the profit to the changes. The table below shows the different fabric price changes and the corresponding profits (obtained by CPLEX). Fabric price change (%) Profit 100% (base case) 90% 80% 70% 60% 50% 40% 358070.17 398918.89 436320.78 487421.19 527068.86 564390.73 604011.19 The profit is sensitive to the fabric price changes; the profit shows an increasing pattern (from 358,070 EGP to 604,011 EGP) as the fabric prices decrease (from 100% to 40%). Fabric price is a significant factor in the RMG industry, and it needs to be considered thoroughly in the production planning due to its impact on the profit. Profit (EGP) 650000 600000 550000 500000 450000 400000 350000 300000 Profit increases as fabric prices decrease CHAPTER 6: CONCLUSION AND FUTURE WORK 6.1. Conclusion The ready-made garment industry is given a MILP model for production and inventory planning of a mixed MTO-MTS system. The proposed model demonstrated the effective strategy of having an MTS production stream in addition to the MTO production stream as a novel solution to overcome financial challenges and the effects of relying simply on MTO demands.The best results obtained from the designed model helped at making the best decisions for the inventory and manufacturing of various items for a mixed MTO-MTS products. The challenge faced in such industry was to ensure the generation of a large revenue by the end of the season and positive cash flow at the end of each period. Therefore, a consistent production process will occur without money shortages. The sales of the MTS and MTO items resulted in an inflow of cash. The primary influences on the production process were considered in the production plan. The production fabric needed, the demand, and the cash availability were the influencing factors. Given that the fabric price accounts for most of the cost of the garment's material, it was expected that the model would be particularly sensitive to changes in this critical parameter. The amount of product that MTS can create is constrained, and this influences whether orders are accepted. The findings assisted in providing practical guidance for actions that greatly enhance a clothing business. The simplicity and application of the model to actual garment manufacture, as well as its consideration of the key inputs to the process, contributed to the model's effectiveness. It has also addressed the crucial and concrete decisions that had a substantial influence on the choices made. To support and expand the garment business, the problem has been to find the best option from combining capacity and production planning decisions with the finances. As a result, a policy for production and capacity planning in the clothing industry was highlighted. 6.2. Future works To have a better forecast, future research plans may consider accounting for lost sales and backlogging for MTO demands. Additionally, the plan may also include examining the implications of the interest rate for any given loan to the cash flow and the revenues. Finally, that plan should have a merging of an acceptance – rejection criteria for MTO demands and include the additional to the model procurement decisions related to the fabric that may include supplier selection, supplier lead-time effect and supplier terms of discounts to maximize the profit. REFERENCES [1] Z. X. Guo, W. K. Wong, S. Y. S. Leung, J. T. Fan, and S.F. Chan, “Mathematical model and genetic optimization for the job shop scheduling problem in a mixed- and multi-product assembly environment: A case study based on the apparel industry,” Comput. Ind. Eng., vol. 50, no. 3, pp. 202– 219, 2006. [2] P. Kaminsky and O. Kaya, “Combined make-to-order/make-to-stock supply chains,” IIE Trans. (Institute Ind. Eng., vol. 41, no. 2, pp. 103–119, 2009. [3] H. Rafiei, M. Rabbani, and R. Kokabi, “Multi-site production planning in hybrid make-tostock/make-to-order production environment,” J. Ind. Eng. Int., vol. 10, no. 3, 2014. [4] T. Zhang, Q. P. Zheng, Y. Fang, and Y. Zhang, “Computers & Industrial Engineering Multi-level inventory matching and order planning under the hybrid Make-To-Order / Make-To-Stock production environment for steel plants via Particle Swarm Optimization q,” Comput. Ind. Eng., vol. 87, pp. 238–249, 2015. [5] B. Beemsterboer, M. Land, and R. Teunter, “Hybrid MTO-MTS production planning: An explorative study,” Eur. J. Oper. Res., vol. 248, no. 2, pp. 453–461, 2016. [6] Y. Günalay, “Efficient management of production-inventory system in a multi-item manufacturing facility: MTS vs. MTO,” Int. J. Adv. Manuf. Technol., vol. 54, no.9–12, pp. 1179– 1186, Jun. 2011. [7] H. Rafiei and M. Rabbani, “Order partitioning and Order Penetration Point location in hybrid Make-To-Stock/Make-To-Order production contexts,” Comput. Ind. Eng., vol. 61, no. 3, pp. 550– 560, 2011. [8] C. A. Soman, D. Pieter van Donk, and G. Gaalman, “Comparison of dynamic scheduling policies for hybrid make-to-order and make-to-stock production systems with stochastic demand,” Int. J. Prod. Econ., vol. 104, no. 2, pp. 441–453, 2006. [9] C. A. Soman, D. P. van Donk, and G. J. C. Gaalman, “Capacitated planning and scheduling for combined make-to-order and make-to-stock production in the food industry: An illustrative case study,” Int. J. Prod. Econ., vol. 108, no. 1–2, pp. 191–199, 2007. [10] H. Ohta, T. Hirota, and A. Rahim, “Optimal production-inventory policy for make-to-order versus make-to-stock based on the M/Er/1 queuing model,” Int. J. Adv. Manuf. Technol., vol. 33, no. 1–2, pp. 36–41, 2007. [11] N. Zaerpour, M. Rabbani, A. H. Gharehgozli, and R.Tavakkoli-Moghaddam, “Make-to-order or make-to-stock decision by a novel hybrid approach,” Adv. Eng.Informatics, vol. 22, no. 2, pp. 186– 201, 2008. [12] K. H. Youssef, C. Van Delft, and Y. Dallery, “Efficient Scheduling Rules in a Combined Maketo-Stock and Make-to-Order Manufacturing System,” Ann. Oper. Res., vol. 126, pp. 103–134, 2004. [13] M. Khakdaman, K. Y. Wong, B. Zohoori, M. K. Tiwari, and R. Merkert, “Tactical production planning in a hybrid Make-to-Stock-Make-to-Order environment under supply, process and demand uncertainties: A robust optimisation model,” Int. J. Prod. Res., vol. 53, no. 5, pp. 1358–1386, 2015. [14] K. W. Eltawil. A, “A Hierarchical Production Planning Framework for the Textile Industry with Make to Order and Make to Stock Considerations.,” in Proceedings of the 22nd International Conference on Conference on Computer- aided Production Engineering. Edinburgh, UK., 2011. [15] Optimizing Production and Inventory Decisions for Mixed Make-to- order/Make-to-stock Ready-made Garment Industry. OneDrive for business. (n.d.). Retrieved December 18, 2022, from https://mphcmiuedumy.sharepoint.com/:b:/g/personal/ielsiu20387_student_hcmiu_edu_vn/ERQHTQ2E2vVLjubg2o JYKfsBz0soTeAcwzwvFvWzgn7R5A?e=FHdBY2 [16] Optimizing Production and Inventory Decisions for Mixed Make-to- order/Make-to-stock Ready-made Garment Industry Project. OneDrive for business. (n.d.). Retrieved December 18, 2022, from https://mphcmiuedumy.sharepoint.com/:b:/g/personal/ielsiu20387_student_hcmiu_edu_vn/Eb7gWrq0uPtAv6yJYVq nJfYBCvBc_v-oU1fgcpn53ZNn2Q?e=Vg6oGU APPENDIX A. CPLEX CODE (Model file) int int int int int nbFabric = ...; nbPricelevel = ...; nbMTO = ...; nbMTS = ...; nbPeriod = ...; range range range range range Fabric = 1..nbFabric; Pricelevel = 1..nbPricelevel; MTO = 1..nbMTO; MTS = 1..nbMTS; Period = 1..nbPeriod; /*index: /*index: /*index: /*index: /*index: /*initial inventory level of fabric and MTS*/ int IFin = ...; int ISin = ...; /*cash and large number*/ int C0 = ...; int CT = ...; int L = ...; /*capacities*/ int Hmax = ...; int Gmax = ...; int Vmax = ...; int Wmax = ...; f*/ k*/ m*/ j*/ t*/ /*fabric parameters*/ int r[Fabric][Pricelevel] = ...; float ICF[Fabric][Period] = ...; float aO[Fabric][MTO] = ...; float aS[Fabric][MTS] = ...; float w[Fabric] = ...; int q[Fabric] = ...; /*MTO parameters*/ float ICO[MTO][Period] = ...; int RCO[MTO] = ...; int OCO[MTO] = ...; float hO[MTO] = ...; float vO[MTO] = ...; int pO[MTO] = ...; int BO[MTO] = ...; int D[MTO][Period] = ...; /*MTS parameters*/ float ICS[MTS][Period] = ...; int RCS[MTS] = ...; int OCS[MTS] = ...; float hS[MTS] = ...; float vS[MTS] = ...; int pS[MTS] = ...; int BS[MTS] = ...; int F[MTS][Period] = ...; /*decision variables*/ dvar int+ FQ[Fabric][Pricelevel][Period]; dvar float+ IFft[Fabric][Period]; dvar float+ CH[Period]; dvar int+ IO[MTO][Period]; dvar int+ IS[MTS][Period]; dvar int+ RO[MTO][Period]; dvar int+ RS[MTS][Period]; dvar int+ OO[MTO][Period]; dvar int+ OS[MTS][Period]; /*binary*/ dvar boolean b[Fabric][Period]; dvar boolean zO[MTO][Period]; dvar boolean zS[MTS][Period]; // Objective funtion maximize // Total revenue from MTO product m sum(m in MTO, t in Period)(pO[m]*D[m][t]) // Total revenue from MTS product j + sum(j in MTS, t in Period)(pS[j]*F[j][t]) // Total cost of producing product m in regular time in period t - sum(m in MTO)(RCO[m] * sum(t in Period)(RO[m][t])) // Total cost of producing product m in overtime in period t - sum(m in MTO)(OCO[m] * sum(t in Period)(OO[m][t])) // Total cost of producing product j in regular time in period t - sum(j in MTS)(RCS[j] * sum(t in Period)(RS[j][t])) // Total cost of producing product j in overtime in period t - sum(j in MTS)(OCS[j] * sum(t in Period)(OS[j][t])) // Total cost of buy material fabric f in discount level k in period t - sum(t in Period, f in Fabric, k in Pricelevel)(r[f][k]*FQ[f][k][t]) // Total inventory cost of product m in period t - sum(m in MTO, t in Period)(ICO[m][t]*IO[m][t]) // Total inventory cost of product j in period t - sum(j in MTS, t in Period)(ICS[j][t]*IS[j][t]) // Total inventory cost of material fabric f in period t - sum(t in Period, f in Fabric)(ICF[f][t]*IFft[f][t]); //constraints subject to { //Constraint 1, 3, 12 and 20 do not need to be coded //constraint 2 forall (f in Fabric, t in Period: t==1) {IFin + sum(k in Pricelevel)(FQ[f][k][t]) sum(m in MTO)(aO[f][m]*(RO[m][t] + OO[m][t])) sum(j in MTS)(aS[f][j]*(RS[j][t] + OS[j][t])) == IFft[f][t];} forall (f in Fabric, t in Period: t in 2..12) {IFft[f][t-1] + sum(k in Pricelevel)(FQ[f][k][t]) sum(m in MTO)(aO[f][m]*(RO[m][t] + OO[m][t])) sum(j in MTS)(aS[f][j]*(RS[j][t] + OS[j][t])) == IFft[f][t];} //constraint forall (j in {(RS[j][t] + forall (j in {(RS[j][t] + 4 MTS, t in OS[j][t]) MTS, t in OS[j][t]) Period: t==1) + ISin >= F[j][t];} Period: t==1) + ISin - F[j][t] == IS[j][t];} forall (j in {(RS[j][t] + forall (j in {(RS[j][t] + MTS, t in OS[j][t]) MTS, t in OS[j][t]) Period: t in + IS[j][t-1] Period: t in + IS[j][t-1] 2..12) >= F[j][t];} 2..12) - F[j][t] == IS[j][t];} //constraint 5 forall (m in MTO, t in Period: t==1) {0 + RO[m][t] + OO[m][t] >= D[m][t];} forall (m in MTO, t in Period: t==1) {0 + RO[m][t] + OO[m][t] - D[m][t] == IO[m][t];} forall (m in MTO, t in {IO[m][t-1] + RO[m][t] forall (m in MTO, t in {IO[m][t-1] + RO[m][t] Period: t in 2..12) + OO[m][t] >= D[m][t];} Period: t in 2..12) + OO[m][t] - D[m][t] == IO[m][t];} //constraint 6 & 7 forall (t in Period) {sum(m in MTO)(hO[m]*RO[m][t]) + sum(j in MTS)(hS[j]*RS[j][t]) <= Hmax;} forall (t in Period) {sum(m in MTO)(hO[m]*OO[m][t]) + sum(j in MTS)(hS[j]*OS[j][t]) <= Gmax;} //constraint 8 forall (t in Period) {sum(f in Fabric)(w[f]*IFft[f][t]) <= Wmax;} //constraint 9 forall (t in Period) {sum(m in MTO)(vO[m]*IO[m][t]) + sum(j in MTS)(vS[j]*IS[j][t]) <= Vmax;} //constraint 10 forall (f in Fabric, t in Period) {FQ[f][1][t] <= q[f]*b[f][t];} //constraint 11 forall (f in Fabric, t in Period) {q[f]*(1-b[f][t]) <= FQ[f][2][t];} //constraint 13 forall (t in Period: t==1) {C0 + sum(m in MTO)(pO[m]*D[m][t]) sum(f in Fabric, k in Pricelevel)(r[f][k]*FQ[f][k][t]) sum(m in MTO)(RCO[m]*RO[m][t] + OCO[m]*OO[m][t]) sum(j in MTS)(RCS[j]*RS[j][t] + OCS[j]*OS[j][t]) sum(f in Fabric)(ICF[f][t]*IFft[f][t]) sum(m in MTO)(ICO[m][t]*IO[m][t]) sum(j in MTS)(ICS[j][t]*IS[j][t]) == CH[t];} forall (t in Period: t in 2..4) {CH[t-1] + sum(m in MTO)(pO[m]*D[m][t]) sum(f in Fabric, k in Pricelevel)(r[f][k]*FQ[f][k][t]) sum(m in MTO)(RCO[m]*RO[m][t] + OCO[m]*OO[m][t]) sum(j in MTS)(RCS[j]*RS[j][t] + OCS[j]*OS[j][t]) sum(f in Fabric)(ICF[f][t]*IFft[f][t]) sum(m in MTO)(ICO[m][t]*IO[m][t]) sum(j in MTS)(ICS[j][t]*IS[j][t]) == CH[t];} //constraint 14 forall (t in Period: t in 5..12) {CH[t-1] + sum(m in MTO)(pO[m]*D[m][t]) + sum(j in MTS)(pS[j]*F[j][t]) sum(f in Fabric, k in Pricelevel)(r[f][k]*FQ[f][k][t]) sum(m in MTO)(RCO[m]*RO[m][t] + OCO[m]*OO[m][t]) sum(j in MTS)(RCS[j]*RS[j][t] + OCS[j]*OS[j][t]) sum(f in Fabric)(ICF[f][t]*IFft[f][t]) sum(m in MTO)(ICO[m][t]*IO[m][t]) sum(j in MTS)(ICS[j][t]*IS[j][t]) == CH[t];} //constraint 15 CH[12] >= CT; //constraint 16 forall (m in MTO, t in Period) {RO[m][t] + OO[m][t] >= BO[m]*zO[m][t];} //constraint 17 forall (m in MTO, t in Period) {zO[m][t] >= (1/L)*(RO[m][t] + OO[m][t]);} //constraint 18 forall (j in MTS, t in Period) {RS[j][t] + OS[j][t] >= BS[j]*zS[j][t];} //constraint 19 forall (j in MTS, t in Period) {zS[j][t] >= (1/L)*(RS[j][t] + OS[j][t]);} } B. CPLEX CODE (Data file) SheetConnection Data("excel file inventory.xlsx"); nbFabric from SheetRead(Data,"fabric!J3"); nbPricelevel from SheetRead(Data,"fabric!J4"); nbMTO from SheetRead(Data,"fabric!J5"); nbMTS from SheetRead(Data,"fabric!J6"); nbPeriod from SheetRead(Data,"fabric!J7"); /*initial inventory level of fabric and MTS*/ IFin from SheetRead(Data,"fabric!F3"); ISin from SheetRead(Data,"fabric!F4"); /*cash and large number*/ C0 from SheetRead(Data,"fabric!F5"); CT from SheetRead(Data,"fabric!F6"); L from SheetRead(Data,"fabric!F7"); /*capacities*/ Hmax from SheetRead(Data,"fabric!C3"); Gmax from SheetRead(Data,"fabric!C4"); Vmax from SheetRead(Data,"fabric!C5"); Wmax from SheetRead(Data,"fabric!C6"); /*fabric parameters*/ r from SheetRead(Data,"fabric!C10:D13"); ICF from SheetRead(Data,"fabric!G10:R13"); aO from SheetRead(Data,"fabric!C16:D19"); aS from SheetRead(Data,"fabric!G16:J19"); w from SheetRead(Data,"fabric!M16:M19"); q from SheetRead(Data,"fabric!P16:P19"); /*MTO parameters*/ ICO from SheetRead(Data,"MTO!C4:N5"); RCO from SheetRead(Data,"MTO!C8:C9"); OCO from SheetRead(Data,"MTO!F8:F9"); hO from SheetRead(Data,"MTO!I8:I9"); vO from SheetRead(Data,"MTO!L8:L9"); pO from SheetRead(Data,"MTO!O8:O9"); BO from SheetRead(Data,"MTO!R8:R9"); D from SheetRead(Data,"MTO!C16:N17"); /*MTS parameters*/ ICS from SheetRead(Data,"MTS!C4:N7"); RCS from SheetRead(Data,"MTS!C10:C13"); OCS from SheetRead(Data,"MTS!F10:F13"); hS from SheetRead(Data,"MTS!I10:I13"); vS from SheetRead(Data,"MTS!L10:L13"); pS from SheetRead(Data,"MTS!O10:O13"); BS from SheetRead(Data,"MTS!R10:R13"); F from SheetRead(Data,"MTS!C16:N19"); /*decision variables*/ IFft to SheetWrite(Data,"Dvar!C5:N8"); CH to SheetWrite(Data,"Dvar!C11:N11"); IO to SheetWrite(Data,"Dvar!C14:N15"); IS to SheetWrite(Data,"Dvar!C18:N21"); RO to SheetWrite(Data,"Dvar!C24:N25"); RS to SheetWrite(Data,"Dvar!C28:N31"); OO to SheetWrite(Data,"Dvar!C34:N35"); OS to SheetWrite(Data,"Dvar!C38:N41"); b to SheetWrite(Data,"Dvar!C48:N51"); zO to SheetWrite(Data,"Dvar!C54:N55"); zS to SheetWrite(Data,"Dvar!C58:N61"); C. Excel file