DE102021204961B4 - Verfahren zur Steuerung einer Robotervorrichtung - Google Patents

Verfahren zur Steuerung einer Robotervorrichtung Download PDF

Info

Publication number
DE102021204961B4
DE102021204961B4 DE102021204961.3A DE102021204961A DE102021204961B4 DE 102021204961 B4 DE102021204961 B4 DE 102021204961B4 DE 102021204961 A DE102021204961 A DE 102021204961A DE 102021204961 B4 DE102021204961 B4 DE 102021204961B4
Authority
DE
Germany
Prior art keywords
weights
trajectory
vector
manifold
demonstrated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102021204961.3A
Other languages
English (en)
Other versions
DE102021204961A1 (de
Inventor
Leonel Rozo
Vedant Dave
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 DE102021204961.3A priority Critical patent/DE102021204961B4/de
Priority to JP2022080087A priority patent/JP2022176917A/ja
Priority to CN202210527848.4A priority patent/CN115351780A/zh
Priority to KR1020220059921A priority patent/KR20220155921A/ko
Publication of DE102021204961A1 publication Critical patent/DE102021204961A1/de
Application granted granted Critical
Publication of DE102021204961B4 publication Critical patent/DE102021204961B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36401Record play back, teach position and record it then play back
    • 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/39001Robot, manipulator control
    • 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/39298Trajectory learning
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40519Motion, trajectory planning

Abstract

Verfahren zur Steuerung einer Robotervorrichtung (100), das Folgendes umfasst:Bereitstellen von Demonstrationen für eine Roboterfertigkeit, wobei jede Demonstration eine Trajektorie (τ) demonstriert, die eine Abfolge von Roboterkonfigurationen (yt) umfasst, wobei jede Roboterkonfiguration (yt) durch ein Element eines vorbestimmten Konfigurationsraums mit der Struktur einer riemannschen Mannigfaltigkeit beschrieben wird;Bestimmen, für jede demonstrierte Trajektorie (τ), einer Repräsentation der Trajektorie (τ) als ein Vektor von Gewichten (wi) von vorbestimmten grundlegenden Bewegungen der Robotervorrichtung (100) durchSuchen eines Vektors von Gewichten (wi), der ein Abstandsmaß zwischen der Kombination aus den grundlegenden Bewegungen gemäß dem Vektor von Gewichten (wi) und der demonstrierten Trajektorie (τ) minimiert, wobei die Kombination auf die Mannigfaltigkeit abgebildet ist;Bestimmen einer Wahrscheinlichkeitsverteilung der Vektoren von Gewichten (wi) durch Anpassen einer Wahrscheinlichkeitsverteilung an die für die demonstrierten Trajektorien (τ) bestimmten Vektoren von Gewichten; undSteuern der Robotervorrichtung (100) durch Durchführen grundlegender Bewegungen entsprechend der bestimmtenWahrscheinlichkeitsverteilung von Vektoren von Gewichten (wi).

Description

  • Stand der Technik
  • Die vorliegende Offenbarung bezieht sich auf Verfahren zum Steuern einer Robotervorrichtung.
  • In vielen Anwendungen ist es wünschenswert, dass Roboter in möglicherweise dynamischen und unstrukturierten Umgebungen autonom arbeiten können. Dazu müssen sie lernen, wie sie sich bewegen und mit ihrem Umfeld interagieren können. Dazu können sich Roboter auf eine Bibliothek von Fertigkeiten verlassen, die verwendet werden können, um einfache Bewegungen auszuführen oder komplizierte Aufgaben als eine Zusammensetzung von mehreren Fertigkeiten durchzuführen. Eine Möglichkeit zum Erlernen von Bewegungsfertigkeiten ist über menschliche Beispiele, bekannt als Lernen aus Demonstrationen (LfD, learning from demonstrations). Dies beinhaltet einen (typischerweise menschlichen) Experten, der einmal oder mehrmals eine spezifische Bewegung zeigt, die von einem Roboter imitiert werden soll.
  • Die Veröffentlichung „Using probabilistic movement primitives in robotics“ von A. Paraschos et al., in Autonomous Robots, 42:529-551, 2018, beschreibt probabilistische Bewegungsprimitiven (ProMP), was ein probabilistisches Rahmenwerk zum Erlernen und Synthetisieren von Roboterbewegungsfertigkeiten ist. ProMP repräsentiert eine Trajektorieverteilung, die auf einer kompakten Basisfunktionsdarstellung basiert. Seine probabilistische Formulierung ermöglicht Bewegungsmodulation, Parallelbewegungsaktivierung und Ausnutzung von Varianzinformationen in der Steuerung.
  • Obwohl ProMP verwendet wurde, um kartesische Bewegungen zu erlernen, erlaubt seine Formulierung nicht, Ausrichtungsbewegungen in der Form von Quaternionentrajektorien zu behandeln. Allerdings haben Quaternionen günstige Eigenschaften für die Robotersteuerung, wie etwa, dass sie eine nahezu minimale Darstellung und starke Stabilität bei Ausrichtungssteuerung mit geschlossenem Regelkreis bereitstellen. Daher sind Ansätze wünschenswert, die Robotersteuerungslernen aus Demonstrationen ermöglichen, die Quaternionentrajektorien umfassen.
  • Aus der DE 10 2020 207 085 A1 , der DE 10 2019 216 229 A1 , der EP 3 838 503 A1 , der EP 3 753 684 A1 , der WO 2017 / 129 200 A1 und der US 2021/0122 037 A1 sind weitere Aspekten von Verfahren zum Steuern von Robotern bekannt.
  • Offenbarung der Erfindung
  • Gemäß verschiedener Ausführungsformen wird ein Verfahren zur Steuerung einer Robotervorrichtung bereitgestellt, umfassend Bereitstellen von Demonstrationen für eine Roboterfertigkeit, wobei jede Demonstration eine Trajektorie demonstriert, die eine Abfolge von Roboterkonfigurationen umfasst, wobei jede Roboterkonfiguration durch ein Element eines vorbestimmten Konfigurationsraums mit der Struktur einer riemannschen Mannigfaltigkeit beschrieben wird. Das Verfahren umfasst ferner Bestimmen, für jede demonstrierte Trajektorie, einer Repräsentation der Trajektorie als ein Vektor von Gewichten von vorbestimmten grundlegenden Bewegungen der Robotervorrichtung durch Suchen eines Vektors von Gewichten, der ein Abstandsmaß zwischen der Kombination der grundlegenden Bewegung gemäß dem Vektor von Gewichten und der demonstrierten Trajektorie minimiert, wobei die Kombination auf die Mannigfaltigkeit abgebildet wird. Das Verfahren umfasst ferner Bestimmen einer Wahrscheinlichkeitsverteilung des Vektors von Gewichten durch Anpassen einer Wahrscheinlichkeitsverteilung an den Vektor von Gewichten, die für die demonstrierten Trajektorien bestimmt werden, und Steuern der Robotervorrichtung durch Durchführen von grundlegenden Bewegungen entsprechend der bestimmten Wahrscheinlichkeitsverteilung von Vektoren von Gewichten.
  • Gemäß verschiedenen Ausführungsformen stellt das oben beschriebene Verfahren eine Robotersteuerung unter Verwendung eines Ansatzes mit einer riemannschen Mannigfaltigkeit zum Codieren, Reproduzieren und Adaptieren von probabilistischen Bewegungsprimitiven dar (unter Verwendung von multivariater geodätischer Regression, wie nachfolgend ausführlich beschrieben). Insbesondere wird, gemäß verschiedenen Ausführungsformen, der Raum von Quaternionentrajektorien als eine riemannsche Mannigfaltigkeit angesehen. Im Vergleich zu nicht-geometriebewussten Ansätzen (wie etwa klassischer ProMP) erlaubt dieser Ansatz das Erlernen und die Reproduktion einer Fertigkeit durch einen Roboter, ist dabei aber weniger anfällig gegen Codieren ungenauer Daten oder Reproduzieren von verzerrten Trajektorien. Da es sich nicht auf grobe Annäherungen verlässt, ist das Modell auch besser erklärbar. Darüber hinaus bietet dieser Ansatz zusätzliche Adaptierungsmöglichkeiten, wie etwa Modulation der Trajektorieverteilungen und Mischen von Bewegungsprimitiven.
  • Die Aufgabe der Erfindung ist daher, beim Erlernen und der Reproduktion der Fertigkeit durch den Roboter weniger anfällig gegen Codieren ungenauer Daten oder Reproduzieren von verzerrten Trajektorien zu sein, hierbei besser erklärbar zu sein und zusätzliche Adaptierungsmöglichkeiten zu bieten.
  • Diese Aufgabe wird gelöst durch ein Verfahren und eine Vorrichtung mit den Merkmalen der unabhängigen Ansprüche.
  • Gemäß verschiedenen Ausführungsformen werden die demonstrierten Trajektorien als Gewichtsvektoren durch geodätische Regression repräsentiert. Dies bedeutet, dass eine Geodäte als zu jeder demonstrierten Trajektorie passend angesehen werden kann.
  • Im Folgenden werden verschiedene Beispiele gegeben.
  • Beispiel 1 ist ein Verfahren zur Steuerung einer Robotervorrichtung, wie oben beschrieben.
  • Beispiel 2 ist das Verfahren aus Beispiel 1, wobei die Wahrscheinlichkeitsverteilung der Vektoren von Gewichten durch Anpassen einer gaußschen Verteilung an die für die demonstrierten Trajektorien bestimmten Vektoren von Gewichten bestimmt wird.
  • Verwenden einer gaußschen Verteilung für Training und Reproduktion stellt eine zuverlässige Steuerung für Steuerungsszenarien bereit, die bei den Demonstrationen nicht zu sehen waren.
  • Beispiel 3 ist das Verfahren aus Beispiel 1 oder 2, wobei jede demonstrierte Trajektorie eine Roboterkonfiguration für jede Zeit einer vorbestimmten Abfolge von Zeitpunkten umfasst und wobei jede Kombination der grundlegenden Bewegungen gemäß einem Vektor von Gewichten eine Roboterkonfiguration für jede Zeit der vorbestimmten Abfolge von Zeitpunkten bestimmt und wobei, für jede demonstrierte Trajektorie, der Vektor von Gewichten bestimmt wird durch Bestimmen, aus einer Menge von möglichen Vektoren von Gewichten, des Vektors von Gewichten, für den die Kombination der grundlegenden Bewegungen gemäß dem Vektor von Gewichten und der demonstrierten Trajektorie, wobei die Kombination auf die Mannigfaltigkeit abgebildet wird, minimal unter der Menge von möglichen Vektoren von Gewichten ist, wobei der Abstand zwischen der Kombination aus grundlegenden Bewegungen, abgebildet auf die Mannigfaltigkeit, und der demonstrierten Trajektorie gegeben ist durch Summieren, über die Zeitpunkte der Abfolge von Zeitpunkten, über Terme, umfassend einen Term für jeden Zeitpunkt, der den Wert oder die Potenz des Wertes einer Metrik der Mannigfaltigkeit zwischen dem Element der Mannigfaltigkeit, gegeben durch die Kombination von grundlegenden Bewegungen zu dem Punkt in der Zeit, wenn abgebildet auf die Mannigfaltigkeit, und der demonstrierten Trajektorie umfasst.
  • Dies stellt eine effiziente Möglichkeit zum Repräsentieren einer demonstrierten Trajektorie durch einen Gewichtvektor durch Anpassen eines Gewichtsvektors an die demonstrierte Trajektorie bereit. Eine Kombination kann auf die Mannigfaltigkeit abgebildet werden durch Auswählen eines Punktes auf der Mannigfaltigkeit und Abbilden der Kombination auf die Mannigfaltigkeit durch die Exponentialfunktion des Tangentenraumes der Mannigfaltigkeit an dem ausgewählten Punkt.
  • Beispiel 4 ist das Verfahren aus einem der Beispiele 1 bis 3, umfassend, für eine der demonstrierten Trajektorien, Suchen eines Punktes der Mannigfaltigkeit und eines Vektors von Gewichten, sodass der Punkt und der Vektor von Gewichten ein Abstandsmaß zwischen der Kombination aus den grundlegenden Bewegungen gemäß dem Vektor von Gewichten und der demonstrierten Trajektorie minimieren, wobei die Kombination auf die Mannigfaltigkeit von dem Tangentenraum an dem Punkt abgebildet wird, und wobei, für jede demonstrierte Trajektorie, das Abbilden einer entsprechenden Kombination auf die Mannigfaltigkeit durchgeführt wird durch Abbilden der Kombination aus dem Tangentenraum an dem ausgewählten Punkt.
  • Mit anderen Worten, der Tangentenraum (d. h. der Punkt der Mannigfaltigkeit, an dem der Tangentenraum genommen wird) wird für eine demonstrierte Trajektorie bestimmt durch Durchführen einer Optimierung über die Gewichte und den Punkt. Dieser Tangentenraum wird dann verwendet zum Abbilden der Kombinationen oder einer beliebigen Kombination, für die dies während der Suche notwendig ist) auf die Mannigfaltigkeit für alle demonstrierten Trajektorien. Mit anderen Worten, der gleiche Tangentenraum, und damit die gleiche exponentielle Abbildung, wird für alle demonstrierten Trajektorien verwendet. Dies stellt eine effektive Möglichkeit zum Überwinden des Problems der Nutzung unterschiedlicher Tangentenräume für unterschiedliche Trajektorien bereit, die in sehr verschiedenen Tangentengewichtsvektoren resultieren können.
  • Beispiel 5 ist das Verfahren aus einem der Beispiele 1 bis 4, wobei die Trajektorie eine Ausrichtungstrajektorie ist und jede Demonstration ferner eine Positionstrajektorie demonstriert und jede Roboterkonfiguration eine Pose umfasst, die beschrieben wird durch einen Vektor im dreidimensionalen Raum und eine Ausrichtung, die durch das Element des vorbestimmten Konfigurationsraums beschrieben wird.
  • Daher können Fertigkeiten durch Demonstrieren einer Abfolge von Roboterposen, z. B. Endeffektorpositionen und -ausrichtungen, erlernt werden, wobei ein Modell für die Ausrichtungen unter Verwendung eines auf einer riemannschen Mannigfaltigkeit basierenden Ansatzes erlernt wird.
  • Beispiel 6 ist das Verfahren aus einem der Beispiele 1 bis 5, umfassend Bereitstellen von Demonstrationen für mehr als nur Roboterfertigkeiten und Bestimmen, für jede Fertigkeit, von Repräsentationen von Trajektorien und Vektoren von Gewichten und Wahrscheinlichkeitsverteilungen der Vektoren von Gewichten und Steuern der Robotervorrichtung durch Bestimmen, für jede Fertigkeit, aus der Wahrscheinlichkeitsverteilung von Vektoren von Gewicht, ein riemannschen gaußschen Verteilung von Mannigfaltigkeitspunkten (pro Punkt in der Zeit), Bestimmen einer Produktverteilung der riemannschen gaußschen Verteilungen der Fertigkeiten und Steuern der Robotervorrichtung durch Abtasten aus der Wahrscheinlichkeitsverteilung des bestimmten Produkts (pro Punkt in der Zeit).
  • Dies ermöglicht Mischen von Fertigkeiten für Fertigkeiten, die aus Demonstrationen auf riemannschen Mannigfaltigkeiten erlernt wurden.
  • Beispiel 7 ist eine Robotervorrichtungssteuerung, ausgelegt zum Ausführen des Verfahrens nach einem der Ansprüche 1 bis 6.
  • Beispiel 8 ist ein Computerprogramm, umfassend Anweisungen, die, wenn durch einen Prozessor ausgeführt, den Prozessor veranlassen, ein Verfahren aus einem der Beispiele 1 bis 6 durchzuführen.
  • Beispiel 9 ist ein computerlesbares Medium, das Anweisungen speichert, die, wenn durch einen Prozessor ausgeführt, den Prozessor veranlassen, ein Verfahren aus einem der Beispiele 1 bis 6 durchzuführen.
  • In den Zeichnungen bezeichnen in den unterschiedlichen Ansichten ähnliche Bezugszeichen allgemein dieselben Teile. Die Zeichnungen sind nicht notwendigerweise maßstabsgetreu, und der Schwerpunkt wird allgemein auf das Darstellen der Prinzipien der Erfindung gelegt. In der folgenden Beschreibung sind verschiedene Aspekte unter Bezugnahme auf die folgenden Zeichnungen beschrieben, in denen:
    • 1 zeigt einen Roboter.
    • 2 zeigt eine Darstellung einer sphärischen Mannigfaltigkeit S 2
      Figure DE102021204961B4_0001
      deren Punkte beispielsweise jeder eine mögliche Ausrichtung eines Roboterendeffektors repräsentieren können.
    • 3 stellt multivariate allgemeine lineare Regression auf der sphärischen Mannigfaltigkeit S 2
      Figure DE102021204961B4_0002
      gemäß einer Ausführungsform dar.
    • 4 zeigt ein Beispiel der Anwendung einer Ausführungsform auf Buchstaben auf einer Sphäre zu Veranschaulichungszwecken.
    • 5 stellt einen Mischprozess gemäß einer Ausführungsform für Buchstaben auf einer Sphäre zu Veranschaulichungszwecken dar.
    • 6 zeigt ein Flussdiagramm, das ein Verfahren zum Steuern einer Robotervorrichtung darstellt.
  • Die folgende ausführliche Beschreibung bezieht sich auf die zugehörigen Zeichnungen, die spezifische Einzelheiten und Aspekte dieser Offenbarung, in denen die Erfindung ausgeführt sein kann, zur Veranschaulichung darstellen. Andere Aspekte können genutzt werden, und strukturelle, logische und elektrische Änderungen können vorgenommen werden, ohne vom Schutzumfang der Erfindung abzuweichen. Die verschiedenen Aspekte dieser Offenbarung schließen sich nicht notwendigerweise gegenseitig aus, da einige Aspekte dieser Offenbarung mit einem oder mehreren anderen Aspekten dieser Offenbarung kombiniert werden können, um neue Aspekte zu bilden.
  • Im Folgenden werden verschiedene Beispiele ausführlicher beschrieben.
  • 1 zeigt einen Roboter 100.
  • Der Roboter 100 umfasst einen Roboterarm 101, beispielsweise einen Industrieroboterarm zur Behandlung oder Montage eines Werkstücks (oder eines oder mehrerer anderer Objekte). Der Roboterarm 101 umfasst Manipulatoren 102, 103, 104 und eine Basis (oder Stütze) 105, durch die die Manipulatoren 102, 103, 104 gestützt werden. Der Begriff „Manipulator“ bezieht sich auf bewegbare Elemente des Roboterarms 101, deren Betätigung physische Interaktion mit der Umgebung ermöglicht, z. B. zur Ausführung einer Aufgabe. Für die Steuerung umfasst der Roboter 100 eine (Roboter-)Steuerung 106, die dazu ausgelegt ist, die Interaktion mit der Umgebung gemäß einem Steuerungsprogramm zu implementieren. Das letzte Element 104 (am weitesten von der Stütze 105 entfernt) der Manipulatoren 102, 103, 104 wird auch als der Endeffektor 104 bezeichnet und kann ein oder mehrere Werkzeuge umfassen, wie etwa einen Schweißbrenner, ein Greifinstrument, Lackierausrüstung oder ähnliches.
  • Die anderen Manipulatoren 102, 103 (näher an der Stütze 105) können eine Positionierungsvorrichtung bilden, sodass, zusammen mit dem Endeffektor 104, der Roboterarm 101 mit dem Endeffektor 104 an seinem Ende bereitgestellt ist. Der Roboterarm 101 ist ein mechanischer Arm, der ähnliche Funktionen bereitstellen kann wie ein menschlicher Arm (möglicherweise mit einem Werkzeug an seinem Ende).
  • Der Roboterarm 101 kann Gelenkelemente 107, 108, 109 umfassen, die die Manipulatoren 102, 103, 104 miteinander und mit der Stütze 105 verbinden. Ein Gelenkelement 107, 108, 109 kann eine oder mehrere Gelenkverbindungen aufweisen, von denen jede eine drehbare Bewegung (d. h. eine Drehbewegung) und/oder eine translatorische Bewegung (d. h. eine Versetzung) für dazugehörige Manipulatoren relativ zueinander bereitstellen kann. Die Bewegung der Manipulatoren 102, 103, 104 kann mittels Aktuatoren, die durch die Steuerung 106 gesteuert werden, initiiert werden.
  • Der Begriff „Aktuator“ kann als eine Komponente verstanden werden, die dazu angepasst ist, in Reaktion darauf, angetrieben zu werden, einen Mechanismus oder Prozess zu beeinflussen. Der Aktuator kann Anweisungen, die durch die Steuerung 106 ausgegeben werden (die so genannte Aktivierung) in mechanische Bewegungen umsetzen. Der Aktuator, z. B. ein elektromechanischer Wandler, kann dazu ausgelegt sein, in Reaktion auf das Antreiben elektrische Energie in mechanische Energie umzuwandeln.
  • Der Begriff „Steuerung“ kann als ein beliebiger Typ von Logikimplementierungsentität verstanden werden, was, beispielsweise, eine Schaltung und/oder einen Prozessor, der in der Lage ist, auf einem Speichermedium gespeicherte Software, Firmware oder eine Kombination daraus auszuführen, und der Anweisungen, im vorliegenden Beispiel z. B. an einen Aktuator, ausgeben kann, umfassen kann. Die Steuerung kann, beispielsweise durch Programmcode (z. B. Software) dazu ausgelegt sein, den Betrieb eines Systems, im vorliegenden Beispiel eines Roboters, zu steuern.
  • Im vorliegenden Beispiel umfasst die Steuerung 106 einen oder mehrere Prozessoren 110 und einen Speicher 111, der Code und Daten speichert, darauf basierend, welcher Prozessor 110 den Roboterarm 101 steuert. Gemäß verschiedenen Ausführungsformen steuert die Steuerung 106 den Roboterarm 101 auf Grundlage eines im Speicher 111 gespeicherten Maschinenlernmodells 112.
  • Gemäß verschiedenen Ausführungsformen wird ein Ansatz mit einer riemannschen Mannigfaltigkeit verwendet, um Ausrichtungsbewegungsprimitiven unter Verwendung von ProMP zu erlernen, d. h. eine Erweiterung klassischer ProMP, bezeichnet als „Ausrichtungs-ProMP“, unter Verwendung einer riemannschen Mannigfaltigkeitsformulierung wird bereitgestellt.
  • Der ursprüngliche (d. h. klassische) Ansatz mit probabilistischen Bewegungsprimitiven (ProMP) behandelt Roboterfertigkeiten in euklidischen Räumen, wodurch Erlernen und Reproduzieren von Quaternionentrajektorien (die die Roboterausrichtung repräsentieren) undurchführbar wird.
  • Die im Folgenden beschriebene riemannsche Formulierung von ProMP macht Erlernen und Reproduktion von Quaternionendaten möglich. Darüber hinaus ermöglicht sie, aufgrund der hier gegebenen generischen Behandlung, eine Nutzung für generische riemannsche Mannigfaltigkeiten.
  • Im Folgenden wird eine Einführung in ProMP für die Behandlung von Roboterfertigkeiten in euklidischen Räumen gegeben.
  • Die folgenden Notationen werden nachfolgend verwendet:
    Symbol Beschreibung
    Figure DE102021204961B4_0003
    Riemannsche Mannigfaltigkeit
    T p M
    Figure DE102021204961B4_0004
    Tangentenraum der Mannigfaltigkeit
    Figure DE102021204961B4_0005
    bei p M
    Figure DE102021204961B4_0006
    T M
    Figure DE102021204961B4_0007
    Tangentenbündel (Gruppe aller Tangentenvektoren in
    Figure DE102021204961B4_0008
    )
    N ( μ )
    Figure DE102021204961B4_0009
    Gaußsche Verteilung mit Mittelwert µ ∈ ℝn und Kovarianz Σ· ∈ ℝn×n
    N M ( μ )
    Figure DE102021204961B4_0010
    Riemannsche gaußsche Verteilung mit Mittelwert μ M
    Figure DE102021204961B4_0011
    und Kovarianz Σ T μ M
    Figure DE102021204961B4_0012
    θ Parameter der gaußschen Verteilung
    ExPp(·) Exponentielle Abbildung bei p M
    Figure DE102021204961B4_0013
    Logp(·) Logarithmische Abbildung bei p M
    Figure DE102021204961B4_0014
    Γp→q(·) Paralleltransport von T p M  zu  T q M
    Figure DE102021204961B4_0015
    S m
    Figure DE102021204961B4_0016
    m-dimensionale sphärische Mannigfaltigkeit
    ϕi(zt) Normalisierte gaußsche Basisfunktion zur Zeitphase zt
    w Pro M P-Gewichtsvektor
    Ψt ProMP-Basisfunktionsmatrix bei zt
  • Im Allgemeinen wird, für eine einzelne Bewegungsausführung, eine gewisse Trajektorie τ = { y t } t = 1 T
    Figure DE102021204961B4_0017
    als eine Zeitreihe der Variable y bezeichnet. Hier kann yt, auch als Roboterkonfiguration für Zeit t bezeichnet, entweder Gelenkverbindungswinkel oder eine kartesische Position im Aufgabenraum bei Zeitschritt t repräsentieren (zusätzliche zeitliche Ableitungen von y können ebefalls berücksichtigt werden). Der klassischen ProMP-Notation folgend ist yt ein d-dimensionaler Vektor, der das Maß für ein System von d Freiheitsgraden (FG) repräsentiert, z. B. einen Roboterarm 101 mit 7 Freiheitsgraden.
  • Jeder Punkt der Trajektorie τ kann repräsentiert werden als ein lineares Basisfunktionsmodell y t = Ψ t w + ε y P ( y t | w ) = N ( y t | Ψ t w , Σ y ) ,
    Figure DE102021204961B4_0018
    wobei w ein dNϕ-dimensionaler Gewichtsvektor ist, Ψt eine d × dNϕ-dimensionale Block-Diagonalmatrix ist, die die zeitabhängigen Basisfunktionen Φt für jeden FG enthält (eine Basisfunktion für einen FG wird auch als eine grundlegende Bewegung bezeichnet, z. B. eine Bewegung in eine bestimmte Richtung, Drehung um eine bestimmte Achse), Nϕ bezeichnet die Anzahl von Basisfunktionen, und ε y N ( 0, Σ y )
    Figure DE102021204961B4_0019
    ist das u.i.v. gaußsche Rauschen mit Mittelwert Null mit Unsicherheit Σy.
  • ProMPs gehen davon aus, dass jede Demonstration durch unterschiedliche Werte des Gewichtsvektors w gekennzeichnet ist, was zu einer Verteilung P ( w ; θ ) = N ( w | μ w , Σ w )
    Figure DE102021204961B4_0020
     
    Figure DE102021204961B4_0021
    führt. Dann kann eine volle Trajektorie als eine Zusammensetzung der Basisfunktionen zu jedem t zusammen mit einem Gewicht w, das aus P ( w ; θ )
    Figure DE102021204961B4_0022
    gezogen wird, modelliert werden. Infolgedessen kann die Verteilung des Zustands P ( y t ; θ )
    Figure DE102021204961B4_0023
    für die Zeit t berechnet werden als P ( y t ; θ ) = N ( y t | Ψ t w , Σ y ) N ( w | μ w , Σ w ) d w   = N ( y t | Ψ t μ w , Ψ t Σ w Ψ t T + Σ y ) ,
    Figure DE102021204961B4_0024
    woraus sowohl der Mittelwert als auch die Varianz bei jedem Zeitschritt t geschätzt werden.
  • Beim Lernen aus Demonstrationen unterscheiden sich die Beispieltrajektorien häufig in ihrer zeitlichen Länge. ProMP überwindet dieses Problem durch Einführen einer Phasenvariable zum Entkoppeln der Daten von den Zeitinstanzen, was seinerseits eine zeitliche Modulation ermöglicht. In diesem Fall reicht die Demonstration von z0 = 0 bis zT = 1, was die demonstrierte Trajektorie neu definiert als τ = { y t } t = z 0 z T .
    Figure DE102021204961B4_0025
    Die Basisfunktionen, die Ψ bilden, hängen ebenfalls von der Phasenvariable z ab. Insbesondere verwenden ProMP gaußsche Basisfunktionen für taktbasierte Bewegungen, definiert als b i ( z t ) = exp ( ( z t c i ) 2 2 h ) ,
    Figure DE102021204961B4_0026
    mit Breite h und Mitte ci, die häufig experimentell konzipiert sind. Diese gaußschen Basisfunktionen werden dann normalisiert, was zu ϕ i ( z t ) = b i ( z t ) Σ j = 1 n b j ( z t )
    Figure DE102021204961B4_0027
    führt.
  • Allgemein gesprochen, besteht der Lernprozess von ProMP hauptsächlich im Abschätzen der Gewichtsverteilung P(w; θ). Dazu wird ein Gewichtsvektor wi, der die i-te Demonstration wie in (1) repräsentiert, mittels einer Maximum-Likelihood-Abschätzung geschätzt. Dies führt zu einer linearen Gratregressionslösung der Form w i = ( Ψ T Ψ+ λ I ) 1 Ψ T Y i ,
    Figure DE102021204961B4_0028
    wobei Y i = [ y i ,1 T y i , T T ] T
    Figure DE102021204961B4_0029
    alle beobachteten Trajektoriepunkte verkettet und Ψ aus allen Zeitinstanzen für die Basisfunktionsmatrix Ψt besteht. Dann können, bei einer gegebenen Menge von N Demonstrationen, die Gewichtsverteilungsparameter θ = {µww} durch ein Maximum-Likelihood-Verfahren geschätzt werden. Um sich an neue Situationen anzupassen, ermöglicht ProMP Trajektoriemodulation zu Wegpunkten oder Zielpositionen durch Konditionieren der Bewegung zum Erreichen eines gewünschten Trajektoriepunkts y i *
    Figure DE102021204961B4_0030
    mit zugehöriger Kovarianz Σ y * .
    Figure DE102021204961B4_0031
    Dies führt zur konditionalen Wahrscheinlichkeit P ( w | y t * ) N ( y t * | Ψ t w , Σ y * ) N ( w | μ w , Σ w ) ,
    Figure DE102021204961B4_0032
    deren Parameter wie folgt berechnet werden können (unter Annahme einer gaußschen Verteilung) μ w * = Σ w * ( Ψ t T Σ y * 1 y i * + Σ w 1 μ w ) , Σ w * = ( Σ w 1 + Ψ t T Σ y * 1 Ψ t ) 1 .
    Figure DE102021204961B4_0033
  • Durch Berechnen eines Produkts von Trajektorieverteilungen können unterschiedliche Bewegungsprimitiven zu einer einzelnen Bewegung gemischt werden. Insbesondere folgt die gemischte Trajektorie bei jedem Zeitschritt t einer Verteilung P ( y t + ) = s = 1 S P s ( y t ) α t , s ,
    Figure DE102021204961B4_0034
     
    Figure DE102021204961B4_0035
    für eine Menge von S unterschiedlichen ProMPs P s ( y t ) = N ( y t | μ t , s , Σ t , s ) ,
    Figure DE102021204961B4_0036
     
    Figure DE102021204961B4_0037
    deren Einfluss auf die abschließende Bewegung gemäß dem Mischgewicht αt,s variiert. Dann werden die Parameter von P ( y t + ) = N ( y t + | μ t + , Σ t + )
    Figure DE102021204961B4_0038
    einfach geschätzt aus dem gewichteten Produkt der gaußschen Verteilungen Σ t + = ( Σ s = 1 S   α t , s   Σ t , s 1 ) 1 , μ t + = Σ t + ( Σ s = 1 S   α t , s   Σ t , s 1   μ t , s ) .
    Figure DE102021204961B4_0039
  • Aufgabenparameter ermöglichen das Anpassen der Roboterbewegung, beispielsweise, an Zielobjekte zum Erreichen von Aufgaben. Solche Informationen sind häufig während Demonstrationen verfügbar und können in die ProMP-Formulierung integriert werden. Formell berücksichtigt eine ProMP den externen Zustand 9 und erlernt eine affine Abbildung von 9 auf den mittleren Gewichtsvektor µw, was zu einer gemeinsamen Wahrscheinlichkeitsverteilung führt: P ( w , s ^ ) = N ( w | O s ^ + o , Σ w ) N ( s ^ | μ s ^ , Σ s ^ ) ,
    Figure DE102021204961B4_0040
    wobei {O,o} unter Verwendung von linearer Gratregression erlernt werden.
  • Wie oben erwähnt, haben Quaternionen günstige Eigenschaften für die Robotersteuerung. Da allerdings Quaternionen (die für Robotersteuerung verwendet werden) eine Einheitsnorm-Beschränkung erfüllen, bilden sie keinen Vektorraum, sodass die Verwendung von herkömmlichen euklidischen Raumverfahren zum Behandeln und Analysieren von Variablen mit Quaternionenwerten (mit Einheitsnorm) nicht geeignet ist. Gemäß verschiedenen Ausführungsformen wird riemannsche Geometrie genutzt, um ProMPs im Quaternionenraum zu formulieren.
  • Eine riemannsche Mannigfaltigkeit
    Figure DE102021204961B4_0041
    ist ein m-dimensionaler topologischer Raum, für den jeder Punkt lokal einem euklidischen Raum ℝm ähnelt und der eine global definierte Differentialstruktur aufweist. Für jeden Punkt x M
    Figure DE102021204961B4_0042
    gibt es einen Tangentenraum T x M ,
    Figure DE102021204961B4_0043
    der ein Vektorraum ist, der aus den Tangentenvektoren aller möglichen glatten Kurven besteht, die durch x verlaufen. Eine riemannsche Mannigfaltigkeit ist mit einem glatt-variierenden positiv-definiten inneren Produkt versehen, einer so genannten riemannschen Metrik, die es ermöglicht, Kurvenlängen in
    Figure DE102021204961B4_0044
    zu definieren. Diese Kurven, Geodäten genannt, sind die Verallgemeinerung von geraden Linien im euklidischen Raum auf riemannsche Mannigfaltigkeiten, da sie die Kurven mit minimaler Länge zwischen zwei Punkten in
    Figure DE102021204961B4_0045
    repräsentieren.
  • 2 zeigt eine Darstellung einer sphärischen Mannigfaltigkeit S2, deren Punkte beispielsweise jeder eine mögliche Ausrichtung eines Roboterendeffektors repräsentieren können.
  • Zwei Punkte x und y werden auf der Sphäre angezeigt, die durch die Steuerung 106 verwendet werden können, um zwei unterschiedliche Ausrichtungen des Roboterendeffektors 104 zu repräsentieren.
  • Der kürzeste Abstand zwischen den zwei Punkten in dem umgebenden Raum wäre eine gerade Linie 201, während der kürzeste Pfad auf der Mannigfaltigkeit eine Geodäte 202 ist.
  • Zur Nutzung der euklidischen Tangentenräume können Hin- und Herabbildungen zwischen dem Tangentenraum T x M
    Figure DE102021204961B4_0046
    verwendet werden, die als die exponentielle Abbildung bzw. die logarithmische Abbildung bezeichnet werden.
  • Die exponentielle Abbildung Exp x : T x M M
    Figure DE102021204961B4_0047
    bildet einen Punkt u im Tangentenraum von x auf einen Punkt y auf der Mannigfaltigkeit ab, sodass er auf der Geodäte liegt, die bei x in die Richtung u startet, sodass der Geodätenabstand dM zwischen x und y gleich der Norm des Abstands zwischen x und u ist. Die Umkehroperation wird die logarithmische Abbildung Log x : M T x M
    Figure DE102021204961B4_0048
    genannt, d. h. u = Logx (y).
  • Eine weitere hilfreiche Operation über Mannigfaltigkeiten ist der Paralleltransport Γ x y : T x M T y M ,
    Figure DE102021204961B4_0049
    der Elemente zwischen Tangentenräumen bewegt, sodass das innere Produkt zwischen zwei Elementen im Tangentenraum konstant bleibt.
  • In 2 sind beispielsweise Γ(υ1), Γ(υ2) die paralleltransportierten Vektoren υ1 und υ2 von T x M  zu  T y M
    Figure DE102021204961B4_0050
    (der Index x→y wird der Einfachheit halber ausgelassen).
  • Für das Folgende wird eine riemannsche gaußsche Verteilung einer zufälligen Variable p M
    Figure DE102021204961B4_0051
    eingeführt als N M ( p | μ , Σ ) = 1 ( 2 π ) d | Σ | e 1 2 Log μ ( x ) T Σ 1 Log μ ( x ) ,
    Figure DE102021204961B4_0052
    mit Mittelwert μ M
    Figure DE102021204961B4_0053
    und Kovarianz Σ T μ M .
    Figure DE102021204961B4_0054
    Diese riemannsche gaußsche Verteilung entspricht einer angenäherten maximalen Entropieverteilung für riemannsche Mannigfaltigkeiten.
  • Folgendes sind die Ausdrücke für den riemannschen Abstand, exponentielle und logarithmische Abbildungen sowie Paralleltransportoperation für die sphärische Mannigfaltigkeit S m .
    Figure DE102021204961B4_0055
    Operation Formel
    d M ( x , y )
    Figure DE102021204961B4_0056
    arccos(xTy)
    ExpX(u) xcos ( u ) + u ¯ sin ( u )  mit  u ¯ = u u
    Figure DE102021204961B4_0057
    Logx(y) d M ( x , y ) y x T yx y x T yx
    Figure DE102021204961B4_0058
    Γx-y(v) ( xsin ( u ) u ¯ T + u ¯ cos ( u ) u ¯ T + ( I u ¯ u ¯ T ) ) v  mit  u ¯ = u u  und  u = Log x ( y )
    Figure DE102021204961B4_0059
  • Gemäß verschiedenen Ausführungsformen wird geodätische Regression verwendet (z. B. durch Steuerung 106), die lineare Regression für die riemannsche Mannigfaltigkeit generalisiert. Das geodätische Regressionsmodell ist definiert als y = Exp y ˜ ( ε ) ,  mit  y ˜ = Exp p ( x u ) ,
    Figure DE102021204961B4_0060
    wobei y M
    Figure DE102021204961B4_0061
    und x ∈ ℝ die Ausgangs- bzw. Eingangsvariablen sind, p M
    Figure DE102021204961B4_0062
    ein Basispunkt auf der Mannigfaltigkeit ist, u T p M
    Figure DE102021204961B4_0063
    ein Vektor im Tangentenraum bei p ist und der Fehlerterm ε eine zufällige Variable ist, die Werte im Tangentenraum bei ỹ annimmt. Als eine Analogie zu linearer Regression lässt sich (p, u) als eine Regressionskonstante p und ein Anstieg u interpretieren.
  • Sei nun eine Menge von Punkten { y 1 , , y T } M  und  [ x 1 , , x T ]
    Figure DE102021204961B4_0064
    betrachtet. Das Ziel geodätischer Regression ist, eine geodätische Kurve γ M
    Figure DE102021204961B4_0065
    zu finden, die am besten die Beziehung zwischen allen T Paaren (xi,yi) modelliert. Um dies zu erreichen, wird die Summe der quadrierten riemannschen Abstände (d. h. Fehler) zwischen den Modellschätzungen und den Beobachtungen minimiert, das heißt, E ( p , u ) = 1 2 Σ i = 1 T   d M ( y ^ i , y i ) 2 ,
    Figure DE102021204961B4_0066
    wobei ŷi = Expp(xiu) die Modellschätzung auf der Mannigfaltigkeit M  ist d M ( y ^ i , y i ) = Log y ˜ i ( y i )
    Figure DE102021204961B4_0067
    der riemannsche Fehler ist und das Paar ( p , u ) T M
    Figure DE102021204961B4_0068
    ein Element des Tangentenbündels T M
    Figure DE102021204961B4_0069
    ist. Ein Kleinste-Quadrate-Schätzer des geodätischen Modells kann als ein Minimierer der obigen Summen von quadrierten riemannschen Abständen formuliert werden, d. h. ( p ^ , u ^ ) = argmin ( p , u ) T M 1 2 Σ i = 1 T d M ( y ^ i , y i ) 2 .
    Figure DE102021204961B4_0070
  • Allerdings ergibt (9) keine analytische Lösung wie (3). Eine Lösung kann durch ein Gradientenverfahren erhalten werden, das erfordert, die Ableitung der riemannschen Abstandsfunktion und die Ableitung der exponentiellen Abbildung zu berechnen. Letztere wird in Ableitungen bezüglich des anfänglichen Punkts p und der anfänglichen Geschwindigkeit u aufgeteilt. Diese Gradienten können in der Form von Jacobi-Feldern (d. h. Lösungen einer Gleichung zweiter Ordnung, die gewissen Anfangsbedingungen unter einem riemannschen Krümmungstensor unterliegt) berechnet werden.
  • Es ist anzumerken, dass das obige geodätische Modell exklusiv eine skalare unabhängige Variable x ∈ ℝ berücksichtigt, was bedeutet, dass die Ableitungen durch Jacobi-Felder entlang einer einzelnen geodätischen Kurve erhalten werden, die durch einen einzelnen Tangentenvektor u parametrisiert wird. Die Berechnung von Jacobi-Feldern hängt von den so genannten adjungierten Operatoren ab, die tatsächlich eine Rolle eines Paralleltransports auf den Fehlertermen der geodätischen Regression spielen. Die Erweiterung auf multivariate Fälle mit x ∈ ℝn erfordert einen geringfügig verschiedenen Ansatz, der beinhaltet, mehrere geodätische Kurven zu identifizieren (die als „Basis“-Vektoren im euklidischen Raum angesehen werden können). Multivariate allgemeine lineare Modelle auf riemannschen Mannigfaltigkeiten (MGLM) bieten eine Lösung für dieses Problem.
  • MLGM verwendet eine geodätische Basis U = [u1...un], gebildet durch mehrere Tangentenvektoren u j T p M ,
    Figure DE102021204961B4_0071
    einen für jede Dimension von x. Dann kann das Problem (9) umformuliert werden als ( p ^ , u ^ j ) = argmin ( p , u j ) T M j 1 2 Σ i = 1 T d M ( y ^ i , y i ) 2 ,
    Figure DE102021204961B4_0072
    mit ŷi = Expp(Uxi). Zum Lösen (10) können die entsprechenden Gradienten berechnet werden durch Nutzung der Einsicht, dass die adjungierten Operatoren Paralleltransportoperationen ähneln. Auf diese Weise kann die Hürde des Konzipierens spezieller adjungierter Operatoren für den multivariaten Fall überwunden werden, und stattdessen können Paralleltransportoperationen durchgeführt werden, um die notwendigen Gradienten anzunähern. Dieses multivariate Rahmenwerk dient der Berechnung des Gewichtsvektors, analog zu (3), für jede Demonstration, die auf einer riemannschen Mannigfaltigkeit M liegt.
  • Im Folgenden wird erläutert, wie MLGM verwendet werden können, wenn die Demonstrationsdaten Quaternionentrajektorien entsprechen, d. h. M S 3 .
    Figure DE102021204961B4_0073
    Wenn menschliche Demonstrationen durch kartesische Bewegungsmuster (über kinästhetisches Lehren oder Teleoperation) gekennzeichnet sind, ist es notwendig, ein Lernmodell 112 zu haben, das sowohl translatorische als auch rotatorische Bewegungen des Roboterendeffektors kapselt. Dies bedeutet, dass eine gewisse Demonstrationstrajektorie τ = { y t } t = 1 T
    Figure DE102021204961B4_0074
    jetzt aus Datenpunkten y t 3 × S 3
    Figure DE102021204961B4_0075
    zusammengesetzt ist, die die vollständige kartesische Pose des Endeffektors bei Zeitschritt t repräsentieren. In diesem Fall ist die Herausforderung das Erlernen einer ProMP im Ausrichtungsraum, da der euklidische Fall in ℝ3 der klassischen ProMP folgt.
  • Zunächst wird ein äquivalenter Ausdruck für ŷi, im MGLM-Rahmenwerk, eingeführt, sodass er dem linearen Basisfunktionsmodell in (1) ähnelt. Speziell die Schätzung ŷi = Expp(Uxi) ≡ Expp(Xiu), wobei X i = [ x i T 0 0 x i T ]  und  u = [ u 1 u n ] .
    Figure DE102021204961B4_0076
  • Diese Äquivalenz erweist sich als hilfreich beim Aufstellen von Analogien zwischen der klassischen Formulierung von ProMPs und unserem vorgeschlagenen Ansatz für Ausrichtungstrajektorien. Ähnlich zu (1) kann ein Punkt y t M
    Figure DE102021204961B4_0077
    von τ repräsentiert werden als ein geodätisches Basisfunktionsmodell P ( y t | w ) = N M ( y t | Exp p ( Ψ t w ) , Σ y ) ,
    Figure DE102021204961B4_0078
    wobei p ein fester Basispunkt auf
    Figure DE102021204961B4_0079
    ist, w = [ w 1 T w N ϕ T ] T
    Figure DE102021204961B4_0080
    ein großer Gewichtsvektor ist, der Nϕ Gewichtsvektoren w n T p M
    Figure DE102021204961B4_0081
    verkettet, Ψt die gleiche Matrix von zeitabhängigen Basisfunktionen wie in (1) ist und Σy eine Kovarianzmatrix ist, die die Unsicherheit auf T μ y M
    Figure DE102021204961B4_0082
    codiert. Zwei spezifische Aspekte an dieser Formulierung verdienen spezielle Aufmerksamkeit, und zwar, dass (i) der Mittelwert der riemannschen gaußschen Verteilung in (12), das heißt Exp p ( Ψ t w ) M
    Figure DE102021204961B4_0083
    die erwähnte äquivalente Formulierung von MGLM nutzt; und dass (ii) die Gewichtsvektoren, die w in (12) bilden, dem Vektor entsprechen, der die geodätische Basis von MGLM bildet.
  • Da jede Demonstration durch unterschiedliche Gewichtsvektoren w gekennzeichnet ist, kann erneut eine Verteilung P ( w ; θ ) = N ( w | μ w , Σ w )
    Figure DE102021204961B4_0084
    erhalten werden. Daher kann die Randverteilung von yt berechnet werden als P ( y ; θ ) = N M ( y | Exp p ( Ψ w ) , Σ y ) N ( w | μ w , Σ w ) d w ,
    Figure DE102021204961B4_0085
    wobei die Randverteilung von zwei Wahrscheinlichkeitsverteilungen abhängt, die auf unterschiedlichen Mannigfaltigkeiten liegen (der Zeitindex wird hier und im Folgenden der Einfachheit halber ausgelassen). Allerdings hängt der Mittelwert µy von einem einzelnen festen Punkt p ∈ M und µw ∈ TpM ab. Diese beiden Beobachtungen werden ausgenutzt, um die Randverteilung (13) auf dem Tangentenraum TpM wie folgt zu lösen P ( Log p ( y ) ) = N ( Log p ( y ) | Ψ w , Σ ˜ y ) N ( w | μ w , Σ w ) d w ,   = N ( Log p ( y ) | Ψ μ w , Ψ Σ w Ψ T + Σ ˜ y ) d w
    Figure DE102021204961B4_0086
    wobei Σ ˜ y = Γ μ y p ( Σ y )
    Figure DE102021204961B4_0087
    die paralleltransportierte Kovarianz Ey von µy zu p ist. Es ist anzumerken, dass diese Randverteilung immer noch auf dem Tangentenraum T p M
    Figure DE102021204961B4_0088
    liegt, sodass sie unter Verwendung der exponentiellen Abbildung zurück auf
    Figure DE102021204961B4_0089
    abgebildet wird, was zur abschließenden Randverteilung führt: P ( y ; θ ) = N M ( y | Exp p ( Ψ μ w ) , Σ ^ y ) d w ,
    Figure DE102021204961B4_0090
    wobei Σ ^ y = Γ p μ ^ y ( Ψ Σ w Ψ T + Σ ˜ y ) .
    Figure DE102021204961B4_0091
  • Wie oben beschrieben, läuft der Lernprozess von ProMP auf das Schätzen der Gewichtsverteilung P ( w ; θ )
    Figure DE102021204961B4_0092
    hinaus. Dazu schätzt, für Demonstration i, die Steuerung 106 einen Gewichtsvektor w ^ i = [ w ^ 1 T w ^ N ϕ T ] T
    Figure DE102021204961B4_0093
    unter Verwendung von MGLM. Zum Starten wird der zuvor eingeführte äquivalente Ausdruck für yt verwendet, wobei Expp(Wϕt) ≡ Expptw), mit W = [w1 ... wNϕ ] und wobei Nϕ die Anzahl von Basisfunktionen ist. Sei darüber hinaus eine demonstrierte Quaternionentrajektorie τ i = { y t } t = 1 T
    Figure DE102021204961B4_0094
    mit y t S 3
    Figure DE102021204961B4_0095
    betrachtet. Dann wird, analog zu (3) im euklidischen Raum, die Gewichtsschätzung hier durch Ausnutzen von (10) erhalten, was führt zu ( p ^ , w ^ n ) = argmin ( p , w n ) T M n 1 2 Σ i = 1 T d M ( Exp p ( w ϕ t ) ,y t ) 2 ,
    Figure DE102021204961B4_0096
    wobei ϕt der Vektor von Basisfunktionen zur Zeit t ist und W die Menge von geschätzten Tangentengewichtsvektoren w ^ n T p ^ M
    Figure DE102021204961B4_0097
    (d. h. Nϕ Tangentenvektoren, die vom Punkt p M
    Figure DE102021204961B4_0098
    ausgehen) enthält.
  • 3 stellt multivariate allgemeine lineare Regression auf der sphärischen Mannigfaltigkeit S 2
    Figure DE102021204961B4_0099
    dar, die zum Erlernen der Gewichte von Ausrichtungs-ProMPs verwendet wird. Bei gegebener Trajektorie y werden der Ursprung p des Tangentenraums T p M
    Figure DE102021204961B4_0100
    und die Tangentengewichtsvektoren wn über (15) geschätzt.
  • Zum Lösen von (15) werden die Gradienten von E(p, wn) bezüglich p und jedem wn berechnet. Wie oben erläutert, hängen diese Gradienten von den so genannten adjungierten Operatoren ab, die, allgemein gesprochen, jeden Fehlerterm Log y ^ t ( y t )
    Figure DE102021204961B4_0101
    von T y ^ t M
    Figure DE102021204961B4_0102
    auf T p M
    Figure DE102021204961B4_0103
    bringen, mit ŷt = Expp(Wϕt). Daher können diese adjungierten Operatoren als Paralleltransportoperationen angenähert werden. Dies führt zur folgenden Umformulierung der Fehlerfunktion von (15) E ( p , w n ) = 1 2 Σ t = 1 T Γ y ^ t p ( Log y ^ t ( y t ) ) 2 .
    Figure DE102021204961B4_0104
  • Danach entsprechen die angenäherten Gradienten der Fehlerfunktion E(p,wn) Folgendem: p E ( p , w n ) Σ i = 1 T   Γ y ^ t p ( Log y ^ t ( y t ) ) , w n E ( p , w n ) Σ i = 1 T   ϕ t , n   Γ y ^ t p ( Log y ^ t ( y t ) ) .
    Figure DE102021204961B4_0105
  • Mit den obigen Gradienten kann die Steuerung 106 sowohl den Vektor pi als auch die Gewichtsmatrix Wi, gebildet durch Nϕ Vektoren wn, für jede Demonstration i schätzen. Es ist anzumerken, dass jede Demonstration zu unterschiedlichen Schätzungen von p führen kann, was den Ursprung in der Mannigfaltigkeit
    Figure DE102021204961B4_0106
    definiert, der verwendet wird, um die einzelnen Tangentengewichtsvektoren w n T p M
    Figure DE102021204961B4_0107
    zu schätzen. Dies kann unterschiedliche Tangentenräume über die Demonstrationen und damit sehr verschiedene Tangentengewichtsvektoren produzieren. Eine effektive Möglichkeit, dieses Problem zu überwinden, ist anzunehmen, dass alle Demonstrationen den gleichen Tangentenraumursprung p gemeinsam nutzen, was die gleiche Annahme ist, die beim Definieren des geodätischen Basisfunktionsmodells (12) getroffen wurde. Daher schätzt, gemäß verschiedenen Ausführungsformen, die Steuerung 106 p für eine einzelne Demonstration und verwendet dies zum Schätzen aller Tangentengewichtsvektoren für die gesamte Menge von Demonstrationen. Dann können, bei einer gegebenen Menge von N Demonstrationen, die Gewichtsverteilungsparameter θ = {µw, Σw} durch ein Maximum-Likelihood-Standardverfahren geschätzt werden als w n T p M 4 .
    Figure DE102021204961B4_0108
    Ein Beispiel eines Algorithmus zum Erlernen eines Robotersteuerungsmodells 112 durch Ausrichtungs-ProMP, den die Steuerung 106 durchführen kann, nachdem für sie eine Menge von N Demonstrationen bereitgestellt wurde (z. B. durch einen Benutzer durch Bewegen des Roboterarms 101 von Hand bereitgestellt wurde), ist wie folgt.
    Figure DE102021204961B4_0109
    Wie bei klassischer ProMP kann die Steuerung 106 Trajektorienmodulation (d. h. zum Anpassen an neue Situationen, d. h. Steuerungsszenarien) durchführen durch Konditionieren der Bewegung, um einen gewünschten Trajektoriepunkt y t * M
    Figure DE102021204961B4_0110
    mit zugehöriger Kovarianz Σ y * T y t * M
    Figure DE102021204961B4_0111
    zu erreichen. Dies führt zu der konditionalen Wahrscheinlichkeit P ( w | y t * ) N M ( y t * | Exp p ( Ψ t w ) , Σ y * ) N ( w | μ w , Σ w ) ,
    Figure DE102021204961B4_0112
    die von zwei Wahrscheinlichkeitsverteilungen abhängt, die auf unterschiedlichen Mannigfaltigkeiten liegen, ähnlich wie (13). Hier wird erneut die Tatsache ausgenutzt, dass der Mittelwert µy von einem einzelnen und festen p M
    Figure DE102021204961B4_0113
    abhängt, was seinerseits die Basis des Tangentenraums T p M
    Figure DE102021204961B4_0114
    ist, auf dem die Gewichtsverteilung liegt. Dies ermöglicht ein Umschreiben der konditionalen Verteilung wie folgt P ( w | Log p ( y t * ) ) N ( Log p ( y t * ) | Ψ t w , Σ ˜ y * ) N ( w | μ w , Σ w ) ,   = N ( w | μ w * , Σ w * ) ,
    Figure DE102021204961B4_0115
    wobei Σ ˜ y * = Γ y t * p ( Σ y * ) ,  und  { μ w * , Σ w * }
    Figure DE102021204961B4_0116
    die Parameter zum Schätzen der resultierenden konditionalen Verteilung sind. Da beide Verteilungen jetzt auf T p M
    Figure DE102021204961B4_0117
    liegen, was in den euklidischen Raum eingebettet ist, können die neuen Verteilungsparameter ähnlich wie bei der klassischen ProMP-Konditionierungsprozedur geschätzt werden, mit spezieller Beachtung des Paralleltransportierens der Kovarianzmatrizen. Die neuen Gewichtsverteilungsparameter sind dann μ w * = Σ w * ( Ψ t T Σ ˜ y * 1 Log p ( y t * ) + Σ w 1 μ w ) , Σ w * = ( Σ w 1 + Ψ t T Σ ˜ y * 1 Ψ t ) 1 .
    Figure DE102021204961B4_0118
  • Aus der resultierenden neuen Gewichtsverteilung kann jetzt eine neue Randverteilung P ( y , θ * )
    Figure DE102021204961B4_0119
    über (14) erhalten werden.
  • Hinsichtlich des Mischens werden bei klassischen ProMP eine Menge von Bewegungsprimitiven unter Verwendung eines Produkts von gaußschen Verteilungen gemischt. Was das Mischen von Primitiven in
    Figure DE102021204961B4_0120
    angeht, ist zu berücksichtigen, dass jede Trajektorienverteilung durch eine Menge von Gewichtsvektoren parametrisiert ist, die auf unterschiedlichen Tangentenräumen T p M
    Figure DE102021204961B4_0121
    liegen. Daher muss das gewichtete Produkt von gaußschen Verteilungen neu formuliert werden. Dazu wird, gemäß verschiedenen Ausführungsformen, eine gaußsche Produktformulierung auf riemannschen Mannigfaltigkeiten verwendet, wobei die Log-Likelihood des Produkts unter Verwendung eines gradientenbasierten Ansatzes iterativ maximiert wird.
  • Formal ist die Log-Likelihood eines Produkts von riemannschen gaußschen Verteilungen gegeben durch (Ausfaktorieren von konstanten Termen) l ( y ) = 1 2 Σ s = 1 S Log μ y , s ( y ) T Σ y , s 1 Log μ y , s ( y ) ,
    Figure DE102021204961B4_0122
    wobei µy,s und Σy,s die Parameter der Randverteilung P s ( y; θ )
    Figure DE102021204961B4_0123
    für die Fertigkeit s sind. Es ist anzumerken, dass die logarithmischen Abbildungen in (20) auf unterschiedlichen Tangentenräumen T μ y , s M , s = 1 S
    Figure DE102021204961B4_0124
    wirken. Um die Log-Likelihood-Maximierung durchzuführen, werden die Basis und das Argument der Abbildungen vertauscht, wobei sichergestellt wird, dass die ursprüngliche Log-Likelihood-Funktion unverändert bleibt. Dazu können die Beziehung Logx(y) = -Logy(x) wie auch die Paralleltransportoperationen ausgenutzt werden, um dieses Problem zu überwinden, was führt zu J = 1 2 Σ s = 1 S Log μ + ( μ y , s ) T Λ y , s Log μ + ( μ y , s )
    Figure DE102021204961B4_0125
    wobei µ+ der Mittelwert der resultierenden gaußschen Verteilung (die geschätzt wird) ist, und μ y , s = Γ μ y , s μ + ( Σ y , s 1 ) .
    Figure DE102021204961B4_0126
    Gleichung (21) kann umgeschrieben werden durch Definieren des Vektors ε ( μ + ) = [ Log μ + ( μ y ,1 ) T Log μ + ( μ y , s ) T ] T
    Figure DE102021204961B4_0127
    und der Blockdiagonalmatrix Λ = blockdiag(Λy,1, ··· ,Λy,S). Dies führt dazu, dass J die Form der Zielfunktion hat, die verwendet wird, um den empirischen Mittelwert v einer gaußschen Verteilung auf einer riemannschen Mannigfaltigkeit
    Figure DE102021204961B4_0128
    zu berechnen, J ( v ) = 1 2 ε ( v ) T Λ ( v ) ,
    Figure DE102021204961B4_0129
    von der aus es möglich ist, den Mittelwert iterativ zu berechnen als v k + 1 Exp v k ( Δ   v )  mit  Δ   v = ( J T Λ J ) 1 J T Λ ε ( v ) ,
    Figure DE102021204961B4_0130
    wobei J die Jacobi-Determinante von ε(v) bezüglich der Basis des Tangentenraums von
    Figure DE102021204961B4_0131
    bei vk ist.
  • Die Steuerung 106 kann jetzt eine ähnliche iterative Schätzung des Mittelwerts µ+ wie folgt ausführen: Δ μ k + = ( s = 1 S α s Λ y , s ) 1 ( s = 1 S α s Λ y , s Log μ k + ( μ y , s ) ) , μ k + 1 + Exp μ k + ( Δ μ k + ) ,
    Figure DE102021204961B4_0132
    wobei Λ y , s = Γ μ y , s μ k + ( Σ y , s 1 ) .
    Figure DE102021204961B4_0133
    Nach Konvergenz bei Iteration K erhält die Steuerung 106 die abschließenden Parameter der Verteilung P ( y + ) = N M ( y + | μ + , Σ + )
    Figure DE102021204961B4_0134
    wie folgt μ + μ k +  und  Σ + = ( s = 1 S α s Λ y , s ) 1 .
    Figure DE102021204961B4_0135
  • Wie oben erläutert, ermöglicht klassische ProMP Anpassen der Gewichtsverteilung P ( w , θ ) = N ( w | μ w , Σ w )
    Figure DE102021204961B4_0136
    als eine Funktion eines externen Aufgabenparameters 9, wobei angenommen wird, dass Zugang zu den Werten von ŝ für jede Demonstration vorhanden ist. Aufgabenparametrisierung gilt in ähnlicher Weise für Ausrichtungs-ProMP, da die Gewichtsvektoren w n T p M 4 ,
    Figure DE102021204961B4_0137
    und daher (6), direkt angewendet werden kann, solange der Aufgabenparameter ŝ euklidisch ist. Wenn allerdings ŝ zu einer riemannschen Mannigfaltigkeit gehört, ist ein allgemeinerer Ansatz erforderlich.
  • Wenn gilt, dass der Aufgabenparameter ŝ ∈ M, kann die Steuerung 106 eine gemeinsame Wahrscheinlichkeitsverteilung P ( w , s ^ )
    Figure DE102021204961B4_0138
    unter Verwendung eines gaußschen Mischmodells auf riemannschen Mannigfaltigkeiten erlernen. Anschließend kann die Steuerung 106 gaußsche Mischregression einsetzen, um P ( w | s ^ * )
    Figure DE102021204961B4_0139
    während der Reproduktion zu berechnen, wenn ein neuer Aufgabenparameter 9* bereitgestellt wird.
  • Zur besseren Veranschaulichung, wie Modelllernen, Trajektoriereproduktion, Wegpunktadaptation und Fertigkeitsmischung bei Ausrichtungs-ProMP funktionieren, wurde eine Datenmenge von handgeschriebenen Buchstaben verwendet. Die ursprünglichen Trajektorien wurden in ℝ2 erzeugt und anschließend durch eine einfache Abbildung auf Einheitsnorm-Vektoren auf S 2
    Figure DE102021204961B4_0140
    projiziert. Jeder Buchstabe in der Datenmenge wurde N = 8 Mal demonstriert, und ein einfacher Glättungsfilter wurde auf jede Trajektorie angewendet, hauptsächlich zum Zwecke der Visualisierung. Vier ProMP-Modelle wurden trainiert, eins für jeden der Buchstaben der Menge {G, I, J, S}. Die für I und J trainierten Modelle verwendeten Nϕ = 30 Basisfunktionen mit gleichmäßig verteilten Mitten, für die Buchstaben G und 5 wurden Nϕ = 60 Basisfunktionen verwendet. Die Ausrichtungs-ProMP-Modelle wurden gemäß dem oben gegebenen Algorithmus trainiert, mit anfänglicher Lernrate α = 0,005 und entsprechender oberer Grenze αmax = 0,03.
  • 4 zeigt die Demonstrationsdaten, die über (13) berechnete Randverteilung P ( y ; θ )
    Figure DE102021204961B4_0141
    und die aus (18) und (19) erhaltene Wegpunktadaptation, entsprechend den Modellen, die für die Buchstaben G und 5 trainiert wurden. Der Mittelwert der Randverteilung folgt dem Demonstrationsmuster, und das entsprechende Kovarianzprofil erfasst die Variabilität der Demonstrationen in S 2 .
    Figure DE102021204961B4_0142
    Es sollte hingewiesen werden auf die Komplexität der Trajektorien der Buchstaben G und 5, die sehr ausgeklügelte „Bewegungs“ muster zeigen, die komplexer sein können als die, die in realistischen Roboterumgebungen beobachtet werden können. Hinsichtlich der Wegpunktadaptation wurde ein zufälliger Punkt y * S 2
    Figure DE102021204961B4_0143
    mit zugehöriger Kovarianz Σ y * = × 10 3 I
    Figure DE102021204961B4_0144
     
    Figure DE102021204961B4_0145
    verwendet (d. h. beim Durchlaufen von y* war eine hohe Präzision erforderlich).
  • Wie in 4 gezeigt, ist Ausrichtungs-ProMP in der Lage, sowohl die Trajektorie als auch das zugehörige Kovarianzprofil glatt anzupassen, während gleichzeitig der gegebene Wegpunkt genau durchlaufen wird.
  • 5 stellt den Mischprozess von Ausrichtungs-ProMP für {G, I} und {S, J} dar.
  • Das Ziel war, eine Trajektorie zu erzeugen, die durch Folgen des Profils des ersten Buchstabens in der Menge startet und dann auf halbem Weg auf die Trajektorieverteilung des zweiten Buchstaben umschaltet. In 5 werden die resultierenden gemischten Trajektorien für die zwei erwähnten Fälle gezeigt, wobei Ausrichtungs-ProMP die beiden gegebenen Trajektorieverteilungen durch Folgen der eingeführten Mischprozedur für oben beschriebene Ausrichtungs-ProMP gleichmäßig mischt. Es ist anzumerken, dass das Mischverhalten stark von der zeitlichen Entwicklung der Gewichte αs ∈ [0,1] in Verbindung mit den einzelnen Fertigkeiten s abhängt. In dieser Menge von Experimenten wurde eine sigmoid-artige Funktion für die Gewichte α s ( I )  und  α s ( J )
    Figure DE102021204961B4_0146
    verwendet, wobei α s ( G ) = 1 α s ( I )  und  α s ( S ) = 1 α s ( J ) .
    Figure DE102021204961B4_0147
    Die obigen Ergebnisse zeigen, dass Ausrichtungs-ProMP Trajektorieverteilungen auf S 2
    Figure DE102021204961B4_0148
    erfolgreich lernt und reproduziert und volle Wegpunktadaptation und Mischfähigkeiten bereitstellt.
  • Experimente zeigen, dass dies in ähnlicher Weise in einer Roboterumgebung gilt, beispielsweise für eine Neuausrichtungsfertigkeit, die dem Anheben eines vorher ergriffenen Objekts, Drehen des Endeffektors 104 und Platzieren des Objekts zurück an seinem ursprünglichen Ort, aber mit modifizierter Ausrichtung, entspricht. Diese Roboterfertigkeit beinhaltet signifikante Positions- und Ausrichtungsänderungen und ist daher geeignet, die Funktionalität von Ausrichtungs-ProMP zu zeigen.
  • Für ein Training einer Roboterfertigkeit, wie etwa einer Neuausrichtungsfertigkeit gibt jede Demonstration beispielsweise eine Roboterendeffektortrajektorie mit voller Pose { p t } i = 1 T .
    Figure DE102021204961B4_0149
    Hier repräsentiert p t 3 × S 3
    Figure DE102021204961B4_0150
    die Endeffektorpose bei Zeitschritt t. Daher demonstriert jede Demonstration eine Positionstrajektorie (umfassend eine zeitliche Abfolge von Positionen, jede beschrieben durch ein Element von ℝ3) und eine Ausrichtungstrajektorie (umfassend eine zeitliche Abfolge von Ausrichtungen, jede beschrieben durch ein Element von S 3
    Figure DE102021204961B4_0151
    ). Die Rohdaten aus den Trajektorien können verwendet werden, um ein ProMP-Modell 112 auf 3 × S 3
    Figure DE102021204961B4_0152
    zu trainieren, umfassend ein Untermodell für die Position und ein Untermodell für die Ausrichtung, wobei das Positionsmodell unter Verwendung des klassischen ProMP-Ansatzes erlernt wird und das Ausrichtungsmodell unter Verwendung des Ausrichtungs-ProMP-Ansatzes (z. B. dem oben beschriebenen Algorithmus) erlernt wird. Für beide Untermodelle kann die gleiche Menge von (z. B. Nϕ = 40) Basisfunktionen verwendet werden, werden aber für unterschiedliche Komponenten verwendet (für jede Positionskomponente im Positionsuntermodell und für jede Ausrichtungskomponente im Ausrichtungsuntermodell).
  • Zusammengefasst wird, gemäß verschiedenen Ausführungsformen, ein Verfahren bereitgestellt, wie in 6 dargestellt.
  • 6 zeigt ein Flussdiagramm 600, das ein Verfahren zum Steuern einer Robotervorrichtung darstellt.
  • In 601 werden Demonstrationen für eine Roboterfertigkeit bereitgestellt, wobei jede Demonstration eine Trajektorie demonstriert, die eine Abfolge von Roboterkonfigurationen umfasst, wobei jede Roboterkonfiguration durch ein Element eines vorbestimmten Konfigurationsraums mit der Struktur einer riemannschen Mannigfaltigkeit beschrieben wird.
  • In 602 wird, für jede demonstrierte Trajektorie, eine Repräsentation der Trajektorie als ein Vektor von Gewichten von vorbestimmten grundlegenden Bewegungen der Robotervorrichtung bestimmt durch Suchen eines Vektors von Gewichten, der ein Abstandsmaß zwischen der Kombination der grundlegenden Bewegung gemäß dem Vektor von Gewichten und der demonstrierten Trajektorie minimiert, wobei die Kombination auf die Mannigfaltigkeit abgebildet wird.
  • In 603 wird eine Wahrscheinlichkeitsverteilung der Vektoren von Gewichten durch Anpassen einer Wahrscheinlichkeitsverteilung an die für die demonstrierten Trajektorien bestimmten Vektoren von Gewichten bestimmt.
  • In 604 wird die Robotervorrichtung durch Durchführen grundlegender Bewegungen entsprechend der bestimmten Wahrscheinlichkeitsverteilung von Vektoren von Gewichten gesteuert.
  • Dies kann Abtasten aus der Wahrscheinlichkeitsverteilung des Vektors von Gewichten und Durchführen von grundlegenden Bewegungen in Übereinstimmung mit dem Abtastungsvektor (gemäß Gleichung (1)) umfassen. Es ist auch möglich, eine Wahrscheinlichkeitsverteilung von Trajektorien (gemäß Gleichung (14)) abzuleiten, von der abgetastet werden kann, um zu steuern, und die für eine erweiterte Steuerung verwendet werden kann, wie etwa das Mischen von Trajektorien, wie oben erläutert.
  • Das Verfahren aus 6 kann durch einen oder mehrere Computer, umfassend eine oder mehrere Datenverarbeitungseinheiten, durchgeführt werden. Der Begriff „Datenverarbeitungseinheit“ kann als ein beliebiger Typ von Entität verstanden werden, die die Verarbeitung von Daten oder Signalen ermöglicht. Beispielsweise können die Daten oder Signale gemäß zumindest einer (d. h. einer oder mehr als einer) spezifischen Funktion behandelt werden, die durch die Datenverarbeitungseinheit durchgeführt wird. Eine Datenverarbeitungseinheit kann eine analoge Schaltung, eine digitale Schaltung, eine zusammengesetzte Signalschaltung, eine Logikschaltung, einen Mikroprozessor, einen Mikrocontroller, eine zentrale Verarbeitungseinheit (CPU), eine Grafikverarbeitungseinheit (GPU), einen Digitalsignalprozessor (DSP), eine integrierte Schaltung mit programmierbarem Gate-Array (FPGA) oder eine beliebige Kombination daraus umfassen oder daraus gebildet werden. Jede andere Weise der Implementierung der entsprechenden Funktionen kann auch als Datenverarbeitungseinheit oder Logikschaltungsanordnung verstanden werden. Es versteht sich, dass einer oder mehrere der hier ausführlich beschriebenen Verfahrensschritte durch eine Datenverarbeitungseinheit über eine oder mehrere spezifische, durch die Datenverarbeitungseinheit durchgeführte Funktionen ausgeführt (z. B. implementiert) werden können.
  • Verschiedene Ausführungsformen können Bilddaten von verschiedenen visuellen Sensoren (Kameras), wie etwa Video, Radar, LiDAR, Ultraschall, thermische Bildgebung, Sonar usw., beispielsweise zum Erhalten der Daten der Demonstrationen empfangen und verwenden.
  • Der Ansatz aus 6 kann verwendet werden, um ein Steuersignal zum Steuern eines physischen Systems, wie z. B. einer computergesteuerten Maschine, wie etwa eines Roboters, eines Fahrzeugs, eines Haushaltgeräts, eines Elektrowerkzeugs, einer Fertigungsmaschine, eines persönlichen Assistenten oder eines Zugangssteuerungssystems, zu berechnen. Gemäß verschiedenen Ausführungsformen kann eine Richtlinie zum Steuern des physischen Systems erlernt werden, und dann kann das physische System entsprechend betrieben werden.
  • Gemäß einer Ausführungsform ist das Verfahren computerimplementiert.

Claims (9)

  1. Verfahren zur Steuerung einer Robotervorrichtung (100), das Folgendes umfasst: Bereitstellen von Demonstrationen für eine Roboterfertigkeit, wobei jede Demonstration eine Trajektorie (τ) demonstriert, die eine Abfolge von Roboterkonfigurationen (yt) umfasst, wobei jede Roboterkonfiguration (yt) durch ein Element eines vorbestimmten Konfigurationsraums mit der Struktur einer riemannschen Mannigfaltigkeit beschrieben wird; Bestimmen, für jede demonstrierte Trajektorie (τ), einer Repräsentation der Trajektorie (τ) als ein Vektor von Gewichten (wi) von vorbestimmten grundlegenden Bewegungen der Robotervorrichtung (100) durch Suchen eines Vektors von Gewichten (wi), der ein Abstandsmaß zwischen der Kombination aus den grundlegenden Bewegungen gemäß dem Vektor von Gewichten (wi) und der demonstrierten Trajektorie (τ) minimiert, wobei die Kombination auf die Mannigfaltigkeit abgebildet ist; Bestimmen einer Wahrscheinlichkeitsverteilung der Vektoren von Gewichten (wi) durch Anpassen einer Wahrscheinlichkeitsverteilung an die für die demonstrierten Trajektorien (τ) bestimmten Vektoren von Gewichten; und Steuern der Robotervorrichtung (100) durch Durchführen grundlegender Bewegungen entsprechend der bestimmten Wahrscheinlichkeitsverteilung von Vektoren von Gewichten (wi).
  2. Verfahren nach Anspruch 1, wobei die Wahrscheinlichkeitsverteilung der Vektoren von Gewichten durch Anpassen einer gaußschen Verteilung an die für die demonstrierten Trajektorien (τ) bestimmten Vektoren von Gewichten bestimmt wird.
  3. Verfahren nach Anspruch 1 oder 2, wobei jede demonstrierte Trajektorie (τ) eine Roboterkonfiguration (yt) für jede Zeit einer vorbestimmten Abfolge von Zeitpunkten umfasst und wobei jede Kombination der grundlegenden Bewegungen gemäß einem Vektor von Gewichten (wi) eine Roboterkonfiguration (yt) für jede Zeit der vorbestimmten Abfolge von Zeitpunkten bestimmt und wobei, für jede demonstrierte Trajektorie (τ), der Vektor von Gewichten (wi) bestimmt wird durch Bestimmen, aus einer Menge von möglichen Vektoren von Gewichten (wi), des Vektors von Gewichten (wi), für den die Kombination der grundlegenden Bewegungen gemäß dem Vektor von Gewichten (wi) und der demonstrierten Trajektorie (τ), wobei die Kombination auf die Mannigfaltigkeit abgebildet wird, minimal unter der Menge von möglichen Vektoren von Gewichten (wi) ist, wobei der Abstand zwischen der Kombination aus grundlegenden Bewegungen, abgebildet auf die Mannigfaltigkeit, und der demonstrierten Trajektorie (τ) gegeben ist durch Summieren, über die Zeitpunkte der Abfolge von Zeitpunkten, über Terme, umfassend einen Term für jeden Zeitpunkt, der den Wert oder die Potenz des Wertes einer Metrik der Mannigfaltigkeit zwischen dem Element der Mannigfaltigkeit, gegeben durch die Kombination von grundlegenden Bewegungen zu dem Punkt in der Zeit, wenn abgebildet auf die Mannigfaltigkeit, und der demonstrierten Trajektorie (τ) umfasst.
  4. Verfahren nach einem der Ansprüche 1 bis 3, umfassend, für eine der demonstrierten Trajektorien (τ), Suchen eines Punktes der Mannigfaltigkeit und eines Vektors von Gewichten (wi), sodass der Punkt und der Vektor von Gewichten (wi) ein Abstandsmaß zwischen der Kombination aus den grundlegenden Bewegungen gemäß dem Vektor von Gewichten (wi) und der demonstrierten Trajektorie (τ) minimieren, wobei die Kombination auf die Mannigfaltigkeit von dem Tangentenraum an dem Punkt abgebildet wird, und wobei, für jede demonstrierte Trajektorie (τ), das Abbilden einer entsprechenden Kombination auf die Mannigfaltigkeit durchgeführt wird durch Abbilden der Kombination aus dem Tangentenraum an dem ausgewählten Punkt.
  5. Verfahren nach einem der Ansprüche 1 bis 4, wobei die Trajektorie (τ) eine Ausrichtungstrajektorie ist und jede Demonstration ferner eine Positionstrajektorie demonstriert und jede Roboterkonfiguration (yt) eine Pose umfasst, die beschrieben wird durch einen Vektor im dreidimensionalen Raum und eine Ausrichtung, die durch das Element des vorbestimmten Konfigurationsraums beschrieben wird.
  6. Verfahren nach einem der Ansprüche 1 bis 5, umfassend Bereitstellen von Demonstrationen für mehr als nur Roboterfertigkeiten und Bestimmen, für jede Fertigkeit, von Repräsentationen von Trajektorien (τ) und Vektoren von Gewichten (wi) und Wahrscheinlichkeitsverteilungen der Vektoren von Gewichten (wi) und Steuern der Robotervorrichtung (100) durch Bestimmen, für jede Fertigkeit, aus der Wahrscheinlichkeitsverteilung von Vektoren von Gewichten (wi), einer riemannschen gaußschen Verteilung von Mannigfaltigkeitspunkten, Bestimmen einer Produktverteilung der riemannschen gaußschen Verteilungen der Fertigkeiten und Steuern der Robotervorrichtung (100) durch Abtasten aus der Wahrscheinlichkeitsverteilung des bestimmten Produkts.
  7. Robotervorrichtungssteuerung (106), ausgelegt zum Ausführen des Verfahrens nach einem der Ansprüche 1 bis 6.
  8. Computerprogramm, umfassend Anweisungen, die, wenn durch einen Prozessor (110) ausgeführt, den Prozessor (110) veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 6 durchzuführen.
  9. Computerlesbares Medium (111), das Anweisungen speichert, die, wenn durch einen Prozessor (110) ausgeführt, den Prozessor (110) veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 6 durchzuführen.
DE102021204961.3A 2021-05-17 2021-05-17 Verfahren zur Steuerung einer Robotervorrichtung Active DE102021204961B4 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102021204961.3A DE102021204961B4 (de) 2021-05-17 2021-05-17 Verfahren zur Steuerung einer Robotervorrichtung
JP2022080087A JP2022176917A (ja) 2021-05-17 2022-05-16 ロボットデバイスを制御するための方法
CN202210527848.4A CN115351780A (zh) 2021-05-17 2022-05-16 用于控制机器人设备的方法
KR1020220059921A KR20220155921A (ko) 2021-05-17 2022-05-17 로봇 디바이스를 제어하기 위한 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021204961.3A DE102021204961B4 (de) 2021-05-17 2021-05-17 Verfahren zur Steuerung einer Robotervorrichtung

Publications (2)

Publication Number Publication Date
DE102021204961A1 DE102021204961A1 (de) 2022-11-17
DE102021204961B4 true DE102021204961B4 (de) 2023-06-07

Family

ID=83806295

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021204961.3A Active DE102021204961B4 (de) 2021-05-17 2021-05-17 Verfahren zur Steuerung einer Robotervorrichtung

Country Status (4)

Country Link
JP (1) JP2022176917A (de)
KR (1) KR20220155921A (de)
CN (1) CN115351780A (de)
DE (1) DE102021204961B4 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022206381A1 (de) 2022-06-24 2024-01-04 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Steuern einer Robotervorrichtung
DE102022212638B3 (de) 2022-11-25 2024-03-14 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Steuern eines Roboters
CN115946130B (zh) * 2023-03-13 2023-05-23 中国人民解放军国防科技大学 基于黎曼流形的人机协同方法
CN116985144A (zh) * 2023-09-26 2023-11-03 珞石(北京)科技有限公司 一种具有c2连续的机器人末端姿态规划方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017129200A1 (en) 2016-01-28 2017-08-03 MAX-PLANCK-Gesellschaft zur Förderung der Wissenschaften e.V. A system for real-world continuous motion optimization and control
DE202017105598U1 (de) 2016-09-15 2018-05-24 Google LLC (n.d.Ges.d. Staates Delaware) System zum tiefen Verstärkungslernen für Robotermanipulation
DE102014108287B4 (de) 2014-05-23 2019-08-14 GM Global Technology Operations LLC (n. d. Gesetzen des Staates Delaware) Schnelles Erlernen durch Nachahmung von Kraftdrehmoment-Aufgaben durch Roboter
EP3753684A1 (de) 2019-06-21 2020-12-23 Robert Bosch GmbH Verfahren und system zur robotermanipulationsplanung
DE102019209616A1 (de) 2019-07-01 2021-01-07 Kuka Deutschland Gmbh Durchführen einer vorgegebenen Aufgabe mithilfe wenigstens eines Roboters
DE102019216229A1 (de) 2019-10-07 2021-04-08 Robert Bosch Gmbh Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
US20210122037A1 (en) 2019-10-25 2021-04-29 Robert Bosch Gmbh Method for controlling a robot and robot controller
DE102019216560A1 (de) 2019-10-28 2021-04-29 Robert Bosch Gmbh Verfahren und Vorrichtung zum Trainieren von Manipulationsfertigkeiten eines Robotersystems
EP3838503A1 (de) 2019-12-16 2021-06-23 Robert Bosch GmbH Verfahren zur steuerung eines roboters und robotersteuerung
DE102020207085A1 (de) 2020-06-05 2021-12-09 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum steuern eines roboters und robotersteuereinheit

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014108287B4 (de) 2014-05-23 2019-08-14 GM Global Technology Operations LLC (n. d. Gesetzen des Staates Delaware) Schnelles Erlernen durch Nachahmung von Kraftdrehmoment-Aufgaben durch Roboter
WO2017129200A1 (en) 2016-01-28 2017-08-03 MAX-PLANCK-Gesellschaft zur Förderung der Wissenschaften e.V. A system for real-world continuous motion optimization and control
DE202017105598U1 (de) 2016-09-15 2018-05-24 Google LLC (n.d.Ges.d. Staates Delaware) System zum tiefen Verstärkungslernen für Robotermanipulation
EP3753684A1 (de) 2019-06-21 2020-12-23 Robert Bosch GmbH Verfahren und system zur robotermanipulationsplanung
DE102019209616A1 (de) 2019-07-01 2021-01-07 Kuka Deutschland Gmbh Durchführen einer vorgegebenen Aufgabe mithilfe wenigstens eines Roboters
DE102019216229A1 (de) 2019-10-07 2021-04-08 Robert Bosch Gmbh Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
US20210122037A1 (en) 2019-10-25 2021-04-29 Robert Bosch Gmbh Method for controlling a robot and robot controller
DE102019216560A1 (de) 2019-10-28 2021-04-29 Robert Bosch Gmbh Verfahren und Vorrichtung zum Trainieren von Manipulationsfertigkeiten eines Robotersystems
EP3838503A1 (de) 2019-12-16 2021-06-23 Robert Bosch GmbH Verfahren zur steuerung eines roboters und robotersteuerung
DE102020207085A1 (de) 2020-06-05 2021-12-09 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum steuern eines roboters und robotersteuereinheit

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PARASCHOS, Alexandros [et al.]: Using probabilistic movement primitives in robotics. In: Autonomous Robots, Vol. 42, 2018, No. 3, S. 529-551. - ISSN 0929-5593 (P); 1573-7527 (E). DOI: 10.1007/s10514-017-9648-7. URL: https://link.springer.com/content/pdf/10.1007/s10514-017-9648-7.pdf [abgerufen am 2021-06-23]

Also Published As

Publication number Publication date
KR20220155921A (ko) 2022-11-24
JP2022176917A (ja) 2022-11-30
CN115351780A (zh) 2022-11-18
DE102021204961A1 (de) 2022-11-17

Similar Documents

Publication Publication Date Title
DE102021204961B4 (de) Verfahren zur Steuerung einer Robotervorrichtung
DE102019216229B4 (de) Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102020209685B4 (de) Verfahren zum steuern einer robotervorrichtung und robotervorrichtungssteuerung
DE102020207085A1 (de) Verfahren zum steuern eines roboters und robotersteuereinheit
DE102021204697B4 (de) Verfahren zum Steuern einer Robotervorrichtung
DE102020214231A1 (de) Verfahren zum steuern einer robotervorrichtung und robotersteuereinrichtung
DE102020212658A1 (de) Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102021109332B4 (de) Vorrichtung und Verfahren zum Steuern eines Roboters zum Einsetzen eines Objekts in eine Einsetzstelle
DE102021109334B4 (de) Vorrichtung und Verfahren zum Trainieren eines Neuronalen Netzes zum Steuern eines Roboters für eine Einsetzaufgabe
DE102021201918A1 (de) Vorrichtung und Verfahren zum Steuern ein oder mehrerer Roboter
DE102020214633A1 (de) Vorrichtung und Verfahren zum Steuern einer Robotervorrichtung
DE102020209511B3 (de) Verfahren und System zur Bestimmung von optimierten Programmparametern für ein Roboterprogramm
DE102020208211A1 (de) Vorrichtungen und Verfahren zum Trainieren eines maschinellen Lernmodells zum Erkennen einer Objekttopologie eines Objekts aus einem Bild des Objekts
DE102021204846A1 (de) Verfahren zum Steuern einer Robotervorrichtung
DE102020210823A1 (de) Maschinen-Steueranordnung
DE102020214300A1 (de) Vorrichtung und verfahren zum trainieren eines maschinellen lernmodells zum erkennen einer objekttopologie eines objekts aus einem bild des objekts
Gams et al. Manipulation learning on humanoid robots
DE102022201116A1 (de) Verfahren zum Steuern einer Robotervorrichtung
DE102020200165B4 (de) Robotersteuereinrichtung und Verfahren zum Steuern eines Roboters
DE102022202142B3 (de) Vorrichtung und Verfahren zum Trainieren eines maschinellen Lernmodells zum Ableiten eines Bewegungsvektors für einen Roboter aus Bilddaten
DE102020214301A1 (de) Vorrichtung und verfahren zum steuern eines roboters zum aufnehmen eines objekts in verschiedenen lagen
DE102022206381A1 (de) Verfahren zum Steuern einer Robotervorrichtung
DE102021211185B4 (de) Vorrichtung und Verfahren zum Steuern eines Roboters
DE102022208082B3 (de) Verfahren zum Steuern eines technischen Systems
Kulic et al. Autonomous vehicle obstacle avoiding and goal position reaching by behavioral cloning

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final