Robotika je unikátna zmes vedy a technológie, ktorá vyrába stroje napodobňujúce činnosti ľudí.
Začiatkom roku 2000 bolo 90 % robotov v závodoch na výrobu automobilov, ktoré nahrádzali ľudí pri opakujúcich sa úlohách. Teraz môžu roboty vysávať domy a dokonca slúžiť v reštauráciách.
Robot sa zvyčajne skladá z troch typov komponentov; mechanické telo; elektrická kostra a nakoniec mozog vytvorený pomocou kódu.
Tieto komponenty umožňujú robotom zbierať dáta (často zo senzorov), prijímať rozhodnutia prostredníctvom naprogramovanej logiky, aby prispôsobil správanie a dokončil úlohy.
Roboty môžu mať tri typy programov; Diaľkové ovládanie (RC), Umelá inteligencia (AI) alebo Hybrid.
RC programy vyžadujú zásah človeka, ktorý môže dať robotovi signál na spustenie a/alebo zastavenie na vykonanie kódu. Programy pozostávajú z rôznych typov algoritmov, z ktorých každý má inú funkciu.
Čo je to algoritmus?
Algoritmus je séria riadkov kódu, ktoré môže robot použiť na vykonanie určitých pokynov. Prekladá myšlienky vývojára do jazyka, ktorému rozumejú roboti.
Algoritmy môžu byť vyjadrené v mnohých druhoch zápisu, vrátane pseudokódu, vývojových diagramov, programovacie jazykyalebo kontrolné tabuľky.
V tomto článku budeme diskutovať o niektorých bežných typoch algoritmov používaných v týchto programoch.
Typy algoritmov používaných v robotike
1. Algoritmus A* kedykoľvek
Algoritmus A* je algoritmus vyhľadávania cesty, ktorý sa používa na nájdenie najoptimálnejšej cesty medzi dvoma bodmi, tj s najnižšími nákladmi.
Anytime A* Algorithm má flexibilné časové náklady a môže vrátiť najkratšiu cestu, aj keď je prerušená, pretože najskôr vygeneruje neoptimálne riešenie a potom ho optimalizuje.
To umožňuje rýchlejšie rozhodovanie, pretože robot môže stavať na predchádzajúcich výpočtoch namiesto toho, aby začínal od nuly.
Ako to funguje?
Robí to vytvorením „stromu“, ktorý sa rozprestiera od počiatočného uzla, až kým sa nespustia kritériá pre ukončenie, čo znamená, že je k dispozícii menej nákladná cesta.
Vytvorí sa 2D mriežka s prekážkami a počiatočná bunka a cieľové bunky sú špendlíkom označené.
Algoritmus definuje 'hodnotu' uzla pomocou f, ktorá je súčtom parametrov g (náklady na presun z počiatočného uzla do príslušného uzla) a h (cena na presun z príslušného uzla do cieľového uzla).
použitie
Mnoho hier a webových máp používa tento algoritmus na efektívne nájdenie najkratšej cesty. Dá sa použiť aj pre mobilné roboty.
Môžete tiež riešiť zložité problémy, ako napr Newton-Raphson iterácia použitá na nájdenie druhej odmocniny čísla.
Používa sa aj pri problémoch s trajektóriou na predpovedanie pohybu a kolízie objektu vo vesmíre.
2. D* Algoritmus
D*, Focused D* a D* Lite sú inkrementálne vyhľadávacie algoritmy na nájdenie najkratšej cesty medzi dvoma bodmi.
Sú však zmesou A* algoritmov a nových objavov, ktoré im umožňujú pridávať informácie do svojich máp o neznámych prekážkach.
Potom môžu prepočítať trasu na základe nových informácií, podobne ako Mars Rover.
Ako to funguje?
Fungovanie algoritmu D* je podobné ako u A*, algoritmus najskôr definuje f, h a vytvorí otvorený a uzavretý zoznam.
Potom algoritmus D* určí hodnotu g aktuálneho uzla pomocou hodnoty g susedných uzlov.
Každý susedný uzol odhadne aktuálnu hodnotu g a najkratšia hodnota g sa prispôsobí ako nová hodnota g.
použitie
D* a jeho varianty sú široko používané pre mobilné roboty a autonómne vozidlo navigácia.
Medzi takéto navigačné systémy patrí prototyp systému testovaný na Mars roveroch Opportunity a Spirit a navigačný systém, ktorý vyhral DARPA Urban Challenge.
3. Algoritmus PRM
PRM alebo pravdepodobnostná mapa je sieťový graf možných ciest založených na voľných a obsadených miestach na danej mape.
Používajú sa v komplexných plánovacích systémoch a tiež na hľadanie lacných ciest okolo prekážok.
PRM používajú náhodnú vzorku bodov na svojej mape, kde sa môže prípadne pohybovať robotické zariadenie, a potom sa vypočíta najkratšia cesta.
Ako to funguje?
PRM pozostáva z fázy konštrukcie a dopytu.
V prvej fáze sa vytvorí graf, ktorý aproximuje možné pohyby v prostredí. Potom sa vytvorí náhodná konfigurácia a pripojí sa k niektorým susedom.
Konfigurácie začiatku a cieľa sú spojené s grafom vo fáze dopytu. Cestu potom získa a Dijkstrova najkratšia cesta dopyt.
použitie
PRM sa používa v miestnych plánovačoch, kde algoritmus počíta priamu cestu medzi dvoma bodmi, a to počiatočným a cieľovým bodom.
Algoritmus možno použiť aj na zlepšenie plánovania ciest a aplikácií na detekciu kolízií.
4. Algoritmus nulového bodu (ZMP).
Zero Moment Point (technika ZMP) je algoritmus používaný robotmi na udržanie celkovej zotrvačnosti oproti reakčnej sile podlahy.
Tento algoritmus využíva koncept výpočtu ZMP a aplikuje ho spôsobom na vyváženie bipedálnych robotov. Použitie tohto algoritmu na hladkom povrchu podlahy zdanlivo umožňuje robotovi kráčať, ako keby neexistoval žiadny okamih.
Výrobné spoločnosti ako ASIMO (Honda) používajú túto techniku.
Ako to funguje?
Pohyb kráčajúceho robota sa plánuje pomocou rovnice momentu hybnosti. Zabezpečuje, že generovaný pohyb kĺbov zaručuje dynamickú posturálnu stabilitu robota.
Táto stabilita je kvantifikovaná vzdialenosťou bodu nulového momentu (vypočítaného algoritmom) v rámci hraníc vopred definovanej oblasti stability.
použitie
Body nulového momentu možno použiť ako metriku na posúdenie stability robotov, ako je iRobot PackBot, proti prevráteniu pri navigácii po rampách a prekážkach.
5. Algoritmus riadenia proporcionálneho integrálneho diferenciálu (PID).
Proporcionálna integrálna diferenciálna regulácia alebo PID vytvára spätnoväzbovú slučku snímača na úpravu nastavení pre mechanické komponenty výpočtom hodnoty chyby.
Tieto algoritmy kombinujú všetky tri základné koeficienty, tj proporčný, integrálny a derivačný tak, že vytvárajú riadiaci signál.
Funguje v reálnom čase a tam, kde je to potrebné, aplikuje korekcie. Toto je možné vidieť v self-riadiť autá.
Ako to funguje?
Regulátor PID používa na svoj výstup tri riadiace členy proporcionality, integrálneho a derivačného vplyvu, aby sa aplikovalo presné a optimálne riadenie.
Tento regulátor nepretržite vypočítava chybovú hodnotu ako rozdiel medzi požadovanou požadovanou hodnotou a meranou procesnou premennou.
Potom použije korekciu na minimalizáciu chyby v priebehu času úpravou riadiacej premennej.
použitie
Tento regulátor môže riadiť akýkoľvek proces, ktorý má merateľný výstup, známu ideálnu hodnotu pre tento výstup a vstup do procesu, ktorý ovplyvní merateľný výstup.
Ovládače sa používajú v priemysle na reguláciu teploty, tlaku, sily, hmotnosti, polohy, rýchlosti a akejkoľvek inej premennej, pre ktorú existuje meranie.
záver
Toto boli niektoré z najbežnejších algoritmov používaných v robotike. Všetky tieto algoritmy sú pomerne zložité, pričom na mapovanie akcií a pohybu sa používa zmes fyzikálnych prvkov, lineárnej algebry a štatistík.
S technologickým pokrokom sa však robotické algoritmy budú vyvíjať, aby sa stali ešte zložitejšími. Roboty budú môcť plniť viac úloh a myslieť viac za seba.
Ak sa vám tento článok páčil, prihláste sa na odber týždenníka HashDork's Weekly aktualizácie prostredníctvom e-mailov, kde zdieľame najnovšie správy o AI, ML, DL, Programming & Future Tech.
Nechaj odpoveď