A dynamic order acceptance and scheduling approach for additive manufacturing on-demand production

Additive manufacturing (AM), also known as 3D printing, has been called a disruptive technology as it enables the direct production of physical objects from digital designs and allows private and industrial users to design and produce their own goods enhancing the idea of the rise of the “prosumer”. It has been predicted that, by 2030, a significant number of small and medium enterprises will share industry-specific AM production resources to achieve higher machine utilization. The decision-making on the order acceptance and scheduling (OAS) in AM production, particularly with powder bed fusion (PBF) systems, will play a crucial role in dealing with on-demand production orders. This paper introduces the dynamic OAS problem in on-demand production with PBF systems and aims to provide an approach for manufacturers to make decisions simultaneously on the acceptance and scheduling of dynamic incoming orders to maximize the average profit-per-unit-time during the whole makespan. This problem is strongly NP hard and extremely complicated where multiple interactional subproblems, including bin packing, batch processing, dynamic scheduling, and decision-making, need to be taken into account simultaneously. Therefore, a strategy-based metaheuristic decision-making approach is proposed to solve the problem and the performance of different strategy sets is investigated through a comprehensive experimental study. The experimental results indicated that it is practicable to obtain promising profitability with the proposed metaheuristic approach by applying a properly designed decision-making strategy.


Introduction
Additive manufacturing (AM), also known as 3D printing, has been called a disruptive technology as it enables the direct production of physical objects from digital designs and, thus, allows industrial as well as private users to design and produce their own products enhancing the idea of the rise of the "prosumer" [1,2]. AM technology usually builds a structure into its designed shape using a "layer-by-layer" approach, which makes it versatile, flexible, highly customizable and suitable for most sectors of industrial production [3]. This characteristic of AM provides new opportunities for freedom of design and enables on-demand production of customized products without additional manufacturing costs due to the geometric complexity. The importance of AM technology has been recognized in various businesses [1,2,4,5] and has been considered as one of the key supporting technologies for smart design and manufacturing in Industry 4.0 [6]. The advantages of AM technology over traditional manufacturing have been identified and discussed by Attaran [7]. It also has been predicted that, by 2030, a significant number of small and medium enterprises will share industry-specific AM production resources to achieve higher machine utilization and, across all industries, local production near customers enabled by AM will increase significantly [1]. By then, the problems regarding production planning and scheduling in on-demand production with industry-specific AM resources will be on the table. Typically, the decision-making on the order acceptance and scheduling (OAS) will play a crucial role when service providers dealing with on-demand production orders from small and medium enterprise are distributed around the world.
Two of the most representative AM processes, Selective Laser Melting (SLM) and Electron Beam Melting (EBM), classified as the Powder Bed Fusion (PBF) process, have received significant attention in the research and have been widely adopted in various industries due to their advantages in producing fine-resolution and high-quality near-full-density parts [3,5]. PBF is an AM process, in which thermal energy source, either a laser or electron beam, is used to melt and fuse selective regions of a powder bed (ASTM:F2790-12a). A PBF system is a kind of batch processing machine (BPM) in which a batch of identical or non-identical parts can be processed simultaneously according to its capacity. A batch of parts can be grouped to form an AM job when they are able to fit the AM machine's production capacity, which is generally limited by the cuboid space of the machine's building chamber. The production of a batch of parts is usually called an AM job. The parts assigned to an AM job are processed simultaneously, and, once the job is started, no part can be added into or taken out of the machine until the whole AM job is completed.
The operations of an AM job usually comprise the following three steps: preparation, production, and collection. The general process of production with a PBF system is illustrated in Fig. 1, though the energy source and materials used in a particular PBF process might be different. First, a series of operations are needed to set up an AM job, including the processing of digital model data, preparation of powder materials, filling up the protective atmosphere, and warming up the machine if necessary. For metal PBF systems like SLM and EBM, the parts usually need to be built onto the metallic building platform to avoid thermal-induced deformation and should be properly oriented to reduce support structures [8,9]. The metal parts are usually nested in two dimensions, although it is possible in three dimensions, using their 2D boundary box within the area of the building platform without overlap for the purpose of safety. Afterwards, the AM job can be started. A thin layer of powder materials with a typical thickness of 20 to 60 μm will be generated upon a base platform or the already-produced fraction of objects. Then, the cross-sections of sliced CAD files will be subsequently scanned using a high-power laser or electron beam to densify the powder materials, and the platform goes down a pitch equal to the layer thickness afterwards. These two procedures, namely powder layering and powder melting, will alternate until all parts in the job are produced [10]. Finally, the parts, together with the building platform, can be taken out of the machine when all the parts have been produced, and the machine can be cleaned for the preparation of the next AM job. Before the parts are delivered, they usually need to be heattreated together with the building platform to release the thermal stress, and, then, the parts can be cut off from the platform for post-processing, such as support structures' removal and surface polishing if necessary.
The characteristics of production with PBF systems, in particular, the uncertainty of the production time of an AM job, make it challenging when dealing with the OAS problem. According to the classification of batch processing problems (BPP) by Matin et al. [11], the production with PBF systems is similar to a serial batch scheduling problem where the processing time of each batch is a function of jobs' attributes. Just to be clear, the terms "AM job" and "part" in this paper correspond to the terms "batch" and "job" used in BPP, respectively. The processing time of an AM job can be seen as the composition of two sections-the time spent on job preparation and part collection, which is relatively fixed, and the time spent on the production of parts assigned to the job, which is a Fig. 1 Illustration of the general production process with a powder bed fusion system function of the parts' attributes as well as the machine's specifications. To produce the parts assigned to an AM job, the processes of powder layering and powder melting are repeated alternately until all the layers have been processed. The time to melt powder materials to form a part depends on the building speed of the machine which is usually measured by the volume rate. However, the time required for powder layering depends on the number of layers and the settings of the machine. It must be pointed out that the accumulated time spent on generating powder layers will be significant when the thickness of each layer is quite small, even longer than the time spent on densifying the powder materials in some cases. For example, given that the layer thickness of 20 μm and 15 s for generating each powder layer, the machine will spend more than 62 h on generating powder layers to produce a part 300 mm high. This case could be worse for a particular PBF process, like EBM, where each layer might need additional time for powder materials' pre-heating. Therefore, the production time of an AM job could be extended significantly by adding a new part, not only because it increases the time for powder melting but also because it might increase the time required for powder layering. The nature of production with PBF systems makes the production time of an AM job inconclusive before all the parts assigned to this job have been confirmed. Also, as the time for powder layering depends on the number of layers presented by the highest part included in an AM job and is shared by all the parts, the production time of an individual part is inconclusive before the confirmation of the job. Meanwhile, the production cost of an individual part is variational when it is assigned to different AM jobs due to the variety of production time. The difference of production cost per volume of material could be more than 40% when the part order was scheduled into different jobs [10]. This paper considers a dynamic OAS problem in an ondemand production environment where the service provider with multiple AM machines is making decisions on the acceptance of orders placed by customers and scheduling the accepted orders simultaneously, to maximize the average profitper-unit-time obtained during the whole makespan. AM technologies, as a rapidly developing DDM technology, have become an important service form which can be provided across the world through an online platform, while the parts are produced locally near the customers [1,3,12,13]. Generally, within an online service platform, the service providers with one or more PBF systems usually provide a unit service price based on the volume of materials and a due date which is generally a fixed time after the acceptance of the order. Customers around the world usually upload their digital models and make enquiries about the availability of the services if they are satisfied with the price and due date. The orders will be accepted automatically if the order can be delivered before the due date promised by the service providers. Otherwise, the customers may either further negotiate with the service providers for a new offer or turn to another service provider. In this paper, we consider the decision-making problem faced by an individual service provider on how to select the orders and schedule them within promised due date to maximize the average profit-per-unit-time during the whole makespan. For generalization, the orders are placed by customer randomly in a chronological order and to wait for the acceptance from the service provider. An order, termed part order in this paper, only contains one digital model data which has been properly oriented and cannot be separated. The service provider tries to group arrived part orders instantly into a batch to form an AM job on a specific AM machine by considering the constraints of the machine's capacity as well as the promised latest due date of each part order. A part order will be accepted only if it can be processed within one of the machines' jobs and the complete time of the job is not later than the promised latest due date. Otherwise, the part order will be rejected and handed over to another department for further negotiation with customers. All the accepted part orders will be produced according to the scheduled start time of the AM job they were assigned to. The completion time as well as the start time of a production job can only be determined when all part orders included in this job are confirmed. Therefore, any part order added into an unconfirmed AM job will occupy the capacity of the machine and affect the completion time of the job, which may render the machine unable to fit further part orders due to either the constraints of their due dates or the machine's capacity.
The dynamic OAS problem in on-demand production with PBF systems is a joint decision on order acceptance and scheduling of batch processing machines. It is vitally important to appropriately determine which part orders should be accepted and how they should be scheduled simultaneously so as to maximize the average profit-per-unit-time corresponding to the whole makespan. Although the topics of OAS and BPP have been widely studied [11,14,15], to the best of our knowledge, no research has been conducted to address the dynamic OAS problem in production with PBF systems. In this paper, the dynamic OAS problem is defined and mathematically modelled with constraints of orders' arrival time and due date for the first time. Since both OAS and BPP are strong NP hard problems, in regard to the characteristics of production with PBF systems, a strategy-based heuristic decisionmaking approach is proposed for the generation of feasible schedule solutions. The proposed approach can be used for the investigation of decision-making strategies to obtain promising profitability with a given price and due date. Alternatively, given an expected profitability and decisionmaking strategy, the approach can be used to generate competitive offers through reducing service price and/or narrowing due date.
The paper is organized as follows. The related works are reviewed in Section 2, and the problem of dynamic OAS in on-demand production with PBF systems is defined and modelled mathematically in Section 3. In Section 4, the heuristic procedures are proposed for the generation of feasible AM jobs on a single machine as well as multiple machines to form a feasible schedule result. Further, different decision strategies are proposed based on the analysis of the selective behaviours, which may affect the schedule results, during the generation of a feasible schedule. A comprehensive experimental study is designed and conducted in Section 5, followed by conclusions and future research directions in Section 6.

Related works
As an emerging disruptive manufacturing technology, the application of AM technologies has increased substantially in different industries during the past years, and considerable research, from scientific and technological challenges [3,5,7] to business model innovation and industry application issues [2,4,[16][17][18], has been carried out. A prediction of the future of AM, based on an extensive Delphi survey by Jiang et al. [1], indicated that, by 2030, a significant number of small and medium enterprises will share industry-specific additive manufacturing production resources to achieve higher machine utilization, learning effects, and quality assessments. Also, it was predicted that, by 2030, the distribution of final products will move significantly (> 25%) to selling digital files for direct manufacturing instead of selling the physical product due to the increase of local production near customers enabled by additive manufacturing. The research and development of the key technology of 3D printing cloud manufacturing platforms was summarized by Guo and Qiu [16], and the development of the combination of 3D printing and cloud manufacturing was proposed. In recent years, even more research is focusing on the practical problems related to production with AM technologies [10,[19][20][21][22][23].
The problem of OAS in on-demand production with PBF systems involves the decision-making on order acceptance and scheduling of batch processing machines, both of which have been widely studied in different production environments [14,[24][25][26]. The OAS problems usually occur, particularly in highly loaded make-to-order production systems, when the production capacity of a company is overloaded [14,27]. A detailed taxonomy of OAS problems and a complete review of literature before 2011 were presented by Slotnick [14]. Recently, a genetic algorithm based on realtime OAS approach for permutation flow shop problems to maximize the revenue of a flow shop production business was proposed by Rahman et al. [28]. The demand uncertainty in production planning problems integrated with order acceptance was introduced by Aouam et al. [29], and a relax and fix (RF) heuristic for the construction of feasible solutions which can then be improved by a fix and optimist (FO) heuristic was proposed. Over the past decades, the BPPs which can be observed in many industries and service sectors have been widely studied in literature. Based on the batch processing time and the batch capacity restriction, the classification of BPP problems was proposed by Matin et al. [11], and a mixed-integer linear programming model as well as metaheuristic algorithms based on particle swarm optimization were proposed for the flow shop BPP problem with different batch compositions to minimize makespan. The scheduling problems for single/multiple parallel and serial batch processing machines have also been studied, and various approaches have been developed [24,26,[30][31][32][33].
Based on their previous studies of dynamic scheduling problem [34,35], a case study focusing on online and dynamic scheduling of parallel heat treatment furnaces at a real manufacturing company was recently presented by Baykasoğlu and Ozsoydan [36] where a multi-start and constructive search algorithm was proposed to minimize the maximum completion time of the schedule. Concerning the latest industrial revolution (Industry 4.0), a novel general framework of assembly system was introduced by Bortolini et al. [37] and an innovative multi-objective optimization model as well as the key enabling technologies were introduced for the assembly line balancing problem [38,39]. Although various approaches have been developed for various OAS problems and BPP problems, it is hard to adopt these approaches directly in on-demand production with PBF systems due to the unique nature of AM production.
The topic of AM has attracted considerable attention over the past decades [3,5]. However, research on production planning and scheduling in AM, particularly, the OAS problems, is just catching up. Order acceptance and scheduling in production with PBF systems is an extremely complicated problem where multiple topics, including bin packing, batch processing, production cost/profit, makespan, and decision-making on order acceptance/rejection, need to be taken into account simultaneously. However, most of the research emerging in this field only addressed parts of the problem as shown in Table 1. The production planning problem of multiple metal AM machines was introduced and modelled mathematically for the first time by Li et al. [10]. The p r ob l e m w a s so l v ed w i th C P L E X a s w el l a s metaheuristic procedures to minimize the average production cost per unit volume of material; however, the due dates and the shape of part orders have not been considered. In our recent research [22], the production scheduling problem in a multiple AM machine environment by considering the release and due dates of part orders was studied and a genetic algorithm approach was developed to minimize the maximum lateness. Inspired by our research, several studies have been reported recently. The production planning and scheduling of identical parallel AM machines to fulfil the different orders by due dates and to minimize the total tardiness was studied by Akram et al. [40], where the mathematical formulation of the problem and a heuristic procedure were proposed. The problem was formulated as two subproblems-part/job assignment through part clustering based on due dates and job scheduling based on tardiness of the jobs. Dvorak et al. [41] investigated the problem of scheduling parts on multiple AM machines while minimizing time spent and satisfying deadlines, bringing together bin packing, nesting, job shop scheduling and constraint satisfaction. The problem was encapsulated within constraints and graph theory to represent relationships between individual parts, and search algorithms were introduced to find solution with minimum makespan. A modified genetic algorithm for time and cost optimization of an AM single-machine scheduling problem was proposed by Fera et al. [42] to balance the optimization of earliness/tardiness and production costs. Oh et al. [43] studied the production planning and scheduling problem in production with multiple AM machines where a heuristic algorithm was proposed for decision-making on build orientation, 2D packing and scheduling on multiple AM machines based on the longest cycle time. A decision aiding model, based on a multi-objective optimization for a batch of parts and multiple fused deposition modelling (FDM) printers, was proposed by Ransikarbum et al. [19] considering the operating cost, load balance among printers, total tardiness and total number of unprinted parts as objectives. The requirement of print time for FDM is based on the sum of all part time which is different with that of the PBF process. A cloud-based platform f o r a u t o m a t e d o r d e r p r o c e s s i n g i n A d d i t i v e Manufacturing where the order acceptance is determined according to the checking of manufacturing restriction and design guidelines was proposed by Rudolph and Emmelmann [21], while the scheduling problem was not considered. The problem of multi-task scheduling of distributed 3D printing services in cloud manufacturing was discussed by Zhou et al. [13], and a 3D printing service scheduling (3DPSS) method to reduce the delivery time of tasks from candidate services obtained through service matching was proposed. The authors treated the 3D printer as a service which can only process one job at a time, and, thus, the batching problem was not considered. The OAS problem faced by AM service providers in a competitive environment was introduced and a strategy-based decision-making model was proposed in our previous work [44], while the decision-making strategies as well as their performance need to be further investigated.

Problem definition and assumptions
The dynamic OAS problem addressed in this research can be formally described as follows: a set of part orders N = {1, 2, 3, … , n} is randomly placed by customers in chronological order, and the service provider with a set of AM machines M = {1, 2, 3, … , m} makes decisions on which part order should be accepted and how to schedule the accepted part orders simultaneously to maximize the average profit-per-unit-time obtained during the whole makespan. The part orders have a specific arrival time, material volumes, and boundary dimensions (height, length, and width). For each part order, a promised due date is given plus a fixed duration to its arrival time. The AM machines have specifications, including operation cost, production efficiency, building capacity (represented as a cuboid space with maximum height, length, and width), and service price per unit material volume. Each AM machine can handle one AM job at a time, and a batch of non-identical parts can be processed simultaneously in this job according to the machine's capacity.
The part order will be accepted only when it can be processed within one of the machines' jobs, and the completion time of the job is not later than its promised due date. Otherwise, the part order will be rejected if no machine can process it before its promised due date. All the rejected part orders will leave the system and be handled by the related department for further negotiation with customers. The scheduled AM jobs will be started for processing according to their planned start time. The total net profit equals the total revenue for producing all the accepted part orders, minus the total production cost of all scheduled jobs, whereas the makespan is the difference between the latest completion time and the earliest start time of all scheduled jobs.
To further specify the problem that will be addressed in this paper, the following assumptions are made: & The AM machines considered in this paper are PBF systems with SLM/EBM processes used for metal part production. All the AM machines belong to one service provider, who makes decisions based on the applied decisionmaking strategy. & The orders from customers have been separated into individual part orders in which the parts have been properly oriented according to the requirements of SLM/EBM process and all the parts together with necessary support structures are regarded as one digital model. The bottom side of the digital model needs to be put onto the building platform. & The part orders received by the service providers are from those customers satisfied with the service price and would like to place the orders if the parts can be delivered by the promised due date. Otherwise, the customers will either further negotiate with the service provider for a new offer or turn to another service provider. & A batch of parts assigned to a machine's job is feasible only when the parts can be placed in the machine without overlapping with each other. Currently, the building platform of major metal PBF systems is rectangular and, for the purpose of safety, the overlapping of parts within one AM job should be avoided. One of the most common methods to detect overlapping is using the boundary box of a digital model. Therefore, the projection shape of a digital model's boundary box is considered as a rectangle. & All the parts assigned to a machine's production job will be processed simultaneously. That is, once a production job has started, no parts can be added to the job and the processed parts can only be removed when the job is completed. In this paper, all the parts are made from the same material, which can be processed by the AM machines configured with same/different building efficiencies and operation costs. & All the AM machines are available at the beginning and the AM machine can only handle one job at a time. That is, the jobs scheduled to a machine will be processed one by one in sequence. The idle time cost of the machine is not considered in this paper as it only represents a small proportion of the total production costs. However, it will be considered in future research for practical applications.

Model notations and decision variables
To formulate the mathematical model of the real-time OAS problem in on-demand production with PBF systems, the following notations are used: i The index used for the part orders, i ∈ N. k The index used for the AM machines, k ∈ M. j The index used for the jobs j = 1, 2, … , n and j ∈ N h i The height of part order i. w i The boundary width of part order i. l i The boundary length of part order i. v i The material volume of part order i. r i The arrival time of part order i. d i The promised due date of part order i.

H k
The maximum height of building space on machine k. W k The maximum width of building space on machine k. L k The maximum length of building space on machine k. VT k Time for forming per unit volume of material for machine k. HT k Time for coating per unit height of material for machine k. TC k The operation cost per unit time for machine k. HC k The cost of human work per unit time for machine k.

ST k
The time for setting up a new job on machine k. MC k The cost of per unit volume of material used by machine k. PV k The service price of per unit volume of material for machine k.
The decision variables are defined as follows: X i, k, j 1, if part order i is accepted and assigned to the jth job on machine k; 0, otherwise. ∀i ∈ N, k ∈ M, j ∈ N. Y k, j 1, if the jth job on machine k is assigned with any parts; 0, otherwise. ∀k ∈ M, j ∈ N.
JPP k, j The profit obtained from the jth job on machine k. JPT k, j The production time of the jth job on machine k. JPC k, j The production cost of the jth job on machine k. JST k, j The start time of the jth job on machine k. JCT k, j The complete time of the jth job on machine k. APT The average net profit-per-unit-time of the schedule.

Mathematics model
The objective of the dynamic OAS problem in ondemand production with PBF systems is to maximize the total net profit within the makespan for the whole system, including all the AM jobs scheduled on all machines, which is termed "average profit-per-unit-time" in this paper, and represented as APT. The makespan of the whole system is defined as the difference between the latest completion time and the earliest start time of all scheduled AM jobs. Before being given the formulation of the objective function, it is necessary to define the components, including the production cost, production time, and profit of an AM job, which are related to the objective function. To keep the complexity of the model at a minimum and focus on the main idea underlying the research, the models of production cost as well as the production time of an AM job are simplified based on the work by Li et al. [10]. The production cost of an AM job generally comprises the following three sections: (1) the cost of powder material melting which depends on the total material volume of all the parts assigned to this job; (2) the cost of powder layering which depends on the maximum height of the parts within the same job; and (3) the cost of setting up a new AM job. The production cost of the jth AM job scheduled to machine k, represented by JPC k,j , can be formulated as follows: Accordingly, the production time of the jth AM job scheduled to machine k, represented by JPT k,j , comprises the time for powder melting, the time for powder layering, and the time for setting up the job which can be formulated as follows: Given the service price of per unit volume of material PV k for machine k, the net profit obtained from the jth AM job scheduled to machine k, represented as JPP k,j , can be formulated as follows: Therefore, the objective function of the dynamic OAS problem can be formulated as follows:

Constraints
In the environment of on-demand production with PBF systems, several constraints have to be considered in the decisionmaking on which part order should be accepted and how to schedule the accepted part orders. First, the capacity constraints of the AM machine have to be considered when attempting to assign a part order to a job on this machine. A part order can be assigned to a job on the machine only when it can be placed on the machine's building platform without overlapping with other parts already assigned to this job and the height of the part must be smaller than the maximum height supported by the machine. In this paper, both the machine's building platform and the projection of parts are represented by rectangles. A Python function implemented by Jacobs [45] is used to measure whether a part could fit in a machine's building platform by considering the parts already included in the job. The capacity constraints of machine k are represented as follows: The function Fit k,j (w i , l i ) is used to calculate whether a basket of rectangles (defined with the boundary width and length of each part) could fit in a larger rectangle (defined with the width W k and length L k of the machine's building platform). For each machine, the function always maintains a basket to store the rectangles of all the parts which have been assigned to the current AM job. When a new rectangle with width w i and length l i will be added into the basket and the function Fit k,j (w i , l i ) returns either True, if the basket of rectangles could fit in the rectangle with width W k and length L k , or False if it could not.
Second, a part order can only either be assigned to an exact AM job on a particular AM machine or be rejected. As the extreme case is that all the part orders are assigned to one machine and each AM job only processes one part, the number of all scheduled jobs should be no more than the number of all the part orders. Also, an AM machine can only handle one AM job at a time; thus, the AM jobs should be scheduled to the machine in sequence. That is, the second AM job cannot be scheduled if the first job on the machine has not been scheduled yet. Meanwhile, a scheduled AM job can be started only when the previous job has been completed on this machine. Therefore, the following constraints will be applied: Last but not least, the constraints of the arrival time and due date of part orders have been considered in the dynamic OAS problem. A part order only can be considered for scheduling if the sum of its arrival and the completion time of the AM job to process this part are no later than the promised due date for this part order. In other words, the start time of an AM job should be no earlier than any part order's arrival time assigned to this job, and the completion time of the job should be no later than any part order's promised due date. The time constraints of the jth AM job scheduled to machine k can be represented as follows: where N k, j is the set of parts assigned to the jth job on machine k.

Characteristics of an AM job
An AM production job can process a batch of non-identical parts simultaneously, and the production time of the job is a function of the properties of all parts assigned to this job as well as the specifications of the AM machine to conduct this job. Also, the AM job must be completed no later than any promised due date of the part orders assigned to this job and can be started no earlier than the completion time of the previous job scheduled to this machine and the arrival time of any part orders assigned to this job. Therefore, not only the material volume and height of the part but also the arrival time and promised due date of the part will cause a change in production time of the job as well as a change in the job's available time slot. The available time slot for an AM job which is in scheduling on a machine can be illustrated in Fig. 2.
At the time moment t, the available time slot TS k,j for the jth job on machine k can be formulated as follows: An AM job is feasible only when the start time and the completion time of the job are located within its available time slot. For part order i arriving at or before the time moment t, it can be assigned to the jth job on machine k as long as the machine still has available capacity to accommodate it and the adding of the part will not cause the production time of the job to be longer than its available time slot. However, an AM job should be confirmed to be scheduled on the machine and move forward to schedule the next job when one of the following limits is reached: & T i m e L i m i t s w h i c h c a n b e m e a s u r e d b y min & Capacity Limits means no part orders can be fitted in the machine any more.
Once an AM job has been confirmed, the start time of the job should be adjusted to its earliest available start time, that is JST k,j = max {t, JCT k,j − 1 }, and accordingly the completion time of the job JCT k,j equals JST k,j + JPT k,j .

Heuristic procedures for dynamic OAS
The problem of dynamic OAS in on-demand production with PBF systems is a joint decision on order acceptance and BPM scheduling, both of which have been proved as strong NP hard problems [14]. Additionally, the generation of a feasible schedule solution, in particular, batching part orders to form an AM job, is an extremely complicated procedure when considering the constraints of the machine's capacity as well as the arrival time and due date of each part order. Therefore, heuristic procedures are proposed in this paper to generate feasible schedule solutions for solving the dynamic OAS problem efficiently.
An illustration of a dynamic OAS processing flow diagram in on-demand production with PBF systems is shown in Fig. 3. The part orders from customers arrive to the system in a chronological order and wait for feedback from the service provider. The order will be confirmed for production, and if it can be delivered by the promised due date; otherwise, the customer who released this order will either further negotiate with the service provider for a new offer or turn to another service provider. The AM machines generate feasible AM jobs by selecting part orders from the order pool according to their capacities and local decision strategies and then propose the feasible AM jobs to the service provider. Meanwhile, the service provider monitors the feasible AM job list in real time and makes decisions on which job is to be confirmed according to a global decision strategy. Once an AM job was confirmed for schedule, the part orders assigned to this job will be removed from the order pool. All the AM machines in the system will be informed at the same time so that they can update their feasible AM jobs in real time. However, a part order will leave the system if no AM machine can produce it within its promised due date. The confirmed part orders will be produced in the scheduled AM jobs.
Each AM machine in the system will monitor the order pool and try to generate feasible AM jobs in real time. The heuristic procedure to generate feasible AM job on a single AM machine is described as Algorithm 1. At any given time, the AM machine maintains an in-scheduling AM job which is still available to consider a new part. A part is feasible for the AM job if it satisfies the capacity constraints and the production time of the AM job, and after adding this part, is still no longer than its available time slot. The AM machine will get all the feasible parts from the order pool and select one based on its local decision strategy and update the feasible part list afterwards to select the next part. This procedure will be repeated until the in-scheduling AM job has reached its time or capacity limits, and, then, the AM job will be proposed to the service provider for confirmation. Once the current inscheduling AM job is confirmed, it will be added to the machine's confirmed job list and the in-scheduling AM job will be renewed by emptying the part list in the job and updating the available time slot of the job. For a new in-scheduling AM job, the available time slot starts from the current time moment or the completion time of the last confirmed job on this machine whichever is later, and the ending of the time slot is far enough from current time moment.
Within a multiple AM machine environment, each AM machine will propose confirmable feasible AM jobs to the service provider based on their local decision strategies. Meanwhile, the service provider will make the decision on which feasible AM job should be confirmed, based on its global decision strategy, and, as a result, the part orders assigned to this AM job will be accepted. The heuristic Fig. 3 Decision-making strategy based on dynamic OAS procedures procedure to confirm the feasible AM jobs proposed by all the AM machines is described in Algorithm 2. Once a feasible AM job is confirmed, all the parts assigned to this job will be removed from the order pool. At the same time, the decision will be communicated to all the AM machines in the system, so that the AM machines could regenerate their confirmable feasible AM jobs from the order pool in real time.

Decision-making strategies
As mentioned previously, the production time of an AM job is the function of the properties of all parts assigned to this job and the specifications of the machine to conduct this job. For an AM machine, the decision on which part order should be assigned to the in-scheduling AM job might significantly affect the production time of the job and, as a result, may mean that the other part orders in the order pool are no longer feasible. Different choices will lead to different combinations of part orders in the AM job and, thus, will lead to different production time, production costs, and net profit. As a strong NP hard problem, it is hard to generate the results for all possible choices, particularly for the problems with a big number of part orders and AM machines. Therefore, a set of local decision strategies is proposed for the AM machine to generate high-quality feasible AM jobs within a reasonable CPU time. Meanwhile, for the service provider, a proper global decision strategy is crucial to guarantee the whole system generating maximum net profit within the whole makespan. The final decision on the acceptance and scheduling of a part order is the result of a combination of local and global decision strategies. Each AM machine selects feasible part orders from the order pool based on its local strategy to form a feasible AM job and proposes it to the service provider. The proposed feasible AM job would be confirmed if it complies with the global decision strategy applied by the service provider. To investigate the influences of different selective behaviours to the APT during the whole makespan, a set of local decision strategies for AM machines and global decision strategies for service provider are proposed in this section, and the performance of different decision strategies will be discussed in Section 5.
The most obvious decision strategy for both AM machines and service provider is stochastic selection, named RDM and described in Strategy 1, which only concerns the feasibility of the AM jobs and ignores the profit derived from the production. Although stochastic selection cannot guarantee the performance of the generated solution, it is a practical way to know about how the good results are different from the bad results by comparing a set of schedule results generated randomly. Theoretically, the optimized schedule result could be found as long as the number of iterations for stochastic selection is large enough.
For an AM machine in the system, the decision on which feasible part order should be added into its in-scheduling AM job will result in different production cost, time, and profit which can be calculated with Eq. (1), Eq. (2), and Eq. (3) respectively. At the time moment when the AM machine is considering a feasible part order i, the production cost, time, profit, and the start time of this job are represented as JPC i k; j , JPT i k; j , JPP i k; j , and JST i k; j , respectively, if this feasible part order was added into this job. It is reasonable to assume that an AM machine always tries to pursue maximum profit within the shortest time. Therefore, the APT during the AM machine's makespan could be considered as a decision variable to determine if a feasible part order should be selected, which is represented as PMS i k; j and formulated as follows: The AM machine makes a contribution to the total profit only during its production time. However, within a makespan, the AM machine may be idle and thus does not contribute to the total profit. Therefore, another consideration is to use the ratio of the production time to makespan as the decision variable, which is represented as PPT i k; j and formulated as follows:

Strategy 1 Stochastic selection (RDM)
• The AM machines randomly select the feasible part orders to form feasible AM jobs. • The service provider randomly confirms the feasible AM jobs proposed by AM machines.
Alternatively, the arrival time of a feasible part order could be considered as a decision variable by the AM machine. The start time of an AM job depends on the latest arrival time of all part orders assigned to this job when the machine is idle. Therefore, the AM machine could reduce its idle time by selecting feasible part orders with earliest arrival time to enable the AM job to start as soon as possible.
Based on this analysis, three local decision strategies, named LPMS, LPPT, and LFIFO, respectively, and described in Local Strategies, are proposed for the decision-making during the generation of feasible AM jobs by an AM machine. For the whole system, the service provider makes decision on which feasible AM job should be confirmed to schedule based on an applied global strategy. The profit-per-unit-time during the makespan of the whole system if a feasible AM job is selected, represented as PMS k, j , can be formulated as follows: where JPP 0 k; j is the profit of the feasible job under consideration and MS j is the current makespan of the system if the job is selected and can be formulated as follows: where JCT 0 k; j is the completion time of the feasible job under consideration.
Similarly, the ratio of production time to the total makespan for the system if a feasible AM job is selected, represented as PPT k, j , is formulated as follows: where JPT 0 k; j is the production time of the feasible job under consideration.
Two global strategies GPMS and GPPT, described in Global Strategies, are proposed based on the abovementioned decision variables.
During the generation of the schedule solution, the three local strategies for AM machines and the two global strategies for service provider can be combined as six different strategy sets GPMS-LPMS, GPMS-LPPT, GPMS-LFIFO, GPPT-LPMS, GPPT-LPPT, and GPPT-LFIFO.

Computational study
The computational study was conducted to investigate the performance of the various decision strategies proposed in Section 4.3. A series of problems with different number of part orders and AM machines were generated randomly and solved with the heuristic algorithms proposed in Section 4.2. To evaluate the performance of different decision strategies, the difference between potential bad and good schedule results was investigated first with the proposed RDM decision strategy. Then, the performance of decision strategy sets listed in the previous subsection was evaluated by comparing their results with the best schedule results obtained with RDM decision strategy. The heuristic algorithms proposed in Section 4.2 were implemented in Python language. For reproducibility of the results, specific random seeds are used in the developed Python programme for the generation of the data of part orders and AM machines to keep consistency across different test problems. All experiments were performed on a computer equipped with Intel® Core™ i7-7700 CPU @3.60 GHz processors and 32 GB RAM. The CPU time consumed on different problem sizes was compared as well to evaluate the efficiency of the proposed heuristic algorithms.

Experiment design
A serial of test problems was designed to demonstrate various on-demand AM production environments for the investigation of the heuristic algorithms and decision strategies proposed in this paper. Each test problem consists of different numbers of AM machines with different specifications and different numbers of part orders which arrived randomly during a specific time duration. The specification related to the capacity and efficiency of an AM machine is referred to the DMLS system produced by EOS®-a global industrial 3D printing system supplier from Germany. Other parameters of Local Strategies • LPMS: The feasible part order with the maximum PMS i k , j will be selected into in-scheduling AM job.
• LPPT: The feasible part order with the maximum PPT i k , j will be selected into in-scheduling AM job.
• LFIFO: The feasible part order with the minimum r i will be selected into in-scheduling AM job.
Global Strategies • GPMS: The feasible AM job with the maximum PMS k, j will be confirmed for schedule. • GPPT: The feasible AM job with the maximum PPT k, j will be confirmed for schedule. the machine are given empirically. For a multiple AM machines environment, all the AM machines are same in capacity, material cost, and service price, while other parameters were generated randomly within the given ranges. The reference and random range for the specifications of AM machines used in this paper are shown in Table 2.
The part orders considered in the test problems were generated randomly with specific arrival time, r i , boundary dimensions (h i × w i × l i ), material volume, v i , and the due date, di , promised by the service provider. The random ranges of parameters for the part orders used in this paper are shown in Table 3. All part orders were assumed to arrive randomly within a specific duration (e.g., 30 days), and different part orders may arrive at the same time. The due date promised to a part order by the service provider is an empirical duration (e.g., 14 days) after the part order's arrival time. It is the latest due date if the part order was accepted for production which will be taken as a constraint for scheduling.
Four levels of the number of AM machines (3, 5, 10, and 20) were considered for each size of test problem according to a different number of part orders (50, 100, 200, 400, and 600). Therefore, in total, 20 different test problems were tested for the evaluation of the proposed heuristic algorithms and decision strategies. Also, to investigate the influence of promised due date on the performance of various decision strategies, five different promised due dates (1, 3, 7, 10, and 14 days) were considered in each test problem. The definition of 20 test problems is listed in Table 4.

Potential difference of schedule results
The RDM decision strategy was applied to generate schedule results of the 20 test problems to discover how the poor schedule is different from the good schedule. The best as well as the worst schedule results were obtained through 100 iterations (except test problem 12-15, 18-20 with 20 iterations) applied with RDM decision strategy. The results are listed in Table 5 where the average profit-per-unit-time (APT best ,APT worst ), total profit (PP b e s t ,PP w o r s t ), total production time (PT best ,PT worst ), makespan (MS best ,MS worst ), accepted part orders (PO best ,PO worst ), and number of scheduled AM jobs (JOB best ,JOB worst ) of the best and the worst schedule are provided for further discussion. Also, the CPU time consumption of each problem is provided. The CPU time was measured in the developed Python programme through recording the difference of system clock time before and after the execution of the scheduling programme.
It can be seen that the CPU time consumption increases exponentially as the problem size increases along with the number of AM machines and part orders. For example, the CPU time consumption is increased approximately 341 times from 36 to 12,187 s for the problems with 3 AM machines, while the number of part orders increases from 50 to 600. However, the optimal schedule result cannot be guaranteed within the given iterations because it is hard to exhaust all possible solutions especially when the problem with big size. The experiment with RDM decision strategy intends to    Generally speaking, as shown in Table 5, the best schedule results usually present higher total profit, shorter makespan, and longer total production time compared to the worst schedule results for all test problems. However, there is no necessary correlation between the APT and the number of accepted part orders as well as the number of scheduled AM jobs. That is, more accepted part orders or scheduled AM jobs cannot guarantee more production profit. For further investigation, a difference indicator for APT, represented as D APT , is defined as D APT = (APT best − APT worst )/APT worst . Also, the ratio of total production time to the makespan is represented as PPT best and PPT worst , respectively, for the best and the worst schedule results. Further comparison of the best and the worst schedule results is listed in Table 6, where it can be seen that the average Gray background and value in red indicates that the ratio of total production time to the makespan for the best schedule result is lower than the worst one, which is different with other test problems difference of APT between the best and the worst schedule results is approximately 49.74%. Also, we can note that the difference is smaller as the increase of the number of part orders for problems with the same number of AM machines. The most likely reason is possible schedule solutions increased along with the increase of part orders while the iterations with RDM decision strategy remains the same. For the smallest test problem with 3 AM machines and 50 part orders, the APT of the best schedule results is more than double that of the worst one. Additionally, the ratio of total production time to the makespan for the best schedule results is always higher than the worst one except with the 11th test problem. In conclusion, it seems likely that, compared to a poor schedule result, good schedule results usually present higher total profit, shorter makespan, and larger ratio of production time to makespan.

Performance of decision strategies
The performance of various decision strategies proposed in Section 4.3 is evaluated by comparing their schedule results with the best and the worst schedule results obtained with RDM decision strategy. Particularly, the average APT and total profit of each schedule result are considered as comparative items. The average APT and total profit of the schedule results for the 20 test problems obtained by applying different decision strategies are listed in Table 7 and Table 8, respectively. For each test problem, the highest APT as well as the highest total profit were presented by one of the proposed decision strategies but no one decision strategy always leads to the best performance for different problems. Interestingly, the proposed 6 non-random decision strategies likely do not present poor performance concurrently for the same test problem. In other words, when a decision strategy presents poor performance some other decision strategy may present good performance. As a result, except the 2nd test problem, all the best results regarding APT and total profit were presented by one of the 6 non-random decision strategies.
To further evaluate the performance of each decision strategy, the distribution of APT obtained with each decision strategy to the range between the best and the worst results obtained with RDM decision strategy is considered as the performance indicator which is represented as P strategy and equals Value strategy −Value worst RDM À Á = Value best RDM −Value worst RDM À Á , wh ere the Value can be the APT or total profit of each schedule result. The performance of each decision strategy compared to the results obtained with RDM decision strategy is listed in Table 9, where we can see that on average all the decision strategies, except GPMS-LFIFO and GPPT-LFIFO, present excellent performance both in APT and total profit which are better than the best schedule results with RMD decision strategy. However, it does not mean that the GPMS-LFIFO and GPPT-LFIFO always present poor performance. For example, these two decision strategies presented the best results in problems of 10, 13, 14, 20 and problems of 6, 18, respectively, while other decision strategies gave poor performances. On average, the GPMS-LPPT decision strategy presented the best performance both in APT (129.1%) and total profit (139.7%). Gray background and value in red indicates that the highest APT presented by all decision strategies

Influence of demand changing
Considering that the performance of each decision strategy is variable in different test problems, the influence of demand changing in the performance of decision strategies is investigated. The performance of different decision strategies in APT regarding the number of AM machines and part orders is listed in Table 10, where the grey background indicates that the  Problem  GPMS-LPPT  GPMS-LPMS  GPMS-LFIFO  GPPT-LPPT  GPPT-LPMS  GPPT-LFIFO   1  155987  67730  157050  150421  135793  155251  151477  141182  2  148052  102920  166393  166035  154584  162748  160897  155154  3  173582  130537  191400  190956  130984  191009  196986  132315  4  182453  144808  199030  201158  136171  200132  201617  137571  5  196550  159904  205995  207450  126780  Gray background and value in red indicates that the highest total profit presented by all decision strategies Table 9 The performance of each decision strategy Gray background and value in red indicates that the performance is worse than the worst result obtained through random decision strategy performance is higher than the average performance of this decision strategy while the value in red color is the best performance presented by all decision strategies for the same problem. In general, the decision strategies of GPMS-LPMS, GPMS-LPPT, GPPT-LPMS, and GPPT-LPPT present good performance for the problems in the lower left corner of the matrix. While the decision strategies of GPPT-LFIFO and GPMS-LFIFO present good performance for the problems in the lower right corner of the matrix. In other words, the strategies of GPPT-LFIFO and GPMS-LFIFO are more likely to provide better schedule results when the market demand decreases. However, these two decision strategies might give very poor schedule results when the demand is greater than the capacities of all AM machines. The distribution of decision-making strategy sets which presents the best performance is shown in Table 11.

Influence of promised due date
The promised due date to a part order will affect the behaviour of customers. The customers may move to other AM service provider if the promised due date is too long. However, more part orders might have to be rejected due to no AM machine being able to produce the part on time if the promised due date is too short. Therefore, it is necessary to investigate the influence of the promised due date to the schedule results. The APT obtained through GPMS-LPMS decision strategy for the 20 test problems with different promised due dates (1, 3, 7, 10, and 14 days) is listed in Table 12.
It can be seen from Table 12 that the value of APT is increased obviously as the due dates are increased from 1 day to 7 days. However, it seems like the value of APT will not keep increasing when the due date is longer than 7 days for most test problems. Grey background indicates that the performance is higher than the average performance of this decision strategy; value in red is the best performance presented by all decision strategies for the same problem  The most likely reason behind this phenomenon is because the number of the part orders which could be produced on time is big enough when the due date is long enough. The performance of the schedule will depend on the decision strategies. Further efforts will be made to investigate how to determine a proper due date promised to customers in our future research.

Conclusions and future research
In this research, the problem of dynamic OAS in on-demand production with PBF systems with part orders dynamically arriving in chronological order was introduced and modelled mathematically to maximize the average profit-per-unit-time during the whole makespan of the system. As the OAS in production with PBF systems is a joint decision on order acceptance and BPM scheduling problems, both of which are known to be strong NP hard, according to the characteristics of production with PBF systems, two heuristic procedures based on decision-making strategies were developed and implemented with Python language. The first heuristic procedure was developed for the generation of feasible AM jobs on each machine based on local decision-making strategy, and the second heuristic procedure was developed for the confirmation of feasible AM jobs by service provider based on global decision-making strategy. The final decision on the acceptance and scheduling of a part order is a combination of local and global decisionmaking strategies arrived at by considering the local state of the machines as well as the global state of the whole system. Further, three local decision-making strategies and two global decision-making strategies, which can be combined into six different decision-making strategy sets, were designed based on the influence of selective behaviours on the scheduling results. The comprehensive experimental results indicated that, with the proposed heuristic procedures, the service provider is capable of obtaining promising APT as well as total net profits in an on-demand production environment with PBF systems by applying a proper decision-making strategy. The mathematical formulae and the heuristic procedures proposed in this paper provide a fundamental approach for the investigation of dynamic OAS problems in on-demand production with PBF systems. Firstly, the problem is formulated mathematically based on the analysis of production with PBF systems where the dynamic release time and due date of orders have been taken into account to reflect the realistic production scenarios. The calculations of production time, cost, and profit of an AM job in the model are parameterized with the realistic attributes of parts and AM machines. Therefore, the proposed approach could be adopted in real industrial production with limited modification. Secondly, the proposed heuristic procedures for the generation and confirmation of feasible AM jobs provide a practical approach to solve the dynamic OAS problem in on-demand production with PBF systems. The final decision on the acceptance and scheduling of a part order is instantly made by the machines and the service provider cooperatively under constraints of machines' capacities as well as orders' release time and due date. The experimental results indicated that the proposed heuristic procedures work properly and different selective behaviours lead to significant differences both in APT and total profit. Regarding the 100 schedule results generated through Gray background and value in red indicates that value of APT is decreasing random selection for each problem, the best schedule results are approximately 59 and 50.5% higher in APT and total profit, respectively, compared to the worst results. Thirdly, the experimental results indicated that it is practicable to obtain promising APT as well as total profit through dynamic decision-making on the acceptance and scheduling of on-demand production orders applied with proper decision-making strategy sets. Regarding the performance indicator defined in Section 5.3, the best performance for each problem might be presented by a different decision-making strategy set. However, on average, the GPMS-LPPT decision strategy set presented the best performance for all 20 problems both in APT (129.1%) and total profit (136.7%). Last but not least, the experimental results indicated that the change in the market demand and the promised due date will affect the performance of a decision-making strategy set. The decision-making strategy sets of GPPT-LFIFO or GPMS-LFIFO will present the best schedule results in problems with less demand, while one of the other decision-making strategy sets will present the best results when there is sufficient demand. For a particular decision-making strategy set (e.g., GPMS-LPMS), the value of APT for all the 20 problems increases significantly when the promised due dates are increased from 1 day to 7 days. This is because the longer due date allows wider available time slot for an AM job to consider more part orders. However, if the promised due date is too long, the value of APT might decrease because more idle time might be caused when the machine prefers waiting for more part orders to maximize the utilization of its capacity.
As an attempt to address the dynamic OAS problem in ondemand production with PBF systems, the proposed approach and findings will open up research opportunities regarding production problems in industrial AM production field. First, the mathematical expressions proposed in this paper can be further extended by considering true shape 2D/3D nesting algorithms to cover more industrial AM processes such as Selective Laser Sintering (SLS) and binder jetting (ASTM:F2790-12a). Also, the cost structure of production with AM machine can be further refined by considering the idle time costs and materials changing costs of each AM machine for practical applications. Second, although the difference in schedule results has been demonstrated through random selection with proposed heuristic procedures, optimization algorithms are expected to solve the model optimally to find out the exact best and worst results for the evaluation of proposed decision-making strategies. Third, further investigation on the selective behaviours in decision-making on the acceptance and scheduling of on-demand production orders should be carried out to discover appropriate decision-making strategies according to the market situations. It has been proved in this paper that it is practicable to solve the dynamic OAS problem in on-demand production with PBF systems through the dynamic selection of part orders and confirmation of AM jobs based on a proper decision-making strategy set.
However, advanced methodologies based on machine learning and/or bio-inspired algorithms are expected for the development of optimal decision-making strategy sets. Furthermore, within an on-demand production environment where multiple service providers exist, the competition among service providers may be taken into account in future research. The problem will be more complex and challenging where the service providers should make attractive offers to compete for as many profitable orders as possible to maximize the average profit-per-unit-time while the decision on acceptance of offers would be made by customers. Therefore, the decision-making strategies for both service providers and customers should be investigated and a novel simulation-based heuristic approach needs to be developed to solve the problem efficiently.