Energy-saving scheduling method for heterogeneous distributed assembly replacement flow shop
By using a distributed multi-group collaborative evolution algorithm in the distributed installation and configuration exchange workshop, a multi-objective optimization model is built to minimize the maximum completion time and total energy consumption, and the problems of long scheduling and high energy consumption in the installation and configuration exchange workshop under heterogeneous environments are solved, and an efficient and low-energy production and processing solution is achieved.
Patent Information
- Application Number
- CN202510087719.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-20
- Publication Date
- 2025-04-22
AI Technical Summary
The prior art is difficult to effectively solve the scheduling problem of distributed installation and configuration exchange workshops, especially in heterogeneous environments, where there are problems of time-consuming and high energy consumption.
The heterogeneous distributed installation and configuration conversion workshop energy-saving scheduling method is adopted based on distributed multiple group co-evolution algorithms. By building a multi-objective optimization model, the maximum completion time and total energy consumption are considered, and the distributed multiple group co-evolution algorithm is used to generate production and processing solutions with short time and low energy consumption.
It realizes the generation of production and processing solutions with short time and low energy consumption in heterogeneous distributed installation and configuration conversion workshops, which improves production efficiency, reduces energy consumption, and reduces the manufacturing cycle and manufacturing costs of manufacturing enterprises.
Smart Images

Figure CN119861674A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of flow shop scheduling, and in particular to an energy-saving scheduling method for heterogeneous distributed assembly replacement flow shops. Background Art
[0002] Against the backdrop of accelerating economic globalization and fierce market competition, the traditional centralized production model no longer meets the needs of manufacturing companies. The development of cyber-physical systems and artificial intelligence has promoted distributed production to become the dominant model, while assembly production, due to its modular characteristics, adapts to the production of multiple varieties and small batches of products and meets the personalized needs of customers. Distributed assembly production systems combine the advantages of both, improve production efficiency and market adaptability, and are widely used in industries such as automobiles and semiconductors. At the same time, the high energy consumption and high emission characteristics of the manufacturing industry make it a major source of energy consumption. To achieve sustainable development, manufacturing companies need to promote low-carbon and energy-saving manufacturing models.
[0003] The distributed assembly permutation flow shop scheduling problem (DAPFSP) is a key problem. It has been proven to be an NP-hard problem and there is no effective polynomial algorithm to solve it. Mathematical programming algorithms are limited by their long running time. Metaheuristic algorithms are introduced as an efficient strategy to obtain satisfactory solutions to DAPFSP and its variants at different scales within a few seconds or tens of seconds. At present, most of the research on DAPFSP is based on the assumption of isomorphic workshops, but there are differences in the processing capacity and transportation costs of different factories in the real production environment. In order to be closer to actual production, it is particularly important to take these realistic factors into consideration. In addition, with the increasing environmental pressure, incorporating energy-saving concepts into the research on DAPFSP is of great significance to promoting the green sustainability of the manufacturing industry. Summary of the invention
[0004] The present invention aims to solve the shortcomings of the above-mentioned prior art and proposes an energy-saving scheduling method for a heterogeneous distributed assembly replacement flow shop based on a distributed multi-population collaborative evolutionary algorithm, in order to obtain a production plan with short production time and low energy consumption for production and processing, thereby improving production and processing efficiency and reducing energy consumption, so as to reduce the manufacturing cycle and manufacturing cost of manufacturing enterprises.
[0005] In order to achieve the above object, the technical solution of the present invention is as follows:
[0006] The energy-saving scheduling method for heterogeneous distributed assembly replacement flow shop of the present invention is characterized in that the energy-saving scheduling method is performed by A processing factory uses machines to collect the workpieces to be processed After processing, it is transported to the assembly factory and assembled by an assembly machine. Workpieces are assembled into a product set A distributed assembly replacement flow shop, where Represents the set of workpieces to be processed No. Workpieces, Represents the set of workpieces to be processed The total number of workpieces in , let any Processing plants have The states of the machines include: processing state, idle state, and shutdown state, and the energy consumption of the machines is different in each state; the workpiece is allowed to be processed on any machine, and the workpiece at any time is only processed on one machine; the energy-saving scheduling method of the distributed assembly replacement flow shop is carried out according to the following steps:
[0007] Step 1: Use formula (1) to construct the objective function of the distributed assembly replacement flow shop energy-saving scheduling model , including: minimizing the maximum completion time and total energy consumption , let the objective function The distributed two-dimensional space is the target space;
[0008] (1)
[0009] In formula (1), Represents a collection of products Middle Products The time when assembly is completed; D represents the product collection Total number of products in; Indicates the total number of moments; Indicates Unit energy cost per moment; Indicates the next processing stage The first processing plant Is the machine in is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in is in idle state at the moment. If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in is in the closed state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in idle state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in the closed state at the moment. If so, let =1, otherwise, let =0;
[0010] Step 2: Construct the constraint conditions of the distributed assembly replacement flow shop energy-saving scheduling model;
[0011] Step 2.1, use formula (2) to construct the allocation relationship constraint between the processing plant and the workpiece;
[0012] (2)
[0013] In formula (2), Represents the index of the artifact; Represents the jth workpiece Is it assigned to processing factory, if so, , otherwise, let ; Indicated in In a processing plant, the kth workpiece Is it in the jth workpiece Before processing, if so, then , otherwise, let ;
[0014] Step 2.2, use formula (3) to construct the time constraint of the workpiece in the processing factory;
[0015] (3)
[0016] In formula (3), Indicates that the jth workpiece is in The first processing plant The time when processing starts on each machine; Indicates The workpiece is in The first processing plant Time to complete processing on a machine; Indicates The workpiece is in The first processing plant Time to complete processing on a machine; Indicates The workpiece is in The first processing plant Total processing time on the machine; For the The workpiece is in The first processing plant Total processing time of all machines; Indicated in Among the processing plants, Workpieces Is it in The moment is placed in If it is processed on a machine, then , otherwise, let ; L represents a positive integer;
[0017] Step 2.3, use formula (4) to construct the machine state constraints in the processing plant;
[0018] (4)
[0019] In formula (4), Indicates the processing time of the machine; Indicates the next processing stage The first processing plant Is the machine in idle state at the initial time? If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in At the processing moment, it is in the processing state. If so, let =1, otherwise, let =0; A binary auxiliary variable representing the processing stage;
[0020] Step 2.4, construct the assembly sequence constraint of the product using formula (5);
[0021] (5)
[0022] In formula (5), express The serial number of the product; Indicates the total number of products; Indicates Products Is it in Products Start assembly before, if so, then make , otherwise, let ; Indicates Products Is it in Products Start assembly before, if so, then make , otherwise, let ; Indicates Products Time to complete assembly; Indicates Products Time to complete assembly; Indicates Products Total assembly time; Indicates virtual products Is it in Products Start assembly before, if so, then make , otherwise, let ;
[0023] Step 2.5, construct the assembly time constraint of the product using formula (6);
[0024] (6)
[0025] In formula (6), Indicates The workpiece is in The first processing plant The time it takes for a machine to complete processing; Indicates Transportation time from a processing plant to an assembly plant; Indicates Workpieces Is it the Products If so, then let , otherwise, let ; Indicates Products The time when assembly starts on the assembly machine; Indicates Products In the Is it assembled on the assembly machine at this moment? If so, let , otherwise, let ;
[0026] Step 2.6, use formula (7) to construct the state constraints of the assembly machines in the assembly plant;
[0027] (7)
[0028] In formula (7), Indicates the assembly time of the assembly machine; Indicates whether the assembly machine is The assembly is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is idle at the initial moment. If so, let =1, otherwise, let =0; A binary auxiliary variable representing the assembly stage;
[0029] Step 3: Use the distributed multi-population co-evolution algorithm to solve the distributed assembly replacement flow shop energy-saving scheduling model and generate a heterogeneous distributed assembly replacement flow shop energy-saving scheduling plan.
[0030] The energy-saving scheduling method for heterogeneous distributed assembly replacement flow shop described in the present invention is characterized in that step 3 is performed according to the following process;
[0031] Step 3.1: Define population generation ,initialization ;
[0032] Step 3.2: Set the maximum number of iterations to The size of the population is , the ratio of the dominant subpopulation is ;
[0033] Step 3.3, set Generation population Each individual in The workpiece sequence is composed of the serial numbers of workpieces, and the nearest neighbor algorithm, the shortest processing time priority algorithm and the random generation algorithm are used to Initialize some individuals in , so as to obtain Generation population = ,in, express The individual;
[0034] Step 3.4: After normalization, the normalized Generation population ,in, express After normalization individual;
[0035] Step 3.5: Calculate using formula (1) The corresponding maximum completion time and total energy consumption ,get The corresponding target vector =( );
[0036] Step 3.6, judgment The target vector =( ) and Generation population Any Individual The target vector =( ) satisfies formula (8) or formula (9). If so, it means for The non-dominated individuals, otherwise, represent To dominate individuals; All non-dominated individuals in Non-dominated population ;
[0037] (8)
[0038] (9)
[0039] Step 3.7: In the target space, take a reference vector with an angle of 30 degrees with the horizontal axis. and a reference vector with an angle of 60 degrees to the horizontal axis , and order and Any reference vector in is denoted as ; ;
[0040] Step 3.8: Calculate using formula (10) The corresponding target vector With Reference vector The angle between , and Assign to the subpopulation of the reference vector corresponding to the minimum angle, so that according to the position of the individual in the target space, Divide into Three subpopulations of the generation ,in, Indicates Substitute the upper left subpopulation, Indicates The intermediate subpopulation, Indicates Substitute the lower right subpopulation, Any subpopulation is denoted as , ;
[0041] (10)
[0042] In formula (10), express The module length; express The module length;
[0043] Step 3.9: According to and The target vector of and Optimize them separately and get The upper left subpopulation after generation optimization and The lower right subpopulation after generation optimization ;
[0044] according to The target vector of , using the improved crowding distance Algorithm pair Optimize and get Intermediate subpopulation after generation optimization ;
[0045] Step 3.10: Follow the process of step 3.6 to obtain any optimized sub-population The non-dominated solution set ;
[0046] Step 3.11: If , then All individuals in Generation population , return to step 3.4 to execute sequentially; otherwise, Assign to Then, execute step 3.12; where, The number of population information exchanges;
[0047] Step 3.12, judgment , if yes, go to step 3.13; otherwise, Assign to Then, return to step 3.9 and execute sequentially;
[0048] Step 3.13: Each individual in performs a variable neighborhood local search and compares the searched individuals with After the individuals in are merged, the merged solution set is obtained ;
[0049] Step 3.14: Follow the process in step 3.6. The non-dominated individuals in are added to the non-dominated solution set , thus obtaining the The non-dominated solution set after generation update ;
[0050] Step 3.15: Calculate according to step 3.5 The Individual The target vector =( ,from Randomly select the Workpieces , and judge the processing Is the machine idle at the current processing time? If so, delay The start processing time and calculate the delay after Individual Energy consumption ,like , then Assign to ,Will Assign to ;otherwise, and remain unchanged;
[0051] Step 3.16: Follow the process in step 3.15 Each individual in the process is processed to obtain the final production and processing plan set, which is used to process the workpiece set to carry out processing;
[0052] Furthermore, the improved distribution estimation algorithm in step 3.9 is performed according to the following process:
[0053] Step 3.9.1. The upper left subpopulation ={ Any of Individual The corresponding workpiece sequence is recorded as ,in, for Middle The workpiece at the position The workpieces at two adjacent positions form a workpiece block; express The total number of individuals in
[0054] Step 3.9.2: If , according to the maximum completion time After sorting the individuals in ascending order, select the first Individuals make up Generation dominant subpopulation Otherwise, and Sub-population After merging the individuals in Generational Merged Population , so that according to the maximum completion time After sorting the individuals in ascending order, select the first Individuals make up Generation dominant subpopulation ,in, express The individual;
[0055] Step 3.9.3: Use formula (11) to construct Individual The corresponding positions and the workpiece number is Artifact block information , so the dimension is Workpiece block information matrix ;
[0056] (11)
[0057] In formula (11), express Middle Workpieces at positions; express Middle Workpieces at positions;
[0058] Step 3.9.4: Use formula (12) to construct The corresponding positions and the workpiece number is The number of times the artifact block appears , so the dimension is The three-dimensional matrix cube ;
[0059] (12)
[0060] Step 3.9.5: Calculate using formula (13) All individuals in The total number of workpiece blocks at positions ;
[0061] (13)
[0062] Step 3.9.6: = 0, use formula (14) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ;
[0063] (14)
[0064] when When , use formula (15) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ;
[0065] (15)
[0066] In formula (16), express Middle The probability and of the workpiece block at each position are:
[0067] (16)
[0068] when When , use formula (15) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ;
[0069] (17)
[0070] In formula (17), Indicates The upper left subpopulation The dominant subpopulation of express The artifact sequence of all individuals in positions and the workpiece number is The number of times the artifact block appears; express Middle The total number of different workpiece blocks appearing at each position; express Middle The probability and of different artifact blocks appearing at each position; Represents the learning rate of the probability model;
[0071] Step 3.9.7, use the roulette method to Sampling is performed to generate the The upper left subpopulation after generation optimization .
[0072] Furthermore, the improved crowding distance in step 3.9 is The algorithm uses formula (18) to obtain Intermediate subpopulation ={ } Individual The crowding distance , and by All individuals in the decision space constitute its decision space, which is composed of The target vectors of all individuals in the target space constitute the target space, so Optimize and get Intermediate subpopulation after generation optimization ;
[0073] (18)
[0074] In formula (18), express Crowding distance in decision space, express The crowding distance in the target space, Indicates Intermediate subpopulation The average crowding distance of the decision space is Indicates Intermediate subpopulation The average crowding distance of the target space is express The non-dominated level of , and has:
[0075] (19)
[0076] In formula (19), represents the sequence number of the target vector in the target space, represents the ratio of adjacent individuals, Indicates The target vector of the individual to the adjacent The Euclidean distance between the target vectors of individuals.
[0077] An electronic device of the present invention includes a memory and a processor, wherein the memory is used to store a program that supports the processor to execute the distributed assembly replacement flow shop energy-saving scheduling method, and the processor is configured to execute the program stored in the memory.
[0078] The present invention provides a computer-readable storage medium, wherein a computer program is stored on the computer-readable storage medium, and the computer program executes the steps of the distributed assembly replacement flow shop energy-saving scheduling method when the computer program is executed by a processor.
[0079] Compared with the prior art, the present invention has the following beneficial effects:
[0080] 1. The present invention aims at the actual production situation of the distributed assembly replacement flow shop, takes into account factors such as machine wear, different energy consumption rates, transportation costs and time-sharing energy costs, and establishes a multi-objective optimization model with the goal of minimizing total energy consumption costs and maximizing completion time. The model is solved by a distributed multi-population co-evolutionary algorithm to generate a set of optional production and processing solutions with short time consumption and low energy consumption. This provides a decision-making basis for enterprise managers to improve the production efficiency and reduce energy consumption of distributed assembly replacement flow shops.
[0081] 2. In the distributed multi-population collaborative evolution algorithm, the present invention designs a flexible collaborative search mechanism based on the population distribution characteristics, improves the diversity of the population, and thus obtains a more comprehensive production and processing solution for the distributed assembly replacement flow shop.
[0082] 3. The present invention divides the search space into three areas according to the location characteristics of the solution. Based on the optimization goal, the sub-populations evolve using different strategies and share information between sub-populations, which improves the overall convergence of the population, thereby obtaining a better production and processing solution for the distributed assembly replacement flow shop.
[0083] 4. Based on the critical path knowledge and the time-sharing energy cost characteristics, the present invention designs a variable neighborhood search strategy with four neighborhoods to improve the local optimization capability. The processing time sequence of the workpieces is adjusted through the electricity price adjustment strategy, and the processing in the high energy consumption period is moved to the low energy consumption period to reduce the total energy consumption. This enables the scheduling method to obtain a processing plan with better energy consumption under the constraint of meeting the maximum completion time. BRIEF DESCRIPTION OF THE DRAWINGS
[0084] Figure 1 is a method sequence diagram of the present invention;
[0085] Figure 2 This is a flow chart of the distributed multi-population co-evolution algorithm involved in the present invention;
[0086] Figure 3 This is a flow chart of the improved distribution estimation algorithm involved in the present invention. DETAILED DESCRIPTION
[0087] In this embodiment, a distributed assembly replacement flow shop energy-saving scheduling method for heterogeneous is based on a distributed multi-population collaborative evolution algorithm for solving Distributed assembly replacement flow shop scheduling problem. There is a set of distributed assembly replacement flow workshops consisting of A product consisting of , any of the artifacts can be assigned to The workpiece is processed in any of the processing plants and processed in sequence by the machines in the plant. After the workpiece is processed, it is transported to the assembly plant for assembly. Considering the differences in wear and maintenance of the machines in the factory, the processing time of the same workpiece on the machines in different factories may be different. Considering the transportation cost from the processing plant to the assembly plant, the time-sharing energy cost of the processing and assembly machines at different times, the entire production process includes three stages, namely the production stage, the transportation stage and the assembly stage. Specifically, if Figure 1 As shown, the method is performed in the following steps:
[0088] Step 1: Use formula (1) to construct the objective function of the distributed assembly replacement flow shop energy-saving scheduling model , including: minimizing the maximum completion time and total energy consumption , let the objective function The distributed two-dimensional space is the target space;
[0089] (1)
[0090] In formula (1), Represents a collection of products Middle Products The time when assembly is completed; D represents the product collection Total number of products in; Indicates the total number of moments; Indicates Unit energy cost per moment; Indicates the next processing stage The first processing plant Is the machine in is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in is in idle state at the moment. If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in is in the closed state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in idle state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in the closed state at the moment. If so, let =1, otherwise, let =0.
[0091] Step 2: Construct the constraint conditions of the distributed assembly replacement flow shop energy-saving scheduling model;
[0092] Step 2.1, use formula (2) to construct six allocation relationship constraints between the processing plant and the workpiece;
[0093] (2)
[0094] In formula (2), Represents the index of the artifact; Represents the jth workpiece Is it assigned to processing factory, if so, , otherwise, let ; Indicated in In a processing plant, the kth workpiece Is it in the jth workpiece Before processing, if so, then , otherwise, let ; Among them, the first allocation relationship constraint is used to ensure that each workpiece j is only assigned to one processing factory f for processing; the second and third allocation relationship constraints are used to ensure that each workpiece Assigned Factory is fixed; the fourth assignment constraint is used to ensure that each workpiece There is at most one successor artifact ; The fifth allocation constraint is used to ensure that each processing plant The virtual artifact in only appears once; the sixth assignment constraint is used to ensure that an artifact Cannot be another artifact at the same time The predecessor and successor artifacts of .
[0095] Step 2.2, use formula (3) to construct the seven time constraints of the workpiece in the processing factory;
[0096] (3)
[0097] In formula (3), Indicates that the jth workpiece is in The first processing plant The time when processing starts on each machine; Indicates The workpiece is in The first processing plant Time to complete processing on a machine; Indicates The workpiece is in The first processing plant Time to complete processing on a machine; Indicates The workpiece is in The first processing plant Total processing time on the machine; For the The workpiece is in The first processing plant Total processing time of all machines; Indicated in Among the processing plants, Workpieces Is it in The moment is placed in If it is processed on a machine, then , otherwise, let ; L represents a positive integer. The first time constraint is used to ensure that the workpiece In the latter machine The time to start processing on the previous machine is not less than that on the previous machine. The second time constraint is used to ensure that the workpiece in the processing sequence On a machine The start processing time of the previous workpiece is not less than The completion time on this machine; the third time constraint is used to represent the workpiece The completion time is equal to the start time plus the processing time; the fourth time constraint is used to represent a certain workpiece In the assigned processing plant The actual processing time in the fifth time constraint is used to ensure that the processing factory Medium Machine The processing time is equal to its processing time; the sixth and seventh time constraints are used to ensure that the workpiece In the processing plant The processing process will not be interrupted.
[0098] Step 2.3, use formula (4) to construct the six state constraints of the machines in the processing plant;
[0099] (4)
[0100] In formula (4), Indicates the processing time of the machine; Indicates the next processing stage The first processing plant Is the machine in idle state at the initial time? If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in At the processing moment, it is in the processing state. If so, let =1, otherwise, let =0; Binary auxiliary variables representing the processing stage; the first state constraint is used to represent the processing plant Machines in There are three states: processing, idle, and closed, and at a certain moment, the machine can only be in one of the three states; the second and third state constraints are used to define the processing factory Medium Machine The idle state; the fourth state constraint is used to ensure that In the example, all machines are not idle at the beginning; the fifth and sixth state constraints are used to define the processing factory. Medium Machine The closed state.
[0101] Step 2.4, use formula (5) to construct the five assembly sequence constraints of the product;
[0102] (5)
[0103] In formula (5), express The serial number of the product; Indicates the total number of products; Indicates Products Is it in Products Start assembly before, if so, then make , otherwise, let ; Indicates Products Is it in Products Start assembly before, if so, then make , otherwise, let ; Indicates Products Time to complete assembly; Indicates Products Time to complete assembly; Indicates Products Total assembly time; Indicates virtual products Is it in Products Start assembly before, if so, then make , otherwise, let ; Among them, the first assembly order constraint and the second assembly order constraint are used to ensure that each product in the assembly sequence There is only one predecessor or one successor product; the third assembly order constraint is used to ensure that one product Cannot be another product at the same time predecessor and successor products; the fourth assembly order constraint is used to ensure that a product Cannot be another product at the same time predecessor and successor products; the fifth assembly order constraint is used to ensure that there is only one virtual product;
[0104] Step 2.5, construct the six assembly time constraints of the product using formula (6);
[0105] (6)
[0106] In formula (6), Indicates The workpiece is in The first processing plant The time it takes for a machine to complete processing; Indicates Transportation time from a processing plant to an assembly plant; Indicates Workpieces Is it the Products If so, then let , otherwise, let ; Indicates Products The time when assembly starts on the assembly machine; Indicates Products In the Is it assembled on the assembly machine at this moment? If so, let , otherwise, let ; Among them, the first assembly time constraint and the second assembly time constraint are used to ensure that each product Assembly can only start after all products in its workpiece sequence have been processed. The third assembly time constraint is used to indicate that the maximum completion time should be greater than or equal to the assembly completion time of all products. The fourth and fifth assembly time constraints are used to ensure that products There will be no interruptions in the assembly plant; the sixth assembly time constraint is used to ensure that the product The sum of the assembly time periods of is equal to its assembly time;
[0107] Step 2.6, use formula (7) to construct the six state constraints of the assembly machines in the assembly plant;
[0108] (7)
[0109] In formula (7), Indicates the assembly time of the assembly machine; Indicates whether the assembly machine is The assembly is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is idle at the initial moment. If so, let =1, otherwise, let =0; A binary auxiliary variable representing the assembly stage; the first state constraint is used to indicate that the machines in the assembly plant have processing, idle, and shutdown states, and in a certain period of time, the machines can only be in one of the three states; the second and third state constraints are used to define the idle state of the machines in the assembly plant; the fourth state constraint is used to ensure that the assembly machine is not in the idle state at the initial moment; the fifth and sixth state constraints are used to define the shutdown state of the assembly machine in the assembly plant;
[0110] Step 3: Use the distributed multi-population co-evolutionary algorithm to solve the distributed assembly replacement flow shop energy-saving scheduling model and generate a heterogeneous distributed assembly replacement flow shop energy-saving scheduling solution. Specifically, Figure 2 As shown;
[0111] Step 3.1: Define population generation ,initialization ;
[0112] Step 3.2: Set the maximum number of iterations to The size of the population is , the ratio of the dominant subpopulation is ;
[0113] Step 3.3, set Generation population Each individual in The workpiece sequence is composed of the serial numbers of workpieces, and the nearest neighbor algorithm, the shortest processing time priority algorithm and the random generation algorithm are used to Initialize some individuals in , so as to obtain Generation population = ,in, express The individual;
[0114] Step 3.4: After normalization, the normalized Generation population ,in, express After normalization individual;
[0115] Step 3.5: Calculate using formula (1) The corresponding maximum completion time and total energy consumption ,get The corresponding target vector =( );
[0116] Step 3.6, judgment The target vector =( ) and Generation population Any Individual The target vector =( ) satisfies formula (8) or formula (9). If so, it means for The non-dominated individuals, otherwise, represent To dominate individuals; All non-dominated individuals in Non-dominated population ;
[0117] (8)
[0118] (9)
[0119] Step 3.7: In the target space, take a reference vector with an angle of 30 degrees with the horizontal axis. and a reference vector with an angle of 60 degrees to the horizontal axis , and order and Any reference vector in is denoted as ; ;
[0120] Step 3.8: Calculate using formula (10) The corresponding target vector With Reference vector The angle between , and Assign to the subpopulation of the reference vector corresponding to the minimum angle, so that according to the position of the individual in the target space, Divide into Three subpopulations of the generation ,in, Indicates Substitute the upper left subpopulation, Indicates The intermediate subpopulation, Indicates Substitute the lower right subpopulation, Any subpopulation is denoted as , ;
[0121] (10)
[0122] In formula (10), express The module length; express The module length;
[0123] Step 3.9: According to and The target vector of and Optimize them separately and get The upper left subpopulation after generation optimization and The lower right subpopulation after generation optimization ;
[0124] according to The target vector of , using the improved crowding distance Algorithm pair Optimize and get Intermediate subpopulation after generation optimization ;
[0125] In the specific implementation, the improved distribution estimation algorithm in step 3.9 is performed according to the following process. Specifically, Figure 3 As shown;
[0126] Step 3.9.1. The upper left subpopulation ={ Any of Individual The corresponding workpiece sequence is recorded as ,in, for Middle The workpiece at the position The workpieces at two adjacent positions form a workpiece block; express The total number of individuals in
[0127] Step 3.9.2: If , according to the maximum completion time After sorting the individuals in ascending order, select the first Individuals make up Generation dominant subpopulation Otherwise, and Sub-population After merging the individuals in Generational Merged Population , so that according to the maximum completion time After sorting the individuals in ascending order, select the first Individuals make up Generation dominant subpopulation ,in, express The individual;
[0128] Step 3.9.3: Use formula (11) to construct Individual The corresponding positions with values Artifact block information , so the dimension is Workpiece block information matrix ;
[0129] (11)
[0130] In formula (11), express Middle Workpieces at positions; express Middle Workpieces at positions;
[0131] Step 3.9.4: Use formula (12) to construct The corresponding positions and the workpiece number is The number of times the artifact block appears , so the dimension is The three-dimensional matrix cube ;
[0132] (12)
[0133] Step 3.9.5: Calculate using formula (13) All individuals in The total number of workpiece blocks at positions ;
[0134] (13)
[0135] Step 3.9.6: = 0, use formula (14) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ;
[0136] (14)
[0137] when When , use formula (15) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ;
[0138] (15)
[0139] In formula (16), express Middle The probability and of the workpiece block at each position are:
[0140] (16)
[0141] when When , use formula (15) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ;
[0142] (17)
[0143] In formula (17), Indicates The upper left subpopulation The dominant subpopulation of express The artifact sequence of all individuals in The position workpiece serial number value is The number of times the artifact block appears; express Middle The total number of different workpiece blocks appearing at each position; express Middle The probability and of different artifact blocks appearing at each position; Represents the learning rate of the probability model;
[0144] Step 3.9.7, use the roulette method to Sampling is performed to generate the The upper left subpopulation after generation optimization .
[0145] In this embodiment, the crowding distance is improved The algorithm proceeds as follows:
[0146] First, use formula (18) to get Intermediate subpopulation ={ } Individual The crowding distance , All individuals in the decision space constitute its decision space. The target vectors of all individuals in constitute its target space;
[0147] (18)
[0148] in express The crowding distance in the decision space is obtained by calculating the weighted Euclidean distance between its neighbors. express The crowding distance in the target space is calculated using formula (19): Indicates Intermediate subpopulation The average crowding distance in the decision space, The intermediate subpopulation The average crowding distance in the target space, express non-dominated class;
[0149] (19)
[0150] In formula (19), represents the sequence number of the target vector in the target space, represents the ratio of adjacent individuals, Indicates The target vector of the individual to the adjacent The Euclidean distance between the target vectors of individuals.
[0151] Then according to The target vector of , using the improved crowding distance Algorithm pair Optimize and get Intermediate subpopulation after generation optimization ;
[0152] Step 3.10: Follow the process of step 3.6 to obtain any optimized sub-population The non-dominated solution set ;
[0153] Step 3.11: If , then All individuals in Generation population , return to step 3.4 to execute sequentially; otherwise, Assign to Then, execute step 3.12; where, The number of population information exchanges;
[0154] Step 3.12, judgment , if yes, go to step 3.13; otherwise, Assign to Then, return to step 3.9 and execute sequentially;
[0155] Step 3.13: Each individual in performs a variable neighborhood local search and compares the searched individuals with After the individuals in are merged, the merged solution set is obtained ;
[0156] The present invention adopts local search based on critical path. Usually, the maximum completion time of the scheduling solution is determined by its critical path. By adjusting the workpieces on the critical path, the completion time can be effectively shortened. Based on the critical path, four neighborhood structures are designed. Specifically, for each non-inferior solution, the exchange operation and insertion operation within the factory are performed respectively, and then the exchange operation and insertion operation between factories are performed respectively.
[0157] Step 3.14: Follow the process in step 3.6. The non-dominated individuals in are added to the non-dominated solution set , thus obtaining the The non-dominated solution set after generation update ;
[0158] Step 3.15: Calculate according to step 3.5 The Individual The target vector =( ,from Randomly select the Workpieces , and judge the processing Is the machine idle at the current processing time? If so, delay The start processing time and calculate the delay after Individual Energy consumption ,like , then Assign to ,Will Assign to ;otherwise, and remain unchanged;
[0159] Step 3.16: Follow the process in step 3.15 Each individual in the process is processed to obtain the final production and processing plan set, which is used to process the workpiece set For processing.
[0160] In this embodiment, an electronic device includes a memory and a processor, wherein the memory is used to store a program that supports the processor to execute the above method, and the processor is configured to execute the program stored in the memory.
[0161] In this embodiment, a computer-readable storage medium stores a computer program on the computer-readable storage medium, and the computer program executes the steps of the above method when executed by a processor.
Claims
1. A method for energy-saving scheduling of heterogeneous distributed assembly replacement flow shops, characterized in that: It is made during the processing stage A processing factory uses machines to collect the workpieces to be processed After processing, it is transported to the assembly factory and assembled by an assembly machine. Workpieces are assembled into a product set A distributed assembly replacement flow shop, where Represents the set of workpieces to be processed No. Workpieces, Represents the set of workpieces to be processed The total number of workpieces in , let any Processing plants have The states of the machines include: processing state, idle state, and shutdown state, and the energy consumption of the machines is different in each state; the workpiece is allowed to be processed on any machine, and the workpiece at any time is only processed on one machine; the energy-saving scheduling method of the distributed assembly replacement flow shop is carried out according to the following steps: Step 1: Use formula (1) to construct the objective function of the distributed assembly replacement flow shop energy-saving scheduling model , including: minimizing the maximum completion time and total energy consumption , let the objective function The distributed two-dimensional space is the target space; (1) In formula (1), Represents a collection of products Middle Products The time when assembly is completed; D represents the product collection Total number of products in; Indicates the total number of moments; Indicates Unit energy cost per moment; Indicates the next processing stage The first processing plant Is the machine in is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in is in idle state at the moment. If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in is in the closed state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in idle state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is is in the closed state at the moment. If so, let =1, otherwise, let =0; Step 2: Construct the constraint conditions of the distributed assembly replacement flow shop energy-saving scheduling model; Step 2.1, use formula (2) to construct the allocation relationship constraint between the processing plant and the workpiece; (2) In formula (2), Represents the index of the artifact; Represents the jth workpiece Is it assigned to processing factory, if so, , otherwise, let ; Indicated in In a processing plant, the kth workpiece Is it in the jth workpiece Before processing, if so, then , otherwise, let ; Step 2.2, use formula (3) to construct the time constraint of the workpiece in the processing factory; (3) In formula (3), Indicates that the jth workpiece is in The first processing plant The time when processing starts on each machine; Indicates The workpiece is in The first processing plant Time to complete processing on a machine; Indicates The workpiece is in The first processing plant Time to complete processing on a machine; Indicates The workpiece is in The first processing plant Total processing time on the machine; For the The workpiece is in The first processing plant Total processing time of all machines; Indicated in Among the processing plants, Workpieces Is it in the The moment is placed in If it is processed on a machine, then , otherwise, let ; L represents a positive integer; Step 2.3, use formula (4) to construct the machine state constraints in the processing plant; (4) In formula (4), Indicates the processing time of the machine; Indicates the next processing stage The first processing plant Is the machine in idle state at the initial time? If so, let =1, otherwise, let =0; Indicates the next processing stage The first processing plant Is the machine in At the processing moment, it is in the processing state. If so, let =1, otherwise, let =0; A binary auxiliary variable representing the processing stage; Step 2.4, construct the assembly sequence constraint of the product using formula (5); (5) In formula (5), express The serial number of the product; Indicates the total number of products; Indicates Products Is it in the Products Start assembly before, if so, then make , otherwise, let ; Indicates Products Is it in the Products Start assembly before, if so, then make , otherwise, let ; Indicates Products Time to complete assembly; Indicates Products Time to complete assembly; Indicates Products Total assembly time; Indicates virtual products Is it in the Products Start assembly before, if so, then make , otherwise, let ; Step 2.5, construct the assembly time constraint of the product using formula (6); (6) In formula (6), Indicates The workpiece is in The first processing plant The time it takes for a machine to complete processing; Indicates Transportation time from a processing plant to an assembly plant; Indicates Workpieces Is it the Products If so, then let , otherwise, let ; Indicates Products The time when assembly starts on the assembly machine; Indicates Products In the Is it assembled on the assembly machine at this moment? If so, let , otherwise, let ; Step 2.6, use formula (7) to construct the state constraints of the assembly machines in the assembly plant; (7) In formula (7), Indicates the assembly time of the assembly machine; Indicates whether the assembly machine is The assembly is in the processing state at the moment. If so, let =1, otherwise, let =0; Indicates whether the assembly machine is idle at the initial moment. If so, let =1, otherwise, let =0; A binary auxiliary variable representing the assembly stage; Step 3: Use the distributed multi-population co-evolution algorithm to solve the distributed assembly replacement flow shop energy-saving scheduling model and generate a heterogeneous distributed assembly replacement flow shop energy-saving scheduling plan.
2. The energy-saving scheduling method for heterogeneous distributed assembly replacement flow workshops according to claim 1 is characterized in that: Described step 3 is carried out according to the following process: Step 3.1: Define the population generation number ,initialization ; Step 3.2: Set the maximum number of iterations to The size of the population is , the ratio of the dominant subpopulation is ; Step 3.3, set Generation population Each individual in The workpiece sequence is composed of the serial numbers of workpieces, and the nearest neighbor algorithm, the shortest processing time priority algorithm and the random generation algorithm are used to Initialize some individuals in , so as to obtain Generation population = ,in, express The individual; Step 3.4: After normalization, the normalized Generation population ,in, express After normalization individual; Step 3.5: Calculate using formula (1) The corresponding maximum completion time and total energy consumption ,get The corresponding target vector =( ); Step 3.6, judgment The target vector =( ) and Generation population Any Individual The target vector =( ) satisfies formula (8) or formula (9). If so, it means for The non-dominated individuals, otherwise, represent To dominate individuals; All non-dominated individuals in Non-dominated population ; (8) (9) Step 3.7: In the target space, take a reference vector with an angle of 30 degrees with the horizontal axis. and a reference vector with an angle of 60 degrees to the horizontal axis , and order and Any reference vector in is denoted as ; ; Step 3.8: Calculate using formula (10) The corresponding target vector With Reference vector The angle between , and Assign to the subpopulation of the reference vector corresponding to the minimum angle, so that according to the position of the individual in the target space, Divide into Three subpopulations of the generation ,in, Indicates Substitute the upper left subpopulation, Indicates The intermediate subpopulation, Indicates Substitute the lower right subpopulation, Any subpopulation is denoted as , ; (10) In formula (10), express The module length; express The module length; Step 3.9: According to and The target vector of and Optimize them separately and get The upper left subpopulation after generation optimization and The lower right subpopulation after generation optimization ; according to The target vector of , using the improved crowding distance Algorithm pair Optimize and get Intermediate subpopulation after generation optimization ; Step 3.10: Follow the process of step 3.6 to obtain any optimized sub-population The non-dominated solution set ; Step 3.11: If , then All individuals in Generation population , return to step 3.4 to execute sequentially; otherwise, Assign to Then, execute step 3.12; where, The number of population information exchanges; Step 3.12, judgment , if yes, go to step 3.13; otherwise, Assign to Then, return to step 3.9 and execute sequentially; Step 3.13: Each individual in performs a variable neighborhood local search and compares the searched individuals with After the individuals in are merged, the merged solution set is obtained ; Step 3.14: Follow the process in step 3.
6. The non-dominated individuals in are added to the non-dominated solution set , thus obtaining the The non-dominated solution set after generation update ; Step 3.15: Calculate according to step 3.5 The Individual The target vector =( ,from Randomly select the Workpieces , and judge the processing Is the machine idle at the current processing time? If so, delay The start processing time and calculate the delay after Individual Energy consumption ,like , then Assign to ,Will Assign to ;otherwise, and remain unchanged; Step 3.16: Follow the process in step 3.15 to Each individual in the process is processed to obtain the final production and processing plan set, which is used to process the workpiece set For processing.
3. The energy-saving scheduling method for heterogeneous distributed assembly replacement flow shop according to claim 2 is characterized in that: The improved distribution estimation algorithm in step 3.9 is performed as follows: Step 3.9.
1. The upper left subpopulation ={ Any of Individual The corresponding workpiece sequence is recorded as ,in, for Middle The workpiece at the position The workpieces at two adjacent positions form a workpiece block; express The total number of individuals in Step 3.9.2: If , according to the maximum completion time After sorting the individuals in ascending order, select the first Individuals make up Generation dominant subpopulation Otherwise, and Sub-population After merging the individuals in Generational Merged Population , so that according to the maximum completion time After sorting the individuals in ascending order, select the first Individuals make up Generation dominant subpopulation ,in, express The individual; Step 3.9.3: Use formula (11) to construct Individual The corresponding positions and the workpiece number is Artifact block information , so the dimension is Workpiece block information matrix ; (11) In formula (11), express Middle Workpieces at positions; express Middle Workpieces at positions; Step 3.9.4: Use formula (12) to construct The corresponding positions and the workpiece number is The number of times the artifact block appears , so the dimension is The three-dimensional matrix cube ; (12) Step 3.9.5: Calculate using formula (13) All individuals in The total number of workpiece blocks at positions ; (13) Step 3.9.6: = 0, use formula (14) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ; (14) when When , use formula (15) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ; (15) In formula (16), express Middle The probability and of the workpiece block at each position are: (16) when When , use formula (15) to calculate The corresponding positions and the workpiece number is The probability of artifact blocks and , so the dimension is The three-dimensional probability matrix ; (17) In formula (17), Indicates The upper left subpopulation The dominant subpopulation of express The artifact sequence of all individuals in positions and the workpiece number is The number of times the artifact block appears; express Middle The total number of different workpiece blocks appearing at each position; express Middle The probability and of different artifact blocks appearing at each position; Represents the learning rate of the probability model; Step 3.9.7, use the roulette method to Sampling is performed to generate the The upper left subpopulation after generation optimization .
4. The energy-saving scheduling method for heterogeneous distributed assembly replacement flow shops according to claim 3 is characterized in that: The improved crowding distance in step 3.9 The algorithm uses formula (18) to obtain Intermediate subpopulation ={ } Individual The crowding distance , and by All individuals in the decision space constitute its decision space, which is composed of The target vectors of all individuals in the target space constitute the target space, so Optimize and get Intermediate subpopulation after generation optimization ; (18) In formula (18), express Crowding distance in decision space, express The crowding distance in the target space, Indicates Intermediate subpopulation The average crowding distance of the decision space is Indicates Intermediate subpopulation The average crowding distance of the target space is express The non-dominated level of , and has: (19) In formula (19), represents the sequence number of the target vector in the target space, represents the ratio of adjacent individuals, Indicates The target vector of the individual to the adjacent The Euclidean distance between the target vectors of individuals.
5. An electronic device, comprising a memory and a processor, characterized in that: The memory is used to store a program that supports the processor to execute the distributed assembly replacement flow shop energy-saving scheduling method as described in any one of claims 1-4, and the processor is configured to execute the program stored in the memory.
6. 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 distributed assembly replacement flow shop energy-saving scheduling method described in any one of claims 1 to 4 are executed.