CN110674978A - Task allocation and path planning method for unmanned workshop transportation system - Google Patents
Task allocation and path planning method for unmanned workshop transportation system Download PDFInfo
- Publication number
- CN110674978A CN110674978A CN201910850108.2A CN201910850108A CN110674978A CN 110674978 A CN110674978 A CN 110674978A CN 201910850108 A CN201910850108 A CN 201910850108A CN 110674978 A CN110674978 A CN 110674978A
- Authority
- CN
- China
- Prior art keywords
- path
- task
- mcr
- equal
- iter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/067—Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Quality & Reliability (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Educational Administration (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention is used for a workshop unmanned transportation system, and particularly relates to a task allocation and path planning method of the unmanned transportation system based on local search. The local search algorithm generates a new solution by disturbing the current solution, and updates the new solution to the current solution if the new solution is better than the current solution. The local search algorithm can efficiently find a feasible solution, but only receives a better solution when updating the current solution, so that the local optimal solution is easy to be trapped, and the task is fixed, so that the search range is smaller, and better solutions in other areas are likely to be missed. Therefore, the present invention aims to solve the problem of trapping in a locally optimal solution and enlarging a search area. The invention enables the local optimal solution to be jumped out at a proper moment by using two parameters, thereby obtaining a more efficient path.
Description
Technical Field
The invention is used for a workshop unmanned transportation system, and particularly relates to a task allocation and path planning method for the workshop unmanned transportation system.
Background
With the development of 5G and artificial intelligence, Mobile Cloud Robots (MCRs) are increasingly used in unmanned transportation systems to reduce labor cost and improve production efficiency. The MRC combines artificial intelligence, cloud and robot technology together, and under the support of the 5G technology, the unmanned transportation system is not limited by airborne computing, internal memory or software resources. Compared with an Automatic Guided Vehicle (AGV), the MCR has lower cost and higher efficiency.
In a manufacturing plant, there are several material warehouses, each of which stops a MCR with capacity limitation, allocates them to the appropriate MCR according to the location and demand of each processing site, and the MRC starts from the initial warehouse, sends the material to the corresponding processing site, and finally returns to the initial warehouse, which is a capacity-limited path planning and scheduling problem (CVRP). The problem can be simplified and regarded as a plurality of traveler problems (TSP) in a manufacturing shop, belongs to NP-Hard problems, and a local search method is adopted to solve the problem that the problem is likely to fall into a local optimal solution. According to the invention, by improving the local search method, the situation that the unmanned transportation system is trapped in a local optimal solution is avoided, and the cost minimization of the unmanned transportation system is realized.
Disclosure of Invention
The invention aims to solve the technical problem of task allocation and path planning of the unmanned transportation system in a manufacturing workshop, and finally, the cost of the unmanned transportation system is minimized.
In order to achieve the purpose, the technical scheme of the invention is as follows:
a task allocation and path planning method for a workshop unmanned transportation system comprises the following steps:
first, the actual problem is simplified into a model
A manufacturing plant has M material warehouses, N processing places have material demands, and each material warehouse has an MCR with the same capacity. The goal is to meet the requirements of each processing site with the shortest transport distance. The meaning of the symbols in the model is introduced below:
m: the number of MCRs is the number of material warehouses;
n: the number of processing places needing to convey materials, namely the number of conveying tasks;
k: set of all MCRs, K ═ {1,2 … M };
b: a material warehouse set, B ═ 1,2 … M };
k: the serial number of MCR, K belongs to K;
c: capacity of each MCR;
v: a set of all points, including all warehouses and processing locations, V ═ 1,2 … N, N +1, N +2, … N + M };
i, j: any point in the set V;
a: a set of work sites, i.e. a set of transportation tasks, a ═ 1,2 … N };
CA: a, collecting the material demand of each work place;
CAi: material demand of any work site i in A, CAi>0;
Vk: set of transport mission points, V, to which MCR numbered k is assignedk∈V;
V′k: points which should be included in the path of the MRC with the number of k include a material warehouse point;
d: the set of distances between any two points in the workshop, namely the distance between any two points in the V, is usually represented by a symmetric matrix in consideration of the symmetry of the distance between the two points;
dij: distance between any two points i and j in V, dij∈D;
xijk: a boolean variable. When k is shown to directly reach the point j after leaving the point i, the value is 1; otherwise, the value is 0. Wherein K ∈ K, i, j ∈ V.
An objective function:
and (3) constraint:
∑i∈B∑j∈Axijk≤1 k∈K (6)
∑i∈A∑j∈Bxijk≤1 k∈K (7)
xijk∈{0,1}i,j∈V′k,k∈K (8)
constraints (2) and (3) ensure that each transport task is completed by one MCR;
constraints (4) guarantee the continuity of the path;
constraint (5) ensures that each MCR capacity does not exceed capacity;
constraints (6) and (7) ensure that the MCR starts from a material warehouse and returns to the starting warehouse when a task is completed;
constraint (8) gives the Boolean variable xijkThe value range of (a).
Second, solving the model the present invention provides an algorithm based on local search for solving the CVRP problem, the flow chart of the algorithm is shown in fig. 1, and the main steps of the present invention are as follows.
Step 1: task allocation
Firstly, distributing the transportation task of each working site to each material warehouse according to the distance relationship, then judging whether each MCR is overloaded according to a formula (5), and if so, entering the step 2 to redistribute the task; otherwise, step 3 is carried out to plan a path for each MCR according to the task distribution condition.
Step 2: task reallocation
When the task is redistributed, when a working site is randomly selected for task redistribution, if the MCR of the selected working site is not overloaded, useless steps occur, and the efficiency is influenced. Therefore, a task reassignment probability factor is defined here, which is used to select the probability of a work site during task reassignment. For example, for any one MCR with the number k, the reassignment probability coefficient is defined as pk=Nkand/N. At the moment, when the working point needing task reallocation is selected, the working point with more tasks can be selected and allocated with high probability, and the algorithm efficiency can be improved.
Calculating task redistribution probability coefficients of all working sites, selecting one working point from all working points through the probability coefficients, randomly selecting one working point from tasks distributed by the working point to distribute to other working points, judging whether each MCR is overloaded according to a formula (5), and continuing task redistribution if the MCR is overloaded; otherwise, step 3 is entered to generate an initial path for each MCR.
And step 3: generating an initial path
Through the steps, the task set distributed by each MCR is obtained, and a sequence access path is generated by randomly sequencing the task sets, so that the initial path of each MCR is obtained.
And 4, step 4: evaluation path
Finding each x according to the path of each MCR obtained previouslyijkThen, the length of this path is obtained by equation (1). The path lengths of each MCR are added to obtain a total path.
And 5: finding optimal path based on local search method
The local search algorithm generates a new solution by disturbing the current solution, and updates the new solution to the current solution if the new solution is better than the current solution. The local search algorithm can efficiently find a feasible solution, but only receives a better solution when updating the current solution, so that the local optimal solution is easy to be trapped, and the task is fixed, so that the search range is smaller, and better solutions in other areas are likely to be missed. Therefore, the present algorithm aims to solve the problem of trapping in a locally optimal solution and enlarging a search area.
In order to achieve the above object, the present invention introduces the following parameters:
(1) maximum number of iterations iterMAXThe maximum number of local search executions, and when this value is reached, the routine ends.
(2) Maximum path non-update times δMAXAnd when the path is not updated for multiple times, the local optimal solution is jumped out.
(3) Task redistribution factor ReMAXTo determine when to perform a task reset, a factor of the maximum number of iterations is typically taken.
(4) The domain path is a new path obtained by exchanging the access order of any two tasks in one MCR path.
In the step, a new path is generated by performing disturbance on the generated path once. If the new path distance is shorter than the current path distance, updating the current path to be the new path; if delta is continuousMAXAnd if the current path is not updated, returning to the parent path, and restarting to search for a new path. When the cycle number reaches ReMAXIn the meantime, the reallocation is performed once so as to enlarge the search area of the path and obtain a better path, thereby maximizing the efficiency of the manufacturing shop. When the total number of cycles reaches iterMAXAnd then ending the circulation and outputting the found optimal solution.
The invention has the beneficial effects that:
in general, solving the problem by using a local search method is easy to fall into a local optimal solution, so that the production workshop is not efficient enough. The invention is achieved by using deltaMAX、ReMAXTwo parameters, so that the local optimal solution is jumped out at a proper moment, and a more efficient path is obtained.
Drawings
FIG. 1 is a flow chart of an algorithm for solving paths using a local search algorithm in the present invention.
Fig. 2 task allocation for the MCR.
Fig. 3 illustrates an encoding manner of the task access order of the MCR.
Fig. 4 shows the coding of a single MCR path.
Detailed Description
The invention is further described below with reference to the accompanying drawings.
Example 1
The invention provides a new search algorithm for solving the CVRP problem, and the flow chart of the algorithm is shown as a figure (1).
Step 1: task allocation
Definition 1: fuzzy points and fuzzy sets: the transportation tasks that cannot be assigned to the nearest material warehouse are called fuzzy points, the set of fuzzy points is called a fuzzy set, and the fuzzy set is denoted by F.
Definition 2: distance ratio: the ratio of the distance from the working place with the transport task to the two material warehouses is D (t, u) ═ Dt(i)/Du(i) I represents any one processing place in A, t, u represents the number of any two material warehouses in B, and t is<u,Dt,DuAnd respectively representing the distance set from any processing place in the A to the warehouses t and u.
Definition 3: distance coefficients, denoted α, β, are used to determine to which warehouse a task is assigned.
Step 1.1: for the tasks in set a, let i equal 0. The data structure stack ST plays a transitional role in saving the path in the process of searching the path, and an array OR is used for saving a better path.
Step 1.2: and calculating all distance proportions a (t, u) of the task i, wherein t is more than or equal to 1 and less than or equal to M, u is more than or equal to 1 and less than or equal to M, and t is less than u.
Step 1.3: judgment of
If it is notWherein 1 is<u is less than or equal to M, the task i is distributed to the warehouse 1 and is stored in the array V1;
If it is notAnd isWherein 1 is<m<M, t belongs to {1,2, … M-1}, u belongs to { M +1, M +2, … M-1}, and task i is allocated to warehouse M and stored in array Vm;
If it is notWherein 1 is not more than t<M, distributing the task i to the warehouse M and storing in an array VM;
If the conditions are not met, the task i is stored in the fuzzy set array F.
Step 1.4: and (5) judging the sizes of i and N-1 by making i equal to i +1, if i is less than or equal to N-1, turning to the step 1.2, and otherwise, turning to the step 1.5.
Step 1.5: and for the task i in the array F, calculating the distance between the i and all task points in the A, and recording the task point j with the shortest distance to the task point i.
Step 1.6: the warehouse to which task j is assigned is detected and task i is assigned to that warehouse. If j is also in the fuzzy set, then j is removed from A, returning to step 1.5.
Step 1.7: and sequentially moving to the next task of the set F, judging whether the next task is moved to the tail end of the set F, if so, entering a step 1.8, otherwise, returning to the step 1.5.
Step 1.8: obtaining the task set V to which each warehouse is allocatedkThe number of tasks N to which each warehouse (i.e., each MCR) is assigned is obtained simultaneouslyk。
Step 1.9: judging whether each MCR is overloaded according to the formula (5) according to the task allocation condition, and entering a step 3 if the formula (5) is established; otherwise, go to step 2.
Step 2: task reallocation
Definition 4: and the reassignment probability coefficient is used for selecting the probability of one working place during task reassignment. For any MCR with the number of k, the reassignment probability coefficient is defined as pk=Nk/N。
Step 2.1: and calculating the redistribution coefficients of all the working sites, and selecting a point K from the set K according to the probability.
Step 2.2: task set V assigned from kkRandomly selecting a task i and then carrying out A/VkAnd (5) computing to find out a task point j closest to the i.
Step 2.3: the warehouse to which task j is assigned is detected and task i is assigned to that warehouse. And returning to the step 1.9.
And step 3: generating an initial path
Step 3.1: problem coding
And (4) sequentially storing the task allocation condition of each MCR obtained in the steps into an array L according to the numbering sequence of the MCR.
Step 3.2: let i be 0 and MCR number k be 1, which are the number of tasks for which path planning has been completed.
Step 3.3: for subscript interval [ i, N ] in arrayk) The elements within do the scrambling operation.
Step 3.4: let i equal i + NkAnd k is k +1, and whether k is less than or equal to M is judged. If yes, returning to the step 3.3; otherwise step 3.5 is entered.
Step 3.5: at this time, the access order of each MCR task is obtained, and the path is pushed to the stack ST, and the path information is stored in the array OR. Let i be 0 and MCR number k be 1, which are the number of tasks for which path planning has been completed.
Step 3.6: duplicating the L internal subscript interval as [ i, N ]k) Elements of the contents being stored in the array LkIn the array L, 0 is inserted as the first element and the last element respectivelykTo represent a material warehouse.
Step 3.7: let i equal i + NkAnd k is k +1, and whether k is less than or equal to M is judged. If yes, returning to the step 3.6; otherwise, go to step 4.
And 4, step 4: evaluation path
The path for each MCR is now obtained and stored in the corresponding array, and is named as the current path. Definitions preserving Boolean variables xijkAnd all elements are initialized to 0.
Step 4.1: updating array X
Step 4.1.1: let MCR be numbered ask is 1, array LkThe subscript of (a) is 0.
Step 4.1.2: taking i as Lk[α],j=Lk[α+1]Let xijk=1。
Step 4.1.3: let alpha be alpha +1, judge alpha ≦ NkWhether or not this is true. If yes, entering step 4.1.4; otherwise, returning to the step 4.1.2.
Step 4.1.4: let k equal k +1, array LkThe subscript of (a) is 0. Judging whether k is less than or equal to M, if so, returning to the step 4.1.2; otherwise step 4.2 is entered.
Step 4.2: let MCR number k be 1 and sum of distances sum be 0.
Step 4.3: according toCalculating the total route sum of the routek。
Step 4.4: let k be k +1 and sum be sum + sumkJudging whether k is less than or equal to M, if so, returning to the step 4.3; otherwise, outputting sum, and entering step 5.
And 5: new search method for finding optimal path
Definition 5: maximum number of iterations iterMAXThe maximum number of local search executions, and when this value is reached, the routine ends.
Definition 6: maximum path non-update times δMAXAnd when the path is not updated for multiple times, the local optimal solution is jumped out.
Definition 7: task redistribution factor ReMAXTo determine when to perform a task reset, a factor of the maximum number of iterations is typically taken.
Definition 8: the domain path is a new path obtained by exchanging the access order of any two tasks in one MCR path.
Step 5.1: the initialization iteration number iter is 0, the initialization path non-update number δ is 0, and the initialization Re is 0.
Step 5.2 obtaining Domain Path
Randomly selecting one MCR with the number of k, and taking out a path array LkFrom L at randomkTwo task elements are selected and their positions are exchanged. The total distance of the new path is then determined according to step 4.
Step 5.3: let iter be iter + 1. Judging whether the total route of the new route is smaller than the total route of the current route, if so, updating the current route to be the field route, stacking the route into a stack ST, storing the route information into an array OR, and enabling delta to be 0, and entering step 5.6; otherwise, let δ be δ +1, go to step 5.4.
Step 5.4: judging that delta is less than or equal to deltaMAXIf yes, entering step 5.6; otherwise step 5.5 is entered.
Step 5.5: delete the stack top path of the ST, refer to the new stack top path, convert the current path to this path, go to step 5.6.
Step 5.6: determining iter is less than or equal to iterMAXWhether or not this is true. If iter is less than or equal to iterMAXIf it is true, determining Re is less than or equal to ReMAXIf yes, returning to the step 5.2, otherwise, returning to the step 2; if iter>iterMAXThen the path with the minimum path length in the array OR is output, and the procedure is ended.
Example 2
Setting 10 processing places in a production workshop, namely 10 transportation tasks; there are 3 material warehouses, each with an MCR with a loading capacity of 100; let the distance coefficient α be 0.5 and β be 1.5. Maximum number of iterations iterMAX500, the task redistribution factor ReMAXMaximum path non-update times δ of 100MAX=5。
Step 1: task allocation
Step 1.1: for the tasks in set a, let i equal 0. A stack ST and a number group OR are established.
The data structure of the stack is adopted because the data structure has the characteristic of first-in last-out, only the first feasible path and the following path which is more optimal than the current path can be stacked, therefore, when the iteration is carried out for 5 times, when the current path is not updated for 5 times continuously, the current path is judged to be the local optimal solution, the stack top path is deleted at the moment, the new stack top path is referred to return to the parent path of the path, and the local search is continued according to the parent path.
Step 1.2: and calculating all distance proportions a (t, u) of the task i, wherein t is more than or equal to 1 and less than or equal to 3, u is more than or equal to 1 and less than or equal to 3, and t is less than u. To obtain a (1,2), a (1,3) and a (2, 3).
Step 1.3: judgment of
If a (1,2) ≦ 0.5 and a (1,3) ≦ 0.5, task i is assigned to warehouse 1 and is deposited into array V1;
If a (1,2) is more than or equal to 1.5 and a (2,3) is less than or equal to 0.5, the task i is distributed to the warehouse m and is stored into the array Vm;
If a (1,3) ≥ 1.5 and a (2,3) ≥ 1.5, task i is allocated to warehouse 3 and is stored in array V3;
If the conditions are not met, the task i is stored in the fuzzy set array F.
Step 1.4: and (5) judging the sizes of i and 9 by making i equal to i +1, if i is less than or equal to 9, turning to the step 1.2, and otherwise, turning to the step 1.5.
Step 1.5: and for the task i in the array F, calculating the distance between the i and all task points in the A, and recording the task point j with the shortest distance to the task point i.
Step 1.6: the warehouse to which task j is assigned is detected and task i is assigned to that warehouse. If j is also in the fuzzy set, then j is removed from A, returning to step 1.5.
Step 1.7: and sequentially moving to the next task of the set F, judging whether the next task is moved to the tail end of the set F, if so, entering a step 1.8, otherwise, returning to the step 1.5.
Step 1.8: obtaining the task set V to which each warehouse is allocatedkThe number of tasks N to which each warehouse (i.e., each MCR) is assigned is obtained simultaneouslyk。
Step 1.9: judging whether each MCR is overloaded according to the formula (5) according to the task allocation condition, and entering a step 3 if the formula (5) is established; otherwise, go to step 2.
Step 2: task reallocation
Step 2.1: from the formula pk=NkCalculating redistribution coefficient p of all working sites1,p2,p3And selecting a point K from the set K according to the probability.
Step 2.2: task set V assigned from kkRandomly selecting a task i, and then in the set A/VkAnd finding a task point j closest to i.
Step 2.3: the warehouse to which task j is assigned is detected and task i is assigned to that warehouse. And returning to the step 1.9.
And step 3: generating an initial path
Step 3.1: problem coding
And (4) sequentially storing the task allocation condition of each MCR obtained in the steps into an array L according to the numbering sequence of the MCR. L is shown in FIG. 2.
Step 3.2: let i be 0 and MCR number k be 1, which are the number of tasks for which path planning has been completed.
Step 3.3: for subscript interval [ i, N ] in arrayk) The elements within do the scrambling operation.
Step 3.4: let i equal i + NkAnd k is k +1, and whether k is less than or equal to 3 is judged. If yes, returning to the step 3.3; otherwise step 3.5 is entered.
Step 3.5: at this time, the access order of each MCR task is obtained, as shown in fig. 3, and the path is pushed to the stack ST, and the path information is stored in the array OR. Let i be 0 and MCR number k be 1, which are the number of tasks for which path planning has been completed.
Step 3.6: duplicating the L internal subscript interval as [ i, N ]k) Elements of the contents being stored in the array LkIn the array L, 0 is inserted as the first element and the last element respectivelykTo represent a material warehouse.
Step 3.7: let i equal i + NkAnd k is k +1, and whether k is less than or equal to 3 is judged. If yes, returning to the step 3.6; otherwise, go to step 4.
And 4, step 4: evaluation path
The path for each MCR is now obtained and stored in the corresponding array, as shown in fig (4). And names the path as the current path. Definitions preserving Boolean variables xijkAnd all elements are initialized to 0.
Step 4.1: updating array X
Step 4.1.1: let MCR number k be 1, array LkThe subscript of (a) is 0.
Step 4.1.2: taking i as Lk[α],j=Lk[α+1]Let xijk=1。
Step 4.1.3: let alpha be alpha +1, judge alpha ≦ NkWhether or not this is true. If yes, entering step 4.1.4; otherwise, returning to the step 4.1.2.
Step 4.1.4: let k equal k +1, array LkThe subscript of (a) is 0. Judging whether k is less than or equal to 3, if so, returning to the step 4.1.2; otherwise step 4.2 is entered.
Step 4.2: let MCR number k be 1 and sum of distances sum be 0.
Step 4.4: let k be k +1 and sum be sum + sumkJudging whether k is less than or equal to 3, if so, returning to the step 4.3; otherwise, recording the total path sum, and entering step 5.
And 5: local search method for finding optimal path
Step 5.1: the initialization iteration number iter is 0, the initialization path non-update number δ is 0, and the initialization Re is 0.
Step 5.2 obtaining Domain Path
Randomly selecting one MCR with the number of k, and taking out a path array LkFrom L at randomkTwo task elements are selected and their positions are exchanged. The total distance of the new path is then determined according to step 4.
Step 5.3: let iter be iter + 1. Judging whether the total route of the new route is smaller than the total route of the current route, if so, updating the current route to be the field route, stacking the route into a stack ST, storing the route information into an array OR, and enabling delta to be 0, and entering step 5.6; otherwise, let δ be δ +1, go to step 5.4.
Step 5.4: judging whether delta is less than or equal to 5, and if delta is less than or equal to 5, entering the step 5.6; otherwise step 5.5 is entered.
Step 5.5: delete the stack top path of the ST, refer to the new stack top path, convert the current path to this path, go to step 5.6.
Step 5.6: and judging whether iter is less than or equal to 500. If iter is less than or equal to 500, judging whether Re is less than or equal to 100, if so, returning to the step 5.2, otherwise, returning to the step 2; if iter >500, the path with the minimum path length in the array OR is output, and the procedure is ended.
Claims (4)
1. A task allocation and path planning method for a workshop unmanned transportation system is characterized by comprising the following steps:
reduce the actual problem to a model:
one manufacturing workshop is provided with M material warehouses, N processing places have material requirements, and each material warehouse is provided with an MCR with the same capacity; the aim is to meet the requirements of each processing site under the condition of shortest transportation distance; the meaning of the symbols in the model is introduced below:
m: the number of MCRs is the number of material warehouses;
n: the number of processing places needing to convey materials, namely the number of conveying tasks;
k: set of all MCRs, K ═ {1,2 … M };
b: a material warehouse set, B ═ 1,2 … M };
k: the serial number of MCR, K belongs to K;
c: capacity of each MCR;
v: a set of all points, including all warehouses and processing locations, V ═ 1,2 … N, N +1, N +2, … N + M };
i, j: any point in the set V;
a: a set of work sites, i.e. a set of transportation tasks, a ═ 1,2 … N };
CA: a, collecting the material demand of each work place;
CAi: material demand of any work site i in A, CAi>0;
Vk: set of transport mission points, V, to which MCR numbered k is assignedk∈V;
V′k: points which should be included in the path of the MRC with the number of k include a material warehouse point;
Nk: the number of transport tasks assigned to the MCR numbered k,
d: the set of distances between any two points in the workshop, namely the distance between any two points in the V, is usually represented by a symmetric matrix in consideration of the symmetry of the distance between the two points;
dij: distance between any two points i and j in V, dij∈D;
xijk: a Boolean variable; when k is shown to directly reach the point j after leaving the point i, the value is 1; otherwise, the value is 0; wherein K belongs to K, i, j belongs to V;
an objective function:
and (3) constraint:
∑i∈B∑j∈Axijk≤1 k∈K (6)
∑i∈A∑j∈Bxijk≤1 k∈K (7)
xijk∈{0,1}i,j∈V′k,k∈K (8)
constraints (2) and (3) ensure that each transport task is completed by one MCR;
constraints (4) guarantee the continuity of the path;
constraint (5) ensures that each MCR capacity does not exceed capacity;
constraints (6) and (7) ensure that the MCR starts from a material warehouse and returns to the starting warehouse when a task is completed;
constraint (8) gives the Boolean variable xijkThe value range of (a);
step 1: task allocation
Distributing the transportation task of each working site to each material warehouse according to the distance relationship, then judging whether each MCR is overloaded according to a formula (5), and if so, entering the step 2 to redistribute the task; otherwise, entering step 3 to plan a path for each MCR according to the task allocation condition;
step 2: task reallocation
For any MCR with the number of k, the reassignment probability coefficient is defined as pk=Nk/N;
Calculating task redistribution probability coefficients of all working sites, selecting one working point from all working points through the probability coefficients, randomly selecting one working point from tasks distributed by the working point to distribute to other working points, judging whether each MCR is overloaded according to a formula (5), and continuing task redistribution if the MCR is overloaded; otherwise, step 3 is carried out to generate an initial path for each MCR;
and step 3: generating an initial path
Obtaining a task set distributed by each MCR, randomly sequencing the task sets to generate a sequential access path, and obtaining an initial path of each MCR;
and 4, step 4: evaluation path
Finding each x according to the path of each MCRijkThen, the length of the path is calculated by the formula (1); summing the path lengths of each MCR to obtain a totalA path;
and 5: finding optimal path based on local search method
The following parameters were introduced:
(1) maximum number of iterations iterMAXThe maximum number of local search executions, and when this value is reached, the procedure ends;
(2) maximum path non-update times δMAXWhen the path is not updated for many times, the local optimal solution is jumped out;
(3) task redistribution factor ReMAXTo determine when to perform a task reset, typically by taking a factor of the maximum number of iterations;
(4) a domain path, i.e. a new path obtained by exchanging the access order of any two tasks in one MCR path;
performing primary disturbance on the path generated in the step 3 to generate a new path; if the new path distance is shorter than the current path distance, updating the current path to be the new path; if delta is continuousMAXIf the current path is not updated, returning to the parent path, and restarting to search for a new path; when the cycle number reaches ReMAXThen, carrying out primary redistribution; when the total number of cycles reaches iterMAXAnd then ending the circulation and outputting the found optimal solution.
2. The task allocation and path planning method for the unmanned workshop transportation system according to claim 1, wherein the specific process of the step 2 is as follows:
step 2.1: calculating the redistribution coefficients of all the working places, and selecting a point K from the set K according to the probability;
step 2.2: task set V assigned from kkRandomly selecting a task i and then carrying out A/VkCalculating to find out a task point j closest to the i;
step 2.3: the warehouse to which task j is assigned is detected and task i is assigned to that warehouse.
3. The task allocation and path planning method for the unmanned workshop transportation system according to claim 2, wherein the specific process of the step 4 is as follows:
obtaining a path of each MCR, storing the path in a corresponding array, and naming the path as a current path; definitions preserving Boolean variables xijkAnd initializing all elements to 0;
step 4.1: updating array X
Step 4.1.1: let MCR number k be 1, array LkSubscript of (a) is 0;
step 4.1.2: taking i as Lk[α],j=Lk[α+1]Let xijk=1;
Step 4.1.3: let alpha be alpha +1, judge alpha ≦ NkWhether the result is true or not; if yes, entering step 4.1.4; otherwise, returning to the step 4.1.2;
step 4.1.4: let k equal k +1, array LkSubscript of (a) is 0; judging whether k is less than or equal to M, if so, returning to the step 4.1.2; otherwise, entering a step 4.2;
step 4.2: setting the serial number of MCR as k to be 1, and setting the sum of routes sum to be 0;
step 4.3: according toCalculating the total route sum of the routek;
Step 4.4: let k be k +1 and sum be sum + sumkJudging whether k is less than or equal to M, if so, returning to the step 4.3; otherwise, outputting sum, and entering step 5.
4. The task allocation and path planning method for the unmanned workshop transportation system according to claim 3, wherein the specific process of the step 5 is as follows:
step 5.1: the initialization iteration time iter is equal to 0, the initialization path non-updating time delta is equal to 0, and the initialization Re is equal to 0;
step 5.2 obtaining Domain Path
Randomly selecting one MCR with the number of k, and taking out a path array LkFrom L at randomkSelecting two task elements internally and exchanging positions thereof(ii) a Then, obtaining the total path of the new path according to the step 4;
step 5.3: let iter be iter + 1; judging whether the total route of the new route is smaller than the total route of the current route, if so, updating the current route to be the field route, stacking the route into a stack ST, storing the route information into an array OR, and enabling delta to be 0, and entering step 5.6; otherwise, making δ be δ +1, and entering step 5.4;
step 5.4: judging that delta is less than or equal to deltaMAXIf yes, entering step 5.6; otherwise, entering step 5.5;
step 5.5: deleting the stack top path of the ST, referring to a new stack top path, converting the current path into the path, and entering the step 5.6;
step 5.6: determining iter is less than or equal to iterMAXWhether the result is true or not; if iter is less than or equal to iterMAXIf it is true, determining Re is less than or equal to ReMAXIf yes, returning to the step 5.2, otherwise, returning to the step 2; if iter>iterMAXThen the path with the minimum path length in the array OR is output, and the procedure is ended.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910850108.2A CN110674978A (en) | 2019-09-10 | 2019-09-10 | Task allocation and path planning method for unmanned workshop transportation system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910850108.2A CN110674978A (en) | 2019-09-10 | 2019-09-10 | Task allocation and path planning method for unmanned workshop transportation system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110674978A true CN110674978A (en) | 2020-01-10 |
Family
ID=69077665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910850108.2A Withdrawn CN110674978A (en) | 2019-09-10 | 2019-09-10 | Task allocation and path planning method for unmanned workshop transportation system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110674978A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112749927A (en) * | 2021-02-03 | 2021-05-04 | 香港中文大学(深圳) | Dispatching method of storage robot and related equipment |
CN113050635A (en) * | 2021-03-13 | 2021-06-29 | 西北农林科技大学 | Task allocation and path planning method for orchard picking and transporting multiple robots |
CN113256035A (en) * | 2021-07-12 | 2021-08-13 | 广州中望龙腾软件股份有限公司 | Machining path planning method, intelligent terminal and storage device |
CN116343958A (en) * | 2023-03-03 | 2023-06-27 | 湖北工业大学 | Method and system for judging connectivity of multiphase system |
CN116362652A (en) * | 2023-06-01 | 2023-06-30 | 上海仙工智能科技有限公司 | Transport allocation task scheduling method and system and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109559062A (en) * | 2019-01-07 | 2019-04-02 | 大连理工大学 | A kind of task distribution of cooperative logistical problem and paths planning method |
CN110110903A (en) * | 2019-04-17 | 2019-08-09 | 大连理工大学 | A kind of distribution vehicle paths planning method based on neural evolution |
-
2019
- 2019-09-10 CN CN201910850108.2A patent/CN110674978A/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109559062A (en) * | 2019-01-07 | 2019-04-02 | 大连理工大学 | A kind of task distribution of cooperative logistical problem and paths planning method |
CN110110903A (en) * | 2019-04-17 | 2019-08-09 | 大连理工大学 | A kind of distribution vehicle paths planning method based on neural evolution |
Non-Patent Citations (2)
Title |
---|
李莹: "带时间窗和装载约束车辆路径问题模型和算法", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
王柯飞: "制造车间无人搬运系统调度方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112749927A (en) * | 2021-02-03 | 2021-05-04 | 香港中文大学(深圳) | Dispatching method of storage robot and related equipment |
CN112749927B (en) * | 2021-02-03 | 2023-11-28 | 香港中文大学(深圳) | Scheduling method of storage robot and related equipment |
CN113050635A (en) * | 2021-03-13 | 2021-06-29 | 西北农林科技大学 | Task allocation and path planning method for orchard picking and transporting multiple robots |
CN113256035A (en) * | 2021-07-12 | 2021-08-13 | 广州中望龙腾软件股份有限公司 | Machining path planning method, intelligent terminal and storage device |
CN116343958A (en) * | 2023-03-03 | 2023-06-27 | 湖北工业大学 | Method and system for judging connectivity of multiphase system |
CN116343958B (en) * | 2023-03-03 | 2024-05-10 | 湖北工业大学 | Method and system for judging connectivity of multiphase system |
CN116362652A (en) * | 2023-06-01 | 2023-06-30 | 上海仙工智能科技有限公司 | Transport allocation task scheduling method and system and storage medium |
CN116362652B (en) * | 2023-06-01 | 2023-10-31 | 上海仙工智能科技有限公司 | Transport allocation task scheduling method and system and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110674978A (en) | Task allocation and path planning method for unmanned workshop transportation system | |
CN110632907B (en) | Scheduling optimization method and system for distributed assembly type replacement flow shop | |
Chen et al. | Dynamic column generation for dynamic vehicle routing with time windows | |
CN109214756B (en) | Vehicle logistics scheduling method and device, storage medium and terminal | |
CN111400868B (en) | Distributed workshop scheduling optimization method and system with order and robot carrying functions | |
CN112488386B (en) | Logistics vehicle distribution planning method and system based on distributed entropy multi-target particle swarm | |
CN111860957B (en) | Multi-vehicle-type vehicle path planning method considering secondary distribution and balancing | |
CN111754176A (en) | Two-stage intelligent order sorting method for multiple mobile shelves | |
CN104077634A (en) | Active-reactive type dynamic project scheduling method based on multi-objective optimization | |
CN115759917A (en) | Logistics path planning method based on improved mixed ant colony algorithm | |
Kazemi et al. | Concurrent optimization of shared location assignment and storage/retrieval scheduling in multi-shuttle automated storage and retrieval systems | |
Hani et al. | Simulation based optimization of a train maintenance facility | |
CN115796530A (en) | Robot logistics scheduling optimization method for simultaneously delivering and taking goods | |
Thirugnanasambandam et al. | Experimental analysis of ant system on travelling salesman problem dataset TSPLIB | |
CN116679636A (en) | Logistics transfer robot task scheduling system and method | |
CN116187092A (en) | Dynamic distribution order allocation optimization method considering supply and demand states of transport capacity system | |
CN114610058A (en) | Multi-task distributed task allocation method for cluster aircraft | |
CN115099617A (en) | Tobacco industry product logistics scheduling method | |
Haghani et al. | Multi-robot routing with time windows: A column generation approach | |
CN115293394A (en) | Multi-robot joint scheduling optimization method based on dynamic space-time diagram | |
CN111208815B (en) | Method for distributing a plurality of handling tasks to a plurality of automated guided vehicles and related device | |
Guo et al. | Transportation path optimization of modern logistics distribution considering hybrid tabu search algorithm | |
Reddy et al. | Simultaneous scheduling of machines and tools considering tool transfer times in multimachine FMS using CSA | |
Ho et al. | A design methodology for converting a regular warehouse into a zone-picking warehouse | |
CN114912647A (en) | Apparatus, method and machine-readable storage medium for decision making |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200110 |
|
WW01 | Invention patent application withdrawn after publication |