This document provides an overview of the input and output data files of the instances validated in the manuscript. Note: The units for each parameter are detailed in the manuscript. #### 1. Input data Input data is provided in the files *xx.dat*, where xx is the name of the instance in the manuscript. Each file contains the parameters related to order lines, coils, slitting lines and the manufacturing production process. Below is a breakdown of the sections and key components in the input data file (note: names starting with "s" correspond to sets and names starting with $p$ correspond to parameters): # Order Lines Sets and Parameters - **sOrders**: Set of order lines. - **sOrdersMandatory**: Set of order lines that must be completed in the cutting plan. - **pWidthOfOrder**: Width for each order line. - **pWeightOfOrder**: Required weight for each order line. - **pMaxWeightStrip**: Maximum weight strip parameter for each order. - **pMinWeightStrip**: Minimum weight strip parameter for each order. - **pPercentageLow**: Maximum lower deviation allowed for order weight. - **pPercentageUp**: Maximum upper deviation allowed for order weight. # Slitting Lines Parameters - **sLines**: Set of slitting lines. - **pMaximumWeightSetStrips**: Maximum output weight for the set of strips obtained in each pass. - **sSpeedsOfLine**: Set of speeds for each slitting line. # Coil Parameters - **sCoils**: Set of coils. - **sCoilsNotRewind**: Set of processed coils in stock (these coils cannot be rewound). - **sCoilsToOrder**: Set of compatible coils for each order line. - **pWidthOfCoil**: Width for each coil. - **pWeightOfCoil**: Weight for each coil. - **pLengthOfCoil**: Length for each coil. - **pMinimumCutLength**: Minimum cut length for each coil. - **pMaximumCutLength**: Maximum cut length for each coil. - **pInverseRewindingSpeed**: Inverse rewind speed parameter for each coil. - **pMinimumCutLengthLines**: Minimum cut length parameter for each coil on specific lines. - **pDensity**: Density parameter. - **pThicknessOfCoil**: Thickness for each coil. # Compatibility Parameters - **sOrdersToCoil**: Set of compatible order lines for each coil. - **sLinesToCoil**: Set of compatible slitting lines for each coil. # Additional Coil Parameters - **pMaximumLengthSetStrips**: Maximum strip lengths for each coil and slitting line combination. - **pMaximumNumberPasses**: Maximum number of passes parameter for each coil and line combination. - **pMaximumNumberPassesCoil**: Maximum number of passes that can be obtained for each coil. - **pMaximumNumberStrips**: Maximum number of strips that can be obtained for each coil. - **pMaximumNumberKnives**: Maximum number of knives allowed for each coil and slitting line and speed combination. - **pMinimumCuttingWidth**: Minimum strip width for each coil and slitting line and speed combination. - **pProcessingTime**: Processing time for each coil and slitting line and speed combination. - **pLessRestrictedLineSpeed**: This parameter takes the value 1 for the less restricted slitting line speed for each coil and slitting line and speed combination and 0 otherwise. # Operation Process Parameters - **pMinimumEdgeTrimTop**: Minimum edge trim required to maintain the uniformity of the cut (left side). - **pTimeUsedCrossCut**: Time used to perform a crosscut - **pMinimumEdgeTrimBottom**: Minimum edge trim required to maintain the uniformity of the cut (right side). - **pMinimumReusableWidth**: Minimum width of strip leftovers to be considered retails. - **pMinimumReusableWeight**: Minimum weight of strip leftovers to be considered retails #### 2. Output Data Results are presented in five files per instance. The structure of ach file is detailed below. # xx_coils_results.tab It contains one row per coil with the following information: - **name**: The identifier of the coil. - **usedCoil**: Binary indicator (1 or 0) indicating whether the coil has been used. - **completeUse**: Binary indicator (1 or 0) indicating whether the coil has been completely used lengthwise. - **slitCoil**: Binary indicator (1 or 0) indicating whether the coil has been slit. - **rolledUp**: Binary indicator (1 or 0) indicating whether the coil has been rewound. - **usedWidth**: The width of the coil that has been used. - **ifLeftsStrip**: Binary indicator (1 or 0) indicating if the coil has leftover strips. - **unUsedWidth**: The width of the unused part of the coil. - **widthReuLefts**: The width of the reusable leftover strips. - **widthNonReuLefts**: The width of the non-reusable leftover strips. - **usedWeight**: The weight of the used coil. - **rolledWeight**: The weight of the rewound coil. - **leftsWeight**: The weight of the leftover strips. - **scrapWeight**: The weight of the scrap material. - **usedLength**: The length of the used coil. - **passLength**: The length of the pass. - **usedKnives**: The number of knives used. - **nCrossCuts**: The number of crosscuts. Example entries: | name | usedCoil | completeUse | slitCoil | rolledUp | usedWidth | ifLeftsStrip | unUsedWidth | widthReuLefts | widthNonReuLefts | usedWeight | rolledWeight | leftsWeight | scrapWeight | usedLength | passLength | usedKnives | nCrossCuts | |------|----------|-------------|----------|----------|-----------|--------------|-------------|---------------|------------------|------------|--------------|-------------|-------------|------------|------------|------------|------------| | C1 | 1 | 0 | 1 | 0 | 1055 | 1 | 195 | 195 | 0 | 16415.10 | 0 | 3063.10 | 157.08 | 714.66 | 357.33 | 7 | 1 | | C2 | 1 | 0 | 1 | 0 | 219 | 1 | 56 | 56 | 0 | 3255.73 | 0 | 872.35 | 155.78 | 708.72 | 708.72 | 3 | 0 | | C3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | # xx_orders_results.tab It contains one row for each order line with the following information: - **name**: The identifier of the order line. - **servedWeight**: The served weight for the order line. - **remainingWeight**: The remaining weight for the order line. - **nUsedLots**: The number of coils used for the order line. - **nReusableStops**: The number of retails generated in the coils used to serve the order line. - **nNonReusableStops**: The number of non-reusable strips generated in the coil to serve the order line. - **totalEdgeTrim**: The total weight of the edge trim generated in the coils used to serve the order line. - **accuracy**: The accuracy for the order line. - **nStrips**: The number of strips used for the order line. Example entries: | name | servedWeight | remainingWeight | nUsedLots | nReusableStops | nNonReusableStops | totalEdgeTrim | accuracy | nStrips | |------|--------------|------------------|-----------|----------------|-------------------|---------------|----------|---------| | O1 | 19670.83 | 670.83 | 2 | 2 | 0 | 312.86 | 1.04 | 11 | | O2 | 0 | -5661 | 0 | 0 | 0 | 0 | 0 | 0 | | O3 | 431.78 | -58.22 | 1 | 1 | 0 | 143.93 | 0.88 | 2 | # xx_coils_strips_results.tab The data in this file provides the details of the assignment of order lines to coils. It contains one row for each possible order line-coil combination with the following information: - **orderId**: The order line identifier. - **coilId**: The coil identifier. - **assign**: Assignment status (1 for assigned, 0 for not assigned). - **orderWidth**: The width of the order. - **maxStripWeight**: The maximum allowed weight of the strips served for the order line. - **nCrossCuts**: The number of crosscuts performed in the coil. - **numStrips**: The number of strips served from the coil assigned to the order line. - **weightAssigned**: The weight served from the coil assigned to the order line. Example entries: | orderId | coilId | assign | orderWidth | maxStripWeight | nCrossCuts | numStrips | weightAssigned | |---------|--------|--------|------------|----------------|------------|-----------|----------------| | O1 | C1 | 1 | 209 | 5904.12 | 1 | 10 | 16415.10 | | O1 | C2 | 1 | 209 | 5904.12 | 0 | 1 | 3255.73 | | O1 | C3 | 0 | 209 | 5904.12 | 0 | 0 | 0 | # xx_coils_lines_results.tab The data in this file provides the assignment of coils to the slitting lines. It contains one row for each possible coil-slitting line-speed combination with the following information: - **coil**: The coil identifier. - **line**: The slitting line identifier. - **speed**: The speed identifier. - **maxNumberKnives**: The maximum number of knives that can be used. - **minCuttingWidth**: The minimum cutting width for the coil in the slitting line at the speed. - **maxLengthSetStrips**: The maximum allowed length of a set of strips. - **maxWeightSetStrips**: The maximum allowed weight of a set of strips. - **processingTime**: The cutting time. - **crossCutsTime**: The time required for crosscuts. - **rewindingTime**: The time required to rewind the coil. - **assignLine**: The status of the assignment of the coil to a specific line and speed (1 if assigned). - **coilProcessingTimeLine**: The total coil processing time for the assigned line and speed. Example entries: | coil | line | speed | maxNumberKnives | minCuttingWidth | maxLengthSetStrips | maxWeightSetStrips | processingTime | crossCutsTime | rewindingTime | assignLine | coilProcessingTimeLine | |------|------|-------|------------------|------------------|---------------------|--------------------|------------------|---------------|----------------|------------|-------------------------| | C1 | LCL1 | CORTA | 7 | 20 | 940.22 | 16000 | 12 | 20 | 0 | 0 | 0 | | C1 | LCL1 | LARGA | 7 | 40 | 940.22 | 16000 | 7 | 20 | 0 | 0 | 0 | | C1 | LCL4 | CORTA | 14 | 40 | 1049.61 | 16000 | 11 | 20 | 0 | 0 | 25 | # xx_orders_coils_strips_results.tab It contains the assignment of the coil strips to the different order lines. For each row the following information is detailed: - **order**: The order line identifier. - **coil**: The coil identifier. - **strip**: The strip number within the coil. - **assignStrip**: The strip assignment status (1 for assigned, 0 for not assigned). - **width**: The width of the strip. Example entries: | order | coil | strip | assignStrip | width | |-------|------|-------|-------------|-------| | O1 | C1 | 1 | 1 | 209 | | O1 | C1 | 2 | 0 | 209 | | O1 | C1 | 3 | 1 | 209 |