Green nesting and scheduling methods, media and equipment for additive manufacturing
By establishing a mixed integer linear programming model and an improved biogeographic optimization algorithm in additive manufacturing, the problem of difficulty in optimizing total drag period and total energy consumption in additive manufacturing is solved, and efficient production management and resource utilization are achieved.
Patent Information
- Application Number
- CN202411764057.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-04
- Publication Date
- 2025-04-04
- Estimated Expiration
- 2044-12-04
AI Technical Summary
In additive manufacturing, it is difficult for the existing technology to effectively manage large-scale and diversified production tasks, resulting in difficulty in optimizing total delays and total energy consumption.
A green nesting and scheduling method for additive manufacturing is proposed. By establishing a mixed integer linear programming model and an improved biogeographic optimization algorithm, a scheduling scheme and scheduling Gantt chart are designed to minimize the total drag period and total energy consumption.
It achieves minimizing the total drag period and minimizing total energy consumption in additive manufacturing, improves production efficiency and resource utilization, and enhances the response ability to diversified orders.
Smart Images

Figure CN119250478B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of green nesting and scheduling technology for additive manufacturing, and more specifically, to a green nesting and scheduling method, medium and equipment for additive manufacturing. Background Art
[0002] With the development trend across the physical and virtual worlds, additive manufacturing (AM), also known as 3D printing, has become the mainstream for realizing complex geometric figures designed in computers. At present, a considerable amount of AM research focuses on how to build complex designs, but with the maturity of AM technology, AM is no longer limited to producing single complex geometric figures. A new AM-based on-demand production strategy has emerged, which can produce large-scale, low-cost customized parts (such as key chains and mobile phone holders). With the support of cloud computing IT technology, AM manufacturers have opened up a new business model path for Manufacturing as a Service (MaaS). Since increasing the number and diversity of produced parts requires effective operation management methods, production-driven research has recently received widespread attention.
[0003] With the acceleration of the global industrialization process, resource and environmental issues have become increasingly prominent, and the traditional high-input, high-consumption, and high-emission production model is no longer sustainable. As an important part of green manufacturing, green and low-carbon workshops are an effective way to meet this challenge. Green and low-carbon workshops are an inevitable choice for the transformation and upgrading of the manufacturing industry, and are also a key path to achieve sustainable development. The Chinese government attaches great importance to the development of green manufacturing and regards the construction of green factories as one of the important tasks for implementing green manufacturing projects. Green and low-carbon workshops focus on resource recycling and energy conservation and emission reduction, which helps to reduce production costs and improve product quality and market competitiveness.
[0004] The adoption of new and excellent production management methods is helpful to achieve the goal of energy conservation and emission reduction. At the same time, in order to increase the output of AM systems, the introduction of nesting and scheduling methods in the process planning and production management of AM systems has great practical value. The nesting method is to correctly place a batch of parts into the printing space, so as to maximize the space utilization and greatly reduce the waste of resources. In the MaaS business model, AM manufacturers simultaneously undertake a large number of orders with different requirements, which usually have different delivery dates. Failure to complete production tasks within the delivery period will not only affect production efficiency, but may also cause customers' production plans to be blocked, seriously affecting the company's reputation and market competitiveness. Therefore, it is necessary to introduce scheduling methods to participate in production planning management.
[0005] In the current research on nesting and scheduling of AM, it can be divided into three types: AM nesting (Nesting for Additive manufacturing, NfAM), AM scheduling (SfAM) and AM nesting and scheduling (Nesting, Scheduling for Additive manufacturing, NSfAM). In traditional manufacturing systems, nesting and scheduling methods are considered at different planning stages. Nesting methods are usually managed during process planning, and scheduling is usually managed during production planning and control. However, in AM, the output of the nesting method used in process planning usually affects the operation and performance of scheduling. For example, in large-scale batch manufacturing, different nesting of parts will affect the production efficiency of parts of the order, so it is impossible to estimate the production time of the order, and naturally it is impossible to design a production plan. In the current AM manufacturing system, most manufacturers produce completely according to the order sequence. In order to ensure on-time delivery, the acceptance of orders is very conservative, which cannot maximize production efficiency. Summary of the invention
[0006] The object of the present invention is to provide a green nesting and scheduling method, medium and equipment for additive manufacturing, which can minimize the total delay and minimize the total energy consumption.
[0007] The present invention provides a green nesting and scheduling method for additive manufacturing, comprising the following steps: S1: obtaining parameters of tasks to be scheduled, and constructing a mixed integer linear programming model according to the parameters of tasks to be scheduled; S2: designing an improved biogeographic optimization method according to the mixed integer linear programming model by using a biogeographic optimization algorithm; S3: obtaining a scheduling plan and a scheduling Gantt chart by using the improved biogeographic optimization method.
[0008] Furthermore, the parameters of the tasks to be scheduled in the above-mentioned green nesting and scheduling method for additive manufacturing include order number, number of orders, order set, part number, total number of parts, part set, number of parts for each order, batch number, maximum number of batches, batch set, maximum volume of the printer, time consumed by the printer for one print, energy consumption of the printer for one print, delivery time of each order and volume of each part.
[0009] Furthermore, the mixed integer linear programming model of the green nesting and scheduling method for additive manufacturing includes an objective function and a constraint set.
[0010] Furthermore, the objective function of the green nesting and scheduling method for additive manufacturing is used to minimize the total delay and total energy consumption indicators, such as the formula:
[0011] ,
[0012] in, represents the minimization function, is the objective function, is the order number, and is the target weight, For the The delay of an order, For the Energy consumption per order.
[0013] Furthermore, the constraint set of the green nesting and scheduling method for additive manufacturing includes the first constraint, the second constraint, the third constraint, the fourth constraint, the fifth constraint, the sixth constraint, the seventh constraint, the eighth constraint, the ninth constraint, the tenth constraint, the eleventh constraint, the twelfth constraint, the thirteenth constraint, the fourteenth constraint, the fifteenth constraint and the sixteenth constraint; the first constraint is: if an order can be produced before the delivery date, the delay of the order is 0, otherwise the delay of the order is the actual production completion time minus the delivery date, as shown in the formula:
[0014] , ,
[0015] , ,
[0016] , ,
[0017] , ,
[0018] , ,
[0019] in, is a very large number; is the first decision variable, indicating that if the order If the total delay of is greater than 0, it is 1, otherwise it is 0; For the The production completion time of all batches of an order; For orders Delivery period; is the order collection; For the The second constraint is the delay of the order Energy consumption, such as the formula:
[0020] , ,
[0021] in, For the Energy consumption per order; The batch number; is a batch collection; is the second decision variable, indicating that if Orders exist If there are multiple batches, it is 1; otherwise, it is 0; is the energy consumption of the printer for one print; the third constraint is: each component needs to be produced and only produced once, as shown in the formula:
[0022] ,
[0023] in, is the third decision variable, indicating that if Order No. Batches contain parts If yes, it is 1, otherwise it is 0; is a set of parts; the fourth constraint is a batch definition, such as the formula:
[0024] ,
[0025] in, For the The number of parts contained in an order; the fifth constraint is: the total volume of production parts in a single batch cannot operate the printer volume, such as the formula:
[0026] ,
[0027] in, For components Volume; is the maximum volume of the printer; the sixth constraint is: the production start time and production completion time of all parts are greater than 0, such as the formula:
[0028] , ,
[0029] , ,
[0030] in, For the Order No. j The start time of production of each batch, For the Order No. The production completion time of each batch; the seventh constraint is: the start time of the batch that does not exist, the production completion time is set to 0, such as the formula:
[0031] , , ,
[0032] , , ,
[0033] The eighth constraint is: each batch has at most one immediate preceding batch and one immediate successor batch, and they must exist, as shown in the formula:
[0034] , , ,
[0035] , , ,
[0036] in, is the fourth decision variable, indicating that if Order No. The batch is Order No. The previous batch of a batch is 1, otherwise it is 0; the ninth constraint is: no batch can be its immediate previous batch, as shown in the formula:
[0037] , , ,
[0038] The 10th constraint is: there is only one batch without a previous batch, that is, there is only one batch as the first batch, as shown in the formula:
[0039] ,
[0040] The 11th constraint is: only one batch can be produced at a time, as shown in the formula:
[0041] ,
[0042] ,
[0043] The 12th constraint is: the completion time is the start processing time plus the processing time, such as the formula:
[0044] ,
[0045] ,
[0046] The 13th constraint is: the completion time of an order is the maximum completion time of all batches of the order, as shown in the formula:
[0047] ,
[0048] in, is the maximization function;
[0049] The 14th constraint is: When the component Belong to the order If yes, it is 1, otherwise it is 0, as shown in the formula:
[0050] ,
[0051] in, is the fifth decision variable, indicating that if Parts belong to the order , then it is 1, otherwise it is 0; the 15th constraint is: parts that do not exist in the order cannot be put into the batch, such as the formula:
[0052] ,
[0053] The 16th constraint is: when the batch When present, the number of components is at least 1, as shown in the formula:
[0054] .
[0055] Furthermore, step S2 of the green nesting and scheduling method for additive manufacturing specifically includes: S21: initializing parameters according to task data set information and biogeographic optimization algorithm; S22: constructing array code according to task data set information; S23: initializing population according to task data set information and biogeographic optimization algorithm; S24: decoding according to array code to obtain fitness values of individuals in initial population; S25: performing migration operation according to fitness value; S26: performing mutation operation according to mutation rate; S27: performing local search for the best individual in current population according to current population and individual; S28: judging whether the number of population iterations reaches the preset maximum number of iterations, if the number of population iterations does not reach the preset maximum number of iterations, returning to step S25; if the number of population iterations reaches the preset maximum number of iterations, the method terminates, and the optimal solution in the population is obtained, and then the scheduling result is obtained. The above steps are the improved biogeographic optimization method.
[0056] Furthermore, step S22 of the green nesting and scheduling method for additive manufacturing specifically includes: constructing an array code according to the task data set information, such as the formula:
[0057] ,
[0058] in, Encodes a one-dimensional array. For the The part number of the component, is the total number of parts.
[0059] Furthermore, step S3 of the green nesting and scheduling method for additive manufacturing specifically includes: S31: using an improved biogeographic optimization method to obtain a population; based on the population, selecting the best individuals therefrom to obtain a scheduling plan; S32: obtaining a scheduling Gantt chart based on the scheduling plan.
[0060] The present invention also provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the green nesting and scheduling method for additive manufacturing are implemented.
[0061] The present invention also provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps of the green nesting and scheduling method for additive manufacturing are implemented.
[0062] The green nesting and scheduling method, medium and device for additive manufacturing provided by the present invention have the following beneficial effects:
[0063] The present invention aims at the green nesting and scheduling problem for additive manufacturing. According to a type of multi-component, multi-component, single-machine (MMS) scheduling problem based on AM proposed in the NSfAM standard, in order to ensure the on-time delivery of orders, the concept of production change is introduced into the problem. AM machines no longer produce on an order basis, but can switch between multiple orders to ensure the minimum total delay. The present invention establishes a mixed integer linear programming model for the green nesting and scheduling problem for additive manufacturing with minimizing the total delay and total energy consumption as the optimization objectives. Based on the characteristics of the green nesting and scheduling problem for additive manufacturing, an improved biogeographic optimization algorithm is proposed. A set of scheduling schemes for the green nesting and scheduling problem for additive manufacturing are obtained through algorithm optimization, and a scheduling Gantt chart is drawn, thereby solving the existing problems of minimizing the total delay and minimizing the total energy consumption for the green nesting and scheduling problem for additive manufacturing. BRIEF DESCRIPTION OF THE DRAWINGS
[0064] The present invention will be further described below with reference to the accompanying drawings and embodiments, in which:
[0065] Figure 1 is a flow chart of a green nesting and scheduling method for additive manufacturing provided by the present invention;
[0066] Figure 2 It is a workshop production schematic diagram of green nesting and scheduling problem for additive manufacturing provided by the present invention;
[0067] Figure 3 is a flow chart of the improved biogeography optimization algorithm provided by the present invention;
[0068] Figure 4 It is a diagram of the encoding method of the improved biogeography optimization algorithm provided by the present invention;
[0069] Figure 5 is a crossover operation diagram of the improved biogeographic optimization algorithm provided by the present invention;
[0070] Figure 6 is a variation operation diagram of the improved biogeography optimization algorithm provided by the present invention;
[0071] Figure 7 It is a Gantt chart of the traditional first-come-first-served production plan for green nesting and scheduling problems for additive manufacturing provided by the present invention;
[0072] Figure 8 It is a Gantt chart of the improved biogeographic optimization algorithm provided by the present invention to solve the green nesting and scheduling problem for additive manufacturing;
[0073] Fig. 9 It is a structural block diagram of the computer device provided by the present invention. DETAILED DESCRIPTION
[0074] In order to have a clearer understanding of the technical features, purposes and effects of the present invention, specific embodiments of the present invention are now described in detail with reference to the accompanying drawings.
[0075] Figure 1 A schematic diagram of a green nesting and scheduling method for additive manufacturing in this embodiment is shown. In this embodiment, the green nesting and scheduling method for additive manufacturing includes the following steps:
[0076] S1: Obtain the parameters of the task to be scheduled, and build a mixed integer linear programming model based on the parameters of the task to be scheduled;
[0077] Specifically, the task parameters to be scheduled include order number, order number, order set, component number, total number of components, component set, number of components per order, batch number, maximum batch number, batch set, maximum volume of the printer, time consumed by the printer for one print, energy consumption of the printer for one print, delivery date of each order and volume of each component;
[0078] Specifically, the mixed integer linear programming model includes an objective function and a set of constraints;
[0079] Specifically, the objective function is used to minimize the total delay and total energy consumption indicators, such as the formula:
[0080] ,
[0081] in, To minimize the function, is the objective function, is the order number, and is the target weight, For the The delay of an order, For the Energy consumption per order;
[0082] Specifically, the constraint set includes the first constraint, the second constraint, the third constraint, the fourth constraint, the fifth constraint, the sixth constraint, the seventh constraint, the eighth constraint, the ninth constraint, the tenth constraint, the eleventh constraint, the twelfth constraint, the thirteenth constraint, the fourteenth constraint, the fifteenth constraint and the sixteenth constraint; the first constraint is: if an order can be produced before the delivery date, the delay of the order is 0, otherwise the delay of the order is the actual production completion time minus the delivery date, as shown in the formula:
[0083] , ,
[0084] , ,
[0085] , ,
[0086] , ,
[0087] , ,
[0088] in, is a very large number; is the first decision variable, indicating that if the order If the total delay of is greater than 0, it is 1, otherwise it is 0; For the The production completion time of all batches of an order; For orders Delivery period; is the order collection; For the The second constraint is the delay of the order Energy consumption, such as the formula:
[0089] , ,
[0090] in, For the Energy consumption per order; The batch number; is a batch collection; is the second decision variable, indicating that if Orders exist If there are multiple batches, it is 1; otherwise, it is 0; is the energy consumption of the printer for one print; the third constraint is: each component needs to be produced and only produced once, as shown in the formula:
[0091] ,
[0092] in, is the third decision variable, indicating that if Order No. Batches contain parts If yes, it is 1, otherwise it is 0; is a set of parts; the fourth constraint is a batch definition, such as the formula:
[0093] ,
[0094] in, For the The number of parts contained in an order; the fifth constraint is: the total volume of production parts in a single batch cannot operate the printer volume, such as the formula:
[0095] ,
[0096] in, For components Volume; is the maximum volume of the printer; the sixth constraint is: the production start time and production completion time of all parts are greater than 0, such as the formula:
[0097] , ,
[0098] , ,
[0099] in, For the Order No. j The start time of production of each batch, For the Order No. The production completion time of each batch; the seventh constraint is: the start time of the batch that does not exist, the production completion time is set to 0, such as the formula:
[0100] , , ,
[0101] , , ,
[0102] The eighth constraint is: each batch has at most one immediate preceding batch and one immediate successor batch, and they must exist, as shown in the formula:
[0103] , , ,
[0104] , , ,
[0105] in, is the fourth decision variable, indicating that if Order No. The batch is Order No. The previous batch of a batch is 1, otherwise it is 0; the ninth constraint is: no batch can be its immediate previous batch, as shown in the formula:
[0106] , , ,
[0107] The 10th constraint is: there is only one batch without a previous batch, that is, there is only one batch as the first batch, as shown in the formula:
[0108] ,
[0109] The 11th constraint is: only one batch can be produced at a time, as shown in the formula:
[0110] ,
[0111] ,
[0112] The 12th constraint is: the completion time is the start processing time plus the processing time, such as the formula:
[0113] ,
[0114] ,
[0115] The 13th constraint is: the completion time of an order is the maximum completion time of all batches of the order, as shown in the formula:
[0116] ,
[0117] in, is the maximization function;
[0118] The 14th constraint is: When the component Belong to the order If yes, it is 1, otherwise it is 0, as shown in the formula:
[0119] ,
[0120] in, is the fifth decision variable, indicating that if Parts belong to the order , then it is 1, otherwise it is 0; the 15th constraint is: parts that do not exist in the order cannot be put into the batch, such as the formula:
[0121] ,
[0122] The 16th constraint is: when the batch When present, the number of components is at least 1, as shown in the formula:
[0123] ,
[0124] S2: Based on the mixed integer linear programming model, using the biogeographic optimization algorithm, design an improved biogeographic optimization method;
[0125] In this embodiment, the flowchart of the improved biogeography optimization method is as follows Figure 3 As shown;
[0126] Specifically, step S2 includes:
[0127] S21: Initialize parameters based on the task dataset information and biogeographic optimization algorithm;
[0128] Specifically, parameter initialization is performed, including: setting the population size, maximum number of iterations, maximum immigration rate, maximum emigration rate, and maximum mutation probability;
[0129] S22: construct array encoding according to task dataset information;
[0130] Specifically, step S22 includes: constructing an array encoding according to the task data set information, such as the formula:
[0131] ,
[0132] in, Encodes a one-dimensional array. For the The part number of the component, is the total number of parts;
[0133] The encoding scheme is as follows: Figure 4 As shown;
[0134] S23: Initialize the population according to the task dataset information and biogeographic optimization algorithm;
[0135] Specifically, step S23 includes:
[0136] S231: Obtaining the order with the largest estimated delay according to the sum of the volumes of the remaining components of each order;
[0137] Specifically, in step S231, the sum of the volumes of the remaining components of each order is , as the approximate remaining production time , in For batch of remaining parts, find the estimated delays from all orders Largest order ;
[0138] S232: according to the estimated maximum delayed order, the current batch is obtained by using a greedy algorithm;
[0139] Specifically, in step S232, the components in the order are placed into the current batch according to volume from large to small through a greedy algorithm until the printer cannot place any component of the order or there is no unproduced component in the order;
[0140] S233: According to the current batch, the remaining delivery time of all orders, the estimated delay of the order with the largest estimated delay, and the estimated delays of the remaining orders are updated;
[0141] Specifically, in step S233, the batch of parts is put into the printer for production. After that, the remaining delivery time for all orders , Order The estimated delay becomes , the estimated delay for the remaining orders is ;
[0142] S234: Return to step S231 until all components are allocated and an excellent individual is obtained;
[0143] Optionally, in step S23, the remaining individuals in the population are initialized by random initialization to initialize the population; due to the excellent encoding and decoding mechanism, the encoding can adopt any random initialization sequence and will not produce an infeasible solution;
[0144] S24: Decode according to the array code to obtain the fitness value of the individuals in the initial population;
[0145] Specifically, in step S24, the code is decoded and the fitness values of the individuals in the initial population are calculated;
[0146] Specifically, step S24 includes:
[0147] S241: Obtain each batch according to the array encoding;
[0148] Specifically, in step S241, the batching problem must first be solved. as well as After Parts make up a batch. The components must be belong to the same order, and ;
[0149] S242: According to each batch, the batch processing order and the fitness value of the individuals in the initial population are obtained;
[0150] Specifically, in step S242, the batch processing sequence is determined. Through the batch grouping in step S2041, the code can be expressed as ,in, The batch number, the batch processing order is the batch coding order , thus we can get the delay and energy consumption of each order, and then get the individual fitness value;
[0151] S25: Perform migration operation according to the fitness value;
[0152] Specifically, in step S25, the solutions are arranged in descending order according to the fitness values, and the migration operation is performed according to the population individual order according to the immigration rate and the emigration rate; this embodiment adopts a sinusoidal migration model, such as the formula:
[0153] ,
[0154] ,
[0155] in, I represents the maximum immigration rate, Indicates the current individual k The fitness value of represents the average fitness value, E Indicates the maximum migration rate; PMX crossover is used in coding migration, two crossover sites are randomly selected, the sequences within the crossover sites are exchanged, and the sequences outside the exchange sites are obtained through neighborhood mapping; the crossover operation process is as follows Figure 5 As shown;
[0156] S26: Perform mutation operation according to the mutation rate;
[0157] Specifically, in step S26, two points of the code are mutated, two mutation sites are randomly selected, and the elements of the two sites are exchanged. The mutation probability formula is as follows:
[0158] ,
[0159] in, d Represents a random number. e represents the number of iterations, represents the maximum number of iterations, represents the fitness value of the habitat, Represents the average fitness value; the mutation operation process is as follows Figure 6 shown.
[0160] S27: Based on the current population and individuals, perform a local search for the best individual in the current population;
[0161] Specifically, step S27 includes: S271: Calculate the average volume of the components in each order ; S272: Randomly select a point from the code and The components belonging to the same order are moved to the part immediately behind the component; S273: randomly select a point, find the batch where the point is located, and compare the delivery date with the previous batch. If the delivery date of the current batch is shorter than that of the previous batch, all the components of the batch are moved to the front of the previous batch;
[0162] S28: Determine whether the number of population iterations reaches a preset maximum number of iterations. If the number of population iterations does not reach the preset maximum number of iterations, return to step S25; if the number of population iterations reaches the preset maximum number of iterations, the method terminates, and the optimal solution in the population is obtained, and then the scheduling result is obtained. The above steps are the improved biogeographic optimization method;
[0163] S3: Using the improved biogeographic optimization method, the scheduling plan and scheduling Gantt chart are obtained;
[0164] Specifically, in step S3, a set of scheduling solutions for green nesting and scheduling problems for additive manufacturing are obtained through algorithm optimization, and a scheduling Gantt chart is drawn;
[0165] Specifically, step S3 specifically includes: S31: using the improved biogeographic optimization method to obtain a population; according to the population, selecting the best individuals therefrom to obtain a scheduling plan; S32: according to the scheduling plan, obtaining a scheduling Gantt chart.
[0166] In some embodiments, the above-mentioned green nesting and scheduling method for additive manufacturing can also be implemented in the following manner.
[0167] In this embodiment, there are orders, each order contains parts, , and each order has its own delivery date , each component has a fixed volume , , these parts are now to be produced on an AM machine with a maximum print volume of , the machine can Multiple parts are combined into one component for production. AM machines can only print one component at a time. The machine has a fixed printing speed. , each batch has the same printing time and the same energy consumption Now we need to produce all the parts of the order on this machine, and we need to complete all the orders with the minimum energy consumption and the minimum total delay. ;Production background picture Figure 2 As shown in the figure, the mixed integer linear programming model for the green nesting and scheduling problem of additive manufacturing has the following assumptions: ① The AM machine is available from point zero; ② During the processing, each operation cannot be interrupted; ③ The AM machine can only process one component at a time, that is, a batch of components; ④ The production time of a component composed of a batch of components is fixed; ⑤ The energy consumption of producing a component is fixed; The flowchart of the algorithm is shown in the figure. Figure 3 As shown in FIG. 1 , the green nesting and scheduling method for additive manufacturing includes the following steps:
[0168] Step 1: Establish a mixed integer linear programming model for the green nesting and scheduling problem of additive manufacturing with the optimization objectives of minimizing total delay and total energy consumption; specifically, step 1 includes step 1.1, step 1.2 and step 1.3;
[0169] Step 1.1: Define parameter symbols and decision variables. Parameter definitions include: : Order number; : Number of orders; : Order collection, ; : Part number; : Total number of parts; : A collection of components, ; : Order The number of parts; : Batch number; : Maximum batch size, maximum number of parts in a single order; : Batch collection, ; : Maximum capacity of the printer; : The time it takes for the printer to print once; : The energy consumption of the printer for one print; : Order Delivery period; : Components Volume; : a very large number; : No. The production completion time of all batches of an order; : No. Order No. j The start time of production of each batch; : No. Order No. Production completion time for each batch; : No. Delays in ordering; : No. The energy consumption of an order; the decision variables include: the first decision variable, : A binary variable, if the order If the total delay is greater than 0, it is 1, otherwise it is 0; the second decision variable, : A binary variable. If Orders exist The third decision variable is 1 if there are batches, otherwise it is 0; : A binary variable. If Order No. Batches contain parts If yes, it is 1, otherwise it is 0; the fourth decision variable, : A binary variable. If Order No. The batch is Order No. The first batch is 1, otherwise it is 0; the fifth decision variable, : A binary variable. If Parts belong to the order , then it is 1, otherwise it is 0;
[0170] Step 1.2: Set the objective function to minimize the total delay and total energy consumption indicators, including: ,in, and is the weight of the two objectives;
[0171] Step 1.3: Build a constraint set, including:
[0172] Constraint 1: If an order can be completed before the delivery date, the delay of the order is 0. Otherwise, the delay of the order is the actual production completion time minus the delivery date. The expression is:
[0173]
[0174]
[0175]
[0176]
[0177]
[0178] Constraint 2: Order The energy consumption is expressed as:
[0179]
[0180] Constraint 3: Each component needs to be produced and only produced once, and its expression is:
[0181]
[0182] Constraint 4: Batch definition, its expression is:
[0183]
[0184] Constraint 5: The total volume of parts produced in a single batch cannot operate the printer volume, and its expression is:
[0185]
[0186] Constraint 6: The production start time and production completion time of all parts are greater than 0, and its expression is:
[0187]
[0188]
[0189] Constraint 7: For the start time of a non-existent batch, the production completion time is set to 0. Its expression is:
[0190]
[0191]
[0192] Constraint 8: Each batch has at most one immediate preceding batch and one immediate successor batch, and they must exist. The expression is:
[0193]
[0194]
[0195] Constraint 9: No batch can be its immediate predecessor. The expression is:
[0196]
[0197] Constraint 10: There is only one batch without a previous batch, that is, there is only one batch as the first batch, and its expression is:
[0198]
[0199] Constraint 11: Only one batch can be produced at a time, and its expression is:
[0200]
[0201]
[0202] Constraint 12: The completion time is the start processing time plus the processing time, and its expression is:
[0203]
[0204]
[0205] Constraint 13: The completion time of an order is the maximum completion time of all batches of the order, and its expression is:
[0206]
[0207] Constraint 14: Definition , when the component Belong to the order If yes, it is 1, otherwise it is 0. The expression is:
[0208] (twenty three)
[0209] Constraint 15: Parts that do not exist in the order cannot be put into the batch. Its expression is:
[0210]
[0211] Constraint 16: When batch When present, the number of components is at least 1, and its expression is:
[0212] ;
[0213] Step 2: Based on the characteristics of green nesting and scheduling problems for additive manufacturing, an improved biogeographic optimization algorithm is proposed; specifically, step 2 includes steps 2.1 to 2.11;
[0214] Step 2.1: Enter the dataset information;
[0215] Step 2.2: Parameter initialization, set population size, maximum number of iterations, maximum immigration rate, maximum emigration rate, and maximum mutation probability;
[0216] Step 2.3: Establish a coding scheme; the coding scheme needs to solve two sub-problems: Problem 1: One-dimensional nesting problem, combining some parts in the order into batches; in the nesting problem part of additive manufacturing, the complex multi-dimensional nesting problem is simplified to a one-dimensional nesting problem, considering only the volume of the parts and the capacity of the AM printer; Problem 2: Batch processing order; in traditional batch processing machine problems, the batch division is determined before scheduling, but in the nesting and scheduling problems for additive manufacturing, the batch division of parts cannot be determined in advance, so the initial scheduling order cannot be simply set by delivery date. In the present invention, the concept of production change is introduced to dynamically obtain the most urgent orders for processing; based on the above two sub-problems, this embodiment designs a one-dimensional array coding scheme, ,in is the total number of parts; the coding scheme is as follows Figure 4 As shown;
[0217] Step 2.4: Initialize the population; Specifically, this embodiment designs a heuristic strategy based on greedy and dynamic programming to initialize a solution, and the remaining population solutions are randomly initialized, which are: First, a heuristic strategy based on greedy and dynamic programming, including steps 2.4.1 to 2.4.4; Step 2.4.1: First, the sum of the volumes of the remaining parts of each order , as the approximate remaining production time , in For batch of remaining parts, find the estimated delays from all orders Largest order ; Step 2.4.2: Use a greedy algorithm to place the parts in the order into batches according to volume from large to small, until the printer cannot fit any parts of the order or there are no unproduced parts in the order; Step 2.4.3: Place the batch of parts into the printer for production, and after a fixed production time After that, the remaining delivery time for all orders , Order The estimated delay becomes , the estimated delay for the remaining orders is ; Step 2.4.4: Repeat step 2.4.1 until all components are allocated; Second, random initialization: Due to the excellent encoding and decoding mechanism, the encoding can use any random initialization sequence and will not produce infeasible solutions;
[0218] Step 2.5: Decode the code and calculate the fitness value of individuals in the initial population; Specifically, for the decoding scheme, the process is as follows: Step 2.5.1: First, we need to solve the batching problem and encode as well as After Parts make up a batch. The components must be belong to the same order, and ; Step 2.5.2: Next, determine the batch processing sequence. Through the batching in step 2.4.1, the coding can be expressed as ,in, The batch number, the batch processing order is the batch coding order ;
[0219] Step 2.6: Arrange the solutions in descending order of fitness value;
[0220] Step 2.7: Perform migration operations according to the order of population individuals based on the immigration rate and emigration rate; Specifically, the specific process of the algorithm's migration operation is as follows: the migration operator is an important operator in the biogeography optimization algorithm, which simulates the migration of species between habitats; the migration operation realizes the sharing of information between different habitats; the migration operator is a probability-based operator, which mainly calculates the immigration rate and emigration rate based on the migration model; the migration operator first needs to calculate the habitat The immigration rate To judge Whether migration is needed, and then based on the need to perform migration operations, according to the migration rate Select the habitat to be relocated The migration model used in the original biogeography optimization algorithm is a linear model. In the actual ecosystem, the migration process is much more complicated than that described by the linear model. Therefore, in the embodiment, a sinusoidal migration model that is closer to the laws of nature is used to calculate the immigration rate and the emigration rate of each candidate solution. The calculation formula of the sinusoidal migration model is as follows:
[0221]
[0222]
[0223] in, represents the maximum immigration rate, Indicates the current individualk The fitness value of represents the average fitness value, Indicates the maximum migration rate; PMX crossover is used in coding migration, two crossover sites are randomly selected, the sequences within the crossover sites are exchanged, and the sequences outside the exchange sites are obtained through neighborhood mapping; the crossover operation process is as follows Figure 5 As shown;
[0224] Step 2.8: Perform mutation operation according to the mutation rate; Specifically, the mutation operation of the algorithm is as follows: mutate two points of the code, randomly select two mutation sites, and exchange the elements of these two sites; the mutation probability formula is as follows:
[0225]
[0226] in, Represents a random number. represents the number of iterations, represents the maximum number of iterations, represents the fitness value of the habitat, Represents the average fitness value; the mutation operation process is as follows Figure 6 As shown;
[0227] Step 2.9: Perform a local search for the best individuals in the current population; Specifically, the algorithm's local search process is as follows: Establish 2 rules, where Rule 1: Since components with adjacent codes belonging to the same order may be assigned to the same batch, in order to maximize the batch, the components of the same order that are close to the maximum volume of the printer can be placed close together; Rule 2: Although the delivery date cannot fully reflect the total delay, the longer the delivery date, the smaller the delay, so the batches with shorter delivery dates can be moved forward; The steps of the local search strategy designed based on the above two rules are as follows: Step 2.9.1: Calculate the average volume of components in each order ; Step 2.9.2: Randomly select a point from the code and Move the parts belonging to the same order to the part immediately behind it; Step 2.9.3: Randomly select a point, find the batch where the point is located, and compare the delivery date with the previous batch. If the delivery date of this batch is shorter than that of the previous batch, move all the parts of this batch to the front of the previous batch;
[0228] Step 2.10: Determine whether the number of population iterations reaches the maximum number of iterations. If not, return to step S2.6. Otherwise, the algorithm terminates and outputs the population.
[0229] Step S2.11: Output the optimal solution in the population as the scheduling result; the flowchart of the algorithm is as follows Figure 3 As shown;
[0230] Step 3: A set of scheduling solutions for green nesting and scheduling problems for additive manufacturing are obtained through algorithm optimization, and a scheduling Gantt chart is drawn;
[0231] Specifically, step 3 includes: step 3.1: after the algorithm is optimized, a population is obtained, and the best individual is selected from the population as a scheduling solution for the green nesting and scheduling problem for additive manufacturing; step 3.2: a Gantt chart is drawn according to the generated scheduling solution.
[0232] In some embodiments, the above-mentioned green nesting and scheduling method for additive manufacturing can also be implemented in the following manner.
[0233] At present, there is no research on the green nesting and scheduling problem for additive manufacturing with total delay and total energy consumption as the target, so there is no public data set for comparative research. Therefore, in this embodiment, the experimental test set is generated by a random method; for the convenience of demonstration, this embodiment simplifies the problem scale, and the test set of the embodiment is shown in Table 1; the algorithm code is written in Java, and the algorithm operating environment is 12th Gen Intel(R) Core(TM) i7-12700H 2.30 GHz, 16.0GBRAM, windows11X64 operating system; wherein the algorithm parameters are set as follows: population size is 200, maximum number of iterations is 200, maximum migration rate is 1.4, maximum migration rate is 1.0, maximum mutation probability is 1.0, and two target weights are , ;
[0234] Table 1: Test set
[0235]
[0236] In this example, there is one AM machine with a capacity of 100 ( ), the time for the AM machine to print a batch of parts is 12 hours (h), and the fixed energy consumption is 12 (degrees); 3 orders were received in a certain week, and the number of parts in each order was 5, 7, and 8 parts, respectively, for a total of 20 parts. The delivery deadlines for the three orders were 36 hours, 72 hours, and 66 hours, respectively. The volumes of each part are shown in the table; when the scheduling method of this embodiment is not adopted, the production plan is first-come-first-served, and the production plan is as follows Figure 7 As shown; the machine produces according to the order of parts, the total delay is 42h, the total energy consumption is 108 degrees, and the target value ; After adopting the scheduling method of this embodiment, when the machine is idle, the strategy of the proposed algorithm is used to estimate the most urgent order at the moment, and a batch of parts in the order is selected for batch production; the production plan made by the algorithm of this embodiment is as follows Figure 8As shown; Indicates parts, Indicates the volume of the component. A batch of components is grouped into a component and put into the AM machine for production. Its production time and energy consumption are fixed; the total delay is 0, the total energy consumption is 72 degrees, and the target value is ; Comparing the above two production plans, the total delay is shortened by 42 hours and the total energy consumption is reduced by 39 degrees by using this algorithm; it can be seen that the green nesting and scheduling method for additive manufacturing proposed in this embodiment has obvious improvements on order delays and energy consumption.
[0237] This embodiment provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the green nesting and scheduling method for additive manufacturing are implemented. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), a random access memory (RAM), a flash memory, a hard disk drive (HDD) or a solid-state drive (SSD), etc.; the storage medium may also include a combination of the above-mentioned types of memory.
[0238] This embodiment provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, the steps of the green nesting and scheduling method for additive manufacturing are implemented.
[0239] like Fig. 9As shown, the computer device may include: at least one processor 121, such as a CPU (Central Processing Unit), at least one communication interface 123, a memory 124, and at least one communication bus 122. Among them, the communication bus 122 is used to realize the connection and communication between these components. Among them, the communication interface 123 may include a display screen (Display), a keyboard (Keyboard), and the optional communication interface 123 may also include a standard wired interface and a wireless interface. The memory 124 may be a high-speed RAM memory (Random Access Memory, volatile random access memory), or a non-volatile memory (non-volatile memory), such as at least one disk memory. The memory 124 may also be at least one storage device located away from the aforementioned processor 121. Among them, the memory 124 stores an application program, and the processor 121 calls the program code stored in the memory 124 to perform any of the above method steps. Among them, the communication bus 122 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The communication bus 122 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig. 9Only one line is used to represent it, but it does not mean that there is only one bus or one type of bus. Among them, the memory 124 may include a volatile memory (English: volatile memory), such as a random access memory (English: random-access memory, abbreviated: RAM); the memory may also include a non-volatile memory (English: non-volatile memory), such as a flash memory (English: flash memory), a hard disk drive (English: hard disk drive, abbreviated: HDD) or a solid-state drive (English: solid-state drive, abbreviated: SSD); the memory 124 may also include a combination of the above-mentioned types of memory. Among them, the processor 121 may be a central processing unit (English: central processing unit, abbreviated: CPU), a network processor (English: network processor, abbreviated: NP) or a combination of CPU and NP. Among them, the processor 121 may further include a hardware chip. The above-mentioned hardware chip may be an application-specific integrated circuit (English: application-specific integrated circuit, abbreviated: ASIC), a programmable logic device (English: programmable logic device, abbreviated: PLD) or a combination thereof. The PLD may be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. Optionally, the memory 124 is also used to store program instructions. The processor 121 may call program instructions to implement the green nesting and scheduling method for additive manufacturing as in this embodiment.
[0240] The embodiments of the present invention are described above in conjunction with the accompanying drawings, but the present invention is not limited to the above-mentioned specific implementation modes, which are merely illustrative rather than restrictive. Under the guidance of the present invention, ordinary technicians in this field can also make many forms without departing from the scope of protection of the present invention and the claims, all of which are within the protection of the present invention.
Claims
1. A green nesting and scheduling method for additive manufacturing, characterized in that: The following steps are involved: S1: Obtaining parameters of the task to be scheduled, and constructing a mixed integer linear programming model according to the parameters of the task to be scheduled; S2: Based on the mixed integer linear programming model, using the biogeographic optimization algorithm, design an improved biogeographic optimization method; S3: using the improved biogeographic optimization method, obtaining a scheduling plan and a scheduling Gantt chart; The mixed integer linear programming model includes an objective function and a constraint set; The objective function is used to minimize the total delay and total energy consumption indicators, such as the formula: , in, represents the minimization function, is the objective function, is the order number, and is the target weight, For the The delay of an order, For the Energy consumption per order; Step S2 specifically includes: S21: initializing parameters according to the task data set information and the biogeography optimization algorithm; S22: constructing an array code according to the task data set information; S23: initializing the population according to the task data set information and the biogeography optimization algorithm; S24: decoding according to the array code to obtain the fitness value of the individuals in the initial population; S25: performing a migration operation according to the fitness value; S26: performing a mutation operation according to the mutation rate; S27: performing a local search for the best individual in the current population according to the current population and individuals; S28: judging whether the number of population iterations reaches the preset maximum number of iterations, if the number of population iterations does not reach the preset maximum number of iterations, returning to step S25; if the number of population iterations reaches the preset maximum number of iterations, the method terminates, and the optimal solution in the population is obtained, and then the scheduling result is obtained. The above steps are the improved biogeography optimization method; Step S22 specifically includes: constructing an array code according to the task data set information, such as the formula: , in, Encodes a one-dimensional array. For the The part number of the component, is the total number of parts.
2. The green nesting and scheduling method for additive manufacturing according to claim 1, characterized in that: The parameters of the tasks to be scheduled include order number, number of orders, order set, part number, total number of parts, part set, number of parts for each order, batch number, maximum number of batches, batch set, maximum capacity of the printer, time consumed by the printer for one print, energy consumption of the printer for one print, delivery date of each order and volume of each part.
3. The green nesting and scheduling method for additive manufacturing according to claim 1, characterized in that: The constraint set includes a first constraint, a second constraint, a third constraint, a fourth constraint, a fifth constraint, a sixth constraint, a seventh constraint, an eighth constraint, a ninth constraint, a tenth constraint, an eleventh constraint, a twelfth constraint, a thirteenth constraint, a fourteenth constraint, a fifteenth constraint, and a sixteenth constraint; The first constraint is: if an order can be completed before the delivery date, the delay of the order is 0, otherwise the delay of the order is the actual production completion time minus the delivery date, as shown in the formula: , , , , , , , , , , in, is a very large number; is the first decision variable, indicating that if the order If the total delay of is greater than 0, it is 1, otherwise it is 0; For the The production completion time of all batches of an order; For orders Delivery period; is the order collection; For the Delays in ordering; The second constraint is the order Energy consumption, such as the formula: , , in, For the Energy consumption per order; The batch number; is a batch collection; is the second decision variable, indicating that if Orders exist If there are multiple batches, it is 1; otherwise, it is 0; The energy consumption of the printer for one print; The third constraint is that each component needs to be produced and only produced once, as shown in the formula: , in, is the third decision variable, indicating that if Order No. Batches contain parts If yes, it is 1, otherwise it is 0; is a collection of parts; The fourth constraint is a batch definition, such as the formula: , in, For the The number of parts contained in an order; The fifth constraint is: the total volume of production parts of a single batch cannot operate the printer volume, as shown in the formula: , in, For components Volume; is the maximum volume of the printer; The sixth constraint is: the production start time and production completion time of all parts are greater than 0, as shown in the formula: , , , , in, For the Order No. j The start time of production of each batch, For the Order No. Production completion time for each batch; The seventh constraint is: for a batch that does not exist, the production completion time is set to 0, as shown in the formula: , , , , , , The eighth constraint is: each batch has at most one preceding batch and one succeeding batch, and they must exist, as shown in the formula: , , , , , , in, is the fourth decision variable, indicating that if Order No. The batch is Order No. The previous batch is 1, otherwise it is 0; The ninth constraint is: no batch can be its immediate predecessor batch, as shown in the formula: , , , The tenth constraint is: there is only one batch without an immediate preceding batch, that is, there is only one batch as the first batch, as shown in the formula: , The 11th constraint is: only one batch can be produced at one time, as shown in the formula: , , The twelfth constraint is: the completion time is the start processing time plus the processing time, such as the formula: , , The 13th constraint is: the completion time of an order is the maximum completion time of all batches of the order, as shown in the formula: , in, is the maximization function; The 14th constraint is: when the component Belong to the order If yes, it is 1, otherwise it is 0, as shown in the formula: , in, is the fifth decision variable, indicating that if Parts belong to the order , then it is 1, otherwise it is 0; The 15th constraint is: Parts that do not exist in the order cannot be put into the batch, such as the formula: , The 16th constraint is: when the batch When present, the number of components is at least 1, as shown in the formula: 。 4. The green nesting and scheduling method for additive manufacturing according to claim 1, characterized in that: Step S3 specifically includes: S31: using an improved biogeographic optimization method to obtain a population; selecting the best individual from the population to obtain a scheduling plan; S32: Obtain a scheduling Gantt chart according to the scheduling plan.
5. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the green nesting and scheduling method for additive manufacturing as described in any one of claims 1 to 4 are implemented.
6. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the green nesting and scheduling method for additive manufacturing as described in any one of claims 1-4 are implemented.
Citation Information
Patent Citations
Additive manufacturing SLM different parallel machine scheduling method and system considering energy consumption
CN114115161A
Layout and scheduling method of additive manufacturing system for multi-workpiece mixed printing
CN115994444A