DUAL-EFFECT SCHEDULING METHOD FOR HETEROGENEOUS ROBOTS IN FLEXIBLE JOB SHOP
20250147489 ยท 2025-05-08
Inventors
- Bin XIN (Beijing, CN)
- Mengjie Jing (Beijing, CN)
- Sai LU (Beijing, CN)
- Fang DENG (Beijing, CN)
- Qing Wang (Beijing, CN)
- Jiwei He (Beijing, CN)
- Yingmei He (Beijing, CN)
Cpc classification
G05B19/41845
PHYSICS
B25J9/1661
PERFORMING OPERATIONS; TRANSPORTING
B25J9/1664
PERFORMING OPERATIONS; TRANSPORTING
B25J9/1653
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
The present disclosure belongs to the field of flexible job shop scheduling, and relates to a dual-effect scheduling method for heterogeneous robots in a flexible job shop. In a case of strong coupling of processing and transferring, this method comprehensively considers such constraints on selection of flexible manufacturing cells (FMCs), transferring time by automatic guided vehicles (AGVs) and processing resource waste, and improves encoding schemes and genetic operators with order completion time and minimization of resource consumption as evaluation criteria. Additionally, this method can fully apply environmental characteristics of job shop to scheduling design, and automatically design more precise scheduling schemes, overcoming the deficiencies of slow response and prone to local optimal solutions existing in conventional scheduling schemes, and ensuring efficient and green operation.
Claims
1. A dual-effect scheduling method for heterogeneous robots in a flexible job shop, comprising the following steps: step 1: encoding each individual in three layers using a symbolic coding method, the encoding of each individual comprising three layers, namely, workpiece procedure-based encoding, processing robot-based encoding, and automated guided vehicle (AGV)-based encoding, step 2: acquiring processing robot information, AGV information and to-be-processed workpiece information, integrating two objective functions for respectively minimizing order completion time and minimizing resource consumption into a single composite function using a weighted optimization method, and designing a fitness function, step 3: calculating fitness of each individual encoded in step 1 using the fitness function designed in step 2, and selecting individuals for the next generation according to fitness values using a roulette wheel selection method with an elitism strategy, step 4: performing crossover operation on the workpiece procedure-based encoding and the AGV-based encoding of the individual in step 1 using precedence operation crossover (POX), and performing two-point crossover operation on the processing robot-based encoding of the individual, step 5: performing swap mutation operation on the workpiece procedure-based encoding and the AGV-based encoding of the individual in step 1, and performing uniform mutation operation on the processing robot-based encoding of the individual, and step 6: together forming the individual selected in step 3, the individual after the crossover operation in step 4, and the individual after the mutation operation in step 5 into a new population for the next generation, repeating steps 3 to 5 for individuals in the new population for the next generation to obtain optimal scheduling schemes and fitness values, and selecting a suitable scheduling scheme according to the demand preferences to perform dual-effect scheduling on heterogeneous robots in a flexible job shop, wherein in step 1, the first layer of encoding is based on workpiece procedure, for clarifying the order of various workpieces and various procedures in a processing scheme; each gene of the individual represents a specific procedure of a specific workpiece; various procedures of a workpiece are represented by the order in which the workpiece appears in the individual; and the n.sub.th presence of a specific workpiece in the individual represents the n.sub.th procedure of the specific workpiece; the second layer of encoding is based on processing robot, for clarifying the order of selected processing robots corresponding to various procedures of workpieces in the processing scheme; each gene of the individual represents a corresponding processing robot selected for a specific procedure of a specific workpiece; and the order of genes follows the order of processing workpiece numbers and the order of procedure numbers of a specific workpiece; and the third layer of encoding is based on AGV, for clarifying the order of AGVs corresponding to various workpiece procedures in the processing scheme; each gene of the individual represents an AGV number corresponding to a specific procedure of transferring a specific workpiece; and the order of genes corresponds to the order of the workpiece procedure-based encoding; in step 2, the processing robot information comprises: the number of processing robots, the process processing capability of processing robots, and fixed-point positions of processing robots; the AGV information comprises: the number of AGVs, the running speed of AGVs, and initial positions of AGVs; and the to-be-processed workpiece information comprises: the number of workpieces to be processed, the number of procedures of the workpieces to be processed, and available processing robots and processing time for each procedure; and the fitness function is defined as:
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046]
[0047]
[0048]
[0049]
[0050]
[0051]
[0052]
[0053]
[0054]
[0055]
[0056]
[0057]
[0058]
[0059]
[0060]
[0061]
[0062]
[0063]
[0064]
[0065]
[0066]
[0067]
[0068]
[0069]
DETAILED DESCRIPTION
[0070] The present disclosure is further described by reference to the accompanying drawings and examples below.
[0071] A dual-effect scheduling method for heterogeneous robots in a flexible job shop includes the following steps.
[0072] Step 1: each individual is encoded in three layers using a symbolic coding method, with the encoding of each individual including three layers, namely, workpiece procedure-based encoding, processing robot-based encoding, and AGV-based encoding.
[0073] Step 2: processing robot information, AGV information and to-be-processed workpiece information are acquired, two objective functions for respectively minimizing order completion time and minimizing resource consumption are integrated into a single composite function using a weighted optimization method, and a fitness function is designed.
[0074] Step 3: fitness of each individual encoded in step 1 is calculated using the fitness function designed in step 2, and individuals for the next generation are selected according to fitness values using a roulette wheel selection method with an elitism strategy. Step 4: crossover operation is performed on the workpiece procedure-based encoding and the AGV-based encoding of the individual in step 1 using POX, and two-point crossover operation is performed on the processing robot-based encoding of the individual.
[0075] Step 5: swap mutation operation is performed on the workpiece procedure-based encoding and the AGV-based encoding of the individual in step 1, and uniform operation is performed on the processing robot-based encoding of the individual.
[0076] Step 6: the individual selected in step 3, the individual after the crossover operation in step 4, and the individual after the mutation operation in step 5 are together formed into a new population for the next generation, steps 3 to 5 are repeated for individuals in the new population for the next generation to obtain optimal scheduling schemes and fitness values, and a suitable scheduling scheme is selected according to the demand preferences to perform dual-effect scheduling on heterogeneous robots in a flexible job shop.
[0077] In step 1, the first layer of encoding is based on workpiece procedure, for clarifying the order of various workpieces and various procedures in a processing scheme. Each gene of the individual represents a specific procedure of a specific workpiece; various procedures of a workpiece are represented by the order in which the workpiece appears in the individual; and the nth presence of a specific workpiece in the individual represents the n.sub.th procedure of the specific workpiece. For example, for a processing order containing three workpieces to be processed {J.sub.1,J.sub.2,J.sub.3}, with each workpiece containing three procedures, the number for each workpiece is multiplied by the corresponding number for procedure, and the result serves as a set of numbers. Those numbers are randomly arranged to obtain workpiece procedure-based encoding, as shown in
[0078] In
[0079] The second layer of encoding is based on processing robot, for clarifying the order of selected processing robots corresponding to various procedures of workpieces in the processing scheme. Each gene of the individual represents a corresponding processing robot selected for a specific procedure of a specific workpiece; and the order of genes follows the order of processing workpiece numbers and the order of procedure numbers of a specific workpiece. Similarly, taking an order containing three workpieces to be processed as an example, with each workpiece containing three procedures, assuming that five processing robots {R.sub.1, R.sub.2, R.sub.3, R.sub.4, R.sub.6} are used for processing, an example showing processing robot-based encoding for a particular processing scheme is shown in
[0080] In
[0081] The third layer of encoding is based on AGV, for clarifying the order of AGVs corresponding to various workpiece procedures in the processing scheme. Each gene of the individual represents an AGV number corresponding to a specific procedure for transferring a specific workpiece; and the order of genes corresponds to the order of the workpiece procedure-based encoding. Similarly, taking an order containing three workpieces to be processed as an example, with each workpiece containing three procedures, assuming that two AGVs {A.sub.1, A.sub.2} are used for transferring, for the AGV-based encoding in a specific processing scheme, the three layers of encoding are summarized to obtain three gene strings, and the corresponding relationship of the three layers of encoding is shown in
[0082] In
[0083] In step 2, the processing robot information includes: the number of processing robots, the process processing capability of processing robots, and fixed-point positions of processing robots; the AGV information includes: the number of AGVs, the running speed of AGVs, and initial positions of AGVs; and the to-be-processed workpiece information includes: the number of workpieces to be processed, the number of procedures of the workpieces to be processed, and available processing robots and processing time for each procedure; and the fitness function is defined as:
[0084] where F(k) is a fitness value of a k.sub.th individual; is a weight coefficient for completion time, ranging from [0,1], and the allocation of weight is determined by a decision-maker of a job shop; in a case that 0.61, the job shop operates in an efficient processing mode; in a case that 0.4 0.6, the job shop operates in a comprehensive processing mode; and in a case that 0.20.4, the job shop operates in a green processing mode; f.sub.1max is a maximum order completion time in the job shop of a current population; f.sub.1(k) is an order completion time in the job shop of the k.sub.th individual; f.sub.1min is a minimum order completion time in the job shop of the current population; f.sub.2max is a maximum energy consumption of the current population; f.sub.2(k) is energy consumption of the k.sub.th individual; f.sub.2min is a minimum energy consumption of the current population; and N is the total number of individuals in the current population.
[0085]
[0086] In step 3, individuals with the highest fitness values in the current population are elite individuals. The first quarter of individuals with the highest fitness values in the current population are kept from undergoing the roulette wheel selection, and the remaining three-quarters undergo the roulette wheel selection, crossover, and mutation to generate a new generation of population. If a fitness value of an optimal individual in the new generation of population is better than that of a reserved parent, it indicates that the population has been optimized, and the worst individual in offspring is replaced with the reserved elite individual. This selection method allows for better convergence to the global optimal solution, avoiding the loss of the global optimal solution caused by the subsequent crossover and mutation operations. In addition, this selection method improves the search speed of the genetic algorithm, enabling a faster global convergence.
[0087] In step 4, a method for performing crossover operation on the workpiece procedure-based encoding of the individual using POX is as follows.
[0088] All workpieces are randomly divided into two sets Q.sub.1 and Q.sub.2. Workpieces of parent P.sub.1 that are contained in Q.sub.1 are copied to corresponding positions in an offspring individual C.sub.1, workpieces of parent P.sub.2 that are contained in Q.sub.2 are copied to corresponding positions in an offspring individual C.sub.2, and the position of each gene in the individual is fixed. Workpieces of the parent P.sub.2 that are contained in Q.sub.2 are copied to corresponding positions in the offspring individual C.sub.1, and workpieces of the parent P.sub.1 that are contained in Q.sub.1 are copied to corresponding positions in the offspring individual C.sub.2, and the order of genes is kept to obtain two offspring individuals C.sub.1 and C.sub.2 after crossover, as shown in
[0089] In step 4, a method for performing crossover operation on the AGV-based encoding of the individual using POX is as follows.
[0090] All AGVs are randomly divided into two sets Q.sub.1 and Q.sub.2. Workpieces of parent P.sub.1 that are contained in Q.sub.1 are copied to corresponding positions in an offspring individual C.sub.1, workpieces of parent P.sub.2 that are contained in Q.sub.2 are copied to corresponding positions in an offspring individual C.sub.2, and the position of each gene in the individual is fixed. Workpieces of the parent P.sub.2 that are contained in Q.sub.2 are copied to corresponding positions of the offspring individual C.sub.1, and workpieces of the parent P.sub.1 that are contained in Q.sub.1 are copied to corresponding positions of the offspring individual C.sub.2, and the order of genes is kept to obtain two offspring individuals C.sub.1 and C.sub.2 after crossover, as shown in
[0091] In step 4, a method for performing two-point crossover operation on the processing robot-based encoding of the individual is as follows.
[0092] Two different points p.sub.1 and p.sub.2 are selected as crossover points, and genes g.sub.1 and g.sub.2 in p.sub.1 and p.sub.2 of two individuals are swapped, respectively. This crossover method can prevent the illegal and infeasible solutions after crossover operation, ensure the feasibility and validity of the solutions corresponding to the crossover offspring, and guarantees that the number of AGVs remains unchanged after crossover operation.
[0093] In step 5: a method for performing swap mutation operation on the workpiece procedure-based encoding of the individual is as follows. Two different random numbers within the length of two procedures are randomly selected, and genes of the two procedures are swapped.
[0094] A method for performing swap mutation operation on the AGV-based encoding is as follows. Two different random numbers within the length of two AGVs are selected, and genes of the two AGVs are swapped.
[0095] A method for performing uniform mutation operation on the processing robot-based encoding of the individual is as follows. A procedure is randomly selected. Direct returning is performed without changing the gene if only one machine is selectable for the procedure, otherwise, a serial number different from a currently selected machine is randomly generated within a selectable machine set of the procedure, and swap is performed.
[0096] This mutation method can ensure that the number of AGVs remains unchanged after the mutation
[0097] In step 6, a suitable scheduling scheme is selected according to demand preferences, the demand preference referring to the balance between the two objectives of order completion time and energy consumption, a desired scheme is selected and implemented, and a method for obtaining the optimal scheduling scheme is as follows.
[0098] Gradual iteration is performed, and the optimal scheduling scheme is obtained in a case that the change in fitness values is less than a set threshold or the number of generations is greater than the set number of iterations
Embodiment
[0099] In this section, the effect achieved by the present disclosure is explained through simulation data experiments. To evaluate the performance of the proposed detection method, a simulation operation interface for a flexible manufacturing job shop is designed using AnyLogic simulation software, shown in
[0100] The layout of processing robots and charging stations in the job shop is shown in
TABLE-US-00001 TABLE 1 Processing power (kW)/setup time (min) of processing robots Robot number 1 2 3 4 5 6 7 8 9 10 Rated power 20 20 14 14 10 10 7.5 5.5 4 4 No-load power 3.45 3.45 2.82 2.82 1.58 1.58 0.84 0.55 1.8 1.8 Setup time 3 3 3 3 2 2 1 2 3 3
[0101] The workpieces to be processed include double-bottomed pot, stove top, right-angle adapter, cylindrical rod, cutter, and cover of kitchen hood. Each type of workpiece undergoes different processing processes and requires different processing times, demonstrating that a flexible manufacturing job shop is capable of processing small batches of parts with simple procedures and long processing times. The procedure information of hardware kitchenware workpieces produced in the job shop is shown in Table 2. The processing times for each procedure corresponding to the selectable processing robots are shown in Table 3.
TABLE-US-00002 TABLE 2 Procedure information of hardware kitchenware workpieces produced in the job shop Workpiece Grinding and Procedure Stamping polishing Welding Cleaning Painting Packaging Double- 1 3 4 2 5 bottomed pot Stove top 1 2 3 4 Right-angle 1 2 3 4 adapter Cylindrical rod 1 2 3 4 Cutter 1 2 3 4 Cover of 1 4 3 2 kitchen hood
TABLE-US-00003 TABLE 3 Procedure processing time for workpieces to be processed (unit time) Workpiece Procedure Processing robot number number M.sub.1 M.sub.2 M.sub.3 M.sub.4 M.sub.5 M.sub.6 M.sub.7 M.sub.8 M.sub.9 M.sub.10 J.sub.1 P.sub.11 20 20 \ \ \ \ \ \ \ \ P.sub.12 \ \ \ \ \ \ 30 \ \ \ P.sub.13 \ \ \ \ 40 40 \ \ \ \ P.sub.14 \ \ 30 30 \ \ \ \ \ \ P.sub.15 \ \ \ \ \ \ \ \ 20 20 J.sub.2 P.sub.21 30 30 \ \ \ \ \ \ \ \ P.sub.22 \ \ \ \ 50 50 \ \ \ \ P.sub.23 \ \ \ \ \ \ \ 20 \ \ P.sub.24 \ \ \ \ \ \ \ \ 40 40 J.sub.3 P.sub.31 50 50 \ \ \ \ \ \ \ \ P.sub.32 \ \ \ \ 40 40 \ \ \ \ P.sub.33 \ \ 30 30 \ \ \ \ \ \ P.sub.34 \ \ \ \ \ \ \ 50 \ \ J.sub.4 P.sub.41 \ \ \ \ 70 70 \ \ \ \ P.sub.42 \ \ \ \ \ \ 50 \ \ \ P.sub.43 \ \ \ \ \ \ \ \ 10 10
[0102] For easy calculation, both processing times and position coordinates of the processing robots are converted to unit time and unit distance. Each unit time is 4 min, every 20 unit distances represent 1 meter, and the transferring speed of AGV is 30 unit distances per unit time. The transferring time required for AGV transferring workpieces during the production and processing in the intelligent job shop is determined by the position of the processing robot, and the position coordinates of the processing robots are shown in Table 4.
TABLE-US-00004 TABLE 4 Position coordinates of processing robots (unit distance) Processing robot number X-coordinate Y-coordinate R.sub.1 200 160 R.sub.2 440 160 R.sub.3 720 160 R.sub.4 960 160 R.sub.5 200 340 R.sub.6 440 340 R.sub.7 840 520 R.sub.8 320 520 R.sub.9 720 520 R.sub.10 960 640
[0103] Each processing robot has two buffer areas and one processing area, as shown in
[0104] When the power level of an AGV drops below 40%, it will head to the nearest charging station for charging, as shown in
[0105] Taking the processing process of a small-scale job shop with four workpieces, ten processing robots, and two AGVs as the background, the designed genetic algorithm (with an online scheduling algorithm flowchart shown in
TABLE-US-00005 TABLE 5 Relevant parameter settings for job shop optimization scheduling algorithm based on genetic algorithm Symbolic Value Meaning of parameters representation set Population size PopSize 100 Number of iterations MaxGen 500 Crossover probability P.sub.c 0.95 Mutation probability P.sub.m 0.05 Number of operations num 5
[0106] The dual-effect scheduling method is explained in conjunction with the simulation results.
[0107]
[0108]
TABLE-US-00006 TABLE 6 Results of the optimal scheduling scheme based on the improved genetic algorithm ( = 0.8) Start Completion Selected time for time for processing AGV procedure procedure Workpiece Procedure robot number processing processing J.sub.1 P.sub.11 M.sub.1 R.sub.2 33.54 58.54 P.sub.12 M.sub.7 R.sub.2 82.16 102.16 P.sub.13 M.sub.6 R.sub.2 140.67 170.67 P.sub.14 M.sub.3 R.sub.2 199.11 219.11 P.sub.15 M.sub.9 R.sub.1 232.94 250.94 J.sub.2 P.sub.21 M.sub.1 R.sub.2 13.54 33.54 P.sub.22 M.sub.5 R.sub.2 58.15 93.15 P.sub.23 M.sub.8 R.sub.1 123.55 141.55 P.sub.24 M.sub.10 R.sub.2 168.92 198.92 J.sub.3 P.sub.31 M.sub.1 R.sub.2 60.69 90.69 P.sub.32 M.sub.6 R.sub.2 114.16 134.16 P.sub.33 M.sub.3 R.sub.1 145.26 185.26 P.sub.34 M.sub.8 R.sub.1 203.19 233.19 J.sub.4 P.sub.41 M.sub.5 R.sub.1 18.15 58.15 P.sub.42 M.sub.8 R.sub.1 65.36 85.36 P.sub.43 M.sub.9 R.sub.1 98.69 128.69
[0109]
TABLE-US-00007 TABLE 7 Results of the optimal scheduling scheme based on the improved genetic algorithm ( = 0.2) Start Completion Selected time for time for processing AGV procedure procedure Workpiece Procedure robot number processing processing J.sub.1 P.sub.11 M.sub.2 R.sub.1 37.14 62.41 P.sub.12 M.sub.7 R.sub.1 76.76 96.76 P.sub.13 M.sub.6 R.sub.2 120.95 150.95 P.sub.14 M.sub.4 R.sub.2 379.44 399.44 P.sub.15 M.sub.9 R.sub.2 413.86 413.86 J.sub.2 P.sub.21 M.sub.1 R.sub.1 13.54 33.54 P.sub.22 M.sub.5 R.sub.2 39.54 74.54 P.sub.23 M.sub.8 R.sub.1 81.75 99.75 P.sub.24 M.sub.9 R.sub.2 121.45 151.45 J.sub.3 P.sub.31 M.sub.2 R.sub.2 44.14 74.14 P.sub.32 M.sub.6 R.sub.2 129.95 149.95 P.sub.33 M.sub.4 R.sub.2 281.98 321.98 P.sub.34 M.sub.8 R.sub.2 339.91 369.91 J.sub.4 P.sub.41 M.sub.5 R.sub.2 74.54 114.54 P.sub.42 M.sub.8 R.sub.2 134.21 154.21 P.sub.43 M.sub.9 R.sub.1 202.11 264.54
[0110]
TABLE-US-00008 TABLE 8 Results of the optimal scheduling scheme based on the improved genetic algorithm ( = 0.5) Start Completion Selected time for time for processing AGV procedure procedure Workpiece Procedure robot number processing processing J.sub.1 P.sub.11 M.sub.2 R.sub.1 46.75 71.75 P.sub.12 M.sub.7 R.sub.1 86.38 106.38 P.sub.13 M.sub.6 R.sub.2 119.71 149.71 P.sub.14 M.sub.3 R.sub.2 250.98 270.98 P.sub.15 M.sub.9 R.sub.2 282.98 300.98 J.sub.2 P.sub.21 M.sub.1 R.sub.2 13.54 33.54 P.sub.22 M.sub.5 R.sub.2 39.54 74.54 P.sub.23 M.sub.8 R.sub.2 81.75 99.75 P.sub.24 M.sub.9 R.sub.2 113.08 143.08 J.sub.3 P.sub.31 M.sub.1 R.sub.2 33.54 63.54 P.sub.32 M.sub.6 R.sub.1 149.71 169.71 P.sub.33 M.sub.4 R.sub.1 188.05 228.05 P.sub.34 M.sub.8 R.sub.1 252.53 282.53 J.sub.4 P.sub.41 M.sub.5 R.sub.1 74.54 114.54 P.sub.42 M.sub.8 R.sub.2 138.55 158.55 P.sub.43 M.sub.9 R.sub.2 171.89 201.89
[0111] Table 9 shows the final operation results for the three modes. It can be seen from the table that as the value of w increases, the completion time for processing is prolonged, and the total energy consumption is decreased. The value obtained from the optimal scheduling scheme is not much different from the average value, indicating that the corresponding algorithm has a better convergence.
TABLE-US-00009 TABLE 9 Results of the optimal scheduling scheme based on the improved genetic algorithm (unit time, kJ) Efficient Comprehensive Green processing processing processing mode mode mode Average completion 328.24 349.94 418.68 time Average total energy 2006.33 1981.07 1803.25 consumption Completion time of 296.381 319.67 468.38 optimal scheduling Total energy 1778.32 1876.32 1755.05 consumption of optimal scheduling
[0112] The embodiment disclosed above is implemented according to the technical solutions of the present disclosure, and detailed implementation and specific operation processes are provided, but the scope of protection of the present disclosure is not limited to the forgoing embodiment. It can be known from the above description that the present disclosure can be modified and substituted in many aspects. The specific values fixed in this embodiment are solely for the purpose of better illustrating the principles and applications of the present disclosure, thereby facilitating easier understanding and implementation. Any local modifications, equivalents and improvements made on the basis of the technical solutions of the present disclosure are included in the scope of protection of the present disclosure.