DE102021212697A1 - Method for determining a movement path for a mobile device - Google Patents

Method for determining a movement path for a mobile device Download PDF

Info

Publication number
DE102021212697A1
DE102021212697A1 DE102021212697.9A DE102021212697A DE102021212697A1 DE 102021212697 A1 DE102021212697 A1 DE 102021212697A1 DE 102021212697 A DE102021212697 A DE 102021212697A DE 102021212697 A1 DE102021212697 A1 DE 102021212697A1
Authority
DE
Germany
Prior art keywords
mobile device
movement path
objects
mobile
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021212697.9A
Other languages
German (de)
Inventor
Niels Van Duijkeren
Lukas Heuer
Luigi Palmieri
Andrey Rudenko
Kai Oliver Arras
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
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 DE102021212697.9A priority Critical patent/DE102021212697A1/en
Priority to PCT/EP2022/079377 priority patent/WO2023083584A1/en
Publication of DE102021212697A1 publication Critical patent/DE102021212697A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Bestimmen eines Geräte-Bewegungspfades (202), entlang dessen sich ein mobiles Gerät (200), insbesondere ein Roboter oder ein zumindest teilautomatisiert fahrendes Fahrzeug, in einer Umgebung (220) bewegen soll, umfassend ein Bereitstellen von Objektinformationen von einem oder mehreren mobilen Objekten (230, 240, 250, 260, 270, 280) in der Umgebung und Bestimmen, basierend auf den Objektinformationen, für das eine oder für jedes der mehreren Objekte, jeweils zumindest eines möglichen Objekt-Bewegungspfads (232.1, 232.2, 232.3, 232.4); ein Bereitstellen von Geräteinformationen von dem mobilen Gerät (200) und Bestimmen, basierend auf den Geräteinformationen, einer Position und/oder Orientierung des mobilen Geräts (200); und ein Bestimmen des Geräte-Bewegungspfades (202), basierend auf der Position und/oder Orientierung des mobilen Geräts, derart, dass für jedes der Objekte eine Wahrscheinlichkeit einer Kollision des mobilen Gerätes mit dem jeweiligen Objekt jeweils geringer als ein vorgegebener Schwellwert ist, sowie ein mobiles Gerät (200).The invention relates to a method for determining a device movement path (202) along which a mobile device (200), in particular a robot or an at least partially automated vehicle, is intended to move in an environment (220), comprising providing object information from one or more mobile objects (230, 240, 250, 260, 270, 280) in the area and determining, based on the object information, for the one or for each of the several objects, in each case at least one possible object movement path (232.1, 232.2 , 232.3, 232.4); providing device information from the mobile device (200) and determining, based on the device information, a position and/or orientation of the mobile device (200); and determining the device movement path (202) based on the position and/or orientation of the mobile device such that for each of the objects a probability of a collision of the mobile device with the respective object is less than a predetermined threshold value, and a mobile device (200).

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Bestimmen eines Bewegungspfades, entlang dessen sich ein mobiles Gerät, insbesondere ein Roboter, eine Drohne oder ein sich zumindest teilautomatisiert bewegendes Fahrzeug, in einer Umgebung bewegen soll sowie eine Recheneinheit, ein mobiles Gerät und ein Computerprogramm zu dessen Durchführung.The present invention relates to a method for determining a movement path along which a mobile device, in particular a robot, a drone or a vehicle moving at least partially automatically, is intended to move in an environment, as well as a computing unit, a mobile device and a computer program for carrying it out .

Hintergrund der ErfindungBackground of the Invention

Mobile Geräte wie z.B. Roboter oder sich zumindest teilautomatisiert bewegende Fahrzeuge bewegen sich typischerweise entlang eines Bewegungspfades in einer zu Umgebung wie z.B. einer Wohnung, in einem Garten oder auf der Straße, in der Luft oder im Wasser. Der Bewegungspfad wird hierzu z.B. so geplant bzw. bestimmt, dass er möglichst kurz ist, wenn ein bestimmtes Ziel erreicht werden soll. Dabei sollten Hindernisse bzw. Objekte in der Umgebung berücksichtigt werden. Dabei kann die Planung bzw. Bestimmung des Bewegungspfades schwierig werden, wenn sich solche Objekte bzw. Hindernisse selbst auch bewegen, wie z.B. Menschen oder andere Fahrzeuge.Mobile devices such as robots or at least semi-automated moving vehicles typically move along a movement path in an environment such as an apartment, in a garden or on the street, in the air or in water. For this purpose, the movement path is planned or determined, for example, in such a way that it is as short as possible if a specific goal is to be reached. Obstacles or objects in the area should be taken into account. The planning or determination of the movement path can become difficult if such objects or obstacles are also moving, such as people or other vehicles.

Offenbarung der ErfindungDisclosure of Invention

Erfindungsgemäß werden ein Verfahren zum Bestimmen eines Bewegungspfades für ein mobiles Gerät sowie eine Recheneinheit, ein mobiles Gerät und ein Computerprogramm zu dessen Durchführung mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.According to the invention, a method for determining a movement path for a mobile device and a computing unit, a mobile device and a computer program for its implementation with the features of the independent patent claims are proposed. Advantageous configurations are the subject of the dependent claims and the following description.

Die Erfindung beschäftigt sich mit mobilen Geräten, die sich entlang eines bestimmten Bewegungspfades in einer Umgebung bewegen bzw. bewegen sollen. Beispiele für solche mobilen Geräte sind z.B. Roboter, Drohnen oder auch sich teilautomatisiert oder (vollständig) automatisiert (zu Land, Wasser oder in der Luft) bewegende Fahrzeuge. Als Roboter kommen z.B. Haushaltsroboter wie Saug- und/oder Wischroboter, Boden- oder Straßenreinigungsgeräte oder Rasenmähroboter in Betracht, ebenso aber auch andere sog. Service-Roboter, als sich zumindest teilweise automatisiert bewegende Fahrzeuge z.B. Personenbeförderungsfahrzeuge oder Güterbeförderungsfahrzeuge (auch sog. Flurförderfahrzeuge, z.B. in Lagerhäusern), aber auch Luftfahrzeuge wie sog. Drohen oder Wasserfahrzeuge.The invention deals with mobile devices that move or are intended to move along a specific movement path in an environment. Examples of such mobile devices are e.g. robots, drones or vehicles that move partially or (fully) automatically (on land, water or in the air). Robots such as household robots such as vacuum and/or mopping robots, floor or street cleaning devices or lawn mowing robots can be considered, but also other so-called service robots, such as vehicles that move at least partially automatically, e.g. passenger transport vehicles or goods transport vehicles (also so-called industrial trucks, e.g. in warehouses), but also aircraft such as so-called drones or watercraft.

Ein Aspekt, mit dem sich die Erfindung beschäftigt, ist die Berücksichtigung von mobilen Objekten bzw. Hindernissen in der Umgebung, in der sich das mobile Gerät bewegt bzw. bewegen soll. Unter einem mobilen Objekt soll dabei insbesondere verstanden werden, dass sich das Objekt selbst bewegt, d.h. seine Position und/oder Orientierung (sog. Pose) ändert oder zumindest ändern kann. Dabei kann es sich z.B. um Menschen bzw. allgemein Lebewesen handeln oder auch um andere Fahrzeuge.One aspect with which the invention is concerned is the consideration of mobile objects or obstacles in the environment in which the mobile device moves or should move. A mobile object should be understood to mean in particular that the object itself moves, i.e. changes or at least can change its position and/or orientation (so-called pose). These can be people or living beings in general, for example, or other vehicles.

Bei der Bestimmung eines Bewegungspfades für ein mobiles Gerät - nachfolgend auch als Geräte-Bewegungspfad bezeichnet - ist es also zweckmäßig, nicht nur Objekte an sich, sondern auch deren mögliche Bewegungen, also insbesondere mögliche zukünftige Positionen, zu berücksichtigen, um Kollisionen zwischen dem mobilen Gerät und einem Objekt möglichst zu vermeiden.When determining a movement path for a mobile device - also referred to below as device movement path - it is therefore expedient not only to consider objects themselves, but also their possible movements, i.e. in particular possible future positions, in order to avoid collisions between the mobile device and an object to avoid as much as possible.

Ein solcher Geräte-Bewegungspfad kann z.B. basierend auf einem vorgegebenen Zielpunkt in der Umgebung und/oder basierend auf einem vorgegebenen Weg bestimmt und/oder angepasst werden, d.h. das mobile Gerät soll z.B. auf einem grundsätzlich beliebigen Weg ein bestimmtes Ziel erreichen. Ebenso kann aber ein bestimmter Weg zumindest dem Grundsatz nach vorgegeben sein, z.B. eine Straße, dem zumindest abschnittsweise gefolgt werden soll, der ggf. aber auch angepasst werden kann.Such a device movement path can be determined and/or adjusted, for example, based on a specified destination in the area and/or based on a specified route, i.e. the mobile device should, for example, reach a specific destination along any route. Likewise, a certain path can be specified, at least in principle, e.g. a road, which should be followed at least in sections, but which can also be adapted if necessary.

Vor diesem Hintergrund wird vorgeschlagen, dass basierend auf Objektinformationen von einem oder mehreren mobilen Objekten in der Umgebung (z.B. in einer ausführenden Recheneinheit wie einer Steuereinheit eines Roboters) für das eine oder für mindestens eines oder jedes der mehreren Objekte zumindest ein möglicher Objekt-Bewegungspfad bestimmt wird. Unter einem möglichen Objekt-Bewegungspfad ist dabei ein Bewegungspfad eines Objektes in der Umgebung zu verstehen, entlang dessen sich das Objekt bewegen könnte oder bewegen wird, und zwar insbesondere in der Zukunft, ausgehend von dem Zeitpunkt, zu dem der Bewegungspfad bestimmt wird. Ein solcher Objekt-Bewegungspfad wird also prädiziert.Against this background, it is proposed that, based on object information from one or more mobile objects in the environment (e.g. in an executing computing unit such as a control unit of a robot), at least one possible object movement path is determined for one or for at least one or each of the several objects becomes. A possible object movement path is understood to mean a movement path of an object in the environment along which the object could move or will move, specifically in particular in the future, starting from the point in time at which the movement path is determined. Such an object movement path is thus predicted.

Hierzu können als Objektinformationen z.B. Abstandsinformationen oder andere Informationen verwendet werden, die zumindest teilweise unter Verwendung wenigstens einer Sensoreinheit des mobilen Geräts, wie z.B. einer Kamera und/oder einen Lidar-Sensor, erhalten bzw. erfasst werden oder worden sind und dem Bestimmungsvorgang bereitgestellt werden. Basierend darauf lassen sich zunächst z.B. eine aktuelle Position und/oder Orientierung (sog. Pose) des Objekts bestimmen. Dies kann z.B. über einen aktuellen Abstand vom mobilen Gerät, und auch unter Berücksichtigung einer Veränderung des Abstands, ggf. auch unter Berücksichtigung einer Bewegung des mobilen Gerätes selbst, erfolgen. Ebenso kann z.B. ein Winkel, unter dem das Objekt aus Sicht des mobilen Geräts bzw. dessen Sensoreinheit erfasst wird, berücksichtigt werden, ebenso eine Veränderung des Winkels. Grundsätzlich denkbar ist z.B. auch die Bildanalyse von Bildern einer Kamera, um z.B. eine Orientierung des Objekts zu bestimmen.For this purpose, distance information or other information can be used as object information, at least partially using at least one sensor unit of the mobile device, such as a camera and/or a lidar sensor, are or have been received or detected and made available to the determination process. Based on this, a current position and/or orientation (so-called pose) of the object can first be determined, for example. This can be done, for example, using a current distance from the mobile device, and also taking into account a change in the distance, possibly also taking into account a movement of the mobile device itself. Likewise, for example, an angle at which the object is detected from the point of view of the mobile device or its sensor unit can be taken into account, as can a change in the angle. In principle, for example, the image analysis of images from a camera is also conceivable, for example in order to determine an orientation of the object.

Denkbar ist aber ebenso, insbesondere wenn es sich um andere Fahrzeuge als mobile Objekte handeln, die Objektinformationen (zumindest teilweise) von den Objekten selbst zu erhalten, z.B. im Rahmen sog. Fahrzeug-zu-Fahrzeug- bzw. Car-to-Car-Kommunikation. Denkbar ist auch der Erhalt von Objektinformationen von weiteren Kommunikationsteilnehmern im Straßenverkehr, z.B. sog. Car-to-X-Kommunikation.However, it is also conceivable, especially when it comes to vehicles other than mobile objects, to receive the object information (at least partially) from the objects themselves, e.g. in the context of so-called vehicle-to-vehicle or car-to-car communication . It is also conceivable to receive object information from other communication participants in road traffic, e.g. so-called Car-to-X communication.

Basierend auf der aktuellen Position und/oder Orientierung können dann wiederum zukünftige Positionen und/oder Orientierungen prädiziert bzw. vorausgesagt werden. Damit wird ein möglicher Objekt-Bewegungspfad (eine sog. Trajektorie) bestimmt, entlang dessen sich das Objekt zumindest mit gewisser Wahrscheinlichkeit bewegen wird.Based on the current position and/or orientation, future positions and/or orientations can then in turn be predicted or predicted. A possible object movement path (a so-called trajectory) is thus determined, along which the object will move at least with a certain probability.

Dabei können verschiedene Möglichkeiten verwendet werden, solche Objekt-Bewegungspfade zu bestimmen bzw. eine zukünftige Bewegung eines Objekts vorauszusagen. Beispiele hierfür sind z.B. in „Trajectron++: Dynamically-Feasible Trajectory Forecasting With Heterogeneous Data, by Tim Salzmann, Boris Ivanovic, Punarjay Chakravarty, and Marco Pavone, ECCV 2020 paper“, in „Social GAN: Socially Acceptable Trajectories with Generative Adversarial Networks, Gupta et al, CVPR 2018“, oder in „Helbing, Dirk, and Peter Molnar. Social force model for pedestrian dynamics. Physical review E 51, no. 5 (1995): 4282“ beschrieben.Various options can be used to determine such object movement paths or to predict a future movement of an object. Examples of this are e.g. in "Trajectron++: Dynamically-Feasible Trajectory Forecasting With Heterogeneous Data, by Tim Salzmann, Boris Ivanovic, Punarjay Chakravarty, and Marco Pavone, ECCV 2020 paper", in "Social GAN: Socially Acceptable Trajectories with Generative Adversarial Networks, Gupta et al, CVPR 2018” or in “Helbing, Dirk, and Peter Molnar. Social force model for pedestrian dynamics. Physical review E 51, no. 5 (1995): 4282”.

Besonders bevorzugt ist es dabei, wenn für zumindest ein Objekt mehrere mögliche Objekt-Bewegungspfade bestimmt werden; dabei kann dann jeweils eine Eintrittswahrscheinlichkeit für jeden der mehreren möglichen Objekt-Bewegungspfade berücksichtigt werden. In diesem Zusammenhang kann auch von sog. multi-modalen Prädiktionen gesprochen werden, da nicht nur ein oder der wahrscheinlichste Objekt-Bewegungspfad für ein bestimmtes Objekt berücksichtigt wird, sondern mehrere mögliche Objekt-Bewegungspfade. Damit kann letztlich eine genauere Bestimmung eines kollisionsfreien Geräte-Bewegungspfades erfolgen. Dabei können mehrere mögliche Objekt-Bewegungspfade für das eine Objekt (wenn es nur eines gibt) oder aber auch für zumindest eines der mehreren Objekte, also z.B. auch für einige der mehreren Objekte oder alle Objekte, bestimmt werden.It is particularly preferred if several possible object movement paths are determined for at least one object; a probability of occurrence for each of the several possible object movement paths can then be taken into account. In this context one can also speak of so-called multi-modal predictions, since not only one or the most probable object movement path for a specific object is taken into account, but several possible object movement paths. In this way, a collision-free device movement path can ultimately be determined more precisely. Several possible object movement paths can be determined for one object (if there is only one) or for at least one of the several objects, e.g. also for some of the several objects or all objects.

Weiterhin wird basierend auf Geräteinformationen von dem mobilen Gerät (z.B. in der ausführenden Recheneinheit) eine Position und/oder Orientierung des mobilen Geräts bestimmt (bzw. ermittelt). Hierzu können als Geräteinformationen z.B. Abstandsinformationen (z.B. zu anderen Objekten in der Umgebung) oder andere Informationen wie z.B. eine aktuelle Geschwindigkeit und/oder Beschleunigung, auch Lenkstellung und dergleichen, verwendet werden, die zumindest teilweise unter Verwendung wenigstens einer Sensoreinheit z.B. des mobilen Geräts, wie z.B. einer Kamera und/oder eines Lidar-Sensors und/oder eines Inertialsensors, erhalten bzw. erfasst werden oder worden sind und dem Bestimmungsvorgang bereitgestellt werden.Furthermore, a position and/or orientation of the mobile device is determined (or ascertained) based on device information from the mobile device (e.g. in the executing processing unit). For this purpose, e.g. distance information (e.g. to other objects in the area) or other information such as a current speed and/or acceleration, also steering position and the like, can be used as device information, which is at least partially measured using at least one sensor unit, e.g. the mobile device, such as e.g. a camera and/or a lidar sensor and/or an inertial sensor, are or have been obtained and/or detected and made available to the determination process.

Weiterhin wird basierend auf der Position und/oder Orientierung des mobilen Geräts der Geräte-Bewegungspfad bestimmt bzw. ermittelt, und zwar derart, dass für das eine oder zumindest eines oder jedes der mehreren Objekte eine Wahrscheinlichkeit einer Kollision des mobilen Gerätes mit dem jeweiligen Objekt jeweils geringer als ein vorgegebener Schwellwert ist. Ein solcher Schwellwert kann insbesondere besonders gering gewählt oder vorgegeben werden, um eine Kollision möglichst sicher zu verhindern.Furthermore, based on the position and/or orientation of the mobile device, the device movement path is determined or ascertained in such a way that for one or at least one or each of the multiple objects there is a probability of a collision of the mobile device with the respective object is less than a predetermined threshold. In particular, such a threshold value can be chosen or specified to be particularly low in order to prevent a collision as reliably as possible.

In diesem Zusammenhang sei erwähnt, dass der vollständige Ausschluss einer Kollision in der Praxis nicht möglich ist; jedoch hat sich gezeigt, dass die Wahl eines sehr geringen Schwellwerts hierfür in der Praxis ausreichend ist, um eine Kollision hinreichend sicher zu vermeiden. Trotzdem kann die Bestimmung oder Berechnung des Geräte-Bewegungspfades hinreichend schnell erfolgen, sodass insbesondere eine Bewegung des mobilen Geräts in Echtzeit ermöglicht wird.In this context it should be mentioned that in practice it is not possible to rule out a collision completely; however, it has been shown that the choice of a very low threshold value for this is sufficient in practice to avoid a collision with sufficient certainty. Nevertheless, the device movement path can be determined or calculated sufficiently quickly so that, in particular, a movement of the mobile device is made possible in real time.

Eine Kollision des mobilen Gerätes mit dem jeweiligen Objekt wird hierbei insbesondere dann angenommen, wenn sich das Gerät auf dem Geräte-Bewegungspfad (auf dem es sich bewegen wird) dem Objekt auf irgendeinem der zugehörigen Objekt-Bewegungspfade auf weniger als einen vorgegebenen Abstand nähert. Der vorgegebene Abstand kann dabei so gewählt werden, dass unter Berücksichtigung von geometrischen Abmessungen des mobilen Geräts und der Objekte keine Berührung zwischen dem mobilen Gerät und dem jeweiligen Objekt eintritt. Ebenso kann aber auch ein Sicherheitsabstand berücksichtigt werden, sodass sich das mobile Gerät z.B. auf nicht weniger als 1 m oder einen anderen Wert einem Objekt nähern soll; andernfalls würde eine Kollision angenommen. Dies kann insbesondere bei Lebewesen als Objekte zweckmäßig sein, zumal trotz der mehreren möglichen Objekt-Bewegungspfade unerwartete Bewegungen auftreten können.A collision of the mobile device with the respective object is assumed here in particular if the device is on the device movement path (on which it will move) the object approaches to less than a predetermined distance on any of the associated object movement paths. The predetermined distance can be selected in such a way that, taking into account the geometric dimensions of the mobile device and the objects, there is no contact between the mobile device and the respective object. However, a safety distance can also be taken into account, so that the mobile device should not approach an object less than 1 m or another value; otherwise a collision would be assumed. This can be expedient in particular in the case of living beings as objects, especially since unexpected movements can occur despite the several possible object movement paths.

Vorzugsweise werden basierend auf dem Geräte-Bewegungspfad weiterhin Bewegungssteuergrößen für das mobile Gerät bestimmt, also Größen oder Stellgrö-ßen, die verwendet werden können, um die Bewegung des mobilen Geräts zu veranlassen bzw. zu steuern. Dabei kann es sich z.B. um Werte für Geschwindigkeit, Beschleunigung oder Lenkeinschlag handeln. Das mobile Gerät wird in diesem Sinne dann insbesondere auch entlang des Bewegungspfades bzw. entsprechend der Bewegungssteuergrößen bewegt.Movement control variables for the mobile device are preferably also determined based on the device movement path, ie variables or manipulated variables that can be used to cause or control the movement of the mobile device. This can be, for example, values for speed, acceleration or steering angle. In this sense, the mobile device is then also moved in particular along the movement path or according to the movement control variables.

Besonders bevorzugt wird der Geräte-Bewegungspfad im Rahmen einer modellbasierten Regelung, insbesondere einer modell-prädiktiven Regelung (MPC), bestimmt. Ebenso können dann die Bewegungssteuergrößen im Rahmen der modellbasierten bzw. modellprädiktiven Regelung bestimmt werden.The device movement path is particularly preferably determined as part of a model-based control, in particular a model-predictive control (MPC). Likewise, the motion control variables can then be determined as part of the model-based or model-predictive control.

Die modellprädiktive Regelung, meistens „Model Predictive Control“ (MPC) genannt, ist eine Methode zur prädiktiven Regelung von insbesondere komplexen, in der Regel multi-variablen Prozessen. Bei der MPC wird ein zeitdiskretes dynamisches Modell des zu regelnden Prozesses - hier der Bewegung des mobilen Geräts - verwendet, um das zukünftige Verhalten des Prozesses in Abhängigkeit von den Eingangssignalen zu berechnen. Dies ermöglicht die Berechnung des - im Sinne einer Gütefunktion - optimalen Eingangssignales, das zu optimalen Ausgangssignalen führt. Dabei können gleichzeitig Eingangs-, Ausgangs- und Zustandsbeschränkungen berücksichtigt werden. Während das Modellverhalten bis zu einem bestimmten Zeithorizont N prädiziert wird, wird in der Regel nur das Eingangssignal für den nächsten Zeitschritt verwendet und danach die Optimierung wiederholt. Dabei wird die Optimierung im nächsten Zeitschritt mit dem dann aktuellen (gemessenen) Zustand durchgeführt, was als eine Rückkopplung aufgefasst werden kann und die MPC im Gegensatz zu sog. Optimalsteuerungen zu einer Regelung macht. Dies erlaubt die Berücksichtigung von Störungen. Grundsätzlich können aber auch andere Arten der modellbasierten Regelung verwendet werden. Für nähere Erläuterungen hierzu sei auch auf die Figurenbeschreibung verwiesen.The model predictive control, mostly called "Model Predictive Control" (MPC), is a method for the predictive control of particularly complex, usually multi-variable processes. In MPC, a time-discrete dynamic model of the process to be controlled - here the movement of the mobile device - is used to calculate the future behavior of the process depending on the input signals. This enables the calculation of the optimal input signal—in the sense of a quality function—which leads to optimal output signals. Input, output and status restrictions can be taken into account at the same time. While the model behavior is predicted up to a certain time horizon N, usually only the input signal for the next time step is used and then the optimization is repeated. The optimization is carried out in the next time step with the then current (measured) state, which can be understood as a feedback and, in contrast to so-called optimal controls, makes the MPC a regulation. This allows disturbances to be taken into account. In principle, however, other types of model-based control can also be used. For more detailed explanations in this regard, reference is also made to the description of the figures.

Mit dem vorgeschlagenen Vorgehen können also insbesondere gleichzeitig die multimodalen Vorhersagen der mobilen Objekte bzw. Hindernisse in der Umgebung und Sicherheitsaspekte, die auch die Bewegungsunsicherheit dieser Hindernisse berücksichtigen, d.h. die Möglichkeit einer Kollision mit den Hindernissen, berücksichtigt werden. Es wird ein Verfahren vorgeschlagen, das praktikable Lösungen liefert, die kollisionsfrei sind, d.h. es wird ein gewisser Abstand zu den mobilen Objekten bzw. Hindernissen eingehalten. Es wird also eine sichere Bewegung des mobilen Geräts in der Umgebung erreicht.With the proposed procedure, the multimodal predictions of the mobile objects or obstacles in the area and safety aspects, which also take into account the movement uncertainty of these obstacles, i.e. the possibility of a collision with the obstacles, can in particular be taken into account at the same time. A method is proposed that provides practicable solutions that are collision-free, i.e. a certain distance from the mobile objects or obstacles is maintained. Safe movement of the mobile device in the area is thus achieved.

Eine erfindungsgemäße Recheneinheit, z.B. eine Steuereinheit eines Roboters, einer Drohne, eines Fahrzeugs usw., ist, insbesondere programmtechnisch, dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen.A computing unit according to the invention, e.g. a control unit of a robot, a drone, a vehicle, etc., is set up, in particular in terms of programming, to carry out a method according to the invention.

Die Erfindung betrifft ebenfalls ein mobiles Gerät mit wenigstens einer Sensoreinheit zum Erfassen von Objektinformationen und/oder von Geräteinformationen und einer erfindungsgemäßen Recheneinheit. Es kann sich dabei z.B. um ein sich zumindest teilweise automatisiert bewegendes Fahrzeug, insbesondere Personenbeförderungsfahrzeug oder Güterbeförderungsfahrzeug, eine Drohne oder einen Roboter, insbesondere Haushaltsroboter, z.B. Saug- und/oder Wischroboter, Boden- oder Straßenreinigungsgerät oder Rasenmähroboter, handeln.The invention also relates to a mobile device with at least one sensor unit for detecting object information and/or device information and a computing unit according to the invention. This can be, for example, a vehicle that moves at least partially automatically, in particular a passenger transport vehicle or goods transport vehicle, a drone or a robot, in particular a household robot, e.g. a vacuum and/or wiping robot, a floor or street cleaning device or a robot lawn mower.

Auch die Implementierung eines erfindungsgemäßen Verfahrens in Form eines Computerprogramms oder Computerprogrammprodukts mit Programmcode zur Durchführung aller Verfahrensschritte ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Schließlich ist ein maschinenlesbares Speichermedium vorgesehen mit einem darauf gespeicherten Computerprogramm wie oben beschrieben. Geeignete Speichermedien bzw. Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash-Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich. Ein solcher Download kann dabei drahtgebunden bzw. kabelgebunden oder drahtlos (z.B. über ein WLAN-Netz, eine 3G-, 4G-, 5G- oder 6G-Verbindung, etc.) erfolgen.The implementation of a method according to the invention in the form of a computer program or computer program product with program code for carrying out all method steps is advantageous because this causes particularly low costs, especially if an executing control unit is also used for other tasks and is therefore available anyway. Finally, a machine-readable storage medium is provided with a computer program stored thereon as described above. Suitable storage media or data carriers for providing the computer program are in particular magnetic, optical and electrical storage devices such as hard drives, flash memories, EEPROMs, DVDs, etc. It is also possible to download a program via computer networks (Internet, intranet, etc.). A such a download can be wired or wired or wireless (e.g. via a WLAN network, a 3G, 4G, 5G or 6G connection, etc.).

Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.Further advantages and refinements of the invention result from the description and the attached drawing.

Die Erfindung ist anhand eines Ausführungsbeispiels in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.The invention is shown schematically in the drawing using an exemplary embodiment and is described below with reference to the drawing.

Figurenlistecharacter list

  • 1 zeigt schematisch ein mobiles Gerät in einer bevorzugten Ausführungsform der Erfindung. 1 shows schematically a mobile device in a preferred embodiment of the invention.
  • 2 zeigt schematisch mobiles Gerät in einer Umgebung zur näheren Erläuterung einer bevorzugten Ausführungsform der Erfindung. 2 shows a schematic of a mobile device in an environment for a more detailed explanation of a preferred embodiment of the invention.
  • 3 zeigt schematisch einen Ablauf eines Verfahrens in einer bevorzugten Ausführungsform der Erfindung. 3 shows schematically a sequence of a method in a preferred embodiment of the invention.

Ausführungsform(en) der Erfindungembodiment(s) of the invention

In 1 ist schematisch ein mobiles Gerät 100 gemäß einer bevorzugten Ausführungsform der Erfindung dargestellt. Beispielhaft handelt es sich bei dem mobilen Gerät 100 um ein automatisiert fahrendes Fahrzeug, das sich auf einer Straße 110 in einer Umgebung 120 befindet und z.B. die Straße entlangfahren soll.In 1 a mobile device 100 according to a preferred embodiment of the invention is shown schematically. For example, the mobile device 100 is an automated vehicle that is located on a street 110 in an environment 120 and is intended to drive along the street, for example.

Außerdem ist beispielhaft ein Mensch als mobiles Objekt 130 gezeigt, der z.B. auf die Straße 110 zugeht. Das Fahrzeug 100 soll nun z.B. die Straße 110 im Sinne eines vorgegebenen Wegs entlangfahren; dabei soll es aber keine Kollision mit dem Menschen 130 geben, der möglicherweise die Straße 110 betrifft, ggf. auch auf die rechte Spur, auf der das Fahrzeug 100 fährt, wechseln könnte.In addition, a human being is shown as a mobile object 130 by way of example, walking towards the street 110, for example. The vehicle 100 is now supposed to travel, for example, along the road 110 in the sense of a predetermined path; however, there should be no collision with the person 130 who might affect the road 110 and possibly also change to the right lane on which the vehicle 100 is driving.

Das Fahrzeug 100 weist beispielhaft eine Kamera 104 und einen Lidar-Sensor 106 als Sensoreinheiten auf, mittels welcher die Umgebung 120 und damit auch der Mensch 130 und insbesondere ein Abstand des Menschen 130 zum Fahrzeug 100 sowie ggf. eine Bewegungsrichtung des Menschen 130 erfasst werden können. Es handelt sich dabei um Objektinformationen. Ebenso können damit z.B. Bewegungsinformationen des Fahrzeugs 100 selbst - Geräteinformationen - erfasst werden. Außerdem weist das Fahrzeug 100 eine als Steuergerät ausgebildete Recheneinheit 102 auf, die von der Kamera 104 und dem Lidar-Sensor 106 erfasste Informationen, z.B. die erwähnten Objektinformationen sowie die Geräteinformationen, erhält und verarbeiten kann, um letztlich Gerätesteuerinformationen zu bestimmen, anhand welcher das Fahrzeug 100 gesteuert wird.The vehicle 100 has, for example, a camera 104 and a lidar sensor 106 as sensor units, by means of which the surroundings 120 and thus also the person 130 and in particular a distance of the person 130 from the vehicle 100 and possibly a direction of movement of the person 130 can be recorded . This is object information. Likewise, movement information of the vehicle 100 itself - device information - can be recorded with it, for example. In addition, vehicle 100 has a processing unit 102 embodied as a control unit, which receives and can process information recorded by camera 104 and lidar sensor 106, e.g 100 is controlled.

Der hier gezeigte Fall stellt nur ein Beispiel für eine Anwendung der Erfindung dar; wie erwähnt, kann es sich bei dem mobilen Gerät z.B. auch um einen Roboter handeln, der sich in einer Umgebung bewegt bzw. bewegen soll, und dabei Kollisionen mit mobilen Objekten oder Hindernissen vermeiden soll.The case shown here is just an example of an application of the invention; As mentioned, the mobile device can also be a robot, for example, which moves or is intended to move in an environment and is intended to avoid collisions with mobile objects or obstacles.

In 2 ist schematisch ein mobiles Gerät 200 in einer Umgebung 220 zur näheren Erläuterung der Erfindung in einer bevorzugten Ausführungsform dargestellt. Es kann sich bei dem mobilen Gerät 200 z.B. wieder um das Fahrzeug gemäß 1 handeln, allerdings ist die Situation hier abstrahiert dargestellt: das mobile Gerät 200 ist nur als Punkt gezeigt. Ebenso sind beispielhaft sechs mobile Objekte 230, 240, 250, 260, 270 und 280 jeweils als Punkte gezeigt.In 2 a mobile device 200 is shown schematically in an environment 220 for a more detailed explanation of the invention in a preferred embodiment. The mobile device 200 can, for example, again be the vehicle according to FIG 1 act, however, the situation is represented here in an abstracted manner: the mobile device 200 is only shown as a point. Likewise, by way of example, six mobile objects 230, 240, 250, 260, 270 and 280 are each shown as dots.

Mit 201 ist nun ein zurückliegender Geräte-Bewegungspfad des mobilen Geräts 200 dargestellt, d.h. ein Weg, entlang dessen sich das mobile Gerät 200 bereits bewegt hat. Mit 202 hingegen ist ein Geräte-Bewegungspfad des mobilen Geräts 200 dargestellt, entlang dessen es sich bewegen soll, d.h. der Geräte-Bewegungspfad 202 ist derjenige, den es im Rahmen der Erfindung zu bestimmen gilt. A previous device movement path of the mobile device 200 is now shown at 201, i.e. a path along which the mobile device 200 has already moved. On the other hand, 202 shows a device movement path of the mobile device 200 along which it is to move, i.e. the device movement path 202 is the one that is to be determined within the scope of the invention.

Mit 231 ist ein zurückliegender Objekt-Bewegungspfad des Objekts 230 dargestellt, d.h. ein Weg, entlang dessen sich das Objekt 230 bereits bewegt hat. Mit 232.1, 232.2, 232.3 und 232.4 hingegen sind mögliche Objekt-Bewegungspfade des Objekts 230 dargestellt, entlang derer es sich möglicherweise bewegen könnte, ausgehend von der Position, in der es sich aktuell befindet. Diese möglichen Objekt-Bewegungspfade 232.1, 232.2, 232.3 und 232.4 können im Rahmen eines erfindungsgemäßen Verfahrens bestimmt werden, um den Geräte-Bewegungspfad 202 des mobilen Geräts 200 derart zu bestimmen, dass die Wahrscheinlichkeit einer Kollision des mobilen Gerätes 200 mit dem Objekt 230 jeweils geringer als ein vorgegebener Schwellwert bzw. möglichst gering ist.A previous object movement path of the object 230 is represented by 231, ie a path along which the object 230 has already moved. On the other hand, 232.1, 232.2, 232.3 and 232.4 show possible object movement paths of the object 230, along which it could possibly move, starting from the position in which it is currently located. These possible object movement paths 232.1, 232.2, 232.3 and 232.4 can be determined within the scope of a method according to the invention to determine the device movement path 202 of the mobile device 200 in such a way that the probability of a collision of the mobile device 200 with the object 230 is in each case lower than a predetermined threshold value or as low as possible.

Ebenso sind für die Objekte 240, 250, 260, 270 und 280 jeweils ein zurückliegender Objekt-Bewegungspfad 241, 251, 261, 271 und 281 sowie mögliche Objekt-Bewegungspfade dargestellt, wobei letztere der Übersichtlichkeit halber nur objektweise mit 242, 252, 262, 272 bzw. 282 bezeichnet sind.Likewise, for the objects 240, 250, 260, 270 and 280, a previous object movement path 241, 251, 261, 271 and 281 as well as possible object movement paths are shown, the latter only being labeled 242, 252, 262, 272 and 282, respectively.

In 3 ist schematisch ein Ablauf eines erfindungsgemäßen Verfahrens in einer bevorzugten Ausführungsform dargestellt, insbesondere mit einer modellprädiktiven Regelung. Anhand dieses Ablaufs und in Bezug auf 2 soll nachfolgend die Erfindung anhand eines konkreten Ausführungsbeispiels näher erläutert werden.In 3 a sequence of a method according to the invention is shown schematically in a preferred embodiment, in particular with a model-predictive control. Based on this procedure and in relation to 2 the invention will be explained in more detail below using a specific exemplary embodiment.

Dabei handelt es sich grundsätzlich um ein typisches Schema eines Algorithmus zur modellprädiktiven Regelung. Der Algorithmus führt bei jeder Iteration eine Optimierung bzw. einen Optimierungsschritt 310 durch, der eine bestimmte Kostenfunktion 320 zur Minimierung, ggf. Randbedingungen und das Modell 300 des mobilen Geräts berücksichtigt. Auf Basis der bzw. mittels der Sensoreinheiten, wie in Bezug auf 1 erwähnt, können Objektinformationen 342 und Geräteinformationen 332, also Merkmale aus der Umgebung 340 und vom mobilen Gerät 330 selbst, erhalten werden. Damit können z.B. Positionen von Objekten bzw. Lebewesen oder ein Abstand zu Hindernissen bestimmt bzw. berechnet werden. Diese Informationen können also in die Kostenfunktion 320, ggf. Randbedingungen und das Modell 300 einfließen bzw. diesem bereitgestellt werden.This is basically a typical scheme of an algorithm for model predictive control. With each iteration, the algorithm carries out an optimization or an optimization step 310 which takes into account a specific cost function 320 for minimization, possibly boundary conditions and the model 300 of the mobile device. On the basis of or by means of the sensor units, as in relation to 1 mentioned, object information 342 and device information 332, ie features from the environment 340 and from the mobile device 330 itself, can be obtained. This allows, for example, positions of objects or living beings or a distance to obstacles to be determined or calculated. This information can therefore flow into the cost function 320, possibly boundary conditions and the model 300 or be made available to it.

Ein Algorithmus zur modellprädiktiven Regelung berechnet bei jeder Iteration - für einen Soll-Zustand xRef wie z.B. eine gewünschte Pose des mobilen Geräts - eine Sequenz von Steuer- oder Stellgrößen ut+1,t+T. Im Rahmen der vorliegenden Erfindung wird in diesem Zusammenhang allgemein auch von Bewegungssteuergrößen gesprochen. Auf das mobile Gerät wird aber nur die erste Stellgröße ut+1 angewendet, die restlichen werden an das Modell übergeben, das zur Berechnung der Kostenfunktionen und ggf. der Randbedingungen im Optimierungsschritt verwendet wird, wobei dann auch Zustände xt+1,t+T erhalten werden. Zur Lösung eines solchen Planungs- und Steuerungsproblems können verschiedene Arten von Optimierungen oder Optimieren verwendet werden, z.B. im Rahmen eines nichtlinearen Programmablaufs.An algorithm for model-predictive control calculates a sequence of control or manipulated variables u t+1,t+T in each iteration—for a target state x Ref such as a desired pose of the mobile device. Within the scope of the present invention, movement control variables are also generally spoken of in this context. However, only the first manipulated variable u t+1 is applied to the mobile device, the rest are transferred to the model that is used to calculate the cost functions and, if necessary, the boundary conditions in the optimization step, with states x t+1,t+ T are obtained. Various types of optimization can be used to solve such a planning and control problem, for example in the context of a non-linear program flow.

Ein erster Schritt kann darin bestehen, die möglichen Objekt-Bewegungspfade der Objekte in der Umgebung, wie in 2 gezeigt, zu bestimmen bzw. zu prädizieren; dies kann basierend auf den von den Sensoreinheiten erfassten Werten bzw. Objektinformationen erfolgen.A first step can be to determine the possible object movement paths of the objects in the environment, as in 2 shown to determine or to predict; this can be based on the values or object information recorded by the sensor units.

Sobald die möglichen Objekt-Bewegungspfade verfügbar sind, können sie an einen modifizierten zufallsbeschränkten Algorithmus zur modellprädiktiven Regelung übergeben werden. Eine grundsätzliche Definition einer Zufallsbeschränkung wird z.B. in „A Real-Time Approach for Chance-Constrained Motion Planning With Dynamic Obstacles. Manuel Castillo-Lopez, Philippe Ludivig, Seyed Amin Sajadi-Alamdari, Jose Luis Sanchez-Lopez,Miguel A. Olivares-Mendez, and Holger Voos, IEEE Robotics and Automation Letters, Volume: 5, Issue: 2, April 2020, Page(s): 3620 - 3625“ beschrieben. Dabei kann eine grundsätzliche Definition einer Zufallsbeschränkung modifiziert werden, sodass sie in die Lage versetzt wird, mehrere mögliche Objekt-Bewegungspfade zu berücksichtigen, die durch ein multimodales Verfahren zur Vorhersage der Bewegung erzeugt werden, und zwar entsprechend folgender Formel: min u R ,0 : T 1   t = 0 T 1 ( x R , t x g o a l A 2 + u R , t B 2 ) + x R , T x g o a l C 2

Figure DE102021212697A1_0001
Once the possible object motion paths are available, they can be passed to a modified random constrained model predictive control algorithm. A basic definition of a random constraint is given, for example, in “A Real-Time Approach for Chance-Constrained Motion Planning With Dynamic Obstacles. Manuel Castillo-Lopez, Philippe Ludivig, Seyed Amin Sajadi-Alamdari, Jose Luis Sanchez-Lopez, Miguel A. Olivares-Mendez, and Holger Voos, IEEE Robotics and Automation Letters, Volume: 5, Issue: 2, April 2020, Page( s): 3620 - 3625". In doing so, a basic definition of a random constraint can be modified to be able to account for multiple possible object motion paths generated by a multimodal motion prediction method, according to the following formula: at least and R ,0 : T 1 t = 0 T 1 ( x R , t x G O a l A 2 + and R , t B 2 ) + x R , T x G O a l C 2
Figure DE102021212697A1_0001

Dabei gilt: x R , t + 1 = ƒ ( x R , t , u R , t )   t [ 0, T 1 ]

Figure DE102021212697A1_0002
x R ,0 = x R , m
Figure DE102021212697A1_0003
z = 1 z p z h P ( x R , t F z , t h ) 1 α t h   t [ 1, T ] , h H
Figure DE102021212697A1_0004
x R , t X R   t [ 0, T ]
Figure DE102021212697A1_0005
u R t U R   t [ 0, T 1 ]
Figure DE102021212697A1_0006
The following applies: x R , t + 1 = ƒ ( x R , t , and R , t ) t [ 0, T 1 ]
Figure DE102021212697A1_0002
x R ,0 = x R , m
Figure DE102021212697A1_0003
e.g = 1 e.g p e.g H P ( x R , t f e.g , t H ) 1 a t H t [ 1, T ] , H H
Figure DE102021212697A1_0004
x R , t X R t [ 0, T ]
Figure DE102021212697A1_0005
and R t u R t [ 0, T 1 ]
Figure DE102021212697A1_0006

Mit dieser Formel wird der Abstand zum Zielwert xgoal und der Stellgröße uR minimiert, und es können verschiedene Kostenfunktionen übernommen sowie das Verfahren auch im dreidimensionalen Raum angewendet werden. Dabei sind uR,t die auf das mobile Gerät angewendeten bzw. anzuwendenden Stellgröße(n) und xR,t der Zustand des gesamten Systems (d.h. mobiles Gerät und mobile Objekte) zum Zeitpunkt t (t=0 soll den Anfangszustand bezeichnen). Die Dynamik des Systems, d.h. insbesondere die Tatsache, dass sich das mobile Geräte selbst, bewegt bzw. bewegen kann, wird durch die Funktion ƒ(xR,t,uR,t) dargestellt. Auch in diesem Fall kann mit Modellen und Beobachtungen gearbeitet werden, die ein Rauschen umfassen.With this formula, the distance to the target value x goal and the manipulated variable u R is minimized, and various cost functions can be adopted and the method can also be used in three-dimensional space. Here, u R,t are the manipulated variable(s) applied or to be applied to the mobile device and x R,t is the state of the entire system (ie mobile device and mobile objects) at time t (t=0 is intended to denote the initial state). The dynamics of the system, ie in particular the fact that the mobile device itself moves or can move, is represented by the function ƒ(x R,t ,u R,t ). In this case too, models and observations that include noise can be used.

In der genannten Formel kann dann der Multimodalitätsaspekt berücksichtigt werden durch eine Anzahl Z an Kollisionswahrscheinlichkeiten von jeweils einer Anzahl H Objekten oder Lebewesen (oder dynamischen bzw. mobilen Hindernisse), d.h. eine Kollisionswahrscheinlichkeit für jeden möglichen Objekt-Bewegungspfad. Für jeden Objekt-Bewegungspfad kann eine Eintrittswahrscheinlichkeit als ph z angegeben werden; sie kann z.B. im Rahmen der erwähnten Möglichkeiten, solche Objekt-Bewegungspfade zu bestimmen, bestimmt werden.The multimodality aspect can then be taken into account in the formula mentioned by a number Z of collision probabilities for a number H of objects or living beings (or dynamic or mobile obstacles), ie a collision probability for each possible object movement path. For each object movement path, a probability of occurrence can be specified as p h z ; it can be determined, for example, within the scope of the options mentioned for determining such object movement paths.

Jedem Objekt-Bewegungspfad kann auch eine Neben- oder Randbedingung P(xR,t∈Fh z,t) ≥ 1-αh zugeordnet und dann mit ihrer Eintrittswahrscheinlichkeit gewichtet werden. Insbesondere erfordert diese Bedingung z.B., dass das mobile Gerät mit einer Wahrscheinlichkeit größer als 1-αh Teil des realisierbaren Raumes Fh z,t ist, d.h. des Raums bzw. der Umgebung, in der keine Kollision auftritt.A secondary or boundary condition P(x R,t ∈F h z,t ) ≥ 1-α h can also be assigned to each object movement path and then weighted with its probability of occurrence. In particular, this condition requires, for example, that the mobile device is part of the realizable space F h z,t with a probability greater than 1-α h , ie the space or the environment in which no collision occurs.

Die Neben- bzw. Randbedingung P(xR,t∈Fh z,t) ≥ 1-αh ist numerisch in der Regel nicht lösbar. Daher kann sie - ähnlich wie in „A Real-Time Approach for Chance-Constrained Motion Planning With Dynamic Obstacles. Manuel Castillo-Lopez, Philippe Ludivig, Seyed Amin Sajadi-Alamdari, Jose Luis Sanchez-Lopez, Miguel A. Olivares-Mendez, and Holger Voos, IEEE Robotics and Automation Letters, Volume: 5, Issue: 2, April 2020, Page(s): 3620 - 3625“ - in eine deterministische Näherung umgewandelt werden, nämlich folgende Bedingung: Λ t = 1 T   Λ h = 1 T   z = 1 Z p z h ( j = 1 2 ( ( x ^ R , t j x ^ H , z , t h , j ) d h , j + Ψ 1 ( 1 α t h ) R , t j + H , z , t h , j ) 2 2 ) 0

Figure DE102021212697A1_0007
The secondary or boundary condition P(x R,t ∈F h z,t ) ≥ 1-α h is usually not solvable numerically. Therefore - similar to "A Real-Time Approach for Chance-Constrained Motion Planning With Dynamic Obstacles. Manuel Castillo-Lopez, Philippe Ludivig, Seyed Amin Sajadi-Alamdari, Jose Luis Sanchez-Lopez, Miguel A. Olivares-Mendez, and Holger Voos, IEEE Robotics and Automation Letters, Volume: 5, Issue: 2, April 2020, Page( s): 3620 - 3625" - can be converted into a deterministic approximation, namely the following condition: Λ t = 1 T Λ H = 1 T e.g = 1 Z p e.g H ( j = 1 2 ( ( x ^ R , t j x ^ H , e.g , t H , j ) i.e H , j + Ψ 1 ( 1 a t H ) R , t j + H , e.g , t H , j ) 2 2 ) 0
Figure DE102021212697A1_0007

Diese Bedingung schreibt vor, dass die Posen (d.h. Position und/oder Orientierung) des mobilen Geräts und der mobilen Objekte (z.B. der Menschen) nicht kollidieren dürfen; es handelt sich also um eine Sicherheitsbedingung für den Betrieb des mobilen Geräts. Diese Bedingung hängt von der Unsicherheit des Modells (∑j R,t) und der vorhergesagten Pose der Objekte (∑h,j H,z,t) ab. Der Parameter α wird verwendet, um eine akzeptierte Kollisionswahrscheinlichkeit zu definieren. Es handelt sich also um den erwähnten, vorgegebenen Schwellwert, unterhalb dessen die Wahrscheinlichkeit einer Kollision des mobilen Gerätes mit dem jeweiligen Objekt sein soll (dieser Schwellwert kann sehr niedrig vorgegeben werden).This condition dictates that the poses (ie, position and/or orientation) of the mobile device and the mobile objects (eg, humans) must not collide; it is therefore a safety requirement for the operation of the mobile device. This condition depends on the uncertainty of the model (∑ j R,t ) and the predicted pose of the objects (∑ h,j H,z,t ). The parameter α is used to define an accepted collision probability. It is therefore the mentioned, specified threshold value below which the probability of a collision of the mobile device with the respective object should be (this threshold value can be specified very low).

Mit dh,j ist der zulässiger Abstand bezeichnet, auf den sich das mobile Gerät und ein Objekt höchstens nähern dürfen, um keine Kollision anzunehmen. Dies kann z.B. intuitiv die Radien (geometrische Abmessungen) von mobilem Gerät oder Objekt umfassen. Mit Ψ-1 ist eine inverse kumulative Verteilungsfunktion bezeichnet, die sich grundsätzlich auf eine beliebige Zufallsvariable beziehen kann. Mit xj R,t ist die j-Koordinate der Pose des mobilen Geräts zum Zeitpunkt t bezeichnet, mit xh,j H,z,t ist die j-Koordinate des mobilen Objekts h bezeichnet, z.B. erzeugt durch den vorhergesagten Objekt-Bewegungspfad z zum Zeitpunkt t. Mit H ist die Anzahl der mobilen Objekte bezeichnet, T gibt die Anzahl der MPC-Vorhersageschritte und Z die Anzahl der möglichen Objekt-Bewegungspfade eines Objekts.d h,j denotes the maximum permissible distance to which the mobile device and an object may approach in order not to assume a collision. This can, for example, intuitively include the radii (geometric dimensions) of the mobile device or object. Ψ -1 designates an inverse cumulative distribution function, which in principle can relate to any random variable. The j-coordinate of the pose of the mobile device at time t is denoted by x j R,t , and the j-coordinate of the mobile object h is denoted by x h,j H,z, t, eg generated by the predicted object movement path z at time t. H denotes the number of mobile objects, T denotes the number of MPC prediction steps and Z denotes the number of possible object movement paths of an object.

Das Ergebnis dieses Optimierungsschritts ist jeweils eine kollisionsfreie Trajektorie (Geräte-Bewegungspfad), dem das mobile Gerät folgen soll, wie z.B. mit 202 in 2 gezeigt. Der Optimierungsschritt ist insbesondere Teil eines MPC-Algorithmus, wie zuvor beschrieben.The result of this optimization step is a collision-free trajectory (device movement path) that the mobile device should follow, such as 202 in 2 shown. In particular, the optimization step is part of an MPC algorithm as previously described.

Vorteile dieses Vorgehens sind dabei insbesondere, dass eine multimodale Definition der Formel mit der Zufallsbeschränkung enthalten ist, d.h. es können mehrere mögliche Objekt-Bewegungspfade berücksichtigt werden. Dies ermöglicht es, die Ausgabe der standardmäßig verfügbaren Vorhersagesysteme vollständig auszunutzen. Außerdem gibt es einfach einstellbare Parameter (die für die obigen Formeln erwähnt wurden), wobei sichergestellt werden kann, dass die durch die numerische Optimierung erzeugten realisierbaren Lösungen kollisionsfrei und somit sicher sind, d.h. dass genügend Abstand des mobilen Geräts zu den Objekten eingehalten wird. Insbesondere können mit diesem auch uni-modale und multi-modale Vorhersagen, d.h. nur ein möglicher Objekt-Bewegungspfad für ein Objekt bzw. mehrere davon, kombiniert werden.The advantages of this procedure are, in particular, that a multimodal definition of the formula with the random constraint is included, ie several possible object movement paths can be taken into account. This makes it possible to fully exploit the output of the forecasting systems available by default. Also, there are easily adjustable parameters (the ones mentioned for the above formulas were), whereby it can be ensured that the realizable solutions generated by the numerical optimization are collision-free and therefore safe, ie that a sufficient distance between the mobile device and the objects is maintained. In particular, this can also be used to combine unimodal and multimodal predictions, ie only one possible object movement path for an object or for several of them.

Claims (14)

Verfahren zum Bestimmen eines Geräte-Bewegungspfades (202), entlang dessen sich ein mobiles Gerät (100, 200), insbesondere ein Roboter, eine Drohne oder ein sich zumindest teilautomatisiert bewegendes Fahrzeug, in einer Umgebung (120, 220) bewegen soll, umfassend: Bereitstellen von Objektinformationen (342) von einem oder mehreren mobilen Objekten (130, 230, 240, 250, 260, 270, 280) in der Umgebung und Bestimmen, basierend auf den Objektinformationen, für das eine oder für jedes der mehreren Objekte zumindest eines möglichen Objekt-Bewegungspfads (232.1, 232.2, 232.3, 232.4), Bereitstellen von Geräteinformationen (332) von dem mobilen Gerät (100, 200) und Bestimmen, basierend auf den Geräteinformationen, einer Position und/oder Orientierung des mobilen Geräts (100, 200), und Bestimmen des Geräte-Bewegungspfades (202), basierend auf der Position und/oder Orientierung des mobilen Geräts, derart, dass für das eine oder die mehreren mobilen Objekte eine Wahrscheinlichkeit einer Kollision des mobilen Gerätes mit dem einen oder einem der mehreren mobilen Objekt jeweils geringer als ein vorgegebener Schwellwert ist.Method for determining a device movement path (202) along which a mobile device (100, 200), in particular a robot, a drone or a vehicle moving at least partially automatically, is intended to move in an environment (120, 220), comprising: providing object information (342) from one or more mobile objects (130, 230, 240, 250, 260, 270, 280) in the environment and determining, based on the object information, at least one possible object for the one or for each of the plurality of objects object motion path (232.1, 232.2, 232.3, 232.4), providing device information (332) from the mobile device (100, 200) and determining, based on the device information, a position and/or orientation of the mobile device (100, 200), and determining the device movement path (202) based on the position and/or orientation of the mobile device such that the one or more mobile objects have a lower probability of a collision of the mobile device with the one or more mobile objects than a predetermined threshold. Verfahren nach Anspruch 1, wobei für das eine oder für zumindest eines der mehreren Objekte mehrere mögliche Objekt-Bewegungspfade (232.1, 232.2, 232.3, 232.4) bestimmt werden.procedure after claim 1 , multiple possible object movement paths (232.1, 232.2, 232.3, 232.4) being determined for the one or for at least one of the plurality of objects. Verfahren nach Anspruch 2, wobei bei der Bestimmung der mehreren möglichen Objekt-Bewegungspfade (232.1, 232.2, 232.3, 232.4) jeweils eine Eintrittswahrscheinlichkeit berücksichtigt wird.procedure after claim 2 , a probability of occurrence being taken into account in each case when determining the plurality of possible object movement paths (232.1, 232.2, 232.3, 232.4). Verfahren nach einem der vorstehenden Ansprüche, wobei eine Kollision des mobilen Gerätes (100, 200) mit dem einen oder einem der mehreren mobilen Objekte angenommen wird, wenn sich das Gerät auf dem Geräte-Bewegungspfad dem Objekt auf einem der zugehörigen Objekt-Bewegungspfade auf weniger als einen vorgegebenen Abstand nähert.Method according to one of the preceding claims, wherein a collision of the mobile device (100, 200) with the one or one of the plurality of mobile objects is assumed if the device on the device movement path is less than the object on one of the associated object movement paths than a predetermined distance approaches. Verfahren nach einem der vorstehenden Ansprüche, wobei der Geräte-Bewegungspfad (202) basierend auf einem vorgegebenen Zielpunkt in der Umgebung und/oder basierend auf einem vorgegebenen Weg bestimmt und/oder angepasst wird.Method according to one of the preceding claims, wherein the device movement path (202) is determined and/or adjusted based on a predetermined target point in the environment and/or based on a predetermined path. Verfahren nach einem der vorstehenden Ansprüche, wobei der Geräte-Bewegungspfad (202) im Rahmen einer modellbasierten Regelung, insbesondere einer modellprädiktiven Regelung, bestimmt wird.Method according to one of the preceding claims, wherein the device movement path (202) is determined within the framework of a model-based control, in particular a model-predictive control. Verfahren nach einem der vorstehenden Ansprüche, wobei die Objektinformationen (342) zumindest teilweise unter Verwendung wenigstens einer Sensoreinheit, insbesondere einer Sensoreinheit des mobilen Geräts, insbesondere umfassend eine Kamera (104) und/oder einen Lidar-Sensor (106), bereitgestellt werden.Method according to one of the preceding claims, wherein the object information (342) is provided at least partially using at least one sensor unit, in particular a sensor unit of the mobile device, in particular comprising a camera (104) and/or a lidar sensor (106). Verfahren nach einem der vorstehenden Ansprüche, wobei die Geräteinformationen (332) zumindest teilweise unter Verwendung wenigstens einer Sensoreinheit, insbesondere einer Sensoreinheit des mobilen Geräts, insbesondere umfassend eine Kamera (104) und/oder einen Lidar-Sensor (106) und/oder einen Inertialsensor, bereitgestellt werden.Method according to one of the preceding claims, wherein the device information (332) at least partially using at least one sensor unit, in particular a sensor unit of the mobile device, in particular comprising a camera (104) and / or a lidar sensor (106) and / or an inertial sensor , to be provided. Verfahren nach einem der vorstehenden Ansprüche, weiterhin umfassend: Bestimmen von Bewegungssteuergrößen für das mobile Gerät (100, 200) basierend auf dem Geräte-Bewegungspfad (202).A method according to any one of the preceding claims, further comprising: determining motion controls for the mobile device (100, 200) based on the device movement path (202). Recheneinheit (102), die dazu eingerichtet ist, die Verfahrensschritte eines Verfahrens nach einem der vorstehenden Ansprüche durchzuführen.Arithmetic unit (102) which is set up to carry out the method steps of a method according to one of the preceding claims. Mobiles Gerät (100, 200) mit wenigstens einer Sensoreinheit (104, 106) zum Erfassen von Objektinformationen und/oder von Geräteinformationen und einer Recheneinheit (102) nach Anspruch 10.Mobile device (100, 200) with at least one sensor unit (104, 106) for detecting object information and/or device information and a computing unit (102). claim 10 . Mobiles Gerät (100, 200) nach Anspruch 11, das als sich zumindest teilweise automatisiert bewegendes Fahrzeug, insbesondere als Personenbeförderungsfahrzeug oder als Güterbeförderungsfahrzeug, oder als Roboter, insbesondere als Haushaltsroboter, z.B. Saug- und/oder Wischroboter, Boden- oder Straßenreinigungsgerät oder Rasenmähroboter, oder als Drohne ausgebildet ist.Mobile device (100, 200) after claim 11 , which is designed as an at least partially automated moving vehicle, in particular as a passenger transport vehicle or as a goods transport vehicle, or as a robot, in particular as a household robot, e.g. Computerprogramm, das eine Recheneinheit (102) eines mobilen Geräts nach Anspruch 11 oder 12 dazu veranlasst, alle Verfahrensschritte eines Verfahrens nach einem der Ansprüche 1 bis 9 durchzuführen, wenn es auf der Recheneinheit (102) ausgeführt wird.Computer program that a computing unit (102) of a mobile device claim 11 or 12 caused all process steps of a method according to one of Claims 1 until 9 to be performed when it is executed on the computing unit (102). Maschinenlesbares Speichermedium mit einem darauf gespeicherten Computerprogramm nach Anspruch 13.Machine-readable storage medium with a computer program stored on it Claim 13 .
DE102021212697.9A 2021-11-11 2021-11-11 Method for determining a movement path for a mobile device Pending DE102021212697A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102021212697.9A DE102021212697A1 (en) 2021-11-11 2021-11-11 Method for determining a movement path for a mobile device
PCT/EP2022/079377 WO2023083584A1 (en) 2021-11-11 2022-10-21 Method for determining a motion path for a mobile device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021212697.9A DE102021212697A1 (en) 2021-11-11 2021-11-11 Method for determining a movement path for a mobile device

Publications (1)

Publication Number Publication Date
DE102021212697A1 true DE102021212697A1 (en) 2023-05-11

Family

ID=84360425

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021212697.9A Pending DE102021212697A1 (en) 2021-11-11 2021-11-11 Method for determining a movement path for a mobile device

Country Status (2)

Country Link
DE (1) DE102021212697A1 (en)
WO (1) WO2023083584A1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2903532T3 (en) * 2016-06-10 2022-04-04 Univ Duke Motion Planning for Autonomous Vehicles and Reconfigurable Motion Planning Processors
GB201803292D0 (en) * 2018-02-28 2018-04-11 Five Ai Ltd Efficient computation of collision probabilities for safe motion planning

Also Published As

Publication number Publication date
WO2023083584A1 (en) 2023-05-19

Similar Documents

Publication Publication Date Title
EP3144920B1 (en) Determining a target trajectory for a vehicle
DE102019103173A1 (en) Method and system for movement planning for aircraft, in particular for load-carrying and / or person-carrying VTOL aircraft
DE102013225057A1 (en) METHOD FOR CONTROLLING A VEHICLE, DEVICE FOR PRODUCING CONTROL SIGNALS FOR A VEHICLE AND VEHICLE
DE102015205131A1 (en) Method for operating an at least partially automated moving vehicle within a route
DE102019202090A1 (en) A method of generating a training data set for training an artificial intelligence module for a controller of a robot
WO2020016385A1 (en) Method and system for determining a position of a vehicle
EP3445538B1 (en) Method for controlling a plurality of mobile driverless manipulator systems
EP3982349B1 (en) Flight device and method and computer aided system for controlling an aircraft
EP3552921A1 (en) Autonomous speed planning of a mobile actor limited to a predetermined path
DE102020103030A1 (en) ADAPTIVE SENSOR SYSTEM FOR VEHICLES AND METHOD OF OPERATING THESE
DE102018215560A1 (en) Procedures for coordinating and monitoring objects
DE102019209457A1 (en) Method for training an artificial neural network, artificial neural network, use of an artificial neural network and a corresponding computer program, machine-readable storage medium and corresponding device
DE102022211512A1 (en) IMPROVEMENTS IN A SWITCHING RECURRENT KALMAN NETWORK
WO2019011536A1 (en) Method, device, computer program and a machine-readable storage medium for operating a vehicle
EP3347788B1 (en) Method and device for operating a motor vehicle traveling driverlessly within a parking space
DE112021006148T5 (en) Method and system for determining a motion model for motion prediction when controlling autonomous vehicles
DE102019104974A1 (en) Method and system for determining a driving maneuver
EP3748453B1 (en) Method and device for automatically executing a control function of a vehicle
DE102018220510A1 (en) Situation-dependent calculation of a target vehicle speed
DE102021203588A1 (en) Method and controller for estimating a behavior of a system
DE102021212697A1 (en) Method for determining a movement path for a mobile device
DE102020210376A1 (en) Apparatus and method for controlling a hardware agent in a multiple hardware agent control situation
DE102019123783A1 (en) Method for controlling a movement behavior of an autonomously moving robot
DE102020203836A1 (en) Method for determining a value of a controller variable
DE102021210593A1 (en) Method for training a neural environment network for determining an object-enriched environment of a mobile platform

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G05D0001020000

Ipc: G05D0001430000