Two Lot-Sizing Algorithms for Minimizing Inventory Cost and Their Software Implementation
Abstract
:1. Introduction
2. Literature Review
3. Description of Our Extended Lot-Sizing Problem
- The inventory control is carried out for an N number of time periods, which constitutes the “planning time horizon”;
- The demand is known in each period but is not necessarily constant;
- The lead time is known in advance;
- Product deficiencies are not allowed;
- The products’ prices are constant during the planning time horizon.
- The transportation costs per truck and per period;
- The purchase cost for each unit, which may vary per period depending on price adjustments;
- The labor cost of ordering;
- The insurance costs during the transportation and storage of the products;
- Customs clearance costs;
- The operational costs of storing the inventory;
- The maximum amount of inventory that can be stored at the facility in order for the algorithm to “block” an order that exceeds it, even if it is more economical than the alternative;
- The maximum number of pieces of a certain product that a truck can carry;
- The current stock;
- The maximum and average demand for the product in the previous year, which are necessary to calculate the safety stock that the company should keep.
4. Algorithm’s Description with Pseudo-Language
- Indexes
- Parameters
- : safety stock;
- demand remaining after substracting the stock already at warehouse for period ;
- total demand remaining after subtracting the stock already at warehouse for period up to period ;
- : the cost for ordering in period up to period ;
- : the sum of for ;
- : the minimum value of for ;
- : the stock at warehouse in period .
- Decision Variables
- : forecasted demand for period ;
- : transportation cost per truck for period ;
- : transportation cost per truck for the period in order to cover the demand up to period ;
- : cost per item of product for period ;
- : capacity of the warehouse for period ;
- : maximum quantity of products that a truck can transfer;
- : cost of ordering;
- : cost of insurance during transportation as a percentage;
- : cost of insurance of an item in storage as a percentage;
- : customs clearance fee per order;
- : inventory operating costs per item and per period as a percentage;
- : stock of the product that exists at the beginning of the periods we are studying;
- : lead time in periods we examine;
- : previous year’s peak demand;
- : average demand of the previous year for the periods we examine;
- : cost of capital as a percentage (the cost of capital that will be allocated for the purchase of the products, such as the savings rate or the loan rate, etc., depending on the capital with which the product is purchased).
- New Parameters
- : the demand for full truckload for period .
Algorithm 1 Main Algorithm | |
1 | lead_time |
2 | if stock_beg < safety_stock: |
3 | for_d1 = for_d1 + (safety_stock − stock_beg) |
4 | : |
5 | if (stock_beg − for_di > safety_stock): |
6 | dem_wo_stocki = 0 |
7 | else: |
8 | dem_wo_stocki = for_di |
9 | : |
10 | : |
11 | if (dem_wo_stock_totali,j + stock_in_warehousei > cap_wi): |
12 | table_valuei,j = “No space” |
13 | else: |
14 | : |
15 | unit_ci + |
unit_ci + ord_c | |
16 | : |
17 | 0: |
18 | table_valuei,j = min_tablei + trans_total_ci,j + |
unit_ci + ord_c | |
19 | else: |
20 | |
unit_ci + | |
+ ord_c | |
21 | else: |
22 | |
(j − i) + | |
(j − i) | |
23 | After the above calculations, the optimal solution should be selected in the same way as the Wagner–Whitin algorithm [3]. |
Algorithm 2 “Full-Truck” Algorithm | |
1 | sum_full_truck_dem = 0 |
2 | : |
3 | dem_wo_stock_fulli = dem_wo_stocki |
4 | : |
5 | if dem_wo_stocki = 0: |
6 | full_truck_demi = dem_wo_stock_fulli |
7 | 0: |
8 | k = 1 |
9 | while sum_full_truck_dem < max_tr: |
10 | sum_full_truck_dem = sum_full_truck_dem + dem_wo_stock_fullk |
11 | k = k + 1 |
12 | if sum_full_truck_dem > max_tr: |
13 | full_truck_demi = max_tr |
14 | dem_wo_stock_fullk = sum_full_truck_dem − max_tr |
15 | : |
16 | full_truck_demk = sum_full_truck_dem |
17 | sum_full_truck_dem = 0 |
18 | After the above algorithm, the tool calculates the results by using the Algorithm 1 with the new values of demands of the product (stored in the variable “full_truck_demi”). |
5. Software Implementation of the Algorithms and Use Case Scenarios
- It provides a graphical environment for easy and simplified use.
- It automates its operations in the background, reducing the manual actions of the end user to a minimum.
- It has the ability to save the input data and, therefore, reuse the same data in the future.
- It presents the results in a user-friendly way.
- It automatically saves the results in a file so that they remain available to the user even after exiting the tool.
- Scenario 1
- (a)
- For the case of partially loaded trucks, four orders are proposed at periods 0 (today), 1, 2, and 5. Each of these orders covers the demand of 1, 1, 3, and 1 period(s), respectively, with order quantity and costs shown in Table 2.
- (b)
- For the full-truck case, the tool advises the user to make one order each period. Each order covers the demand for 1 period, the order quantity is one full truck, and the cost is 5179.24 for each order, except for the first order, which costs 5249.24 due to the higher transportation cost of the first period that exists according to the scenario.
- Sensitivity Analysis of Scenario 1
- Scenario 2
- Scenario 3
- Scenario 4
- Scenario 5
6. Summary, Conclusions, and Future work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Appendix A
Forecasted demand for periods i = 1 to 6 ( | 222,979, 22,543, 26,000, 19,775, 21,345, 19,000 |
Transportation costs per truck for periods i = 1 to 6 ( | 500, 430, 430, 430, 430, 430 |
Cost of the product per piece for periods i = 1 to 6 ( | 0.2083 |
Maximum capacity of the warehouse per period for the product for periods i = 1 to 6 ( | no limit (99,999,999) |
Maximum quantity of products that the truck can transfer () | 22,800 |
Cost of ordering ( | 2.2 |
Cost of insurance during transportation as a percentage ( | 0 |
Cost of insurance in storage as a percentage ( | 0.2 |
Customs clearance fee per order ( | 0 |
Inventory operating costs per piece and per period as a percentage ( | 0.3 |
Stock of the product that exists at the beginning of the periods we are studying ( | 25,200 |
Lead time in periods ( | 0.25 |
Previous year’s peak demand ( | 24,950 |
Average demand of the previous year ( | 13,821 |
Cost of capital ( | 0 |
References
- Lolli, F.; Balugani, E.; Ishizaka, A.; Gamberini, R.; Rimini, B.; Regattieri, A. Machine learning for multi-criteria inventory classification applied to intermittent demand. Prod. Plan. Control 2019, 30, 76–89. [Google Scholar] [CrossRef]
- Karimi, B.; Ghomi, S.F.; Wilson, J.M. The capacitated lot sizing problem: A review of models and algorithms. Omega 2003, 31, 365–378. [Google Scholar] [CrossRef]
- Wagner, H.M.; Whitin, T.M. Dynamic version of the economic lot size model. Manag. Sci. 1958, 5, 89–96. [Google Scholar] [CrossRef]
- Nahmias, S.; Olsen, T.L. Production and Operations Analysis; Waveland Press: Long Grove, IL, USA, 2015. [Google Scholar]
- Bushuev, M.A.; Guiffrida, A.; Jaber, M.Y.; Khan, M. A review of inventory lot sizing review papers. Manag. Res. Rev. 2015, 38, 283–298. [Google Scholar] [CrossRef]
- Muckstadt, J.A.; Sapra, A. Principles of Inventory Management: When You Are Down to Four, Order More; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2010. [Google Scholar]
- Saydam, C.; Evans, J.R. A comparative performance analysis of the Wagner-Whitin algorithm and lot-sizing heuristics. Comput. Ind. Eng. 1990, 18, 91–93. [Google Scholar] [CrossRef]
- Drexl, A.; Kimms, A. Lot sizing and scheduling—Survey and extensions. Eur. J. Oper. Res. 1997, 99, 221–235. [Google Scholar] [CrossRef]
- Evans, J.R. An efficient implementation of the Wagner-Whitin algorithm for dynamic lot-sizing. J. Oper. Manag. 1985, 5, 229–235. [Google Scholar] [CrossRef]
- Wagelmans, A.; Van Hoesel, S.; Kolen, A. Economic lot sizing: An O (n log n) algorithm that runs in linear time in the Wagner-Whitin case. Oper. Res. 1992, 40 (Suppl. 1), S145–S156. [Google Scholar] [CrossRef]
- Heady, R.B.; Zhu, Z. An improved implementation of the Wagner-Whitin Algorithm. Prod. Oper. Manag. 1994, 3, 55–63. [Google Scholar] [CrossRef]
- Sajadi, S.; Arianezhad, M.G.; Sadeghi, H.A. An Improved WAGNER-WHITIN Algorithm. Int. J. Ind. Eng. Prod. Res. 2009, 20, 117–123. [Google Scholar]
- Chowdhury, N.T.; Baki, M.F.; Azab, A. Dynamic economic lot-sizing problem: A new O (T) algorithm for the Wagner-Whitin model. Comput. Ind. Eng. 2018, 117, 6–18. [Google Scholar] [CrossRef]
- Vargas, V. An optimal solution for the stochastic version of the Wagner–Whitin dynamic lot-size model. Eur. J. Oper. Res. 2009, 198, 447–451. [Google Scholar] [CrossRef]
- Richter, K. Remanufacturing Planning by Reverse Wagner; Whitin Models, Discussion Paper 104; Department of Economics, European University Viadrina: Frankfurt, Germany, 1997. [Google Scholar]
- Richter, K.; Weber, J. The reverse Wagner/Whitin model with variable manufacturing and remanufacturing cost. Int. J. Prod. Econ. 2001, 71, 447–456. [Google Scholar] [CrossRef]
- Gulecyuz, S.; O’Sullivan, B.; Tarim, S.A. A Heuristic Method for Perishable Inventory Management under Non-Stationary Demand. In Proceedings of the International Workshop on Lot-Sizing-IWLS’2023, Cork, Ireland, 23–25 August 2023; p. 49. [Google Scholar]
- Gharaei, A.; Hoseini Shekarabi, S.A.; Karimi, M. Optimal lot-sizing of an integrated EPQ model with partial backorders and re-workable products: An outer approximation. Int. J. Syst. Sci. Oper. Logist. 2023, 10, 2015007. [Google Scholar] [CrossRef]
- Metzker, P.; Thevenin, S.; Adulyasak, Y.; Dolgui, A. Robust optimization for lot-sizing problems under yield uncertainty. Comput. Oper. Res. 2023, 149, 106025. [Google Scholar] [CrossRef]
- Forel, A.; Grunow, M. Dynamic stochastic lot sizing with forecast evolution in rolling-horizon planning. Prod. Oper. Manag. 2023, 32, 449–468. [Google Scholar] [CrossRef]
- Benmamoun, Z.; Fethallah, W.; Ahlaqqach, M.; Jebbor, I.; Benmamoun, M.; Elkhechafi, M. Butterfly Algorithm for Sustainable Lot Size Optimization. Sustainability 2023, 15, 11761. [Google Scholar] [CrossRef]
- Rojas, F.; Leiva, V.; Huerta, M.; Martin-Barreiro, C. Lot-size models with uncertain demand considering its skewness/kurtosis and stochastic programming applied to hospital pharmacy with sensor-related COVID-19 data. Sensors 2021, 21, 5198. [Google Scholar] [CrossRef] [PubMed]
- Popović, D.; Bjelić, N.; Vidović, M.; Ratković, B. Solving a Production Lot-Sizing and Scheduling Problem from an Enhanced Inventory Management Perspective. Mathematics 2023, 11, 2099. [Google Scholar] [CrossRef]
- Dimoudis, D.; Vafeiadis, T.; Nizamis, A.; Musiari, E.; Ziliotti, L.; Ioannidis, D.; Tzovaras, D. A holistic framework for production scheduling in Industry 4.0. In Proceedings of the 2023 19th International Conference on Distributed Computing in Smart Systems and the Internet of Things (DCOSS-IoT), Pafos, Cyprus, 19–21 June 2023; pp. 269–276. [Google Scholar]
- Zhang, Z.; Gao, C.; Luedtke, J. New valid inequalities and formulations for the static joint Chance-constrained Lot-sizing problem. Math. Program. 2023, 199, 639–669. [Google Scholar] [CrossRef]
- Dey, B.K.; Seok, H. Intelligent inventory management with autonomation and service strategy. J. Intell. Manuf. 2024, 35, 307–330. [Google Scholar] [CrossRef] [PubMed]
- Theodoridis, G.; Tsadiras, A. Retail Demand Forecasting: A Multivariate Approach and Comparison of Boosting and Deep Learning Methods. Int. J. Artif. Intell. Tools 2024. [Google Scholar] [CrossRef]
Authors | Complexity Reduction | Stochastic Demand | Additional Concepts | Additional Variables | Software Implementation | Fully Loaded Trucks Solution |
---|---|---|---|---|---|---|
Evans (1985) [9] | ✓ | ✓ | ||||
Wagelmans et al. (1992) [10] | ✓ | |||||
Heady and Zhu (1994) [11] | ✓ | |||||
Richter and Weber (2002) [16] | ✓ | |||||
Vargas (2009) [14] | ✓ | |||||
Sajadi et al. (2009) [12] | ✓ | |||||
Chowdhury et al. (2018) [13] | ✓ | |||||
Gharaei et al. (2023) [18] | ✓ (Backorders) | |||||
Forel and Grunow (2023) [20] | ✓ | |||||
Benmamoun et al. (2023) [21] | ✓ | |||||
Dey and Seok (2024) [26] | ✓ (Maintenance) | |||||
This paper | ✓ | ✓ | ✓ |
No. | Scenarios |
---|---|
1 | A 6-period time horizon with no constraint on the maximum capacity of the warehouse. |
2 | Similar to Scenario 1 + constraint on the maximum capacity of the warehouse. |
3 | Similar to Scenario 1 + no holding costs. |
4 | Similar to Scenario 1 + 12-period time horizon and no holding costs. |
5 | Similar to Scenario 1 + 12-period time horizon. |
Partially Loaded Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity (truck max capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 truck with 8908 pcs | 2355.54 |
2 | 1 | 1 | 1 truck with 22,543 pcs | 5125.71 |
3 | 2 | 3 | 2 full trucks and 1 truck with 21,520 pcs | 15,271.10 |
4 | 5 | 1 | 1 truck with 19,000 pcs | 4387.70 |
Full-Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity in Trucks (truck capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 full truck | 5249.24 |
2 | 1 | 1 | 1 full truck | 5179.24 |
3 | 2 | 1 | 1 full truck | 5179.24 |
4 | 3 | 1 | 1 full truck | 5179.24 |
5 | 4 | 1 | 1 full truck | 5179.24 |
6 | 5 | 1 | 1 full truck | 5179.24 |
Decision Variable | Range → No. of Orders |
---|---|
Maximum capacity of the warehouse per period for the product | [37,129, 68,580) → 6 [68,580, +∞) → 4 |
Customs clearance fee per order | [0, 145) → 4 [145, 667) → 3 [667, +∞) → 2 |
Inventory operating costs per piece and per period as a percentage | [0, 0.66) → 4 [0.66, +∞) → 6 |
Cost of capital as a percentage | [0, 0.21) → 4 [0.21, +∞) → 6 |
Cost of insurance in storage as a percentage | [0, 1.9) → 4 [1.9, +∞) → 6 |
Partially Loaded Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity (truck max capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 truck with 8908 pcs | 2355.54 |
2 | 1 | 1 | 1 truck with 22,543 pcs | 5125.71 |
3 | 2 | 1 | 1 full truck and 1 truck with 3200 pcs | 6275.80 |
4 | 3 | 1 | 1 truck with 19,775 pcs | 4579.13 |
5 | 4 | 1 | 1 truck with 21,345 pcs | 4876.16 |
6 | 5 | 1 | 1 truck with 19,000 pcs | 4387.70 |
Full-Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity in Trucks (truck capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 full truck | 5249.24 |
2 | 1 | 1 | 1 full truck | 5179.24 |
3 | 2 | 1 | 1 full truck | 5179.24 |
4 | 3 | 1 | 1 full truck | 5179.24 |
5 | 4 | 1 | 1 full truck | 5179.24 |
6 | 5 | 1 | 1 full truck | 5179.24 |
Partially Loaded Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity (truck max capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 truck with 8908 pcs | 2355.54 |
2 | 1 | 5 | 4 full trucks and 1 truck with 17,463 pcs | 24,787.50 |
Full-Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity in Trucks (truck capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 full truck | 5249.24 |
2 | 1 | 5 | 5 full trucks | 25,896.20 |
Partially Loaded Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity (truck max capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 truck with 8908 pcs | 2355.54 |
2 | 1 | 11 | 9 full trucks and 1 truck with 3463 pcs | 47,764.50 |
Full-Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity in Trucks (truck capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 full truck | 5249.24 |
2 | 1 | 11 | 9 full trucks | 46,613.16 |
Partially Loaded Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity (truck max capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 truck with 8908 pcs | 2355.54 |
2 | 1 | 1 | 1 truck with 22,543 pcs | 5125.71 |
3 | 2 | 3 | 2 full trucks and 1 truck with 21,520 pcs | 15,271.10 |
4 | 5 | 4 | 1 truck with 19,000 pcs | 4387.70 |
5 | 9 | 3 | 4 full trucks and 1 truck with 8800 pcs | 22,980 |
Full-Truck Orders | ||||
Order ID | Order Time Period | Demand covering period(s) | Quantity in Trucks (truck capacity: 22,800 pcs) | Cost |
1 | 0 | 1 | 1 full truck | 5249.24 |
2 | 1 | 1 | 1 full truck | 5179.24 |
3 | 2 | 1 | 1 full truck | 5179.24 |
4 | 3 | 1 | 1 full truck | 5179.24 |
5 | 4 | 1 | 1 full truck | 5179.24 |
6 | 5 | 4 | 1 full truck | 5179.24 |
7 | 9 | 3 | 4 full trucks | 20,716.96 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Arampatzis, M.; Pempetzoglou, M.; Tsadiras, A. Two Lot-Sizing Algorithms for Minimizing Inventory Cost and Their Software Implementation. Information 2024, 15, 167. https://doi.org/10.3390/info15030167
Arampatzis M, Pempetzoglou M, Tsadiras A. Two Lot-Sizing Algorithms for Minimizing Inventory Cost and Their Software Implementation. Information. 2024; 15(3):167. https://doi.org/10.3390/info15030167
Chicago/Turabian StyleArampatzis, Marios, Maria Pempetzoglou, and Athanasios Tsadiras. 2024. "Two Lot-Sizing Algorithms for Minimizing Inventory Cost and Their Software Implementation" Information 15, no. 3: 167. https://doi.org/10.3390/info15030167
APA StyleArampatzis, M., Pempetzoglou, M., & Tsadiras, A. (2024). Two Lot-Sizing Algorithms for Minimizing Inventory Cost and Their Software Implementation. Information, 15(3), 167. https://doi.org/10.3390/info15030167