Inquiry
Form loading...
Wie kann ein Roboter eine unbekannte Umgebung lokalisieren, kartieren und sich darin bewegen?

Branchennachrichten

Wie kann ein Roboter eine unbekannte Umgebung lokalisieren, kartieren und sich darin bewegen?

08.12.2023
1. Vorwort Mit der rasanten Entwicklung der Computertechnologie, der Vertiefung der Roboterforschung und der steigenden Nachfrage der Menschen nach Robotern sind Roboter, die sich intelligent bewegen und autonom navigieren können, in den Mittelpunkt der Forschung gerückt. Es gibt einige praktische Lösungen für die autonome Lokalisierung von Robotern in bekannten Umgebungen und die Kartenerstellung bekannter Roboterpositionen. In vielen Umgebungen kann der Roboter jedoch nicht das globale Positionierungssystem zur Positionierung verwenden, und es ist schwierig, die Karte der Arbeitsumgebung des Roboters im Voraus zu erhalten. Zu diesem Zeitpunkt muss der Roboter unter der Bedingung einer unsicheren Position eine Karte in einer völlig unbekannten Umgebung erstellen und die Karte für die autonome Positionierung und Navigation verwenden. Die Slam-Technologie (synchrone Positionierung und Kartenerstellung) gilt als Kern- und Schlüsseltechnologie für die Realisierung wirklich autonomer mobiler Roboter.1 Der Roboter beginnt, sich von einer unbekannten Position in einer unbekannten Umgebung zu bewegen. Während der Bewegung lokalisiert es sich anhand der Positionsschätzung und der Sensordaten und verbessert und erstellt nach und nach eine vollständige Karte. Das ist ein Slam-Prozess. Beim Slam verwendet der Roboter seinen eigenen Sensor, um die Merkmalsmarkierung in der unbekannten Umgebung zu identifizieren, und schätzt dann die globalen Koordinaten des Roboters und der Merkmalsmarkierung entsprechend der relativen Position zwischen dem Roboter und der Merkmalsmarkierung sowie dem Kilometerzählerstand. Bei dieser Online-Positionierung und Kartenerstellung müssen die detaillierten Informationen zwischen dem Roboter und der Merkmalsmarkierung beibehalten werden. In den letzten Jahren hat die Slam-Forschung große Fortschritte gemacht und wurde auf verschiedene Umgebungen wie Roboter, AR, VR, UAV, Autopilot usw. angewendet.2. Schlüsselthemen des Slams 2.1 Kartendarstellung Derzeit lassen sich die gängigen Kartendarstellungsmethoden grob in drei Kategorien einteilen: Rasterdarstellung, geometrische Informationsdarstellung und Topologiedarstellung. Jede Methode hat ihre eigenen Vor- und Nachteile. (1) Geometrische Informationskarte Die Darstellung einer geometrischen Informationskarte bedeutet, dass der Roboter die Wahrnehmungsinformationen der Umgebung sammelt, abstraktere geometrische Merkmale wie Liniensegmente oder Kurven extrahiert und diese geometrischen Informationen zur Beschreibung der Umgebung verwendet. Vorteil: Es ist kompakter und bequemer für die Positionsschätzung und Zielerkennung; Die geometrische Methode verwendet den Kalman-Filter, um eine hohe Genauigkeit und einen geringen Rechenaufwand im lokalen Bereich zu erzielen. Nachteile: Die Extraktion geometrischer Informationen erfordert eine zusätzliche Verarbeitung von Wahrnehmungsinformationen, und es ist eine bestimmte Menge an Wahrnehmungsdaten erforderlich, um die Ergebnisse zu erhalten. Es ist schwierig, genaue Koordinateninformationen in weiträumigen Umgebungen aufrechtzuerhalten. (2) Gitterkarte Die Gitterkarte besteht darin, die gesamte Umgebung in mehrere Gitter gleicher Größe zu unterteilen und anzuzeigen, ob es für jedes Gitter Hindernisse gibt. Vorteile: Einfach zu erstellen und zu warten und zu versuchen, alle Arten von Informationen der gesamten Umgebung beizubehalten; Mit Hilfe der Karte können Selbstpositionierung und Wegplanung bequem durchgeführt werden; Nachteile: Wenn die Anzahl der Gitter zunimmt (in einer Umgebung mit großem Maßstab oder wenn die Umgebung detailliert unterteilt ist), wird es schwierig, die Karte zu pflegen. Gleichzeitig steht im Positionierungsprozess ein großer Suchraum zur Verfügung. Wenn es keinen guten vereinfachten Algorithmus gibt, ist es schwierig, eine Echtzeitanwendung zu realisieren. (3) Topologische Karte Topologische Karten sind sehr abstrakt, insbesondere wenn die Umgebung groß und einfach ist. Bei dieser Methode wird die Umgebung als Graph im Sinne der Topologie dargestellt und die Knoten im Graph entsprechen einem charakteristischen Zustand und Ort in der Umgebung. Wenn es einen direkten Verbindungspfad zwischen Knoten gibt, entspricht dieser dem Bogen, der die Knoten in der Abbildung verbindet. Vorteil: Förderlich für die weitere Weg- und Aufgabenplanung; Der Speicher- und Suchraum ist relativ klein und die Recheneffizienz hoch. Es können viele ausgereifte und effiziente Such- und Argumentationsalgorithmen verwendet werden; Nachteile: Bei der Verwendung sollte es auf der Identifizierung und dem Abgleich von Topologieknoten basieren. Wenn es beispielsweise zwei sehr ähnliche Orte in der Umgebung gibt, ist es für die Topologiekartenmethode schwierig zu bestimmen, ob es sich um denselben Punkt handelt.2.2 Beschreibung unsicherer Informationen Wenn die Umgebung völlig unbekannt ist und der Roboter eine Karte erstellen und laufen möchte, muss er Informationen mit Hilfe anderer Sensoren wie Kilometerzähler, Sonar, Laser-Entfernungsmesser, Sicht usw. erhalten. Aufgrund der Einschränkungen des Sensors selbst sind die Sensorinformationen unterschiedlich unsicher. Beispielsweise ergibt sich die Unsicherheit des Laser-Entfernungsmessers hauptsächlich aus dem Messfehler der Entfernung und dem Messwinkelfehler, der durch die Drehung des Reflektors und die Laserstreuung verursacht wird. Wie in der obigen Abbildung dargestellt, führt die Unsicherheit der wahrgenommenen Informationen zwangsläufig dazu, dass das erstellte Umgebungsmodell nicht vollständig korrekt ist. Ebenso besteht Unsicherheit, wenn Entscheidungen auf der Grundlage von Modellen und Wahrnehmungen getroffen werden, d. h. die Unsicherheit ist transitiv. Die Methoden zur Messung der Unsicherheit umfassen hauptsächlich Wahrscheinlichkeitsmessung, Vertrauensmessung, Möglichkeitsmessung, Fuzzy-Messung und Evidenztheorie. Derzeit werden Wahrscheinlichkeitsmaße und Fuzzy-Maßnahmen häufig bei der Erstellung von AMR-Karten verwendet. Es gibt zwei Hauptformen der Wahrscheinlichkeitsmessung: (1) Die unsicheren Informationen werden durch Wahrscheinlichkeitsmerkmale wie Mittelwert, Varianz und Kovarianz beschrieben. Der Vorteil dieser Messmethode besteht darin, dass die Wahrscheinlichkeitsmerkmale wie der Mittelwert eine klare geometrische Bedeutung haben. Der Nachteil besteht jedoch darin, dass die diskrete Berechnungsformel der Wahrscheinlichkeitsmerkmale nicht bestimmt wurde. (2) Das Wahrscheinlichkeitsmodell wird zur Beschreibung unsicherer Informationen verwendet, hauptsächlich unter Verwendung der Bayes-Regel und der Markov-Hypothese. Der Vorteil dieser Messmethode besteht darin, dass die Position, Lage und Umgebungsinformationen des Roboters durch das Zufallswahrscheinlichkeitsmodell beschrieben werden und die Robustheit sehr gut ist. Der Nachteil besteht darin, dass der Berechnungsaufwand für das Wahrscheinlichkeitsmodell sehr groß ist und die A-priori-Wahrscheinlichkeit des Modells im Voraus bekannt sein muss, was die praktische Anwendung erschwert.2.3 Extraktion von Standort- und Umgebungsmerkmalen Die Selbstlokalisierung mobiler Roboter steht in engem Zusammenhang mit der Umgebungsmodellierung. Die Genauigkeit des Umgebungsmodells hängt von der Positionierungsgenauigkeit ab, und die Implementierung der Positionierung ist untrennbar mit dem Umgebungsmodell verbunden. In der unbekannten Umgebung hat der Roboter keine Referenz und kann sich nur auf seine eigenen ungenauen Sensoren verlassen, um externe Informationen zu erhalten, genau wie ein Blinder, der in einer unbekannten Umgebung herumtastet. In diesem Fall ist die Positionierung schwierig. Sowohl die Kartenpositionierung als auch die Kartenerstellung mit Positionierung sind leicht zu lösen, aber die Positionierung ohne Karte und die Kartenerstellung ohne Positionierung ähneln dem „Hühnerei“-Problem. In der bestehenden Forschung lassen sich die Lösungen für solche Probleme in zwei Kategorien einteilen: (1) Während man sich auf interne Sensoren verlässt, um die eigene Bewegung abzuschätzen, werden externe Sensoren (wie Laser-Entfernungsmesser, Vision usw.) verwendet, um die Umgebung wahrzunehmen , analysieren Sie die gewonnenen Informationen, extrahieren Sie Umweltmerkmale und speichern Sie diese. Im nächsten Schritt wird die eigene Position durch den Vergleich von Umgebungsmerkmalen korrigiert. Diese Methode hängt jedoch von der Fähigkeit ab, Umwelteigenschaften zu erhalten. (2) Durch die Verwendung verschiedener interner Sensoren (einschließlich Kilometerzähler, Kompass, Beschleunigungsmesser usw.), die in sich selbst getragen werden, wird der Positionierungsfehler durch die Fusion verschiedener Sensorinformationen reduziert. Die meisten verwendeten Fusionsalgorithmen basieren auf dem Kalman-Filter. Da sich diese Methoden nicht auf externe Informationen beziehen, ist die Fehlerhäufigkeit nach längerem Roaming groß. Zu den Methoden zur Extraktion von Umweltmerkmalen gehören: 1) . Die Hough-Transformation ist eine Art Methode zur Erkennung von Linien und anderen Kurven basierend auf einem Graubild. Diese Methode erfordert eine Gruppe vorgefertigter spezifischer Kurven, die durchsucht werden können, und generiert Kurvenparameter entsprechend einer Gruppe von Kurven im angezeigten Graubild. 2) . Die Clusteranalyse ist ein Datenerkennungstool, das für nicht klassifizierte Proben wirksam ist. Gleichzeitig besteht sein Ziel darin, die Zielobjekte anhand ihrer Ähnlichkeit oder Entfernung in natürliche Kategorien oder Clusterklassen einzuteilen. Wenn die Kategorie des extrahierten Objekts unbekannt ist, ist die Clustering-Technologie im Vergleich zur Houghtransform eine effektivere Technologie. Cluster-Klassen sollten auf „Zusammenhalt“ ausgerichtet sein und nicht auf Fragmentierung und Disjunktheit. Umweltmerkmale sind manchmal schwer zu extrahieren. Wenn beispielsweise die Umgebungsmerkmale nicht offensichtlich genug sind oder nur wenige Sensorinformationen vorliegen, ist es schwierig, Umgebungsmerkmale aus einmaligen Wahrnehmungsinformationen zu ermitteln.2.4 Datenassoziation Bei der Datenzuordnung werden zwei Merkmalsmarkierungen abgeglichen, um festzustellen, ob sie demselben Objekt in der Umgebung entsprechen. Die Datenzuordnung im Slam muss hauptsächlich drei Aufgaben erfüllen: (1) Abgleich zwischen Karten; (2) Übereinstimmung von Merkmalsmarken; (3) Erkennung neuer Merkmalsmarken; Obwohl die Datenassoziation in den Bereichen Zielverfolgung und Sensorfusion gut gelöst wurde, erfordern diese Methoden einen großen Rechenaufwand und können die Echtzeitanforderungen von Slam nicht erfüllen. Die Komplexität der Datenassoziation zwischen M Zeichen und Karten mit n Zeichen ist mit M exponentiell. Unter der Annahme, dass jedes beobachtete Zeichen I eine mögliche Übereinstimmung hat, muss für M Zeichen nach der richtigen Übereinstimmung im Exponentialraum = gesucht werden. Der Suchraum der Datenassoziation hängt mit der Komplexität der Umgebung und dem Positionierungsfehler des Roboters zusammen. Mit zunehmender Komplexität der Umgebung erhöht sich m und mit zunehmendem Fehler erhöht sich Ni.2,5 kumulativer Fehler Die Fehler beim Slam entstehen hauptsächlich aus drei Aspekten: (1) Beobachtungsfehler; (2) Fehler des Kilometerzählers; (3) Fehler, die durch falsche Datenzuordnung verursacht werden; Wenn sich der Roboter in der Umgebung einer bekannten Karte befindet, kann er den Kilometerzählerfehler kompensieren, indem er die Merkmalsmarkierung mit bekannter Position beobachtet. Bei jeder Beobachtung tendiert der Positionsfehler des Roboters zur Summe des Beobachtungsfehlers und des Positionsfehlers der Merkmalsmarkierung. Da jedoch beim Slam die Position des Roboters und die Position der Merkmalsmarkierung in der Umgebung unbekannt sind, können die Beobachtungsinformationen den Fehler des Kilometerzählers nicht effektiv korrigieren, und der Positionsfehler des Roboters nimmt mit der Bewegungsdistanz zu der Roboter. Der Anstieg des Positionsfehlers des Roboters führt zu einer falschen Datenzuordnung, wodurch der Positionsfehler der Merkmalsmarkierung zunimmt. Der Fehler der Merkmalsmarkierung erhöht wiederum den Positionsfehler des Roboters. Daher hängt der Positionsfehler des Roboters eng mit dem Positionsfehler der Merkmalsmarkierung zusammen. Die Interaktion zwischen ihnen führt dazu, dass die Positionsschätzung des Roboters und der Merkmalsmarkierung zu kumulativen Fehlern führt, was es schwierig macht, die Konsistenz der Karte sicherzustellen. 3. Implementierungsmethode von Slam Derzeit können Slam-Methoden grob in zwei Kategorien unterteilt werden: (1) Methoden basierend auf Wahrscheinlichkeitsmodellen: vollständige Slams basierend auf Kalman-Filter, Kompressionsfilter, FastSLAM usw. (2) Nicht-probabilistische Modellmethoden: sm -Slam, Scan-Matching, Datenzuordnung, basierend auf Fuzzy-Logik usw.3.1 Implementierungsmethode basierend auf dem Kalman-Filter Aus statistischer Sicht ist Slam ein Filterproblem, das heißt, den aktuellen Zustand des Systems anhand des Anfangszustands des Systems und der Beobachtungsinformationen und Kontrollinformationen (Kilometerstand) von 0 bis t abzuschätzen. Bei Slam setzt sich der Zustand des Systems aus der Roboterhaltung R und den Karteninformationen m (einschließlich der Positionsinformationen jeder Merkmalsmarkierung) zusammen. Unter der Annahme, dass das Bewegungsmodell und das Beobachtungsmodell des Systems lineare Modelle mit Gaußschem Rauschen sind und der Zustand des Systems der Gaußschen Verteilung folgt, kann Slam durch den Kalman-Filter realisiert werden. SLAM basiert auf dem Kalman-Filter und umfasst zwei Schritte: Vorhersage und Aktualisierung des Systemstatus. Gleichzeitig müssen auch Karteninformationen verwaltet werden, beispielsweise das Hinzufügen neuer Feature-Markierungen und das Löschen von Feature-Markierungen. Der Kalman-Filter geht davon aus, dass das System ein lineares System ist, in der Praxis sind das Bewegungsmodell und das Beobachtungsmodell des Roboters jedoch nichtlinear. Daher wird üblicherweise der erweiterte Kalman-Filter verwendet. Der erweiterte Kalman-Filter repräsentiert näherungsweise das nichtlineare Modell durch die Taylor-Entwicklung erster Ordnung. Ein weiterer für nichtlineare Modelle geeigneter Kalman-Filter ist UKF (Unscented Kalman Filter). UKF verwendet die bedingte Gaußsche Verteilung, um eine posteriori-Wahrscheinlichkeitsverteilung anzunähern. Im Vergleich zu EKF weist UKF eine höhere Linearisierungsgenauigkeit auf und erfordert keine Berechnung der Jacobi-Matrix. Der Kalman-Filter ist zur grundlegenden Methode zur Realisierung von Slam geworden. Seine Kovarianzmatrix enthält die unsicheren Informationen zur Position und Karte des Roboters. Wenn der Roboter kontinuierlich die charakteristischen Zeichen in der Umgebung beobachtet, nimmt die Determinante jeder Untermatrix der Kovarianzmatrix monoton ab. Wenn die Anzahl der Beobachtungen gegen unendlich tendiert, hängt die Kovarianz jeder Merkmalsmarkierung theoretisch nur mit der Kovarianz der Startposition des Roboters zusammen. Die zeitliche Komplexität des Kalman-Filters beträgt O(). Da der Roboter jeweils nur wenige Merkmalsmarkierungen beobachten kann, kann die Zeitkomplexität von SLAM basierend auf dem Kalman-Filter als O () optimiert werden, und N stellt die Anzahl der Merkmalsmarkierungen in der Karte dar.3.2 Lokale Sub-Map-Methode Die lokale Sub-Map-Methode zerlegt Slam aus räumlicher Sicht in einige kleinere Subprobleme. Die folgenden Probleme sollten bei der Submap-Methode berücksichtigt werden: (1) Wie werden Submaps unterteilt? (2) Wie man die Beziehung zwischen Unterkarten darstellt; (3) Wie werden die Informationen der Unterkarte auf die globale Karte übertragen und ob die Konsistenz der globalen Karte gewährleistet werden kann; Die einfachste lokale Unterkartenmethode besteht darin, die globale Karte in unabhängige Unterkarten einschließlich einer festen Anzahl von Merkmalsmarkierungen zu unterteilen, ohne die Beziehung zwischen Unterkarten zu berücksichtigen, und jeweils Slam in jeder Unterkarte zu implementieren. Die Zeitkomplexität dieser Methode beträgt O (1). Aufgrund des Verlusts nützlicher Informationen, die die Korrelation zwischen verschiedenen Teilkarten darstellen, kann diese Methode jedoch die globale Konsistenz der Karte nicht gewährleisten. In diesem Zusammenhang haben Leonard et al. Vorgeschlagene DSM-Methode (Entkoppelte stochastische Abbildung). Jede Unterkarte in DSM speichert ihre eigene Schätzung der Roboterposition. Wenn der Roboter von einer Teilkarte a in eine andere Teilkarte B gelangt, wird ein EKF-basiertes Verfahren verwendet, um die Informationen in Teilkarte a an Teilkarte B zu übertragen; B. Williams et al. Vorgeschlagene Slam-Methode basierend auf CLSF (Constrained Local Submap Filter). CLSF erstellt eine Unterkarte mit bekannten globalen Koordinaten in der Karte. Während des Fortschritts des Roboters werden nur die Beobachtungsinformationen verwendet, um die Position der Merkmalsmarkierungen im Roboter und in der lokalen Unterkarte zu aktualisieren, und die lokalen Unterkarteninformationen werden in einem bestimmten Zeitintervall an die globale Karte übertragen. Obwohl Experimente zeigen, dass die beiden Algorithmen eine gute Leistung haben, wurde theoretisch nicht bewiesen, dass sie die Konsistenz von Karten aufrechterhalten können. J. Guivant et al. Vorgeschlagener Slam-Optimierungsalgorithmus cekf (komprimierter erweiterter Kalman-Filter) ohne Informationsverlust. Cekf unterteilt die beobachteten Merkmalsmarkierungen in die Teile A und B. A stellt den Bereich neben der aktuellen Position des Roboters dar, der als aktive Unterkarte bezeichnet wird. Wenn sich der Roboter in der aktiven Unterkarte a bewegt, werden die Position des Roboters und die Unterkarte a in Echtzeit mithilfe der Beobachtungsinformationen aktualisiert und der Einfluss der Beobachtungsinformationen auf die Unterkarte B wird durch ein rekursives Verfahren aufgezeichnet; Wenn der Roboter die aktive Unterkarte A verlässt, werden die Beobachtungsinformationen verlustfrei an die Unterkarte B übertragen, um die Unterkarte B gleichzeitig zu aktualisieren und gleichzeitig eine neue aktive Unterkarte zu erstellen. Die Berechnungszeit dieser Methode besteht aus zwei Teilen: Slam in der Aktivitätsunterkarte, deren zeitliche Komplexität O() ist, was der Anzahl der Merkmalsmarkierungen in der Aktivitätsunterkarte a entspricht; Die zeitliche Komplexität der Aktualisierung von Teilkarte B beträgt O(), was der Anzahl der Merkmalsmarkierungen in Karte B entspricht. Wenn das Zeitintervall für die Zusammenführung von Teilkarten groß ist, kann Cekf den Umfang der Slam-Berechnung effektiv reduzieren.3.3 Dekorrelationsmethode Eine andere Möglichkeit, die Komplexität von Slam zu reduzieren, besteht darin, einige Elemente mit kleineren Werten in der Kovarianzmatrix, die die Korrelationsbeziehung darstellt, zu ignorieren und sie in eine dünn besetzte Matrix umzuwandeln. Allerdings geht durch den Informationsverlust auch die Konsistenz der Karte verloren. Wenn jedoch die Darstellung der Kovarianzmatrix so geändert werden kann, dass viele ihrer Elemente nahe oder gleich Null sind, kann sie getrost ignoriert werden. SLAM basiert auf einem erweiterten Informationsfilter (EIF), der auf dieser Idee basiert. EIF ist der informationsbasierte Ausdruck von EKF. Der Unterschied zwischen ihnen besteht darin, dass sie Informationen in unterschiedlicher Form darstellen. EIF verwendet die inverse Matrix der Kovarianzmatrix, um die unsicheren Informationen im Slam darzustellen, die als Informationsmatrix bezeichnet wird. Die Fusion zweier unabhängiger Informationsmatrizen kann einfach als Addition zweier Matrizen ausgedrückt werden. Jedes nicht diagonale Element in der Informationsmatrix stellt eine Zwangsbeziehung zwischen dem Roboter und der Merkmalsmarke oder zwischen der Merkmalsmarke und der Merkmalsmarke dar. Diese Einschränkungsbeziehungen können lokal über die Signalbeziehung des Systemzustands aktualisiert werden. Durch diese lokale Aktualisierung nähert sich die Informationsmatrix der dünn besetzten Matrix an, und der durch die Ausdünnung verursachte Fehler ist sehr gering. Demnach haben S. Thrun et al. Schlug eine Slam-Methode basierend auf dem Sparse-Information-Filter Seif (Sparse-Extended-Information-Filter) vor und bewies, dass die zeitliche Komplexität des Slam unter Verwendung der Sparse-Information-Matrix O (1) beträgt. Obwohl EIF die zeitliche Komplexität von Slam effektiv reduzieren kann, gibt es immer noch einige Probleme bei der Darstellung und Verwaltung von Karteninformationen. Erstens kann der Mittelwert des Systemzustands in konstanter Zeit nur näherungsweise berechnet werden; Zweitens ist bei der auf EIF basierenden Slam-Methode das Hinzufügen und Löschen von Merkmalsmarkierungen unpraktisch.