WO2019121338A1 - Verfahren zum betreiben eines roboters in einem multiagentensystem, roboter und multiagentensystem - Google Patents

Verfahren zum betreiben eines roboters in einem multiagentensystem, roboter und multiagentensystem Download PDF

Info

Publication number
WO2019121338A1
WO2019121338A1 PCT/EP2018/084807 EP2018084807W WO2019121338A1 WO 2019121338 A1 WO2019121338 A1 WO 2019121338A1 EP 2018084807 W EP2018084807 W EP 2018084807W WO 2019121338 A1 WO2019121338 A1 WO 2019121338A1
Authority
WO
WIPO (PCT)
Prior art keywords
option
options
action
robots
cost
Prior art date
Application number
PCT/EP2018/084807
Other languages
English (en)
French (fr)
Inventor
Mathias Buerger
Philipp Christian Schillinger
Original Assignee
Robert Bosch Gmbh
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 Robert Bosch Gmbh filed Critical Robert Bosch Gmbh
Priority to CN201880082249.8A priority Critical patent/CN111465475B/zh
Priority to KR1020207020815A priority patent/KR102686219B1/ko
Priority to JP2020534470A priority patent/JP6938791B2/ja
Priority to US16/764,383 priority patent/US11179843B2/en
Publication of WO2019121338A1 publication Critical patent/WO2019121338A1/de

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0084Programme-controlled manipulators comprising a plurality of manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1669Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23289State logic control, finite state, tasks, machine, fsm
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39146Swarm, multiagent, distributed multitask fusion, cooperation multi robots
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06312Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling

Definitions

  • the invention relates to multi-agent systems, and more particularly to methods of controlling robots of a multi-agent system by distributing tasks using a cooperative auction process.
  • LTL Linear Temporal Logic
  • MDP Markov Decision Processes
  • a method for operating a multi-agent system having a plurality of robots, wherein each of the robots performs the following procedure cyclically until a target system state is reached:
  • the deterministic finite state machine has multiple system states that define one or more state paths that must be traversed to accomplish the task goal.
  • the state transitions are assigned to different robots in an auction procedure, whereby only those state transitions (relevant state transitions) are taken into account as options with which a change of a progress level in the direction of the task goal is achieved. These state transitions are referred to as options below. records.
  • the system states of the deterministic finite state machine are assigned corresponding progress levels, which increase steadily along the paths to the destination state.
  • subtasks that result in state changes may be assigned as options to the individual robots.
  • Such an auction process makes it possible, by means of a suitable cost function, to assign a sub-task to the robots who can perform the sub-task with the least cost.
  • a cost function can take into account the time required to perform the particular subtask as well as the probability that the condition defining the system state is fulfilled with the execution of the subtask.
  • the sub-task fulfills a system condition condition for a system state with an increased progress level
  • all the current task tasks of the robots are interrupted and a new auction is carried out, in which new options are now distributed to the robots.
  • the new options correspond to the relevant state transitions emanating from the system state that has now been reached. This procedure is performed until the target state is reached.
  • a distribution of subtasks in a multi-agent system can be carried out in an efficient manner, whereby temporal dependencies, in particular, can be taken into account in a particularly efficient manner.
  • each of the robots can determine its options in a distributed manner with respect to the higher-level task goal, whereby a much less complex probabilistic planning problem must be solved.
  • the decentralized auction scheme assigns the various options to different robots, and the proposed auction algorithm allows the robots to perform subtasks that are temporally dependent on other subtasks. Every time a partial task is performed, the procedure is carried out again, so that the knowledge about system states can be taken into account in a current way.
  • the above method further enables a straightforward implementation, since in particular robots do not have to be assigned subtasks in advance.
  • the decentralized method of coordinating multiple robots in a system environment subject to uncertainties allows the implementation of a given task specification, for example in the form of a Linear Temporal Logic (LTL), in particular a Co-Safe LTL.
  • LTL Linear Temporal Logic
  • the above method makes it possible to efficiently coordinate the supplementation of a multi-person system, in particular in the case of uncertainties of the environmental conditions. This is especially true for specifications that contain temporal logic that is to be handled by the entire team of robots. For this purpose, subtasks of the task specification are automatically assigned to the robots.
  • the conditions of the system environment can also be taken into account by regularly updating the planned instructions, so that the flexi robots can adapt to the uncertainties.
  • an action can be taken which corresponds to one of the options, if for the corresponding option a separate cost value is determined, which indicates the lowest cost of all cost values received for the corresponding option.
  • an action may be performed for another option along the path in the terminal finite state machine if none of the options determines its own cost value indicating the lowest cost of all the cost values received for that option, and the another option is chosen so that following an action corresponding to the further option does not violate the actions of the options distributed in the auction.
  • the cost value for an option depends on a time duration for executing the action associated with the option and / or on a probability that, when the action associated with the option is executed, a state condition for reaching the system state is reached Option leads, is determined.
  • a probability that a state condition for reaching the system state is achieved when executing an action associated with an option can be updated during the execution of the action.
  • the forestry step along the path may be achieved by system states of the deterministic finite state machine if there is no possibility that one of the preceding system states can be reached by satisfying a condition from the subsequent system state, in particular assigning progress levels to the system states indicating the progress along the path of system states of the deterministic finite state machine.
  • cost values determined for each option can be provided by explicit communication of costs by each of the remaining robots.
  • a robot for operating a multi-agent system, wherein the robot is designed to execute the following steps cyclically until a target system state is reached:
  • a multi-agent system is provided with a plurality of the above robots.
  • Figure 1 is a schematic representation of a robot of a multi-gene system
  • FIG. 2 shows a representation of a deterministic finite state machine with progress level assignment
  • FIG. 3 is a flow chart illustrating the assignment of
  • FIG. 4 shows a flowchart for illustrating a method for operating the multi-agent system for solving a task specification on given tasks
  • Figure 5 shows an example of one arranged in a system environment
  • FIG. 6 is an illustration of a deterministic finite state machine for solving a task of the multi-agent system of FIG. 5.
  • the following describes a method for describing in a multi-agent system in which agents are provided as robots interacting with the environment.
  • the robots 1 have a configuration as shown schematically in FIG.
  • the robots 1 each comprise a control unit 2, which is designed to carry out partial tasks.
  • each of the robots 1 further has a communication device 3 for transmitting information to and receiving information from other robots 1.
  • the robot 1 can interact with the system environment.
  • the actuator 4 may comprise, for example, a locomotion actuator, manipulator and the like, which is operated in a manner known per se in accordance with the subtask allocated to the robot 1. As a result, the robot 1 can move in particular, pick up and set down objects and the like.
  • the sensor system 5 may include, for example, a camera, other sensor systems that can be used for object detection, such as ultrasound sensors, and the like.
  • the camera can be used to detect and identify the locations of objects that can interact, and to move around within the system environment, bypassing ob- ject objects.
  • the robots 1 may further be provided with an interaction device 6, such as a touch display or a voice input / output device, for communicatively interacting with objects or people in the environment. In this way, persons can make inputs to the robots 1 and receive information.
  • an interaction device 6 such as a touch display or a voice input / output device, for communicatively interacting with objects or people in the environment.
  • persons can make inputs to the robots 1 and receive information.
  • LTL linear temporal logic
  • scLTL co-safe linear temporal logic
  • This represents a description language for a task specification of a task to be solved, which has temporal modalities.
  • Each scLTL task specification can be translated into a deterministic finite state machine (DEA).
  • DEA deterministic finite state machine
  • FIG. 10 Such a deterministic finite automaton (DEA) is shown by way of example in FIG. This shows system states (q 1 -q 10) containing an initial state 1 1 (q 0), several intermediate states 12 (q 1 -q 9), and one or more target states 13 (q 10).
  • arrows show state transitions from the initial state 1 1 (q1) to the destination state 13 (q10) along one or more paths.
  • a system state is reached if a state condition assigned to the relevant system state is fulfilled.
  • the system states from the initial state 1 1 to the destination state 13 are achieved by advances along the path. Progress along one of the paths is achieved when there is no possibility of a return path from a system state to a subsequent system state. Progress along the paths is indicated by progress levels, in particular rising progress levels.
  • these progress levels are assigned to the target state 13, starting with the initial state 1 1, according to a method illustrated in the flow diagram of FIG. 3.
  • the initial state 1 1 can be assigned a progress level of 1 (or another initial value).
  • a by one (or other Amount) increased progress level assigned for all system states which can be reached from a selected (initially the initial state) current system state, of which no path leads back to the current or any other previous system state (ie relevant state transitions), a by one (or other Amount) increased progress level assigned.
  • the remaining system states that are achieved by non-relevant state transitions ie state transitions from states to which a path in the DEA is returned
  • will be identical progress levels are assigned to the current system state concerned.
  • each system state from which a path returns to the previous state is assigned the same progress level as the progress level of the previous system state.
  • step S3 a query is made as to whether all system states have been considered. If this is the case (alternative: Yes), the procedure is ended, otherwise (alternative: no), the system jumps back to step S2, assuming a next as yet uncorrected system state as the current system state.
  • each of the system states from the deterministic finite automaton can be assigned a progress level (indicated by [x] with x the number of the progress level).
  • each robot 1 is able to communicate with each of the remaining robots 1, and that each robot 1 is made aware of the deterministic finite automaton DEA.
  • the following method describes the sequence in one of the robots 1, the method basically being executed in parallel in each of the robots 1.
  • step S1 starting from the instantaneous state in the final terminological automaton, in particular during the first pass through the initial state 11, all possible options are determined by means of which an increase in the progress level can be achieved.
  • the options represent possibilities for achieving a next possible system state of the DEA, which represents an intermediate state on the way to the destination state 13.
  • the system states q2 and q3 represent the next possible system states. This corresponds to the options q1 -> q2 and q1 -> q3.
  • step S12 action costs are determined by each of the robots 1 for all of the possible options determined in step S1.
  • the action costs may correspond, for example, to or include a time duration for executing the respective option for the robot 1 concerned.
  • the transaction costs can take into account probabilities.
  • step S13 the costs thus determined are now communicated to all remaining robots 1 for each of the possible options of the relevant robot 1.
  • all robots 1 have information about the cost of each of the options.
  • step S14 the minimum costs are now determined for each possible system state which can be reached by one of the options that are determined by itself or obtained by other robots 1.
  • step S15 it is checked in step S15 in each of the robots 1 whether, for an intermediate state achievable by an option, own costs represent the minimum costs. If this is the case (alternative: yes), then the relevant option (with the lowest costs) is taken over by the relevant robot 1 and converted into a handling instruction for achieving the system state indicated by the option. Subsequently, the process proceeds to step S16.
  • step S16 the execution of the action instruction commences immediately.
  • step S17 it is checked in each robot 1 whether the state condition has been fulfilled by its own action or whether corresponding information about a fulfilled state condition has been received from another of the robots. If this is not the case (alternative: No, the program jumps back to step S17, otherwise (alternative: yes), the program jumps to step S19. In step S19, it is checked if the target system state has been reached. If this is the case (alternative Yes), the procedure is terminated. Otherwise, it returns to step S1 1.
  • step S15 If it is determined in step S15 for each of the options that none of the options with the minimum cost can be executed (alternative: no), the method is continued with step S18.
  • each robot 1 selects one of the options at the same time and execute the corresponding action instruction simultaneously. Through the assignment process, each robot 1 is either assigned an option according to which it can execute an action instruction, or it remains idle.
  • step S18 during the auction, the robots 1 may accept future states to plan actions that they may follow to prepare future parts of the task. This should be done by ensuring that following these instructions does not violate the subtasks of the current options. Thus, to distribute options to unassigned robots 1, further options are considered that have a system state with a higher progress level than the currently executing options and do not include the result of the executed option as a prerequisite.
  • the robots 1 can update their actions during execution in two ways:
  • FIG. 5 shows an example of a multi-agent system in which movable robots R1, R2 are located in an office building.
  • the objective is that one of the robots 1 moves into a room r, but this is only possible with the permission of two persons a, b.
  • This permission can be given, for example, by entering an access code via a touch screen of an interacting device 6 of the individual robots 1 by a person.
  • the persons can be found at the locations a2 and b1, but this is not known in advance.
  • the time for performing a navigation action is proportional to the distance covered.
  • the DEA which is constructed by f, is shown schematically in FIG. 6 with the system states q1 -q5.
  • the scLTL mission is transmitted to the robots 1.
  • the robot R1 will map the option q1 -q2, which leads from the system state q1 to q2, and the robot R2 the option q2-q4, which leads from the system state q2 to q4, depending on the assumed progress level increase. Consequently, the option selected by the robot R1 performs a bi-directional search on the robot R1 and the option selected by the robot R2 sets the robot R2 on ai.
  • the robot R2 decides to go to ai instead of a 2 , because this space ai is closer, assuming equal probabilities (each 0.5) that the person in question is in one of the two rooms ai, a 2 ,
  • the first replanning is done after the robot R1 has reached the space bi. There he finds the person b, who gives a confirmation b c and thus the Intermediate state q2 reached. Meanwhile, the robot R2 is already close to the space ai, so that the option q2-q4 is assigned to it and the corresponding action is carried out. Meanwhile, the robot R1 is assigned the option q4-q5 to finish the mission.
  • the robot R2 can not terminate the action instruction of the option q2-q4 as expected and updates the event probability that the person is in the room ai, to 0, to indicate that the access confirmation a c can not be obtained in the room ai.
  • the robot R2 maintains the assigned option q4-q5, which is already almost finished, and ends the mission by entering the space r.
  • the above method can be applied to multi-agent systems with any number of robots 1, whereby the execution time of the mission can be reduced by adding more robots 1.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Tourism & Hospitality (AREA)
  • Development Economics (AREA)
  • Automation & Control Theory (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Educational Administration (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Manipulator (AREA)
  • Feedback Control In General (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Betreiben eines Multiagentensystems mit mehreren Robotern (1), wobei jeder der Roboter (1) folgendes Verfahren zyklisch bis zum Erreichen eines Zielsystemzustands ausführt: - ausgehend von einem momentanen Systemzustand (q1-q10), Ermitteln (S11) von möglichen Optionen, bei denen ein Fortschritt entlang eines Pfades von Systemzuständen in einem vorgegebenen deterministischen endlichen Automaten (DEA) erreicht wird, wobei die Optionen Aktionen definieren, durch die ein Übergang von einem aktuellen zu einem nachfolgenden Systemzustand (q1-q10) erreicht werden kann; - für jede der möglichen Optionen, Ermitteln (S12) eines Kostenwerts zur Durchführung einer durch die Option angegebenen Aktion; - Durchführen (S14, S15) einer Auktion, wobei die für jede Option ermittelten Kostenwerte von jedem der übrigen Roboter (1) berücksichtigt wird; und - Ausführen (S16) einer Aktion, die einer der Optionen entspricht, abhängig von allen zu der betreffenden Option ermittelten oder empfangenen Kostenwerten.

Description

Beschreibung
Titel
Verfahren zum Betreiben eines Roboters in einem Multiagentensvstem, Roboter und Multiagentensvstem
Technisches Gebiet
Die Erfindung betrifft Multiagentensysteme, und insbesondere Verfahren zum Steuern von Robotern eines Multiagentensystems durch Verteilung von Aufgaben mithilfe eines kooperativen Auktionsverfahrens.
Technischer Hintergrund
Das Koordinieren eines Teams von Robotern zur gemeinsamen Bewältigung einer Aufgabe ist insbesondere bei Unsicherheiten der Umgebungsgegebenenheiten sowie bei zeitlichen Abhängigkeiten in der Aufgabenspezifikation schwierig. Das Zerlegen der Aufgabenspezifikation in Teilaufgaben erfordert geeignete Mechanis- men, die Aufgabenspezifikation zu zerlegen, wobei insbesondere die Handlungs- anweisungen für die einzelnen Roboter aufgrund der Unsicherheiten der realen Umgebung nicht zufriedenstellend zugeordnet werden können.
Um zeitliche Abhängigkeiten zwischen einzelnen Handlungen von Robotern abzu- bilden, ist eine Beschreibungssprache, die sogenannte Linear Temporal Logic (LTL), bekannt, die eine Aufgabenspezifikation in Form einer LTL-Spezifikation ab- bildet. Aus der LTL-Spezifikation können Aktionspläne, d.h. eine Menge von Hand- lungsanweisungen für die einzelnen Roboter in an sich bekannterWeise abgeleitet werden. LTL für Roboteranwendungen ermöglichen es, zeitliche Randbedingungen in pro- babilistische Modelle zu integrieren, insbesondere mit Markov-Entscheidungspro- zessen (MDP: Markov Decision Processes). Markov-Entscheidungsprozesse er- möglichen es, Unsicherheiten einschließlich unbekannter Zeitdauern der Ausfüh- rung von Aktionen und stochastischen Ereignissen in der Umgebung abzubilden.
Um Handlungsanweisungen unter Unsicherheit für LTL-Aufgabenspezifikationen zu planen, sieht Lacerda, D. Parker, and N. Hawes,„Optimal and dynamic planning for Markov decision processes with co-safe LTL specifications“, Int. Conf. on Intel- ligent Robots and Systems, pages 151 1-1516. IEEE, 2014 eine Planung für einen einzelnen Roboter vor, der eine Automatenrepräsentation der Aufgabenspezifika- tion mit einem MDP kombiniert. Auf gleiche Weise sieht. C. D. Ding, S. L. Smith, C. Belta, and D. Rus. LTL control in uncertain environments with probabilistic sa- tisfaction guarantees, IFAC, 44(1 ):3515-3520, 201 1 vor, Handlungsanweisungen für einzelne Roboter zu planen, um einen Nutzen einer LTL- Aufgabenbeschreibung zu maximieren.
Um mehrere Roboter unabhängig von einem spezifischen Modell zu koordinieren, offenbart M. G. Lagoudakis et al.,„Auction-Based Multi-Robot Routing. In Robo- tics: Science and Systems“, pages 343-350, Rome, Italy, 2005 mehre Auktions- Strategien mit dem Fokus auf Effizienz. Koenig, C. et al.,“The power of sequential single-item auctions for agent coordination”, National Conference on Artificial In- telligence, volume 21 , page 1625. Menlo Park, CA; Cambridge, MA, London; AAAI Press; MIT Press; 1999, 2006 offenbart eine sequenzielle Auktion, um den Pla- nungsaufwand zu reduzieren, ohne das Optimierungsergebnis beliebig zu ver- schlechtern. M. Guo and D. V. Dimarogonas,“Multi-agent plan reconfiguration un- der local LTL specifications”, International Journal of Robotics Research, 34(2):218-235, 2015 offenbart, Robotern eines Mehrrobotersystems unabhängig voneinander lokale Teilaufgaben zuzuordnen und kommuniziert aktiv aufkom- mende Konflikte.
Effiziente Planungsalgorithmen für die Koordination von Robotern eines Multi- agentensystems in einer nicht-deterministischen Umgebung zur Lösung von Auf- gaben mit zeitlich abhängigen Spezifikationen sind derzeit nicht bekannt. Offenbarung der Erfindung
Erfindungsgemäß sind ein Verfahren zum Betreiben eines Roboters in einem Mul- tiagentensystem gemäß Anspruch 1 sowie ein Roboter und ein Multiagentensys- tem gemäß den nebengeordneten Ansprüchen vorgesehen.
Weitere Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.
Gemäß einem ersten Aspekt ist ein Verfahren zum Betreiben eines Multiagenten- systems mit mehreren Robotern vorgesehen, wobei jeder der Roboter folgendes Verfahren zyklisch bis zum Erreichen eines Zielsystemzustands ausführt:
ausgehend von einem momentanen Systemzustand, Ermitteln von möglichen Optionen, bei denen ein Fortschritt entlang eines Pfades von Systemzustän- den in einem vorgegebenen deterministischen endlichen Automaten erreicht wird, wobei die Optionen Aktionen definieren, durch die ein Übergang von ei- nem aktuellen zu einem nachfolgenden Systemzustand erreicht werden kann; für jede der möglichen Optionen, Ermitteln eines Kostenwerts zur Durchfüh- rung einer durch die Option angegebenen Aktion;
Durchführen einer Auktion, wobei die für jede Option ermittelten Kostenwerte von jedem der übrigen Roboter berücksichtigt wird;
Ausführen einer Aktion, die einer der Optionen entspricht, abhängig von allen zu der betreffenden Option ermittelten oder empfangenen Kostenwerten.
Eine Idee des obigen Verfahrens zum Betreiben eines Multiagentensystems mit mehreren Robotern (Agenten) besteht darin, einen deterministischen endlichen Automaten bereitzustellen, der die von einem Multiagentensystem zu lösende Auf- gabenspezifikation definiert. Der deterministische endliche Automat weist mehrere Systemzustände auf, die einen oder mehrere Zustandspfade definieren, die zum Erreichen des Aufgabenziels durchlaufen werden müssen. In diesem deterministi- schen endlichen Automaten werden die Zustandsübergänge verschiedenen Ro- botern in einem Auktionsverfahren zugeordnet, wobei nur diejenigen Zustands- Übergänge (relevante Zustandsübergänge) als Optionen berücksichtigt werden, mit denen eine Änderung eines Fortschrittsniveaus in Richtung des Aufgabenziels erreicht wird. Diese Zustandsübergänge werden nachfolgend als Optionen be- zeichnet. Dazu werden vorab den Systemzuständen des deterministischen endli chen Automaten entsprechende Fortschrittsniveaus zugeordnet, die sich entlang der Pfade zu dem Zielzustand stetig erhöhen.
In dem Prozess des Zuordnens der Zustandsübergänge, die durch eine Erhöhung eines Fortschrittsniveaus gekennzeichnet sind, zu einzelnen Robotern können Teilaufgaben, die zu Zustandsänderungen führen, als Optionen den einzelnen Ro- botern zugeordnet werden. Ein solches Auktionsverfahren ermöglicht es, mithilfe einer geeigneten Kostenfunktion eine Teilaufgabe denjenigen Robotern zuzuord- nen, die die betreffende Teilaufgabe mit geringsten Kosten durchführen kann. Eine Kostenfunktion kann insbesondere den Zeitaufwand für die Durchführung der be- treffenden Teilaufgabe sowie die Wahrscheinlichkeit, dass mit der Durchführung der Teilaufgabe die für den Systemzustand definierende Bedingung erfüllt wird, berücksichtigen.
Wird durch die Teilaufgabe eine Systemzustandsbedingung für einen Systemzu- stand mit einem erhöhten Fortschrittsniveau erfüllt, so werden alle laufenden T eil aufgaben der Roboter unterbrochen und eine erneute Auktion durchgeführt, bei der nun neue Optionen an die Roboter verteilt werden. Die neuen Optionen ent- sprechen dabei den von dem nun erreichten Systemzustand ausgehenden rele- vanten Zustandsübergängen. Dieses Verfahren wird so lange durchgeführt, bis der Zielzustand erreicht ist. Auf diese Weise kann eine Verteilung von Teilaufgaben in einem Multiagentensystem in effizienter Weise durchgeführt werden, wobei insbe- sondere zeitliche Abhängigkeiten in besonders effizienter Weise berücksichtigt werden können.
Durch Vorgabe des deterministischen endlichen Automaten an alle Roboter kann jeder der Roboter in verteilter Weise seine Optionen hinsichtlich des übergeordne- ten Aufgabenziels ermitteln, wobei ein sehr viel weniger komplexes probabilisti- sches Planungsproblem gelöst werden muss. Durch das dezentralisierte Auktions- schema werden die verschiedenen Optionen zu verschiedenen Robotern zugeord- net, wobei es der vorgeschlagene Auktionsalgorithmus ermöglicht, dass die Robo- ter Teilaufgaben durchführen, die zeitlich von anderen Teilaufgaben abhängig sind. Bei jeder Erfüllung einer Teilaufgabe wird das Verfahren erneut durchgeführt, so dass das Wissen über Systemzustände in aktueller Weise berücksichtigt wer- den kann. Das obige Verfahren ermöglicht weiterhin eine geradlinige Implementierung, da insbesondere Robotern nicht vorab Teilaufgaben zugewiesen werden müssen. Insgesamt ermöglicht das dezentrale Verfahren der Koordination von mehreren Robotern in einer mit Unsicherheiten behafteten Systemumgebung die Umsetzung einer vorgegebenen Aufgabenspezifikation, zum Beispiel in Form einer Linear Temporal Logic (LTL), insbesondere einer Co-Safe LTL.
Das obige Verfahren ermöglicht in effizienter Weise, die Ergänzung eines Mehra- gentensystems zu koordinieren, insbesondere bei Unsicherheiten der Umge- bungsbedingungen. Dies gilt insbesondere für Spezifikationen, die zeitliche Logik enthalten, die von dem gesamten Team von Robotern bearbeitet werden sollen. Dazu werden den Robotern Teilaufgaben der Aufgabenspezifikation automatisch zugeordnet. Auch die Gegebenheiten der Systemumgebung können durch regel- mäßiges Aktualisieren der geplanten Handlungsanweisungen berücksichtigt wer- den, so dass sich die Roboter flexi bei an die Unsicherheiten anpassen können.
Weiterhin kann eine Aktion ausgeführt werden, die einer der Optionen entspricht, wenn für die entsprechende Option ein eigener Kostenwert ermittelt wird, der die geringsten Kosten aller für die entsprechende Option empfangenen Kostenwerte angibt.
Auch kann vorgesehen sein, dass keine Aktion ausgeführt wird, die einer der Op- tionen entspricht, wenn für keine der Optionen ein eigener Kostenwert ermittelt wird, der die geringsten Kosten aller für die entsprechende Option empfangenen Kostenwerte angibt.
Weiterhin kann eine Aktion für eine weitere Option entlang des Pfades in dem de- terministischen endlichen Automaten ausgeführt werden, wenn für keine der Opti- onen ein eigener Kostenwert ermittelt wird, der die geringsten Kosten aller für die entsprechende Option empfangenen Kostenwerte angibt, und wobei die weitere Option so gewählt ist, dass das Verfolgen einer der weiteren Option entsprechen- den Aktion nicht das Durchführen der Aktionen der in der Auktion verteilten Optio- nen verletzt. Es kann vorgesehen sein, dass der Kostenwert für eine Option abhängig von einer Zeitdauer für eine Ausführung der der Option zugeordneten Aktion und/oder von einer Wahrscheinlichkeit, dass bei der Ausführung der der Option zugeordneten Aktion eine Zustandsbedingung für ein Erreichen des Systemzustands, zu der die Option hinführt, ermittelt wird.
Insbesondere kann eine Wahrscheinlichkeit, dass bei der Ausführung einer einer Option zugeordneten Aktion eine Zustandsbedingung für ein Erreichen des Sys- temzustands erreicht wird, während der Ausführung der Aktion aktualisiert werden.
Gemäß einer Ausführungsform kann der Forstschritt entlang des Pfades von Sys- temzuständen des deterministischen endlichen Automaten erreicht werden, wenn keine Möglichkeit besteht, dass durch Erfüllen einer Bedingung von dem nachfol- genden Systemzustand einer der vorangehenden Systemzustände erreichbar ist, wobei insbesondere den Systemzuständen Fortschrittniveaus zugeordnet werden, die den Fortschritt entlang des Pfades von Systemzuständen des deterministi- schen endlichen Automaten angeben.
Es kann vorgesehen sein, dass, wenn eine Aktion beendet wird, der erreichte Sys- temzustand an die übrigen Roboter übermittelt wird.
Es kann vorgesehen sein, dass eine Ausführung einer Aktion unterbrochen oder beendet wird, wenn eine Information über das Erreichen eines nachfolgenden Sys- temzustands empfangen wird.
Weiterhin können die für jede Option ermittelten Kostenwerte durch explizite Kom- munikation von Kosten durch jeden der übrigen Roboter bereitgestellt werden.
Gemäß einem weiteren Aspekt ist ein Roboter zum Betreiben eines Multiagenten- systems vorgesehen, wobei der Roboter ausgebildet ist, um folgende Schritte zyk- lisch bis zum Erreichen eines Zielsystemzustands auszuführen:
ausgehend von einem momentanen Systemzustand, Ermitteln von möglichen Optionen, bei denen ein Fortschritt entlang eines Pfades von Systemzustän- den in einem vorgegebenen deterministischen endlichen Automaten erreicht wird, wobei die Optionen Aktionen definieren, durch die ein Übergang von ei- nem aktuellen zu einem nachfolgenden Systemzustand erreicht werden kann; für jede der möglichen Optionen, Ermitteln eines Kostenwerts zur Durchfüh- rung einer durch die Option angegebenen Aktion;
Empfangen von die für jede Option ermittelten Kostenwerte von jedem der üb- rigen Roboter;
Durchführen einer Auktion unter Berücksichtigung der für jede Option ermittel- ten Kostenwerte; und
Ausführen einer Aktion, die einer der Optionen entspricht, abhängig von allen zu der betreffenden Option ermittelten oder empfangenen Kostenwerten.
Gemäß einem weiteren Aspekt ist ein Multiagentensystem mit mehreren der obi- gen Robotern vorgesehen.
Kurzbeschreibung der Zeichnungen
Ausführungsformen werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:
Figur 1 eine schematische Darstellung eines Roboters eines Mehra- gentensystems;
Figur 2 eine Darstellung eines deterministischen endlichen Automa- ten mit Fortschrittsniveauzuordnung;
Figur 3 ein Flussdiagramm zurVeranschaulichung der Zuordnung von
Fortschrittniveaus zu einzelnen Systemzuständen des deter- ministischen endlichen Automaten;
Figur 4 ein Flussdiagramm zur Veranschaulichung eines Verfahrens zum Betreiben des Multiagentensystems zur Lösung einer Aufgabenspezifikation an gegebenen Aufgaben;
Figur 5 ein Beispiel eines in einer Systemumgebung angeordneten
Multiagentensystems mit zwei beweglichen Robotern; und Figur 6 eine Darstellung eines deterministischen endlichen Automa- ten zur Lösung einer Aufgabe des Multiagentensystems der Figur 5.
Beschreibung von Ausführungsformen
Nachfolgend wird ein Verfahren beschrieben, mit dem in einem Multiagentensys- tem, bei dem Agenten als mit der Umgebung interagierende Roboter vorgesehen sind, beschrieben. Die Roboter 1 weisen eine Konfiguration auf, wie sie in Figur 1 schematisch dargestellt ist. Die Roboter 1 umfassen dazu jeweils eine Steuerein- heit 2, die zur Ausführung von Teilaufgaben ausgebildet ist. Zur Kommunikation mit anderen Robotern 1 weist jeder der Roboter 1 weiterhin eine Kommunikations- einrichtung 3 auf, um Informationen zu anderen Robotern 1 zu übertragen und von diesen zu empfangen.
Mithilfe einer Aktuatorik 4 kann der Roboter 1 mit der Systemumgebung interagie- ren. Die Aktuatorik 4 kann beispielsweise eine Fortbewegungsaktuatorik, Greifak- tuatorik und dergleichen umfassen, die entsprechend der dem Roboter 1 zugewie- senen Teilaufgabe in an sich bekannter Weise betrieben wird. Dadurch kann der Roboter 1 sich insbesondere fortbewegen, Objekte aufnehmen und absetzen und dergleichen.
Weiterhin können mithilfe einer Sensorik 5 Umgebungszustände erfasst werden. Die Sensorik 5 kann beispielsweise eine Kamera, andere zur Objektdetektion ver- wendbare Sensorik, wie beispielsweise Ultraschallsensorik, und dergleichen um- fassen. Mithilfe der Kamera können Positionen von Objekten, mit denen interagiert werden kann/soll, erkannt und identifiziert werden, und eine Fortbewegung inner- halb der Systemumgebung zu ermöglichen, wobei Objekte, die Hindernisse dar- stellen, umfahren werden.
Die Roboter 1 können des Weiteren mit einer Interaktionseinrichtung 6, wie z.B. einem Touch-Display oder eine Sprachein-/ausgabeeinrichtung, versehen sein, um mit Objekten oder Personen der Umgebung kommunikativ zu interagieren. Auf diese Weise können Personen Eingaben an den Robotern 1 vornehmen und In- formationen erhalten. Ausgangspunkt des nachfolgend beschriebenen Verfahrens ist eine Aufgabenspe- zifikation in Form einer Linear Temporal Logic (LTL), insbesondere einer co-safe Linear Temporal Logic (scLTL). Diese stellt eine Beschreibungssprache für eine Aufgabenspezifikation einer zu lösenden Aufgabe dar, die zeitliche Modalitäten aufweist. Jede scLTL-Aufgabenspezifikation kann in einen deterministischen end- lichen Automaten (DEA) übersetzt werden.
Ein solcher deterministischer endlicher Automat (DEA) ist beispielhaft in Figur 2 dargestellt. Diese zeigt Systemzustände (q 1 -q10), die einen Anfangszustand 1 1 (qO), mehrere Zwischenzustände 12 (q1 -q9) und einen oder mehrere Zielzustände 13 (q 10) enthalten. In dem Schaubild zur Darstellung des deterministischen endli chen Automatens zeigen Pfeile Zustandsübergänge von dem Anfangszustand 1 1 (q1 ) zu dem Zielzustand 13 (q10) entlang eines oder mehrerer Pfade. Ein System- zustand wird erreicht, wenn eine dem betreffenden Systemzustand zugeordnete Zustandsbedingung erfüllt ist. Die Systemzustände von dem Anfangszustand 1 1 zu dem Zielzustand 13 wird durch Fortschritte entlang des Pfades erreicht. Ein Fortschritt entlang eines der Pfade wird dann erreicht, wenn von einem Systemzu- stand zu einem darauffolgenden Systemzustand keine Möglichkeit eines Rückpfa- des besteht. Der Fortschritt entlang der Pfade wird durch Fortschrittniveaus, ins- besondere aufsteigende Fortschrittniveaus, angegeben.
Es werden zur Vorbereitung des Auktionsverfahren diese Fortschrittsniveaus be- ginnend mit dem Anfangszustand 1 1 zu dem Zielzustand 13 vergeben, entspre- chend einem in dem Flussidagramm der Figur 3 veranschaulichten Verfahren. Da- bei kann in Schritt S1 dem Anfangszustand 1 1 ein Fortschrittsniveau von 1 (oder einem anderen initialen Wert) zugewiesen werden.
In einem nachfolgenden Schritt S2 wird für alle von einem ausgewählten (anfäng- lich der Anfangszustand) aktuellen Systemzustand erreichbaren Systemzustände, von denen kein Pfad zu dem aktuellen oder einem sonstigen vorherigen System- zustand zurückführt, (d.h. relevanten Zustandsübergängen) ein um eins (oder sonstigen Betrag) erhöhtes Fortschrittsniveau zugewiesen. Die übrigen Systemzu- stände, die durch nicht-relevante Zustandsübergänge (d.h. Zustandsübergänge von Zuständen zu denen ein Pfad im DEA zurückführt) erreicht werden, werden dem betreffenden aktuellen Systemzustand identische Fortschrittniveaus zugeord- net. Dadurch wird jedem Systemzustand, von dem ein Pfad zu dem vorherigen Zustand zurückführt, das gleiche Fortschrittsniveau wie das Fortschrittsniveau des vorherigen Systemzustands zugeordnet.
In Schritt S3 wird abgefragt, ob alle Systemzustände betrachtet wurden. Ist dies der Fall (Alternative. Ja), wird das Verfahren beendet, andernfalls (Alternative: Nein) wird zu Schritt S2 zurückgesprungen und dabei ein nächster noch nicht be- handelter Systemzustand als aktuellen Systemzustand angenommen. Auf diese Weise kann jedem der Systemzustände aus dem deterministischen endlichen Au- tomaten ein Fortschrittsniveau (gekennzeichnet durch [x] mit x der Nummer des Fortschrittsniveaus) zugeordnet werden. Basierend auf dem so mit Fortschritten i- veaus versehenen deterministischen endlichen Automaten DEA kann nun ein Ver- fahren ausgeführt werden, durch das die entsprechende Aufgabenspezifikation durch mehrere Roboter bearbeitet wird.
Voraussetzung für das Verfahren zum Betreiben des Multiagentensystems ist, dass jeder Roboter 1 in der Lage ist, mit jedem der übrigen Roboter 1 zu kommu- nizieren, und dass jedem Roboter 1 der deterministische endliche Automat DEA bekannt gemacht ist. Das nachfolgende Verfahren beschreibt den Ablauf in einem der Roboter 1 , wobei das Verfahren grundsätzlich parallel in jedem der Roboter 1 ausgeführt wird.
Zunächst werden in Schritt S1 1 ausgehend von dem momentanen Zustand im de- terministischen endlichen Automaten, insbesondere beim ersten Durchlauf der An- fangszustand 1 1 , alle möglichen Optionen ermittelt, durch die eine Erhöhung des Fortschrittsniveaus erreicht werden kann. Die Optionen (dargestellt als Zustands- Übergänge zu einem Systemzustand mit einem höheren Fortschrittsniveau) stellen Möglichkeiten zum Erreichen eines nächsten möglichen Systemzustandes des DEA dar, der ein Zwischenzustand auf dem Weg zum Zielzustand 13 darstellt. Im vorliegenden Fall stellen ausgehend von dem Anfangszustand q1 die Systemzu- stände q2 und q3 die nächsten möglichen Systemzustände dar. Dies entspricht den Optionen q1 ->q2 und q1 ->q3. Nun werden in Schritt S12 von jedem der Roboter 1 für alle der in Schritt S1 ermit- telten möglichen Optionen Aktionskosten ermittelt. Die Aktionskosten können bei- spielsweise einer Zeitdauer zur Ausführung der jeweiligen Option für den betref- fenden Roboter 1 entsprechen oder diese umfassen. Weiterhin können die Akti onskosten bei einer Systemumgebung, die mit Unsicherheiten belegt ist, Wahr- scheinlichkeiten berücksichtigen. Die Wahrscheinlichkeiten geben jeweils eine Wahrscheinlichkeit an, mit der bei Ausführen der betreffenden Option durch den betreffenden Roboter 1 die Zustandsbedingung für den zu erreichenden System- zustand erfüllt. Es gilt: K= t * p (mit t der geschätzten Zeitdauer zum Ausführen der Option und p der Wahrscheinlichkeit der Erfüllung der Zustandsbedingung der be- treffenden Option).
In Schritt S13 werden die so ermittelten Kosten nun für jede der möglichen Optio- nen des betreffenden Roboters 1 an alle übrigen Roboter 1 kommuniziert. Somit liegen in allen Robotern 1 Informationen über die Kosten für jede der Optionen vor.
In Schritt S14 werden nun für jeden möglichen Systemzustand, der durch eine der selbst ermittelten oder von anderen Robotern 1 erhaltenen Optionen erreichbar ist, die minimalen Kosten ermittelt.
Anschließend wird in Schritt S15 in jedem der Roboter 1 überprüft, ob für einen durch eine Option erreichbaren Zwischenzustand die eigenen Kosten die minima- len Kosten darstellen. Ist dies der Fall (Alternative: Ja), so wird von dem betreffen- den Roboter 1 die betreffende Option (mit den geringsten Kosten) übernommen und in eine Handlungsanweisung zum Erreichen des durch die Option angegebe- nen Systemzustands umgesetzt. Anschließend wird das Verfahren mit Schritt S16 fortgesetzt.
In Schritt S16 wird entsprechend mit der Ausführung der Handlungsanweisung so- fort begonnen.
In Schritt S17 wird in jedem Roboter 1 überprüft, ob durch die eigene Aktion die Zustandsbedingung erfüllt wurde oder ob eine entsprechende Information über eine erfüllte Zustandsbedingung von einem weiteren der Roboter empfangen wurde. Ist dies nicht der Fall (Alternative. Nein, wird zu Schritt S17 zurückgesprun- gen, andernfalls (Alternative: Ja), wird zu Schritt S19 gesprungen. In Schritt S19 wird überprüft, ob der Zielsystemzustand erreicht worden ist. Ist dies der Fall (Alternative. Ja), wird das Verfahren beendet. Andernfalls wird zu Schritt S1 1 zurückgesprungen.
Wird in Schritt S15 für jede der Optionen festgestellt, dass keine der Optionen mit den minimalen Kosten ausgeführt werden kann (Alternative: Nein), wird das Ver- fahren mit Schritt S18 fortgesetzt.
Bei gleichen minimalen Kosten können u.U. mehrere Roboter 1 eine der Optionen gleichzeitig auswählen und die entsprechende Handlungsanweisung gleichzeitig durchführen. Durch den Zuordnungsprozess wird jedem Roboter 1 entweder eine Option, entsprechend der dieser eine Handlungsanweisung ausführen kann, zu- geordnet, oder er bleibt untätig.
In Schritt S18 können während der Auktion die Roboter 1 künftige Zustände an- nehmen, um Handlungsanweisungen zu planen, denen sie nachgehen können, um künftige Teile der Aufgabenstellung vorzu bereiten. Dies sollte erfolgen, indem sichergestellt wird, dass das Verfolgen dieser Handlungsanweisungen nicht das Durchführen der Teilaufgaben der momentanen Optionen verletzt. Somit werden zur Verteilung von Optionen an nicht zugeordnete Roboter 1 weitere Optionen be- rücksichtigt, die einen Systemzustand mit einem höheren Fortschrittsniveau als die aktuell ausgeführten Optionen haben und das Ergebnis der ausgeführten Option nicht als Vorbedingung enthalten.
Aufgrund der Unsicherheit der Umgebung ist es im Voraus nicht klar, wie sich die Ausführung der Teilaufgaben fortsetzen wird. Daher können die Roboter 1 ihre Handlungsanweisungen während der Ausführung auf zwei Arten aktualisieren:
1 . Wenn die Option eines Roboters 1 beendet wird, wird der aktuelle Zustand jedes weiteren Roboters 1 aktualisiert. Da dadurch der Zustand jedes Ro- boters 1 geändert wird, wird die zuvor ausgeführte Handlungsanweisung unterbrochen.
2. Wissen, das durch die Roboter 1 während der Ausführung gesammelt wird, wird berücksichtigt. Dadurch können die Ereigniswahrscheinlichkeiten, die angeben, dass ein bestimmtes Ereignis beobachtet werden kann, ange- passt werden. Diese aktualisierten Wahrscheinlichkeiten werden jedem der Roboter 1 kommuniziert und bei der Ermittlung der Kosten der einzelnen Optionen berücksichtigt.
In Figur 5 ist ein Beispiel für ein Multiagentensystem dargestellt, bei dem sich be- wegliche Roboter R1 , R2 in einem Bürogebäude befinden. Die Zielsetzung besteht darin, dass einer der Roboter 1 sich in einen Raum r hineinbewegt, was jedoch nur nach Erlaubnis von zwei Personen a, b möglich ist. Diese Erlaubnis kann beispiels- weise durch Eingeben eines Zugangscodes über einen Touch-Bildschirm einer In- teraktionseinrichtung 6 der einzelnen Roboter 1 durch eine Person gegeben wer- den. Für dieses Beispiel wird angenommen, dass die Personen an den Orten a2 und b1 gefunden werden können, was jedoch im Voraus nicht bekannt ist. Weiter- hin wird angenommen, dass die Zeitdauer zum Ausführen einer Navigationshand- lung proportional zu der zurückgelegten Wegstrecke ist. Die Zielsetzung, Zugang zu dem Raum r zu erhalten, während die Zugangsbeschränkungen berücksichtigt werden, kann durch folgende scLTL-Formel ausgedrückt werden. f =0 r L (-r 11 ac) L (- r ll bc)
wobei ac, bc angibt, dass die Zustimmung durch die betreffende Person a, b, ge- geben worden ist.
Der DEA, das durch f aufgebaut ist, ist in Figur 6 schematisch mit den Systemzu- ständen q1 -q5 dargestellt. Die scLTL-Mission wird an die Roboter 1 übertragen. Anfänglich wird der Roboter R1 die Option q1 -q2, die von dem Systemzustand q1 nach q2 führt, und der Roboter R2 die Option q2-q4, die von dem Systemzustand q2 nach q4 führt, abhängig von der angenommenen Fortschrittsniveauerhöhung zugeordnet. Folglich führt die von dem Roboter R1 ausgewählte Option den Ro- boter R1 nach bi und die von dem Roboter R2 ausgewählte Option den Roboter R2 nach a-i. Der Roboter R2 entscheidet, nach ai anstelle nach a2 zu gehen, weil dieser Raum ai näher liegt, bei Annahme gleicher Wahrscheinlichkeiten (von je- weils 0,5), dass sich die betreffende Person in einem der beiden Räume a-i, a2 befindet.
Die erste Neuplanung erfolgt, nachdem der Roboter R1 den Raum bi erreicht hat. Dort findet dieser die Person b vor, die eine Bestätigung bc gibt und somit den Zwischenzustand q2 erreicht. Währenddessen ist der Roboter R2 bereits nahe an dem Raum a-i, so dass diesem die Option q2-q4 zugeordnet wird und die entspre- chende Aktion wird ausgeführt. Währenddessen wird dem Roboter R1 die Option q4-q5 zugeordnet, um die Mission zu beenden.
Wenn nun durch den Roboter R2 festgestellt wird, dass die Zugangserlaubnis ac nicht in dem Raum ai erhalten werden kann, kann der Roboter R2 die Handlungs- anweisung der Option q2-q4 nicht wie erwartet beenden und aktualisiert die Ereig- niswahrscheinlichkeit, dass die Person sich im Raum ai befindet, auf 0, um anzu- geben, dass die Zugangsbestätigung ac nicht in dem Raum ai erhalten werden kann. Dies führt zu einer Aktualisierung, durch die der Roboter R1 als derjenige Roboter 1 ausgewählt wird, der geringere Kosten für die Ausführung der Option q2-q4 hat, indem sich dieser nach a2 bewegt, da dem Roboter R2 die Option q4- q5 zugeordnet ist. Da der Roboter R2 den Wegpunkt schneller erreicht, als der Roboter R1 die Option q2-q4 beenden kann, kann beobachtet werden, dass der Roboter R2 auf den Roboter R1 wartet. Nachdem der Roboter R1 q2-q4 beendet hat, behält der Roboter R2 die zugeordnete Option q4-q5 bei, die bereits fast be- endet ist, und beendet die Mission, indem der Raum r betreten wird.
Aufgrund des dezentralisierten Ansatzes der Auktionszuordnung kann das obige Verfahren auf Multiagentensysteme mit einer beliebigen Anzahl von Robotern 1 angewendet werden, wobei die Ausführungszeit der Mission durch Hinzufügen von weiteren Robotern 1 reduziert werden kann.

Claims

Ansprüche
1. Verfahren zum Betreiben eines Multiagentensystems mit mehreren Robotern (1 ), wobei jeder der Roboter (1 ) folgendes Verfahren zyklisch bis zum Erreichen eines Zielsystemzustands ausführt:
ausgehend von einem momentanen Systemzustand (q 1 -q 10), Ermitteln (S1 1 ) von möglichen Optionen, bei denen ein Fortschritt entlang eines Pfades von Systemzuständen in einem vorgegebenen deterministischen endlichen Automaten (DEA) erreicht wird, wobei die Optionen Aktionen definieren, durch die ein Übergang von einem aktuellen zu einem nach- folgenden Systemzustand (q1-q 10) erreicht werden kann; für jede der möglichen Optionen, Ermitteln (S12) eines Kostenwerts zur Durchführung einer durch die Option angegebenen Aktion;
Durchführen (S14, S15) einer Auktion, wobei die für jede Option ermittel- ten Kostenwerte von jedem der übrigen Roboter (1 ) berücksichtigt wird; und
Ausführen (S16) einer Aktion, die einer der Optionen entspricht, abhängig von allen zu der betreffenden Option ermittelten oder empfangenen Kos- tenwerten.
2. Verfahren nach Anspruch 1 , wobei eine Aktion ausgeführt wird, die einer der Optionen entspricht, wenn für die entsprechende Option ein eigener Kostenwert ermittelt wird, der die geringsten Kosten aller für die entsprechende Option emp- fangenen Kostenwerte angibt.
3. Verfahren nach Anspruch 1 oder 2, wobei keine Aktion ausgeführt wird, die ei- ner der Optionen entspricht, wenn für keine der Optionen ein eigener Kosten- wert ermittelt wird, der die geringsten Kosten aller für die entsprechende Option empfangenen Kostenwerte angibt.
4. Verfahren nach Anspruch 1 oder 2, wobei eine Aktion für eine weitere Option entlang des Pfades in dem deterministischen endlichen Automaten (DEA) aus- geführt wird, wenn für keine der Optionen ein eigener Kostenwert ermittelt wird, der die geringsten Kosten aller für die entsprechende Option empfangenen Kos- tenwerte angibt, und wobei die weitere Option so gewählt ist, dass das Verfol- gen einer der weiteren Option entsprechenden Aktion nicht das Durchführen der Aktionen der in der Auktion verteilten Optionen verletzt.
5. Verfahren nach einem der Ansprüche 1 bis 4, wobei der Kostenwert für eine Option abhängig von einer Zeitdauer für eine Ausführung der der Option zuge- ordneten Aktion und/oder von einer Wahrscheinlichkeit, dass bei der Ausfüh- rung der der Option zugeordneten Aktion eine Zustandsbedingung für ein Errei- chen des Systemzustands (q1 -q 10), zu der die Option hinführt, ermittelt wird.
6. Verfahren nach Anspruch 5, wobei eine Wahrscheinlichkeit, dass bei der Aus- führung einer einer Option zugeordneten Aktion eine Zustandsbedingung für ein Erreichen des Systemzustands (q 1 -q 10) erreicht wird, während der Ausführung der Aktion aktualisiert wird.
7. Verfahren nach einem der Ansprüche 1 bis 6, wobei der Forstschritt entlang des Pfades von Systemzuständen des deterministischen endlichen Automaten (DEA) erreicht wird, wenn keine Möglichkeit besteht, dass durch Erfüllen einer Bedingung von dem nachfolgenden Systemzustand (q1 -q 10) einer der voran- gehenden Systemzustände (q1 -q 10) erreichbar ist, wobei insbesondere den Systemzuständen Fortschrittniveaus zugeordnet werden, die den Fortschritt entlang des Pfades von Systemzuständen (q1-q10) des deterministischen end- lichen Automaten (DEA) angeben.
8. Verfahren nach einem der Ansprüche 1 bis 7, wobei, wenn eine Aktion beendet wird, wird der erreichte Systemzustand (q1-q10) an die übrigen Roboter (1 ) übermittelt wird.
9. Verfahren nach einem der Ansprüche 1 bis 8, wobei eine Ausführung einer Ak- tion unterbrochen oder beendet wird, wenn eine Information über das Erreichen eines nachfolgenden Systemzustands (q1 -q 10) empfangen wird.
10. Verfahren nach einem der Ansprüche 1 bis 9, wobei die für jede Option ermit- telten Kostenwerte durch explizite Kommunikation von Kosten durch jeden der übrigen Roboter (1 ) bereitgestellt werden.
1 1. Roboter (1 ) zum Betreiben eines Multiagentensystems, wobei der Roboter (1 ) ausgebildet ist, um folgende Schritte zyklisch bis zum Erreichen eines Zielsys- temzustands auszuführen:
ausgehend von einem momentanen Systemzustand (q 1 -q 10), Ermitteln von möglichen Optionen, bei denen ein Fortschritt entlang eines Pfades von Systemzuständen (q1 -q 10) in einem vorgegebenen deterministi- schen endlichen Automaten (DEA) erreicht wird, wobei die Optionen Ak- tionen definieren, durch die ein Übergang von einem aktuellen zu einem nachfolgenden Systemzustand (q 1 -q 10) erreicht werden kann;
für jede der möglichen Optionen, Ermitteln eines Kostenwerts zur Durch- führung einer durch die Option angegebenen Aktion;
Empfangen von die für jede Option ermittelten Kostenwerte von jedem der übrigen Roboter;
Durchführen einer Auktion unter Berücksichtigung der für jede Option er- mittelten Kostenwerte; und
Ausführen einer Aktion, die einer der Optionen entspricht, abhängig von allen zu der betreffenden Option ermittelten oder empfangenen Kosten- werten.
12. Multiagentensystem mit mehreren Robotern (1 ) nach Anspruch 11.
13. Computerprogramm mit Programmcodemitteln, das dazu eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 10 auszuführen, wenn das Compu- terprogramm auf einer Recheneinheit, insbesondere einem Roboter (1 ), ausge- führt wird.
14. Maschinenlesbares Speichermedium mit einem darauf gespeicherten Compu- terprogramm nach Anspruch 13.
PCT/EP2018/084807 2017-12-22 2018-12-13 Verfahren zum betreiben eines roboters in einem multiagentensystem, roboter und multiagentensystem WO2019121338A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201880082249.8A CN111465475B (zh) 2017-12-22 2018-12-13 用于运行多代理系统中的机器人的方法、机器人以及多代理系统
KR1020207020815A KR102686219B1 (ko) 2017-12-22 2018-12-13 다중 에이전트 시스템에서 로봇을 작동하는 방법, 로봇, 그리고 다중 에이전트 시스템
JP2020534470A JP6938791B2 (ja) 2017-12-22 2018-12-13 マルチエージェントシステムにおいてロボットを動作させるための方法、ロボット及びマルチエージェントシステム
US16/764,383 US11179843B2 (en) 2017-12-22 2018-12-13 Method for operating a robot in a multi-agent system, robot, and multi-agent system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102017223717.1A DE102017223717B4 (de) 2017-12-22 2017-12-22 Verfahren zum Betreiben eines Roboters in einem Multiagentensystem, Roboter und Multiagentensystem
DE102017223717.1 2017-12-22

Publications (1)

Publication Number Publication Date
WO2019121338A1 true WO2019121338A1 (de) 2019-06-27

Family

ID=64870450

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2018/084807 WO2019121338A1 (de) 2017-12-22 2018-12-13 Verfahren zum betreiben eines roboters in einem multiagentensystem, roboter und multiagentensystem

Country Status (6)

Country Link
US (1) US11179843B2 (de)
JP (1) JP6938791B2 (de)
KR (1) KR102686219B1 (de)
CN (1) CN111465475B (de)
DE (1) DE102017223717B4 (de)
WO (1) WO2019121338A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112859887A (zh) * 2019-11-28 2021-05-28 中国科学院沈阳自动化研究所 基于天基中心的多水下机器人自主任务分配方法
JPWO2021171374A1 (de) * 2020-02-25 2021-09-02
WO2022162783A1 (ja) * 2021-01-27 2022-08-04 日本電気株式会社 制御装置、制御方法及び記憶媒体

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020087206A (ja) * 2018-11-29 2020-06-04 株式会社日立製作所 自律体システム及びその制御方法
DE102019201045B4 (de) * 2019-01-28 2020-11-26 Robert Bosch Gmbh Verfahren, Vorrichtung und Computerprogramm zum Ermitteln einer Aktion oder Trajektorie eines Roboters
DE102019203214B4 (de) 2019-03-08 2022-01-20 Robert Bosch Gmbh Verfahren zum Betreiben eines Roboters in einem Multiagentensystem, Roboter und Multiagentensystem
DE102020103854B4 (de) 2020-02-14 2022-06-15 Franka Emika Gmbh Maschinelles Lernen einer erfolgreich abgeschlossenen Roboteranwendung
DE102020204388A1 (de) 2020-04-03 2021-10-07 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Ansteuern eines Agenten
DE102020114738A1 (de) 2020-06-03 2021-12-09 Bayerische Motoren Werke Aktiengesellschaft Verfahren, System sowie Computerprogramm zum Betreiben eines oder mehrerer Roboter, eines Robotersystems und/oder eines Roboterschwarms
DE102020114737A1 (de) 2020-06-03 2021-12-09 Bayerische Motoren Werke Aktiengesellschaft Verfahren, System sowie Computerprogramm zum Betreiben eines oder mehrerer Roboter, eines Robotersystems und/oder eines Roboterschwarms
US20230356389A1 (en) * 2020-09-25 2023-11-09 Nec Corporation Control device, control method and storage medium
US11938518B2 (en) * 2021-01-20 2024-03-26 AMP Robotics Corporation Techniques for planning object sorting
US11812280B2 (en) 2021-06-01 2023-11-07 Kabushiki Kaisha Toshiba Swarm control algorithm to maintain mesh connectivity while assessing and optimizing areal coverage in unknown complex environments
WO2024180663A1 (ja) * 2023-02-28 2024-09-06 日本電気株式会社 情報処理装置、情報処理方法及び記録媒体

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8135413B2 (en) * 1998-11-24 2012-03-13 Tracbeam Llc Platform and applications for wireless location and other complex services
US6415274B1 (en) 1999-06-24 2002-07-02 Sandia Corporation Alpha-beta coordination method for collective search
US6859927B2 (en) 1999-12-21 2005-02-22 Lockheed Martin Corporation Apparatus and method for controlling allocation of resources and task execution
US6842899B2 (en) * 1999-12-21 2005-01-11 Lockheed Martin Corporation Apparatus and method for resource negotiations among autonomous agents
US7171441B2 (en) * 2000-09-07 2007-01-30 Fujitsu Limited Virtual communication channel and virtual private community, and agent collaboration system and agent collaboration method for controlling the same
JP2002354551A (ja) 2001-05-25 2002-12-06 Mitsubishi Heavy Ind Ltd ロボットサービス提供方法およびロボットサービス提供システム
US20030149578A1 (en) * 2001-06-01 2003-08-07 Vientity Private Limited Intelligent procurement agent
DE10220085A1 (de) 2002-04-25 2003-11-20 Peter Schmutter Computerprogramm zur automatischen Optimierung des Verhaltens und der Kommunikationseigenschaften von topologisch angeordneten (möglicherweise mobilen, aber nicht notwendigerweise physikalischen) Entitäten zur Erreichung eines höheren Zieles durch Kooperation
JP2005539296A (ja) * 2002-08-21 2005-12-22 ニール,ソロモン マルチ−ロボットシステム内での自己設定可能なモバイルロボットエージェントの組織化団体の為のシステムと方法と装置
US7194337B2 (en) * 2003-10-31 2007-03-20 Hewlett-Packard Development Company, Lp Agent-based operation of a robotic device
US7590589B2 (en) * 2004-09-10 2009-09-15 Hoffberg Steven M Game theoretic prioritization scheme for mobile ad hoc networks permitting hierarchal deference
JP2009134652A (ja) 2007-11-30 2009-06-18 Osaka Univ マルチ・エージェントシステム、プログラム、コンピュータ読み取り可能な記録媒体
JP4839487B2 (ja) 2007-12-04 2011-12-21 本田技研工業株式会社 ロボット及びタスク実行システム
JP4936288B2 (ja) * 2007-12-10 2012-05-23 本田技研工業株式会社 目標経路生成システム
CN101859135B (zh) 2009-04-07 2012-07-18 西门子(中国)有限公司 对分布式自动化系统进行控制的方法和装置
US8996177B2 (en) 2013-03-15 2015-03-31 Brain Corporation Robotic training apparatus and methods
KR102117984B1 (ko) * 2013-11-27 2020-06-02 한국전자통신연구원 군집 로봇의 협력 청소 방법 및 제어 장치
DE102014112639C5 (de) 2014-09-02 2020-07-02 Cavos Bagatelle Verwaltungs Gmbh & Co. Kg System zum Erstellen von Steuerungsdatensätzen für Roboter
US9733646B1 (en) * 2014-11-10 2017-08-15 X Development Llc Heterogeneous fleet of robots for collaborative object processing
US10022867B2 (en) 2014-11-11 2018-07-17 X Development Llc Dynamically maintaining a map of a fleet of robotic devices in an environment to facilitate robotic action
CN105068550B (zh) * 2015-08-21 2017-10-20 燕山大学 一种基于拍卖模式的水下机器人多目标选择方法
DE102016002194A1 (de) 2016-02-20 2016-08-11 Daimler Ag Verfahren und Fertigungssystem zum Ausführen einer Fertigungsaufgabe
US9645577B1 (en) 2016-03-23 2017-05-09 nuTonomy Inc. Facilitating vehicle driving and self-driving
CN105843227B (zh) * 2016-04-15 2018-10-23 上海大学 一种基于任务密集度动态调整的多机器人协作围捕任务分配方法
CN106875090B (zh) * 2017-01-09 2020-05-08 中南大学 一种面向动态任务的多机器人分布式任务分配形成方法
US20180326581A1 (en) * 2017-05-11 2018-11-15 King Fahd University Of Petroleum And Minerals System and method for auction-based and adaptive multi-threshold multi-agent task allocation

Non-Patent Citations (9)

* Cited by examiner, † Cited by third party
Title
C. D. DING; S. L. SMITH; C. BELTA; D. RUS: "LTL control in uncertain environments with probabilistic satisfaction guarantees", IFAC, vol. 44, no. 1, 2011, pages 3515 - 3520
KOENIG, C. ET AL.: "National Conference on Artificial Intelligence", vol. 21, 1999, AAAI PRESS, article "The power of sequential single-item auctions for agent coordination", pages: 1625
LACERDA BRUNO ET AL: "Optimal and dynamic planning for Markov decision processes with co-safe LTL specifications", 2014 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS, IEEE, 14 September 2014 (2014-09-14), pages 1511 - 1516, XP032677065, DOI: 10.1109/IROS.2014.6942756 *
LACERDA, D. PARKER; N. HAWES: "Int. Conf. on Intelligent Robots and Systems", 2014, IEEE, article "Optimal and dynamic planning for Markov decision processes with co-safe LTL specifications", pages: 1511 - 1516
M. G. LAGOUDAKIS ET AL., AUCTION-BASED MULTI-ROBOT ROUTING. IN ROBOTICS: SCIENCE AND SYSTEMS, 2005, pages 343 - 350
M. GUO; D. V. DIMAROGONAS: "Multi-agent plan reconfiguration under local LTL specifications", INTERNATIONAL JOURNAL OF ROBOTICS RESEARCH, vol. 34, no. 2, 2015, pages 218 - 235
S KOENIG ET AL: "The power of sequential single-item auctions for agent coordination", AAAI 2006, 1 January 2006 (2006-01-01), pages 1625 - 1629, XP055574443, Retrieved from the Internet <URL:http://idm-lab.org/bib/abstracts/papers/aaai06-nectar.pdf> [retrieved on 20190326] *
SANIEM SARIEL ET AL: "Real Time Auction Based Allocation of Tasks for Multi-Robot Exploration Problem in Dynamic Environments", AAAI 2005, 1 January 2005 (2005-01-01), pages 1 - 7, XP055574447, Retrieved from the Internet <URL:https://www.aaai.org/Papers/Workshops/2005/WS-05-06/WS05-06-004.pdf> [retrieved on 20190326] *
ZHANG YU ET AL: "Comparison of auction-based methods for task allocation problem in multi-robot systems", 2013 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND BIOMIMETICS (ROBIO), IEEE, 12 December 2013 (2013-12-12), pages 2609 - 2613, XP032579653, DOI: 10.1109/ROBIO.2013.6739866 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112859887A (zh) * 2019-11-28 2021-05-28 中国科学院沈阳自动化研究所 基于天基中心的多水下机器人自主任务分配方法
CN112859887B (zh) * 2019-11-28 2022-06-14 中国科学院沈阳自动化研究所 基于天基中心的多水下机器人自主任务分配方法
JPWO2021171374A1 (de) * 2020-02-25 2021-09-02
JP7283624B2 (ja) 2020-02-25 2023-05-30 日本電気株式会社 情報処理装置、情報処理方法、及びプログラム
WO2022162783A1 (ja) * 2021-01-27 2022-08-04 日本電気株式会社 制御装置、制御方法及び記憶媒体

Also Published As

Publication number Publication date
JP6938791B2 (ja) 2021-09-22
CN111465475B (zh) 2023-04-04
CN111465475A (zh) 2020-07-28
DE102017223717B4 (de) 2019-07-18
DE102017223717A1 (de) 2019-06-27
KR102686219B1 (ko) 2024-07-19
JP2021506607A (ja) 2021-02-22
US11179843B2 (en) 2021-11-23
US20200276699A1 (en) 2020-09-03
KR20200099572A (ko) 2020-08-24

Similar Documents

Publication Publication Date Title
WO2019121338A1 (de) Verfahren zum betreiben eines roboters in einem multiagentensystem, roboter und multiagentensystem
DE102018207539A1 (de) Verfahren zum Betreiben eines Roboters in einem Multiagentensystem, Roboter und Multiagentensystem
DE102019203214B4 (de) Verfahren zum Betreiben eines Roboters in einem Multiagentensystem, Roboter und Multiagentensystem
DE102017129665B3 (de) Kollisionsfreie Bewegungsplanung bei geschlossener Kinematik
EP0894304B2 (de) Verfahren zur automatischen diagnose technischer systeme unter berücksichtigung eines effizienten wissenserwerbs und einer effizienten bearbeitung zur laufzeit
EP3532254A1 (de) Verfahren zur kollisionsfreien bewegungsplanung
DE112006000397T5 (de) System und Verfahren für eine adaptive Maschinenprogrammierung
DE102020204351A1 (de) Vorrichtung und verfahren zum planen einer mehrzahl von aufträgen für eine vielzahl von maschinen
DE102020212658A1 (de) Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102020203296A1 (de) Verfahren und Vorrichtung zur optimierten Produktion von Blechteilen
DE102008013400A1 (de) Verfahren zur Ermittlung von Verriegelungsbereichen wenigstens eines im Raum bewegbaren ersten Objekts
WO2020083633A1 (de) Vorrichtung und verfahren zur ansteuerung eines robotersystems
EP3901713B1 (de) Verfahren und system zum betrieb einer technischen anlage mit einem optimalen modell
DE102020200165B4 (de) Robotersteuereinrichtung und Verfahren zum Steuern eines Roboters
EP3961329B1 (de) Steuereinheit sowie verfahren zum steuern von transporten einer vielzahl an werkstücken in einem modularen montagesystem mittels eines genetischen algorithmus; montagesystem
DE102019201045B4 (de) Verfahren, Vorrichtung und Computerprogramm zum Ermitteln einer Aktion oder Trajektorie eines Roboters
DE102020201369A1 (de) Verfahren und Vorrichtung zur Bahnplanung für einen autonomen Agenten
DE102020207298A1 (de) Produktionssteuerung mit Fähigkeits- bzw. Herstellerabgleich
DE102015005797A1 (de) Verfahren zum Betreiben eines Roboters
DE112019007691T5 (de) System zum planen von roboterhandlungen, robotersystem, roboteraufgabenverifizierungssystem und verfahren zum planen von roboterhandlungen
WO2021037379A1 (de) Verfahren zum betreiben eines clusters, cluster-arbeitsknoten, cluster, netzwerk, computerprogramm und computerlesbares medium
Kandiyil et al. A generic domain configurable planner using HTN for autonomous multi-agent space system
EP3425851B1 (de) Automatische auswahl von geräten für gebäude, entsprechend gebäude-spezifikation und verwenderspezifischen optimierungs-kriterien
DE112022002704T5 (de) Verfahren und System zur Verwaltung einer Roboterflotte unter Verwendung eines neuronalen Graphennetzwerks
DE102017209042A1 (de) Autonome Synchronisierung von Cyber-physischen Produktionseinheiten

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18825946

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020534470

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20207020815

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 18825946

Country of ref document: EP

Kind code of ref document: A1