An agv cross-warehouse distribution task scheduling method and device based on a particle swarm algorithm

By using the particle swarm optimization algorithm to decompose cross-workshop tasks into independent workshop tasks, optimizing the task allocation sequence, and generating AGV scheduling route maps, the problems of high computational complexity and easy getting trapped in local optima in existing technologies are solved, and efficient AGV scheduling is achieved.

CN119849830BActive Publication Date: 2025-10-24ZHEJIANG UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411923161.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-25
Publication Date
2025-10-24
Estimated Expiration
2044-12-25

AI Technical Summary

Technical Problem

Existing multi-AGV multi-task scheduling methods are difficult to cope with multi-objective optimization requirements in complex task scenarios, have high computational complexity, are difficult to meet real-time requirements, and traditional algorithms have problems such as slow convergence speed and easy to get trapped in local optima.

Method used

The particle swarm optimization algorithm is used to decompose cross-workshop tasks into sub-tasks within independent workshops. By initializing the particle swarm, updating the task allocation sequence, and performing variable neighborhood search, the task allocation is optimized by combining the fitness function, and an AGV scheduling route map is generated.

Benefits of technology

It reduces the computational complexity of multi-workshop scheduling problems, shortens the time for obtaining AGV scheduling route maps, and improves task scheduling efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119849830B_ABST
    Figure CN119849830B_ABST
Patent Text Reader

Abstract

The embodiment of the specification discloses an AGV cross-warehouse distribution task scheduling method and device based on a particle swarm algorithm, which comprises the following steps: S101, acquiring a cross-warehouse task, decomposing the cross-warehouse task into tasks of different warehouses and merging the tasks with tasks in each warehouse to obtain to-be-executed tasks of each warehouse; S102, initializing a particle swarm, and updating an initial optimal task allocation sequence of the particle swarm according to a fitness function, wherein a particle in the particle swarm represents a task allocation sequence in a single warehouse; S103, updating each task allocation sequence according to a velocity updating formula and a position updating formula, then performing a variable neighborhood search, and updating an optimal task allocation sequence according to the fitness function after each operation; S104, if the number of iterations is not met, performing S103, and if the number of iterations is met, outputting an optimal task allocation sequence of the current particle swarm to obtain an AGV scheduling route map of a single warehouse, and controlling AGVs in the warehouse to execute distribution tasks according to the scheduling route map.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of logistics task allocation, in particular to an AGV cross-plant distribution task scheduling method and device based on a particle swarm algorithm, an electronic device and a storage medium. BACKGROUND

[0002] With the rapid development of the intelligent manufacturing industry, the production logistics operation of the intelligent factory presents the characteristics of long transportation distance, task flexibility, and high operation frequency. In this environment, cross-plant material distribution task scheduling has become an indispensable part of the intelligent logistics system. Existing logistics scheduling tasks often involve the cooperation of multiple plants, and usually require multiple automated guided vehicles (AGVs) to run efficiently between different plants or within a plant.

[0003] Current multi-AGV multi-task scheduling methods mainly include rule-based scheduling methods, mathematical programming-based optimization methods, and meta-heuristic algorithm-based optimization methods. Rule-based scheduling methods allocate tasks through fixed logic (such as shortest path first, first-come-first-served, etc.). Although the calculation speed is fast, it lacks flexibility in complex task scenarios and is difficult to meet the demand for multi-objective optimization. Mathematical programming-based optimization methods convert the scheduling problem into an integer programming model and solve it with linear programming or dynamic programming, but the computational complexity rises sharply when the task size is large or the target is complex, making it impossible to meet real-time requirements. Optimization methods based on meta-heuristic algorithms (such as genetic algorithms, ant colony algorithms, etc.) have certain global search capabilities, but traditional algorithms often have slow convergence speed and are prone to local optimization, especially in multi-plant complex task scheduling, making it difficult to fully utilize the hierarchical characteristics and collaborative relationships of multi-plant tasks. SUMMARY

[0004] To solve the problems in the prior art, one or more embodiments of the present specification describe an AGV cross-plant distribution task scheduling method and device based on a particle swarm algorithm, an electronic device and a storage medium.

[0005] According to a first aspect, an AGV cross-plant distribution task scheduling method based on a particle swarm algorithm is provided, the method comprising:

[0006] S101, obtaining a cross-plant task, decomposing the cross-plant task into tasks for different plants and merging it with tasks within each plant to obtain tasks to be executed in each plant;

[0007] S102, initializing a particle swarm, and updating the initial optimal task allocation sequence of the particle swarm according to a fitness function, wherein the particles in the particle swarm represent the task allocation sequence within a single plant;

[0008] S103, updating each task assignment sequence according to the speed update formula and the position update formula, and then performing a variable neighborhood search, and updating the optimal task assignment sequence according to the fitness function after each operation;

[0009] S104: If the number of iterations is not met, execute S103; if the number of iterations is met, output the optimal task allocation sequence of the current particle swarm, obtain the AGV scheduling route map for a single workshop, and control the AGVs in the workshop to perform delivery tasks according to the scheduling route map.

[0010] Preferably, decomposing the cross-workshop task into tasks of different workshops includes decomposing the cross-workshop task according to the workshop number where the cross-workshop task is executed.

[0011] Preferably, the task parameters include the pickup point, delivery point, workshop serial number, docking point working hours, time window upper limit and time window lower limit.

[0012] Preferably, a time constraint and a task constraint are set, and the time constraint is set according to the time window upper limit and the time window lower limit. If the fitness of a single particle does not meet the time constraint or the task constraint, an invalid value is returned.

[0013] Preferably, updating each task allocation sequence according to the speed update formula and the position update formula includes:

[0014] updating the task assignment sequence according to the individual learning factor to obtain a first updated task assignment sequence, wherein the individual learning factor is the degree to which the task assignment sequence is influenced by the individual optimal solution;

[0015] updating the first updated task assignment sequence according to a social learning factor to obtain a second updated task assignment sequence, wherein the social learning factor is the degree to which the first updated task assignment sequence is influenced by the global optimal solution;

[0016] updating the second updated task allocation sequence according to the inertia weight to obtain a third updated task allocation sequence, wherein the inertia weight is the degree to which the second updated task allocation sequence is affected by the task allocation sequence;

[0017] The third updated task allocation sequence is updated according to the flight probability to obtain a fourth updated task allocation sequence, wherein the flight probability is a probability of the third updated task allocation sequence performing a flight operation.

[0018] Preferably, the number of stagnation iterations is obtained, which is the number of iterations of the optimal task allocation sequence of the particle swarm since the last update, and a stagnation threshold is set. If the number of stagnation iterations is greater than the stagnation threshold, the flight probability is increased.

[0019] Preferably, the performing the variable neighborhood search comprises selecting two different task allocation sequences, performing any one of the operations of swapping, reversing and inserting.

[0020] According to a second aspect, a task scheduling apparatus is provided, the apparatus comprising:

[0021] a task partitioning module configured to obtain cross-plant tasks, decompose the cross-plant tasks into tasks of different plants and combine the tasks of different plants with tasks in each plant to obtain to-be-executed tasks of each plant;

[0022] an initialization particle module configured to initialize a particle swarm, and update an initial optimal task allocation sequence of the particle swarm according to a fitness function, wherein a particle in the particle swarm represents a task allocation sequence in a single plant;

[0023] a particle iteration module configured to update each task allocation sequence according to a velocity update formula and a position update formula, then perform a variable neighborhood search, and update an optimal task allocation sequence according to a fitness function after each operation;

[0024] an output module configured to perform S103 if a number of iterations is not met, and output an optimal task allocation sequence of a current particle swarm if the number of iterations is met, to obtain an AGV scheduling route map of a single plant, and control AGVs in the plant to perform a distribution task according to the scheduling route map.

[0025] According to a third aspect, an electronic device is provided, comprising a processor and a memory;

[0026] the processor is connected with the memory;

[0027] the memory is configured to store executable program codes;

[0028] the processor runs a program corresponding to the executable program codes by reading the executable program codes stored in the memory, to execute steps of the method provided in the first aspect or any possible implementation manner of the first aspect.

[0029] According to a fourth aspect, a computer readable storage medium is provided, which stores a computer program, and the computer readable storage medium stores instructions, when the instructions run on a computer or a processor, the computer or the processor executes the method provided in the first aspect or any possible implementation manner of the first aspect.

[0030] The present application has the following beneficial effects:

[0031] 1.The method and device provided by the embodiments of the present specification reduce the complexity of the calculation of the multi-warehouse scheduling problem, shorten the time required to obtain the AGV scheduling route map, and improve the efficiency of AGV task scheduling by splitting the cross-warehouse task into sub-tasks in an independent warehouse and solving for a single warehouse. BRIEF DESCRIPTION OF DRAWINGS

[0032] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required to be used in the embodiments will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can also be obtained by those skilled in the art without creative labor on the basis of these drawings.

[0033] Figure 1 is a flowchart of an AGV cross-warehouse distribution task scheduling method based on a particle swarm algorithm in the specific implementation of the present specification;

[0034] Figure 2 is a structural diagram of a task scheduling device in the specific implementation of the present specification;

[0035] Figure 3 is a structural diagram of an electronic device in the specific implementation of the present specification;

[0036] Figure 4 is a specific flowchart of an AGV cross-warehouse distribution task scheduling method based on a particle swarm algorithm in the specific implementation of the present specification. DETAILED DESCRIPTION

[0037] The technical solutions in the embodiments of the present application will be described clearly and completely in the following with reference to the drawings in the embodiments of the present application.

[0038] In the following description, the terms "first", "second" are only for the purpose of description, and cannot be understood as indicating or implying relative importance. The following description provides several embodiments of the present application, and different embodiments can be replaced or combined, so the present application can also be considered to include all possible combinations of the same and / or different embodiments described. Therefore, if one embodiment includes features A, B, C, and another embodiment includes features B, D, the present application should also be considered to include one or more embodiments containing all other possible combinations of A, B, C, and D, although the embodiment may not be explicitly described in the following.

[0039] The following description provides examples, and is not intended to limit the scope, applicability or example set forth in the claims. Alterations and changes in the function and arrangement of elements can be made without departing from the scope of the application. Various examples can omit, substitute, or add various procedures or components as appropriate. For instance, the methods described can be performed in an order different than described, and various steps can be added, omitted, or combined. Also, features described with respect to some examples can be combined in other examples.

[0040] Referring to Figure 1 , Figure 1 is a flowchart of an AGV cross-warehouse distribution task scheduling method based on a particle swarm algorithm provided by the embodiments of the present application. In the embodiments of the present application, the method comprises:

[0041] S101, acquiring a cross-warehouse task, decomposing the cross-warehouse task into tasks of different warehouses and merging the tasks with tasks in each warehouse to obtain to-be-executed tasks of each warehouse;

[0042] S102, initializing a particle swarm, and updating an initial optimal task allocation sequence of the particle swarm according to a fitness function, wherein a particle in the particle swarm represents a task allocation sequence in a single warehouse;

[0043] S103, updating each task allocation sequence according to a velocity update formula and a position update formula, then performing a variable neighborhood search, and updating an optimal task allocation sequence according to a fitness function after each operation;

[0044] S104, if the number of iterations is not met, performing S103, and if the number of iterations is met, outputting an optimal task allocation sequence of the current particle swarm to obtain an AGV scheduling route map of a single warehouse, and controlling AGVs in the warehouse to perform distribution tasks according to the scheduling route map.

[0045] The execution subject of the present application can be a cloud server.

[0046] In the embodiments of the present application, the cloud server first acquires a cross-warehouse task, and decomposes the cross-warehouse CT1 into wherein, represents an AGV cross-warehouse material distribution task, b∈{1,2,3,…,m} represents a task number of the cross-warehouse task, x∈{1,2,3,…,o} represents a single warehouse number to which the cross-warehouse task is allocated, and each represents a distribution task in a different warehouse, and each are connected by a connection point, and are sequentially executed to complete to These x tasks complete the entire cross-workshop CT1 task. Then obtain the material distribution task T executed in a single workshop. a , T a represents the AGV material distribution task in the workshop, and a∈{1,2,3,…,n} represents the task number that is only executed in a single workshop. With T a All of them contain parameters such as pickup point, delivery point, workshop serial number, docking point working hours, time window upper limit and time window lower limit. According to the workshop serial number s, s represents the workshop serial number, s∈{1,2,3,…,p}, all With T a All are classified into the corresponding T s,i In which T s,i represents the set of tasks to be executed in each workshop, T s,i The s in the s workshop represents the delivery task, i∈{1,2,3,…,q} represents the task number of the delivery task in the s workshop, and then each T s,i AGV set A assigned to the same workshop serial number s,j , A s,j In the example, s represents the AGV in workshop s, and j∈{1,2,3,…,r} represents the serial number of the AGV in the workshop. At this time, we only need to obtain the optimal scheduling result in each workshop to know the optimal scheduling results of multiple workshops. Initialize the particle swarm. The following is an example of a single workshop. Assume that there are q tasks and r AGVs in the workshop. For each particle, randomly generate a task assignment sequence and add a task separator 0 at a random position. Assume that there are N particles in the particle swarm, each particle represents a task assignment sequence in the workshop, and the particle can be represented by an M-dimensional vector, x i =(x i1 ,x i2 ,x i3 ,…,x iM), i = 1, 2…, N, where M = q + r - 1. For example, [0, 4, 7, 0, 1, 3, 8, 0, 2, 6, 5] represents that 4 AGVs are respectively assigned to three task groups of task numbers 4→7, 1→3→8, 2→6→5, and one AGV is not assigned to a task. A fitness function is set, and the fitness of each particle is calculated according to the fitness function. The number of iterations is set, and the speed and position of each particle are updated according to the speed update formula and the position update formula. The individual optimal solution of the particle and the global optimal solution of the particle group are updated again according to the fitness function, and then the variable neighborhood search is performed. The individual optimal solution of the particle and the global optimal solution of the particle group are updated again according to the fitness function, the number of iterations is increased, and if the number of iterations is not satisfied, the speed and position of the particle are updated again and the variable neighborhood search is performed. The optimal solution of the particle and the global optimal solution of the particle group are updated, and if the number of iterations is satisfied, the optimal solution of the current particle group is output, that is, the optimal task allocation scheme, and then the AGV scheduling route map of a single workshop is formed. Similarly, the optimal scheduling result of other workshops can be obtained, and the cloud server can control the AGVs in the workshop to execute the scheduling task according to the scheduling route map.

[0047] It should be noted that the particle corresponding to the maximum value of the historical fitness of each particle is the individual optimal solution of each particle, denoted as pbest. In each iteration, the particle corresponding to the maximum value of the fitness between the fitness of the particle in the particle group and the fitness of the global optimal solution of the current particle group is the global optimal solution of the particle group in the current iteration, denoted as gbest, that is, the optimal task allocation sequence.

[0048] In an implementation manner, in order to ensure that each task is executed within a specified time and each task is executed by one AGV once, for this purpose, a time constraint condition and a task constraint condition are set. The time constraint condition is that each AGV will only execute one task at a specified time, and the task constraint condition is that the task numbers in each particle are not repeated. If the fitness of a single particle does not satisfy one of the time constraint condition or the task constraint condition, an invalid fitness value is fed back.

[0049] Specifically, the transportation cost of a unit path is set as c1, and the total path cost is minimized as:

[0050]

[0051] After all the tasks are executed, the AGVs in each workshop s,j Total path sum formula D s,j is:

[0052]

[0053] wherein, the formula L(A, B) represents the Manhattan distance between point A and point B;

[0054] Assuming the unit time cost is c2, the minimum maximum completion time cost is:

[0055]

[0056] Set the speed of AGV to A speed , and all tasks start from 0 seconds, tasks Start time Depending on the end time of the previous task and the time required for the AGV to move to the pickup point, for the first task (i.e. k = 1), from the starting position P s Set off,

[0057]

[0058] For subsequent tasks (i.e. k>1),

[0059]

[0060] Task End time Depends on start time and transportation time from pickup point to delivery point and unloading time,

[0061]

[0062] Define the completion time F s,j For AGV A in the workshop s,j The final end time after completing all its tasks is the ET of the last task plus the time to return to the initial position:

[0063]

[0064] Set the number of AGVs used in each workshop to U s , the cost of using a unit AGV is c3, and the formula for minimizing the cost of using the number of AGVs is:

[0065]

[0066] For the scheduling task set above, it is necessary to set the constraint formula:

[0067] Time constraints: in, Indicates a task Time window lower limit; Indicates a task The upper limit of the time window.

[0068] Task constraints:

[0069] In an implementation, the fitness is calculated as follows: fitness = distance_weight - c1 - D s,j + makespan_weight - max(c2 - F s,j ) + agv_usage_weight - c3 - U s where distance_weight, makespan_weight, and agv_usage_weight are weights of the three objective fitness values, which can be adjusted according to actual problems. The particle corresponding to the maximum historical fitness of each particle is the individual optimal solution of each particle, denoted as pbest. In each iteration, the particle corresponding to the maximum fitness between the fitness of each particle in the particle swarm and the fitness of the global optimal solution of the current particle swarm is the global optimal solution of the particle swarm in the current iteration, denoted as gbest.

[0070] In an implementation, updating the velocity and position of each particle according to the velocity update formula and the position update formula specifically includes the following steps: performing individual learning operation with a probability of the individual learning factor c1 in the asymmetric learning factor, the individual learning factor c1 being calculated by the following calculation formula, improving the individual optimal solution pbest and the particle by PMX crossover operation to obtain the first updated velocity and the first updated position of the particle, i.e., the first updated task allocation sequence, the individual learning factor c1 indicating the degree of influence of the current task allocation sequence by the individual optimal solution, used to guide the AGV to adjust the task allocation sequence by combining the individual best historical task allocation scheme to improve the task allocation efficiency of a single AGV, the formula being:

[0071]

[0072] denotes the initial value of the individual learning factor, denotes the final value of the individual learning factor, k denotes the current iteration number, T max denotes the maximum iteration number, c1(k) is the actual value of the individual learning factor at the current iteration number, wherein the initial value of the individual learning factor, the final value of the individual learning factor, and the maximum iteration number are all preset values.

[0073] The social learning factor c2 in the asymmetric learning factor is taken as a probability, the social learning factor c2 is calculated by the following calculation formula, the social learning operation is performed, the global optimal solution gbest and the particle are improved by the PMX crossover operation, the second update speed and the second update position of the particle are obtained, that is, the second updated task allocation sequence, the social learning factor c2 represents the influence degree of the current task allocation sequence on the global optimal solution, the task cooperation between the AGVs is promoted by referring to the global optimal task allocation sequence, and the formula is:

[0074]

[0075] The initial value of the social learning factor is represented by c2 (0), The final value of the social learning factor is represented by c2 (T), k represents the current iteration number, and T max The maximum iteration number is represented by T, c2 (k) is the actual value of the social learning factor at the current iteration number, wherein the initial value of the social learning factor, the final value of the social learning factor and the maximum iteration number are all preset values.

[0076] As can be seen from the calculation formula of the individual learning factor and the social learning factor, with the increase of the iteration number, the individual learning factor c1 linearly decreases, the social learning factor c2 linearly increases, and further the convergence ability of the particle to the global optimal point is strengthened.

[0077] The inertia weight w in the nonlinear dynamic update is taken as a probability, the inertia weight w is calculated by the following calculation formula, the inertia position update operation is performed, the previous generation particle and the current particle are improved by the PMX crossover operation, the third update speed and the third update position of the particle are obtained, that is, the third updated task allocation sequence, the inertia weight w represents the influence degree of the current particle on the previous generation particle, and is used to control the task adjustment amplitude, and the formula is:

[0078]

[0079] Wherein, w start The initial value of the inertia weight is represented by w (0), w end The final value of the inertia weight is represented by w (T), k represents the current iteration number, and T max The maximum iteration number is represented by T, w (k) is the actual value of the inertia weight at the current iteration number, wherein the initial value of the inertia weight, the final value of the inertia weight and the maximum iteration number are all preset values.

[0080] The adaptive Lévy flight probability P levy The calculation formula of the flight probability P levy is as follows, the random position jump of the current particle is performed, the fourth update speed and the fourth update position of the particle are obtained, that is, the fourth updated task allocation sequence, and the flight probability P levyTo break the local optimum of task allocation, further optimize the task sequence selection in inter-vehicle task scheduling, the formula is:

[0081]

[0082] From the above, after obtaining the fourth update speed and the fourth update position of the particle, the individual optimal solution of the particle and the global optimal solution of the particle swarm are updated according to the fitness function. At this time, in order to avoid falling into local optimum, the stagnation iteration number and the stagnation threshold value are set. The stagnation iteration number is the iteration number of the global optimal solution of the particle swarm from the last update. If the global optimal solution of the particle swarm is not updated, the stagnation iteration number is increased by 1, and the Lévy flight probability P is increased when the stagnation iteration number exceeds the stagnation threshold value levy If the global optimal solution of the particle swarm is updated, P is restored to the initial value levy , and the stagnation iteration number is reset to zero.

[0083] Specifically, the adjustment formula of the flight probability is:

[0084]

[0085] Where n stagnation represents the stagnation iteration number, and T stagnation represents the stagnation threshold value.

[0086] Specifically, the random position jump of the current particle is performed according to the adaptive Lévy flight probability P levy , and the fourth update speed and the fourth update position of the particle are obtained. Specifically, the following steps can be implemented: generating a random step length according to the Lévy distribution, taking the step length as an integer plus one to obtain the exchange number, randomly selecting two initial indexes for the particles that need to perform Lévy flight, then performing loop exchange operation, and finally generating the fourth position of the particle. The generation formula of the random step length is as follows:

[0087]

[0088] Where β is the stability parameter, u and v are two independent normal distribution random variables, Γ represents the gamma function, π is the circular constant, and step is the step length.

[0089] In an embodiment, the improved PMX crossover operation specifically includes: selecting two particles to be exchanged, removing the separators 0 in the two particles to be exchanged and keeping their positions in the sequence, randomly generating the start position and end position of the crossover segment, copying the contents of the particles to be exchanged and exchanging the crossover segment, forming an initial crossover sequence, and establishing a mapping relationship between the two crossover segment elements, replacing through the mapping relationship if there are repeated items outside the crossover segment, until all elements in the initial crossover sequence are unique, re-inserting the separators in the sequence, the positions of the separators remain unchanged, and then forming new particles.

[0090] In an embodiment, the variable neighborhood search includes the following steps: saving the global optimal solution of the current particle swarm so that it can be restored when an optimal solution is not found, randomly selecting two positions of two particles (two numbers of the task sequence), and the sum of the two numbers cannot be 0, randomly applying one of the exchange, reversal, and insertion operations to generate a plurality of new particles, calculating the fitness value of each newly generated particle, checking whether the constraint condition is met, and updating the individual optimal solution of the particle and the global optimal solution of the particle swarm.

[0091] Specifically, the exchange operation is: randomly selecting two different positions, exchanging the order of the two tasks, for x = [x1, x2, …, x i ,…,x j ,x n ], if positions i and j are selected for exchange, the new neighborhood solution is x' = [x1, x2, …, x j ,…,x i ,x n ]; the reversal operation is: randomly selecting a subsequence between two different positions and reversing the task order in the subsequence, for x = [x1, x2, …, x i ,…,x j ,x n ], if the subsequence [x i ,x i+1 ,…x j ] is selected for reversal, the new neighborhood solution is x' = [x1, x2, …, x j ,…,x i+1 ,x i ,x n ]; the insertion operation is: randomly selecting a task position and moving the task from the current position to another random position, for x = [x1, x2, …, x i ,…,x j ,x n ], if the task x i is moved to position j, the new neighborhood solution is x ′ = [x1, x2, …, x i-1 ,xi+1 ,,…,x j-1 ,x i ,x j+1 ,x n ]。

[0092] The following will be combined with the attached Figure 2 , the task scheduling device provided by the embodiment of the present application will be introduced in detail. It should be noted that the task scheduling device shown in the attached Figure 2 , the task scheduling device shown in the attached Figure 1 , in order to facilitate the description, only the part related to the embodiment of the present application is shown, and the specific technical details not disclosed, please refer to the embodiment shown in the attached Figure 1 .

[0093] Please refer to Figure 2 , Figure 2 is the structure diagram of the task scheduling device provided by the embodiment of the present application. As Figure 2 shown, the device comprises:

[0094] Task division module 201 is used to obtain cross-plant tasks, decompose the cross-plant tasks into tasks of different plants and merge them with the tasks in each plant to obtain the to-be-executed tasks of each plant;

[0095] Initialization particle module 202 is used to initialize the particle swarm and update the initial optimal task allocation sequence of the particle swarm according to the fitness function, and the particles in the particle swarm represent the task allocation sequence in a single plant;

[0096] Particle iteration module 203 is used to update each task allocation sequence according to the speed update formula and the position update formula, then perform variable neighborhood search, and update the optimal task allocation sequence according to the fitness function after each operation;

[0097] Output module 204 is used to execute the particle iteration module if the iteration number is not met, and output the optimal task allocation sequence of the current particle swarm if the iteration number is met, obtain the AGV scheduling route map of a single plant, and control the AGV in the plant to execute the distribution task according to the scheduling route map.

[0098] In one implementation manner, the task division module 201 is specifically used for:

[0099] Decomposing the cross-plant tasks according to the plant number where the cross-plant tasks are executed.

[0100] In one implementation manner, the task division module 201 comprises the following structure: the task parameters comprise the pickup point, the delivery point, the plant number, the connection point working time, the upper limit of the time window and the lower limit of the time window.

[0101] In an implementation, the initializing particle module 202 is specifically configured to:

[0102] The time constraint and the task constraint are set according to the upper limit of the time window and the lower limit of the time window, and if the fitness of a single particle does not satisfy the time constraint or the task constraint, an invalid value is returned.

[0103] In an implementation, the particle iteration module 203 is specifically configured to:

[0104] The task allocation sequence is updated according to an individual learning factor to obtain a first updated task allocation sequence, the individual learning factor being a degree of influence of the task allocation sequence on an individual optimal solution;

[0105] The first updated task allocation sequence is updated according to a social learning factor to obtain a second updated task allocation sequence, the social learning factor being a degree of influence of the first updated task allocation sequence on a global optimal solution;

[0106] The second updated task allocation sequence is updated according to an inertia weight to obtain a third updated task allocation sequence, the inertia weight being a degree of influence of the second updated task allocation sequence on the task allocation sequence;

[0107] The third updated task allocation sequence is updated according to a flight probability to obtain a fourth updated task allocation sequence, the flight probability being a probability of the third updated task allocation sequence performing a flight operation.

[0108] In an implementation, the particle iteration module 203 is specifically configured to:

[0109] A stagnation iteration number is obtained, the stagnation iteration number being an iteration number of a global optimal task allocation sequence of a particle group since the last update, a stagnation threshold is set, and if the stagnation iteration number is greater than the stagnation threshold, the flight probability is increased.

[0110] In an implementation, the particle iteration module 203 is specifically configured to:

[0111] The performing the variable neighborhood search includes selecting two different task allocation sequences and performing any one of a swap, a reverse, and an insertion.

[0112] Those skilled in the art can clearly understand that the technical solutions of the embodiments of the present application can be implemented by means of software and / or hardware. The "unit" and "module" in the specification refer to software and / or hardware that can independently complete or cooperate with other components to complete a specific function, and the hardware can be, for example, a field programmable gate array (FPGA), an integrated circuit (IC), and the like.

[0113] The various processing units and / or modules of the embodiments of the present application can be implemented by analog circuits that implement the functions of the embodiments of the present application, or can be implemented by software that executes the functions of the embodiments of the present application.

[0114] Referring to Figure 3 , a structural schematic diagram of an electronic device related to the embodiments of the present application is shown, which can be used to implement the method in the embodiments shown in Figure 1 . As shown in Figure 3 , the electronic device 300 can include at least one central processor 301, at least one network interface 304, a user interface 303, a memory 305, and at least one communication bus 302.

[0115] The communication bus 302 is used to realize the connection and communication between the components.

[0116] The user interface 303 can include a display screen (Display), a camera (Camera), and can optionally include a standard wired interface, a wireless interface.

[0117] The network interface 304 can optionally include a standard wired interface, a wireless interface (such as a WI-FI interface).

[0118] The central processor 301 can include one or more processing cores. The central processor 301 connects various parts within the entire electronic device 300 by various interfaces and lines, and performs various functions of the terminal 300 and processes data by running or executing instructions, programs, code sets or instruction sets stored in the memory 305, and calling data stored in the memory 305. Alternatively, the central processor 301 can be implemented in at least one of a hardware form of a digital signal processing (DSP), a field-programmable gate array (FPGA), and a programmable logic array (PLA). The central processor 301 can integrate one or a combination of a central processing unit (CPU), a graphics processing unit (GPU), and a modem. Among them, the CPU mainly processes an operating system, a user interface, and an application program; the GPU is responsible for rendering and drawing the content to be displayed on the display screen; and the modem is used for processing wireless communication. It can be understood that the above-mentioned modem can also not be integrated into the central processor 301, but can be implemented by a separate chip.

[0119] The memory 305 can include a random access memory (RAM) and can also include a read-only memory (ROM). Alternatively, the memory 305 includes a non-transitory computer-readable storage medium. The memory 305 can be used to store instructions, programs, codes, code sets or instruction sets. The memory 305 can include a program storage area and a data storage area, wherein the program storage area can store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playing function, an image playing function, etc.), instructions for implementing the above-mentioned various method embodiments, etc.; the data storage area can store data involved in the above-mentioned various method embodiments, etc. The memory 305 can alternatively be at least one storage device located away from the aforementioned central processor 301. As shown, the memory 305 as a computer storage medium can include an operating system, a network communication module, a user interface module, and program instructions. Figure 3 As shown, the memory 305 as a computer storage medium can include an operating system, a network communication module, a user interface module, and program instructions.

[0120] In Figure 3In the electronic device 300 shown, the user interface 303 is mainly used to provide an interface for the user to input, and obtain data input by the user; and the central processing unit 301 can be used to call an application program stored in the memory 305, and specifically perform the following operations:

[0121] S101, obtaining a cross-plant task, decomposing the cross-plant task into tasks of different plants and merging the tasks with tasks in each plant to obtain to-be-executed tasks of each plant;

[0122] S102, initializing a particle swarm, and updating an initial optimal task allocation sequence of the particle swarm according to a fitness function, wherein a particle in the particle swarm represents a task allocation sequence in a single plant;

[0123] S103, updating each task allocation sequence according to a speed update formula and a position update formula, then performing a variable neighborhood search, and updating an optimal task allocation sequence according to a fitness function after each operation;

[0124] S104, if the number of iterations is not met, performing S103, and if the number of iterations is met, outputting an optimal task allocation sequence of the current particle swarm to obtain an AGV scheduling route map of a single plant, and controlling AGVs in the plant to perform a distribution task according to the scheduling route map.

[0125] The application also provides a computer readable storage medium having a computer program stored thereon, the program being executed by a processor to implement the steps of the above method. The computer readable storage medium can include, but is not limited to, any type of disk, including a floppy disk, an optical disk, a DVD, a CD-ROM, a micro drive, and a magneto-optical disk, a ROM, a RAM, an EPROM, an EEPROM, a DRAM, a VRAM, a flash memory device, a magnetic card or an optical card, a nanosystem (including a molecular memory IC), or any type of medium or device suitable for storing instructions and / or data.

[0126] It should be noted that, for the foregoing method embodiments, in order to simply describe, they are all expressed as a series of action combinations, but those skilled in the art should know that the application is not limited by the action sequence described, because according to the application, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should know that the embodiments described in the specification all belong to preferred embodiments, and the actions and modules involved are not necessarily necessary for the application.

[0127] In the above embodiments, the description of each embodiment has its own focus, and the parts not described in detail in a certain embodiment can be referred to the related description of other embodiments.

[0128] In several embodiments provided in the present application, it should be understood that the disclosed apparatus can be implemented in other manners. For example, the division of the apparatus embodiments described above is merely illustrative, and the division of the units can be changed according to actual needs. For example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections can be indirect couplings or communication connections through some interfaces, devices or units, and can be in electrical, mechanical or other forms.

[0129] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, i.e., can be located in one place, or can be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiments.

[0130] In addition, each functional unit in each embodiment of the present application can be integrated into a processing unit, or each unit can exist physically, or two or more units can be integrated into one unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit.

[0131] When the integrated unit is realized in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application essentially or the part that contributes to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: a U disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store program codes.

[0132] A person of ordinary skill in the art can understand that all or part of the steps of the various methods in the above embodiments can be completed by a program instructing relevant hardware, and the program can be stored in a computer readable storage medium, which can include a flash disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk or an optical disk, etc.

[0133] The above descriptions are merely some example embodiments of the present disclosure, and cannot limit the scope of the present disclosure. That is, equivalent changes and modifications made according to the teachings of the present disclosure are still within the scope of the present disclosure. Those skilled in the art will easily derive other embodiments of the present disclosure upon considering the specification and practicing the disclosure herein. The present application is intended to cover any variations, uses, or adaptive changes of the present disclosure following the general principles of the present disclosure and including common knowledge or conventional technical means in the art not described in the present disclosure. The specification and examples are merely considered as exemplary, and the scope and spirit of the present disclosure are defined by the claims.

Claims

1. An AGV cross-dock distribution task scheduling method based on a particle swarm algorithm, characterized in that, The method comprises: S101, acquiring cross-plant tasks, decomposing the cross-plant tasks into tasks of different plants and merging the tasks with tasks in each plant to obtain to-be-executed tasks of each plant; S102, initializing a particle swarm, and updating an initial optimal task allocation sequence of the particle swarm according to a fitness function, wherein a particle in the particle swarm represents a task allocation sequence in a single plant; S103, updating each task allocation sequence according to a velocity update formula and a position update formula, then performing a variable neighborhood search, and updating an optimal task allocation sequence according to the fitness function after each operation; S104, if the number of iterations is not met, performing S103, and if the number of iterations is met, outputting the optimal task allocation sequence of the current particle swarm to obtain an AGV scheduling route map of a single plant, and controlling AGVs in the plant to perform distribution tasks according to the scheduling route map; The updating of each task allocation sequence according to the velocity update formula and the position update formula comprises: updating the task allocation sequence according to an individual learning factor to obtain a first updated task allocation sequence, wherein the individual learning factor is an influence degree of the task allocation sequence on an individual optimal solution; updating the first updated task allocation sequence according to a social learning factor to obtain a second updated task allocation sequence, wherein the social learning factor is an influence degree of the first updated task allocation sequence on a global optimal solution; updating the second updated task allocation sequence according to an inertia weight to obtain a third updated task allocation sequence, wherein the inertia weight is an influence degree of the second updated task allocation sequence on the task allocation sequence; updating the third updated task allocation sequence according to a flight probability to obtain a fourth updated task allocation sequence, wherein the flight probability is a flight operation probability of the third updated task allocation sequence.

2. The AGV cross-docking task scheduling method based on the particle swarm algorithm according to claim 1, characterized in that, The decomposing of the cross-plant tasks into tasks of different plants comprises decomposing the cross-plant tasks according to plant numbers in which the cross-plant tasks are executed.

3. The AGV cross-docking task scheduling method based on the particle swarm algorithm according to claim 2, characterized in that, The task parameters comprise a pickup point, a delivery point, a plant number, a connection point working time, an upper limit of a time window, and a lower limit of the time window.

4. The AGV cross-docking task scheduling method based on the particle swarm algorithm according to claim 3, characterized in that, Time constraint conditions and task constraint conditions are set, the time constraint conditions are set according to the upper limit of the time window and the lower limit of the time window, and if the fitness of a single particle does not meet the time constraint conditions or the task constraint conditions, an invalid value is returned.

5. The AGV cross-docking task scheduling method based on the particle swarm algorithm according to claim 1, characterized in that, A stagnation iteration number is acquired, the stagnation iteration number is an iteration number passed since the last update of an optimal task allocation sequence of a particle swarm, a stagnation threshold is set, and if the stagnation iteration number is greater than the stagnation threshold, the flight probability is increased.

6. The AGV cross-docking task scheduling method based on the particle swarm algorithm according to claim 1, characterized in that, The variable neighborhood search comprises selecting two different task allocation sequences and performing any one of the following operations: swapping, reversing, and inserting.

7. A task scheduling apparatus characterized by comprising: The device comprises: a task division module configured to acquire cross-plant tasks, decompose the cross-plant tasks into tasks of different plants, and merge the tasks with tasks in each plant to obtain to-be-executed tasks of each plant; an initialization particle module configured to initialize a particle swarm, and update an initial optimal task allocation sequence of the particle swarm according to a fitness function, wherein a particle in the particle swarm represents a task allocation sequence in a single plant; and The particle iteration module is configured to update each task allocation sequence according to a velocity update formula and a position update formula, then perform a variable neighborhood search, and update the optimal task allocation sequence according to a fitness function after each operation; The output module is configured to execute S103 if the iteration number is not met, and output the optimal task allocation sequence of the current particle group if the iteration number is met, so as to obtain a single workshop AGV scheduling route map and control the AGVs in the workshop to perform a distribution task according to the scheduling route map; The particle iteration module is configured to update the task allocation sequence according to an individual learning factor to obtain a first updated task allocation sequence, the individual learning factor being an influence degree of the task allocation sequence on an individual optimal solution; update the first updated task allocation sequence according to a social learning factor to obtain a second updated task allocation sequence, the social learning factor being an influence degree of the first updated task allocation sequence on a global optimal solution; update the second updated task allocation sequence according to an inertia weight to obtain a third updated task allocation sequence, the inertia weight being an influence degree of the second updated task allocation sequence on the task allocation sequence; and update the third updated task allocation sequence according to a flight probability to obtain a fourth updated task allocation sequence, the flight probability being a flight operation probability of the third updated task allocation sequence.

8. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor executes the computer program to implement the steps of the method of any one of claims 1-6. 9.A computer readable storage medium having stored thereon a computer program, the computer readable storage medium having stored therein instructions which, when executed on a computer or processor, cause the computer or processor to perform the steps of the method of any one of claims 1-6.

Citation Information

Patent Citations

  • Multi-AGV task allocation method based on improved particle swarm optimization

    CN114240076A

  • Method for realizing AGV multi-target scheduling based on ant colony algorithm

    CN117519209A