An intelligent scheduling method for shop floor operations considering workpiece arrangement
By establishing a multi-objective optimization model and an improved three-layer chromosome model, combined with an intelligent multi-objective optimization algorithm, the production efficiency and cost problems of the aircraft workpiece spraying workshop are solved, and the precise scheduling and economic benefits of workpiece spraying are achieved.
Patent Information
- Application Number
- CN202310248317.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-15
- Publication Date
- 2025-07-29
- Estimated Expiration
- 2043-03-15
AI Technical Summary
In the prior art, the scheduling plan of the aircraft workpiece spraying workshop mainly relies on expert experience, resulting in low production efficiency and high production costs, making it difficult to accurately complete the workpiece spraying operation, resulting in an increase in storage or default costs.
A workshop operation intelligent scheduling method considering workpiece arrangement is adopted to establish a multi-objective optimization model, and an intelligent multi-objective optimization algorithm and an improved three-layer chromosome model are used to optimize the workpiece arrangement and pallet scheduling scheme through the NSGA-II algorithm, combining workpiece size, delivery date and spraying process information.
It realizes the precise completion of workpiece spraying operations while ensuring the minimum use of pallets, reduces the cost loss caused by early or delayed completion, and improves the economic benefits of aircraft workpiece spraying production lines.
Smart Images

Figure CN116360362B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a scheduling method for an aircraft workpiece spraying production line, and more particularly to an intelligent scheduling method for shop floor operations considering workpiece arrangement. Background Art
[0002] As an indispensable part of the aviation manufacturing system, the aircraft workpiece spraying shop is mainly responsible for spraying paint with functions such as rust prevention and corrosion prevention on the surface of aircraft workpieces, so as to improve the stability of the overall aircraft structure in a lightweight manner. In this shop, the same batch of orders contains workpieces of various sizes and shapes, and due to the business requirements of batch delivery, the delivery dates of each workpiece are also different. To improve production efficiency, the aircraft workpiece spraying shop often operates in a batch spraying mode. Therefore, the workpieces in the aircraft workpiece spraying shop will be first grouped and loaded onto rectangular pallets for movement and spraying, so as to reduce the negative impact of manual operation on the paint surface quality. To improve the area utilization rate of the rectangular pallet, workpieces of different shapes and sizes are usually loaded onto the same halftone. In addition, according to the logistics distribution requirements of the downstream assembly system in the aircraft workpiece spraying shop, the workpieces in the customer order need to be delivered in batches. If the spraying operation of the workpiece is completed after the delivery date required by the customer, the shop should pay a default fine. On the contrary, if the spraying operation of the workpiece is completed too early before the delivery date required by the customer, the shop will face the cost of storing the workpiece. However, at present, the aircraft workpiece spraying shop mainly relies on formulating a scheduling plan through expert experience, which is too subjective. Not only is the production efficiency low, but it is also difficult to accurately complete the spraying operation according to the delivery date, resulting in additional costs due to storage or default, increasing the production cost.
[0003] Therefore, in combination with the actual requirements of the aircraft workpiece spraying shop, in order to improve the productivity of the aircraft workpiece spraying shop and reduce the production cost, it is urgent to design a scheduling method for the aircraft workpiece spraying shop. Summary of the Invention
[0004] In order to solve the technical problems of low production efficiency and high production cost existing in formulating the scheduling plan for the aircraft workpiece spraying shop mainly relying on expert experience at present, the present invention proposes an intelligent scheduling method for shop floor operations considering workpiece arrangement.
[0005] The technical solution of the present invention is as follows:
[0006] An intelligent scheduling method for shop floor operations considering workpiece arrangement, characterized in that it includes the following steps:
[0007] Step 1: Based on the collected operation parameters and order information, establish a multi-objective optimization model with the optimization objectives of minimizing the total completion time of workpieces and minimizing the total weighted penalty;
[0008] Step 2: Establish an initial chromosome population, where each chromosome is a three-layer chromosome model, including a first-layer chromosome sequence for characterizing the workpiece layout sub-scheme, and second-layer and third-layer chromosome sequences for characterizing the pallet scheduling sub-scheme;
[0009] Step 3: Calculate the performance of each chromosome on the optimization objective, and obtain the Pareto layer number and crowding distance of each chromosome;
[0010] Step 4: Select excellent chromosomes from the current chromosome population based on the Pareto layer number and crowding distance to form a parent population;
[0011] Step 5: Generate an offspring population based on the parent population;
[0012] Step 6: Mix the current parent population and offspring population to obtain a new chromosome population, increment the population iteration count by 1, check whether the population iteration count meets the set requirements. If not, return to Step 3; if so, select the scheduling scheme located on the Pareto front from the current latest chromosome population as the basis for production scheduling.
[0013] Furthermore, the operation parameters in Step 1 include the total number of workpieces, the total number of spraying robots, the number of spraying processes required for each workpiece, the pallet size, the robot spraying time, and the workpiece geometric information; the order information includes the delivery date of each workpiece.
[0014] Furthermore, the multi-objective optimization model established in Step 1 is as follows:
[0015] Where:
[0016] and are the workpiece layout sub-scheme variable and the pallet scheduling sub-scheme variable respectively;
[0017] represents the pallet number on which the i-th workpiece is placed;
[0018] and represent the coordinates of the i-th workpiece on the pallet;
[0019] represents the spraying robot number selected for the Q-th spraying of the workpiece on the J-th pallet;
[0020] represents the start time of the Q-th spraying execution of the workpiece on the J-th pallet;
[0021] is the objective function;
[0022] The time to complete all spraying processes for the i-th workpiece;
[0023] The planned delivery date of the i-th workpiece;
[0024] and is the weight factor, with a value between 0 and 1, corresponding to the production cost consumption caused by default and storage respectively;
[0025] is the total completion time of the workpiece;
[0026] P is the total weighted penalty;
[0027] is the length of the rectangle enclosing the i-th workpiece, is the width of the rectangle enclosing the i-th workpiece;
[0028] is the length of the tray, is the width of the tray.
[0029] Furthermore, the length of the first-layer chromosome sequence described in step 2 is equal to the total number of workpieces I, and it is composed of positive integers 1 - I in a random order, and any positive integer i ∈ [ 1 , I ] can only appear once;
[0030] The lengths of the second-layer and third-layer chromosome sequences described in step 2 are both , the second-layer chromosome sequence is composed of positive integers 1 - J in a random order, and the number of times any positive integer j ∈ [ 1 , J ] appears is equal to the number of times Q that the j-th tray needs to be sprayed; the third-layer chromosome sequence is composed of positive integers 1 - K randomly, and the number of times any positive integer k ∈ [ 1 , K ] appears is not limited; J is the number of trays required to load the workpieces, obtained by decoding the first-layer chromosome sequence; K is the total number of spraying robots.
[0031] Furthermore, the method for calculating the performance of each chromosome on the optimization objective in step 3 is as follows:
[0032] First, decode the first-layer chromosome sequence using the lowest horizontal line arrangement method, arrange the workpieces according to the order of positive integers in the first-layer chromosome sequence, and obtain the workpiece arrangement sub-scheme , thereby determining the tray number where each workpiece is located;
[0033] Then, decode the chromosome sequences of the second and third layers. Any pair of real numbers j and k with the same position in the chromosome sequences of the second and third layers form a scheduling instruction, indicating that the j-th pallet is to be spray-painted once by the k-th spray-painting robot, obtaining a Gantt chart of the pallet scheduling sub-scheme containing all the spray-painting operations required for the pallets. Based on this Gantt chart, calculate the performance of each chromosome on the optimization objective.
[0034] Further, in step 3, the Pareto layer number of each chromosome is obtained by the non-dominated sorting method in the classical NSGA-II algorithm, and the crowding distance is obtained by the crowding distance calculation method in the classical NSGA-II algorithm.
[0035] Further, step 5 is specifically as follows:
[0036] Randomly select two chromosomes from the parental population as the male parent and the female parent, and set the crossover probability P 1 ∈ [ 0 , 1 ] , and randomly generate a positive integer x ∈ [ 1 , 10 ] . If , then perform crossover and mutation on the male parent and the female parent, and add the new chromosomes to the offspring population. Otherwise, directly add the male parent and the female parent to the offspring population.
[0037] Further, when performing crossover and mutation on the male parent and the female parent, use the multi-point crossover operator for the chromosome sequence of the first layer in the male parent and the female parent, and use the improved new crossover operator for the second and third layer chromosomes;
[0038] The specific steps of the multi-point crossover operator for the chromosome sequence of the first layer are as follows:
[0039] SA1. The length of the chromosome sequence of the first layer in two known three-layer chromosome models is I. Randomly construct a workpiece set , which is composed of randomly selecting I / 2 non-repeating workpiece numbers from workpiece numbers 1 to I; if I / 2 is a decimal, round up;
[0040] SA2. Traverse the workpiece set S, and inherit the same numbered ones in the male parent sequence according to the workpiece numbers in the set to the first layer sequence of the first offspring chromosome at the same positions;
[0041] SA3. For the remaining workpiece numbers from 1 to I, fill in the vacant positions in the first layer sequence of the first offspring chromosome according to their appearance order in the female parent sequence;
[0042] SA4. The generation method of the first-layer sequence of the second filial chromosome is opposite to that of the first-layer chromosome of the first filial generation, that is, first, according to the workpiece numbers in the set, the same numbers in the maternal sequence are inherited to the first-layer sequence of the second filial chromosome at the same positions, and then for the remaining workpiece numbers from 1 to I, according to the appearance order in the paternal sequence, they are filled in the vacant positions in the first-layer sequence of the second filial chromosome;
[0043] The specific steps of the improved new crossover operator for the second and third-layer chromosome sequences are as follows:
[0044] Case 1: The number of pallets J required for the second and third-layer chromosome sequences of the filial chromosome is less than the number of pallets required for the sequences of the paternal and maternal chromosomes Less:
[0045] SB1. Randomly construct a pallet set , which is composed of randomly selecting non-repeating pallet numbers from pallet numbers 1 to ; If it is a decimal, round up; If it is a decimal, round up;
[0046] SB2. Traverse the pallet set S1. If the pallet numbers in the chromosome sequence with the shorter length are the same as those in S1, then retain them at the same positions in the second-layer chromosome sequence of the filial chromosome, and at the same time, the robot numbers in the corresponding third-layer chromosome sequence are inherited to the third-layer chromosome sequence of the filial chromosome in terms of position;
[0047] SB3. For the remaining pallet numbers from 1 to , according to the appearance order in the second layer of the longer chromosome sequence, fill them in the vacant positions in the second-layer chromosome sequence of the filial chromosome, and fill the corresponding positive integers in the third-layer chromosome sequence in the corresponding positions;
[0048] SB4. Delete the pallet numbers in the second-layer sequence of the filial chromosome ( J , Min { J 1 , J 2 } ] , and the robot numbers in the corresponding positions in the third-layer chromosome sequence;
[0049] Case 2: The number of pallets J required for the second and third-layer chromosome sequences of the filial chromosome is greater than the number of pallets required for the sequences of the paternal and maternal chromosomes Both are larger
[0050] SC1. Randomly construct a pallet set , which is composed of randomly selecting non-repeating pallet numbers from pallet numbers 1 to ; If it is a decimal, round up; If it is a decimal, round up;
[0051] SC2. Traverse set S1. If the pallet number in the second-layer chromosome sequence of the chromosome with more required pallets among the male parent and the female parent is the same as the pallet number in set S1, then retain the position and inherit it to the second-layer chromosome sequence of the offspring chromosome. At the same time, the positive integer in the corresponding third-layer chromosome sequence retains the position and is inherited to the third-layer chromosome sequence of the offspring chromosome;
[0052] SC3. ( Min { J 1 , J 2 } , J ] The remaining positive integers in are randomly filled in the remaining positions of the second-layer chromosome sequence of the offspring chromosome, and the empty positions in the third-layer chromosome sequence of the offspring chromosome are randomly filled with positive integers from 1 to K;
[0053] SC4. 1 to The remaining pallet numbers in are filled in the empty positions of the second-layer chromosome sequence in the offspring chromosome according to the appearance order in the second-layer chromosome sequence of the chromosome with fewer required pallets among the male parent and the female parent, and the corresponding positive integers in the third-layer chromosome sequence are filled in the corresponding positions;
[0054] Case 3: Other situations
[0055] SD1. Randomly construct a pallet set , which is composed of randomly selecting non-repeating pallet numbers from pallet numbers 1 to ; If it is a decimal, round up;
[0056] SD2. Traverse set S1. If the pallet number in the second-layer chromosome sequence of the chromosome with fewer required pallets among the male parent and the female parent is the same as the pallet number in set S1, then retain the position and inherit it to the second-layer chromosome sequence of the offspring chromosome. At the same time, the positive integer in the corresponding third-layer chromosome sequence retains the position and is inherited to the third-layer chromosome sequence of the offspring chromosome;
[0057] SD3. The remaining pallet numbers in 1 to J are filled in the empty positions of the second-layer chromosome sequence in the offspring chromosome according to the appearance order in the second-layer chromosome sequence of the chromosome with more required pallets among the male parent and the female parent, and the corresponding pallet numbers in the third-layer chromosome sequence are filled in the corresponding positions.
[0058] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor; the special feature is that: when the processor executes the program, the above-mentioned intelligent scheduling method for workshop operations is realized.
[0059] The present invention also provides a non-volatile storage medium, on which a computer program is stored, and is characterized in that: when the computer program is executed, the above-mentioned intelligent scheduling method for workshop operations is realized.
[0060] Compared with the prior art, the present invention has the following beneficial effects:
[0061] 1. For the intelligent scheduling method for workshop operations provided by the present invention, after inputting the size information, delivery date, spraying process of the workpiece and the basic operation information of the aircraft workpiece spraying workshop into the scheduling model established by the present invention, a suitable scheduling plan can be quickly and stably searched in the global domain through the intelligent multi-objective optimization algorithm, which can assist the workshop staff in making decisions on the scheduling plan, and can accurately complete the spraying operation of the workpiece according to the delivery date of each workpiece on the premise of ensuring that all spraying processes can be completed as soon as possible with fewer pallets, reducing the cost increase caused by storing workpieces due to early completion and the additional losses caused by delayed completion, which is beneficial to improving the economic benefits of the aircraft workpiece spraying production line.
[0062] 2. In the existing scheduling methods, for the workpiece arrangement sub-scheme and the pallet scheduling sub-scheme required in the aircraft workpiece spraying workshop scheduling problem, due to different constraints considered, most optimization methods first separately optimize the workpiece arrangement sub-scheme with the minimum completion time as the goal, and then, for the optimal workpiece arrangement plan, separately optimize the pallet scheduling sub-scheme with the minimum weighted penalty as the goal. Although it avoids the complexity brought by the change of chromosome length to coding and crossover, it ignores the connection between the workpiece arrangement sub-scheme and the pallet scheduling sub-scheme. Determining the workpiece arrangement sub-scheme in advance results in that no matter how the pallet scheduling sub-scheme is optimized, a suitable result cannot be obtained.
[0063] After the multi-objective optimization model is constructed in the present invention, the NSGA-II optimization method is used as the optimization framework, and an improved three-layer chromosome model and the corresponding crossover operator are proposed, which solves the coding and crossover problems of chromosomes with variable lengths caused by the uncertain number of pallets required for workpiece arrangement, so that the scheduling method proposed by the present invention can regard the workpiece arrangement sub-scheme and the pallet scheduling sub-scheme required in the aircraft workpiece spraying workshop scheduling problem as a whole for simultaneous optimization. Description of the Drawings
[0064] Figure 1 It is the flow chart of the optimization method for the multi-objective optimization model established in the present invention.
[0065] Figure 2 It is the spraying process required by the workpiece in the embodiment of the present invention.
[0066] Figure 3It is a schematic diagram of the principle for solving the theoretical geometric parameters of the workpiece using the AABB bounding box in the present invention.
[0067] Figure 4 It is an example diagram of the placement of the workpiece on the pallet in the present invention.
[0068] Figure 5 It is a schematic diagram of the decoding method principle for the chromosome sequences of the second and third layers in the present invention.
[0069] Figure 6 It is an example diagram for the selection of the scheduling scheme in the present invention.
[0070] Figure 7 It is the workshop order information targeted by the embodiment of the present invention.
[0071] Figure 8 It is the operation parameters related to the workshop required by the embodiment of the present invention.
[0072] Figure 9 It is the delivery date information of the workpiece in the embodiment of the present invention.
[0073] Figure 10 It is the basic parameter information required for the operation of the NSGA-II algorithm in the embodiment of the present invention.
[0074] Figure 11 It is the three-layer chromosome model and the initialization process used in the embodiment of the present invention.
[0075] Figure 12 It is a diagram of the iterative result optimized by the NSGA-II algorithm in the embodiment of the present invention.
[0076] Figure 13 It is a sample of the scheduling solution randomly selected from the scheduling solutions obtained by the NSGA-II algorithm in the embodiment of the present invention.
[0077] Figure 14 It is an example diagram of the crossover operator for the chromosome sequence of the first layer in the present invention.
[0078] Figure 15 It is an example of the crossover operator for the chromosome sequences of the second and third layers Figure One (corresponding to case 1).
[0079] Figure 16 It is an example of the crossover operator for the chromosome sequences of the second and third layers Figure Two (corresponding to case 2).
[0080] Figure 17 It is an example of the crossover operator for the chromosome sequences of the second and third layers Figure Three (corresponding to case 3). Detailed implementation manners
[0081] The present invention will be further described in detail below with reference to the accompanying drawings.
[0082] The intelligent scheduling method for workshop operations considering workpiece arrangement provided by the present invention includes the following steps:
[0083] Step S1: Based on the operation parameters and order information of the aircraft spraying workshop, extract the parameters, which include:
[0084] The total number of workpieces I;
[0085] The total number of spraying robots K;
[0086] The number of spraying processes Q required for each workpiece (the number of spraying processes required for each workpiece in the same batch of orders is the same);
[0087] The delivery date of each workpiece [ D 1 , D 2 ,..., D i ,..., D I ] , where represents the delivery date of the i-th workpiece);
[0088] The tray size; To achieve manufacturing standardization, the trays used to load workpieces are rectangular, with the same size and sufficient quantity. The size information is expressed as GeoH = [ Len H , Wid H ] , where represents the length of the tray, represents the width of the tray;
[0089] The robot spraying time; The spraying robots take the same time to spray trays of the same size, denoted as [ Tr 1 , Tr 2 ,..., Tr k ,..., Tr K ] , where corresponds to the time taken by the k-th robot to perform one spraying operation on any tray;
[0090] The workpiece geometric information; To simplify the calculation, as Figure 3 shown, based on the three-dimensional model of the workpiece, calculate the rectangle that can enclose the workpiece through the bounding box algorithm (the present invention recommends using the AABB bounding box algorithm), denoted as { [ Len 1 , Wid 1 ] , [ Len 2 , Wid 2 ] ,..., [ Len i , Wid i ] ,..., [ Len I , Wid I ] } , where represents the length of the rectangle enclosing the i-th workpiece, represents the width of the rectangle enclosing the i-th workpiece, and take [ Len i , Wid i ] as the geometric information of the i-th workpiece.
[0091] Step S2: The aircraft workpiece spraying workshop scheduling plan consists of two sub-plans: the workpiece arrangement plan and the tray scheduling plan . Use the key information required in the two sub-plans to construct the variable representation
[0092] S201. According to the total number I of workpieces, the sub-scheme of workpiece arrangement is expressed as:
[0093]
[0094] Suppose any workpiece is i, where:
[0095] represents the tray number on which the i-th workpiece is placed;
[0096] and represents the coordinates of the i-th workpiece on the tray;
[0097] According to the above representation method of the sub-scheme of workpiece arrangement the placement position of each workpiece can be determined, Figure 4 as shown in the placement position of the i-th workpiece;
[0098] S202. The workpieces on the same tray are regarded as a whole during the spraying process. Suppose the number of trays required for placing the workpieces is J (solved in the subsequent steps). According to the number of spraying processes Q required for each workpiece, the sub-scheme of tray scheduling is expressed as:
[0099]
[0100] Suppose any tray is j, where:
[0101] represents the spraying robot number selected for the first spraying of the workpieces on the j-th tray;
[0102] represents the spraying robot number selected for the Q-th spraying of the workpieces on the j-th tray;
[0103] represents the start time of the first spraying execution of the workpieces on the j-th tray;
[0104] represents the start time of the Q-th spraying execution of the workpieces on the j-th tray;
[0105] The length of this set is , corresponding to arranging the robots and start times selected for each spraying operation of all trays.
[0106] Step S3. Determine the optimization objectives and establish a multi-objective optimization model:
[0107] According to the actual requirements of the aircraft workpiece workshop, practitioners hope to use as few pallets as possible to load workpieces so that the workpieces to be sprayed can be completed as soon as possible. At the same time, they hope that each workpiece can be completed as scheduled as much as possible to reduce the cost losses caused by storing workpieces and delivery delays. Therefore, in order to effectively solve the scheduling scheme required for the aircraft workpiece spraying workshop, the present invention aims to minimize the total completion time of workpieces , minimize the total weighted penalty P as the optimization objective, and establish the following multi-objective optimization model:
[0108]
[0109] Where:
[0110] and are scheduling scheme variables;
[0111] is the objective function;
[0112] is the time for the i-th workpiece to complete all spraying processes;
[0113] is the planned delivery date of the i-th workpiece;
[0114] and are weight factors (the values are between 0 and 1, and in the present invention, it is recommended that ), which respectively correspond to the production cost consumption caused by default and storage. The ratio between the two reflects the proportional relationship between the production cost consumption caused by default and the production cost consumption caused by storage.
[0115] Step S4. Establish an initial chromosome population of size N:
[0116] As Figure 11 shown, in order to effectively encode the scheduling scheme required for the aircraft workpiece spraying workshop, the present invention innovatively proposes and establishes a three-layer chromosome model, and designs corresponding encoding operators and decoding operators for it. The construction process of the three-layer chromosome model is also described in Figure 11 , and N three-layer chromosome models are constructed according to this construction process to form an initial chromosome population of size N, N = n * 100 , n ∈ [ 2 , 8 ] , n is a positive integer.
[0117] The specific construction process of the three-layer chromosome model is as follows:
[0118] S401. Construct the first-layer chromosome sequence:
[0119] The first-layer chromosome sequence corresponds to the workpiece arrangement sub-scheme in the scheduling scheme , the length of the first-layer chromosome sequence is I, which is composed of positive integers 1 - I in a random order. Any positive integer in this sequence i ∈ [ 1 , I ] appears only once;
[0120] S402. Solve the first-layer chromosome sequence to obtain the number of pallets J required for the scheduling plan:
[0121] Since the generation of the pallet scheduling sub-plan requires determining the number of pallets J required to load the workpieces, therefore, the present invention decodes the first-layer chromosome sequence randomly generated in S401 by using the lowest horizontal line arrangement method, converts the positive integer sequence into a workpiece arrangement plan, and thus determines the number of pallets J required for this plan;
[0122] S4021. Initialize the horizontal line set. In the initial state, there is only one horizontal line in the horizontal line set, which is the bottom edge of the pallet in the coordinate system;
[0123] S4022. Select the workpiece to be arranged according to the order of positive integers in the first-layer chromosome sequence. Among them, any positive integer i in the first-layer chromosome sequence corresponds to the i-th workpiece;
[0124] S4023. Select the lowest horizontal line from the horizontal line set. If there is more than one lowest horizontal line, select the leftmost one. If the width of the selected horizontal line is greater than the length of the rectangular part to be arranged, execute step S4024, otherwise execute step S4025;
[0125] S4024. Place the part at the leftmost end of the lowest horizontal line, update the horizontal line set, and go to step S4026;
[0126] S4025. Select a section of the horizontal line adjacent to the lowest horizontal line and with a lower height, raise the lowest horizontal line to be flush with this horizontal line, update the horizontal line set, and turn to execute step S4023;
[0127] S4026. Determine whether all workpieces are arranged. If all workpieces are arranged, the number of pallets J required for the workpiece arrangement can be determined. Otherwise, turn to execute step S4022.
[0128] S403. Construct the second-layer and third-layer chromosome sequences:
[0129] The second-layer and third-layer chromosome sequences correspond to the pallet scheduling sub-plan in the scheduling plan , the lengths of the second-layer and third-layer chromosome sequences are the same, both being . The second-layer chromosome sequence is composed of positive integers 1 - J in a random order, where any positive integer j ∈ [ 1 , J ] The number of occurrences is equal to the number of times Q that the j-th tray needs to be sprayed. The third-layer chromosome sequence is randomly composed of positive integers from 1 to K, where any positive integer k ∈ [ 1 , K ] can occur any number of times. Thus, the construction of the three-layer chromosome model is completed.
[0130] Step S5: Taking the three-layer chromosome model of each chromosome in the initial chromosome population as input, calculate the scheduling scheme corresponding to each chromosome (the workpiece arrangement sub-scheme and the tray scheduling sub-scheme ) in and these two objective functions:
[0131] After generating the initial chromosome population of size N in step S4, it is necessary to solve the fitness of each chromosome to lay the foundation for the subsequent non-dominated sorting work. The specific steps are as follows:
[0132] S501: The first-layer chromosome sequence corresponds to the workpiece arrangement sub-scheme . According to the lowest horizontal line arrangement method in S402, arrange the workpieces in the order of positive integers in the first-layer chromosome sequence to obtain the workpiece arrangement sub-scheme , thereby determining the tray number where each workpiece is located.
[0133] S502: Solve its performance on the optimization objectives and according to the second-layer and third-layer chromosome sequences of each chromosome. The real number j that appears for the nth time in the second-layer chromosome sequence represents the nth spraying operation required for the j-th tray, and the real number k in the third-layer chromosome sequence represents the k-th spraying robot. As Figure 5 shown, during the decoding process, any pair of real numbers j and real number k with the same position in the second-layer and third-layer chromosome sequences constitute a scheduling instruction, indicating that the j-th tray is sprayed once by the k-th spraying robot. According to this method, a Gantt chart of the tray scheduling sub-scheme containing all the spraying operations required for the trays is obtained, thereby calculating the performance of each three-layer chromosome model on the optimization objectives and ;
[0134] Step S6: Determine the Pareto layer of each chromosome through the fast non-dominated sorting method:
[0135] Through the calculation process of step S5, solve all chromosomes (N) in the initial chromosome population in and Regarding the performance on these two objective functions, according to the non-dominated sorting method in the classical NSGA-II algorithm, sort the N chromosomes in the initial chromosome population to determine the Pareto layer number of each chromosome.
[0136] Step S7: Solve the crowding distance of each chromosome in the initial chromosome population:
[0137] Solve the crowding distance of each chromosome in the initial chromosome population according to the crowding distance calculation method in the classical NSGA-II algorithm.
[0138] Step S8: Screen out excellent chromosomes from the initial chromosome population to form a parent population with a size of N / 2:
[0139] First, take the Pareto layer number as the priority condition (the smaller the layer number, the higher the priority), and select chromosomes from the initial chromosome population layer by layer and put them into the parent population. When there are not enough empty positions in the parent population to allow all chromosomes of the same layer to be selected and entered, take the crowding distance (the larger the crowding distance, the higher the priority) as the secondary priority condition, and select chromosomes from the initial chromosome population one by one and put them into the parent population until the number of chromosomes in the parent population reaches N / 2.
[0140] Step S9: Generate an offspring population with a size of N based on the parent population obtained in step S8:
[0141] S901: Randomly select two chromosomes from the parent population as the male parent and the female parent;
[0142] S902: Randomly generate a positive integer x ∈ [ 1 , 10 ] , and set the crossover probability to any real number P 1 ∈ [ 0 , 1 ] , if , then execute S903; otherwise, execute S904;
[0143] S903: In the three-layer chromosome model designed for each chromosome in the present invention, the length of the first-layer chromosome sequence is determined by the total number of workpieces I and remains unchanged during the optimization process. The lengths of the second-layer and third-layer chromosome sequences are determined by the number of pallets J and will change during the optimization process. Therefore, we use a multi-point crossover operator for the first-layer chromosome sequences in the male parent and the female parent, and use the new crossover operator designed in the present invention for the second-layer and third-layer chromosomes. After the crossover is completed, add the generated new chromosomes to the offspring population.
[0144] Among them, referring to Figure 14 , the specific steps of the multi-point crossover operator for the first-layer chromosome sequence are as follows:
[0145] The input is the first-layer chromosome sequences of two known three-layer chromosome models. One of the chromosome sequences is selected as the male parent, and the other is the female parent. The output is the first-layer chromosome sequences of two new three-layer (offspring) chromosome models.
[0146] SA1. The length of the first-layer chromosome sequences in the two known three-layer chromosome models is I. A workpiece set is randomly constructed , which is composed of randomly selecting I / 2 (rounded up if it is a decimal) non-repeating workpiece numbers from workpiece numbers 1 to I.
[0147] SA2. Traverse the workpiece set S, and inherit the same numbered positions in the male parent sequence to the first-layer sequence of the offspring 1 chromosome according to the workpiece numbers in the set.
[0148] SA3. For the remaining workpiece numbers from 1 to I, fill in the empty positions in the first-layer sequence of the offspring 1 chromosome according to the appearance order in the female parent sequence.
[0149] SA4. The generation method of the first-layer sequence of the offspring 2 chromosome is opposite to that of the first-layer chromosome of the offspring 1, that is, first inherit the same numbered positions in the female parent sequence to the first-layer sequence of the offspring 2 chromosome according to the workpiece numbers in the set, and then for the remaining workpiece numbers from 1 to I, fill in the empty positions in the first-layer sequence of the offspring 2 chromosome according to the appearance order in the male parent sequence.
[0150] The specific steps of the new crossover operator for the second and third-layer chromosome sequences are as follows:
[0151] The input is the second and third-layer chromosome sequences of two known three-layer chromosome models. One of the chromosome sequences is selected as the male parent, and the other is the female parent. The output is the second and third-layer chromosome sequences of two new three-layer (offspring) chromosome models. The second and third-layer chromosome sequences of these two new three-layer (offspring) chromosome models are randomly combined with the first-layer chromosome sequences of the two new three-layer (offspring) chromosome models generated in the previous step to form two new three-layer (offspring) chromosome models. Since the first-layer sequences of the two new three-layer chromosome models have been generated in the previous step, the required number of pallets J can be determined by the lowest horizontal line arrangement method. The required number of pallets for the second and third-layer chromosome sequences in the two known three-layer chromosome models are respectively and .
[0152] There are the following three cases:
[0153] Case 1 (refer to Figure 15 ): The number of pallets J required for the second and third-layer chromosome sequences of the offspring chromosome is more than the number of pallets required for the sequences of the male parent and the female parent both less
[0154] SB1. Randomly construct a pallet set , which is composed of randomly selected from pallet numbers 1 to (round up if it is a decimal) non-repeating pallet numbers;
[0155] SB2. Traverse the pallet set S1. If the pallet number in the shorter chromosome sequence is the same as that in S1, retain it in the second-layer chromosome sequence of the offspring chromosome according to the same position, and at the same time, the robot number in the corresponding third-layer chromosome sequence retains its position and is inherited to the third-layer chromosome sequence of the offspring chromosome;
[0156] SB3. For the remaining pallet numbers from 1 to , fill in the empty positions in the second-layer chromosome sequence of the offspring chromosome according to the appearance order in the longer second-layer chromosome sequence, and fill in the corresponding positive integers in the third-layer chromosome sequence at the corresponding positions;
[0157] SB4. Delete the pallet numbers in the second-layer sequence of the offspring chromosome ( J , Min { J 1 , J 2 } ] , as well as the robot numbers in the corresponding positions of the third-layer chromosome sequence.
[0158] Case 2 (refer to Figure 16 ): The number of pallets J required for the second and third-layer chromosome sequences of the offspring chromosome is larger than the number of pallets required for the sequences of the male parent and the female parent both greater
[0159] SC1. Randomly construct a pallet set , which is composed of randomly selected from pallet numbers 1 to (round up if it is a decimal) non-repeating pallet numbers;
[0160] SC2. Traverse the set S1. If the pallet number in the second-layer chromosome sequence of the chromosome with more required pallets among the male parent and the female parent is the same as the pallet number in the set S1, retain the position and inherit it to the second-layer chromosome sequence of the offspring chromosome, and at the same time, the positive integer in the corresponding third-layer chromosome sequence retains its position and is inherited to the third-layer chromosome sequence of the offspring chromosome;
[0161] SC3. ( Min { J 1 , J 2 } , J ] The remaining positive integers in [[ ]] are randomly filled in the remaining positions of the second-layer chromosome sequence of the offspring chromosome, and the empty positions in the third-layer chromosome sequence of the offspring chromosome are randomly filled with positive integers from 1 to K;
[0162] SC4, 1 to The remaining pallet numbers in [[ ]], according to the appearance order in the second-layer chromosome sequence of the chromosome with fewer required pallets among the paternal and maternal chromosomes, are filled in the empty positions in the second-layer chromosome sequence of the offspring chromosome, and the corresponding positive integers in the third-layer chromosome sequence are filled in the corresponding positions;
[0163] Case 3 (refer to Figure 17 ) : Other cases
[0164] SD1. Randomly construct a pallet set , and this set is composed of randomly selecting (round up if it is a decimal) non-repeating pallet numbers from pallet numbers 1 to in [[ ]];
[0165] SD2. Traverse the set S1. If the pallet numbers in the second-layer chromosome sequence of the chromosome with fewer required pallets among the paternal and maternal chromosomes are the same as the pallet numbers in the set S1, then retain the positions and inherit them to the second-layer chromosome sequence of the offspring chromosome. At the same time, the corresponding positive integers in the third-layer chromosome sequence retain their positions and are inherited to the third-layer chromosome sequence of the offspring chromosome;
[0166] SD3. The remaining pallet numbers from 1 to J, according to the appearance order in the second-layer chromosome sequence of the chromosome with more required pallets among the paternal and maternal chromosomes, are filled in the empty positions in the second-layer chromosome sequence of the offspring chromosome, and the corresponding pallet numbers in the third-layer chromosome sequence are filled in the corresponding positions;
[0167] S904: Directly add the paternal and maternal chromosomes to the offspring population;
[0168] S905: Judge whether the number of chromosomes in the offspring population is N. If not, return to step S901; otherwise, execute step S10;
[0169] Step S10: Combine the current parental population and the offspring population into a new population, perform the non-dominated sorting operation in the classical NSGA-II algorithm, and then increment the population generation number by one (the initial generation number is 0);
[0170] Step S11. Determine the Pareto layer number of each chromosome in the newly combined population in step S10:
[0171] Repeat step S5 to know the optimization objective of each chromosome in the new population After the performance on is obtained, the chromosomes in the current population are sorted according to the non-dominated sorting method in the classical NSGA-II algorithm to determine the Pareto layer number of each chromosome.
[0172] Step S12: Solve the crowding distance of each chromosome in the newly combined population in Step S10:
[0173] Solve the crowding distance of each chromosome in the new population according to the crowding distance calculation method in the classical NSGA-II algorithm.
[0174] Step S13: Select excellent chromosomes from the newly combined population in Step S10 to form the parental population:
[0175] Taking the Pareto layer number as the priority condition (the smaller the layer number, the more priority), and the crowding distance (the larger the crowding distance, the more priority) as the secondary priority condition. If both conditions are the same, randomly select. In the new population, select M excellent chromosomes (M = total number of chromosomes in the current population / 2) to form the parental population.
[0176] Step S14: Generate the offspring population using the same method as in Step S9;
[0177] Step S15: Repeat Step S10 to check whether the population iteration times meet the set requirements (it is recommended to set it to 200, at this time the convergence is the fastest). If it meets the requirements, end the operation and enter Step S16; otherwise, repeat Steps S11 - S15.
[0178] Step S16: As Figure 6 shown, according to the non-dominated sorting method in the classical NSGA-II algorithm, select the scheduling schemes located on the Pareto front (chromosomes with a Pareto layer number of 1 are considered the front) from the 2N scheduling schemes obtained from the calculation results in Step S15 as the alternative set. According to the principle of the non-dominated sorting method, the schemes with the same Pareto layer number have advantages in the two objectives respectively. In the actual production process, if the fastest production efficiency is the priority, the scheduling scheme with the minimum makespan ( ) can be selected. If there are multiple scheduling schemes that meet the production efficiency requirements, the scheduling scheme with the minimum total weighted penalty can be selected from them for execution. If the lowest production cost is the priority, the scheduling scheme with the minimum total weighted penalty (P) can be selected. If there are multiple scheduling schemes that meet the production cost requirements, the scheduling scheme with the minimum makespan can be selected from them for execution.
[0179] Example:
[0180] This embodiment is illustrated by taking the spraying workshop of aircraft wing rib structural parts as an example. This workshop includes 3 spraying robots that can operate in parallel. To ensure the stable operation of the spraying line, the time taken for each spraying robot to perform a spraying operation is set to 40 minutes. This spraying workshop is mainly responsible for spraying the primer. Therefore, each workpiece needs to undergo two spraying processes, as Figure 2 shown. The customer order information as a test sample is as Figure 7 shown, which includes the geometric information, quantity information, and corresponding delivery date information of the workpieces. When this embodiment is specifically applied, it is carried out according to the detailed flowchart as Figure 1 shown.
[0181] Step S1: Based on the operation parameters of the spraying production line and the order information, extract the key parameters required by the scheduling algorithm, including the spraying time , the pallet size , the number of spraying processes Q required for the workpiece, and the geometric information of the workpiece . The summary information is as Figure 7 and Figure 8 shown. In addition, the basic parameters required during the operation of the algorithm are as Figure 10 shown.
[0182] Step S2: It can be known from the number of workpieces to be processed in the test instance that I = 180. Therefore, the sub-scheme of workpiece arrangement can be expressed as , and the number of spraying processes Q for any workpiece is 2. Then the sub-scheme of pallet scheduling can be expressed as
[0183] Step S3: Establish a multi-objective optimization mathematical model:
[0184]
[0185] Step S4: Establish a three-layer chromosome model composed of the chromosome sequences of the first layer, the second layer, and the third layer, and generate an initial chromosome population with a chromosome number N = 200 in a random generation manner. The chromosome initialization process is as Figure 11 shown.
[0186] Step S4: Screen, cross, and mutate the initial chromosome population according to the optimization process of the non-dominated genetic method. Among them, the crossover operator adopts the crossover operator designed by the present invention, the mutation operator adopts the polynomial mutation operator, and the number of iterations is set to 500. The specific iteration results are as Figure 12 shown, and finally output a scheduling solution set with a quantity of 400.
[0187] Step S5: Using the non-dominated sorting method, select the scheduling solutions on the Pareto front from the scheduling solution set obtained in S4 as the alternative set. Appropriate solutions can be selected from the alternative set according to different requirements. The selection of the alternative set is as follows Figure 13 as shown. According to Figure 13 as shown, the location of each workpiece can be known, and it can be determined which robot each pallet operation should be sent to for execution. At the same time, compared with the order, all workpieces are completed before the required delivery time, and the production cost is controlled within an acceptable range. Therefore, it shows that this method can be effectively applied to actual production.
Claims
1. An intelligent scheduling method for workshop operations considering workpiece arrangement, characterized in that It includes the following steps: Step 1: Based on the collected operation parameters and order information, establish a multi-objective optimization model with the goal of minimizing the total completion time of workpieces and minimizing the total weighted penalty; Step 2: Establish an initial chromosome population, where each chromosome is a three-layer chromosome model, including the first-layer chromosome sequence for characterizing the workpiece arrangement sub-scheme, and the second-layer and third-layer chromosome sequences for characterizing the pallet scheduling sub-scheme; Step 3: Calculate the performance of each chromosome on the optimization goal, and obtain the Pareto layer number and crowding distance of each chromosome; Step 4: Based on the Pareto layer number and crowding distance, select excellent chromosomes in the current chromosome population to form a parental population; Step 5: Generate an offspring population based on the parental population; Step 6: Mix the current parental population and offspring population to obtain a new chromosome population, increment the population iteration count by 1, check whether the population iteration count meets the set requirements. If not, return to Step 3; if so, select the scheduling scheme located on the Pareto front from the current latest chromosome population as the basis for production scheduling.
2. The intelligent scheduling method for workshop operations considering workpiece arrangement according to claim 1, wherein: The operation parameters in Step 1 include the total number of workpieces, the total number of spraying robots, the number of spraying processes required for each workpiece, the pallet size, the robot spraying time, and the workpiece geometric information; the order information includes the delivery date of each workpiece.
3. The intelligent scheduling method for workshop operations considering workpiece arrangement according to claim 2, wherein: The multi-objective optimization model established in Step 1 is as follows: Where: and are the workpiece arrangement sub-scheme variable and the pallet scheduling sub-scheme variable respectively; Indicates the tray number on which the i-th workpiece is placed; and represent the coordinates of the i-th workpiece on the pallet; Denote the spraying robot number selected for the Q-th spraying of the workpiece on the J-th tray; Indicates the start time of the Q-th spraying execution for the workpiece on the J-th tray; is the objective function; The time to complete all spraying processes for the i-th workpiece; is the planned delivery date for the i-th workpiece; and are weight factors, with values ranging from 0 to 1, corresponding to the production cost consumption caused by default and storage respectively; is the total completion time of the workpiece; P is the total weighted penalty; is the length of the rectangle enclosing the i-th workpiece, is the width of the rectangle enclosing the i-th workpiece; is the length of the tray, is the width of the tray.
4. The intelligent scheduling method for workshop operations considering workpiece arrangement according to claim 3, characterized in that: The first-layer chromosome sequence described in step 2, whose length is equal to the total number of workpieces I, is composed of positive integers from 1 to I in a random order, and any positive integer can only appear once; The lengths of the second layer and the third layer chromosome sequences described in step 2 are both , the second layer chromosome sequence is composed of positive integers from 1 to J in a random order, and any positive integer appears the same number of times as the number of times Q that the j-th tray needs to be sprayed; the third layer chromosome sequence is randomly composed of positive integers from 1 to K, and any positive integer can appear any number of times; J is the number of trays required to load workpieces, obtained by decoding the first layer chromosome sequence; K is the total number of spraying robots.
5. The intelligent scheduling method for workshop operations considering workpiece arrangement according to claim 4, characterized in that: The method for calculating the performance of each chromosome on the optimization goal in Step 3 is: First, decode the first-layer chromosome sequence using the lowest horizontal line arrangement method, arrange the workpieces according to the order of positive integers in the first-layer chromosome sequence, and obtain a sub-scheme for workpiece arrangement , thereby determining the pallet number where each workpiece is located; Then, decode the second-layer and third-layer chromosome sequences. Any pair of real numbers j and k with the same position in the second-layer and third-layer chromosome sequences form a scheduling instruction, indicating that the j-th pallet is sprayed once by the k-th spraying robot, and obtain a Gantt chart of the pallet scheduling sub-scheme containing all the spraying operations required by the pallets. Based on this Gantt chart, calculate the performance of each chromosome on the optimization goal.
6. The intelligent scheduling method for workshop operations considering workpiece arrangement according to claim 5, characterized in that: In Step 3, the Pareto layer number of each chromosome is obtained through the non-dominated sorting method in the classical NSGA-II algorithm, and the crowding distance is obtained through the crowding distance calculation method in the classical NSGA-II algorithm.
7. The intelligent scheduling method for workshop operations considering workpiece arrangement according to claim 6, characterized in that: Step 5 is specifically: Randomly select two chromosomes from the parental population as the male and female parents, and set the crossover probability , and randomly generate a positive integer . If , then perform crossover and mutation on the male and female parents to obtain new chromosomes and add them to the offspring population. Otherwise, directly add the male and female parents to the offspring population.
8. The intelligent scheduling method for workshop operations considering workpiece arrangement according to claim 7, characterized in that: When performing crossover and mutation on the male and female parents, use a multi-point crossover operator for the first-layer chromosome sequences in the male and female parents, and use an improved new crossover operator for the second-layer and third-layer chromosomes; The specific steps of the multi-point crossover operator for the first-layer chromosome sequence are as follows: SA1. For the first layer chromosome sequences of two known three-layer chromosome models with a length of I, randomly construct a workpiece set , which is composed of randomly selecting I / 2 non-repeating workpiece numbers from workpiece numbers 1 to I; if I / 2 is a decimal, round up; SA2. Traverse the workpiece set S, and inherit the same numbered ones in the male parent sequence to the first-layer sequence of the first offspring chromosome according to the same positions in the set; SA3. For the remaining workpiece numbers from 1 to I, fill in the vacant positions in the first-layer sequence of the first offspring chromosome according to their appearance order in the female parent sequence; SA4. The generation method of the first-layer sequence of the second filial chromosome is opposite to that of the first-layer chromosome of the first filial generation, that is, first, according to the workpiece numbers in the set, the same numbers in the maternal sequence are inherited to the first-layer sequence of the second filial chromosome at the same positions. Then, for the remaining workpiece numbers from 1 to I, according to the appearance order in the paternal sequence, they are filled in the vacant positions in the first-layer sequence of the second filial chromosome; The specific steps of the improved new crossover operator for the second and third-layer chromosome sequences are as follows: Case 1: The number of pallets J required for the second and third layer chromosome sequences of the offspring chromosome is less than the number of pallets required for the sequences of the paternal and maternal chromosomes less: SB1. Randomly construct a pallet set , which is formed by randomly selecting non - repeating pallet numbers from pallet number 1 to ; if it is a decimal, round up to the nearest integer; SB2. Traverse the pallet set S1. If the pallet number in the shorter-length chromosome sequence is the same as that in S1, it is retained at the same position in the second-layer chromosome sequence of the filial chromosome. At the same time, the robot number in the corresponding third-layer chromosome sequence is inherited in position to the third-layer chromosome sequence of the filial chromosome; SB3, 1 to The remaining tray numbers in are filled in the vacant positions in the second-layer chromosome sequence of the offspring chromosome according to the order of appearance in the second layer sequence of the longer chromosome, and the corresponding positive integers in the third-layer chromosome sequence are filled in the corresponding positions; SB4. Delete the pallet numbers in the second-layer sequence of the offspring chromosome and the robot numbers in the third-layer chromosome sequence at the corresponding positions; Case 2: The number of pallets J required for the second and third layer chromosome sequences of the offspring chromosome is larger than the number of pallets required for the sequences of the paternal and maternal chromosomes than both SC1. Randomly construct a pallet set , which is formed by randomly selecting non-repeating pallet numbers from pallet number 1 to ; if it is a decimal, round up to the nearest integer; SC2. Traverse the set S1. If the pallet number in the second-layer chromosome sequence of the chromosome with more required pallets among the paternal and maternal chromosomes is the same as the pallet number in the set S1, it is retained and inherited in position to the second-layer chromosome sequence of the filial chromosome. At the same time, the positive integer in the corresponding third-layer chromosome sequence is inherited in position to the third-layer chromosome sequence of the filial chromosome; SC3, The remaining positive integers in it are randomly filled in the remaining positions of the second-layer chromosome sequence of the offspring chromosome, and the empty positions of the third-layer chromosome sequence of the offspring chromosome are randomly filled with positive integers from 1 to K; SC4, 1 to The remaining tray numbers in are filled in the vacant positions in the second-layer chromosome sequence of the offspring chromosome according to the occurrence order in the second-layer chromosome sequence of the chromosome with fewer required trays in the paternal and maternal chromosomes, and the corresponding positive integers in the third-layer chromosome sequence are filled in the corresponding positions; Case 3: Other situations SD1. Randomly construct a pallet set , which is composed of randomly selecting non-repeating pallet numbers from pallet numbers 1 to ; if it is a decimal, round up; SD2. Traverse the set S1. If the pallet number in the second-layer chromosome sequence of the chromosome with fewer required pallets among the paternal and maternal chromosomes is the same as the pallet number in the set S1, it is retained and inherited in position to the second-layer chromosome sequence of the filial chromosome. At the same time, the positive integer in the corresponding third-layer chromosome sequence is inherited in position to the third-layer chromosome sequence of the filial chromosome; SD3. For the remaining pallet numbers from 1 to J, according to the appearance order in the second-layer chromosome sequence of the chromosome with more required pallets among the paternal and maternal chromosomes, they are filled in the vacant positions in the second-layer chromosome sequence of the filial chromosome, and the corresponding pallet numbers in the third-layer chromosome sequence are filled in the corresponding positions.
9. An electronic device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor; characterized in that: When the processor executes the program, it implements the intelligent scheduling method for workshop operations as described in any one of claims 1-8.
10. A non-volatile storage medium, on which a computer program is stored, characterized in that: When the computer program is executed, it implements the intelligent scheduling method for workshop operations as described in any one of claims 1-8.