Robotika je jedinstvena mješavina znanosti i tehnologije koja proizvodi strojeve koji oponašaju radnje ljudi.
Početkom 2000-ih, 90% robota bilo je u pogonima za proizvodnju automobila koji su zamijenili ljude za zadatke koji se ponavljaju. Sada roboti mogu usisavati kuće, pa čak i posluživati u restoranima.
Robot se obično sastoji od tri vrste komponenti; mehaničko tijelo; električni kostur i konačno mozak napravljen kodom.
Ove komponente omogućuju robotu prikupljanje podataka (često od senzora), donošenje odluka putem programirane logike za prilagodbu ponašanja i izvršavanje zadataka.
Roboti mogu imati tri vrste programa; daljinski upravljač (RC), Umjetna inteligencija (AI) ili hibrid.
RC programi zahtijevaju intervenciju čovjeka koji robotu može dati startni i/ili stop signal za izvršenje koda. Programi se sastoje od raznih vrsta algoritama, od kojih svaki ima različitu funkciju.
Što je algoritam?
Algoritam je niz linija koda koje robot može koristiti za izvođenje određenih instrukcija. Prevodi ideje programera na jezik koji razumiju roboti.
Algoritmi se mogu izraziti u mnogim vrstama zapisa, uključujući pseudokod, dijagrame toka, programski jezici, ili kontrolne tablice.
U ovom ćemo članku raspravljati o nekim uobičajenim vrstama algoritama koji se koriste u ovim programima.
Vrste algoritama koji se koriste u robotici
1. Bilo kada A* algoritam
Algoritam A* je algoritam za traženje puta koji se koristi za pronalaženje najoptimalnijeg puta između dvije točke, tj. s najmanjim troškom.
Algoritam A* u bilo kojem trenutku ima fleksibilan vremenski trošak i može vratiti najkraći put čak i ako je prekinut jer prvo generira neoptimalno rješenje, a zatim ga optimizira.
To omogućuje brže donošenje odluka jer robot može graditi na prethodnim izračunima umjesto da počinje od nule.
Kako radi?
To čini formiranjem 'stabla' koje se proteže od početnog čvora sve dok se ne aktiviraju kriteriji za završetak, što znači da je dostupan jeftiniji put.
2D mreža je napravljena s preprekama, a početna ćelija i ciljne stanice su točno označene.
Algoritam definira 'vrijednost' čvora pomoću f koji je zbroj parametara g (trošak pomicanja od početnog čvora do dotičnog čvora) i h (cijena prelaska od dotičnog čvora u ciljni čvor).
Aplikacije
Mnoge igre i web-bazirane karte koriste ovaj algoritam za učinkovito pronalaženje najkraćeg puta. Može se koristiti i za mobilne robote.
Također možete riješiti složene probleme poput Newton – Raphson iteracija primijenjena za pronalaženje kvadratnog korijena broja.
Također se koristi u problemima putanje za predviđanje gibanja i sudara objekta u prostoru.
2. D* Algoritam
D*, Focused D* i D* Lite su inkrementalni algoritmi pretraživanja za pronalaženje najkraćeg puta između dvije točke.
Oni su, međutim, mješavina A* algoritama i novih otkrića koja im omogućuju dodavanje informacija na svoje karte za nepoznate prepreke.
Zatim mogu ponovno izračunati rutu na temelju novih informacija, slično kao Mars Rover.
Kako radi?
Rad D* algoritma je sličan onome kod A*, algoritam prvo definira f, h i stvara otvorenu i zatvorenu listu.
Nakon toga, D* algoritam određuje g vrijednost trenutnog čvora koristeći g vrijednost njegovih susjednih čvorova.
Svaki susjedni čvor nagađa trenutnu g vrijednost, a najkraća g vrijednost se prilagođava kao nova g vrijednost.
Aplikacije
D* i njegove varijante naširoko se koriste za mobilne robote i autonomno vozilo navigacija.
Takvi navigacijski sustavi uključuju prototip sustava testiran na Marsovim roverima Opportunity i Spirit i navigacijski sustav koji je osvojio DARPA Urbani izazov.
3. PRM algoritam
PRM ili vjerojatnostni plan puta je mrežni graf mogućih putova koji se temelji na slobodnim i zauzetim prostorima na danoj karti.
Koriste se u složenim sustavima planiranja i za pronalaženje jeftinih putova oko prepreka.
PRM-ovi koriste nasumični uzorak točaka na svojoj karti gdje se robotski uređaj može kretati i tada se izračunava najkraći put.
Kako radi?
PRM se sastoji od faze izgradnje i upita.
U prvoj fazi crta se mapa puta koja aproksimira moguća kretanja u okruženju. Zatim se stvara slučajna konfiguracija i povezuje s nekim susjedima.
Konfiguracije početka i cilja povezuju se s grafom u fazi upita. Put se tada dobiva pomoću a Dijkstrin najkraći put upit.
Aplikacije
PRM se koristi u lokalnim planerima, gdje algoritam izračunava ravnu putanju između dvije točke, odnosno početne i ciljne točke.
Algoritam se također može koristiti za poboljšanje aplikacija za planiranje putanje i detekciju sudara.
4. Algoritam nulte točke (ZMP).
Zero Moment Point (ZMP tehnika) je algoritam koji koriste roboti kako bi zadržali ukupnu inerciju suprotnu reakcijskoj sili poda.
Ovaj algoritam koristi koncept izračunavanja ZMP-a i primjenjuje ga na način da uravnoteži dvonožne robote. Korištenje ovog algoritma na glatkoj podnoj površini naizgled omogućuje robotu da hoda kao da nema trenutka.
Proizvodne tvrtke kao što je ASIMO (Honda) koriste ovu tehniku.
Kako radi?
Kretanje hodajućeg robota planirano je pomoću jednadžbe kutnog momenta. Osigurava da generirani zglobni pokret jamči dinamičku posturalnu stabilnost robota.
Ta je stabilnost kvantificirana udaljenosti točke nultog trenutka (izračunate algoritmom) unutar granica unaprijed definiranog područja stabilnosti.
Aplikacije
Točke s nultim momentom mogu se koristiti kao metrika za procjenu stabilnosti protiv prevrtanja robota poput iRobot PackBot-a pri navigaciji rampama i preprekama.
5. Proporcionalni integralni diferencijalni (PID) algoritam upravljanja
Proporcionalno integrirano diferencijalno upravljanje ili PID, stvara petlju povratne informacije senzora za podešavanje postavki za mehaničke komponente izračunavanjem vrijednosti greške.
Ovi algoritmi kombiniraju sva tri osnovna koeficijenta, tj. omjer, integral i derivaciju, tako da proizvodi kontrolni signal.
Radi u stvarnom vremenu i primjenjuje ispravke gdje je potrebno. To se može vidjeti u self-vožnje automobila.
Kako radi?
PID regulator koristi tri upravljačka pojma proporcionalnost, integralni i derivacijski utjecaj na svoj izlaz kako bi primijenio točnu i optimalnu regulaciju.
Ovaj regulator kontinuirano izračunava vrijednost pogreške kao razliku između željene zadane vrijednosti i izmjerene procesne varijable.
Zatim primjenjuje korekciju kako bi se pogreška smanjila tijekom vremena podešavanjem kontrolne varijable.
Aplikacije
Ovaj kontroler može kontrolirati bilo koji proces koji ima mjerljiv izlaz, poznatu idealnu vrijednost za taj izlaz i ulaz u proces koji će utjecati na mjerljiv izlaz.
Regulatori se koriste u industriji za regulaciju temperature, tlaka, sile, težine, položaja, brzine i bilo koje druge varijable za koje postoji mjerenje.
Zaključak
Dakle, ovo su bili neki od najčešćih algoritama korištenih u robotici. Svi ovi algoritmi su prilično složeni s mješavinom fizikalnih, linearne algebre i statistike koja se koristi za mapiranje radnji i kretanja.
Međutim, kako tehnologija napreduje, robotički algoritmi će se razvijati i postati još složeniji. Roboti će moći obavljati više zadataka i više razmišljati za sebe.
Ako ste uživali u ovom članku, pretplatite se na HashDork's Weekly ažuriranja putem e-pošte, gdje dijelimo najnovije vijesti o AI, ML, DL, programiranju i tehnologiji budućnosti.
Ostavi odgovor