CN111459100B - Dispatching method and system for automatic guided vehicles - Google Patents

Dispatching method and system for automatic guided vehicles Download PDF

Info

Publication number
CN111459100B
CN111459100B CN201910057689.4A CN201910057689A CN111459100B CN 111459100 B CN111459100 B CN 111459100B CN 201910057689 A CN201910057689 A CN 201910057689A CN 111459100 B CN111459100 B CN 111459100B
Authority
CN
China
Prior art keywords
matrix
road section
path
resource allocation
road
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.)
Active
Application number
CN201910057689.4A
Other languages
Chinese (zh)
Other versions
CN111459100A (en
Inventor
丁攀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Wodong Tianjun Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Wodong Tianjun Information Technology Co Ltd
Priority to CN201910057689.4A priority Critical patent/CN111459100B/en
Publication of CN111459100A publication Critical patent/CN111459100A/en
Application granted granted Critical
Publication of CN111459100B publication Critical patent/CN111459100B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control 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/0289Control 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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], computer integrated manufacturing [CIM]
    • G05B19/41865Total 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], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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], computer integrated manufacturing [CIM]
    • G05B19/4189Total 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], computer integrated manufacturing [CIM] characterised by the transport system
    • G05B19/41895Total 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], computer integrated manufacturing [CIM] characterised by the transport system using automatic guided vehicles [AGV]
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

The invention discloses a dispatching method and a dispatching system of an automatic guided vehicle, and relates to the technical field of unmanned equipment dispatching. One embodiment of the method comprises the following steps: 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 section of the path, the following steps are performed in sequence: determining whether the road section is occupied 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; if not, the road section is distributed to the AGV, the AGV is driven to run on the road section, and after the road section is run, the element corresponding to the road section in the resource distribution matrix is updated to a second preset value. The implementation mode improves the system efficiency and the automation degree, and is low in complexity, high in flexibility and convenient to apply.

Description

Dispatching method and system for automatic guided vehicles
Technical Field
The invention relates to the technical field of unmanned equipment dispatching, in particular to a dispatching method and a dispatching system of an automatic guided vehicle.
Background
With the development of industrial automation technology, AGVs (Automated Guided Vehicle, automated guided vehicles) are increasingly used in the field of logistics, including e-commerce logistics and industrial workshops. In the scheduling of AGVs, how to avoid collision or deadlock of the AGVs so as to improve the system efficiency is a problem to be solved.
Currently, common methods include implementing scheduling based on regional control techniques and implementing scheduling based on petri net models. The area control technique is to consider the road section where collision and deadlock are likely to occur as a whole in advance according to the path in the map, as shown in fig. 1, the range determined by two rectangular boxes is two areas, and if the path of an AGV is 1- >2- >3, the road section 4 is occupied when it goes to the road section 2 because the road section 2 and the road section 4 are in one area. The petri net 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 concurrency characteristic, so that the petri net model is also applied to modeling of the AGV system. The petri net model takes the path, the AGV and the like in the AGV system as identifiers, and collision and deadlock of the system are avoided by analyzing the petri net model.
In the process of implementing the present invention, the inventor finds that at least the following problems exist in the prior art:
the strategy for realizing the scheduling based on the regional control technology often needs to manually add regions in the running process, the automation degree is influenced, the system efficiency is low, and how to reasonably plan each region is not very intuitive. The strategy for realizing scheduling based on petri net model is complex in system modeling, and once system elements change, such as AGV number and path change, the model is complex to change again, which is time-consuming and labor-consuming. And the analysis of the petri net itself is also relatively complex.
Disclosure of Invention
In view of the above, the embodiment of the invention provides a scheduling method and a scheduling system for an automatic guided vehicle, which can be used for modeling based on a resource allocation map, reflecting the occupation relationship between an AGV and resources through a resource allocation matrix, obtaining a path matrix based on the resource allocation matrix, and judging whether deadlock occurs according to the path, thereby avoiding deadlock. For different application environments, the AGVs are different in number and resources, and the method can conveniently realize automatic mapping, and is high in automation degree, low in complexity, high in flexibility and convenient to apply; when the deadlock is analyzed, analysis and calculation are carried out according to specific map features, so that the efficiency of the system is improved; the collision prevention and the deadlock are unified in the process of scheduling the AGVs, and the deadlock can be more fully avoided.
To achieve the above object, according to an aspect of the embodiments of the present invention, there is provided a dispatching method for an automatic 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 indicating the automatic guided vehicle to apply for resources corresponding to the element when the element is the first preset value, wherein the resources comprise the road section and nodes;
for each section of the path, the following steps are performed in sequence:
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 guiding transport vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guiding transport vehicle according to the path matrix;
if not, the road section is distributed to the automatic guiding transport vehicle, the automatic guiding transport vehicle is driven to run on the road section, and after the road section is run, elements corresponding to the road section in the resource distribution matrix are updated to be a second preset value.
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 according to the current resource allocation matrix after the waiting is completed.
Optionally, the method further comprises: and determining the road sections and nodes which interfere with each other according to the shape parameters and the map information of the automatic guided transport vehicle, wherein the road sections and the nodes which interfere with each other are paths and nodes which cannot exist the automatic guided transport vehicle at the same time.
Optionally, obtaining a path matrix after the road section is allocated to the automatic guided vehicle according to the current resource allocation matrix, and determining whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the path matrix includes:
determining road sections and nodes which interfere with the road sections;
obtaining a path matrix after distributing the road section and the node which are mutually interfered with the road section to the automatic guiding transport vehicle according to the current resource distribution matrix and the road section and the node which are mutually interfered with each other;
and judging whether deadlock occurs after the road section, the road section interfering with the road section and the node are distributed to the automatic guided vehicle according to the path matrix.
Optionally, determining whether a deadlock occurs after the road section 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 or not:
when there is a diagonal element that is not a second preset value, it is determined that a deadlock has occurred.
Optionally, obtaining a path matrix after the road section 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 an edge corresponding to an element with a value of a first preset value in a resource allocation matrix as an edge 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 edge corresponding to the forward road section of the automatic guided vehicle as a new edge to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is a path matrix after the road section is distributed to the automatic guiding transport vehicle;
Judging whether deadlock occurs after the road section is distributed to the automatic guided vehicle according to the new second path matrix;
Figure BDA0001953067070000041
wherein (u, v) represents an edge to be added, Φ s,v For representing the number of edges M through the edges (u, v) to be added and starting at the u node or ending at the v node u For indicating the number of edges ending in a u-node, M v For indicating the number of edges starting at node v, I u Is a unit column vector, and the I u The element corresponding to the u node in the position of the resource allocation diagram is 1, I v Is a unit transverse vector, and the I v Element corresponding to v node in resource allocation diagram positionIs 1 phi new Representing a second path matrix, phi old Representing a first path matrix.
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;
based on the path, setting an element corresponding to the path in the resource allocation matrix to a first preset value includes: setting column elements corresponding to the paths in each sub-resource allocation matrix as a first preset value 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 distributed to the automatic guided vehicle according to the current sub-resource distribution matrix, and judging whether deadlock occurs after the road section is distributed 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 path planning module is used for 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;
the matrix updating module is used for setting elements corresponding to the paths in the resource allocation matrix as first preset values based on the paths, and expressing the automatic guided vehicle to apply for resources corresponding to the elements when the elements are the first preset values, wherein the resources comprise the road sections and nodes;
The resource occupation determining module is used for determining whether the road section is occupied according to the current resource allocation matrix;
the deadlock judging module is used for obtaining a path matrix after the road section is allocated to the automatic guiding transport vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guiding transport vehicle according to the path matrix;
and the resource allocation module is used for allocating the road section to the automatic guiding transport vehicle when the fact that the deadlock does not occur is determined, driving the automatic guiding transport 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.
Optionally, the system further comprises a delay waiting module, configured to control the automatic 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 is further used for determining whether the road section is occupied according to the current resource allocation matrix after waiting for completion.
Optionally, the system further comprises an interference analysis module, which is used for determining the road sections and nodes which interfere with each other according to the shape parameters and the map information of the automatic guided transport vehicle, wherein the road sections and the nodes which interfere with each other are paths and nodes which cannot exist the automatic guided transport vehicle at the same time.
Optionally, the deadlock determination module is further configured to:
determining road sections and nodes which interfere with the road sections;
obtaining a path matrix after distributing the road section and the node which are mutually interfered with the road section to the automatic guiding transport vehicle according to the current resource distribution matrix and the road section and the node which are mutually interfered with each other;
and judging whether deadlock occurs after the road section, the road section interfering with the road section and the node 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 or not: when there is a diagonal element that is not a second preset value, it is determined that a deadlock has occurred.
Optionally, the deadlock judgment module obtains a path matrix after the road segments are allocated to the automated guided vehicles 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 an edge corresponding to an element with a value of a first preset value in a resource allocation matrix as an edge 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 edge corresponding to the forward road section of the automatic guided vehicle as a new edge to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is a path matrix after the road section is distributed to the automatic guiding transport vehicle;
judging whether deadlock occurs after the road section is distributed to the automatic guided vehicle according to the new second path matrix;
Figure BDA0001953067070000061
wherein (u, v) represents an edge to be added, Φ s,v For representing the number of edges M through the edges (u, v) to be added and starting at the u node or ending at the v node u For indicating the number of edges ending in a u-node, M v For indicating the number of edges starting at node v, I u Is a unit column vector, and the I u The element corresponding to the u node in the position of the resource allocation diagram is 1, I v Is a unit transverse vector, and the I v The element corresponding to the v node in the position of the resource allocation diagram is 1, phi new Representing a second path matrix, phi old Representing a first path matrix.
Optionally, the system further comprises a map dividing module for: 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 updating module is further configured to: setting column elements corresponding to the paths in each sub-resource allocation matrix as a first preset value based on the paths;
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 judgment module is also used for: and obtaining a sub-path matrix after the road section is distributed to the automatic guided vehicle according to the current sub-resource distribution matrix, and judging whether deadlock occurs after the road section is distributed to the automatic guided vehicle according to each sub-path matrix.
To achieve the above object, according to still another aspect of the embodiments of the present invention, there is provided an electronic device including: one or more processors; and the storage device is used for storing one or more programs, and when the one or more programs are executed by the one or more processors, the one or more processors realize the scheduling method of the automatic guided vehicle.
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 the scheduling method of the automated guided vehicle of the embodiments of the present invention.
One embodiment of the above invention has the following advantages or benefits: because modeling is performed based on the resource allocation diagram, the occupancy relationship between the AGVs 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 AGVs are different in number and resources, and the method can conveniently realize automatic mapping, and is high in automation degree, low in complexity, high in flexibility and convenient to apply; when the deadlock is analyzed, analysis and calculation are carried out according to specific map features, so that the efficiency of the system is improved; the collision prevention and the deadlock are unified in the process of scheduling the AGVs, and the deadlock can be more fully avoided.
Further effects of the above-described non-conventional alternatives are 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 prior art scheduling method based on zone control techniques;
FIG. 2 is a schematic diagram of a resource allocation map according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of the main flow of a dispatching method of an automated guided vehicle according to an embodiment of the invention;
FIG. 4 is a schematic illustration of adding an edge on the basis of a resource allocation map;
FIG. 5 is a schematic illustration of a partial map of another embodiment of the present invention;
FIGS. 6-1 and 6-2 are schematic diagrams of resource allocation diagrams of 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 applied;
fig. 9 is a schematic diagram of a computer system suitable for use in implementing an embodiment of the invention.
Detailed Description
Exemplary embodiments of the present invention will now be described with reference to the accompanying drawings, in which various details of the embodiments of the present invention are included to facilitate understanding, and are to be considered 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 first.
The resource allocation diagram is used for describing the allocation situation of resources, the resource allocation diagram is a directed diagram, a resource allocation diagram G is composed of a node set V and an edge set E, and the state of the AGV scheduling system can be represented through the resource allocation diagram and a resource allocation matrix. In the AGV scheduling system, the AGV is regarded as an entity requesting resources, paths, nodes, and the like are regarded as resources, and other elements in the actual application environment, such as a charging station, can also be regarded as resources. The travel of the AGV on the path may be considered as an occupancy and release process for the resources. The system state of the AGV scheduling system changes, which relates to the application and occupation of resources, and the change needs to be corresponding to the resource allocation diagram, wherein the change of the resource allocation 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, when an element in the resource allocation matrix is a first preset value (for example, 1), it indicates that an entity applies for a resource or allocates the resource to a certain entity, and an element corresponding to an idle resource is a second preset value (for example, 0).
As a specific example, a resource allocation diagram 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 identity or number of the AGVs or road segments. The arrow with the circle pointing to the box indicates that the entity applies for the resource, and the arrow with the circle pointing to the box indicates that the resource is allocated to one entity.
As a specific example, as shown in fig. 2, the resource allocation matrix corresponding to the resource allocation map is:
Figure BDA0001953067070000091
the path matrix corresponding to the resource allocation map is:
Figure BDA0001953067070000092
the path matrix is calculated 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 with 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 FIG. 2;
Figure BDA0001953067070000101
wherein (u, v) represents an edge to be added, Φ s,v For representing the number of edges M through the edges (u, v) to be added and starting at the u node or ending at the v node u For indicating the number of edges ending in a u-node, M v For indicating the number of edges starting at node v, I u Is a unit column vector, and the I u The element corresponding to the u node in the position of the resource allocation diagram is 1, I v Is a unit transverse vector, and the I v The element corresponding to the v node in the position of the resource allocation diagram is 1, phi new Representing a second path matrix, phi old Representing a first path matrix.
The path matrix reflects connectivity between nodes. In fig. 2, u points to s, so that the elements of u rows and columns in the resource allocation matrix are 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 elements of u rows and columns are 0; and w- > t > v, it is stated that w can reach t, and also can reach v through t, so that the elements of w row, t column and w row, v column are both 1. Intuitively, from 1 node, the other node can be reached by an arrow, if so, the element determined by the two nodes is 1, otherwise, is 0.
The elements in the path matrix represent the mutual occupancy relationship between the resources, the elements with 1 on the diagonal represent the mutual occupancy relationship between two AGVs on the resources, and the mutual occupancy of the resources represents the system deadlock. The deadlock refers to that a plurality of AGVs occupy paths of each other, so that the corresponding AGVs cannot continue to move forward. Deadlocks can affect the operating efficiency of the system.
In the embodiment of the invention, the AGV is regarded as an entity requesting the resource, and the path, the node and the like are regarded as the resource, and then the form of the resource allocation matrix is as follows:
Figure BDA0001953067070000102
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 denoted as 1 indicates that the AGV requests a resource or that 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 1 in the first 3 rows of elements corresponding to a resource indicates that the resource is requested, e.g., a column 4, column 1, column 4, column 2, or column 4, column 3, row element of 1 indicates that the resource S1 is requested, a column 3, row element of 1 in the first 3 rows corresponding to a resource indicates that the resource is occupied, e.g., a column 1, column 4, column 1, column 5, column 1, column 6, or column 1, row 7 element of 1 indicates that the resource S1, S2, N1, or N2 is occupied.
Fig. 3 is a main flow chart of a dispatching method of an automatic guided vehicle according to an embodiment of the present invention, as shown in fig. 3, the method includes:
step S301: and determining a 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 working area abstraction of an automated guided vehicle is called a map model (which may also be called a directed graph). In particular, the map model may be a vector dotted segment network model. The path is composed of a plurality of road segments including a start node and a stop node. The junction is a vector point with a direction that indicates that the automated guided vehicle needs to follow a particular direction when passing through the junction. When the automatic guided vehicle performs a task, the automatic guided vehicle needs to travel from one platform to another platform, and a path is planned for the automatic guided vehicle according to a preset path planning algorithm.
The path planning algorithm may be Dijkstra algorithm, or an a-algorithm, etc., which is not limited herein. Dijkstra's algorithm can also be called Dijkstra's algorithm, it is the shortest path algorithm from a summit to other each point, solves the shortest path problem in the directed graph, and its main feature is that it expands outward layer by layer with starting point as the center, until expanding to the terminal point. The algorithm A (A-Star algorithm) is a direct search method which is most effective in solving the shortest path in a static road network, and is also an effective algorithm for solving a plurality of search problems, wherein the closer the distance estimated 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 a first preset value based on the paths so as to represent the automatic guided vehicles to apply for resources corresponding to the elements, wherein the resources comprise the road sections and nodes.
In the embodiment of the present invention, it may be predefined which location elements may be used to indicate that an entity applies for a resource and which location elements may be used to indicate that the resource is occupied by the entity, and for specific reference, please refer to the above example.
For each section 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 occupied, waiting for a period of time (the waiting time can be flexibly set), and then executing step S303;
step S305: if the road section is not occupied, obtaining a path matrix after the road section is allocated to the automatic guiding transport vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guiding transport vehicle according to the path matrix;
step S306: if the deadlock occurs, the automatic guided vehicle is controlled to wait for a preset time at the current position, and step S303 is executed after the waiting is completed. The predetermined time may be flexibly set according to an actual application scenario, which is not limited herein.
Step S307: and if no deadlock occurs, distributing the road section to the automatic guiding transport vehicle, driving the automatic guiding transport vehicle to run on the road section, and updating an element corresponding to the road section in the resource distribution matrix to a second preset value after the road section is run.
For step S303, it is determined whether the element corresponding to the road segment on the resource allocation matrix is 1 according to a preset rule. For example, if the forward road section of the AGV is S1 and the corresponding position of S1 on the resource allocation matrix is the 4 th row, determining whether the first 3 elements of the 4 th row are 1, and if the first 3 elements are 1, determining that the road section 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, it is assumed that the road segment is occupied, and as known above, the resources are occupied, which corresponds to adding an edge, an edge should be added in the resource allocation map.
Specifically, the path matrix after adding the edges is obtained according to the following procedure:
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 an edge corresponding to an element with a value of a first preset value in a resource allocation matrix as an edge 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 edge corresponding to the forward road section of the automatic guided vehicle as a new edge to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is a path matrix after the road section is distributed to the automatic guiding transport vehicle;
Figure BDA0001953067070000131
wherein (u, v) represents an edge to be added, Φ s,v For representing the number of edges M through the edges (u, v) to be added and starting at the u node or ending at the v node u For indicating the number of edges ending in a u-node, M v For indicating the number of edges starting at node v, I u Is a unit column vector, and the I u The element corresponding to the u node in the position of the resource allocation diagram is 1, I v Is a unit transverse vector, and the I v The element corresponding to the v node in the position of the resource allocation diagram is 1, phi new Representing a second path matrix, phi old Representing a first path matrix.
When adding one edge (u, v), the number of paths through the edge (u, v) will change. Let the number of paths reaching node u be M u The number of paths from node v is represented by row vector M v Representing that the number of paths through edge (u, v) will be defined by M u And M v The interaction occurs. By directing to M u Plus the unit column vector I u To M v Plus unit row vector I v Reflecting the number of paths starting at node u and ending at node v. With phi uv Representing the number of paths through the edge (u, v) and starting at node u or ending at node v, then:
Figure BDA0001953067070000132
/>
the meaning of the above formula is explained as follows: m is M u M v Representing path change between non-u, v nodes, M u I v Representing path change from non-u node to v node, I u M v Representing the path change from u node to non-v node, I u I v Representing the path change from the u node to the v node. In this way, the path relationships between all nodes in the resource allocation graph are changed.
As a specific example, inFig. 4 shows that an edge (s, v) is added to the resource allocation diagram shown in fig. 2. Before adding the edge (s, v), the path matrix phi corresponding to the resource allocation map old The method comprises the following steps:
Figure BDA0001953067070000141
phi is sv The method comprises the following steps:
Figure BDA0001953067070000142
Figure BDA0001953067070000143
for step S306, when any diagonal element of the path matrix after the road segment is assigned to the AGV is 0, it indicates that no deadlock is caused, and it is determined that no system deadlock is caused, that is, the AGV may occupy resources.
The steps S303-S307 are sequentially performed according to the sequence of the road segments, that is, one road segment is determined each time when the deadlock is determined. In other alternative embodiments, multiple steps may be pre-determined (i.e., multiple road segments may be pre-determined) in determining deadlock, thereby improving system efficiency.
In an alternative embodiment, the method of the embodiment of the present invention further includes:
and determining the road sections and nodes which interfere with each other according to the shape parameters and the map information of the automatic guided transport vehicle, wherein the road sections and the nodes which interfere with each other are paths and nodes which cannot exist the automatic guided transport vehicle at the same time.
Since the AGVs are contoured, the AGVs cannot coexist on certain road segments and nodes, which the AGVs may collide on. Therefore, the present embodiment determines the road segments and nodes that interfere with each other, that is, the purpose of performing interference analysis is to determine which road segments and nodes cannot coexist with the AGV. The interferometry analysis may be done off-line (i.e., pre-done) because once mapping is complete, the interference relationship between the path and the node is determined.
Further, according to the present resource allocation matrix, the method for obtaining a path matrix after the road section is allocated to the automatic guided vehicle, and according to the path matrix, determining whether a deadlock occurs after the road section is allocated to the automatic guided vehicle includes:
determining road sections and nodes which interfere with the road sections;
obtaining a path matrix after distributing the road section and the node which are mutually interfered with the road section to the automatic guiding transport vehicle according to the current resource distribution matrix and the road section and the node which are mutually interfered with each other;
And judging whether deadlock occurs after the road section, the road section interfering with the road section and the node are distributed to the automatic guided vehicle according to the path matrix. As a specific example, in the partial map as shown in fig. 5, the route of the automated guided vehicle a is: n1- > S0- > N2- > S1- > N3- > S2- > N4- > S3- > N5, the path of the automated guided vehicle B is: the resource allocation is shown in figure 6-1, wherein N6- > S5- > N7- > S4- > N4- > S2- > N3- > S1- > N2- > S0- > N1. In fig. 5, S2 and S4 interfere (interference analysis is performed after path drawing is completed, interference analysis is performed offline in advance, and system operation is performed), and N7 and S2 interfere. If S5 and N7 are assigned to automated guided vehicle B, S2 also needs to be assigned to automated guided vehicle B. If S5, N7 is allocated to the automated guided vehicle B at this time, the resource allocation map will form a loop N1- > a- > S2- > B- > N1 as shown in fig. 6-2, and according to the above steps, there are elements other than 0 on the diagonal of the path matrix obtained after calculating the resource allocation matrix, that is, a deadlock will be formed. This is not permissible, so that S5 and N7 cannot be assigned to the automated guided vehicle B at this time.
From this example it can be seen that if only whether the planned path is deadlocked is considered, the B-car can travel to the end point N7 of the road section S5, but when collision avoidance is actually considered, the B-car is not allowed to travel to the node N7, otherwise a deadlock will be formed. 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 collision avoidance and deadlock avoidance based on the algorithm of the resource allocation map, can more fully avoid deadlock and improves the system efficiency and reliability.
In an alternative embodiment, the method further comprises:
determining a loop road section and a bidirectional road section in a map;
the map is divided into at least one sub-map according to the loop road section and the bidirectional road section, and each sub-map corresponds to one sub-resource allocation matrix.
Step 302 comprises: setting column elements corresponding to the paths in each sub-resource allocation matrix as a first preset value based on the paths;
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 distributed to the automatic guided vehicle according to the current sub-resource distribution matrix, and judging whether deadlock occurs after the road section is distributed to the automatic guided vehicle according to the sub-path matrix.
In the embodiment, the loop and the bidirectional path are searched according to the connection characteristics of the path on the map, and the deadlock analysis can be performed only on the loop and the bidirectional path, so that the system efficiency is improved, and the deadlock judgment is more sufficient.
Fig. 7 is a schematic diagram of main modules of a dispatching system 700 of an automated guided vehicle according to an embodiment of the invention, as shown in fig. 7, the dispatching system 700 includes:
the path planning module 701 is configured to determine a path of a current task of the automatic guided vehicle according to a path planning algorithm, where the path is composed of a plurality of road segments and node nodes;
a matrix updating module 702, configured to set, based on the path, a column element corresponding to the path in a resource allocation matrix as a first preset value, set an element corresponding to the path in the resource allocation matrix as a first preset value, and indicate that the automated guided vehicle applies for a resource corresponding to the element when the element is the first preset value, where the resource includes the road section 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;
the deadlock judging module 704 is configured to obtain 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 unoccupied, and judge whether deadlock occurs after the road section is allocated to the automatic guided vehicle according to the path matrix;
And the resource allocation module 705 is configured to allocate the road segment to the automatic guided vehicle when it is determined that no deadlock occurs, drive the automatic 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 comprises a delay waiting module, configured to control the automatic guided vehicle to wait for a predetermined time at the current position when it is determined that the deadlock occurs;
the resource occupancy determination module 703 is further configured to determine whether the road segment is occupied according to the current resource allocation matrix after waiting for completion.
Optionally, the system further comprises an interference analysis module, which is used for determining the road section and the node which interfere with each other according to the shape parameter and the map information of the automatic guided vehicle, wherein the road section and the node which interfere with each other are the road section and the node which can not exist the automatic guided vehicle 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;
obtaining a path matrix after distributing the road section and the node which are mutually interfered with the road section to the automatic guiding transport vehicle according to the current resource distribution matrix and the road section and the node which are mutually interfered with each other;
And judging whether deadlock occurs after the road section, the road section interfering with the road section and the node 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 or not: when there is a diagonal element that is not a second preset value, it is determined that a deadlock has occurred.
Optionally, the deadlock determination module 704 obtains a path matrix after the road segments are assigned to the automated guided vehicles according to the following procedure:
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 an edge corresponding to an element with a value of a first preset value in a resource allocation matrix as an edge 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 edge corresponding to the forward road section of the automatic guided vehicle as a new edge to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is a path matrix after the road section is distributed to the automatic guiding transport vehicle;
Judging whether deadlock occurs after the road section is distributed to the automatic guided vehicle according to the new second path matrix;
Figure BDA0001953067070000181
wherein (u, v) represents an edge to be added, Φ s,v For representing the number of edges M through the edges (u, v) to be added and starting at the u node or ending at the v node u For indicating the number of edges ending in a u-node, M v For indicating the number of edges starting at node v, I u Is a unit column vector, and the I u The element corresponding to the u node in the position of the resource allocation diagram is 1, I v Is a unit transverse vector, and the I v The element corresponding to the v node in the position of the resource allocation diagram is 1, phi new Representing a second path matrix, phi old Representing a first path matrix.
Optionally, the system further comprises a map dividing module for: 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: setting column elements corresponding to the paths in each sub-resource allocation matrix as a first preset value based on the paths;
the resource occupancy 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 deadlock determination module 704 is further configured to: 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 each sub-path 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. Technical details not described in detail in this embodiment may be found in the methods provided in the embodiments of the present invention.
Fig. 8 illustrates an exemplary system architecture 800 of a method of automated guided vehicle scheduling or automated guided vehicle scheduling system to which embodiments of the invention may be applied.
As shown in fig. 8, a system architecture 800 may include terminal devices 801, 802, 803, a network 804, and a server 805. The network 804 serves as a medium for providing communication links between the terminal devices 801, 802, 803 and the server 805. The network 804 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
A user may interact with the server 805 through the network 804 using the terminal devices 801, 802, 803 to receive or send messages or the like. Various communication client applications can be installed on the terminal devices 801, 802, 803.
The terminal devices 801, 802, 803 may be a variety of electronic devices having a display screen and supporting web browsing, including but not limited to smartphones, tablets, laptop and desktop computers, and the like.
The server 805 may be a server providing various services, such as a background management server providing support for shopping-type websites browsed by the user using the terminal devices 801, 802, 803. The background management server can analyze and other processing on the received data such as the product information inquiry request and the like, and feed back processing results (such as target push information and product information) to the terminal equipment.
It should be noted that, the dispatching method of the automated guided vehicle according to 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, there is illustrated a schematic diagram of a computer system 900 suitable for use in implementing an embodiment of the present invention. The terminal device shown in fig. 9 is only an example, and should not impose any limitation on the functions and the scope of use of the embodiment of the present invention.
As shown in fig. 9, the computer system 900 includes a Central Processing Unit (CPU) 901, which can execute various appropriate actions and processes according to 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 through a bus 904. An input/output (I/O) interface 905 is also connected to the bus 904.
The following components are connected to the I/O interface 905: an input section 906 including a keyboard, a mouse, and the like; an output portion 907 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and a speaker; a storage portion 908 including a hard disk or the like; and a communication section 909 including a network interface card such as a LAN card, a modem, or the like. The communication section 909 performs communication processing via a network such as the internet. The drive 910 is also connected to the I/O interface 905 as needed. A removable medium 911 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is installed as needed on the drive 910 so that a computer program read out therefrom is installed into the storage section 908 as needed.
In particular, according to embodiments of the present disclosure, the processes described above with reference to 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 shown in the flow chart. In such an embodiment, the computer program may be downloaded and installed from the network via the communication portion 909 and/or installed from the removable medium 911. The above-described functions defined in the system of the present invention are performed when the computer program is executed by a Central Processing Unit (CPU) 901.
The computer readable medium shown in the present invention may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any 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 context of this document, 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, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. 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 flowcharts 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 involved in the embodiments of the present invention may be implemented in software or in hardware. The described modules may also be provided in a processor, for example, 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 constitute a limitation on the unit itself in some cases, and for example, the transmitting module may also be described as "a module that transmits 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 present alone without being fitted into the device. The computer readable medium carries one or more programs which, when executed by a device, cause the device to include:
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;
setting a column element corresponding to the path in a resource allocation matrix as a first preset value based on the path, setting an element corresponding to the path in the resource allocation matrix as a first preset value, and indicating the automatic guided vehicle to apply for a resource corresponding to the element when the element is the first preset value, wherein the resource comprises the road section and a node;
for each section of the path, the following steps are performed in sequence:
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 guiding transport vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guiding transport vehicle according to the path matrix;
If not, the road section is distributed to the automatic guiding transport vehicle, the automatic guiding transport vehicle is driven to run on the road section, and after the road section is run, elements corresponding to the road section in the resource distribution matrix are updated to be a second preset value.
According to the technical scheme, the modeling is performed based on the resource allocation diagram, the occupation relation between the AGVs and the resources is reflected through the resource allocation matrix, the path matrix is obtained based on the resource allocation matrix, whether the deadlock occurs or not is judged according to the path, the deadlock can be avoided, when the deadlock occurs or not is analyzed, analysis and calculation are performed according to specific map features, and the efficiency of the system is improved; the collision prevention and the deadlock are unified in the process of scheduling the AGVs, and the deadlock can be more fully avoided. For different application environments, the AGVs are different in number and resources, and the method can conveniently realize automatic mapping and is high in automation degree.
The above embodiments do not limit the scope of the present invention. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives can occur depending upon design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the 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 indicating the automatic guided vehicle to apply for resources corresponding to the element when the element is the first preset value, wherein the resources comprise the road section and nodes;
for each section of the path, the following steps are performed in sequence:
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 guiding transport vehicle according to the current resource allocation matrix, and judging whether deadlock occurs after the road section is allocated to the automatic guiding transport vehicle according to the path matrix;
if not, the road section is distributed to the automatic guiding transport vehicle, the automatic guiding transport vehicle is driven to run on the road section, and after the road section is run, elements corresponding to the road section in the resource distribution matrix are updated to be a second preset value.
2. The method according to claim 1, wherein 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 according to the current resource allocation matrix after the waiting is completed.
3. The method according to claim 1, wherein the method further comprises:
and determining the road sections and nodes which interfere with each other according to the shape parameters and the map information of the automatic guided transport vehicle, wherein the road sections and the nodes which interfere with each other are paths and nodes which cannot exist the automatic guided transport vehicle at the same time.
4. The method of claim 3, wherein obtaining a path matrix after the road segments are assigned to the automated guided vehicles based on the current resource allocation matrix, and determining whether a deadlock will occur after the road segments are assigned to the automated guided vehicles based on the path matrix comprises:
determining road sections and nodes which interfere with the road sections;
obtaining a path matrix after distributing the road section and the node which are mutually interfered with the road section to the automatic guiding transport vehicle according to the current resource distribution matrix and the road section and the node which are mutually interfered with each other;
And judging whether deadlock occurs after the road section, the road section interfering with the road section and the node are distributed to the automatic guided vehicle according to the path matrix.
5. The method of claim 1, wherein determining whether a deadlock will occur after the road 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 or not:
when there is a diagonal element that is not a second preset value, it is determined that a deadlock has occurred.
6. The method according to any one of claims 1-4, wherein deriving a path matrix after the road segments are assigned to the automated guided vehicles based on a current resource allocation 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 an edge corresponding to an element with a value of a first preset value in a resource allocation matrix as an edge 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 edge corresponding to the forward road section of the automatic guided vehicle as a new edge to be added, and obtaining a new second path matrix according to the following formula; the new second path matrix is a path matrix after the road section is distributed to the automatic guiding transport vehicle;
judging whether deadlock occurs after the road section is distributed to the automatic guided vehicle according to the new second path matrix;
Figure QLYQS_1
wherein (u, v) represents an edge to be added, Φ u,v For representing the passing of edges (u, v) to be added and edges starting at the u node or ending at the v nodeQuantity, M u For indicating the number of edges ending in a u-node, M v For indicating the number of edges starting at node v, I u Is a unit column vector, and the I u The element corresponding to the u node in the position of the resource allocation diagram is 1, I v Is a unit transverse vector, and the I v The element corresponding to the v node in the position of the resource allocation diagram is 1, phi new Representing a second path matrix, phi old Representing a first path matrix.
7. The method of claim 6, wherein 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;
Based on the path, setting an element corresponding to the path in the resource allocation matrix to a first preset value includes: setting elements corresponding to the paths in each sub-resource allocation matrix as a first preset value 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 distributed to the automatic guided vehicle according to the current sub-resource distribution matrix, and judging whether deadlock occurs after the road section is distributed to the automatic guided vehicle according to the sub-path matrix.
8. A dispatch system for an automated guided vehicle, comprising:
the path planning module is used for 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;
The matrix updating module is used for setting elements corresponding to the paths in the resource allocation matrix as first preset values based on the paths, and expressing the automatic guided vehicle to apply for resources corresponding to the elements when the elements are the first preset values, wherein the resources comprise the road sections and nodes;
the resource occupation determining module is used for determining whether the road section is occupied according to the current resource allocation matrix;
the deadlock judging module is used for obtaining a path matrix after the road section is allocated to the automatic guiding transport vehicle according to the current resource allocation matrix when the road section is unoccupied, and judging whether deadlock occurs after the road section is allocated to the automatic guiding transport vehicle according to the path matrix;
and the resource allocation module is used for allocating the road section to the automatic guiding transport vehicle when the fact that the deadlock does not occur is determined, driving the automatic guiding transport 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.
9. An electronic device, comprising:
one or more processors;
Storage means for storing one or more programs,
when executed by the one or more processors, causes the one or more processors to implement the method of any of claims 1-7.
10. A computer readable medium, on which a computer program is stored, characterized in that the program, when being executed by a processor, implements the method according to any of claims 1-7.
CN201910057689.4A 2019-01-22 2019-01-22 Dispatching method and system for automatic guided vehicles Active CN111459100B (en)

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 CN111459100A (en) 2020-07-28
CN111459100B true 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)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113589822A (en) * 2020-08-20 2021-11-02 深圳市海柔创新科技有限公司 Warehouse robot navigation route reservation
CN114655038B (en) * 2022-04-13 2023-08-29 益模(重庆)智能制造研究院有限公司 Guide vehicle operation scheduling method based on state of charge

Citations (1)

* Cited by examiner, † Cited by third party
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

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI20155139L (en) * 2015-02-27 2016-08-28 Rocla Oyj Route conflict resolution
CN110119913B (en) * 2018-02-05 2024-04-16 北京京东尚科信息技术有限公司 Method and device for detecting path abnormality

Patent Citations (1)

* Cited by examiner, † Cited by third party
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

Also Published As

Publication number Publication date
CN111459100A (en) 2020-07-28

Similar Documents

Publication Publication Date Title
CN109991977B (en) Path planning method and device for robot
CN109408205B (en) Task scheduling method and device based on hadoop cluster
CN109901578B (en) Method and device for controlling multiple robots and terminal equipment
CN111459100B (en) Dispatching method and system for automatic guided vehicles
CN110247979B (en) Scheduling scheme determination method and device and electronic equipment
JP2022552480A (en) Method and apparatus for controlling automated guided vehicles
CN113627775B (en) Scheduling method, device, equipment and storage medium of robot
CN106643761B (en) Method and system for planning vehicle path
CN112650226A (en) Robot scheduling method, device, equipment and medium
CN112506198A (en) Robot scheduling method, device, equipment and medium
CN114692939A (en) Multi-AGV task scheduling method based on double-layer strategy
CA3139624C (en) Congestion avoidance and common resource access management for multiple robots
Barzegaran et al. Towards extensibility-aware scheduling of industrial applications on fog nodes
CN112990806A (en) Method and system for dispatch control of transportation equipment
CN111767351B (en) Method and device for determining parking spot of transfer robot
CN109684059A (en) Method and device for monitoring data
CN114879689A (en) Robot scheduling method and device, readable storage medium and electronic equipment
CN113919734A (en) Order distribution method and device
CN112699135B (en) Information updating method and device
CN111768065A (en) Method and device for distributing goods sorting tasks
CN114519480A (en) Resource allocation method, equipment and storage medium for multi-robot navigation
CN112621738A (en) Robot control method, electronic device, and computer-readable storage medium
CN112529346A (en) Task allocation method and device
US20220019217A1 (en) Travel control apparatus, travel control method, and computer program
CN113918196B (en) Data processing method, upgrading method, device, server and mobile robot

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