Tiefe Integration von Vision und Roboterlernen.
Wenn zwei Roboterhände reibungslos zusammenarbeiten, um Kleidung zu falten, Tee einzuschenken und Schuhe zu verpacken, plus der 1X humanoide Roboter NEO, der in letzter Zeit für Schlagzeilen gesorgt hat, dann ist das vielleicht der Fall ein Gefühl, dass wir beginnen, in das Zeitalter der Roboter einzutreten.
Tatsächlich sind diese seidigen Bewegungen das Produkt fortschrittlicher Robotertechnologie + exquisitem Rahmendesign + multimodaler großer Modelle.
Wir wissen, dass nützliche Roboter oft komplexe und exquisite Interaktionen mit der Umgebung erfordern und die Umgebung als Einschränkungen im räumlichen und zeitlichen Bereich ausgedrückt werden kann.
Wenn Sie beispielsweise möchten, dass ein Roboter Tee einschenkt, muss der Roboter zuerst den Griff der Teekanne ergreifen und sie aufrecht halten, ohne den Tee zu verschütten, und sie dann sanft bewegen, bis die Öffnung der Kanne geschlossen ist Richten Sie es dann auf die Öffnung der Tasse aus. Zu den Einschränkungen zählen hier nicht nur Zwischenziele (z. B. die Ausrichtung der Kannenmündung auf die Tassenmündung), sondern auch Übergangszustände (z. B. das Aufrechthalten der Teekanne). Zusammen bestimmen sie die räumlichen, zeitlichen und anderen Kombinationsanforderungen von die Aktionen des Roboters relativ zur Umgebung.
Die reale Welt ist jedoch komplex und die Konstruktion dieser Einschränkungen ist ein sehr anspruchsvolles Problem.
Vor kurzem hat das Team von Li Feifei einen Durchbruch in dieser Forschungsrichtung erzielt und ReKep/Relational Keypoint Constraints vorgeschlagen. Vereinfacht ausgedrückt stellt diese Methode die Aufgabe als eine Folge von Beziehungsschlüsselpunkten dar. Darüber hinaus lässt sich dieses Framework auch gut in große multimodale Modelle wie GPT-4o integrieren. Dem Demonstrationsvideo zufolge funktioniert diese Methode recht gut. Das Team hat auch relevanten Code veröffentlicht. Dieser Artikel wurde von Wenlong Huang geschrieben.
Papiertitel: ReKep: Spatio-Temporal Reasoning of Relational Keypoint Constraints for Robotic Manipulation
Papier Adresse: https://rekep-robot.github.io/rekep.pdf
Projektwebsite: https://rekep-robot.github.io
Codeadresse: https://github.com/huangwl18/ReKep
Li Feifei sagte, dass diese Arbeit eine tiefere Integration von Vision und Roboterlernen demonstriert! Obwohl World Labs, ein von Li Feifei Anfang 5 dieses Jahres gegründetes KI-Unternehmen mit Schwerpunkt auf räumlicher Intelligenz, in dem Papier nicht erwähnt wird, verfügt ReKep eindeutig über großes Potenzial im Bereich räumlicher Intelligenz.
Methode
Beziehungsschlüsselpunktbeschränkung (ReKep)
Schauen wir uns zunächst eine ReKep-Instanz an. Hierbei wird davon ausgegangen, dass eine Menge von K Schlüsselpunkten angegeben wurde. Konkret ist jeder Schlüsselpunkt k_i ∈ ℝ^3 ein 3D-Punkt auf der Szenenoberfläche mit kartesischen Koordinaten.
Eine ReKep-Instanz ist eine Funktion wie diese: ?: ℝ^{K×3}→ℝ; sie kann eine Reihe von Schlüsselpunkten (bezeichnet als ?) in unbegrenzte Kosten abbilden, wenn ?(?) ≤ 0, die Einschränkung ist erfüllt. Was die konkrete Implementierung betrifft, so hat das Team die Funktion ? als zustandslose Python-Funktion implementiert, die NumPy-Operationen an Schlüsselpunkten enthält, die möglicherweise nichtlinear und nicht konvex sind. Im Wesentlichen kodiert eine ReKep-Instanz eine gewünschte räumliche Beziehung zwischen Schlüsselpunkten.
Eine Operationsaufgabe umfasst jedoch in der Regel mehrere räumliche Beziehungen und kann mehrere zeitliche Phasen haben, die jeweils unterschiedliche räumliche Beziehungen erfordern. Zu diesem Zweck besteht der Ansatz des Teams darin, eine Aufgabe in N Phasen zu zerlegen und mithilfe von ReKep zwei Arten von Einschränkungen für jede Phase i ∈ {1, ..., N} anzugeben:
Eine Reihe von Unterzielbeschränkungen
Eine Reihe von Pfadbeschränkungen
wobei eine Schlüsselpunktbeziehung kodiert, die am Ende der Stufe i erreicht werden soll, und eine Schlüsselpunktbeziehung kodiert, die für jeden Zustand innerhalb der Stufe i erfüllt werden muss. Nehmen Sie als Beispiel die Teeeinschenkaufgabe in Abbildung 2, die aus drei Phasen besteht: Tee greifen, ausrichten und einschenken.
Die Teilzielbeschränkung der Phase 1 besteht darin, den Endeffektor in Richtung des Teekannengriffs zu erreichen. Die Unterzielbeschränkung der Stufe 2 besteht darin, die Mündung der Teekanne über der Mündung der Tasse zu halten. Darüber hinaus besteht die Wegbeschränkung der Stufe 2 darin, die Teekanne aufrecht zu halten, um ein Verschütten des Tees zu vermeiden. Die letzte Teilzielbeschränkung der Stufe 3 besteht darin, den angegebenen Teeausgießwinkel zu erreichen.
Verwenden Sie ReKep, um die Betriebsaufgabe als eingeschränktes Optimierungsproblem zu definieren.
Verwenden Sie ReKep, um die Roboterbetriebsaufgabe in ein eingeschränktes Optimierungsproblem mit Unterzielen und Pfaden umzuwandeln. Die Endeffektorhaltung wird hier als ? ∈ SE (3) bezeichnet. Um die Operationsaufgabe auszuführen, besteht das Ziel hier darin, die gesamte zeitdiskrete Trajektorie zu erhalten?_{1:T}:
Das heißt, für jede Stufe i Das Optimierungsziel des Problems besteht darin, bei einem gegebenen Satz von ReKep-Einschränkungen und Hilfskosten eine Endeffektor-Pose als nächstes Unterziel (und die zugehörige Zeit) sowie die Posensequenz zu finden, mit der dieses Unterziel erreicht wird. Diese Formel kann als direktes Schießen bei der Flugbahnoptimierung betrachtet werden.
Zerlegung und Algorithmusinstanziierung
Um die obige Formel 1 in Echtzeit zu lösen, entschied sich das Team dafür, das Gesamtproblem zu zerlegen und sich nur auf die nächsten Teilprobleme zu konzentrieren. Ziel und Erreichen des entsprechenden Pfades des Unterziels wird optimiert. Algorithmus 1 gibt den Pseudocode dieses Prozesses an.
Die Lösungsformel für das Unterzielproblem lautet:
Die Lösungsformel für das Pfadproblem lautet:
Backtracking
Die reale Umgebung ist komplex und veränderlich. Manchmal gelten während der Aufgabe die Teilzielbeschränkungen der vorherigen Phase nicht mehr (z (z. B. wenn die Teetasse eingegossen wird) weggenommen wird), müssen Sie diesmal umplanen. Der Ansatz des Teams besteht darin, den Pfad auf Probleme zu überprüfen. Wenn Probleme gefunden werden, kehren Sie iterativ zur vorherigen Stufe zurück.
Vorwärtsmodell der Schlüsselpunkte
Um die Gleichungen 2 und 3 zu lösen, verwendete das Team ein Vorwärtsmodell h, das bei der Optimierung verwendet werden kann Prozessschätzung Δ? basierend auf Δ?. Insbesondere wird bei einer Änderung der Endeffektorhaltung Δ? die Änderung der Schlüsselpunktposition durch Anwendung derselben relativen Steifigkeitstransformation ?′[begriffen] = T_{Δ?}・?[begriffen] unter Annahme eines anderen Schlüssels berechnet Der Punkt bleibt bestehen.
Schlüsselpunktvorschlag und ReKep-Generierung
Um dem System die freie Ausführung verschiedener Aufgaben in realen Situationen zu ermöglichen, verwendete das Team auch große Modelle! Konkret entwarfen sie eine Pipeline unter Verwendung großer visueller Modelle und visuell-linguistischer Modelle, um Schlüsselpunktvorschläge und die ReKep-Generierung zu implementieren.
Kernpunktvorschlag
Anhand eines RGB-Bildes wird DINOv2 zunächst zum Extrahieren der Patch-Level-Funktionen F_patch verwendet. Anschließend wird eine bilineare Interpolation durchgeführt, um die Merkmale auf die ursprüngliche Bildgröße F_interp hochzurechnen. Um sicherzustellen, dass die Vorschläge alle relevanten Objekte in der Szene abdecken, verwendeten sie Segment Anything (SAM), um alle Masken M = {m_1, m_2, ..., m_n} in der Szene zu extrahieren.
Gruppieren Sie für jede Maske j die Maskenmerkmale F_interp[m_j] unter Verwendung von k-Mitteln (k = 5) und dem Kosinus-Ähnlichkeitsmaß. Die Schwerpunkte der Cluster werden als mögliche Schlüsselpunkte verwendet, die dann mit einer kalibrierten RGB-D-Kamera auf Weltkoordinaten ℝ^3 projiziert werden. Andere Kandidaten im Umkreis von 8 cm um den Kandidaten-Schlüsselpunkt werden herausgefiltert. Insgesamt stellte das Team fest, dass dieser Prozess eine große Anzahl feinkörniger und semantisch bedeutsamer Objektbereiche identifizieren kann.
ReKep-Generierung
Nachdem die Schlüsselpunkte der Kandidaten ermittelt wurden, werden diese dem ursprünglichen RGB-Bild überlagert und mit Zahlen beschriftet. In Kombination mit den Sprachanweisungen der spezifischen Aufgabe wird GPT-4o dann abgefragt, um die Anzahl der erforderlichen Stufen und die Unterzielbeschränkungen und Pfadbeschränkungen für jede Stufe i zu generieren.
Experiment
Das Team überprüfte das Constraint-Design durch Experimente und versuchte, die folgenden drei Fragen zu beantworten:
1. Wie gut funktioniert das Framework? Verhalten sich automatisierte Build- und Kompositionsvorgänge?
2. Wie gut lässt sich das System auf neue Objekte und Manipulationsstrategien verallgemeinern?
3. Wie können verschiedene Komponenten zum Systemausfall beitragen?
Mit ReKep zwei Roboterarme bedienen
Sie untersuchten das System anhand einer Reihe von Aufgaben für mehrstufige (m), Feld-/Praxisszenarien (w), Zweihandverhalten (b) und Reaktionsverhalten (r). Zu diesen Aufgaben gehören das Einschenken von Tee (m, w, r), das Ordnen von Büchern (w), das Recycling von Dosen (w), das Zukleben von Kartons (w, r), das Falten von Wäsche (b), das Einpacken von Schuhen (b) und das gemeinsame Falten (b, R).
Die Ergebnisse sind in Tabelle 1 aufgeführt, in der Daten zur Erfolgsquote aufgeführt sind.
Insgesamt ist das neu vorgeschlagene System in der Lage, die richtigen Einschränkungen zu konstruieren und in einer unstrukturierten Umgebung auszuführen, selbst wenn aufgabenspezifische Daten oder Umgebungsmodelle nicht bereitgestellt werden. Insbesondere bewältigt ReKep effektiv das Kernrätsel jeder Aufgabe.
Hier einige Animationen des tatsächlichen Ausführungsprozesses:
Verallgemeinerung der Operationsstrategie
Das Team untersuchte die Generalisierungsleistung der neuen Strategie anhand der Wäschefaltaufgabe. Kurz gesagt geht es darum, herauszufinden, ob das System verschiedene Arten von Kleidung falten kann – was Geometrie und gesunden Menschenverstand erfordert.
Hier wird GPT-4o verwendet und die Eingabeaufforderung enthält nur allgemeine Anweisungen ohne Kontextbeispiele. „Strategieerfolg“ bedeutet, dass das generierte ReKep machbar ist, und „Ausführungserfolg“ misst die Systemerfolgsrate einer gegebenen machbaren Strategie für jede Art von Kleidung.
Die Ergebnisse sind interessant. Es ist ersichtlich, dass das System unterschiedliche Strategien für unterschiedliche Kleidungsstücke verwendet und einige der Methoden zum Falten von Kleidungsstücken mit denen übereinstimmen, die üblicherweise von Menschen verwendet werden.
Systemfehler analysieren
Der Aufbau des Frameworks ist modular und daher einfach zu bedienen Praktisch zur Analyse von Systemfehlern. Das Team untersuchte manuell die in den Experimenten in Tabelle 1 aufgetretenen Fehlerfälle und berechnete auf dieser Grundlage die Wahrscheinlichkeit, dass die Module den Fehler verursachten, unter Berücksichtigung ihrer zeitlichen Abhängigkeiten im Pipeline-Prozess. Die Ergebnisse sind in Abbildung 5 dargestellt.
Es ist ersichtlich, dass der Schlüsselpunkt-Tracker unter den verschiedenen Modulen die meisten Fehler verursacht, da häufige und zeitweilige Verdeckungen es dem System erschweren, genau zu verfolgen.
Das obige ist der detaillierte Inhalt vonDas Team von Li Feifei schlug ReKep vor, um Robotern räumliche Intelligenz zu verleihen und GPT-4o zu integrieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!