A Software Toolbox for Realistic Dataset Generation for Testing Online and Offline 3D Bin Packing Algorithms
Abstract
:1. Introduction
Dataset Source | Current Application | Number of Instances | Additional Constraints | Distribution of Box Type | Instance Heterogeneity |
---|---|---|---|---|---|
Bischoff and Ratcliff (BR1–BR7) [8] | Single container | 7 instances each with 100 items | Specific orientations are allowed | Pre-defined, fixed | Weakly heterogeneous |
Davies and Bischoff (BR0, BR8-BR15) [9] | Single container | 9 instances each with 100 items | Specific orientations are allowed | Pre-defined, fixed | Strongly heterogeneous |
Ivancic et al. [13] | Multiple identical containers | 47 instances each has between 47 and 180 boxes, 2–5 box types | None | Fixed | Weakly heterogeneous |
Martello et al. [14] | Multiple identical containers | 385 instances each has between 1 and 10 boxes, 9 box types | Specific orientations are allowed | User-defined | Strongly heterogeneous |
Mohanty et al. [15] | Multiple weakly/strongly heterogeneous containers | 16 instances each has between 70 and 175 boxes, 2 and 6 box types | None | Fixed | Weakly heterogeneous |
Bortfeldt and Gehring [18] | Single container ODP | 10 instances each has between 127 and 140 boxes, 3 and 50 box types | Specific orientations are allowed | Uniform | Strongly/weakly heterogeneous |
Bortfeldt and Mack [4] | Single/multiple ODP | 10 instances each with 1000 boxes, 3–50 box types | Specific orientations are allowed | Uniform | Weakly heterogeneous |
Bosch Group (mentioned in [19]) | Single/Multiple container ODP | 14 instances each has between 90 and 1145 boxes, 5 and 29 box types | Weight limit for vertical stability | None | Strongly/weakly heterogeneous |
Dataset Source | Type of Bin Packing Problem | Distinct Product Types | Additional Constraints | Distribution of Box Type | Instance Heterogeneity |
---|---|---|---|---|---|
Zhao et al. [21] | Single Container | 64 | Order dependence, vertical stability | Pre-defined | Strongly/weakly heterogeneous |
Variable-sized item (VSI) [32] | Single Container | Variable | Specific orientations are allowed | Random | Strongly/weakly heterogeneous |
Discreet dataset [33] | Multiple identical containers | 3 different settings for unlimited instances | Specific orientations are allowed, robot manipulation constraint | Pre-defined | Strongly heterogeneous |
Guillotine cut [22,23,24] | Single/multiple containers | Variable | Order dependence, specific orientations are allowed | Random | Strongly/weakly heterogeneous |
Event simulation based [25,26] | Single/multiple containers | 20–1000 | Specific orientations are allowed | Pre-defined, fixed | Weakly heterogeneous |
Random sequence based [34,35,36] | Multiple containers | Variable | None | Random/uniform | Strongly/weakly heterogeneous |
Random sampling based [37] | Multiple containers | 100 | Full support constraint | Random | Strongly/weakly heterogeneous |
Large-scale real world transaction order dataset (LRTOD) [27] | Single/multiple containers | - | Specific orientations are allowed | None | Strongly/weakly heterogeneous |
DHL dataset [28] | Single container | 7 | Specific orientations are allowed | Random | Weakly heterogeneous |
Asta et al. [29] | Uniform bin packing | 100 | None | Pre-defined, uniform | Weakly heterogeneous |
Ender et al. [30] | Uniform bin packing | Variable | None | User-defined, uniform | Weakly heterogeneous |
2. Materials and Methods
- Order—The identifier of the order. The value should be an integer number. All the rows with the same order identifier are part of the same order.
- Product—An order includes several products. Product is the product identifier. A product identifier should not repeat within an order (i.e., data rows with the same order may not have repeating values for the same Product). The value of the product should be an integer number.
- Quantity—Represents the amount of each product in an order. It should be an integer number.
- Length—Is an integer representing the length of one individual product in millimeters.
- Width—Is an integer representing the width of one individual product in millimeters.
- Height—Is an integer representing the height of one individual product in millimeters.
- Weight—Is a floating point number representing the weight of one individual product in kilograms.
- Load the dataset.
- Cluster the data.
- Calculate the cluster distribution (i.e., what is the frequency of orders belonging to each cluster in the dataset).
- Sample the clusters and generate representative data points from each sampled cluster.
- Generate a frequency table with the product counts per order.
- Evaluate the cosine similarity between the different orders of the frequency table.
- Interpret the cosine similarity matrix as an adjacency matrix in an undirected graph.
- Cluster the data by using a network community detection algorithm.
3. Results
4. Discussion
5. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Wang, F.; Hauser, K. Robot packing with known items and nondeterministic arrival order. IEEE Trans. Autom. Sci. Eng. 2020, 18, 1901–1915. [Google Scholar] [CrossRef]
- Bortfeldt, A.; Wäscher, G. Constraints in container loading—A state-of-the-art review. Eur. J. Oper. Res. 2013, 229, 1–20. [Google Scholar] [CrossRef]
- Allen, S.D.; Burke, E.K.; Kendall, G. A hybrid placement strategy for the three-dimensional strip packing problem. Eur. J. Oper. Res. 2011, 209, 219–227. [Google Scholar] [CrossRef]
- Bortfeldt, A.; Mack, D. A heuristic for the three-dimensional strip packing problem. Eur. J. Oper. Res. 2007, 183, 1267–1279. [Google Scholar] [CrossRef]
- Yarimcam, A.; Asta, S.; Özcan, E.; Parkes, A.J. Heuristic generation via parameter tuning for online bin packing. In Proceedings of the IEEE Symposium on Evolving and Autonomous Learning Systems (EALS), Orlando, FL, USA, 9–12 December 2014; pp. 102–108. [Google Scholar] [CrossRef] [Green Version]
- Ali, S.; Ramos, A.G.; Carravilla, M.A.; Oliveira, J.F. On-line three-dimensional packing problems: A review of off-line and on-line solution approaches. Comput. Ind. Eng. 2022, 168, 108–122. [Google Scholar] [CrossRef]
- Hong, Y.D.; Kim, Y.J.; Lee, K.B. Smart pack: Online autonomous object-packing system using RGB-D sensor data. Sensors 2020, 20, 4448. [Google Scholar] [CrossRef] [PubMed]
- Bischoff, E.E.; Ratcliff, M.S.W. Issues in the development of approaches to container loading. Omega 1995, 23, 377–390. [Google Scholar] [CrossRef]
- Davies, A.P.; Bischoff, E.E. Weight distribution considerations in container loading. Eur. J. Oper. Res. 1999, 114, 509–527. [Google Scholar] [CrossRef]
- Eley, M. A bottleneck assignment approach to the multiple container loading problem. Oper. Res. Spectr. 2003, 25, 45–60. [Google Scholar] [CrossRef]
- Che, C.H.; Huang, W.; Lim, A.; Zhu, W. The multiple container loading cost minimization problem. Eur. J. Oper. Res. 2011, 214, 501–511. [Google Scholar] [CrossRef]
- Ren, J.; Tian, Y.; Sawaragi, T. A priority-considering approach for the multiple container loading problem. Int. J. Metaheuristics 2011, 1, 298–316. [Google Scholar] [CrossRef]
- Ivancic, N.; Mathur, K.; Mohanty, B.B. An integer-programming based heuristic approach to the three-dimensional packing problem. J. Manuf. Oper. Manag. 1989, 2, 268–289. [Google Scholar]
- Martello, S.; Pisinger, D.; Vigo, D. The three-dimensional bin packing problem. Oper. Res. 2000, 48, 256–267. [Google Scholar] [CrossRef] [Green Version]
- Mohanty, B.B.; Mathur, K.; Ivancic, N.J. Value considerations in three-dimensional packing—A heuristic procedure using the fractional knapsack problem. Eur. J. Oper. Res. 1994, 74, 143–151. [Google Scholar] [CrossRef]
- Parreño, F.; Alvarez-Valdés, R.; Oliveira, J.F.; Tamarit, J.M. Neighborhood structures for the container loading problem: A VNS implementation. J. Heuristics 2010, 16, 1–22. [Google Scholar] [CrossRef]
- Zhang, Z.; Guo, S.; Zhu, W.; Oon, W.C.; Lim, A. Space defragmentation heuristic for 2D and 3D bin packing problems. In Proceedings of the Twenty-Second International Joint Conference on Artificial Intelligence, Catalonia, Spain, 16–22 July 2011; pp. 699–704. [Google Scholar]
- Bortfeldt, A.; Gehring, H. Two metaheuristics for strip packing problems. In Proceedings of the 5th International Conference of the Decision Sciences Institute, Athens 1999; Despotis, D.K., Zopounidis, C., Eds.; New Technologies Publications: Athens, Greece, 1999; Volume 2, pp. 1153–1156. [Google Scholar]
- Chen, M.; Huo, J.; Duan, Y. A hybrid biogeography-based optimization algorithm for three-dimensional bin size designing and packing problem. Comput. Ind. Eng. 2023, 180, 109–239. [Google Scholar] [CrossRef]
- Nguyen, T.H.; Nguyen, X.T. Space Splitting and Merging Technique for Online 3-D Bin Packing. Mathematics 2023, 11, 1912. [Google Scholar] [CrossRef]
- Zhao, H.; She, Q.; Zhu, C.; Yang, Y.; Xu, K. Online 3D bin packing with constrained deep reinforcement learning. AAAI Conf. Artif. Intell. 2021, 35, 741–749. [Google Scholar] [CrossRef]
- Zhao, H.; Zhu, C.; Xu, X.; Huang, H.; Xu, K. Learning practically feasible policies for online 3D bin packing. Sci. China Inf. Sci. 2022, 65, 112105. [Google Scholar] [CrossRef]
- Jia, J.; Shang, H.; Chen, X. Robot Online 3D Bin Packing Strategy Based on Deep Reinforcement Learning and 3D Vision. In Proceedings of the IEEE International Conference on Networking, Sensing and Control (ICNSC), Shanghai, China, 15–18 December 2022; pp. 1–6. [Google Scholar] [CrossRef]
- Puche, A.V.; Lee, S. Online 3D Bin Packing Reinforcement Learning Solution with Buffer. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Kyoto, Japan, 23–27 October 2022; pp. 8902–8909. [Google Scholar] [CrossRef]
- Ha, C.T.; Nguyen, T.T.; Bui, L.T.; Wang, R. An online packing heuristic for the three-dimensional container loading problem in dynamic environments and the Physical Internet. In Proceedings of the Applications of Evolutionary Computation: 20th European Conference, (EvoApplications), Amsterdam, The Netherlands, 19–21 April 2017; Part II. Springer International Publishing: Cham, Switzerland, 2017; pp. 140–155. [Google Scholar]
- Wang, R.; Nguyen, T.T.; Kavakeb, S.; Yang, Z.; Li, C. Benchmarking dynamic three-dimensional bin packing problems using discrete-event simulation. In Proceedings of the Applications of Evolutionary Computation: 19th European Conference, (EvoApplications), Porto, Portugal, 30 March–1 April 2016; Part II. Springer International Publishing: Cham, Switzerland, 2016; pp. 266–279. [Google Scholar]
- Duan, L.; Hu, H.; Qian, Y.; Gong, Y.; Zhang, X.; Xu, Y.; Wei, J. A multi-task selected learning approach for solving 3D flexible bin packing problem. arXiv 2018, arXiv:1804.06896. [Google Scholar]
- Li, T.H.S.; Liu, C.Y.; Kuo, P.H.; Fang, N.C.; Li, C.H.; Cheng, C.W.; Hsieh, C.Y.; Wu, L.F.; Liang, J.J.; Chen, C.Y. A three-dimensional adaptive PSO-based packing algorithm for an IoT-based automated e-fulfillment packaging system. IEEE Access 2017, 5, 9188. [Google Scholar] [CrossRef]
- Asta, S.; Özcan, E.; Parkes, A.J. CHAMP: Creating heuristics via many parameters for online bin packing. Expert Syst. Appl. 2016, 63, 208–221. [Google Scholar] [CrossRef] [Green Version]
- Özcan, E.; Parkes, A.J. Policy matrix evolution for generation of heuristics. In Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation, Dublin, Ireland, 12 July 2011; pp. 2011–2018. [Google Scholar] [CrossRef] [Green Version]
- Drake, J.H.; Swan, J.; Neumann, G.; Özcan, E. Sparse, continuous policy representations for uniform online bin packing via regression of interpolants. In Proceedings of the Evolutionary Computation in Combinatorial Optimization: 17th European Conference, EvoCOP 2017, Amsterdam, The Netherlands, 19–21 April 2017; Springer International Publishing: Cham, Switzerland, 2017; Volume 17, pp. 189–200. [Google Scholar] [CrossRef] [Green Version]
- Yang, S.; Song, S.; Chu, S.; Song, R.; Cheng, J.; Li, Y.; Zhang, W. Heuristics Integrated Deep Reinforcement Learning for Online 3D Bin Packing. IEEE Trans. Autom. Sci. Eng. 2023. early access. [Google Scholar] [CrossRef]
- Zhao, H.; Yu, Y.; Xu, K. Learning Efficient Online 3d Bin Packing on Packing Configuration Trees. In Proceedings of the International Conference on Learning Representations. 2022. Available online: https://openreview.net/forum?id=bfuGjlCwAq (accessed on 24 April 2023).
- Bódis, A.; Balogh, J. Bin packing problem with scenarios. Cent. Eur. J. Oper. Res. 2019, 27, 377–395. [Google Scholar] [CrossRef]
- Lin, T.D.; Hsu, C.C.; Hsu, L.F. Optimization by ant colony hybrid local search for online class constrained bin packing problem. Appl. Mech. Mater. 2013, 311, 123–128. [Google Scholar] [CrossRef]
- Nguyen, T.H.; Tran, V.T.; Doan, P.Q.; Mac, T.T. A novel heuristic algorithm for online 3D bin packing. In Proceedings of the 21st International Conference on Control, Automation and Systems (ICCAS), Jeju, Republic of Korea, 12–15 October 2021; pp. 1993–1997. [Google Scholar] [CrossRef]
- Ojha, A.; Agarwal, M.; Singhal, A.; Sarkar, C.; Ghosh, S.; Sinha, R. A generalized algorithm and framework for online 3-dimensional bin packing in an automated sorting center. In Proceedings of the Seventh Indian Control Conference (ICC), Mumbai, India, 20–22 December 2021; pp. 135–140. [Google Scholar] [CrossRef]
Order | Product | Quantity (Units of Product) | Length (mm) | Width (mm) | Height (mm) | Weight (kg) |
---|---|---|---|---|---|---|
92839 | 30367 | 2 | 300 | 160 | 216 | 8.953 |
92839 | 66212 | 1 | 385 | 160 | 215 | 10.727 |
92839 | 67805 | 36 | 225 | 225 | 180 | 5.186 |
92839 | 53347 | 1 | 244 | 164 | 274 | 5.811 |
92839 | 17310 | 10 | 160 | 160 | 111 | 1.781 |
33920 | 42882 | 4 | 244 | 164 | 274 | 5.811 |
33920 | 30920 | 3 | 225 | 225 | 180 | 5.19 |
Function Signature | Description |
---|---|
main_workflow(input_file_path, num_samples, output_file_path) | This function executes the main workflow described in Section 2 and in Figure 1. It takes as input the file path to the base dataset as input, the number of order samples to be generated and the path to the output file where the newly created dataset will be stored. |
cosine_similarity_community_clustering(freq_table, threshold=100) | This function takes as input a frequency table of the orders in the original dataset and clusters the dataset by applying the Louvain community detection algorithm (this corresponds to the clustering process in Figure 1). The threshold input regulates the maximum size of a community. Communities above that size are recursively re-evaluated into smaller communities. The function returns a dictionary of all the communities identified. |
cluster_distribution(communities_flat, total_data_points) | This function computes the distribution of orders per cluster, based on the frequency table and total amount of data points in the sample (this corresponds to the calculate cluster distribution process in Figure 1). |
generate_representative_data_point(b_dict) | This function generates a representative data point from a preselected cluster. The cluster information needs to be provided in the form of a dictionary that can be retrieved by calling the function get_b_dict (see code repository) that will convert a cluster to the appropriate format. |
sample_generator(freq_table, communities_flat, cluster_dist) | This function provides a generator for continuously sampling point from a dataset on demand. |
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. |
© 2023 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
Ribeiro, L.; Ananno, A.A. A Software Toolbox for Realistic Dataset Generation for Testing Online and Offline 3D Bin Packing Algorithms. Processes 2023, 11, 1909. https://doi.org/10.3390/pr11071909
Ribeiro L, Ananno AA. A Software Toolbox for Realistic Dataset Generation for Testing Online and Offline 3D Bin Packing Algorithms. Processes. 2023; 11(7):1909. https://doi.org/10.3390/pr11071909
Chicago/Turabian StyleRibeiro, Luis, and Anan Ashrabi Ananno. 2023. "A Software Toolbox for Realistic Dataset Generation for Testing Online and Offline 3D Bin Packing Algorithms" Processes 11, no. 7: 1909. https://doi.org/10.3390/pr11071909
APA StyleRibeiro, L., & Ananno, A. A. (2023). A Software Toolbox for Realistic Dataset Generation for Testing Online and Offline 3D Bin Packing Algorithms. Processes, 11(7), 1909. https://doi.org/10.3390/pr11071909