Кіріспе
Роботтар мен автономды көліктер пайдаланатын есептеулік навигациялық техника. Бір мезгілдегі локализация және карталау (SLAM) – бұл белгісіз ортаның картасын құру немесе жаңартудың есептеулік мәселесі, сонымен бірге оның ішінде агенттің орналасқан жерін анықтау. Бұл бастапқыда «тауық немесе жұмыртқа» сияқты проблема болып көрінсе де, белгілі бір орталар үшін шамамен шешілетін бірнеше алгоритмдер бар. Көбінесе қолданылатын әдістерге бөлшектер сүзгісі, кеңейтілген Кальман сүзгісі, ковариациялық қиылыс және GraphSLAM жатады. SLAM алгоритмдері есептеу геометриясы және компьютерлік көру негізінде құрылған және роботтардың навигациясында, роботтардың карта жасауында, сондай-ақ виртуалды және толықтырылған шындық үшін қолданылады. SLAM алгоритмдері қолданылатын ресурстарға бейімделеді және мінсіздікке емес, жұмысқа қабілеттілікке бағытталған. Осыған дейін жарияланған тәсілдер өздігінен жүретін автомобильдерде, ұшқышсыз әуе кемелерінде, автономды су асты кемелерінде, планеталық роверлерде, жаңа үйдегі роботтарда және тіпті адам денесінің ішінде қолданылады.
Simultaneous localization and mapping (SLAM) is the computational problem of constructing or updating a map of an unknown environment while simultaneously keeping track of an agent's location within it. While this initially appears to be a chicken or the egg problem, there are several algorithms known to solve it in, at least approximately, tractable time for certain environments. Popular approximate solution methods include the particle filter, extended Kalman filter, covariance intersection, and GraphSLAM. SLAM algorithms are based on concepts in computational geometry and computer vision, and are used in robot navigation, robotic mapping and odometry for virtual reality or augmented reality. SLAM algorithms are tailored to the available resources and are not aimed at perfection but at operational compliance. Published approaches are employed in self driving cars, unmanned aerial vehicles, autonomous underwater vehicles, planetary rovers, newer domestic robots and even inside the human body.
Алгоритмдер
Жоғарыда келтірілген теңдеулерді жуықтау үшін қолданылатын статистикалық әдістерге Кальман сүзгілері және бөлшектік сүзгілер (Монте-Карло локализациясының негізгі алгоритмі) жатады. Олар роботтың позыциясы және картаның параметрлері үшін кейіннен алынған ықтималдық таралуын бағалауға мүмкіндік береді. Ковариациялық қиылысуды қолдана отырып, жоғарыдағы модельге консервативті түрде жуықтайтын әдістер, үлкен масштабты қолданулар үшін алгоритмдік күрделілікті азайту мақсатында статистикалық тәуелсіздік туралы болжамдарға сүйенуден аулақ бола алады. Басқа жуықтау әдістері, қарапайым шектелген аймақтарды пайдаланып белгісіздікті көрсету арқылы есептеу тиімділігін жақсартады. Мүшелік жиынтығының әдістері негізінен интервалдық шектеулерді таратуға негізделген. Олар роботтың позыциясын және картаның жиындық жуықтауын қамтитын жиынтықты ұсынады. Түйіндемелі түзету және, жалпы алғанда, максималды апостериорлы бағалау (MAP) – бұл бейне деректерін пайдаланатын SLAM үшін тағы бір танымал әдіс. Ол картаның сенімділігін арттыра отырып, позыциялар мен нысандардың орналасуын бірлесіп бағалайды және Google ARCore сияқты коммерциялық SLAM жүйелерінде қолданылады, бұл олардың бұрынғы кеңейтілген шындық есептеу платформасы Tango-ны (бұрынғы Project Tango) алмастырды. MAP бағалаушылары сенсорлық деректерді ескере отырып, роботтың позыциясы мен картаның ең ықтимал түсіндірмесін есептейді, емес, бүкіл кейіннен алынған ықтималдық таралуын бағауға тырысады. Жаңа SLAM алгоритмдері әлі де белсенді зерттеу саласы болып табылады және көбінесе карталардың, сенсорлардың және модельдердің түрлеріне қатысты әртүрлі талаптар мен болжамдарға негізделеді. SLAM жүйелерінің көптеген түрлерін осы аспектілердің әрқайсысынан таңдаулардың комбинациясы ретінде қарастыруға болады.
Картаға түсіру
Топологиялық карталар – геометриялық түрде дәл карта жасаудың орнына, қоршаған ортаның байланысын (яғни топологиясын) көрсететін қоршаған ортаны бейнелеу әдісі. Топологиялық SLAM тәсілдері метрикалық SLAM алгоритмдерінде жаһандық сәйкестікті қамтамасыз ету үшін қолданылған. Керісінше, тор карталары топологиялық әлемді бейнелеу үшін дискретті жасушалардың массивтерін (әдетте шаршы немесе алтыбұрышты) пайдаланады және қай жасушалар толыққанды екендігі туралы қорытынды жасайды. Есептеуді жеңілдету үшін жасушалар статистикалық түрде тәуелсіз деп есептелуі мүмкін. Мұндай болжам бойынша, егер жаңа картаның жасушалары белгілі бір орналасқан жердегі бақылаулармен сәйкес келсе, 1, ал сәйкес келмесе 0 деп белгіленеді. Қазіргі заманғы автотұрақты көліктер алдын ала жиналған, өте егжей-тегжейлі карта деректерін кеңінен пайдалану арқылы карта жасау мәселесін көбінесе толығымен жеңілдетеді. Бұл жолдағы жеке ақ сызық сегменттері мен тротуарлардың орналасқан жерін белгілеу деңгейіндегі түсіндірмелерді қамтуы мүмкін. Google StreetView сияқты орналасқан жері көрсетілген визуалды деректер де картаның бір бөлігі ретінде қолданылуы мүмкін. Негізінен, мұндай жүйелер SLAM мәселесін қарапайым локализациялау міндетіне дейін жеңілдетеді, соның ішінде қозғалатын объектілер, мысалы, көліктер мен адамдар, тек орындалу кезінде картада жаңартылуы мүмкін.
Сенсорлық
SLAM әрқашан бірнеше түрлі сенсорларды қолданады, ал әртүрлі сенсор түрлерінің мүмкіндіктері мен шектері жаңа алгоритмдерді дамытуға ықпал етті. Статистикалық тәуелсіздік – өлшемдердегі қателіктер мен шумен күресу үшін міндетті талап. Сенсорлардың әртүрлі түрлері әртүрлі SLAM алгоритмдерін тудырады, олардың сенсорларға ең қолайлы болжамдары болады. Бір жағынан, лазерлік сканерлер немесе визуалды ерекшеліктер аймақтағы көптеген нүктелердің толық мәліметтерін ұсынады, кейде SLAM-ды қажетсіз етеді, себебі бұл нүктелік бұлттардағы пішіндер бейне тіркеу арқылы әр қадамда оңай және нақты түрде келістіріледі. Керісінше, тактильді сенсорлар өте сирек, себебі олар агентке өте жақын нүктелер туралы ғана ақпарат береді, сондықтан таза тактильді SLAM-да толықтыру үшін күшті алдын ала модельдер қажет. SLAM-ның көптеген практикалық міндеттері осы визуалды және тактильді шексіздіктер арасында орналасқан. Сенсорлық модельдер негізінен белгілерге негізделген және шикі деректерге негізделген тәсілдерге бөлінеді. Белгілер – бұл әлемде бірегей анықталатын объектілер, олардың орналасуын Wi-Fi қолжетімділік нүктелері немесе радио маяктары сияқты сенсорлар бағалай алады. Шикі деректерге негізделген тәсілдер белгілерді анықтау қажеттігін жоққа шығарады және оларды тікелей орналасу функциясы ретінде модельдейді. Оптикалық сенсорлар бір өлшемді (бір сәулелі) немесе 2D (айналмалы) лазерлік қашықтық өлшегіштер, 3D жоғары ажыратымдылықты жарық детекторы және қашықтық анықтағыш (лидар), 3D флэш-лидар, 2D немесе 3D сонарлық сенсорлар және бір немесе бірнеше 2D камералар болуы мүмкін. Келесі зерттеулерге кіреді. Визуалды және лидарлық сенсорлар көп жағдайда белгілерді анықтауға жеткілікті ақпарат береді. SLAM-ның басқа да жаңа түрлеріне тактильді SLAM (жергілікті жанасу арқылы сезіну), радарлық SLAM, акустикалық SLAM және Wi-Fi SLAM (жақын Wi-Fi қолжетімділік нүктелерінің күшін сезіну) жатады. Соңғы тәсілдер квази-оптикалық сымсыз қашықтықты көп жақтылыққа (нақты уақыт орналасу жүйесі (RTLS)) немесе SLAM-мен бірлесіп, сымсыз өлшемдердің тұрақсыздығына байланысты көп бұрышты қолдануға мүмкіндік береді. Адам жаяу жүргіншілері үшін SLAM түрі негізгі сенсор ретінде аяқ киімге орнатылған инерциялық өлшеу құралын пайдаланады және жаяу жүргіншілердің қабырғалардан аулақ бола алуына сүйене отырып, ішкі орналасу жүйесі арқылы ғимараттардың еден жоспарларын автоматты түрде құрастырады. Кейбір сыртқы қолданбалар үшін жоғары дәлдікті дифференциалды GPS сенсорларының арқасында SLAM қажеттілігі толығымен жойылған. SLAM тұрғысынан, бұл сенсорлардың мүмкіндіктері соншалықты жоғары, олар тұжырымдаманы толығымен анықтайтын орналасу сенсорлары ретінде қарастырылуы мүмкін. Алайда, GPS сенсорлары кейде істен шығуы мүмкін немесе толығымен тоқтауы мүмкін, мысалы, әскери қақтығыс кезінде, бұл кейбір робототехникалық қолданбалар үшін ерекше қызығушылық тудырады.
Кинематикалық модельдеу
Бұл термин модельдің кинематикасын көрсетеді, ол әдетте роботқа берілген әрекет командалары туралы ақпаратты қамтиды. Модельдің құрамы ретінде роботтың кинематикасы, табиғи және сыртқы шу жағдайында сезімталдықты бағалауды жақсарту мақсатында қосылады. Динамикалық модель әртүрлі сенсорлардың, әртүрлі ішінара қателік модельдерінің үлесін теңестіріп, роботтың орналасуы мен бағытын қамтитын карта түрінде нақты виртуалды бейнелеуді, ықтималдық бұлты ретінде ұсынады. Карта жасау – мұндай модельдің соңғы бейнелеуі, ал карта – осы бейнелеудің өзі немесе модельдің абстрактілі анықтамасы. 2D роботтар үшін кинематика көбінесе айналу және "алға жылжу" командаларының комбинациясымен беріледі, олар қосымша мотор шуымен іске асырылады. Анық айтқанда, бұрыштық және сызықтық бағыттағы тәуелсіз шудан құралған таралым Гаусс емес, бірақ көбінесе Гаусс таралымымен жуықтастырылады. Балама тәсіл – кинематикалық терминді ескермеу және әрбір командадан кейін робот дөңгелектерінен одометриялық деректерді алу, мұндай деректерді кинематика емес, сенсорлардың бірі ретінде қарастыруға болады.
Жылжымалы заттар
Статикалық емес орталар, мысалы, басқа көліктер немесе жаяу адамдар бар орталар, зерттеу үшін үнемі қиындықтар туғызады. DATMO-мен SLAM – бұл модель, ол қозғалатын объектілерді агенттің өзінің қозғалысын бақылаған сияқты қадағалайды.
Бұранданы жабу
Loop closure - бұрын сапар шеккен жерді тану және оған сәйкес сенімді жаңарту мәселесі. Бұл қиындық тудыруы мүмкін, себебі модель немесе алгоритм қателіктері сол жерге төменгі ықтималдықтарды (приорларды) тағайындауы мүмкін. Көбінесе loop closure әдістері сенсорлық өлшемдердің ұқсастығын есептеу үшін қосымша алгоритмді қолданады және сәйкестік анықталғанда орналасу ықтималдықтарын (приорларын) жаңартады. Мысалы, бұл әрбір бұрын сапар шеккен орыннан алынған масштабқа тәуелсіз ерекшеліктерді (SIFT) тасымалдаушы (feature) сипаттамаларының сөздік векторларын сақтап, салыстыру арқылы іске асырылуы мүмкін.
Барлау
Active SLAM картаны ең тиімді түрде құру үшін SLAM және келесі қозғалыс бағытын анықтаудың біріктірілген мәселесін зерттейді. Белсенді іздеу қажеттілігі, әсіресе тактильді SLAM сияқты ақпараттың аз түсетін жағдайларда ерекше маңызды. Белсенді SLAM көбінесе гипотетикалық әрекеттер бойынша картаның энтропиясын жуықтау арқылы жүзеге асырылады. "Көп агенттік SLAM" бұл мәселені бірнеше роботтың өзара үйлесімділікпен оңтайлы іздеуді жүзеге асыруға мүмкіндік беретін жағдайға дейін кеңейтеді.
Биологиялық әсер
Нейроғылымда гиппокамп SLAM-ға ұқсас есептеулерде қатысатын сияқты, осы арқылы орындық жасушалар пайда болады және RatSLAM сияқты биошабытталған SLAM жүйелерінің негізін қалады.
Бірлескен SLAM
Бірлескен SLAM бірнеше роботтардың немесе пайдаланушылардың сенсорларын біріктіре отырып, 3D карталар құрайды. Бұл мүмкіндік 2021 жылғы DARPA Subterranean Challenge-де көптеген командалармен көрсетілді.
Акустикалық SLAM
Жалпы SLAM мәселесінің кеңейтілуі акустикалық салаға қолданылды, онда орта дыбыс көздерінің үш өлшемді (3D) орналасуы арқылы бейнеленеді, бұл aSLAM (Акустикалық бір мезгілдегі локализация және карталау) деп аталады. Бұл техниканың алғашқы іске асырылымдары дыбыс көзінің орналасу бағытының (DoA) бағалауларын пайдаланды және дыбыс көзінің орналасуын анықтау үшін дыбыс локализациясының негізгі әдістеріне сүйенді. Акустикалық SLAM-ды пайдалану үшін бақылаушы немесе робот микрофондық тізіммен жабдықталуы керек, осылайша DoA ерекшеліктері дұрыс бағаланады. Акустикалық SLAM акустикалық кеңістікті карталау бойынша одан әрі зерттеулерге негіз салды және сөйлеу арқылы адам-робот өзара әрекеттесуінде маңызды рөл атқара алады. Көптеген және кейде үзіліссіз дыбыс көздерін картаға түсіру үшін акустикалық SLAM жүйесі кездейсоқ шекті жиынтықтар теориясының негіздерін қолданып, акустикалық белгілердің өзгеруін басқарады. Дегенмен, акустикалық түрде алынған ерекшеліктердің сипаты Акустикалық SLAM-ды ортадағы дыбыс қайталануы, үнсіздік және шу мәселелеріне осал етеді.
Аудиовизуалды SLAM
Адам-робот өзара әрекеттесуі үшін әзірленген аудиовизуалды SLAM – бұл ортадағы акустикалық және визуалды деректерден алынған белгілерді біріктіретін жүйе. Адамның өзара әрекеттесуі визуалды ғана емес, сонымен қатар акустикалық деректер арқылы қабылданатын белгілермен сипатталады; сондықтан, адамға бағытталған роботтар мен машиналар үшін SLAM алгоритмдері екі деректер жиынтығын да ескеруі тиіс. Аудиовизуалды жүйе адамның позасы сияқты визуалды белгілерді және адамның сөзі сияқты акустикалық белгілерді пайдаланып, адам белгілерінің орналасқан жерін анықтайды және карталайды, сондай-ақ ортаның сенімді картасын құру үшін сенімдерді біріктіреді. Мобильді робототехникада (мысалы, дрондар, сервистік роботтар) аз қуатты, жеңіл жабдықтарды – монокулярлы камераларды немесе микроэлектронды микрофондар жиынтығын пайдалану тиімді. Аудиовизуалды SLAM мұндай сенсорлардың толықтыратын қызметін де қамтамасыз ете алады, бұл аудио сенсорларға тән тар көру бұрышын, белгілердің жабылуын және жеңіл визуалды сенсорларға тән оптикалық бұзылыстарды толық көру бұрышымен және акустикалық сенсорларға тән кедергісіз белгілермен толықтыруға мүмкіндік береді. Аудио сенсорлардың резонансқа, дыбыс көзінің инерциясыздығына және шуға сезімталдығын визуалды деректерден алынған белгілерді біріктіру арқылы толықтыруға болады. Ортадағы акустикалық және визуалды деректердің толықтыратын қызметі адам сөзімен және адамның қозғалысымен толыққанды өзара әрекеттесетін роботтар мен машиналарды жасау үшін маңызды болуы мүмкін.
Орындау әдістері
Әр түрлі SLAM алгоритмдері ашық кодты Robot Operating System (ROS) кітапханаларында іске асырылған, көбінесе 3D карталар немесе OpenCV-ден алынған визуалды ерекшеліктермен бірге Point Cloud Library пайдаланылады.
EKF SLAM
Робототехникада EKF SLAM – SLAM үшін кеңейтілген Калман сүзгісін (EKF) пайдаланатын алгоритмдер класы. Әдетте, EKF SLAM алгоритмдері белгілі бір нысандарға негізделеді және деректерді байланыстыру үшін максималды ықтималдық алгоритмін қолданады. 1990-шы және 2000-шы жылдары EKF SLAM, FastSLAM енгізілгенге дейін SLAM үшін стандартты әдіс болды. EKF-ке байланысты гаусс шуы болғандықтан, EKF SLAM белгісіздікпен күресу мүмкіндігі нашарлайды. Постериордағы белгісіздік деңгейі жоғары болғанда, EKF-тегі сызықтықтандыру қателіктерге әкеледі.
GraphSLAM
Робототехникада GraphSLAM – бақылаудың өзара тәуелділіктерінің факторлық графигін құру арқылы жасалған сиреп ақпарат матрицаларын пайдаланатын SLAM алгоритмі (екі бақылау бір-бірімен байланысты, егер олар бір нысан туралы деректерді қамтыса). Осы саладағы басқа да маңызды жұмыстар Хью Ф. Дюрант Уайттың зерттеу тобымен 1990 жылдардың басында жүргізілді, ол SLAM мәселелерінің шешімдерінің шексіз деректер көлемінде бар екенін көрсетті. Бұл жағдай есептеу жүктемесін төмендететін және шешімді жуықтап табуға мүмкіндік беретін алгоритмдерді іздеуге түрткі болды. SLAM аббревиатурасы алғаш рет 1995 жылы ISR журналында жарияланған «Автономды басқарылатын көлік құралдарын орналастыру» деген мақалада қолданылды. Себастьян Трун басқарған STANLEY және JUNIOR автомобильдері 2000 жылдары DARPA Grand Challenge жарысын жеңіп алды және DARPA Urban Challenge жарысында екінші орынға ие болды, олар SLAM жүйелерін қамтыды, бұл SLAM-ды бүкіл әлемге таныстырды. Бүгінде SLAM-ның кең таралған қолданысын тұтынушылық робот шаң сорғыштарында және Meta Quest 2 және PICO 4 сияқты маркерсіз, іштен бағдарламалауды қолданатын виртуалды шындық гарнитураларында кездестіруге болады.