Inquiry
Form loading...
Hoe kan een robot een onbekende omgeving lokaliseren, in kaart brengen en zich verplaatsen?

Nieuws uit de sector

Hoe kan een robot een onbekende omgeving lokaliseren, in kaart brengen en zich verplaatsen?

08-12-2023
1. Voorwoord Met de snelle ontwikkeling van computertechnologie, met de verdieping van robotonderzoek en de uitbreiding van de vraag van mensen naar robots, zijn robots die intelligent kunnen bewegen en autonoom kunnen navigeren de focus van onderzoek geworden. Er zijn enkele praktische oplossingen voor robotautonome lokalisatie in een bekende omgeving en het maken van kaarten van bekende robotposities. In veel omgevingen kan de robot het globale positioneringssysteem echter niet gebruiken voor positionering, en is het moeilijk om vooraf de kaart van de werkomgeving van de robot te verkrijgen. Op dit moment moet de robot een kaart maken in een volledig onbekende omgeving onder de voorwaarde van een onzekere positie, en de kaart gebruiken voor autonome positionering en navigatie. Slam-technologie (synchrone positionering en kaartopbouw) wordt beschouwd als de kerntechnologie om een ​​werkelijk autonome mobiele robot te realiseren.1 De robot begint te bewegen vanuit een onbekende positie in een onbekende omgeving. Tijdens het verplaatsen lokaliseert het zichzelf op basis van de positieschatting en sensorgegevens, en verbetert het geleidelijk en construeert het een volledige kaart. Dit is een slam-proces. Bij slam gebruikt de robot zijn eigen sensor om de kenmerkende markering in de onbekende omgeving te identificeren, en schat vervolgens de globale coördinaten van de robot en de kenmerkende markering op basis van de relatieve positie tussen de robot en de kenmerkende markering en de kilometerstand. Bij deze online positionering en kaartcreatie moet de gedetailleerde informatie tussen de robot en de kenmerkmarkering behouden blijven. De afgelopen jaren heeft het onderzoek naar slam grote vooruitgang geboekt en toegepast op verschillende omgevingen, zoals robot, AR, VR, UAV, automatische piloot enzovoort.2. Belangrijke kwesties van slam 2.1 Kaartweergave Momenteel kunnen de gebruikelijke methoden voor kaartweergave grofweg worden onderverdeeld in drie categorieën: rasterweergave, geometrische informatieweergave en topologieweergave. Elke methode heeft zijn eigen voor- en nadelen. (1) Geometrische informatiekaart Weergave van geometrische informatiekaarten betekent dat de robot de perceptie-informatie van de omgeving verzamelt, meer abstracte geometrische kenmerken extraheert, zoals lijnsegmenten of curven, en deze geometrische informatie gebruikt om de omgeving te beschrijven. voordeel: het is compacter en handiger voor positieschatting en doelherkenning; De geometrische methode maakt gebruik van het Kalman-filter om een ​​hoge nauwkeurigheid en een kleine hoeveelheid berekeningen in het lokale gebied te verkrijgen; Nadelen: De extractie van geometrische informatie vereist aanvullende verwerking van perceptuele informatie, en er is een bepaalde hoeveelheid perceptuele gegevens vereist om de resultaten te verkrijgen; Het is moeilijk om nauwkeurige coördinaatinformatie bij te houden in een wijde omgeving; (2) Rasterkaart Een rasterkaart is bedoeld om de hele omgeving in verschillende rasters van dezelfde grootte te verdelen en aan te geven of er voor elk raster obstakels zijn. voordeel: Gemakkelijk te creëren en te onderhouden, en probeer allerlei informatie van de hele omgeving te behouden; Met behulp van de kaart kunnen zelfpositionering en routeplanning gemakkelijk worden uitgevoerd; Nadelen: Wanneer het aantal rasters toeneemt (in een grootschalige omgeving of wanneer de omgeving in detail is opgedeeld), wordt het moeilijk om de kaart te onderhouden. Tegelijkertijd is er een grote zoekruimte in het positioneringsproces. Als er geen goed vereenvoudigd algoritme is, is het moeilijk om real-time toepassing te realiseren. (3) Topologische kaart Topologische kaarten zijn zeer abstract, vooral als de omgeving groot en eenvoudig is. Bij deze methode wordt de omgeving weergegeven als een grafiek in de zin van topologie, en komen de knooppunten in de grafiek overeen met een karakteristieke toestand en locatie in de omgeving. Als er een direct verbindingspad tussen knooppunten bestaat, is dit equivalent aan de boogverbindende knooppunten in de figuur. voordeel: bevorderlijk voor verdere pad- en taakplanning; De opslag- en zoekruimte is relatief klein en de rekenefficiëntie is hoog; Er kunnen veel volwassen en efficiënte zoek- en redeneeralgoritmen worden gebruikt; Nadelen: Bij gebruik moet het gebaseerd zijn op de identificatie en matching van topologieknooppunten. Als er bijvoorbeeld twee zeer vergelijkbare plaatsen in de omgeving zijn, zal het voor de topologiekaartmethode moeilijk zijn om te bepalen of ze hetzelfde punt zijn;2.2 beschrijving van onzekere informatie Als de omgeving volledig onbekend is, moet de robot, als hij een kaart wil bouwen en lopen, informatie krijgen met behulp van andere sensoren, zoals kilometerteller, sonar, laserafstandsmeter, zicht enzovoort. Vanwege de beperkingen van de sensor zelf is er een verschillende mate van onzekerheid in de detectie-informatie. De onzekerheid van de laserafstandsmeter komt bijvoorbeeld voornamelijk voort uit de meetfout van de afstand en de meethoekfout die wordt veroorzaakt door de rotatie van de reflector en laserverstrooiing. Zoals blijkt uit de bovenstaande figuur zal de onzekerheid van de waargenomen informatie onvermijdelijk leiden tot de onmogelijkheid dat het geconstrueerde omgevingsmodel volledig accuraat is. Op dezelfde manier is er bij het nemen van beslissingen op basis van model en perceptie sprake van onzekerheid, dat wil zeggen dat onzekerheid transitief is. De methoden om onzekerheid te meten omvatten voornamelijk waarschijnlijkheidsmeting, vertrouwensmeting, mogelijkheidsmeting, fuzzy-meting en bewijstheorie. Momenteel worden waarschijnlijkheidsmetingen en fuzzy-metingen veel gebruikt bij het maken van AMR-kaarten. Er zijn twee hoofdvormen van waarschijnlijkheidsmeting: (1) De onzekere informatie wordt beschreven door waarschijnlijkheidskenmerken zoals gemiddelde, variantie en covariantie. Het voordeel van deze meetmethode is dat de waarschijnlijkheidskenmerken zoals gemiddelde een duidelijke geometrische betekenis hebben, maar het nadeel is dat de discrete berekeningsformule van waarschijnlijkheidskenmerken niet is bepaald; (2) Het waarschijnlijkheidsmodel wordt gebruikt om onzekere informatie te beschrijven, voornamelijk met behulp van de Bayes-regel en de Markov-hypothese. Het voordeel van deze meetmethode is dat de positie, houding en omgevingsinformatie van de robot worden beschreven door het willekeurige waarschijnlijkheidsmodel en dat de robuustheid zeer goed is. Het nadeel is dat de hoeveelheid berekeningen van het waarschijnlijkheidsmodel erg groot is en dat de prior-waarschijnlijkheid van het model vooraf bekend moet zijn, wat het moeilijk maakt voor praktische toepassing.2.3 extractie van locatie en omgevingskenmerken Zelflokalisatie van mobiele robots hangt nauw samen met omgevingsmodellering. De nauwkeurigheid van het omgevingsmodel hangt af van de positioneringsnauwkeurigheid en de implementatie van positionering is onlosmakelijk verbonden met het omgevingsmodel. In de onbekende omgeving heeft de robot geen referentie en kan hij alleen vertrouwen op zijn eigen onnauwkeurige sensoren om externe informatie te verkrijgen, net zoals een blinde man rondtast in een onbekende omgeving. In dit geval is positionering moeilijk. Zowel het positioneren van kaarten als het maken van kaarten met positionering zijn eenvoudig op te lossen, maar positioneren zonder kaart en het maken van kaarten zonder positionering zijn als het "kippenei"-probleem. In het bestaande onderzoek kunnen de oplossingen voor dergelijke problemen in twee categorieën worden verdeeld: (1) Terwijl ze vertrouwen op interne sensoren om hun eigen beweging in te schatten, worden externe sensoren (zoals laserafstandsmeter, vision, enz.) gebruikt om de omgeving waar te nemen. , analyseer de verkregen informatie, extraheer omgevingskenmerken en sla ze op. In de volgende stap wordt hun eigen positie gecorrigeerd door omgevingskenmerken te vergelijken. Maar deze methode hangt af van het vermogen om omgevingskenmerken te verkrijgen. (2) Door gebruik te maken van een verscheidenheid aan interne sensoren (waaronder kilometerteller, kompas, versnellingsmeter, enz.) die op zichzelf worden gedragen, wordt de positioneringsfout verminderd door de samensmelting van een verscheidenheid aan sensorinformatie. De meeste gebruikte fusie-algoritmen zijn gebaseerd op het Kalman-filter. Omdat deze methoden niet verwijzen naar externe informatie, zal de accumulatie van fouten groot zijn na langdurig roamen. Methoden voor het extraheren van milieukenmerken omvatten: 1) . Hough-transformatie is een soort methode om lijnen en andere curven te detecteren op basis van een grijs beeld. Deze methode vereist een cluster van vooraf voorbereide specifieke curven die kunnen worden doorzocht, en genereert curveparameters volgens een cluster van curven in het weergegeven grijze beeld. 2) . clusteranalyse is een hulpmiddel voor gegevensdetectie dat effectief is voor niet-geclassificeerde monsters. Tegelijkertijd is het doel om de beoogde objecten in natuurlijke categorieën of clusterklassen te verdelen op basis van gelijkenis of afstand. Wanneer de categorie van het geëxtraheerde object onbekend is, is clustertechnologie een effectievere technologie vergeleken met houghtransform. Clusterklassen moeten gericht zijn op ‘cohesie’, in plaats van gefragmenteerd en onsamenhangend. Omgevingskenmerken zijn soms moeilijk te achterhalen. Wanneer de omgevingskenmerken bijvoorbeeld niet duidelijk genoeg zijn of er weinig sensorinformatie is, is het moeilijk om omgevingskenmerken te verkrijgen uit eenmalige perceptie-informatie.2.4 Gegevensassociatie Gegevensassociatie is het matchen van twee kenmerkmarkeringen om te bepalen of ze overeenkomen met hetzelfde object in de omgeving. Gegevensassociatie in slam moet hoofdzakelijk drie taken voltooien: (1) Matching tussen kaarten; (2) Matching van kenmerkmarkeringen; (3) Detectie van nieuwe kenmerkmarkeringen; Hoewel dataassociatie goed is opgelost op het gebied van doeltracking en sensorfusie, vereisen deze methoden een grote hoeveelheid berekeningen en kunnen ze niet voldoen aan de real-time vereisten van slam. De complexiteit van de gegevensassociatie tussen M-tekens en kaarten met n-tekens is exponentieel met M. aangenomen dat elk waargenomen teken I een mogelijke overeenkomst heeft, is het voor M-tekens noodzakelijk om naar de juiste overeenkomst te zoeken in de exponentiële ruimte =. De zoekruimte van dataassociatie houdt verband met de complexiteit van de omgeving en de positioneringsfout van de robot. De toename van de complexiteit van de omgeving zal m vergroten, en de toename van de fout zal Ni vergroten.2,5 cumulatieve fout De fouten bij slam komen hoofdzakelijk voort uit drie aspecten: (1) waarnemingsfout; (2) Fout van kilometerteller; (3) Fouten veroorzaakt door onjuiste gegevensassociatie; Wanneer de robot zich in de omgeving van een bekende kaart bevindt, kan de robot de kilometertellerfout compenseren door het kenmerkmarkering met bekende positie te observeren. Elke waarneming zorgt ervoor dat de positiefout van de robot neigt naar de som van de waarnemingsfout en de positiefout van het kenmerkmarkering. Echter, omdat de positie van de robot en de positie van het kenmerkteken in de omgeving onbekend zijn, kan de observatie-informatie de fout van de kilometerteller niet effectief corrigeren en neemt de positiefout van de robot toe met de bewegingsafstand van de robot. De toename van de positiefout van de robot zal leiden tot een verkeerde gegevensassociatie, waardoor de positiefout van het kenmerkmarkering zal toenemen; op zijn beurt zal de fout van de kenmerkmarkering de positiefout van de robot vergroten. Daarom hangt de positiefout van de robot nauw samen met de positiefout van het kenmerkmarkering. De interactie daartussen zorgt ervoor dat de positieschatting van de robot en de kenmerkmarkering cumulatieve fouten oplevert, wat moeilijk is om de consistentie van de kaart te garanderen. 3. Implementatiemethode van slam Momenteel kunnen slam-methoden grofweg in twee categorieën worden verdeeld: (1) Methoden gebaseerd op waarschijnlijkheidsmodel: volledige slam gebaseerd op Kalman-filter, compressiefilter, FastSLAM, enz. (2) Niet-probabilistische modelmethoden: sm -slam, scanmatching, dataassociatie, gebaseerd op fuzzy logic, enz.3.1 implementatiemethode gebaseerd op Kalman-filter Vanuit statistisch oogpunt is slam een ​​filterprobleem, dat wil zeggen het schatten van de huidige status van het systeem op basis van de initiële status van het systeem en de observatie-informatie en controle-informatie (kilometerstand) van 0 tot t. In slam bestaat de status van het systeem uit robothouding R en kaartinformatie m (inclusief de positie-informatie van elke kenmerkmarkering). Ervan uitgaande dat het bewegingsmodel en het observatiemodel van het systeem lineaire modellen zijn met Gaussische ruis, en dat de toestand van het systeem de Gaussische verdeling volgt, kan slam worden gerealiseerd met behulp van het Kalman-filter. SLAM Gebaseerd op het Kalman-filter omvat twee stappen: voorspelling en update van de systeemstatus. Tegelijkertijd moet het ook kaartinformatie beheren, zoals het toevoegen van nieuwe kenmerkmarkeringen en het verwijderen van kenmerkmarkeringen. Het Kalman-filter gaat ervan uit dat het systeem een ​​lineair systeem is, maar in de praktijk zijn het bewegingsmodel en het observatiemodel van de robot niet-lineair. Daarom wordt meestal het uitgebreide Kalman-filter gebruikt. Het uitgebreide Kalman-filter vertegenwoordigt bij benadering het niet-lineaire model via de Taylor-expansie van de eerste orde. Een ander Kalman-filter dat geschikt is voor niet-lineaire modellen is UKF (ongeparfumeerd Kalman-filter). UKF gebruikt voorwaardelijke Gaussiaanse verdeling om de a posteriori waarschijnlijkheidsverdeling te benaderen. Vergeleken met EKF heeft UKF een hogere linearisatienauwkeurigheid en hoeft de Jacobiaanse matrix niet te worden berekend. Het Kalman-filter is de basismethode geworden om slam te realiseren. De covariantiematrix bevat de onzekere informatie over de positie en kaart van de robot. Wanneer de robot continu de karakteristieke tekens in de omgeving observeert, neemt de determinant van elke submatrix van de covariantiematrix monotoon af. Theoretisch gezien, wanneer het aantal waarnemingen naar oneindig neigt, houdt de covariantie van elk kenmerk alleen verband met de covariantie van de startpositie van de robot. De tijdscomplexiteit van het Kalman-filter is O (). Omdat de robot slechts een paar kenmerkmarkeringen per keer kan waarnemen, kan de tijdscomplexiteit van SLAM op basis van het Kalman-filter worden geoptimaliseerd als O (), en N staat voor het aantal kenmerkmarkeringen op de kaart.3.2 lokale subkaartmethode De lokale subkaartmethode splitst slam op in enkele kleinere subproblemen vanuit het perspectief van de ruimte. Bij de subkaartmethode moet rekening worden gehouden met de volgende problemen: (1) Hoe subkaarten te verdelen; (2) Hoe de relatie tussen subkaarten weergegeven kan worden; (3) Hoe de informatie van de subkaart naar de wereldkaart kan worden overgebracht en of de consistentie van de wereldkaart kan worden gegarandeerd; De eenvoudigste lokale subkaartmethode is om de globale kaart te verdelen in onafhankelijke subkaarten, inclusief een vast aantal kenmerkmarkeringen, zonder rekening te houden met de relatie tussen subkaarten, en respectievelijk slam in elke subkaart te implementeren. De tijdscomplexiteit van deze methode is O (1). Vanwege het verlies van nuttige informatie die de correlatie tussen verschillende subkaarten weergeeft, kan deze methode de globale consistentie van de kaart echter niet garanderen. In dit opzicht hebben Leonard et al. Voorgestelde DSM-methode (ontkoppelde stochastische mapping). Elke subkaart in DSM slaat zijn eigen schatting van de robotpositie op. Wanneer de robot vanuit een subkaart a een andere subkaart B binnengaat, wordt de op EKF gebaseerde methode gebruikt om de informatie in subkaart a naar subkaart B te verzenden; B. Williams et al. Stelde een slam-methode voor op basis van CLSF (beperkt lokaal submapfilter). CLSF maakt een subkaart met bekende globale coördinaten op de kaart. Tijdens de voortgang van de robot wordt alleen de observatie-informatie gebruikt om de positie van de kenmerkmarkeringen in de robot en de lokale subkaart bij te werken, en de lokale subkaartinformatie wordt met een bepaald tijdsinterval naar de globale kaart verzonden. Hoewel uit experimenten blijkt dat de twee algoritmen goede prestaties leveren, is theoretisch niet bewezen dat ze de consistentie van kaarten kunnen behouden. J. Guivant et al. Stelde een slam-optimalisatie-algoritme cekf (gecomprimeerd uitgebreid Kalman-filter) voor zonder enig informatieverlies. Cekf verdeelt de waargenomen kenmerkmarkeringen in delen A en B. A vertegenwoordigt het gebied grenzend aan de huidige positie van de robot, dat de actieve subkaart wordt genoemd. Wanneer de robot zich in de actieve subkaart a beweegt, worden de positie van de robot en subkaart a in realtime bijgewerkt door gebruik te maken van de observatie-informatie, en wordt de invloed van de observatie-informatie op subkaart B geregistreerd door middel van een recursieve methode; Wanneer de robot de actieve subkaart a verlaat, wordt de observatie-informatie zonder verlies naar de subkaart B verzonden, om de subkaart B in één keer bij te werken en tegelijkertijd een nieuwe actieve subkaart te creëren. De berekeningstijd van deze methode bestaat uit twee delen: slam in subkaart activiteit, waarvan de tijdscomplexiteit O () is, wat het aantal kenmerkmarkeringen is in subkaart activiteit a; De tijdscomplexiteit van het bijwerken van subkaart B is O (), wat het aantal kenmerkmarkeringen in kaart B is. Wanneer het tijdsinterval van het samenvoegen van subkaarten groot is, kan cekf de hoeveelheid slam-berekening effectief verminderen.3.3 decorrelatiemethode Een andere manier om de complexiteit van slam te verminderen is door enkele elementen met kleinere waarden in de covariantiematrix die de correlatierelatie vertegenwoordigen te negeren en er een dunne matrix van te maken. Door het verlies van informatie zal de consistentie van de kaart echter ook verloren gaan. Als de weergave van de covariantiematrix echter zodanig kan worden gewijzigd dat veel van de elementen ervan dichtbij of gelijk aan nul zijn, kan deze veilig worden genegeerd. SLAM Gebaseerd op uitgebreid informatiefilter (EIF) is gebaseerd op dit idee. EIF is de op informatie gebaseerde uitdrukking van EKF. Het verschil tussen beide is dat ze informatie in verschillende vormen vertegenwoordigen. EIF gebruikt de inverse matrix van de covariantiematrix om de onzekere informatie in slam weer te geven, die informatiematrix wordt genoemd. De fusie van twee niet-gerelateerde informatiematrices kan eenvoudigweg worden uitgedrukt als de toevoeging van twee matrices. Elk niet-diagonaal element in de informatiematrix vertegenwoordigt een beperkende relatie tussen de robot en het kenmerkmarkering of tussen het kenmerkmarkering en het kenmerkmarkering. Deze beperkingsrelaties kunnen lokaal worden bijgewerkt via de signaalrelatie van de systeemstatus. Door deze lokale update komt de informatiematrix bij benadering overeen met de schaarse matrix, en de fout die wordt veroorzaakt door het uitdunnen ervan is zeer klein. Volgens dit hebben S. Thrun et al. Stelde een slam-methode voor op basis van een sparse-informatiefilter seif (sparse uitgebreide informatiefilter), en bewees dat de tijdscomplexiteit van slam met behulp van een sparse-informatiematrix O (1) is. Hoewel EIF de tijdscomplexiteit van slam effectief kan verminderen, zijn er nog steeds enkele problemen bij de weergave en het beheer van kaartinformatie. Ten eerste kan de gemiddelde waarde van de systeemstatus slechts bij benadering in constante tijd worden berekend; Ten tweede is het toevoegen en verwijderen van kenmerkmarkeringen bij de op EIF gebaseerde slam-methode lastig.