EP1373993A2

Robot intelligence in natural environments

Abstract

A method for automatic, decentralized coordination of the movement paths of mobile robots in order to prevent collisions and to detect and resolve mutual blockings. According to the method, a robot receives position information from other robots and establishes a coordinating connection with another robot if the position falls below a minimum allowable distance. One of the robots is then chosen as coordinator and the other robot is chosen as partner. The coordinator initiates an algorithm for the prevention of collisions, wherein a time sequence diagram is determined for the motion path segments of the coordinator and the partner. A robot for detecting robots that are mutually blocking one another in a circuit initiates an algorithm for detecting blocking if the robot has not been given authorization to execute its next motion path segment. An algorithm for resolving the blocking is initiated if robots mutually blocking each other in a circuit are detected by the detecting robot. The algorithm includes a first step and optionally a second step, whereby the sequence for the execution of the next motion path segment of the robots is interchanged during a coordinating connection and the motion paths of one or more robots mutually blocking each other in a circuit are newly planned.

Term

Term ended

Projected expiry passed 2 April 2022, 4.5 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

6 claims: 6 independent, 0 dependent

  1. 1
    Claims of equivalent WO 02082195 A2 Translation of claims of equivalent WO 02082195 A2 Claims 1. Method for automatic, decentralized coordination of the independent, segmented mobility paths of a plurality of mobile robots communicating with each other within a predetermined spatial area, to avoid collisions, as well as for the detection and dissolution of mutual blockages, characterized, that one robot receives position information from the other robots and determines its spatial distance (drob) to the other robots, a robot falls below a predetermined distance (i.e.yourselfer) creates and maintains a coordinating connection with the other robots for coordinating their trajectory with the trajectories of the other robots, as long as the predetermined relative distance is reached, where one of the robots connected by one coordination link is chosen as coordinator and the other as partner, a coordinator requests the planned trajectory segments of his partner and initiates an algorithm for collision avoidance, by matching the trajectory segments of the partner with its own trajectory segments, to determine the collision areas, where the robots have a predetermined minimum distance (i.e.min), and wherein a temporal sequence scheme for the trajectory segments of coordinator and partner is determined, a coordinator assigns permission to execute the next trajectory segment based on the scheduling sequence for the trajectory segments of the coordinator and partner, and executes the trajectory segment only if permission is granted, a robot for detecting a circle of mutually blocking robots initiates a blockage detection algorithm, if he has not been granted permission to execute his next trajectory segment, upon detection of a circle of mutually blocking robots, a blocking solution algorithm is initiated by the capturing robot, which comprises a first step and a second step, the first step is to in the case of a coordination connection of the robot blocking each other, the sequence for executing the respective next movement path segment of the robot connected by a coordination connection is exchanged, the second step being that one or more of the robots that are mutually blocking each other, plan their trajectories, wherein the second step is performed only if the first step did not lead to a blocking solution. Patentansprüche 1. Verfahren zur automatischen, dezentralisierten Koordinierung der unabhängigen, in Segmente zerlegbaren Bewe- gungsbahnen einer Mehrzahl innerhalb eines vorgegebenen räumlichen Bereichs miteinander kommunizierender mobiler Roboter, zur Vermeidung von Kollisionen, sowie zur Erfassung und Auflösung von gegenseitigen Blockierungen, d a d u r c h g e k e n n z e i c h n e t, dass - ein Roboter Positionsinformationen von den anderen Robotern empfängt und seinen räumlichen Abstand (drob) zu den anderen Robotern bestimmt, - ein Roboter bei Unterschreiten eines vorbestimmten Abstandes (dsiCher) zu den anderen Robotern jeweils eine Koordinierungsverbindung zu diesen Robotern zur Koordinierung seiner Bewegungsbahn mit den Bewegungsbahnen der anderen Roboter erstellt und aufrechterhält, solange der vorbestimmte Relativabstand unterschritten ist, wobei jeweils einer der durch eine KoordinierungsVerbindung verbundenen Roboter als Koordinator und der andere als Partner gewählt wird, - ein Koordinator die geplanten Bewegungsbahnsegmente seines Partners anfordert und einen Algorithmus zur Kollisionsvermeidung initiiert, durch den die Bewegungsbahnsegmente des Partners mit seinen eigenen Bewegungsbahnsegmenten abgeglichen werden, um die Kollisionsbereiche zu ermitteln, bei denen die Roboter einen vorbestimmten Mindestabstand (dmin) un- terschreiten, und wobei ein zeitliches Abfolgeschema für die Bewegungsbahnsegmente von Koordinator und Partner ermittelt wird, ein Koordinator anhand des zeitlichen Abfolgeschemas für die Bewegungsbahnsegmente von Koordinator und Partner seinem Partner und sich Erlaubnis zur Ausführung des nächsten Bewegungsbahnsegments er- teilt und eine Ausführung des Bewegungsbahnsegments nur erfolgt wenn Erlaubnis erteilt ist, - ein Roboter zur Erfassung eines Kreises sich gegenseitig blockierender Roboter einen Algorithmus zur Blockierungserfassung initiiert, falls ihm die Erlaubnis zur Ausführung seines nächsten Bewegungsbahnsegmentes nicht erteilt wurde, - bei Erfassung eines Kreises sich gegenseitig blockierender Roboter von dem erfassenden Roboter ein Algorithmus zur Blockierungslösung initiiert wird, welcher einen ersten Schritt und einen zweiten Schritt umfasst, wobei der erste Schritt darin besteht, dass bei einer Koordinierungsverbindung der sich gegenseitig blockierenden Roboter die Reihen- folge zur Ausführung des jeweils nächsten Bewegungsbahnsegments der durch eine Koordinierungsverbindung verbundenen Roboter getauscht wird, wobei der zweite Schritt darin besteht, dass einer oder mehrere der zu einem Kreis sich gegenseitig blo- ckierenden Roboter ihre Bewegungsbahnen neu planen, wobei der zweite Schritt nur ausgeführt wird, wenn der erste Schritt zu keiner Blockierungslösung geführt hat. Method according to claim 1, characterized, in the collision avoidance algorithm, the determination of the time sequence scheme for the planned motion path segments of the coordinator and partner is carried out by the following steps:representation of the motion path segments of a coordinator and his partner by the horizontal and vertical axes of a two-dimensional diagram (task completion diagram), Checking whether there are two positions of the robots in the trajectory segments which give a distance of the robot, the smaller than a predetermined minimum distance dmin is whereby the collision areas are marked, an execution path avoiding all marked collision areas, starting with the lower left corner and ending in the upper right corner of the chart, - the execution path is split into straight pieces beginning with the lower left corner of the diagram and an entry is made in a time sequential scheme for each straight piece, meaning that for each horizontal piece the coordinator, for each vertical piece the partner, and for each oblique piece, giving permission to both robots to execute the next trajectory segment. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass bei dem Algorithmus zur Kollisionsvermeidung die Ermittlung des zeitlichen AbfolgeSchemas für die geplanten Bewegungsbahnsegmente von Koordinator und Partner durch folgende Schritte erfolgt: - Darstellung der Bewegungsbahnsegmente eines Koordinators und seines Partners durch die horizontale und vertikale Achse eines zweidimensionalen Diagramms (Task Completion Diagramm) , Prüfung ob zwei Positionen der Roboter in den Bewe- gungsbahnsegmenten vorliegen, die einen Abstand der Roboter ergeben, der kleiner als ein vorbestimmter Mindestabstand dmin ist, wobei die Kollisionsberei- che markiert werden, - ein Ausführungsweg unter Vermeidung aller markierten Kollisionsbereiche, beginnend mit der linken unteren Ecke und endend in der oberen rechten Ecke des Diagramms ermittelt wird, - der Ausführungsweg beginnend mit der linken unteren Ecke des Diagramms in gerade Stücke zerlegt wird und für jedes gerade Stück ein Eintrag in ein zeit- liches Abfolgeschema erfolgt, mit der Bedeutung dass für jedes horizontale Stück dem Koordinator, für jedes vertikale Stück dem Partner, und für jedes schräge Stück beiden Robotern Erlaubnis zur Ausführung des nächsten Bewegungsbahnsegmentes er- teilt wird.
  2. 2
    3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass ein möglichst kurzer Ausführungsweg ermittelt wird. Third A method according to claim 2, characterized in that the shortest possible execution path is determined.
  3. 3
    4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, dass ein Ausführungsweg ermittelt wird, der Kollisionsbereiche möglichst häufig an deren untersten linken Ecke trifft. 4th A method according to claim 2 or 3, characterized in that an execution path is determined, the collision areas as often as possible hits at the bottom left corner.
  4. 4
    5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Algorithmus zur Blockierungserfassung folgende Schritte aufweist:5th Method according to one of the preceding claims, characterized in that the algorithm for blocking detection comprises the following steps: - Definieren von gerichteten Koordinierungsverbindungen, in der Weise, dass der Ursprung einer gerich- teten Koordinierungsverbindung dem wartenden Roboter und das Ziel der gleichen gerichteten Koordinierungsverbindung dem vorrangigen Roboter zugewiesen werden, - Aussenden einer Prüfmeldung längs der neu definier- ten gerichteten Koordinierungsverbindung, - Empfangen der Prüfmeldung von dem zugehörigen Roboter und Weiterleitung der Prüfmeldung an alle von ihm abgehenden gerichteten Koordinierungsverbindungen unter Hinzufügung seiner Identifizierung, - Empfangen der Prüfmeldung von den zugehörigen Robotern und jeweilige Überprüfung ob die Prüfmeldung von ihnen stammt, und - Erkennen einer gegenseitigen Blockierung mit gleichzeitiger Identifizierung aller beteiligten Roboter, wenn die Prüfmeldung von einem Roboter stammt und/oder Weiterleitung der Prüfmeldung an alle abgehenden gerichteten Koordinierungsverbindungen unter Hinzufügung der Identifizierung, wenn die Prüfmeldung nicht von einem Roboter stammt. - defining directional coordination links, in the way that the origin of a directed coordination connection is assigned to the waiting robot and the target of the same directed coordination connection to the priority robot, - sending a test message along the newly defined directed coordination link, Receiving the test message from the associated robot and forwarding the test message to all outgoing directed coordination connections with the addition of its identification, Receiving the test message from the associated robots and checking whether the test message originates from them, and recognizing a mutual blocking with simultaneous identification of all participating robots, if the test message originates from a robot and / or transmission of the test message to all outgoing directed coordination connections with the addition of identification, if the test message is not from a robot.
  5. 5
    6. Verfahren nach einem der vorhergehenden Ansprüche, da- durch gekennzeichnet, dass bei dem Algorithmus zur Blockierungslösung der erste Schritt die folgenden Teilschritte umfasst:6th Method according to one of the preceding claims, characterized in that in the blocking solution algorithm the first step comprises the following substeps: - Abschicken einer Änderungsmeldung an die sich gegenseitig blockierenden Roboter des Kreises, - Empfangen der Änderungsmeldung durch die am Kreis der sich gegenseitig blockierenden Roboter beteiligten Roboter und Anfrage an die jeweiligen Koordinatoren ob die Reihenfolge der Ausführung des jeweils nächsten Bewegungsbahnsegments getauscht wer- den kann, - Verwerfen der Änderungsmeldung, wenn eine Reihenfolge der Ausführung getauscht werden konnte, oder Empfangen der Änderungsmeldung von dem die Änderungsmeldung initiierenden Roboter und initiieren des zweiten Schritts, wobei der zweite Schritt die folgenden Teilschritte umfasst: Sending a change message to the mutually blocking robots of the circle, Receiving the change message by the robots involved in the circle of mutually blocking robots and requesting the respective coordinators whether the sequence of execution of the respective next movement path segment can be exchanged, - discarding the change message, if an order of execution could be exchanged, or receiving the change message from the robot initiating the change message and initiating the second step, the second step comprising the following substeps: - Abschicken einer Neuplanmeldung an die sich gegenseitig blockierenden Roboter des Kreises, - Empfangen der Neuplanmeldung durch die am Kreis der sich gegenseitig blockierenden Roboter beteiligten Roboter und jeweilige Anfrage an die die Bewegungs- bahn planende Einheit eine alternative Bewegungsbahn zu planen, - Verwerfen der Neuplanmeldung und Entfernen aller gerichteten Koordinierungsverbindungen, wenn eine alternative Bewegungsbahn von einem Roboter geplant werden konnte, oder Empfangen der Neuplanmeldung von dem die Neuplanmeldung initiierenden Roboter und Initiieren einer Befreiungsmeldung, - Abschicken der Befreiungsmeldung an alle am Kreis sich gegenseitig blockierenden Roboter beteiligten Roboter, wobei die Befreiungsmeldung den Kreis verlassen darf, um alle beteiligten Robotern zu veranlassen, dass diese eine alternative Bewegungsbahn planen, und zu vermerken ob sich ein nicht betei- ligter Roboter in der Nachbarschaft befindet, Empfangen der Befreiungsmeldung durch den sie initiierenden Roboter und Prüfen ob keiner der beteiligten Roboter eine alternative Bewegungsbahn planen kann und ob keiner der beteiligten Roboter ei- nen nichtbeteiligten Roboter in seiner Nachbarschaft hat und im Bejahensfalle Abbrechen der Blockierungslösung. Sending a reprogramming to the mutually blocking robots of the circle, Receiving the replanning by the robot involved in the circle of the robots blocking each other and by requesting the unit planning the movement path to plan an alternative path of movement, Discarding the replication and removing all directed coordination links, if an alternative trajectory could be planned by a robot, or receiving the replication from the robot initiating the replication and initiating a release message, Sending the release message to all robots involved in the circle of mutually blocking robots, the exemption message may leave the circle, to get all involved robots to that they are planning an alternative trajectory and to note if an unaffiliated robot is in the neighborhood, Receiving the release message by the robot initiating it and checking whether none of the participating robots can plan an alternative trajectory and whether none of the involved robots has a non-involved robot in its vicinity and in case of an affirmative termination of the blocking solution.
  6. 6
    7. Verwendung des Verfahrens nach einem der vorhergehenden Ansprüche zur Koordinierung der unabhängigen Bewegungsbahnen eines Satzes von mobilen Robotern zur gemeinsamen Reinigung eines großen Raumes, insbesondere ein Supermarkt oder ein Flughafen. 7th Use of the method according to one of the preceding claims for coordinating the independent trajectories of a set of mobile robots for the common cleaning of a large room, in particular a supermarket or an airport.