Robotteknologi er en unik blanding af videnskab og teknologi, der producerer maskiner, der efterligner menneskers handlinger.
I begyndelsen af 2000'erne var 90 % af robotterne i bilfabrikker, der erstattede mennesker til gentagne opgaver. Nu kan robotter støvsuge huse og endda tjene på restauranter.
En robot består normalt af tre typer komponenter; det mekaniske legeme; det elektriske skelet, og til sidst en hjerne lavet med kode.
Disse komponenter giver en robot mulighed for at indsamle data (ofte fra sensorer), træffe beslutninger via programmeret logik for at tilpasse adfærd og fuldføre opgaver.
Robotter kan have tre typer programmer; Fjernbetjening (RC), Kunstig intelligens (AI) eller hybrid.
RC-programmer kræver indgriben af et menneske, som kan give start- og/eller stopsignalet til udførelse af kode til robotten. Programmer består af forskellige typer algoritmer med hver sin funktion.
Hvad er en algoritme?
En algoritme er en række kodelinjer, som en robot kan bruge til at udføre bestemte instruktioner. Det oversætter udviklerens ideer til et sprog, der forstås af robotter.
Algoritmer kan udtrykkes i mange slags notation, herunder pseudokode, flowcharts, programmeringssprogeller kontroltabeller.
I denne artikel vil vi diskutere nogle almindelige typer algoritmer, der bruges i disse programmer.
Typer af algoritmer, der bruges i robotteknologi
1. Anytime A* Algoritme
A*-algoritmen er en stisøgningsalgoritme, der bruges til at finde den mest optimale sti mellem to punkter, dvs. med den mindste pris.
Anytime A* Algorithm har en fleksibel tidsomkostning og kan returnere den korteste vej, selvom den afbrydes, da den først genererer en ikke-optimal løsning og derefter optimerer den.
Dette giver mulighed for hurtigere beslutningstagning, da robotten kan bygge på tidligere beregninger i stedet for at starte fra bunden.
Hvordan virker det?
Det gør den ved at danne et 'træ', som strækker sig ind fra startknudepunktet, indtil kriterierne for afslutning udløses, hvilket betyder, at der er en billigere sti tilgængelig.
Et 2D-gitter er lavet med forhindringer, og en startcelle og målceller er markeret.
Algoritmen definerer en knudes 'værdi' ved f, som er summen af parametrene g (omkostningen ved at flytte fra startknudepunktet til den pågældende knude) og h (omkostningen ved at flytte fra den pågældende knude til målknuden).
Applikationer
Mange spil og webbaserede kort bruger denne algoritme til effektivt at finde den korteste vej. Den kan også bruges til mobile robotter.
Du kan også løse komplekse problemer som f.eks Newton-Raphson iteration anvendt til at finde kvadratroden af et tal.
Det bruges også i baneproblemer til at forudsige bevægelse og kollision af et objekt i rummet.
2. D* Algoritme
D*, Focused D* og D* Lite er inkrementelle søgealgoritmer til at finde den korteste vej mellem to punkter.
De er imidlertid en blanding af A*-algoritmer og nye opdagelser, der giver dem mulighed for at tilføje information til deres kort for ukendte forhindringer.
De kan derefter genberegne en rute baseret på ny information, ligesom Mars Rover.
Hvordan virker det?
Funktionen af D*-algoritmen ligner den for A*, algoritmen definerer først f, h og opretter en åben og lukket liste.
Herefter bestemmer D*-algoritmen den aktuelle nodes g-værdi ved hjælp af g-værdien af dens naboknudepunkter.
Hver tilstødende node laver et gæt om den nuværende g-værdi, og den korteste g-værdi tilpasses som den nye g-værdi.
Applikationer
D* og dens varianter er meget brugt til mobil robot og autonomt køretøj navigation.
Sådanne navigationssystemer omfatter et prototypesystem, der er testet på Mars-roverne Opportunity og Spirit, og det navigationssystem, der vandt DARPA Urban Challenge.
3. PRM-algoritme
En PRM, eller probabilistisk køreplan, er en netværksgraf over mulige stier baseret på ledige og besatte pladser på et givet kort.
De bruges i komplekse planlægningssystemer og også til at finde billige veje rundt om forhindringer.
PRM'er bruger en tilfældig stikprøve af punkter på deres kort, hvor en robotenhed muligvis kan bevæge sig, og derefter beregnes den korteste vej.
Hvordan virker det?
PRM består af en konstruktions- og forespørgselsfase.
I den første fase tegnes en køreplan, der tilnærmer mulige bevægelser i et miljø. En tilfældig konfiguration oprettes derefter og forbindes til nogle naboer.
Start- og målkonfigurationerne er forbundet med grafen i forespørgselsfasen. Stien opnås så ved en Dijkstras korteste vej forespørgsel.
Applikationer
PRM bruges i lokale planlæggere, hvor algoritmen beregner en ret linje sti mellem to punkter, nemlig initial- og målpunkterne.
Algoritmen kan også bruges til at forbedre stiplanlægning og kollisionsdetektionsapplikationer.
4. Zero Moment Point (ZMP) Algoritme
Zero Moment Point (ZMP-teknik) er en algoritme, der bruges af robotter til at holde den totale inerti modsat gulvets reaktionskraft.
Denne algoritme bruger konceptet med at beregne ZMP og anvender det på en måde til at balancere tobenede robotter. Ved at bruge denne algoritme på en glat gulvoverflade tillader robotten tilsyneladende at gå, som om der ikke var noget øjeblik.
Produktionsvirksomheder som ASIMO (Honda) bruger denne teknik.
Hvordan virker det?
Bevægelsen af en gårobot er planlagt ved hjælp af vinkelmoment-ligningen. Det sikrer, at den genererede ledbevægelse garanterer robottens dynamiske posturale stabilitet.
Denne stabilitet kvantificeres ved afstanden af nul-moment-punktet (beregnet af algoritmen) inden for grænserne af et foruddefineret stabilitetsområde.
Applikationer
Nul-momentpunkter kan bruges som en metrik til at vurdere stabiliteten mod at vælte af robotter som iRobot PackBot, når de navigerer på ramper og forhindringer.
5. Proportional Integral Differential (PID) kontrolalgoritme
Proportional Integral Differential Control eller PID, skaber en sensorfeedback loop til at justere indstillinger for mekaniske komponenter ved at beregne fejlværdien.
Disse algoritmer kombinerer alle tre grundlæggende koefficienter, dvs. proportion, integral og afledt, således at den producerer et styresignal.
Det fungerer i realtid og anvender rettelser, hvor det er nødvendigt. Dette kan ses i selvkørende biler.
Hvordan virker det?
PID-controlleren bruger tre kontroltermer: proportionalitet, integral og afledt indflydelse på dens output for at anvende nøjagtig og optimal kontrol.
Denne regulator beregner løbende en fejlværdi som forskellen mellem et ønsket sætpunkt og en målt procesvariabel.
Den anvender derefter en korrektion for at minimere fejlen over tid ved at justere kontrolvariablen.
Applikationer
Denne controller kan styre enhver proces, der har et målbart output, en kendt ideel værdi for det output og et input til processen, der vil påvirke det målbare output.
Controllere bruges i industrien til at regulere temperatur, tryk, kraft, vægt, position, hastighed og enhver anden variabel, for hvilken der findes en måling.
Konklusion
Så disse var nogle af de mest almindelige algoritmer, der blev brugt i robotteknologi. Alle disse algoritmer er ret komplekse med en blanding af fysik, lineær algebra og statistik, der bruges til at kortlægge handlinger og bevægelser.
Men efterhånden som teknologien udvikler sig, vil robotalgoritmer udvikle sig til at blive endnu mere komplekse. Robotterne vil kunne klare flere opgaver og tænke mere selv.
Hvis du kunne lide denne artikel, abonnere på HashDork's Weekly opdateringer via e-mails, hvor vi deler de seneste AI, ML, DL, Programmering & Future Tech nyheder.
Giv en kommentar