Method and system for identifying travel congestion situation
By analyzing the movement path nodes and rules of the AGV system, relevant status identification of movement blockage is formed, which solves the time-consuming and unreliable identification problem in the existing technology and achieves faster and more accurate deadlock identification and path optimization.
Patent Information
- Application Number
- CN202510636014.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-06-10
- Filing Date
- 2025-05-16
- Publication Date
- 2025-12-12
AI Technical Summary
In existing automated guided vehicle (AGV) systems, the methods for identifying travel obstructions are time-consuming and unreliable, and cannot ensure that all possible travel obstructions are verified, which may lead to new deadlocks after a few years of operation.
By parsing the nodes of a predefined set of travel paths, identifying the travel rules associated with outgoing edges, forming relevant states, determining whether a node triggers a travel restriction, and determining whether the relevant state indicates a travel blockage, including inescapable deadlocks and route-dependent deadlocks, the efficiency and reliability of identification are improved.
It can reliably identify travel blockages in a shorter time, especially deadlocks that cannot be escaped, reduce maintenance requirements, and improve the travel efficiency and path design accuracy of AGV systems.
Smart Images

Figure CN121122005A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a method for identifying obstructions in the travel path of automated guided vehicles. The invention also relates to a computer program for implementing this method. background
[0002] Automated Guided Vehicles (AGVs) are increasingly used in various sectors, such as warehouses, industrial plants, factories, hospitals, and theme parks. In most cases, these AGVs travel along predefined paths to move from one location to another, typically for transporting objects, materials, goods, etc. The paths are divided into segments of appropriate length, forming a virtual road network. This network of path segments is logically represented by a graph, where segments are defined by edges, and the start and end points of each segment are defined by nodes. Travel rules, also known as traffic rules, are set to help control the movement of the AGVs and allow them to move without colliding with each other. However, AGVs can easily get stuck in a state where two or more AGVs block possible movement; this travel obstruction is sometimes referred to as a deadlock. Currently, the method for detecting these travel obstructions is through simulations of the running system. This is a time-consuming task, and there is no guarantee that all possible travel obstructions will be verified. This means that new deadlock situations may arise after several years of operation.
[0003] As can be understood from the above, there is room for improvement, and the present invention aims to solve or at least mitigate the above-mentioned problems and other issues.
[0004] Overview
[0005] One object of the present invention is to reliably and efficiently identify travel obstruction in an AGV system consisting of multiple AGVs.
[0006] This objective is achieved by the method of the first aspect described below, the data processing system of the second aspect described below, and the non-transitory computer-readable medium storing processor-executable instructions of the third aspect described below. Further embodiments of the invention are presented in the following description.
[0007] More specifically, in a first aspect, according to some embodiments of the invention, a method for identifying at least one travel obstruction in a predefined set of travel paths for an Automated Guided Vehicle (AGV), the travel paths being defined by nodes and edges, the method comprising: parsing at least one subset of nodes of the predefined set of travel paths; identifying at least one travel rule associated with outgoing edges from the parsed nodes in the parsed set of nodes; for each identified travel rule, determining at least one node that, if occupied, triggers a travel restriction on outgoing edges from the parsed node; forming an associated state for each combination of the parsed node and at least one node determined to trigger a travel restriction associated with an outgoing edge of the parsed node; if each of the nodes forming the associated state is connected to at least one outgoing edge that is unavailable for leaving the node due to the triggered travel restriction, the associated state is determined to represent a travel obstruction. The advantage of using this method to identify travel obstructions is that the identification of travel obstructions will be achieved in a shorter time, particularly compared to commonly used methods that simulate the operation of AGV systems and thus the movement of AGVs. One reason for faster identification of travel obstructions is the implementation of the concept of relevant states, from which travel obstructions are then identified. Another advantage of the claimed invention is that the claimed method is more reliable than others because it involves a systematic analysis of all possible AGV travel scenarios, which is impractical for simulation. The predefined set of travel paths can be any set of travel paths defined before running the method for identifying at least one travel obstruction.
[0008] In some embodiments, any definite travel blockage situation represented by an associated state (where all outgoing edges of the node forming the associated state are unavailable for leaving the associated state) represents an inescapable deadlock. One advantage of these characteristics is that inescapable deadlocks are easily identified. Another advantage is that inescapable deadlocks can be identified before the AGV gets trapped (i.e., before they occur). Furthermore, by identifying inescapable deadlocks, the need for maintenance is reduced because identifying them before they actually occur allows the AGV system's paths or travel directions to be redesigned to avoid inescapable deadlocks, rather than relying on maintenance to physically remove the AGVs from inescapable deadlock situations.
[0009] In a further embodiment, any definite travel blockage situation represented by a relevant state (where any outgoing edge of the node forming the relevant state can be used to leave the relevant state) represents a route-dependent deadlock. One advantage of these features is that route-dependent deadlocks are easily identified. Another advantage is that route-dependent deadlocks are identified before they occur. Furthermore, by identifying route-dependent deadlocks, considering their implications, and potentially redesigning paths or directions of travel to avoid them, travel in the AGV system can be made more efficient.
[0010] In some other embodiments, the step of determining that a relevant state represents a travel blocking situation includes, for each node forming a relevant state, counting the number of edges that can be used to leave the node or the number of edges that cannot be used to leave the node according to the associated travel rules. In this way, identifying the type of travel blocking situation becomes easy.
[0011] In some embodiments, resolving at least a subset of nodes includes resolving at least 90% of the nodes in a predefined set of travel paths.
[0012] In other embodiments, at least a subset of the parsed nodes includes parsing all nodes in a predefined set of travel paths.
[0013] In some embodiments, each edge in the travel path set connects a pair of nodes for traveling from one node to another.
[0014] In a further embodiment, the travel rules are included in a predefined set of travel paths, and prohibited state transitions are specified for various combinations of occupied nodes.
[0015] In some embodiments, a relevant state is formed by two nodes. In a further embodiment, at least one relevant state is formed from: a parsed node, hereinafter referred to as a first state node; and a node determined to trigger a travel restriction associated with an outgoing edge of the first state node, hereinafter referred to as a second state node, wherein the method further includes: identifying at least one travel rule associated with an outgoing edge from the second state node; for each identified travel rule, determining at least one node that, if occupied, triggers a travel restriction on an outgoing edge from the second state node, such at least one node is hereinafter referred to as a third state node; and forming an additional relevant state with respect to a combination of the first state node, the second state node, and the third state node. One advantage of these features is that they improve the efficiency of identifying travel obstruction situations of three simultaneously active AGVs in an AGV system and significantly reduce the time required to identify possible travel obstruction situations in such a system.
[0016] In an additional embodiment, the step of forming a relevant state for each combination of a resolved node (hereinafter referred to as node 1) and at least one node (hereinafter referred to as node 2) determined to trigger a travel restriction associated with an outgoing edge of node 1 represents forming a relevant state of level 2, and further includes forming at least one relevant state for each level from level 3 to level N, where N is a value greater than 2, and wherein forming a relevant state of level x includes: identifying at least one travel rule associated with an outgoing edge from node x-1, the travel rule being determined during the formation of a relevant state of level x-1; for each identified travel rule, determining at least one node x, which, if occupied, triggers a travel restriction on an outgoing edge from node x-1; forming a relevant state of level x for combinations of nodes from the relevant state of level x-1 and node x. The advantage of this method is that it allows for efficient and rapid identification of travel congestion in an AGV system designed to allow two or more AGVs to travel simultaneously in the system.
[0017] Some embodiments further include determining that a relevant state is reachable if at least one of the nodes forming a relevant state is connected to at least one incoming edge that connects that node to a leaving node, which is not one of the nodes forming the relevant state, and if at least one other node based on the relevant state is occupied, traversing along the incoming edge does not violate any traversal rules. One advantage of this feature is that it reduces the number of identified traversal blocking situations that need to be addressed in resolving traversal blocking situations, or that need to be considered by someone managing or designing the system.
[0018] According to a second aspect of the invention, a data processing system includes a processor configured to perform a method according to any of the above embodiments. The advantages associated with the above embodiments also apply to the data processing system associated with the corresponding features.
[0019] In some embodiments, the data processing system further includes processors arranged in the AGVs of the AGV system, wherein the data processing system is configured to distribute the execution of the method across a plurality of processors including the processors arranged in the AGVs of the AGV system.
[0020] According to a third aspect of the invention, a non-transitory computer-readable medium storing processor-executable instructions that, when executed by a processor, cause the processor to perform a method according to any of the above embodiments. The advantages associated with the above embodiments also apply to the non-transitory computer-readable medium storing processor-executable instructions associated with corresponding features.
[0021] The further scope of the invention will become apparent from the detailed description given below. However, it should be understood that while the detailed description and specific examples indicate preferred embodiments of the invention, they are given by way of illustration only, and various changes and modifications within the scope of the invention will become apparent to those skilled in the art based on this detailed description. Therefore, it should be understood that the invention is not limited to the specific components of the described apparatus or the steps of the described method, as such apparatus and methods can vary. It should also be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. It must be noted that, as used in the specification and appended claims, the articles “a,” “an,” “the,” and “said” are intended to indicate the presence of one or more elements unless the context clearly specifies otherwise. Thus, for example, references to “sensor” or “the sensor” may include several sensors, etc. Furthermore, the word “comprising” does not exclude other elements or steps. Brief description of the attached diagram
[0022] To best describe how the above embodiments are implemented, and to define other advantages and features of this disclosure, a more detailed description is provided below and illustrated in the accompanying drawings. It is to be understood that these drawings merely depict exemplary embodiments of the invention, and therefore are not to be considered as limiting the scope. Through the use of the drawings, examples will be described and explained using additional specific features and details, in which:
[0023] Figure 1 It is a schematic diagram of at least a portion of the set of travel paths that form a travel network in an AGV system, and shows the situation where travel rules are required to control the movement of the AGV.
[0024] Figure 2 This is a diagram illustrating a deadlock situation where movement is blocked and there is no escape.
[0025] Figure 3 This is a schematic diagram of a travel blockage situation known as route-dependent deadlock.
[0026] Figures 4a-4c This is a flowchart describing a method for identifying travel obstruction situations according to some embodiments of the present invention.
[0027] Figure 5 This describes some embodiments of the present invention. Figures 4a-4c The flowchart is a supplement to the method.
[0028] Furthermore, in all of these figures, similar reference numerals indicate similar or corresponding parts. Detailed description
[0029] Certain embodiments will be described more fully below with reference to the accompanying drawings. It will be apparent to those skilled in the art that various modifications and variations can be made without departing from the spirit of the invention. Other embodiments will be apparent to those skilled in the art in light of the description and practice disclosed herein. The embodiments herein are provided by way of example so that this disclosure will be thorough and complete, and will fully convey the scope of the inventive concept, and the claims are to be construed as encompassing all equivalents of the inventive concept that will be apparent to those skilled in the art to which the inventive concept pertains. Different embodiments may be combined with each other unless otherwise stated.
[0030] Embodiments of the present invention can be used in systems for automated guided vehicles (hereinafter referred to as AGVs), wherein a travel path is defined as connecting different locations. The travel path is divided into segments, forming a network of segments that can be traveled by the AGVs. This segmented travel network is logically represented by a graph, wherein each segment is defined by two points, each point is represented by a node, and there is at least one connection between these two nodes, represented by an edge. Each edge is associated with a start node, an end node, and a direction. AGVs operating in this travel network are controlled by controller software. The controller software can run in a centralized server, the controller software can be distributed to run on the AGVs, the controller software can be distributed across multiple servers, or these software distribution schemes can be arbitrarily combined. The control software is configured to send control signals to the AGVs to guide and drive each AGV through the travel network to a requested location. For ease of understanding of the invention, the control software in any of the above configurations (whether the control software is executed centrally or distributed in some way) will be referred to as a controller hereinafter. The controller may also be referred to as a fleet manager for the AGV system.
[0031] Furthermore, edges can be associated with specific travel rules (sometimes called traffic rules), which specify when an edge associated with a travel rule is not allowed for travel, such as an occupied node or edge. For example, a travel rule can constrain possible travel routes from a specific node via edges originating from that node if the edge is already occupied by the AGV or if the node connected to the other end of the edge is already occupied.
[0032] Figure 1The diagram illustrates an example scenario of a travel network 10 requiring travel rules. The travel network is represented by nodes N1-N5, and node N4 should be understood as a node connected to the travel network only via two edges 11 and 12, where edge 11 is associated with the direction from N3 to N4, and edge 12 is associated with the direction from N4 to N3. Nodes N1 and N5 may connect to other nodes not shown in the diagram. An AGV 14 exists at node N4, and an AGV 16 exists at node N2. The diagram also depicts the space occupied by AGV 14 as it travels to node N4 via edge 11 and leaves node N4 via edge 12, marked by dashed lines. AGV 14 moving to node N3 is depicted by a dashed box 15. Therefore, when AGV 14 travels away from or to node N4 and AGV 16 (shown as AGV 16 in the diagram) is on node N2, AGV 14 will collide with AGV 16, as indicated by shaded area 18, which signifies the overlap between the area covered by AGV 14 and the physical boundary of AGV 16. To avoid this collision, travel rules are associated with each of edges 11 and 12. If node N2 is occupied, these travel rules will not allow the AGV located at node N4 to travel to node N3, or vice versa. Thus, the AGV on node N4 is prevented from traveling to node N3 by the AGV on node N2, and the AGV on node N3 is prevented from traveling to node N4 by the AGV on node N2.
[0033] Furthermore, AGV 16 traveling from node N2 to node N3 will also result in a collision, as AGV 16 will pass through the shaded area 20 of the space occupied by AGV 14. Therefore, the travel rule that prevents an AGV from traveling from node N2 to node N3 when node N4 is occupied by an AGV is associated with edge 22 between nodes N2 and N3. Note that edge 22 between nodes N2 and N3 is associated with the direction from N2 to N3.
[0034] Figure 2 The text describes a specific type of travel blockage, hereinafter referred to as an inescapable deadlock. (The last sentence appears to be incomplete and possibly contains errors. A more accurate translation would require the full context.) Figure 1 The edges 12 and 22 discussed here are associated with the travel rules that respectively impede the movement of AGV 14 and AGV 16. More specifically, AGV 14 is located at node N4 and cannot travel via any edge other than edge 12, and AGV 16 is located at a node that also has only one edge available for travel along. Both edges 12 and 22 are blocked in the depicted scenario, therefore, according to the travel rules of these edges, neither AGV 14 nor 16 is allowed to move. Thus, a situation where no AGV can move is called an inescapable deadlock.
[0035] There are also cases where at least one edge is retained for movement, resulting in a blocking situation. See, for example, [example missing]. Figure 3 AGV16 at node N2 is not allowed to proceed to node N3 because node N3 is occupied. Furthermore, AGV14 is not allowed to proceed to node N4 because AGV16 is blocking the path as discussed earlier. However, AGV14 can move to node N5. Therefore, the AGVs may not be able to proceed as planned, and new routes may have to be generated for at least one of the AGVs. This situation is therefore called a route-dependent deadlock because not all routes are blocked, so route replanning is possible.
[0036] The travel network should be designed to avoid introducing unnecessary congestion or deadlocks to AGVs traveling within it, i.e., to prevent situations like those described above from occurring during AGV operation within the travel network. To help avoid deadlocks during AGV travel network operation, potential deadlock scenarios can be identified within the network.
[0037] Now for reference Figures 4a-4c These present flowcharts illustrating examples of a method 400 for identifying travel obstruction situations according to at least some embodiments of the present invention. The method is configured to operate based on a description of a travel network and travel paths therein. This description includes at least nodes, edges, and travel rules.
[0038] The method begins by accessing a description of a predefined journey network, step 402. Then, each node in the journey path set is resolved until all nodes in the journey path set have been resolved, step 404. If not all nodes in the journey path set have been resolved, the method begins resolving nodes n in the journey path set. i Perform analysis. For node n i The parsing includes the analysis of node n currently being processed. i Each outgoing edge e j Conduct an investigation, step 406. If the investigation is conducted on node n currently being processed... i All outgoing edges e j If all have been investigated, the process continues to step 418 to examine the relevant states S(n) that may have been identified and registered. i ,nt x An investigation is conducted, in which the set of nodes nt includes triggers from node n. i The outgoing edges restrict the movement of all nodes. If there is no node n being processed yet... i If all outgoing edges are investigated, then outgoing edge e is checked. j To check if the movement rule matches edge e j Related, step 410. If there is no travel rule with edge ej If they are related, then the next edge e j+1 Conduct the investigation, steps 412 and 406. However, if an edge e is found in step 410... j The associated travel rules are then registered for each node nt. x If the node is occupied, the movement restriction in the movement rule is triggered, step 414, and for each such node nt x , and the currently parsed node n i Combining them, we can form the relevant state S(n) i ,nt x Step 416. Then, after one or more related states may be formed in step 416, if there are any additional outgoing edges to investigate, then for the resolved node n... i The next outgoing edge e j+1 The analysis proceeds to steps 412 and 406. Therefore, it is not necessarily true that a node based on n exists. i and edge e j The relevant state is because there may be a travel rule associated with an edge that does not depend on another occupied node.
[0039] As mentioned earlier, regarding step 406, when the currently investigated node n... i All outgoing edges e j Both checked the travel restrictions and the current node n being investigated. i All (if any) related states S(n) i ,nt x If all nodes n have been identified, then the process involves investigating node n. i The relevant states S(n) found i ,nt x And continue. If in step 418 the currently parsed node n i At least one relevant state S(n) was identified. i ,nt x ), and if there is no node n yet i and edge e j Investigate all relevant states S(n) i ,nt x If a relevant state has not yet been investigated, the process continues to step 419 by setting a state for investigating the next relevant state, or by setting a state for investigating the initial relevant state if no relevant state has been investigated. This process checks whether the relevant state S(n) is being investigated. i ,nt x ) node n i All outgoing edges e have been investigated and the process continues to step 420. If no results are found from the relevant state S(n)... i ,ntx ) node n i All outgoing edges 'e' are investigated, where 'e' represents the complete set of outgoing edges from node n. Then, the outgoing edges from node n are investigated. i outward edge e j and associated travel rules (if any) to determine edge e j Can it be used to leave the relevant state S(n)? i ,nt x ) node n i Step 422. If the outgoing edge e currently being checked in step 424... j It can be used to leave the relevant state S(n) i ,nt x ) node n i Then edge e j It can proceed and relative to the relevant state, edge e j Marked as "valid," meaning the edge is not blocked in the current relevant state. If the currently checked outgoing edge e... j If it cannot be used to leave, then edge e j In step 427, since the relevant state is marked as "illegal", edge e is indicated. j Blocked and not allowed to proceed in the currently processed relevant state. Regardless of edge e j Whether an edge is marked as legal or illegal, the process continues to steps 428 and 420 to process the next edge e. j+1 If all outgoing edges have been investigated in step 420, the process continues to step 430 to investigate the relevant state S(n). i ,nt x ) node nt x Investigate the outgoing edges. If there is no investigation of the edges from node nt. x If all outgoing edges are investigated, then the relevant state S(n) will be considered. i ,nt x ) node nt x The edge of et k Investigate the associated movement rules to identify the edge et k Is it usable for leaving node nt? x Step 432. If the currently checked outgoing edge et k It can be used to leave the relevant state S(n) i ,nt x ) node nt x In step 434, edge et k It can move and relative to the relevant state, the edge et k Marked as "valid", step 436, that is, in the relevant state currently being processed, edge et kNot blocked. If the currently checked outgoing edge et k Cannot be used to leave node nt x Then, relative to the relevant state, edge et k Marked as "illegal", step 437, instructing edge et k Blocked and not allowed to proceed in the currently processed relevant state. Regardless of edge et k The edge is marked as either legal or illegal, and the process continues to steps 438 and 430 to process the next edge et. k+1 If all outgoing edges have been investigated in step 430, the process checks whether they originate from nt. x All outgoing edges et are valid, step 440. If from nt x If all outgoing edges et are marked as valid, then the relevant state S(n) i ,nt x The state is not considered deadlocked, proceed to step 442, and the process returns via D to step 418 to process the next relevant state S(n). i ,nt x If not all outgoing edges e and from nt x If all outgoing edges et are marked as valid, the process checks whether the relevant state S(n) from the currently processed state will be included. i ,nt x ) node n i and nt x All outgoing edges e and et are marked as illegal, step 444. If not all outgoing edges e and et are marked as illegal, then the relevant state S(n) is changed. i ,nt x The deadlock is registered as a route dependency, step 446, and the process returns via D to step 418 to process the next relevant state S(n). i ,nt x However, if all outgoing edges e and et are marked as illegal, then the relevant state S(n) will be... i ,nt x The state is registered as an inescapable deadlock, step 448, and the process returns via D to step 418 to process the next relevant state S(n). i ,nt x ).
[0040] If for all nodes n in the predefined set of travel paths i Once all paths have been parsed, the possible blocking situations for the predefined set of paths have been identified, and the process of identifying the blocking situations for the predefined set of paths ends.
[0041] Identified travel obstructions, particularly inescapable deadlocks and route-dependent deadlocks, can be used to improve the design of travel paths in the examined AGV system. For this purpose, identified travel obstructions can be provided to AGV system design tools for automatic path adjustments, or to users of these tools for manual path adjustments. Another use of identified travel obstructions is to provide them as input to controllers, such as fleet managers, for controlling AGV systems with predefined sets of travel paths. Providing the controller with identified travel obstructions can be done during AGV system setup or during AGV system startup and operation. By providing the controller with identified travel obstructions, traffic control within the AGV system can be more intelligently guided and managed, and the controller can proactively control the movement of AGVs within the system.
[0042] In some embodiments of the invention, the method is configured to identify travel obstruction situations involving more than two AGVs. To facilitate the description of such embodiments, various levels of relevant states are introduced. For the method described above relating to the identification of travel obstruction situations involving two AGVs, the identified relevant state is level 2. For obstruction situations involving three AGVs, the relevant state is level 3; for four AGVs, the relevant state is level 4, and so on.
[0043] According to some embodiments, the identification of higher-level related states (i.e., more than two) can be based on a combination of... Figures 4a-4c The method described. Typically, this method can utilize the already identified relevant states S(n) a ,n b Then, the method can be set up to find the relationship between node n and node n. b The outgoing edge associated with the travel rule, and if node n c If a node is occupied, which movement rules will trigger the movement restriction, where a≠b≠c? Find each such node n. c Then, based on the relevant state S(n) of level 2 a ,n b The relevant state S(n) of level 3 is formed. a ,n b ,n c Then, according to some embodiments, to correspond to, for example Figure 4b and Figure 4c The process involves checking node n. a n b and n c Each outgoing edge and its associated movement rule, combined with Figures 4a-4b The described process can be applied to the three nodes of the relevant state at level 3. Finally, for the relevant state S(n) at level 3...a ,n b ,n c Whether a deadlock indicates no deadlock, a path-dependent deadlock, or an inescapable deadlock can be determined by, for example... Figure 4c The corresponding steps in steps 440-448 are implemented. For example, if it comes from node n a n b and n c All outgoing edges are illegal, i.e., when the system is in the relevant state S(n). a ,n b ,n c When all outgoing edges are not allowed to be traversed, the relevant state S(n) is... a ,n b ,n c This is a level 3 inescapable deadlock and will be registered. For example, if it comes from node n... a n b and n c If any edge is valid, then the relevant state of level 3 is a path dependency deadlock of level 3 and will be registered.
[0044] In some embodiments, when operating at a level 3 or higher related state, if a lower-level related state is identified as an inescapable deadlock, the method will not continue processing the higher-level related state. For example, if the related state S(n a ,n b If a deadlock is identified as inescapable, then state S(n) a ,n b ,n c The node will not be processed because the subset of the node already represents an inescapable deadlock.
[0045] The process can then be extended to systems comprising four or more AGVs by checking the relevant status at the level of the number of AGVs in the system in a corresponding manner.
[0046] In some embodiments, for each relevant state S(n) a ,n b Perform additional investigations, including investigations into the relevant states S(n). a ,n b ) Conduct an investigation to determine the relevant state S(n) a ,n b Is it reachable? For such a survey, the relevant state S(n) is considered. a ,n b Each incoming edge of a node is checked. If the starting node of an edge is not part of the relevant state, and if based on the relevant state S(n)... a ,nb If other nodes of the edge are not occupied and traversing along the edge does not violate any traversal rules, then the edge is identified as available. If the relevant state S(n) a ,n b If at least one node in a given state is connected to an available incoming edge, then the relevant state is determined to be reachable.
[0047] Now for reference Figure 5 An embodiment of a method relating to additional investigations into the accessibility of each relevant state is described, step 500. (Refer to...) Figure 5 The described method pertains to a system comprising two operating AGVs. However, this method can be implemented for systems including additional operating AGVs. If the relevant state is unreachable, further investigation is not required to determine whether the relevant state indicates an inescapable deadlock, a route-dependent deadlock, or none of these deadlock types. It can be combined... Figures 4a-4c The described method introduces a process between steps 419 and 420 to investigate whether the relevant state is reachable. The method begins at step 502 by checking node nt. x Is node n reached when it is occupied? i Any incoming edge ei can be used to enter the relevant state S(n) of the current survey. i ,nt x Conduct an investigation. If no such incoming edge is available for traversing to node n... i In step 504, the process continues to check node n. i When it is occupied, is the node nt reached? x If any incoming edge ei is available for travel to node nt, proceed to step 506. x Step 508, then the process continues: determine the relevant state S(n) i ,nt x If a state is unreachable and does not represent an inescapable deadlock, route-dependent deadlock, or no-deadlock, further investigation of the relevant state is unnecessary because the relevant state is unreachable (510). Then, if there are further relevant states to investigate, the process returns to... Figure 4b Step 418 in the process is used to investigate the next relevant state S(n) i ,nt x However, if the incoming edge ei can be used to travel to a state S(n) that is not the investigated relevant state. i ,nt x ) of the nodes of node n i (i.e., not node nt) x Step 504, or if the incoming edge ei can be used from the relevant state S(n) that is not being investigated. i ,nt xA portion of the nodes travel to node nt. x (That is, not node n) i ), in step 508, the relevant state S(n) i ,nt x If it is determined to be reachable, proceed to step 512 and will be investigated further. Therefore, the process returns to... Figure 4b Step 420 in the process continues to investigate the blocking state of the relevant state, for example, whether the relevant state represents an inescapable deadlock, a route-dependent deadlock, or none of these deadlock types.
[0048] An embodiment of the method that includes a process for determining whether a relevant state is reachable can also be implemented in a system that includes relevant states at a level higher than 2. In such an implementation, it is possible to... Figure 5 Check the relevant status of each node as described for each node.
[0049] A method for identifying at least one travel obstruction can be executed or implemented during the planning and / or design phase of the AGV system. In this case, the method can be applied to a received set of predefined travel paths. The predefined set of travel paths can be generated in planning or design tools used to plan or design the AGV system.
[0050] The method for identifying at least one travel obstruction can also, or alternatively, be executed or implemented for an operating AGV system. Because the time span required to identify travel obstructions using the method is relatively short, travel obstructions can be examined for the entire operating AGV system. The predefined set of travel paths can then be a snapshot of the travel paths in the system subsequently processed by the method, or the predefined set of travel paths can be a modified set of travel paths. In this way, changes to the AGV system or changes to conditions within the AGV system, such as altered or added travel paths and / or travel rules, can be analyzed for travel obstructions before the system actually experiences the situation. For example, registered inescapable deadlocks and route-dependent deadlocks can be transmitted to controllers, such as fleet managers, traffic managers, etc., and used in the controller for route planning or traffic management.
[0051] The controller can be designed more easily, and if identified travel blocking conditions such as inescapable deadlocks or route-dependent deadlocks are received in the controller and these conditions are taken into account, the controller can provide improved AGV guidance.
[0052] The various embodiments described above are provided by way of illustration only and should not be construed as limiting the invention. For example, the principles herein can be applied to any remotely controlled device. Those skilled in the art will readily recognize that various modifications and changes can be made to the invention without following the exemplary embodiments and applications shown and described herein, and without departing from the scope of this disclosure.
Claims
1. A computer-implemented method for identifying at least one travel obstruction in a predefined set of travel paths for an Automated Guided Vehicle (AGV), wherein the travel paths are defined by nodes and edges, wherein, The edge represents a segment of the travel path, and the node represents the endpoint of the segment. The method includes: Parse at least one subset of the nodes in the predefined set of travel paths. Identify at least one traversal rule in the parsed set of nodes that is associated with the outgoing edges from the parsed nodes. For each identified traversal rule, at least one node is determined. If this at least one node is occupied, a traversal restriction is triggered on the outgoing edges from the resolved node. Each combination of the resolved node and at least one node identified as triggering a travel restriction associated with the outgoing edge of the resolved node forms an associated state. If each of the nodes forming the associated state is connected to at least one outgoing edge that cannot be used to leave the node due to a triggered travel restriction, then the associated state is determined to represent a travel blocking situation.
2. The method according to claim 1, wherein, When all outgoing edges of the node forming the associated state cannot be used to leave the associated state, any definite travel blockage represented by such an associated state indicates an inescapable deadlock.
3. The method according to any one of claims 1-2, wherein, Any definite travel blockage represented by such a related state indicates a route-dependent deadlock when any outgoing edge of the node forming the related state can be used to leave the related state.
4. The method according to any one of claims 1-3, wherein, The steps of determining the relevant state representing a travel blockage include: for each node that forms the relevant state, counting the number of edges that can be used to leave the node or the number of edges that cannot be used to leave the node, according to the associated travel rules.
5. The method according to any one of claims 1-4, wherein parsing at least a subset of the nodes includes parsing at least 90% of the nodes in the predefined set of travel paths.
6. The method according to any one of claims 1-5, wherein parsing at least a subset of the nodes includes parsing all nodes in the predefined set of travel paths.
7. The method according to any one of claims 1-6, wherein, Each edge in the set of travel paths connects a pair of nodes for traveling from one node to another.
8. The method according to any one of claims 1-7, wherein, The travel rules are included in the predefined travel path set, and prohibition state transitions are specified for various combinations of occupied nodes.
9. The method according to any one of claims 1-8, wherein the relevant state is formed by two nodes.
10. The method according to any one of claims 1-8, wherein, At least one associated state is formed by the following nodes: the resolved node, hereinafter referred to as the first state node; and a node determined to trigger a travel restriction associated with the outgoing edge of the first state node, hereinafter referred to as the second state node, wherein the method further includes: Identify at least one travel rule associated with the outgoing edge from the second state node. For each identified travel rule, at least one node is determined that, if occupied, triggers a travel restriction on outgoing edges from the second-state node. Such at least one node is referred to below as the third-state node. Additional related states are formed by the combination of the first state node, the second state node, and the third state node.
11. The method according to any one of claims 1-8, wherein, The step of forming a relevant state for each combination of the following nodes represents forming a relevant state at level 2: a resolved node, hereinafter referred to as node 1; and at least one node determined to trigger a travel restriction associated with an outgoing edge of node 1, hereinafter referred to as node 2. The method further includes forming at least one relevant state for each level from level 3 to level N, where N is a value greater than 2, and wherein forming a relevant state at level x includes: Identify at least one travel rule associated with an outgoing edge from node x-1, the travel rule being determined during the formation of the relevant state of level x-1; For each identified travel rule, at least one node x is determined. If node x is occupied, a travel restriction on the outgoing edges from node x-1 is triggered. The relevant state at level x is formed by combining the nodes from the relevant state at level x-1 with node x.
12. The method according to any one of claims 1-11, further comprising: The associated state is determined to be reachable if at least one of the nodes forming the associated state is connected to at least one incoming edge that connects that node to a leaving node, the leaving node being not one of the nodes forming the associated state, and if, based on at least one other node in the associated state being occupied, traversing along the incoming edge does not violate any traversal rules.
13. A data processing system comprising a processor configured to perform the method according to any one of claims 1-12.
14. The data processing system according to claim 13 further includes a processor disposed in the AGV of the AGV system, wherein, The data processing system is configured to distribute the execution of the method across multiple processors, including processors arranged in the AGVs of the AGV system.
15. A non-transitory computer-readable medium storing processor-executable instructions, which, when executed by a processor, cause the processor to perform the method according to any one of claims 1-12.