CN111459100A - Dispatching method and system for automatic guided transport vehicle - Google Patents
Dispatching method and system for automatic guided transport vehicle Download PDFInfo
- Publication number
- CN111459100A CN111459100A CN201910057689.4A CN201910057689A CN111459100A CN 111459100 A CN111459100 A CN 111459100A CN 201910057689 A CN201910057689 A CN 201910057689A CN 111459100 A CN111459100 A CN 111459100A
- Authority
- CN
- China
- Prior art keywords
- matrix
- path
- road section
- resource allocation
- guided vehicle
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 239000011159 matrix material Substances 0.000 claims abstract description 245
- 238000013468 resource allocation Methods 0.000 claims abstract description 129
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 21
- 238000013439 planning Methods 0.000 claims abstract description 13
- 230000002457 bidirectional effect Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 13
- 238000004458 analytical method Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000013507 mapping Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0287—Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
- G05D1/0289—Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling with means for avoiding collisions between vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4189—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system
- G05B19/41895—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system using automatic guided vehicles [AGV]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
The invention discloses a scheduling method and system of an automatic guided vehicle, and relates to the technical field of unmanned equipment scheduling. One embodiment of the method comprises: determining the path of the current task of the AGV according to a path planning algorithm; setting elements corresponding to the paths in the resource allocation matrix as first preset values based on the paths; for each segment of the path, the following steps are performed in turn: determining whether the road section is occupied or not according to the current resource allocation matrix; if not, obtaining a path matrix after the road section is allocated to the AGV according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the AGV according to the path matrix; and if not, distributing the road sections to the AGV, driving the AGV to run on the road sections, and updating the elements corresponding to the road sections in the resource distribution matrix to be second preset values after the road sections are run. The implementation mode improves the system efficiency and the automation degree, and has low complexity, high flexibility and convenient application.
Description
Technical Field
The invention relates to the technical field of unmanned equipment scheduling, in particular to a scheduling method and system of an automatic guided transport vehicle.
Background
With the development of industrial automation technology, AGVs (Automated Guided vehicles) are increasingly used in logistics fields, including e-commerce logistics and industrial workshops. In the AGV scheduling, how to avoid AGV collision or deadlock to improve system efficiency is a problem to be solved.
Currently, common methods include implementing scheduling based on a regional control technology and implementing scheduling based on a petri net model. In the area control technology, the sections where collision and deadlock may occur are considered as a whole according to the path in the map in advance, as shown in fig. 1, the range determined by two rectangular boxes is two areas, if the path of an AGV is 1- >2- >3, the AGV will occupy section 4 when it goes to section 2, because section 2 and section 4 are in one area. The petri network model is mostly suitable for describing the sequence, concurrency, conflict and other relations of processes or events in a discrete system, and the multi-AGV system has the characteristic of concurrency, so that the petri network model is also applied to modeling of the AGV system. The path, the AGV and the like in the AGV system are regarded as the identification through the petri network model, and the collision and the deadlock of the system are avoided through analyzing the petri network model.
In the process of implementing the invention, the inventor finds that at least the following problems exist in the prior art:
when the strategy for realizing scheduling based on the regional control technology is operated, regions are required to be added manually, the automation degree is influenced, the system efficiency is low, and how to reasonably plan each region is not intuitive. The strategy for realizing scheduling based on the petri network model is complex in system modeling, and once system elements change, such as the number of AGVs, paths and the like, the model is complex to change again, so that time and labor are wasted. And the analysis of the petri nets is itself complicated.
Disclosure of Invention
In view of this, embodiments of the present invention provide a scheduling method and system for an automatic guided vehicle, which can perform modeling based on a resource allocation map, reflect an occupation relationship between an AGV and a resource through a resource allocation matrix, obtain a path matrix based on the resource allocation matrix, and determine whether a deadlock occurs according to a path, thereby avoiding a deadlock. For different application environments, the number and resources of the AGVs are different, and the method can conveniently realize automatic mapping, and has the advantages of high automation degree, low complexity, high flexibility and convenient application; when whether deadlock is analyzed or not, analysis and calculation are carried out according to specific map features, so that the efficiency of the system is improved; collision avoidance and deadlock are unified in the process of dispatching the AGV, and deadlock can be avoided more fully.
To achieve the above object, according to an aspect of an embodiment of the present invention, there is provided a scheduling method of an automated guided vehicle, including:
determining a path of a current task of the automatic guided vehicle according to a path planning algorithm, wherein the path consists of a plurality of road sections and nodes;
setting an element corresponding to the path in a resource allocation matrix as a first preset value based on the path, and when the element is the first preset value, indicating that the automated guided vehicle applies for a resource corresponding to the element, wherein the resource comprises the road section and a node;
for each segment of the path, the following steps are performed in turn:
determining whether the road section is occupied or not according to the current resource allocation matrix;
if not, obtaining a path matrix after the road section is allocated to the automatic guided vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the path matrix;
and if not, distributing the road section to the automatic guided vehicle, driving the automatic guided vehicle to run on the road section, and updating the element corresponding to the road section in the resource distribution matrix to a second preset value after the road section is run.
Optionally, the method further comprises: and if the deadlock is determined to occur, controlling the automatic guided vehicle to wait for a preset time at the current position, and determining whether the road section is occupied or not according to the current resource allocation matrix after the waiting is finished.
Optionally, the method further comprises: and determining mutually interfered road sections and nodes according to the appearance parameters and the map information of the automatic guided vehicles, wherein the mutually interfered road sections and nodes are paths and nodes which can not exist in the automatic guided vehicles at the same time.
Optionally, obtaining a path matrix after the road segment is allocated to the automated guided vehicle according to the current resource allocation matrix, and determining whether deadlock may occur after the road segment is allocated to the automated guided vehicle according to the path matrix includes:
determining road sections and nodes which interfere with the road sections;
according to the current resource allocation matrix and the road sections and the nodes which are mutually interfered, obtaining a path matrix which allocates the road sections and the nodes which are mutually interfered with the road sections to the automatic guided vehicle;
and judging whether deadlock occurs after the road section, the road section and the node which are mutually interfered with the road section are distributed to the automatic guided vehicle according to the path matrix.
Optionally, determining whether a deadlock may occur after the road segment is allocated to the automated guided vehicle according to the path matrix includes:
judging whether the value of the diagonal element of the path matrix is a non-second preset value:
and when the diagonal line element which is not the second preset value exists, determining that the deadlock occurs.
Optionally, obtaining a path matrix after the road segment is allocated to the automated guided vehicle according to the current resource allocation matrix includes:
creating a first path matrix with the same row number and column number as the resource allocation matrix, wherein the values of all elements of the first path matrix are second preset values;
based on the first path matrix, sequentially taking edges corresponding to elements with the median of a resource allocation matrix being a first preset value as edges to be added, obtaining a second path matrix according to the following formula, and taking the second path matrix as a new first path matrix;
based on the new first path matrix, taking the side corresponding to the forward road section of the automatic guided transport vehicle as a new side to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is the path matrix after the road section is allocated to the automatic guided vehicle;
judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the new second path matrix;
where (u, v) denotes the edge to be added, Φs,vFor representing the number of edges, M, by edge (u, v) to be added and starting at node u or ending at node vuFor indicating the number of edges terminating at a u node, MvFor indicating the number of edges, I, starting from the v nodeuIs a unit column vector, and the IuThe element corresponding to the u node in the resource allocation map position is 1, IvIs a unit transverse vector, and the IvThe element in the node corresponding to the position of the node v in the resource allocation map is 1, phinewRepresenting the second path matrix, phioldA first path matrix is represented.
Optionally, the method further comprises: determining a loop road section and a bidirectional road section in a map; dividing the map into at least one sub-map according to the loop road section and the bidirectional road section, wherein each sub-map corresponds to a sub-resource allocation matrix;
setting elements in the resource allocation matrix corresponding to the path to a first preset value based on the path comprises: based on the path, setting column elements corresponding to the path in each sub-resource allocation matrix to be a first preset value;
determining whether the road segment is occupied according to the current resource allocation matrix comprises: determining whether the road section is occupied or not according to the current sub-resource allocation matrix;
obtaining a path matrix after the road section is allocated to the automatic guided vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the path matrix comprises the following steps: and obtaining a sub-path matrix after the road section is allocated to the automatic guided vehicle according to the current sub-resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the sub-path matrix.
To achieve the above object, according to another aspect of the embodiments of the present invention, there is provided a dispatching system of an automated guided vehicle, including:
the route planning module is used for determining a route of a current task of the automatic guided vehicle according to a route planning algorithm, wherein the route consists of a plurality of road sections and nodes;
the matrix updating module is used for setting elements corresponding to the paths in a resource allocation matrix to be first preset values based on the paths, and when the elements are the first preset values, the matrix updating module indicates that the automatic guided vehicle applies for resources corresponding to the elements, and the resources comprise the road sections and the nodes;
the resource occupation determining module is used for determining whether the road section is occupied or not according to the current resource allocation matrix;
the deadlock judgment module is used for obtaining a path matrix after the road section is allocated to the automatic guided vehicle according to the current resource allocation matrix, and judging whether deadlock can occur after the road section is allocated to the automatic guided vehicle according to the path matrix;
and the resource allocation module is used for allocating the road section to the automatic guided vehicle and driving the automatic guided vehicle to run on the road section when determining that deadlock does not occur, and updating an element corresponding to the road section in the resource allocation matrix to a second preset value after the road section is run.
Optionally, the system further includes a delay waiting module, configured to control the automated guided vehicle to wait for a predetermined time at the current position when it is determined that the deadlock occurs;
the resource occupation determination module is further used for determining whether the road section is occupied or not according to the current resource allocation matrix after the completion of waiting.
Optionally, the system further includes an interference analysis module, configured to determine mutually interfering road segments and nodes according to the profile parameters and the map information of the automated guided vehicle, where the mutually interfering road segments and nodes are paths and nodes where the automated guided vehicle cannot exist at the same time.
Optionally, the deadlock determination module is further configured to:
determining road sections and nodes which interfere with the road sections;
according to the current resource allocation matrix and the road sections and the nodes which are mutually interfered, obtaining a path matrix which allocates the road sections and the nodes which are mutually interfered with the road sections to the automatic guided vehicle;
and judging whether deadlock occurs after the road section, the road section and the node which are mutually interfered with the road section are distributed to the automatic guided vehicle according to the path matrix.
Optionally, the deadlock determination module is further configured to: judging whether the value of the diagonal element of the path matrix is a non-second preset value: and when the diagonal line element which is not the second preset value exists, determining that the deadlock occurs.
Optionally, the deadlock determination module obtains a path matrix after the road segment is allocated to the automated guided vehicle according to the following process:
creating a first path matrix with the same row number and column number as the resource allocation matrix, wherein the values of all elements of the first path matrix are second preset values;
based on the first path matrix, sequentially taking edges corresponding to elements with the median of a resource allocation matrix being a first preset value as edges to be added, obtaining a second path matrix according to the following formula, and taking the second path matrix as a new first path matrix;
based on the new first path matrix, taking the side corresponding to the forward road section of the automatic guided transport vehicle as a new side to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is the path matrix after the road section is allocated to the automatic guided vehicle;
judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the new second path matrix;
where (u, v) denotes the edge to be added, Φs,vFor representing the number of edges, M, by edge (u, v) to be added and starting at node u or ending at node vuFor indicating the number of edges terminating at a u node, MvFor indicating the number of edges, I, starting from the v nodeuIs a unit column vector, and the IuThe element corresponding to the u node in the resource allocation map position is 1, IvIs a unit transverse vector, and the IvThe element in the node corresponding to the position of the node v in the resource allocation map is 1, phinewRepresenting the second path matrix, phioldA first path matrix is represented.
Optionally, the system further comprises a mapping module configured to: determining a loop road and a bidirectional road section in a map; dividing the map into at least one sub-map, each sub-map corresponding to a sub-resource allocation matrix;
the matrix update module is further to: based on the path, setting column elements corresponding to the path in each sub-resource allocation matrix to be a first preset value;
the resource occupancy determination module is further configured to: determining whether the road section is occupied or not according to the current sub-resource allocation matrix;
the deadlock determination module is further configured to: and obtaining sub-path matrixes after the road sections are allocated to the automatic guided vehicles according to the current sub-resource allocation matrixes, and judging whether deadlock occurs after the road sections are allocated to the automatic guided vehicles according to each sub-path matrix.
To achieve the above object, according to still another aspect of embodiments of the present invention, there is provided an electronic apparatus including: one or more processors; a storage device for storing one or more programs, which when executed by the one or more processors, cause the one or more processors to implement the method for scheduling an automated guided vehicle according to an embodiment of the present invention.
To achieve the above object, according to another aspect of the embodiments of the present invention, there is provided a computer-readable medium having a computer program stored thereon, wherein the program, when executed by a processor, implements a scheduling method of an automated guided vehicle of an embodiment of the present invention.
One embodiment of the above invention has the following advantages or benefits: because modeling is carried out based on the resource allocation diagram, the occupation relation of the AGV and the resources is reflected through the resource allocation matrix, the path matrix is obtained based on the resource allocation matrix, and whether deadlock occurs or not is judged according to the path, so that deadlock can be avoided. For different application environments, the number and resources of the AGVs are different, and the method can conveniently realize automatic mapping, and has the advantages of high automation degree, low complexity, high flexibility and convenient application; when whether deadlock is analyzed or not, analysis and calculation are carried out according to specific map features, so that the efficiency of the system is improved; collision avoidance and deadlock are unified in the process of dispatching the AGV, and deadlock can be avoided more fully.
Further effects of the above-mentioned non-conventional alternatives will be described below in connection with the embodiments.
Drawings
The drawings are included to provide a better understanding of the invention and are not to be construed as unduly limiting the invention. Wherein:
fig. 1 is a schematic diagram of a scheduling method based on a zone control technique in the prior art;
FIG. 2 is a diagram of a resource allocation map according to an embodiment of the present invention;
fig. 3 is a schematic view of a main flow of a scheduling method of an automated guided vehicle according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of adding an edge based on a resource allocation map;
FIG. 5 is a schematic illustration of a local map of another embodiment of the present invention;
FIGS. 6-1 and 6-2 are schematic diagrams of resource allocation diagrams for the embodiment shown in FIG. 5;
FIG. 7 is a schematic diagram of the major modules of a dispatch system for an automated guided vehicle according to an embodiment of the present invention;
FIG. 8 is an exemplary system architecture diagram in which embodiments of the present invention may be employed;
fig. 9 is a schematic structural diagram of a computer system suitable for implementing a terminal device or a server according to an embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present invention are described below with reference to the accompanying drawings, in which various details of embodiments of the invention are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
For convenience of understanding, technical terms related to the embodiments of the present invention will be described below.
The resource allocation map is used for describing the allocation situation of resources, the resource allocation map is a directed map, one resource allocation map G is composed of a node set V and an edge set E, and the state of the AGV dispatching system can be represented by the resource allocation map and a resource allocation matrix. In the AGV scheduling system, AGVs are regarded as entities requesting resources, and paths, nodes, and the like are regarded as resources, and other elements in the actual application environment, such as charging stations, may also be regarded as resources. The travel process of the AGV on the path can be regarded as the process of occupying and releasing resources. When the system state of the AGV dispatching system changes, the AGV dispatching system relates to the application and occupation of resources, the change needs to be corresponding to a resource distribution diagram, and the change of the resource distribution diagram comprises the addition of edges and the deletion of edges.
The resource allocation map is stored as a resource allocation matrix, and in the embodiment of the present invention, it is set that when an element in the resource allocation matrix is a first preset value (e.g., 1), it indicates that an entity applies for a resource or that the resource is allocated to a certain entity, and an element corresponding to an idle resource is a second preset value (e.g., 0).
As a specific example, a resource allocation map is shown in fig. 2. In this example, the circles represent entities requesting resources and the boxes represent resources. The parameters within the circles and boxes represent the identification or number of the AGVs or road segments. The arrows with circles pointing to boxes indicate that an entity applies for the resource, and the arrows with boxes pointing to circles indicate that the resource is allocated to an entity.
As a specific example, as shown in fig. 2, the resource allocation matrix corresponding to the resource allocation map is:
the path matrix corresponding to the resource allocation map is:
the path matrix is obtained by calculation according to the resource allocation matrix, and the calculation process is as follows:
creating a first path matrix with the same row number and column number as the resource allocation matrix, wherein all elements in the initial path matrix are 0;
sequentially taking the edge corresponding to the element of 1 in the resource allocation matrix as the edge to be added, and obtaining a second path matrix according to the following formula, wherein the second path matrix is the path matrix corresponding to the graph 2;
where (u, v) denotes the edge to be added, Φs,vFor representing the number of edges, M, by edge (u, v) to be added and starting at node u or ending at node vuFor indicating the number of edges terminating at a u node, MvFor indicating the number of edges, I, starting from the v nodeuIs a unit column vector, and the IuResource allocation in a node with a node uThe element corresponding to the figure position is 1, IvIs a unit transverse vector, and the IvThe element in the node corresponding to the position of the node v in the resource allocation map is 1, phinewRepresenting the second path matrix, phioldA first path matrix is represented.
The path matrix reflects the connectivity between the nodes. In fig. 2, u points to s, so the element of u row and s column in the resource allocation matrix is 1 (in this example, the first preset value is 1, and the second preset value is 0), which represents that u can reach s, but u cannot reach v, and the element of u row and v column is 0; and w- > t > v indicates that w can reach t and can also reach v through t, so the elements of w row and t column and w row and v column are both 1. Intuitively, it is from 1 node whether another node can be reached through an arrow, if yes, the element determined by the two nodes is 1, otherwise, it is 0.
The elements in the path matrix represent the mutual occupation relationship between the resources, the element with 1 on the diagonal line represents the mutual occupation relationship between the two AGVs on the resources, and the mutual occupation of the resources represents the system deadlock. The deadlock refers to that multiple AGVs all occupy the path of each other, so that the corresponding AGVs cannot continue to move forward. Deadlock can affect the operating efficiency of the system.
In the embodiment of the present invention, AGVs are regarded as entities requesting resources, and paths, nodes, and the like are regarded as resources, the form of the resource allocation matrix is:
wherein V represents AGV, S represents road section, N represents node, and the number is number. The corresponding element in the matrix represents whether an AGV requests a resource or whether a resource has been allocated to the AGV, and when an element is represented as 1, the AGV requests a resource or whether a resource has been allocated to the AGV. In the method of the embodiment of the invention, the following steps are provided: a column element of the first 3 rows of elements corresponding to the resource of 1 indicates that the resource is requested, for example, a column 4, a row 1 element, a column 4, a row 2 element, or a column 4, a row 3 element of 1 indicates that the resource S1 is requested, a row element of the first 3 columns corresponding to the resource of 1 indicates that the resource is occupied, for example, a column 1, a row 4 element, a column 1, a row 5 element, a column 1, a row 6 element, or a column 1, a row 7 element of 1 indicates that the resource S1, S2, N1, or N2 is occupied.
Fig. 3 is a main flow diagram of a scheduling method of an automated guided vehicle according to an embodiment of the present invention, as shown in fig. 3, the method including:
step S301: and determining the path of the current task of the automatic guided vehicle according to a path planning algorithm, wherein the path consists of a plurality of road sections and nodes.
In application, the work area of an automated guided vehicle is referred to abstractly as a map model (which may also be referred to as a directed graph). Specifically, the map model may be a vector dotted line segment network model. The path is formed by a plurality of road segments, and the road segments comprise a starting node and a terminating node. A node is a vector point having a direction indicating that the automated guided vehicle needs to follow a particular direction as it passes through the node. When executing tasks, the automated guided vehicle needs to travel from one platform to another platform, and plans a path for the automated guided vehicle according to a preset path planning algorithm.
The path planning algorithm may be Dijkstra algorithm, or a × algorithm, and the present invention is not limited herein. The Dijkstra algorithm can also be called Dijkstra algorithm, is a shortest path algorithm from one vertex to other items, solves the shortest path problem in a directed graph, and is mainly characterized in that the Dijkstra algorithm is expanded layer by layer from a starting point as a center to an outer layer until the Dijkstra algorithm is expanded to a terminal point. The a-Star algorithm is the most effective direct search method for solving the shortest path in a static road network, and is also an effective algorithm for solving many search problems, and the closer the distance estimation value and the actual value in the algorithm are, the faster the final search speed is.
Step S302: and setting elements corresponding to the paths in a resource allocation matrix as first preset values based on the paths to represent that the automated guided vehicle applies for resources corresponding to the elements, wherein the resources comprise the road sections and the nodes.
In the embodiment of the present invention, it may be predefined which elements in the positions may be used to indicate that the entity applies for the resource and which elements in the positions may be used to indicate that the resource is occupied by the entity, which refers to the above example specifically.
For each segment of the path, the following steps S303-S307 are performed in sequence:
step S303: determining whether the road section is occupied or not according to the current resource allocation matrix;
step S304: if the device is occupied, waiting for a period of time (the waiting time can be flexibly set), and then executing step S303;
step S305: if the road sections are not occupied, obtaining a path matrix after the road sections are allocated to the automatic guided vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road sections are allocated to the automatic guided vehicle according to the path matrix;
step S306: and if the deadlock occurs, controlling the automatic guided vehicle to wait for a preset time at the current position, and executing the step S303 after the waiting is finished. The predetermined time may be flexibly set according to an actual application scenario, and the present invention is not limited herein.
Step S307: and if the deadlock does not occur, distributing the road section to the automatic guided vehicle, driving the automatic guided vehicle to run on the road section, and updating the element corresponding to the road section in the resource allocation matrix to a second preset value after the road section is run.
For step S303, it is determined whether the element corresponding to the link on the resource allocation matrix is 1 according to a preset rule. For example, if the forward link of the AGV is S1, and the corresponding position of S1 on the resource allocation matrix is row 4, it is determined whether the first 3 elements of row 4 are 1, and if there is an element that is 1, it is determined that the link is occupied; if all elements are 0, it is determined that the road segment is not occupied.
For step S304, when the forward road segment of the AGV is not occupied, assuming that the road segment is occupied, it is known from the above that the resource is occupied, and corresponds to adding an edge, and an edge should be added in the resource allocation map.
Specifically, the path matrix after adding the edge is obtained according to the following process:
creating a first path matrix with the same row number and column number as the resource allocation matrix, wherein the values of all elements of the first path matrix are second preset values;
based on the first path matrix, sequentially taking edges corresponding to elements with the median of a resource allocation matrix being a first preset value as edges to be added, obtaining a second path matrix according to the following formula, and taking the second path matrix as a new first path matrix;
based on the new first path matrix, taking the side corresponding to the forward road section of the automatic guided transport vehicle as a new side to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is the path matrix after the road section is allocated to the automatic guided vehicle;
where (u, v) denotes the edge to be added, Φs,vFor representing the number of edges, M, by edge (u, v) to be added and starting at node u or ending at node vuFor indicating the number of edges terminating at a u node, MvFor indicating the number of edges, I, starting from the v nodeuIs a unit column vector, and the IuThe element corresponding to the u node in the resource allocation map position is 1, IvIs a unit transverse vector, and the IvThe element in the node corresponding to the position of the node v in the resource allocation map is 1, phinewRepresenting the second path matrix, phioldA first path matrix is represented.
When an edge (u, v) is added, the number of paths through the edge (u, v) will change. Setting the number of paths to node u from MuIndicating that the number of paths from node v is represented by a row vector MvIndicates that the number of paths through the edge (u, v) will be represented by MuAnd MvAn interaction occurs. By passing through to MuPlus a unit column vector IuTo MvPlus withUnit row vector IvReflecting the number of paths starting at node u and ending at node v. By phiuvRepresenting the number of paths through the edge (u, v) and either starting at node u or ending at node v, then:
the meanings for the above formula are stated below: muMvRepresenting path changes between non-u, v nodes, MuIvIndicating a change in path from a non-u node to a v node, IuMvIndicating a change of path from node u to node v, IuIvRepresenting the path change between node u to node v. In this way, the path relationships between all nodes in the resource allocation map are changed.
As a specific example, in fig. 4, an edge (s, v) is added to the resource allocation map shown in fig. 2. Before adding edges (s, v), the path matrix phi corresponding to the resource allocation mapoldComprises the following steps:
then phisvComprises the following steps:
for step S306, when any diagonal element of the path matrix after the segment is allocated to the AGV is 0, which indicates that no deadlock is caused, it is determined that no system deadlock is caused, that is, the AGV may occupy the resource.
Steps S303 to S307 are executed in sequence according to the sequence of the road segments, that is, each time a road segment is determined when determining the deadlock. In other alternative embodiments, multiple steps (i.e., multiple road segments) may be predicted in determining deadlock, thereby improving system efficiency.
In an optional embodiment, the method of the embodiment of the present invention further includes:
according to the appearance parameters and the map information of the automatic guided vehicle, mutually interfered road sections and nodes are determined, and the mutually interfered road sections and nodes are paths and nodes which cannot exist in the automatic guided vehicle at the same time.
Because the AGVs are profiled, there cannot be simultaneous AGVs on certain stretches and nodes where the AGVs may collide. Therefore, the present embodiment determines the mutually interfered road sections and nodes, i.e. the purpose of performing the interference analysis is to determine which road sections and nodes cannot have AGVs at the same time. The interferometric analysis may be done off-line (i.e., pre-completed) because once the mapping is complete, the interferometric relationship between the paths and nodes is determined.
Further, the obtaining a path matrix after the road segment is allocated to the automated guided vehicle according to the current resource allocation matrix, and determining whether deadlock occurs after the road segment is allocated to the automated guided vehicle according to the path matrix according to the embodiment of the present invention includes:
determining road sections and nodes which interfere with the road sections;
according to the current resource allocation matrix and the road sections and the nodes which are mutually interfered, obtaining a path matrix which allocates the road sections and the nodes which are mutually interfered with the road sections to the automatic guided vehicle;
and judging whether deadlock occurs after the road section, the road section and the node which are mutually interfered with the road section are distributed to the automatic guided vehicle according to the path matrix. As a specific example, in the local map shown in fig. 5, the route of the automated guided vehicle a is: n1- > S0- > N2- > S1- > N3- > S2- > N4- > S3- > N5, and the path of the automatic guided vehicle B is as follows: n6- > S5- > N7- > S4- > N4- > S2- > N3- > S1- > N2- > S0- > N1, and the resource allocation is shown in FIG. 6-1. In fig. 5, S2 and S4 interfere with each other (interferometric analysis can be performed after path mapping is completed, and is performed offline in advance, and can be used during system operation), and N7 and S2 interfere with each other. If S5 and N7 are assigned to the automated guided vehicle B, S2 needs to be assigned to the automated guided vehicle B as well. If S5 and N7 are allocated to the automated guided vehicle B at this time, the resource allocation map will form a ring N1- > a- > S2- > B- > N1 as shown in fig. 6-2, and according to the above steps, an element other than 0 exists on the diagonal of the path matrix obtained by calculating the resource allocation matrix, that is, a deadlock will be formed. This is not allowed, so S5 and N7 cannot be assigned to the automated guided vehicle B at this time.
It can be seen from this example that if only the planned path is considered deadlocked, then vehicle B can drive to the end point N7 of the section S5, but actually considered collision avoidance, it is not allowed to drive to node N7, otherwise a deadlock will be created. If N7 does not interfere with road segment S2, then the B vehicle may travel to point N7. Therefore, the method of the embodiment of the invention unifies the collision avoidance and the deadlock avoidance based on the algorithm of the resource allocation map, can more fully avoid the deadlock, and improves the system efficiency and the reliability.
In an optional embodiment, the method further comprises:
determining a loop road section and a bidirectional road section in a map;
dividing the map into at least one sub-map according to the loop road section and the bidirectional road section, wherein each sub-map corresponds to a sub-resource allocation matrix.
Step 302 then comprises: based on the path, setting column elements corresponding to the path in each sub-resource allocation matrix to be a first preset value;
step S303 includes: determining whether the road section is occupied or not according to the current sub-resource allocation matrix;
step S305 includes: and obtaining a sub-path matrix after the road section is allocated to the automatic guided vehicle according to the current sub-resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the sub-path matrix.
In the embodiment, the loop and the two-way path are searched according to the connection characteristics of the paths on the map, and deadlock judgment can be performed on the loop and the two-way path only when deadlock analysis is performed, so that the system efficiency is improved, and deadlock judgment is more sufficient.
Fig. 7 is a schematic diagram of main blocks of a scheduling system 700 of an automated guided vehicle according to an embodiment of the present invention, as shown in fig. 7, the scheduling system 700 including:
the route planning module 701 is used for determining a route of a current task of the automatic guided vehicle according to a route planning algorithm, wherein the route is composed of a plurality of road sections and node nodes;
a matrix updating module 702, configured to set, based on the path, a column element in the resource allocation matrix corresponding to the path as a first preset value, and set, in the resource allocation matrix, an element corresponding to the path as the first preset value, where when the element is the first preset value, the element indicates that the automated guided vehicle applies for a resource corresponding to the element, where the resource includes the road segment and a node;
a resource occupation determining module 703, configured to determine whether the road segment is occupied according to the current resource allocation matrix;
a deadlock judging module 704, configured to, when the road segment is not occupied, obtain a path matrix after the road segment is allocated to the automatic guided vehicle according to a current resource allocation matrix, and judge whether a deadlock occurs after the road segment is allocated to the automatic guided vehicle according to the path matrix;
and the resource allocation module 705 is configured to, when it is determined that deadlock does not occur, allocate the road segment to the automated guided vehicle, drive the automated guided vehicle to travel on the road segment, and update an element corresponding to the road segment in the resource allocation matrix to a second preset value after the road segment is traveled.
Optionally, the system further includes a delay waiting module, configured to control the automated guided vehicle to wait for a predetermined time at the current position when it is determined that the deadlock occurs;
the resource occupation determining module 703 is further configured to determine whether the road segment is occupied according to the current resource allocation matrix after the completion of waiting.
Optionally, the system further includes an interference analysis module, configured to determine a mutually interfered road segment and node according to the profile parameter and the map information of the automated guided vehicle, where the mutually interfered road segment and node are a path and node where the automated guided vehicle cannot exist at the same time.
Optionally, the deadlock determination module 704 is further configured to:
determining road sections and nodes which interfere with the road sections;
according to the current resource allocation matrix and the road sections and the nodes which are mutually interfered, obtaining a path matrix which allocates the road sections and the nodes which are mutually interfered with the road sections to the automatic guided vehicle;
and judging whether deadlock occurs after the road section, the road section and the node which are mutually interfered with the road section are distributed to the automatic guided vehicle according to the path matrix.
Optionally, the deadlock determination module 704 is further configured to: judging whether the value of the diagonal element of the path matrix is a non-second preset value: and when the diagonal line element which is not the second preset value exists, determining that the deadlock occurs.
Optionally, the deadlock determination module 704 obtains the path matrix after the road segment is allocated to the automated guided vehicle according to the following process:
creating a first path matrix with the same row number and column number as the resource allocation matrix, wherein the values of all elements of the first path matrix are second preset values;
based on the first path matrix, sequentially taking edges corresponding to elements with the median of a resource allocation matrix being a first preset value as edges to be added, obtaining a second path matrix according to the following formula, and taking the second path matrix as a new first path matrix;
based on the new first path matrix, taking the side corresponding to the forward road section of the automatic guided transport vehicle as a new side to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is the path matrix after the road section is allocated to the automatic guided vehicle;
judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the new second path matrix;
where (u, v) denotes the edge to be added, Φs,vFor representing the number of edges, M, by edge (u, v) to be added and starting at node u or ending at node vuFor indicating the number of edges terminating at a u node, MvFor indicating the number of edges, I, starting from the v nodeuIs a unit column vector, and the IuThe element corresponding to the u node in the resource allocation map position is 1, IvIs a unit transverse vector, and the IvThe element in the node corresponding to the position of the node v in the resource allocation map is 1, phinewRepresenting the second path matrix, phioldA first path matrix is represented.
Optionally, the system further comprises a mapping module configured to: determining a loop road section and a bidirectional road section in a map; dividing the map into at least one sub-map according to the loop road section and the bidirectional road section, wherein each sub-map corresponds to a sub-resource allocation matrix;
the matrix update module 702 is further configured to: based on the path, setting column elements corresponding to the path in each sub-resource allocation matrix to be a first preset value;
the resource occupation determination module 703 is further configured to: determining whether the road section is occupied or not according to the current sub-resource allocation matrix;
The system can execute the method provided by the embodiment of the invention and has the corresponding functional modules and beneficial effects of the execution method. For technical details that are not described in detail in this embodiment, reference may be made to the method provided by the embodiment of the present invention.
Fig. 8 shows an exemplary system architecture 800 of a method of scheduling an automated guided vehicle or a scheduling system of an automated guided vehicle to which embodiments of the invention may be applied.
As shown in fig. 8, the system architecture 800 may include terminal devices 801, 802, 803, a network 804, and a server 805. The network 804 serves to provide a medium for communication links between the terminal devices 801, 802, 803 and the server 805. Network 804 may include various types of connections, such as wire, wireless communication links, or fiber optic cables, to name a few.
A user may use the terminal devices 801, 802, 803 to interact with a server 805 over a network 804 to receive or send messages or the like. Various communication client applications may be installed on the terminal devices 801, 802, 803.
The terminal devices 801, 802, 803 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The server 805 may be a server that provides various services, such as a background management server that supports shopping websites browsed by users using the terminal devices 801, 802, 803. The background management server may analyze and perform other processing on the received data such as the product information query request, and feed back a processing result (e.g., target push information and product information) to the terminal device.
It should be noted that the dispatching method of the automated guided vehicle provided by the embodiment of the present invention is generally executed by the server 805, and accordingly, the dispatching system of the automated guided vehicle is generally disposed in the server 805.
It should be understood that the number of terminal devices, networks, and servers in fig. 8 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
Referring now to FIG. 9, shown is a block diagram of a computer system 900 suitable for use with a terminal device implementing an embodiment of the present invention. The terminal device shown in fig. 9 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in fig. 9, the computer system 900 includes a Central Processing Unit (CPU)901 that can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)902 or a program loaded from a storage section 908 into a Random Access Memory (RAM) 903. In the RAM 903, various programs and data necessary for the operation of the system 900 are also stored. The CPU 901, ROM 902, and RAM 903 are connected to each other via a bus 904. An input/output (I/O) interface 905 is also connected to bus 904.
To the I/O interface 905, AN input section 906 including a keyboard, a mouse, and the like, AN output section 907 including a device such as a Cathode Ray Tube (CRT), a liquid crystal display (L CD), and the like, a speaker, and the like, a storage section 908 including a hard disk, and the like, and a communication section 909 including a network interface card such as a L AN card, a modem, and the like, the communication section 909 performs communication processing via a network such as the internet, a drive 910 is also connected to the I/O interface 905 as necessary, a removable medium 911 such as a magnetic disk, AN optical disk, a magneto-optical disk, a semiconductor memory, and the like is mounted on the drive 910 as necessary, so that a computer program read out therefrom is mounted into the storage section 908 as necessary.
In particular, according to the embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication section 909, and/or installed from the removable medium 911. The above-described functions defined in the system of the present invention are executed when the computer program is executed by a Central Processing Unit (CPU) 901.
It should be noted that the computer readable medium shown in the present invention can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present invention, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present invention, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present invention may be implemented by software or hardware. The described modules may also be provided in a processor, which may be described as: a processor includes a sending module, an obtaining module, a determining module, and a first processing module. The names of these modules do not in some cases constitute a limitation on the unit itself, and for example, the sending module may also be described as a "module that sends a picture acquisition request to a connected server".
As another aspect, the present invention also provides a computer-readable medium that may be contained in the apparatus described in the above embodiments; or may be separate and not incorporated into the device. The computer readable medium carries one or more programs which, when executed by a device, cause the device to comprise:
determining a path of a current task of the automatic guided vehicle according to a path planning algorithm, wherein the path consists of a plurality of road sections and node nodes;
based on the path, setting column elements corresponding to the path in a resource allocation matrix as a first preset value, and setting elements corresponding to the path in the resource allocation matrix as the first preset value, wherein when the elements are the first preset values, the automatic guided vehicle is indicated to apply for resources corresponding to the elements, and the resources comprise the road sections and node nodes;
for each segment of the path, the following steps are performed in turn:
determining whether the road section is occupied or not according to the current resource allocation matrix;
if not, obtaining a path matrix after the road section is allocated to the automatic guided vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the path matrix;
and if not, distributing the road section to the automatic guided vehicle, driving the automatic guided vehicle to run on the road section, and updating the element corresponding to the road section in the resource distribution matrix to a second preset value after the road section is run.
According to the technical scheme of the embodiment of the invention, because the modeling is carried out based on the resource distribution diagram, the occupation relation between the AGV and the resource is reflected through the resource distribution matrix, the path matrix is obtained based on the resource distribution matrix, and the technical means of judging whether the deadlock occurs or not according to the path can avoid the deadlock, and when the deadlock occurs or not is analyzed, the analysis and calculation are carried out according to the specific map characteristics, so that the efficiency of the system is improved; collision avoidance and deadlock are unified in the process of dispatching the AGV, and deadlock can be avoided more fully. For different application environments, the number and resources of the AGVs are different, and the method can conveniently realize automatic mapping and has high automation degree.
The above-described embodiments should not be construed as limiting the scope of the invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions can occur, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (10)
1. A method of scheduling an automated guided vehicle, comprising:
determining a path of a current task of the automatic guided vehicle according to a path planning algorithm, wherein the path consists of a plurality of road sections and nodes;
setting an element corresponding to the path in a resource allocation matrix as a first preset value based on the path, and when the element is the first preset value, indicating that the automated guided vehicle applies for a resource corresponding to the element, wherein the resource comprises the road section and a node;
for each segment of the path, the following steps are performed in turn:
determining whether the road section is occupied or not according to the current resource allocation matrix;
if not, obtaining a path matrix after the road section is allocated to the automatic guided vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the path matrix;
and if not, distributing the road section to the automatic guided vehicle, driving the automatic guided vehicle to run on the road section, and updating the element corresponding to the road section in the resource distribution matrix to a second preset value after the road section is run.
2. The method of claim 1, further comprising:
and if the deadlock is determined to occur, controlling the automatic guided vehicle to wait for a preset time at the current position, and determining whether the road section is occupied or not according to the current resource allocation matrix after the waiting is finished.
3. The method of claim 1, further comprising:
and determining mutually interfered road sections and nodes according to the appearance parameters and the map information of the automatic guided vehicles, wherein the mutually interfered road sections and nodes are paths and nodes which can not exist in the automatic guided vehicles at the same time.
4. The method of claim 3, wherein obtaining a path matrix after the road segment is assigned to the automated guided vehicle based on a current resource assignment matrix, and wherein determining whether a deadlock occurs after the road segment is assigned to the automated guided vehicle based on the path matrix comprises:
determining road sections and nodes which interfere with the road sections;
according to the current resource allocation matrix and the road sections and the nodes which are mutually interfered, obtaining a path matrix which allocates the road sections and the nodes which are mutually interfered with the road sections to the automatic guided vehicle;
and judging whether deadlock occurs after the road section, the road section and the node which are mutually interfered with the road section are distributed to the automatic guided vehicle according to the path matrix.
5. The method of claim 1, wherein determining whether a deadlock may occur after the segment is assigned to the automated guided vehicle based on the path matrix comprises:
judging whether the value of the diagonal element of the path matrix is a non-second preset value:
and when the diagonal line element which is not the second preset value exists, determining that the deadlock occurs.
6. The method of any one of claims 1-4, wherein deriving the path matrix after the road segment is assigned to the automated guided vehicle based on a current resource assignment matrix comprises:
creating a first path matrix with the same row number and column number as the resource allocation matrix, wherein the values of all elements of the first path matrix are second preset values;
based on the first path matrix, sequentially taking edges corresponding to elements with the median of a resource allocation matrix being a first preset value as edges to be added, obtaining a second path matrix according to the following formula, and taking the second path matrix as a new first path matrix;
based on the new first path matrix, taking the side corresponding to the forward road section of the automatic guided transport vehicle as a new side to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is the path matrix after the road section is allocated to the automatic guided vehicle;
judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the new second path matrix;
where (u, v) denotes the edge to be added, Φs,vFor representing the number of edges, M, by edge (u, v) to be added and starting at node u or ending at node vuFor indicating the number of edges terminating at a u node, MvFor indicating the number of edges, I, starting from the v nodeuIs a unit column vector, and the IuThe element corresponding to the u node in the resource allocation map position is 1, IvIs a unit transverse vector, and the IvThe element in the node corresponding to the position of the node v in the resource allocation map is 1, phinewRepresenting the second path matrix, phioldA first path matrix is represented.
7. The method of claim 6, further comprising:
determining a loop road section and a bidirectional road section in a map;
dividing the map into at least one sub-map according to the loop road section and the bidirectional road section, wherein each sub-map corresponds to a sub-resource allocation matrix;
setting elements in the resource allocation matrix corresponding to the path to a first preset value based on the path comprises: setting elements corresponding to the paths in each sub-resource allocation matrix to be first preset values based on the paths;
determining whether the road segment is occupied according to the current resource allocation matrix comprises: determining whether the road section is occupied or not according to the current sub-resource allocation matrix;
obtaining a path matrix after the road section is allocated to the automatic guided vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the path matrix comprises the following steps: and obtaining a sub-path matrix after the road section is allocated to the automatic guided vehicle according to the current sub-resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the sub-path matrix.
8. A dispatch system for automated guided vehicles, comprising:
the route planning module is used for determining a route of a current task of the automatic guided vehicle according to a route planning algorithm, wherein the route consists of a plurality of road sections and nodes;
the matrix updating module is used for setting elements corresponding to the paths in a resource allocation matrix to be first preset values based on the paths, and when the elements are the first preset values, the matrix updating module indicates that the automatic guided vehicle applies for resources corresponding to the elements, and the resources comprise the road sections and the nodes;
the resource occupation determining module is used for determining whether the road section is occupied or not according to the current resource allocation matrix;
the deadlock judgment module is used for obtaining a path matrix after the road section is allocated to the automatic guided vehicle according to the current resource allocation matrix when the road section is not occupied, and judging whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the path matrix;
and the resource allocation module is used for allocating the road section to the automatic guided vehicle and driving the automatic guided vehicle to run on the road section when determining that deadlock does not occur, and updating an element corresponding to the road section in the resource allocation matrix to a second preset value after the road section is run.
9. An electronic device, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-7.
10. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the method according to any one of claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910057689.4A CN111459100B (en) | 2019-01-22 | 2019-01-22 | Dispatching method and system for automatic guided vehicles |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910057689.4A CN111459100B (en) | 2019-01-22 | 2019-01-22 | Dispatching method and system for automatic guided vehicles |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111459100A true CN111459100A (en) | 2020-07-28 |
CN111459100B CN111459100B (en) | 2023-05-02 |
Family
ID=71682180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910057689.4A Active CN111459100B (en) | 2019-01-22 | 2019-01-22 | Dispatching method and system for automatic guided vehicles |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111459100B (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111708371A (en) * | 2020-08-20 | 2020-09-25 | 深圳市海柔创新科技有限公司 | Warehouse robot navigation route reservation |
CN114061605A (en) * | 2021-10-15 | 2022-02-18 | 交控科技股份有限公司 | Station guide path control method, electronic device, and computer-readable storage medium |
CN114655038A (en) * | 2022-04-13 | 2022-06-24 | 益模(重庆)智能制造研究院有限公司 | Guide vehicle operation scheduling method based on charge state |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104346658A (en) * | 2014-11-19 | 2015-02-11 | 广东电网有限责任公司电力科学研究院 | Automatic trolley storage system scheduling method based on improved dynamic banker's algorithm |
WO2016135378A1 (en) * | 2015-02-27 | 2016-09-01 | Rocla Oyj | Resolution of route conflict |
CN110119913A (en) * | 2018-02-05 | 2019-08-13 | 北京京东尚科信息技术有限公司 | The method and apparatus for detecting path dependent options |
-
2019
- 2019-01-22 CN CN201910057689.4A patent/CN111459100B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104346658A (en) * | 2014-11-19 | 2015-02-11 | 广东电网有限责任公司电力科学研究院 | Automatic trolley storage system scheduling method based on improved dynamic banker's algorithm |
WO2016135378A1 (en) * | 2015-02-27 | 2016-09-01 | Rocla Oyj | Resolution of route conflict |
CN110119913A (en) * | 2018-02-05 | 2019-08-13 | 北京京东尚科信息技术有限公司 | The method and apparatus for detecting path dependent options |
Non-Patent Citations (1)
Title |
---|
王江华: "自动导引车系统单双向混合路径规划和交通管理技术研究", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111708371A (en) * | 2020-08-20 | 2020-09-25 | 深圳市海柔创新科技有限公司 | Warehouse robot navigation route reservation |
US11868142B2 (en) | 2020-08-20 | 2024-01-09 | Hai Robotics Co., Ltd. | Navigation route reservation for warehouse robot |
CN114061605A (en) * | 2021-10-15 | 2022-02-18 | 交控科技股份有限公司 | Station guide path control method, electronic device, and computer-readable storage medium |
CN114061605B (en) * | 2021-10-15 | 2024-04-26 | 交控科技股份有限公司 | Station guidance path control method, electronic device, and computer-readable storage medium |
CN114655038A (en) * | 2022-04-13 | 2022-06-24 | 益模(重庆)智能制造研究院有限公司 | Guide vehicle operation scheduling method based on charge state |
CN114655038B (en) * | 2022-04-13 | 2023-08-29 | 益模(重庆)智能制造研究院有限公司 | Guide vehicle operation scheduling method based on state of charge |
Also Published As
Publication number | Publication date |
---|---|
CN111459100B (en) | 2023-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lakhan et al. | Cost-efficient mobility offloading and task scheduling for microservices IoVT applications in container-based fog cloud network | |
CN111750862A (en) | Multi-region-based robot path planning method, robot and terminal equipment | |
CN111459100B (en) | Dispatching method and system for automatic guided vehicles | |
CN109901578B (en) | Method and device for controlling multiple robots and terminal equipment | |
US20210312359A1 (en) | Method and device for scheduling automated guided vehicle | |
CN110969390B (en) | Method, apparatus, device and medium for partitioning | |
CN113627775B (en) | Scheduling method, device, equipment and storage medium of robot | |
CN112650226B (en) | Scheduling method, device, equipment and medium for robot | |
CN110247979B (en) | Scheduling scheme determination method and device and electronic equipment | |
CN112506198A (en) | Robot scheduling method, device, equipment and medium | |
CN115271556B (en) | Robot task scheduling method and device, readable storage medium and electronic equipment | |
CN114527751A (en) | Robot path planning method and device and electronic equipment | |
CN114692939A (en) | Multi-AGV task scheduling method based on double-layer strategy | |
US11972184B2 (en) | Method and system for designing a robotic system architecture with optimized system latency | |
CN109684059A (en) | Method and device for monitoring data | |
CN114611896A (en) | Robot task scheduling method, computer device and storage medium | |
Drótos et al. | Suboptimal and conflict-free control of a fleet of AGVs to serve online requests | |
CN113919734A (en) | Order distribution method and device | |
CN113253713A (en) | Task execution method and device | |
EP3924798A1 (en) | Congestion avoidance and common resource access management for multiple robots | |
CN116048092A (en) | Agent scheduling method and device, computer readable medium and electronic equipment | |
CN111767351B (en) | Method and device for determining parking spot of transfer robot | |
US20220019217A1 (en) | Travel control apparatus, travel control method, and computer program | |
KR102195354B1 (en) | Method for creating a travel time based proximity map using big-data | |
CN112699135B (en) | Information updating method and device |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |