A mixed integer programming model and dynamic programming algorithm for parallel machine scheduling considering die change

By constructing a mixed integer programming model for parallel machine scheduling that takes mold change into consideration and its dynamic programming algorithm, the processing sequence of workpieces on the machine and the use of molds are optimized, which solves the problem of time-consuming and complex mold change process and achieves improved production efficiency and economic benefits.

CN119671196BActive Publication Date: 2025-09-30ZHEJIANG UNIV OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411884452.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-20
Publication Date
2025-09-30
Estimated Expiration
2044-12-20

AI Technical Summary

Technical Problem

In modern manufacturing, frequent mold replacement (mold swapping) processes are time-consuming and complex, affecting production efficiency and increasing equipment wear and operating costs. Existing technologies are difficult to effectively incorporate into parallel machine scheduling models for optimization.

Method used

A mixed integer programming model and dynamic programming algorithm for parallel machine scheduling considering mold change are constructed. By collecting production data, defining parameters and variables, establishing objective functions and constraint formulas, and using dynamic programming algorithms to optimize the processing sequence of workpieces on the machine and mold usage, a scheduling plan that minimizes the total completion time is generated.

Benefits of technology

Effectively reduce mold change time, improve production efficiency and equipment utilization, optimize production management and resource allocation, and reduce operating costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119671196B_ABST
    Figure CN119671196B_ABST
Patent Text Reader

Abstract

This invention discloses a mixed integer programming model for parallel machine scheduling that takes into account die changes, and its dynamic programming algorithm. The model includes: 1) determining the objective function and constraints; 2) determining the processing sequence rules for workpieces processed on each parallel machine; 3) determining the dynamic programming symbols, initial conditions, recursive expressions, and objectives; and 4) determining the process for converting the dynamic programming results into a scheduling solution. This invention constructs the parallel machine scheduling problem that takes into account die changes into a mathematical programming model and uses a dynamic programming algorithm to generate a scheduling solution. The machine sequence is set as the stage sequence of the dynamic programming, and the number of workpieces assigned to each mold group is set as the stage variable for the solution. This method can efficiently solve the problem and has high technical and economic value.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a parallel machine scheduling mixed integer programming model considering die change and a dynamic programming algorithm thereof. Technical Background

[0002] In modern manufacturing, efficient scheduling of production equipment is crucial for improving production efficiency and reducing operating costs. Parallel machine scheduling systems are widely used in many industries, but in actual production, the diversity of product types often requires frequent mold changes (mold changes). The mold change process is often time-consuming and complex, not only affecting production efficiency but also potentially increasing equipment wear and operating costs. Therefore, incorporating the mold change process into the parallel machine scheduling model can more accurately simulate the actual production environment and optimize production plans. Through reasonable scheduling strategies, companies can effectively reduce mold change time and improve equipment utilization, thereby achieving efficient production management and optimal resource allocation. Summary of the Invention

[0003] In response to the technical problems disclosed in the prior art, the purpose of the present invention is to provide a mixed integer programming model for parallel machine scheduling taking mold change into consideration and its dynamic programming algorithm. The present invention can help enterprises reduce mold change time and improve production efficiency and economic benefits.

[0004] The technical solution adopted in the present invention is as follows:

[0005] A mixed integer programming model for parallel machine scheduling considering die change is proposed. The model establishment includes the following steps:

[0006] Step 1: First, collect relevant data of the production workshop, including the number of workpieces, the number of machines, the number of mold types, the processing time and preparation time of each workpiece;

[0007] Define the symbols of parameters and variables used in the specific model, and the corresponding indexes, sets, parameters and variable symbols are defined:

[0008] i,j – index of the artifact;

[0009] k – index of the machine;

[0010] h——index of mold type;

[0011] n——the number of workpieces;

[0012] m – the number of machines;

[0013] N – the set of artifacts;

[0014] M – a collection of machines;

[0015] N0 - the set of artifacts including virtual artifacts, where subscript 0 is the index of the virtual artifact;

[0016] H——number of mold types;

[0017] p j ——processing time of workpiece j;

[0018] s j — preparation time of workpiece j;

[0019] C j ——Completion time of workpiece j;

[0020] V——auxiliary large constant;

[0021]

[0022] Step 2: Construct the objective function, whose expression is shown in formula (1)

[0023]

[0024] The objective function of formula (1) is to minimize the sum of the completion time of all workpieces; Step 3: Establish the following constraint formula

[0025]

[0026]

[0027] Constraint formula (2): Each workpiece j must have a unique predecessor workpiece on a certain machine, that is, each workpiece can only have one predecessor workpiece;

[0028] Constraint formula (3): If workpiece j is processed on machine k, then workpiece j must have a predecessor workpiece on machine k, and the predecessor workpiece includes a virtual workpiece, thereby ensuring the corresponding relationship between the workpiece and the machine;

[0029] Constraint formula (4): If workpiece i is processed on machine k, then the predecessor workpiece selections of all other workpieces j on machine k must satisfy uniqueness, that is, the predecessor workpiece assignment of workpiece i on machine k will not conflict with other workpieces;

[0030] Constraint formula (5): On each machine, the virtual workpiece can only be assigned to one workpiece to ensure that the virtual workpiece does not participate in the actual processing sequence;

[0031] Constraint formula (6): used to determine whether workpiece i and workpiece j use the same mold. If Δ ij =1, it means they use the same tool, otherwise they do not use the same tool;

[0032] Constraint formula (7): Predecessor relationship timing constraint: If workpiece i is completed before workpiece j, then the completion time of workpiece j is C j At least longer than the completion time C of job i i Processing time p of multiple workpieces j j , and the preparation time of workpieces using different molds needs to be considered.

[0033] The present invention also discloses a dynamic programming algorithm for a mixed integer programming model for parallel machine scheduling considering die change, which includes the following process:

[0034] S1: Determine the processing sequence scheduling rules for the workpieces processed on each parallel machine in each stage;

[0035] S2: using a dynamic programming algorithm, allocating the number of workpieces to be processed on each machine for “workpieces using various molds”, constructing the initial conditions, recursive expressions, and objective function of the dynamic programming, wherein the objective function is to minimize the total completion time of processing all workpieces on all machines;

[0036] First, collect relevant data from the production workshop, including the types and number of molds, the preparation time and processing time of workpieces using various molds, and the number of workpieces using various molds;

[0037] H——number of mold types;

[0038] s h - Preparation time for using mold and workpiece;

[0039] p h — the processing time of the workpiece using mold h;

[0040] N h —The number of workpieces using mold h;

[0041] θ — stage number, θ is the iterative stage in dynamic programming. The total number of stages is the number of machines m. When all stages are iterated, all machines are allocated.

[0042] q θh ——The number of workpieces that have been allocated to the workpiece using mold h at stage θ, and the number of workpieces to be processed is N h -q h ;

[0043] n θh ——The number of workpieces allocated among the workpieces using mold h in stage θ;

[0044] n θ ——n θh The set under h value 1-H;

[0045] nθ ={n θh |h∈[1,H]}.

[0046] In the scheduling rules for each stage described in step S1, the scheduling rules are:

[0047] 1) Record the number of workpieces assigned to all types of molds in each stage, where the number of workpieces assigned to mold h in stage θ is recorded as n θh ;

[0048] 2) Calculate a for all types of molds at each stage θh The value of

[0049] When n θh =0, a θh Does not exist, otherwise calculate a according to the following formula θh :

[0050]

[0051] a θh It is a parameter reflecting the processing time used for workpiece sorting;

[0052] a θ(h) Yes press a θh a after sorting in descending order θh ;

[0053] n θ(h) Yes press a θ(h) The number of sorted artifacts;

[0054] 3) All kinds of mold workpieces in each stage are divided into the same group according to the tools of the same mold, and then divided into the same group according to a h The values ​​of are sorted from small to large, that is, these workpieces are arranged in groups from front to back, a (h) Yes press a h a after sorting in descending order h .

[0055] Furthermore, the following vector is constructed:

[0056] Vector d θ All d θh The vector composed of h∈[1,H], d θ ={d θ1 ,d θ2 ,...,d θH}, where d θ1 =0, thus,

[0057] vector

[0058] Vector qθ All q θh The vector composed of h∈[1,H],q θ ={q θ1 ,q θ2 ,...,q θH};

[0059] vector n θ is all n θh The vector composed of h∈[1,H], n θ ={n θ1 ,n θ2 ,...,n θH};

[0060]

[0061] e θh The calculation formula represents the total completion time of all the predecessor workpieces of the workpiece group using mold h in stage θ;

[0062] represents the sum of the total completion time of all the predecessor workpieces that are not calculated for the workpiece group using each mold in the θth stage;

[0063] The initial conditions, recursive expressions and objective functions of the dynamic programming are as follows:

[0064] ① Initial conditions:

[0065] θ = 0;

[0066]

[0067] f0(q 01 ,q 02 ,...,q 0H ) represents the total completion time, when q 01 ,q 02 ,...,q 0H are all equal to 0, that is, when the workpiece has not been assigned to the machine, the total completion time is 0;

[0068] ②Recursive expression:

[0069]

[0070] The total completion time up to the end of each phase is equal to the cumulative total completion time of the previous phase plus the total completion time of the current phase;

[0071] in It represents the sum of the completion time before the workpiece group using each mold in the θth stage multiplied by the number of workpieces;

[0072] ③Objective function:

[0073] Minf m (N)

[0074] The vector N in the objective function represents the vector q when reaching the final stage θ The vector in which all elements of reach their maximum value, reaching the final stage represents the stage θ reaches its maximum value m;

[0075] The goal is to minimize the total completion time for machining all workpieces on all machines.

[0076] Furthermore, according to the initial conditions, recursive expressions and objectives of the dynamic programming method, the output results and scheduling scheme are generated as follows: After running the above dynamic programming, the stage variable n can be output. θh and q θh The value of θ, we make a one-to-one correspondence between the stage θ and the machine sequence, that is, θ = 1 represents the first machine, n θh is the number of workpieces using h molds allocated on the θ machine, that is, the number of workpieces of each mold allocated on each machine is n θh It can be seen that these workpieces that are grouped by the same mold are sorted and scheduled according to the scheduling rule process of the present invention. Each time the workpiece mold is switched, the preparation time s corresponding to the mold needs to be added. h , the output result is the stage variable n θh and the total completion time value, the result is given by Figure 1 It is presented in the form of a Gantt chart.

[0077] The dynamic programming algorithm process used in the present invention is as follows Figure 2 shown.

[0078] The present invention abstracts the parallel machine production scheduling problem considering die change into a mixed integer programming model and uses a dynamic programming method to quickly generate a scheduling solution. BRIEF DESCRIPTION OF THE DRAWINGS

[0079] Figure 1 Schematic diagram of the scheduling scheme generated by the example of embodiment 1 of the present invention. Figure 1 The unit of the horizontal axis time is min;

[0080] Figure 2 It is an implementation flow chart of the dynamic programming algorithm of the present invention. Specific implementation methods

[0081] In order to facilitate understanding by those skilled in the art, the present invention is further described below with reference to examples and drawings. The contents mentioned in the embodiments are not intended to limit the present invention.

[0082] Example 1:

[0083] A mixed integer programming model for parallel machine scheduling considering die change is proposed. The model establishment includes the following steps:

[0084] Step 1: First, collect relevant data of the production workshop, including the number of workpieces, the number of machines, the number of mold types, the processing time and preparation time of each workpiece;

[0085] Define the symbols of parameters and variables used in the specific model, and the corresponding indexes, sets, parameters and variable symbols are defined:

[0086] i,j – index of the artifact;

[0087] k – index of the machine;

[0088] h——index of mold type;

[0089] n——the number of workpieces;

[0090] m – the number of machines;

[0091] N – the set of artifacts;

[0092] M – a collection of machines;

[0093] N0 - the set of artifacts including virtual artifacts, where subscript 0 is the index of the virtual artifact;

[0094] H——number of mold types;

[0095] p j ——processing time of workpiece j;

[0096] s j — preparation time of workpiece j;

[0097] C j ——Completion time of workpiece j;

[0098] V——auxiliary large constant;

[0099]

[0100] Step 2: Construct the objective function, whose expression is shown in formula (1)

[0101]

[0102] The objective function of formula (1) is to minimize the sum of the completion time of all workpieces; Step 3: Establish the following constraint formula

[0103]

[0104]

[0105] Constraint formula (2): Each workpiece j must have a unique predecessor workpiece on a certain machine, that is, each workpiece can only have one predecessor workpiece;

[0106] Constraint formula (3): If workpiece j is processed on machine k, then workpiece j must have a predecessor workpiece on machine k, and the predecessor workpiece includes a virtual workpiece, thereby ensuring the corresponding relationship between the workpiece and the machine;

[0107] Constraint formula (4): If workpiece i is processed on machine k, then the predecessor workpiece selections of all other workpieces j on machine k must satisfy uniqueness, that is, the predecessor workpiece assignment of workpiece i on machine k will not conflict with other workpieces;

[0108] Constraint formula (5): On each machine, the virtual workpiece can only be assigned to one workpiece to ensure that the virtual workpiece does not participate in the actual processing sequence;

[0109] Constraint formula (6): used to determine whether workpiece i and workpiece j use the same mold. If Δ ij =1, it means they use the same tool, otherwise they do not use the same tool;

[0110] Constraint formula (7): Predecessor relationship timing constraint: If workpiece i is completed before workpiece j, then the completion time of workpiece j is C j At least longer than the completion time C of job i i Processing time p of multiple workpieces j j , and the preparation time of workpieces using different molds needs to be considered.

[0111] The present invention also discloses a dynamic programming algorithm for a mixed integer programming model of parallel machine scheduling considering die change (see Figure 2 ), including the following process:

[0112] S1: Determine the processing sequence scheduling rules for the workpieces processed on each parallel machine in each stage;

[0113] S2: using a dynamic programming algorithm, allocating the number of workpieces to be processed on each machine for “workpieces using various molds”, constructing the initial conditions, recursive expressions, and objective function of the dynamic programming, wherein the objective function is to minimize the total completion time of processing all workpieces on all machines;

[0114] First, collect relevant data from the production workshop, including the types and number of molds, the preparation time and processing time of workpieces using various molds, and the number of workpieces using various molds;

[0115] H——number of mold types;

[0116] s h- Preparation time for using mold and workpiece;

[0117] p h — the processing time of the workpiece using mold h;

[0118] N h —The number of workpieces using mold h;

[0119] θ — stage number, θ is the iterative stage in dynamic programming. The total number of stages is the number of machines m. When all stages are iterated, all machines are allocated.

[0120] q θh ——The number of workpieces that have been allocated to the workpiece using mold h at stage θ, and the number of workpieces to be processed is N h -q h ;

[0121] n θh ——The number of workpieces allocated among the workpieces using mold h in stage θ;

[0122] n θ ——n θh The set under h value 1-H;

[0123] n θ ={n θh |h∈[1,H]}.

[0124] In the scheduling rules for each stage described in step S1, the scheduling rules are:

[0125] 1) Record the number of workpieces assigned to all types of molds in each stage, where the number of workpieces assigned to mold h in stage θ is recorded as n θh ;

[0126] 2) Calculate a for all types of molds at each stage θh The value of

[0127] When n θh =0, a θh Does not exist, otherwise calculate a according to the following formula θh :

[0128]

[0129] a θh It is a parameter reflecting the processing time used for workpiece sorting;

[0130] a θ(h) Yes press a θh a after sorting in descending order θh ;

[0131] n θ(h)Yes press a θ(h) The number of sorted artifacts;

[0132] 3) All kinds of mold workpieces in each stage are divided into the same group according to the tools of the same mold, and then divided into the same group according to a h The values ​​of are sorted from small to large, that is, these workpieces are arranged in groups from front to back, a (h) Yes press a h a after sorting in descending order h .

[0133] Furthermore, the following vector is constructed:

[0134] Vector d θ All d θh The vector composed of h∈[1,H], d θ ={d θ1 ,d θ2 ,...,d θH}, where d θ1 =0, thus,

[0135] vector

[0136] Vector q θ All q θh The vector composed of h∈[1,H],q θ ={q θ1 ,q θ2 ,...,q θH};

[0137] vector n θ is all n θh The vector composed of h∈[1,H], n θ ={n θ1 ,n θ2 ,...,n θH};

[0138]

[0139] e θh The calculation formula represents the total completion time of all the predecessor workpieces of the workpiece group using mold h in stage θ;

[0140] represents the sum of the total completion time of all the predecessor workpieces that are not calculated for the workpiece group using each mold in the θth stage;

[0141] The initial conditions, recursive expressions and objective functions of the dynamic programming are as follows:

[0142] ① Initial conditions:

[0143] θ = 0;

[0144]

[0145] f0(q 01 ,q 02 ,...,q 0H ) represents the total completion time, when q 01 ,q 02 ,...,q 0H are all equal to 0, that is, when the workpiece has not been assigned to the machine, the total completion time is 0;

[0146] ②Recursive expression:

[0147]

[0148] The total completion time up to the end of each phase is equal to the cumulative total completion time of the previous phase plus the total completion time of the current phase;

[0149] in It represents the sum of the completion time before the workpiece group using each mold in the θth stage multiplied by the number of workpieces;

[0150] ③Objective function:

[0151] Minf m (N)

[0152] The vector N in the objective function represents the vector q when reaching the final stage θ The vector in which all elements of reach their maximum value, reaching the final stage represents the stage θ reaches its maximum value m;

[0153] The goal is to minimize the total completion time for machining all workpieces on all machines.

[0154] Furthermore, according to the initial conditions, recursive expressions and objectives of the dynamic programming method, the output results and scheduling scheme are generated as follows: After running the above dynamic programming, the stage variable n can be output. θh and q θh The value of θ, we make a one-to-one correspondence between the stage θ and the machine sequence, that is, θ = 1 represents the first machine, n θh is the number of workpieces using h molds allocated on the θ machine, that is, the number of workpieces of each mold allocated on each machine is n θh It can be seen that these workpieces that are grouped by the same mold are sorted and scheduled according to the scheduling rule process of the present invention. Each time the workpiece mold is switched, the preparation time s corresponding to the mold needs to be added. h , the output result is the stage variable n θh and total completion time values, and the results are presented in the form of a Gantt chart.

[0155] Using the model disclosed in Example 1 and the dynamic programming algorithm, a calculation is performed on the processing process of a factory. The process is as follows:

[0156] The calculation example takes 4 types of molds, 2 machines, and a total of 25 workpieces.

[0157] Example description: m=2, H=4.

[0158] The set of preparation times for the four molds is s = {6, 3, 8, 5}.

[0159] The set of processing times for the four molds is p = {11, 18, 15, 13}.

[0160] The set of workpiece quantities for the four types of molds is N = {7, 8, 6, 4}.

[0161] Use Python to run the code of this dynamic programming algorithm on a personal laptop with an Apple M2 CPU and 16GB of memory, and get the solution: n 11 =7,n 12 =6,n 13 =0,n 14 =0,n 21 =0,n 22 =2,n 23 =6,n 24 =4, the optimal total completion time is f2(7,8,6,4)=2469, and the time unit is min.

[0162] By n θh The value of the solution, according to a θh The calculation formula of a 11 =11.857,a 12 =18.5,a 22 =19.5,a 23 =16.333,a 24 =14.25. Therefore, according to the schedule on each machine, θh According to the rule of sorting the values ​​from small to large, the following scheduling scheme can be obtained:

[0163] Machine 1:

[0164] Mold 1: 7 workpieces, Mold 2: 6 workpieces;

[0165] Machine 2:

[0166] Mold 4: 4 workpieces, Mold 3: 6 workpieces, Mold 2: 2 workpieces.

[0167] Then add the preparation time s of each mold before the first workpiece is processed h, we can get the final scheduling solution. The example generates a scheduling solution as follows Figure 1 shown.

[0168] Taking the optimal solution machine 1 as an example, explain e θh ,

[0169] There are two parts that make up the total completion time of the workpiece on each machine.

[0170] Δ θh , if we take mold 2 as an example, that is, here e 12 , which is the total completion time of the workpiece group without calculating the total completion time of all predecessor workpieces, but only calculating the total completion time of the workpiece group, that is, (s2+p2)+(s2+2p2)+(s2+3p2)+(s2+4p2)+(s2+5p2)+(s2+6p2), which can be obtained according to the arithmetic progression summation formula

[0171] Here Its value is the sum of the total completion time of each workpiece group without calculating all the predecessor workpieces, that is, e 11 +e 12 +e 13 +e 14 .

[0172] Here Its value is the sum of the completion time of the previous workpiece group of each mold in stage θ multiplied by the number of workpieces, only the part before each workpiece group is calculated. On machine 1, there are 2 groups of workpieces. The workpiece group of mold 1 is the workpiece group completed before the workpiece group of mold 2, and the number of workpieces in the workpiece group of mold 2 is 6. The completion time of the workpiece group of mold 1 is s1+7p1=6+7×11=83. The workpiece group of mold 2 is the last workpiece group on machine 1, that is, it is not the workpiece group before any workpiece group. The completion time of the workpiece group of mold 2 is s2+6p2=3+6×18=111, so The value is 83×6+111×0=498.

Claims

1. A mixed integer programming model for parallel machine scheduling considering die change, characterized by The establishment of the model includes the following processes: Step 1: First, collect relevant data of the production workshop, including the number of workpieces, the number of machines, the number of mold types, the processing time and preparation time of each workpiece; Define the symbols of parameters and variables used in the specific model, and the corresponding indexes, sets, parameters and variable symbols are defined: i,j – index of the artifact; k – index of the machine; h——index of mold type; n——the number of workpieces; m – the number of machines; N – the set of artifacts; M – a collection of machines; N0 - the set of artifacts including virtual artifacts, where subscript 0 is the index of the virtual artifact; H——number of mold types; p j ——processing time of workpiece j; s j — preparation time of workpiece j; C j ——Completion time of workpiece j; V——auxiliary large constant; Step 2: Construct the objective function, whose expression is shown in formula (1) The objective function of formula (1) represents minimizing the sum of the completion times of all workpieces; Step 3: Create the following constraint formula st Constraint formula (2): Each workpiece k must have a unique predecessor workpiece on a certain machine, that is, each workpiece can only have one predecessor workpiece; Constraint formula (3): If workpiece j is processed on machine k, then workpiece j must have a predecessor workpiece on machine k, and the predecessor workpiece includes a virtual workpiece, thereby ensuring the corresponding relationship between the workpiece and the machine; Constraint formula (4): If workpiece i is processed on machine k, then the predecessor workpiece selections of all other workpieces j on machine k must satisfy uniqueness, that is, the predecessor workpiece assignment of workpiece i on machine k will not conflict with other workpieces; Constraint formula (5): On each machine, the virtual workpiece can only be assigned to one workpiece to ensure that the virtual workpiece does not participate in the actual processing sequence; Constraint formula (6): used to determine whether workpiece i and workpiece j use the same mold. If Δ ij =1, it means they use the same tool, otherwise they do not use the same tool; Constraint formula (7): Predecessor relationship timing constraint: If workpiece i is completed before workpiece j, then the completion time of workpiece j is C j At least longer than the completion time C of job i i Processing time p for multiple workpieces k j , and the preparation time of workpieces using different molds needs to be considered.

2. A dynamic programming algorithm for a mixed integer programming model for parallel machine scheduling considering die change as claimed in claim 1, characterized in that The following processes are included: S1: Determine the processing sequence scheduling rules for the workpieces processed on each parallel machine in each stage; S2: Using a dynamic programming algorithm, the number of workpieces to be processed on each machine for "workpieces using various molds" is allocated, and the initial conditions, recursive expressions, and objective functions of the dynamic programming are constructed. The objective function is to minimize the total completion time for processing all workpieces on all machines. First, collect relevant data from the production workshop, including the types and number of molds, the preparation time and processing time of workpieces using various molds, and the number of workpieces using various molds; H——number of mold types; s h - Preparation time for using mold and workpiece; p h — the processing time of the workpiece using mold h; N h —The number of workpieces using mold h; θ — stage number, θ is the iterative stage in dynamic programming. The total number of stages is the number of machines m. When all stages are iterated, all machines are allocated. q θh ——The number of workpieces that have been allocated to the workpiece using mold h at stage θ, and the number of workpieces to be processed is N h -q h ; n θh ——The number of workpieces allocated among the workpieces using mold h in stage θ; n θ ——n θh The set under h value 1-H; n θ ={n θh |h∈[1,H]} In the scheduling rules for each stage described in step S1, the scheduling rules are: 1) Record the number of workpieces assigned to all types of molds in each stage, where the number of workpieces assigned to mold h in stage θ is recorded as n θh ; 2) Calculate a for all types of molds at each stage θh The value of When n θh =0, a θh Does not exist, otherwise calculate a according to the following formula θh : a θh It is a parameter reflecting the processing time used for workpiece sorting; a θ(h) Yes press a θh a after sorting in descending order θh ; n θ(h) Yes press a θ(h) The number of sorted artifacts; 3) All kinds of mold workpieces in each stage are divided into the same group according to the tools of the same mold, and then divided into the same group according to a h The values ​​of are sorted from small to large, that is, these workpieces are arranged in groups from front to back, a (h) Yes press a h a after sorting in descending order h .

3. A dynamic programming algorithm for a mixed integer programming model for parallel machine scheduling considering die change as claimed in claim 2, characterized in that Construct the following vector: Vector d θ All d θh The vector composed of h∈[1,H], d θ ={d θ1 ,d θ2 ,...,d θH }, where d θ1 =0, thus, vector Vector q θ All q θh The vector composed of h∈[1,H],q θ ={q θ1 ,q θ2 ,...,q θH }; vector n θ is all n θh The vector composed of h∈[1,H], n θ ={n θ1 ,n θ2 ,...,n θH }; e θh The calculation formula represents the total completion time of all the predecessor workpieces of the workpiece group using mold h in stage θ; represents the sum of the total completion time of all the predecessor workpieces that are not calculated for the workpiece group using each mold in the θth stage; The initial conditions, recursive expressions and objective functions of the dynamic programming are as follows: ① Initial conditions: θ = 0; f0(q 01 ,q 02 ,...,q 0H ) represents the total completion time, when q 01 ,q 02 ,...,q 0H are all equal to 0, that is, when the workpiece has not been assigned to the machine, the total completion time is 0; ②Recursive expression: The total completion time up to the end of each phase is equal to the cumulative total completion time of the previous phase plus the total completion time of the current phase; in It represents the sum of the completion time before the workpiece group using each mold in the θth stage multiplied by the number of workpieces; ③Objective function: My f m (N) The vector N in the objective function represents the vector q when reaching the final stage θ The vector in which all elements of reach their maximum value, reaching the final stage represents the stage θ reaches its maximum value m; The goal is to minimize the total completion time for machining all workpieces on all machines.

4. A dynamic programming algorithm for a mixed integer programming model for parallel machine scheduling considering die change as claimed in claim 3, characterized in that Based on the initial conditions, recursive expressions, and objectives of the dynamic programming method, the output results and scheduling plan are generated as follows: After running the above dynamic programming, the stage variable n can be output θh and q θh The value of θ, we make a one-to-one correspondence between the stage θ and the machine sequence, that is, θ = 1 represents the first machine, n θh is the number of workpieces using h molds allocated on the θ machine, that is, the number of workpieces of each mold allocated on each machine is n θh It can be seen that these workpieces that are grouped by the same mold are sorted and scheduled according to the scheduling rule process described in claim 2. Each time the workpiece mold is switched, the preparation time s corresponding to the mold needs to be added. h , the output result is the stage variable n θh and total completion time values, and the results are presented in the form of a Gantt chart.