Tailored Iterated Greedy metaheuristic for a scheduling problem in metal 3D printing

This article contributes to the additive manufacturing-based production planning literature by developing a Mixed-Integer Linear Programming (MILP) formulation for the Identical Parallel 3D-Printing Machines Scheduling Problem considering batching, multiple build platforms of restricted sizes, and sequence-independent setup times. Besides, a customized metaheuristic, named the Tailored Iterated Greedy (TIG) Algorithm is developed to solve the new optimization problem. TIG ’ s performance is evaluated through extensive numerical analysis and using a new testbed. It is shown that the customized computational mechanisms improve the optimization performance; statistical analysis is supportive of the significance of the resulting improvements. The developed mathematical model and optimization algorithm can be considered the basis for future developments in the optimization literature of additive manufacturing.


Introduction
With the recent advances in additive manufacturing, 3D printers are now used in direct manufacturing with a broad prospect as a major mode of future manufacturing [1][2][3].Additive manufacturing is evolving around product and supply chain impacts.It facilitates the production of components with complex geometries that are hard to produce using subtractive methods [4].Besides, 3D printing technology enhances supply chain speed, quality, flexibility, and reduces logistics costs [5][6][7].High investment costs and limited know-how are recognized as the major barriers to the wider adoption of 3D printing technology for mass customization, which calls for further development in the academic literature [8,9].
Additive manufacturing, layer manufacturing, and rapid prototyping are used interchangeably in advanced manufacturing; although they share some similarities (i.e., rapid prototyping refers to building the scale model of a digital drawing, and layer manufacturing refers to the layer-by-layer addition of feedstock to build the physical product), these terms refer to distinct production approaches.Layer manufacturing is a broad term that covers both additive and subtractive manufacturing techniques, while rapid prototyping is a subset of additive manufacturing that focuses on the rapid production of prototypes.Additive manufacturing, on the other hand, encompasses all processes involving layer-by-layer addition of material to produce the final item.
Additive manufacturing is generally classified into material extrusion, material jetting, binder jetting, vat photopolymerization, sheet object lamination, Direct-energy Deposition (DeD), and Powder-bed Fusion (PbF) [10].Notably, DeD and PbF are the best alternatives for producing metal parts and a viable method to replace the traditional methods in many industries, from aerospace, automobile, oil and gas, to electronics, and construction.Irrespective of the type, additive manufacturing is different from subtractive manufacturing in that it makes 3-dimensional objects through the layer-by-layer addition of compound material [11].In traditional, subtractive manufacturing, complementary processes like forging, grinding, drilling, and assembly should follow the carving/cutting process, hence, several machines are required to complete the production process.3D printers can handle high-complexity products more efficiently in a one-step procedure.3D printing factories are often composed of different printers, making it necessary to employ effective production planning and control tools for effective operations management.Scheduling of 3D printing machines is different from that of subtractive manufacturing in that several parts/geometries may be involved in a single production process where a batching process is required to assign heterogeneous parts into the machine's build platform.The technical requirements of additive manufacturing make 3D printing scheduling more complex than that of traditional manufacturing.
The 3D printing machine scheduling literature is still limited [12].For a detailed review of the existing papers, we refer interested readers to the recent reviews by Dall'Agnol et al. [13] and De Antón et al. [14].The most relevant papers extended the Identical Parallel 3D-Printing Machines Scheduling Problem (IP3DMSP) formulation by including general scheduling constraints, like the due date [15] and setup time constraints [16], or by adding additional decision variables, like order acceptance [17], routing [18,19], and assembly-related decisions [20].Preparatory controls, like the layout and orientation of parts as well as the size of the machine's build platform, are process-specific considerations for the adoption of 3D printing machines from a manufacturing system perspective [21].That is, the performance of 3D printing activities depends heavily on the part orientation and the machine's build volume [22]; very limited papers addressed such technical needs in production planning and scheduling literature [23].The process-specific characteristics of additive manufacturing operations call for developments in both mathematical formulation and solution algorithms [24].Effective metaheuristics should be developed for solving additive manufacturing scheduling problems considering parallel machines, which is the practical setting in the third-party 3D printing service providers.
A two-fold contribution is sought to contribute to this emerging production planning topic.(1) IP3DMSP with multiple build platforms of restricted sizes is formulated to address one of the most prevalent technical requirements of additive manufacturing.(2) customized computational mechanisms are introduced to develop the Tailored Iterated Greedy (TIG) algorithm for the effective optimization of the additive manufacturing scheduling problems.
The rest of this article is organized as follows.Section 2 provides a review of the most relevant research works to support the identified gap.Section 3 elaborates on the developed methods, i.e., a new mathematical formulation and an effective metaheuristic for solving IP3DMSPs to contribute to this emerging topic of optimization and additive manufacturing.Section 4 presents a numerical analysis to investigate the effectiveness of the developed algorithm.Finally, concluding remarks and suggestions for future research directions are provided in Section 5.

Literature review
3D printing has entered the growth stage of its development with its use cases reaching beyond prototyping to end-part manufacturing in the production sector and industries like energy, construction, pharmaceutical, aerospace, and aviation.Scheduling methods are essential to facilitate the development of additive manufacturing as a disruptive production technology.Production scheduling in additive manufacturing is more complex than traditional, subtractive manufacturing in that a single production run accommodates several parts/geometries, constituting heterogeneous jobs.Besides, the scheduling problem requires a batch processing mechanism, and the parts assigned to a batch should be within the allowed machine's build platform dimensions.In this situation, the way the jobs are grouped (i.e., packed) has a significant impact on the usage of the machine's build volume and the operational cost.
The first group of additive manufacturing-based production studies is focused on packing issues.Wu et al. [25] and Zhang et al. [26] investigated the best part positioning strategy on the machine's build platform to enhance the productivity of the 3D printer while processing multiple parts at the same time.Freens et al. [27] converted the 3D printer production planning problem into a three-dimensional packing problem to increase productivity and maximize the number of products that the printer can produce at once.Kim et al. [28] developed a mathematical model to select the best product printing alternative and allocate the parts to the 3D printer, minimizing the completion using a Genetic Algorithm.Araújo et al. [29] offered a taxonomy analysis for the issue of irregular build volume packing in additive manufacturing.Leao et al. [30] investigated the same topic from a mathematical model perspective.Romanova et al. [31] adopted an ellipse layout optimization method for improving build volume packing in additive manufacturing.Improving production quality, flexibility, and cycle times requires operations management investigations [32].
Recently, Oh et al. [12] proposed a taxonomy analysis for additive manufacturing-based scheduling problems considering parts, constructs, and 3D printing machines.On this basis, Nesting for Additive Manufacturing (NfAM), Scheduling for Additive Manufacturing (SfAM), and NSfAM as a combination of NfAM and SfAM are recognized.The latter group constitutes an integrated view of batching and operations scheduling, which tackles the scheduling problem while considering the size of the bottom plate in the 3D printing machines.Overall, NSfAM problems can be categorized considering the number of parts, the number of build platforms, and the number of identical/non-identical machines.The present paper investigates the problem of multiple parts, multiple builds, and identical parallel 3D printing machines (M / M / iM), which reflects real-world operations in third-party 3D printing service bureaus (3D print farms).
IP3DMSP was the first time formulated by Li et al. [33] to minimize the average operational cost per unit of product.Later papers contributed to this emerging scheduling extension by developing new mathematical extensions and solution algorithms.Ransikarbum et al. [34] and Rohaninejad et al. [35]  algorithms to solve the IP3DMSP (considering operational cost, load balance among printers, total tardiness, and the number of incomplete parts) and parallel selective laser melting machines (considering makespan and the total tardiness penalty), respectively.Oh et al. [23] developed a novel heuristic for optimizing the decisions on the machine's build platform orientation and two-dimensional packing in IP3DMSP considering cycle time as the optimization criterion.Oh et al. [36] developed a three-step optimization model; (1) determining the direction of the part construction (2) placing it in a two-dimensional manner in a limited 3D printer platform (3) assigning them on multiple machines.They developed a Genetic Algorithm to minimize the printing time by grouping the parts of similar height, enhancing the utilization rate of the base plate.Chergui et al. [15] included due date constraints to minimize the total tardiness in IP3DMSP and developed a heuristic algorithm to solve small-to medium-sized instances.Dvorak et al. [37] considered a similar problem while considering bin packing decisions in the main problem considering flowtime as the optimization criterion.Kim [16] extended the IP3DMSP by including setup time constraints and found new bounds considering small-to medium-sized instances.
More recently, Kucukkoc [38] developed different scheduling formulations for the additive manufacturing scheduling problem considering a single machine, identical parallel machines, and non-identical parallel machine settings.They used commercial software with an exact solution algorithm to solve very small instances considering the maximum completion time.Kapadia et al. [39] explored the effect of scheduling policies on the performance of facilities with multiple 3D printing machines.Li et al. [17] integrated the order acceptance decisions into the Parallel 3D-Printing Machines Scheduling Problem considering non-identical printers.
From the most recent papers, Yılmaz [19] extended the IP3DMSP to work in a supply chain-like setting; they developed a new formulation and a best-fit heuristic-based solution approach to solve the problem for small-to medium-sized instances.Other papers extended the IP3DMSP by including post-production decision variables, like routing [18] and assembly operations [20].Hu et al. [40] developed a mixed integer programming formulation to include practical constraints of two-dimensional packing and unequal part release times for the scheduling of unrelated 3D printing machines.Oh and Cho [41] developed an optimization approach for scheduling the additive manufacturing operations based on flow-shop while including post-processing operations, like trimming, coloring, and assembly processes.These papers did not consider the physical limitations of the build platforms.Kim and Kim [42] addressed the scheduling of non-identical parallel 3D printing machines while accounting for build capacity.To the best of the authors' knowledge, the IP3DMSP with the batching feature, build constraints, and sequence-independent setup times have not been developed; a gap that motivates this paper.

Preliminaries
Additive manufacturing and more particularly 3D printing technology was introduced in the late 1980s for rapid prototyping and got patented by the development of the Stereo Lithography Apparatus a few years later.The first 3D printing machine, however, found its way to the market only in 2007.As one of the prevalent variants, 3D printing machines with metal lasers, the so-called selective laser sintering that is a PbF technology is considered in this paper.3D printing machines with selective laser sintering use the input from digital design documents to first make a two-dimensional model, apply polymer powder, and highpower laser beams to sinter it into a rough solid structure.The stacked layers make complex patterns to facilitate internal flow channels and the foundation for the product.
Scheduling of 3D printing and subtractive machines are different in that heterogeneous jobs require to be grouped into the machines' build platform.The IP3DMSP with multiple build platforms of restricted sizes is hereafter denoted by P m |batch{3DP}|C max , which indicates a production environment with parallel machines, batching feature, and the maximum completion time (makespan) as the optimization criterion.To formally define the problem, let's assume n parts that should be processed in k batches using m parallel 3D printing machines.The build platform of a 3D printer is characterized by a set of physical constraints, i.e. the limited allowed area of the bottom plate, height, and operational volume.This constraint is specific to 3D printing machines and should be included in developing a more realistic mathematical formulation.
Given J b parts (jobs) in batch b, every part is associated with the area, volume, and height parameters, which may restrict it from being assigned to certain build platforms.The parts' shapes are disregarded as their tray areas are solely determined by the rectangular shape of the projected areas.Building orientations of the parts are not factored in as they are intentionally designed with a predetermined build orientation with a focus on quality maximization.3D printing processing time is a function of the printing speed, distance, and layer thickness.Sequenceindependent setup and coating times are also required in addition to the processing time before scheduling the 3D printing operations.It is assumed that there will be no interruptions, i.e., maintenance and downtime when the process begins.Once processing a batch begins, the parts cannot be reassigned and the processing time and completion time of the parts are assumed identical.Finally, the operational parameters are assumed to be deterministic.The objective is to maximize efficiency, which is done by maximizing the number of parts processed at the same time, and to minimize machine operation time, which is reflected by minimizing the maximum completion time.

Mathematical formulation
The following indices, sets, and decision variables are defined to formulate the P m |batch{3DP}|C max problem.
Given the above notations and considering that the 3D printing machine uses laser metal laminate procedure with PbF, the IP3DMSP with multiple build platforms of restricted dimensions is formulated as a Mixed-Integer Linear Programming (MILP) model as follows.
Subject to: The objective function in Eq. ( 1) specifies the minimization of the maximum completion time, makespan, which is subject to the following constraints.Eq. ( 2) ensures that every part is assigned to one and only one batch for processing.Constraint (3) restricts the printing machines from accepting a batch of parts with a total area larger than the allowed dimensions.Given M as a very large positive number, Constraint ( 4) is defined for batch processing.On this basis, a batch can be processed on a certain machine only after the printing process of the preceding batch has been completed.Constraint ( 5) associate the allocated parts with a processing time that includes the printing time of the batch and the setup time.Notably, the processing time is a function of the printing speed and dimensions.According to Constraint ( 6), the job orders on the same printing machine follow the batch order.On this basis, only one batch can be processed at a time and the completion time of batch b = 1, 2, ..., k is larger than the completion time of batch b − 1 plus the processing time of batch b on the same machine.According to Constraint (7), the completion time of the last batch specifies the total completion time.The auxiliary job's completion time is equal to zero in Equations (8).Finally, the integrality constraints in the last part of the formulation specify the type and range of the decision variables.
The developed MILP formulation is relatively compact, and exact commercial solvers can tackle it for small instances.To solve large-sized problems, however, various solution methods, such as constructive heuristics, metaheuristics, and approximation methods, should be considered.Metaheuristics excel in tackling complex optimization problems and offer an attractive trade-off between solution quality as well as computational efficiency.Besides, their ability to handle diverse problem domains and flexibility in exploring large solution spaces makes them a valuable tool in operations research and engineering software.The next section introduces a customized metaheuristic for solving IP3DMSPs.

Solution algorithm
The Iterated Greedy (IG) algorithms [43] have been successfully applied to solve complex scheduling problems in various forms of traditional (i.e., subtractive) manufacturing, from distributed flowshops [44,45], blocking flowshops [46], and no-wait jobshops scheduling [47] to the basic additive manufacturing scheduling problems [48,49].The general pseudocode of an IG algorithm fortified with a local search mechanism is provided in Fig. 1.Considering the different nature of the scheduling problems in additive manufacturing, some of the computational mechanisms should be customized to improve the effectiveness of the metaheuristic in the application area.In addition to the modifications made in the initialization and destruction/construction procedures, three novel local search approaches are employed to improve the exploitation power of the search algorithm.This section provides a detailed explanation of the computational elements of the TIG algorithm.

Solution initialization and encoding
A vector is used to represent solutions in all benchmark algorithms.
In this method, the vector constitutes a batch sequence, α, and the sequence of the parts inside the batches, β, to be represented by π = [α|β].In this representation method, delimiter 0 is used to separate the batches/parts.Given m 3D printing machines and n parts, there will be a total of m − 1 0 s separating the batches in the first part of the vector while the number of batches determines how many delimiters exist in the second part, which is k − 1.That is, a total of m + k − 1 and m + k − elements in the first and second parts of the solution vector, respectively.Taking the illustrative example in Table 1 as an example, there are parts and two 3D printers.The solution in the illustrative example shows that batches 1 and are processed on machine 1, and batch 1 contains parts 16, 3, 1, 18, 19, 7, 5, and 10; batch 2 includes parts 20, 9, and 2. It is worthwhile noting that the contents provided in section β of the vector, i.e. the parts order do not affect the printing time of batch orders, because it is the characteristic of the 3D printing machine and the batch size that determines the processing speed.The completion time of all parts inside a batch is equal to that of the batch.
Given the above encoding mechanism, the following procedure is considered for initializing solutions.The parts are first sorted in a descending order considering their height.Second, the part with the largest height parameter is assigned to the first batch.Given the limitation of the 3D printing machine, i.e. the size of the bottom plate (machine's build volume), assigning a part into a batch should take into account the remaining capacity of the plate; a new part can be added if the unoccupied area of the machine's build platform can accommodate it; otherwise, the new part is assigned to a new batch.This procedure continues until all parts are assigned to the batches.Since the processing time of a batch is impacted by the maximum height of parts in that batch, the rationale behind this part-grouping mechanism is to group parts with similar heights into a batch, aiming to reduce the total processing time of batches and, thereby, reducing the makespan of the initial solution.This initialization method is preferred over random initialization because it minimizes the number of build platforms, reduces the total processing time and the makespan, and ensures the feasibility of the initial solutions.
Third, once the batch processing orders are completed, they are    assigned to the machines considering the dispatching rule of Longest Processing Time (LPT).That is, the batches are sorted considering the printing time from large to small where the batch with the longest printing time is assigned first to one of the identical machines.Finally, the completion time of the machines determines where the next batches are assigned, i.e., the machine with the smallest completion time is considered for the next assignment.

Destruction mechanism
This paper adjusts the destruction method developed by Ruiz et al. [50] to improve it for parallel machines scheduling.For this purpose, the destruction count accepts a number between 1 to the smallest batch processing order in all machines.When d = 1, the batch order on the machine with the longest completion time is considered to extract the batch associated with the longest processing time.In the illustrative example shown in Fig. 2, machine 2 has the longest completion time and the printing time of batch 4 is the largest, hence, batch 4 assigned to machine 2 is extracted.Given a destruction count of d = 2, the batch with the longest processing time from the machine with the longest completion time is selected first.Then, the second batch is selected randomly considering all the machines.Considering a destruction count larger than 2, d > 2, the longest ⌈d/2⌉ batches are extracted from the machine with the largest completion time and d − ⌈d/2⌉/(m − 1) batches are randomly selected from every other machine.Assuming d = 3 in the illustrative example with three machines, ⌈3/2⌉ = 2 batches from the machine with the largest completion time, i.e. m 2 , as well as − ⌈3/2⌉/(3 − 1) = 1 random batch from the remaining machines, i.e. m and m 3 are selected.

Construction mechanism
The construction phase consists of inserting the extracted batches into the partial solutions resulting from the destruction procedure, named internal insertion.For this purpose, the extracted batches are first sorted considering their processing time in a descending order to set an order for the re-insertion procedure.The machines' completion times are then calculated to select the one with the smallest completion time for the first insertion.Considering the optimization goal of minimizing the maximum completion time, the outcome will be the same regardless of where in the list of the selected machine the new batch is inserted; hence, the new batches are always inserted to the end of the list.The construction procedure continues until all the extracted batches are reinserted.An illustrative example is provided in Fig. 3 to clarify this procedure.
With a destruction count equal to d = 3, the extracted batches are first sorted to 4, 14, 6, and 5 considering the processing times of 12, 10, 8, and 2. Given the machines' completion time, machine 2 has the minimum completion time of 14, hence, batch 4 is inserted at the end of the associated list to machine 2 and re-calculate its completion time, which is 14 + 12 = 26.The next batch from the unassigned list, i.e. 14 goes to machine 3 considering that the completion time of 24 is shorter than 29 and 26.Continuing the same procedure, batches 6 and 5 are inserted into machines 2 and 1, respectively.The resulting maximum completion time is 34, which is better than that of the primary solution.

Local search
A new solution resulting from the construction procedure, π new , will be perturbed using a local search mechanism to help escape local optimality and improve the exploitation power of the optimization algorithm.Three local search procedures are considered; internal insertion (LS 1 ), internal exchange (LS 2 ), and external exchange (LS 3 ).The computational procedure of LS 1 is shown in Fig. 4(a) where a part is randomly selected from all batches before the last batch and is inserted into the last batch.This is because when the parts are batched, the space left in the last batch is often the most, hence, it will be less likely to get infeasible solutions by inserting a new part at the end of the last batch with an opportunity to reduce the total completion time.In this approach, if the available build volume of the last batch is not enough to accommodate the new part, another random part will be selected for insertion.In LS 2 , two random parts from batches assigned to the same machine are selected for exchange while observing the machine's build volume limitation, as shown in Fig. 4(b).Finally, LS 3 randomly selects two parts assigned to different machines and exchanges their positions, as presented in Fig. 4(c).The pseudocode of the local search mechanism is presented in Fig. 5.

Acceptance mechanism
As a rule of thumb, the current best solution will be replaced with a new solution of better quality.Such a strict measure may result in local optimality traps.Besides, the algorithm should sometimes extend its search scope for better exploration power.The TIG algorithm uses the acceptance mechanism suggested by Hatami et al. [45], which proved to be highly competitive.In their approach, the Relative Percentage Difference (RPD; to be calculated using Eq. ( 10)) is used as a gage to generate a threshold for a random trial to decide whether or not to accept a new solution that is worse in terms of fitness value.Smaller RPD values are indicative of better alternative solutions, π′, compared to the current best solution, π.Given the RPD value, if random ≤ e − RPD , the new solution is accepted even if it is less performing.

Numerical analysis
In this section, TIG is compared with the IG, and three alternative variants, to evaluate the performance of the developed algorithm and draw conclusions on the effectiveness of the developed computational modules.For this purpose, four local search mechanisms are considered to investigate the impact of the customized local search mechanisms on the algorithm's performance.That is, IG 1 , IG 2 , and IG 3 algorithms differ in the applied local search mechanism, where LS 1 , LS 2 , or LS 3 is used, respectively, IG 0 does not apply a local search mechanism, while the TIG algorithm applies all; the other computational mechanisms of these algorithms are similar.All the algorithms were coded and compiled using Visual 2017 C++ with a personal computer with the following specs: Intel® Core™ i7-6700 CPU 3.40 GHz, 8GB RAM, and Windows 10/ 64bit operating system.
This study follows Arroyo and Leung [51] to set the destruction count parameter before conducting the final experiments.In their approach, d in the destruction stage is generated randomly from a Uniform Distribution Function with U [1, b], where b represents the minimal number of dispatched batch numbers considering all 3D printing machines in the solution.Besides, the termination condition used for all the benchmark algorithms is the maximum CPU time, i.e. 0.2*n as suggested by Arroyo and Leung [51].Finally, the experiments were replicated 10 times for each test instance.The configuration of the testbed is summarized in Table 2.The remainder of this section continues with experimental results analysis and the statistical test of significance.
This paper considered the PbF machines with a production space of 500 mm × 500 mm × 500 mm.In this approach, a laser or electron beam is used to fuse a layer of powder in the powder bed followed by applying the next layers.In this setting, the parts should be batched considering a total area of 2500 mm 2 .If a new part cannot fit in the machine's build platform, it should be assigned to a new batch/machine.Making thinner layers increases process accuracy and part quality but results in a longer processing time.The thickness of each layer is considered equal to 0.05 mm with the scanning speed and distance being set at 10,000 mm/s and 0.1 mm, respectively.
A total of 20 small-size instances are first considered to compare the performance of the developed algorithm with that of an exact solver from the LINGO 9.0 software, using the default parameter settings.After running the exact approach in 10 attempts, we observed that 95 percent of the experiments resulted in a run time error.Hence, a CPU time of 50 s for the TIG and a termination time of 120 min for the LINGO solver were used to solve the instances; results are reported in Table 3.It is worthwhile noting that the results under MILP are near-optimum obtained within the specified computation time.Except for instances 14 and 16, TIG yields a better solution when solving the small-size instances.
In the next step, the results are analyzed considering large-scale instances, the RPD values are calculated using Eq. ( 10), where π and π′ represent the results obtained by the best and alternative optimization algorithms, respectively.In the RPD measure reported in Table 4, the best solution for each instance obtains a zero value, and the solutions  associated with a smaller RPD value are preferred in the benchmark.IG3 yielded the best solution in nine out of 80 large-size instances.IG1 and IG2 obtained the best solution in one and two instances, respectively.This measure amounts to 69 for the TIG algorithm.The IG algorithm equipped by LS 1 showed about 90 percent improvement considering small-size and 67.5 percent for large-size test instances.LS 2 appeared to be more effective for solving large-scale instances when compared to LS 1 with about 90 percent improvement in solving the large-scale instances, while the observed improvement for small instances amounted to only 30 percent.Integrating LS 3 into the IG algorithm shows the highest improvement with almost 100 percent in both small-and large-scale test instances.
The Average Relative Performance Deviation (ARPD, to be calculated using Eq. ( 11)) values are recorded in Table 5 to analyze the overall performance of the benchmark algorithms considering different numbers of parts.The TIG algorithm performed meaningfully better with an ARPD of 0.00875, followed by IG 3 with a performance of 0.39275.The best-found solutions and standard deviation over the replications are provided in the Appendix for interested readers.Overall, 69 out of 80 best solutions are obtained by the TIG algorithm and the rest are obtained by the other local search-based IG variants with marginally smaller makespan.It is worthwhile mentioning that IG 2 recorded the highest stability over the replications.
As a final step to the numerical analysis, a statistical test of significance is conducted to check whether including a local search mechanism results in a significant change in the solution quality and find the most important source of improvement.Statistical analysis provided in Table 6 is supportive of including the local search mechanism in the metaheuristic algorithm.With 95 percent confidence, we can claim that the TIG algorithm outperforms the IG and its local search-based variants, regardless of the type.This is true considering all instance sizes.

Conclusions
As a disruptive production technology, 3D printing improves the cost, time, quality, and flexibility of the supply chains and facilitates the effective implementation of the make-to-order supply chain strategy.3D printing has found its way to direct manufacturing and has implications for mass customization.Scheduling problems should be extended for optimizing additive manufacturing operations to facilitate the development of this revolutionary technology.Research on additive manufacturing-based production planning is still limited and its literature is in the early development stages.
A threefold contribution represents the significance of this research in advancing the state-of-the-art in additive manufacturing-based production scheduling: (1) an original mathematical problem, IP3DMSP is proposed with the incorporation of multiple build platforms, each having restricted sizes.By including new features of 3D printing, the study offers a more practical model for scheduling additive manufacturing processes.The problem is formulated using MILP, which provides a robust and versatile mathematical framework for addressing the complexities of production scheduling.(2) the renowned IG algorithm is extended to more effectively solve this highly intractable scheduling extension.(3) novel local search mechanisms are specifically designed to enhance the exploitation power of the search algorithm for additive manufacturing-based production scheduling.The developed computational mechanisms contribute to improved optimization performance, allowing for more refined and precise scheduling solutions.Extensive experiments and statistical analysis demonstrated that TIG achieves significantly better solution quality compared to both the original IG algorithm and its local search-based variants.Overall, this study established a standard for evaluating the performance of future scheduling algorithms in the context of additive manufacturing.TIG metaheuristic is expected to serve as a benchmark for subsequent research works in the field.
The following suggestions for future research may be of interest to the readers to contribute to this emerging production research topic.First, the developed mathematical formulation can be extended to account for case-specific production needs and constraints; in particular, IP3DMSP should be extended to work across distributed production sites for applications in mass customization.Second, orders from different agents and interfering jobs could be considered to extend the problem.The third suggestion comes from considering other printing technologies and the scheduling of heterogeneous 3D printing machines.Fourth, learning-based metaheuristics should be developed to improve the bestfound solutions obtained by TIG.In particular, the batch process can be improved taking into account the less-tangible aspects of the products that are hard to be captured using hard approaches.Finally, additive manufacturing-based production scheduling is a complex research topic with uncertainties that have not been addressed in the existing literature.Future research may incorporate the shop floor uncertainties in additive manufacturing-based production planning and control.

Declaration of Competing Interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
developed multi-objective optimization

Table 1
Specifications of the illustrative example.

Table 2
Configuration of the test instances.

Table 3
Results for the small-size instances (best in bold).

Table 4
Relative percent deviation over the large-scale instances (best in bold).

Table 5
Average relative performance deviation considering the problem size (best in bold).

Table 6
Statistical test of significance with 95 percent confidence.

Table A1
Results for the large-size instances 1-40 (best in bold).

Table A2
Results for the large-size instances 41-80 (best in bold).