A joint scheduling method for machines and AGVs in assembly workshops considering optimal paths
By optimizing the joint scheduling of AGVs and machines through heuristic initialization and multi-objective learning artificial bee colony algorithm, the path conflict problem between AGVs and machine equipment in the assembly workshop was solved, optimal path planning was achieved, and production efficiency and safety were improved.
Patent Information
- Application Number
- CN202411765237.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-04
- Publication Date
- 2025-09-26
- Estimated Expiration
- 2044-12-04
AI Technical Summary
In the assembly workshop, how to coordinate the working sequence and transportation routes of AGV and machinery equipment to avoid conflicts during transportation, improve production efficiency and resource utilization, and ensure production safety.
A heuristic initialization scheduling scheme is adopted, combined with the A* algorithm and the multi-objective learning artificial bee colony algorithm to optimize the joint scheduling of AGVs and machines. The A* algorithm is used to find the conflict-free shortest time path, and the multi-objective learning artificial bee colony algorithm is used to optimize the scheduling scheme. A reasonable AGV route planning is designed to avoid conflicts and select the optimal route.
Effectively reduce the production and assembly time and energy costs in the final assembly workshop, improve production efficiency, ensure workshop production safety, and achieve conflict-free transportation.
Smart Images

Figure CN119668214B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method for jointly scheduling machines and AGVs in an assembly workshop taking into account an optimal path, and belongs to the field of production scheduling in an assembly workshop. Background Art
[0002] In the field of modern manufacturing and intelligent logistics, the improvement of automation and intelligence levels requires that all tasks in the workshop can be scheduled and coordinated efficiently and flexibly. AGV (Automated Guided Vehicle), as an automated transportation equipment widely used in manufacturing, warehousing and logistics, plays an increasingly important role in assembly workshops. However, with the complexity of production tasks and the expansion of workshop scale, how to ensure that AGVs do not conflict during transportation and can coordinate with various machines and equipment in the workshop has become a key issue in improving production efficiency and ensuring production safety. Therefore, the research on assembly workshop machines and AGV joint scheduling optimization technology for AGV conflict-free transportation is particularly important.
[0003] Joint scheduling of machines and AGVs in an assembly shop refers to the process of collaboratively optimizing machine and AGV scheduling within the shop. In traditional assembly shops, machine scheduling and material handling are typically performed independently, with machine scheduling typically completed first, followed by manual or other means. Joint scheduling, however, combines the two, fully considering machine operating status and material handling requirements. It aims to optimize assembly processes and resource utilization, avoid machine waiting due to missing materials, and reduce manual intervention, thereby improving production efficiency and resource utilization.
[0004] The key to joint scheduling optimization lies in coordinating the work order, transportation routes, and timing between AGVs and workshop machines. AGV scheduling isn't just about traditional task allocation; it also involves collaboration with various types of production equipment within the workshop. For example, AGVs need to transport materials and parts between different workstations. Ensuring that their transportation routes don't conflict with operating machinery and equipment, and that the AGV's transportation doesn't impact the production efficiency of these machines, is a core task in joint scheduling optimization. Summary of the Invention
[0005] In response to the shortcomings of the existing technology, the present invention provides a method for jointly scheduling machines and AGVs in an assembly workshop, taking into account the optimal path. Compared with traditional scheduling, the joint scheduling of AGVs and machines fully considers the problems encountered in AGV transportation, such as transportation time cost and transportation route conflicts, and provides a reasonable AGV conflict-free path solution. At the same time, taking into account factors such as machine location and path length, the AGV transportation time is also considered as a factor in the selection of machines, and the optimal route with no conflict, obstacle avoidance, and the shortest running time is selected for the AGV. It can effectively reduce the time cost and energy cost of production and assembly in the final assembly workshop and improve fresh food efficiency. And through reasonable AGV route planning, conflict-free transportation in the workshop can be achieved, ensuring workshop production safety.
[0006] The technical solution adopted by the present invention to achieve the above-mentioned purpose is:
[0007] A method for jointly scheduling machines and AGVs in an assembly workshop considering an optimal path includes the following steps:
[0008] 1) Based on the joint scheduling process of machines and AGVs in special assembly workshops, a heuristic initialization scheduling scheme is proposed;
[0009] 2) Using the A* algorithm and time windows to find the conflict-free shortest time path for AGV transportation tasks, and optimizing and adjusting the scheduling plan based on the shortest time path using a multi-objective learning artificial bee colony algorithm;
[0010] 3) Select the optimized assembly workshop machine and AGV joint scheduling scheme for production scheduling.
[0011] The step 1) comprises the following steps:
[0012] 1.1) Initialize the scheduling information of AGV and machine processing;
[0013] 1.2) Assume that the total number of machines is M, with machine code m, where m∈(1,M), the total number of AGVs is W, with AGV code w, where w∈(1,W), and a batch of orders requires the production of n types of workpieces, each of which requires J processes, with process number j, where j∈(1,J). The order scheduling plan is encoded to form a real number vector of n×(2×J+1) dimensions. Each individual represents a scheduling plan, and the order of the individual dimensions represents the order of the machines and AGVs in the scheduling plan during the processing. The scheduling plan encoding form for the processing process of a workpiece is X=|j w ,j m ,j w ,j m ,...,j w |, then the individual real vector form is [X1,X2,...,X n ];
[0014] 1.3) Based on the initialized scheduling information, a heuristic initial population is created to randomly generate N individuals within the set range, i.e., N special assembly workshop scheduling plans.
[0015] The step 1.3) comprises the following steps:
[0016] 1.3.1) Randomly generate a production process sequence based on scheduling information;
[0017] 1.3.2) Traverse the AGVs and machines in the production process sequence in sequence;
[0018] 1.3.3) Determine whether the traversal is complete. If so, output the individual processes, AGVs, and machines. Otherwise, traverse the currently idle AGVs.
[0019] 1.3.4) Calculate the arrival time of each AGV, select the AGV number with the shortest arrival time, and generate the AGV sequence;
[0020] 1.3.5) Traverse all optional machines required for the processing process, calculate the completion time on each optional machine, generate the machine number with the shortest completion time, generate the machine sequence, and return to step 1.3.3).
[0021] Described step 2) comprises the following steps:
[0022] 2.1) Initialize the maximum number of iterations T in the artificial bee colony algorithm parameters max , the number of unimproved generations L of individuals and the total number of individuals N as the population size;
[0023] 2.2) Determine whether the current number of iterations has reached the maximum number T max If it is reached, stop the iteration and output the scheduling plan; otherwise, execute step 2.3);
[0024] 2.3) Using A * The algorithm solves the shortest path for each individual without path conflict;
[0025] 2.4) Record the transportation time and path of each transportation task of each AGV without path conflict and generate a new individual;
[0026] 2.5) According to the number of new individuals, determine whether a non-dominated sorting hierarchy is generated. If not, execute step 2.6). Otherwise, for the population P N Perform express non-dominated sorting, calculate the crowding distance, sort the crowding distance, and retain the individuals whose order meets the threshold:
[0027] 2.6) Integrate the generated new individuals into P N Form a new population Pnew , the scale is N;
[0028] 2.7) Establish an optimization model for the joint scheduling of machines and AGVs in the assembly workshop;
[0029] 2.8) Based on the optimization model, P is sorted in order according to the hierarchy of the target value dominance relationship. new Conduct screening;
[0030] 2.9) Increase the current number of iterations by 1 and return to step 2.2).
[0031] The step 2.3) is specifically as follows:
[0032] Set each individual to be a new individual:
[0033] {x i,j |x i,j ∈[X1,X2,...,X n ],i=1,2,…,N,j=1,2,…n′(2′J+1)}
[0034] Assign the shortest distance without path conflict to each new individual. The starting point and end point of each transportation task of each AGV are known in the new individual. Use A * The algorithm solves the shortest path f of the AGV's transportation task l (r):
[0035] f l (r)=g(r)+h(r)
[0036]
[0037] Where l represents the AGV number, g(r) represents the length of the path the AGV has traveled, h(r) represents the Euclidean distance between the AGV's current location and the target destination, (x, y) represents the coordinates of the AGV's target destination, and (x', y') represents the current location coordinates of the AGV. All tasks F(n) for each AGV are expressed as:
[0038]
[0039] Among them, L represents the total number of AGVs, the transportation routes of all AGVs are recorded, and the position and current time of the AGV are recorded using a time window. If the distance between two AGVs at the same time is less than one path unit, it is considered a conflict between the two AGVs.
[0040] When there is a conflict between two AGVs, the following methods are used to resolve the conflict:
[0041] Case 1: The collision point is not the AGV turning point.
[0042] If the path is occupied and the two AGVs become obstacles to each other, the AGV that arrives later will change its path;
[0043] Case 2: The conflict point is the AGV turning point.
[0044] If two AGVs occupy an inflection point at the same time, and the path of AGV1 after passing the inflection point is the same as the path of AGV2 before passing the inflection point, the transportation time after AGV1 changes its path is calculated. If the transportation time is greater than the waiting time, AGV1 waits for AGV2 to pass the inflection point, releases the path, and then occupies the path through the inflection point; otherwise, AGV1 changes its path.
[0045] Case 3: The conflict point is the AGV turning point.
[0046] If two AGVs occupy an inflection point at the same time, and the path after the AGV passes the inflection point is the path occupied by the other AGV, the path of the AGV that arrives later will be changed;
[0047] Case 4: Conflict at the AGV inflection point
[0048] If two AGVs occupy the turning point at the same time and go to different paths, one of the AGVs will wait for two unit times while the other AGV passes first.
[0049] The step 2.4) is specifically as follows:
[0050] According to an existing individual x i,j Find a new candidate individual v i,j :
[0051] v i,j =x i,j +a t,i ·d i,j (x i,j -x k,j )
[0052] Among them, random number k=1,2,…,N,k1i,δ i,j is a coefficient randomly generated in the range of [-1,1], a t,i Represents the reward in the current search direction. If the individual is in v i,j The state is better than x i,j The state proves that the search direction is correct and reduces a t,i The value of is used to enhance the local search capability. If the individual is at time v i,j The status is not better than x i,j The state proves that the search direction is wrong and improves a t,iThe value of is used to enhance the global search capability and help jump out of the local solution. If an individual does not make any improvement within L generations, the individual is discarded and a new individual is generated according to the following formula:
[0053]
[0054] in, is a random number in the range [-1, 1], x min,j and x max,j is the minimum and maximum value of the j-th dimension in the current generation of individuals.
[0055] The congestion distance is specifically:
[0056]
[0057] F dism represents the crowding distance of the i-th individual in the m-th objective function, f m represents the mth objective function, x max represents the maximum value of all individuals under the m function, x min Indicates the minimum value.
[0058] The scheduling optimization objective function of the optimization model for the joint scheduling of assembly workshop machines and AGVs includes: minimizing the maximum completion time considering production efficiency, defined as f1; minimizing energy consumption considering energy cost, defined as f2; and minimizing the total delay considering customer satisfaction, defined as f3, which are specifically:
[0059] (1) Set C i =FMt iJm +ht mL , is the completion time of the last process of the i-th job, where FMt iJm represents the end time of machining of the last process of the i-th workpiece, ht mL represents the time required for AGV to transport the processing machine m from the last process to the finished product area, then the minimized maximum processing time is expressed as:
[0060]
[0061] Where i = 1, 2, ..., n is the index of the workpiece, j = 1, 2, ..., J is the index of the workpiece process;
[0062] (2) Set f 21 is the load energy consumption of the machine and AGV during processing, f 22 is the no-load energy consumption of the machine and AGV during processing, and the minimized total energy consumption is expressed as:
[0063]
[0064] f2=f 21 +f 22
[0065] Among them, SMt ijm FMt represents the starting time of the jth process of the i-th workpiece on machine m. ijm It represents the finishing time of the jth process of the i-th workpiece on machine m, SAt ijw FAt represents the transportation start time of the jth process of the i-th workpiece on AGVw, ijw SMt' represents the transportation completion time of the jth process of the i-th workpiece on AGVw. ijm FMt' represents the idle start time after the jth process of the i-th workpiece on the machine m is completed. ijm SAt' represents the idle end time after the jth process of the i-th workpiece on the machine m is completed. ijw FAt' represents the idle start time of the transport task of the jth process of the i-th workpiece on AGVw, ijw represents the idle end time of the transport task of the jth process of the i-th workpiece on AGVw, EM e , EM ne Indicates the load energy consumption and no-load energy consumption of the machine, EA e , EA ne Indicates the load energy consumption and no-load energy consumption of AGV;
[0066] (3) Minimize total delay:
[0067]
[0068] Among them, C i 、D i 、R i They represent the completion time, delivery time, and raw material arrival time of workpiece i respectively.
[0069] The step 2.8) comprises the following steps:
[0070] 2.8.1) Regularize all target values, construct a hyperplane with a 3-axis intercept of 1, and divide the hyperplane boundary into equal parts, so that the hyperplane is evenly divided. Obtain several reference points, which constitute the reference point set Z;
[0071] 2.8.2) Associate all individuals in the first p layers to the nearest reference point and calculate the distance d between each individual and its nearest reference point;
[0072] 2.8.3) Calculate the number of individuals associated with each reference point;
[0073] 2.8.4) For each reference point, select the first K individuals that are closest to it and are associated with it to enter the next generation population P N .
[0074] The present invention has the following beneficial effects and advantages:
[0075] 1. This invention establishes an accurate joint scheduling model for machines and AGVs in the final assembly workshop and designs an algorithm with strong global search capabilities, fast convergence speed, and high solution accuracy, which enables rapid automatic calculation by computer, greatly improves the efficiency of workshop production scheduling, reduces safety hazards, and ensures safe production.
[0076] 2. Compared with traditional scheduling, AGV and machine joint scheduling fully considers the transportation time cost, transportation route conflicts and other issues encountered by AGV transportation, and provides reasonable AGV conflict-free routing solutions. This reduces production scheduling costs and achieves energy saving and efficiency improvement for enterprises. BRIEF DESCRIPTION OF THE DRAWINGS
[0077] Figure 1 Flowchart of heuristically creating a new initial population;
[0078] Figure 2 Schematic diagram of AGV collision;
[0079] Figure 3 AGV node conflict diagram;
[0080] Figure 4 Flowchart of the AGV path optimization process;
[0081] Figure 5 Flow chart of the method of the present invention;
[0082] Figure 6 Map of a company's assembly workshop;
[0083] Figure 7 Ante diagram of the optimization scheme for minimum completion time;
[0084] Figure 8 Multi-objective Pareto atlas. DETAILED DESCRIPTION
[0085] The present invention will be further described in detail below with reference to the accompanying drawings and embodiments.
[0086] like Figure 5 As shown, a method for jointly scheduling machines and AGVs in an assembly workshop considering an optimal path includes the following steps:
[0087] Step 1: Based on the joint scheduling process of machines and AGVs in the special assembly workshop, a heuristic scheduling scheme is initialized;
[0088] Step 2: Use the A* algorithm and time window to find the conflict-free shortest time path selection for the AGV transportation task, and optimize and adjust the scheduling plan using the multi-objective learning artificial bee colony algorithm;
[0089] Step 3: Select the optimized assembly workshop machine and AGV joint scheduling plan for production scheduling.
[0090] The step 1 includes initializing N joint scheduling schemes P N , that is, the population size is N, as follows:
[0091] Step 1.1: Initialize the scheduling information of the AGV and machine processing, including: a map of a company's special assembly workshop, the number of AGVs, the AGV energy consumption when empty and loaded, the number and location of machines, the energy consumption of machines when empty and loaded, and the order size;
[0092] Step 1.2: Assume that the total number of machines is M, and the machine code is m, where m∈(1,M); the total number of AGVs is W, and the AGV code is w, where w∈(1,W). Assume that a batch of orders requires the production of n types of workpieces; each workpiece requires J processes, and the process number is j, where j∈(1,J); encode the order scheduling plan to form an n×(2×J+1)-dimensional real number vector, where each individual represents a scheduling plan; the order of the individual dimensions represents the order of the machines and AGVs in the scheduling plan during the processing; the scheduling plan encoding form for the processing process of a workpiece is X=|j w ,j m ,j w ,j m ,...,j w |; then the individual real vector form is [X1,X2,...,X n ];
[0093] Step 1.3: Based on the scheduling information initialized in step 1.1, heuristically create an initial population to randomly generate N individuals within the set range, that is, N special assembly workshop scheduling plans. Figure 1 It is a flowchart of the heuristic creation of a new initial population.
[0094] The step 2 comprises the following steps:
[0095] Step 2.1: Initialize the algorithm parameters, including the maximum number of iterations T max , individual unimproved generations L, population size N;
[0096] Step 2.2: If the current number of iterations reaches the preset maximum number T max , then stop the iteration, output the scheduling plan, and continue with step 3; otherwise, continue with step 2.3;
[0097] Step 2.3: Set each individual as a new individual, as follows:
[0098] {x i,j |x i,j ∈[X1,X2,...,X n ],i=1,2,…,N,j=1,2,…n′(2′J+1)}
[0099] Assign the shortest distance without path conflict to each new individual. The starting point and end point of each transportation task of each AGV are known in the new individual. * The algorithm solves the shortest path for AGV's transportation task:
[0100] f l (r)=g(r)+h(r)
[0101] l represents the AGV number, g(r) represents the length of the path the AGV has traveled, and h(r) represents the Euclidean distance between the current point of the AGV and the target end point:
[0102]
[0103] (x, y) represents the coordinates of the AGV's target destination, (x', y') represents the current position coordinates of the AGV, and all tasks of each AGV are expressed as:
[0104]
[0105] L represents the total number of AGVs. The transport routes of all AGVs are recorded. The AGV positions and current times are recorded using time windows. If the distance between two AGVs at the same time is less than one path unit, it is considered a conflict between the two AGVs. Conflict-free processing is performed in the following four cases:
[0106] 1) The conflict point is not the opposite conflict of the AGV turning point. If the path is occupied, the two AGVs will hinder each other: the transportation path of the AGV task is changed.
[0107] 2) The conflict point is an AGV collision at a turning point. Two AGVs occupy the turning point at the same time, and the path of AGV1 after passing the turning point is the path of AGV2 before passing the turning point. Method 1: AGV1 waits for AGV2 to pass the turning point, releases the path, and then reoccupies the path through the turning point. Method 2: AGV1 changes the path. Calculate the transport time after AGV1 changes the path. If the transport time is greater than the waiting time, use Method 1; otherwise, use Method 2.
[0108] 3) The conflict point is the conflict of the AGV turning point. Two AGVs occupy the turning point at the same time. The path after the AGV passes the turning point is the path occupied by the other AGV: the AGV changes the path.
[0109] 4) The conflict point is the node conflict of the AGV inflection point. Two AGVs occupy the inflection point at the same time and take different paths: one AGV waits for two unit times, and the other AGV passes first.
[0110] Figure 2 This is a schematic diagram of AGV conflict. Figure 3 This is a schematic diagram of AGV node conflict. Figure 4 It is a flow chart of the AGV path optimization process.
[0111] The transportation time and path of each transportation task of each AGV without path conflict are recorded to calculate the individual fitness value and plan the AGV route in workshop scheduling.
[0112] According to an existing individual x i,j To find a new candidate individual v i,j , this candidate individual is a neighbor of an existing individual:
[0113] v i,j =x i,j +a t,i ·d i,j (x i,j -x k,j )
[0114] Where, k=1,2,…,N, k is randomly determined, k1i;δ i,j Randomly generated in the range [-1,1], a t,i Represents the reward in the current search direction. If the individual is in v i,j The state is better than x i,j The state proves that the search direction is correct and reduces a t,i The value of is used to enhance the local search capability. If the individual is at time v i,j The status is not better than x i,j The state proves that the search direction is wrong and improves a t,i The value of is used to enhance the global search capability and help jump out of the local solution. Table 1 shows the individual state and a t,i The specific situation of the value.
[0115] Table 1 Individual status relationship table
[0116] state <![CDATA[x i,j ]]> <![CDATA[v i,j ]]> Current Status feedback <![CDATA[Corresponding to a t > 1 feasible solution feasible solution <![CDATA[V i <In i ]]> 1 Rand[0,0.5] 2 <![CDATA[U i <In i ]]> -1 Rand[1,2] 3 <![CDATA[U i and V i No domination of each other]]> 0 Rand[0,1]
[0117] δ i,j 、a t,i To control x i,j The generation of new individuals around;
[0118] If an individual does not show any improvement within L generations, the individual is discarded and a new individual is generated according to the following formula:
[0119]
[0120] in, is a random number in the range [-1, 1]; x min,j and x max,j is the minimum and maximum value of the j-th dimension in the current generation of individuals;
[0121] Step 2.4: If the non-dominated sorting hierarchy is not generated, proceed directly to step 2.5; otherwise, for the population P N Perform non-dominated sorting of express deliveries, calculate the congestion distance, and retain the better solution:
[0122]
[0123] F dism represents the crowding degree of the i-th individual in the m-th objective function. m represents the mth objective function.
[0124] x max represents the maximum value of all individuals under the m function, x min Indicates the minimum value.
[0125] Step 2.5: Integrate the new individuals generated in steps 2.3 and 2.4 into P N Form a new population P new , the scale is N;
[0126] Step 2.6: Build an optimization model for the joint scheduling of machines and AGVs in the assembly workshop;
[0127] Step 2.7: Order P according to the level of target value dominance relationship new To filter,
[0128] Step 2.8: Increase the current number of iterations by 1 and return to step 2.2.
[0129] The step 2.6 is as follows:
[0130] Step 2.6.1: Establish an optimization objective function for scheduling the production process between machines and AGVs. The optimization objectives of this function include: minimizing the maximum completion time considering production efficiency, defined as f1; minimizing energy consumption considering energy costs, defined as f2; and minimizing the total delay considering customer satisfaction, defined as f3. The optimization objectives are as follows:
[0131] 1) Set C i =FMt iJm +ht mL, is the completion time of the last process of the i-th job, where FMt iJm represents the end time of machining of the last process of the i-th workpiece, ht mL It represents the time required for AGV to transport the processing machine m from the last process to the finished product area. The minimum maximum processing time is expressed as:
[0132]
[0133] Where i = 1, 2, ..., n is the index of the workpiece, j = 1, 2, ..., J is the index of the workpiece process;
[0134] 2) Set f 21 is the load energy consumption of the machine and AGV during processing, f 22 is the no-load energy consumption of the machine and AGV during processing, and the minimized total energy consumption is expressed as:
[0135]
[0136] f2=f 21 +f 22
[0137] Among them, SMt ijm FMt represents the starting time of the jth process of the i-th workpiece on machine m. ijm It represents the finishing time of the jth process of the i-th workpiece on machine m, SAt ijw FAt represents the transportation start time of the jth process of the i-th workpiece on AGVw, ijw SMt' represents the transportation completion time of the jth process of the i-th workpiece on AGVw. ijm FMt' represents the idle start time after the jth process of the i-th workpiece on the machine m is completed. ijm SAt' represents the idle end time after the jth process of the i-th workpiece on the machine m is completed. ijw FAt' represents the idle start time of the transport task of the jth process of the i-th workpiece on AGVw, ijw It represents the end time of the transport task of the jth process of the i-th workpiece on AGVw. e , EM ne Indicates the load energy consumption and no-load energy consumption of the machine, EA e , EA ne Indicates the loaded energy consumption and no-load energy consumption of the AGV.
[0138] 3) Minimize total delay:
[0139]
[0140] Among them, C i 、D i 、R i They represent the completion time, delivery time, and raw material arrival time of workpiece i respectively.
[0141] The step 2.7 is as follows:
[0142] Step 2.7.1: Regularize all target values; establish a hyperplane with a 3-axis intercept of 1, and divide the hyperplane boundary into equal parts, so that the hyperplane is evenly divided, to obtain several reference points, which constitute the reference point set Z;
[0143] Step 2.7.2: Associate all individuals in the first p layers to the nearest reference point and calculate the distance d between each individual and its nearest reference point to associate each reference point with the individuals around it;
[0144] Step 2.7.3: Calculate the number of individuals associated with each reference point;
[0145] Step 2.7.4: For each reference point, select the first K individuals that are closest to it and are associated with it to enter the next generation population P N .
[0146] The following takes the production scheduling calculation of a special assembly workshop of a certain enterprise as an example, and further illustrates the joint scheduling method of assembly workshop machines and AGVs considering the optimal path of the present invention in combination with the accompanying drawings.
[0147] A joint scheduling method for machines and AGVs in an assembly workshop considering optimal paths is used to allocate production resources for machines and AGVs in an assembly workshop, including the following steps:
[0148] Step 1: Initialize 100 scheduling schemes P 100 , that is, the population size is 100;
[0149] Step 1.1: Initialize the information of the assembly workshop scheduling process, Figure 6 This is a map of an assembly workshop in a certain company. There are 8 machines and 4 AGVs in the workshop. Table 2 shows the details of the workshop production orders. i Indicates the type of workpiece i, O ij represents the jth process for workpiece i. It includes the order workpiece, raw material arrival time, process, and delivery date. This order produces eight workpiece types, each with 10 processes. Table 3 shows the energy consumption per unit time for each machine and AGV, both loaded and unloaded.
[0150] Table 2 Orders with workpiece arrival time and delivery period (unit: minutes)
[0151]
[0152]
[0153]
[0154] Table 3 Machine and AGV numbers and energy consumption under no-load (unit: KW)
[0155] equipment M1 M2 M3 M4 M5 M6 M7 M8 AGV1 AGV2 AGV3 AGV4 serial number 1 2 3 4 5 6 7 8 9 10 11 12 No load 0.5 3 8 3 5 0.7 3 8 1.5 1.5 1.5 1.5 load 3 10 15 10 20 5 10 15 5 5 5 5
[0156] Step 1.2: Each workpiece requires 10 steps. Initially, an AGV transports the raw material from the raw material area to the processing machine. After processing, the AGV transports the raw material to the next processing machine, and finally, the AGV transports the raw material to the finished product area. Each workpiece requires the coordinated cooperation of machines and AGVs from production to storage. The 10 steps require 10 machines from start to storage, and the AGV performs 11 transport tasks. Therefore, each workpiece code requires 21 elements, consisting of the machine and AGV numbers. The entire order is a vector consisting of 168 elements.
[0157] Step 1.3: Based on the scheduling information initialized in step 1.1, create an initial population and randomly generate 100 individuals, that is, 100 assembly workshop scheduling plans, as shown in Table 4;
[0158] Table 4 Initialized 100 individuals
[0159]
[0160]
[0161]
[0162] Step 2: Design a multi-objective learning artificial bee colony algorithm to optimize and adjust the solution;
[0163] Step 3: Select an optimized assembly workshop machine and AGV joint scheduling optimization solution for production scheduling, Figure 7 It is the Anter chart of the optimal solution for minimum completion time. Figure 8 It is a multi-objective Pareto atlas.
[0164] Based on the traditional A* algorithm, the present invention introduces new requirements for path planning by adding a time window. In a workshop, the AGV may need to reach certain specific locations within a specific time period, or avoid certain machines and equipment within a certain time period. Therefore, path planning must not only consider the length of the path, but also must meet the time window constraints during the path search process. The present invention combines Q-learning with the ABC algorithm, which can introduce the autonomous learning ability of reinforcement learning in the optimization process. Q-learning can guide the search process of the artificial bee colony algorithm by learning the reward values of different scheduling strategies. In this way, the ABC algorithm can dynamically adjust the search strategy according to the actual scheduling situation, thereby further improving the efficiency and adaptability of scheduling.
[0165] Optimizing the coordinated scheduling of AGVs and machines in an assembly shop for conflict-free transport is a crucial topic in intelligent manufacturing and holds far-reaching significance. Proper scheduling optimization not only improves AGV transport efficiency within the shop floor but also ensures coordinated operation with other equipment, avoiding conflicts and maximizing resource utilization, providing strong support for the intelligent development of the manufacturing industry.
Claims
1. A method for jointly scheduling machines and AGVs in an assembly workshop considering an optimal path, characterized by comprising the following steps: 1) Based on the joint scheduling process of machines and AGVs in special assembly workshops, a heuristic initialization scheduling scheme is proposed; 2) Using the A* algorithm and time windows to find the conflict-free shortest time path for AGV transportation tasks, and optimizing and adjusting the scheduling plan based on the shortest time path using a multi-objective learning artificial bee colony algorithm; 3) Select the optimized assembly workshop machine and AGV joint scheduling scheme for production scheduling; The step 1) comprises the following steps: 1.1) Initialize the scheduling information of AGV and machine processing; 1.2) Assume that the total number of machines is M, with machine code m, where m∈(1,M), the total number of AGVs is W, with AGV code w, where w∈(1,W), and a batch of orders requires the production of n types of workpieces, each of which requires J processes, with process number j, where j∈(1,J). The order scheduling plan is encoded to form a real number vector of n×(2×J+1) dimensions. Each individual represents a scheduling plan, and the order of the individual dimensions represents the order of the machines and AGVs in the scheduling plan during the processing. The scheduling plan encoding form for the processing process of a workpiece is X=|j w ,j m ,j w ,j m ,...,j w |, then the individual real vector form is [X1,X2,...,X n ]; 1.3) Based on the initialized scheduling information, a heuristic initial population is created to randomly generate N individuals within a set range, i.e., N special assembly workshop scheduling plans; The step 1.3) comprises the following steps: 1.3.1) Randomly generate a production process sequence based on scheduling information; 1.3.2) Traverse the AGVs and machines in the production process sequence in sequence; 1.3.3) Determine whether the traversal is complete. If so, output the individual processes, AGVs, and machines. Otherwise, traverse the currently idle AGVs. 1.3.4) Calculate the arrival time of each AGV, select the AGV number with the shortest arrival time, and generate the AGV sequence; 1.3.5) Traverse all optional machines required for the processing process, calculate the completion time on each optional machine, generate the machine number with the shortest completion time, generate a machine sequence, and return to step 1.3.3); Described step 2) comprises the following steps: 2.1) Initialize the maximum number of iterations T in the artificial bee colony algorithm parameters max , the number of unimproved generations L of individuals and the total number of individuals N as the population size; 2.2) Determine whether the current number of iterations has reached the maximum number T max , if it is reached, stop the iteration and output the scheduling plan; Otherwise, go to step 2.3); 2.3) Using A * The algorithm solves the shortest path for each individual without path conflict; 2.4) Record the transportation time and path of each transportation task of each AGV without path conflict and generate a new individual; 2.5) According to the number of new individuals, determine whether a non-dominated sorting hierarchy is generated. If not, execute step 2.6). Otherwise, for the population P N Perform express non-dominated sorting, calculate the crowding distance, sort the crowding distance, and retain the individuals whose order meets the threshold: 2.6) Integrate the generated new individuals into P N Form a new population P new , the scale is N; 2.7) Establish an optimization model for the joint scheduling of machines and AGVs in the assembly workshop; 2.8) Based on the optimization model, P is sorted in order according to the hierarchy of the target value dominance relationship. new Conduct screening; 2.9) Increase the current number of iterations by 1 and return to step 2.2); The scheduling optimization objective function of the optimization model for the joint scheduling of assembly workshop machines and AGVs includes: minimizing the maximum completion time considering production efficiency, defined as f1; minimizing energy consumption considering energy cost, defined as f2; and minimizing the total delay considering customer satisfaction, defined as f3, which are specifically: (1) Setting is the completion time of the last process of the i-th job, where FMt iJm represents the end time of machining of the last process of the i-th workpiece, ht mL represents the time required for AGV to transport the processing machine m from the last process to the finished product area, then the minimized maximum processing time is expressed as: Where i = 1, 2, ..., n is the index of the workpiece, j = 1, 2, ..., J is the index of the workpiece process; (2) Set f 21 is the load energy consumption of the machine and AGV during processing, f 22 is the no-load energy consumption of the machine and AGV during processing, and the minimized total energy consumption is expressed as: f2=f 21 +f 22 Among them, SMt ijm FMt represents the starting time of the jth process of the i-th workpiece on machine m. ijm It represents the finishing time of the jth process of the i-th workpiece on machine m, SAt ijw FAt represents the transportation start time of the jth process of the i-th workpiece on AGVw, ijw SMt' represents the transportation completion time of the jth process of the i-th workpiece on AGVw, ijm FMt' represents the idle start time after the jth process of the i-th workpiece on the machine m is completed. ijm SAt' represents the idle end time after the jth process of the i-th workpiece on the machine m is completed. ijw FAt' represents the idle start time of the transport task of the jth process of the i-th workpiece on AGVw, ijw represents the idle end time of the transport task of the jth process of the i-th workpiece on AGVw, EM e , EM ne Indicates the load energy consumption and no-load energy consumption of the machine, EA e , EA ne Indicates the load energy consumption and no-load energy consumption of AGV; (3) Minimize total delay: Among them, C i 、D i They represent the completion time and delivery time of workpiece i respectively.
2. The method for jointly scheduling machines and AGVs in an assembly workshop considering the optimal path according to claim 1, characterized in that: The step 2.3) is specifically as follows: Set each individual to be a new individual: { x i,j |x i,j ∈[X1,X2,…,X n ],i=1,2,…,N,j=1,2,…n×(2×J+1)} Assign the shortest distance without path conflict to each new individual. The starting point and end point of each transportation task of each AGV are known in the new individual. Use A * The algorithm solves the shortest path f of the AGV's transportation task l (r): f l (r)=g(r)+h(r) Where l represents the AGV number, g(r) represents the length of the path the AGV has traveled, h(r) represents the Euclidean distance between the AGV's current location and the target destination, (x, y) represents the coordinates of the AGV's target destination, and (x', y') represents the current location coordinates of the AGV. All tasks F(n) for each AGV are expressed as: Among them, L represents the total number of AGVs, the transportation routes of all AGVs are recorded, and the position and current time of the AGV are recorded using a time window. If the distance between two AGVs at the same time is less than one path unit, it is considered a conflict between the two AGVs.
3. The method for jointly scheduling machines and AGVs in an assembly workshop considering the optimal path according to claim 2, characterized in that: When there is a conflict between two AGVs, the following methods are used to resolve the conflict: Case 1: The collision point is not the AGV turning point. If the path is occupied and the two AGVs become obstacles to each other, the AGV that arrives later will change its path; Case 2: The conflict point is the AGV turning point. Two AGVs occupy an inflection point at the same time, and the path of AGV1 after passing the inflection point is the path of AGV2 before passing the inflection point. The transportation time after AGV1 changes its path is calculated. If the transportation time is greater than the waiting time, AGV1 waits for AGV2 to pass the inflection point, releases the path, and then occupies the path through the inflection point; otherwise, AGV1 changes its path. Case 3: The conflict point is the opposite conflict of the AGV inflection point If two AGVs occupy an inflection point at the same time, and the path after the AGV passes the inflection point is the path occupied by the other AGV, the path of the AGV that arrives later will be changed; Case 4: Conflict at the AGV inflection point If two AGVs occupy the turning point at the same time and go to different paths, one of the AGVs will wait for two unit times while the other AGV passes first.
4. The method for jointly scheduling machines and AGVs in an assembly workshop considering an optimal path according to claim 1, characterized in that: The step 2.4) is specifically as follows: According to an existing individual x i,j Find a new candidate individual v i,j : v i,j =x i,j +a t,i ·δ i,j (x i,j -x k,j ) Among them, random number k=1,2,…,N,k≠i,δ i,j is a coefficient randomly generated in the range of [-1,1], a t,i Represents the reward in the current search direction. If the individual is in v i,j The state is better than x i,j The state proves that the search direction is correct and reduces a t,i The value of is used to enhance the local search capability. If the individual is at time v i,j The status is not better than x i,j The state proves that the search direction is wrong and improves a t,i The value of is used to enhance the global search capability and help jump out of the local solution. If an individual does not make any improvement within L generations, the individual is discarded and a new individual is generated according to the following formula: in, is a random number in the range [-1, 1], x min,j and x max,j is the minimum and maximum value of the j-th dimension in the current generation of individuals.
5. The method for jointly scheduling machines and AGVs in an assembly workshop considering the optimal path according to claim 1, characterized in that: The congestion distance is specifically: F dism represents the crowding distance of the i-th individual in the m-th objective function, f m represents the mth objective function, x max represents the maximum value of all individuals under the m function, x min Indicates the minimum value.
6. The method for jointly scheduling machines and AGVs in an assembly workshop considering the optimal path according to claim 1, characterized in that: The step 2.8) comprises the following steps: 2.8.1) Regularize all target values, construct a hyperplane with a 3-axis intercept of 1, and divide the hyperplane boundary into equal parts, so that the hyperplane is evenly divided. Obtain several reference points, which constitute the reference point set Z; 2.8.2) Associate all individuals in the first p layers to the nearest reference point and calculate the distance d between each individual and its nearest reference point; 2.8.3) Calculate the number of individuals associated with each reference point; 2.8.4) For each reference point, select the first K individuals that are closest to it and are associated with it to enter the next generation population P N .
Citation Information
Patent Citations
Steelmaking and continuous casting scheduling method based on artificial bee colony (ABC)
CN105785963A
Railway freight customer segmentation method based on RFM model and artificial bee colony algorithm
CN113886442A