topologija v robotiki

21
1 TOPOLOGIJA V ROBOTIKI Robotika je veda, ki se ukvarja z načrtovanjem, konstruiranjem in krmiljenjem robotov. Gre za izrazito interdisciplinarno področje, ki združuje mnoga inženirska in računalniška znanja, uporablja pa tudi matematične rezultate in metode iz geometrije, analize, numerike in teorije algoritmov. Na predavanju bomo predstavili dva topološka problema, ki izvirata iz robotike. Prvi obravnava znano težavo, da pri robotskih napravah, ki imajo rotacijske elemente vedno obstajajo lege, pri katerih se naprave v določenem smislu zaskočijo. Izkaže se, da so problematične točke natanko singularne točke t.im direktne kinematične preslikave, s pomočjo topologije pa lahko razložimo, zakaj se singularnim točkam ni mogoče izogniti. Drugi primer je povezan z izdelavo navigacijskih načrtov za robote, kjer moramo na podlagi informacije o izhodiščni in ciljni legi robotske naprave določiti zaporedje premikov, ki bo napravo prevedla iz ene lege v drugo. Izkaže se, da tega TOPOLOGIJA V ROBOTIKI Moderni izzivi poučevanja matematike Ljubljana, 25.1.2013 POVZETEK

Upload: keene

Post on 11-Jan-2016

75 views

Category:

Documents


1 download

DESCRIPTION

POVZETEK. TOPOLOGIJA V ROBOTIKI. TOPOLOGIJA V ROBOTIKI Moderni izzivi poučevanja matematike Ljubljana, 25.1.2013. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: TOPOLOGIJA V ROBOTIKI

1

TOPOLOGIJA V ROBOTIKI

Robotika je veda, ki se ukvarja z načrtovanjem, konstruiranjem in krmiljenjem robotov. Gre za izrazito interdisciplinarno področje, ki združuje mnoga inženirska in računalniška znanja, uporablja pa tudi matematične rezultate in metode iz geometrije, analize, numerike in teorije algoritmov.

Na predavanju bomo predstavili dva topološka problema, ki izvirata iz robotike. Prvi obravnava znano težavo, da pri robotskih napravah, ki imajo rotacijske elemente vedno obstajajo lege, pri katerih se naprave v določenem smislu zaskočijo. Izkaže se, da so problematične točke natanko singularne točke t.im direktne kinematične preslikave, s pomočjo topologije pa lahko razložimo, zakaj se singularnim točkam ni mogoče izogniti.

Drugi primer je povezan z izdelavo navigacijskih načrtov za robote, kjer moramo na podlagi informacije o izhodiščni in ciljni legi robotske naprave določiti zaporedje premikov, ki bo napravo prevedla iz ene lege v drugo. Izkaže se, da tega v splošnem ni mogoče narediti z enim samim zveznim načrtom, kar nas pripelje do pojma topološke kompleksnosti sistema.

TOPOLOGIJA V ROBOTIKI

Moderni izzivi poučevanja matematikeLjubljana, 25.1.2013

POVZETEK

Page 2: TOPOLOGIJA V ROBOTIKI

2

UVODTOPOLOGIJA V ROBOTIKI

KAJ JE ROBOTIKA?Robotika je veda, ki se ukvarja z načrtovanjem, konstruiranjem in krmiljenjem robotov.

Krmiljenje industrijskega robota

Roboti so elektro-mehanske, računalniško vodene naprave, ki izvajajo določene naloge.

Osnovni problem pri krmiljenju robotov je določiti zaporedje premikov sklepov ali vodil, ki napravo premaknejo v zahtevano lego.

Topološki problemi se večinoma pojavljajo pri krmiljenu robotskih naprav.

Page 3: TOPOLOGIJA V ROBOTIKI

3

UVODTOPOLOGIJA V ROBOTIKI

Preprosta dvoosna naprava lahko z vrtenjem doseže vse točke sfere.

Osnovna naloga je: kako napravo premakniti iz ene točke v drugo.

Pri tem se pojavita dva bazična problema:

1. Kako izbrati pot, po kateri lahko izpeljemo premik?

2. Kako izbrano pot realizirati z vrtenjem osi naprave?

Če zahtevamo, da sta rešitvi zvezni, se izkaže, da sta oba problema v bistvu topološka.

Page 4: TOPOLOGIJA V ROBOTIKI

4

UVODTOPOLOGIJA V ROBOTIKI

KAJ JE TOPOLOGIJA?

Topologija je veja matematike, ki študira lastnosti geometrijskih objektov, ki se ne spreminjajo pri majhnih deformacijah.

Šalica je topološko ekvivalentna obroču, ker jo lahko deformiramo v obroč z zaporedjem majhnih deformacij.

Problem je topološki, kadar je neobčutljiv na majhne deformacije in je torej odvisen le od topoloških lastnosti nastopajočih objektov.

Tudi v vsakdanjem življanju pogosto enačimo podobne objekte:

Page 5: TOPOLOGIJA V ROBOTIKI

5

KINEMATIČNA PRESLIKAVATOPOLOGIJA V ROBOTIKI

MATEMATIČNA FORMULACIJA PROBLEMA

Lego točke lahko eksplicitno izrazimo s pomočjo kotov, za katere zavrtimo osi.

(x,y,z)

x=r cos cosy=r cos sin z=r sin

direktna kinematična preslikava opiše lego robotske roke, če so znane lege sklepov

obratna kinematična preslikava na podlagi lege robotske roke določi lege sklepov

Obratna kinematična preslikava praviloma ni enolična.

= (x,y,z) = (x,y,z)

Gibanje robota je določeno z gibanjem sklepov, tj. s funkcijama = (t) in = (t) (kjer t označuje čas).

Page 6: TOPOLOGIJA V ROBOTIKI

6

KINEMATIČNA PRESLIKAVATOPOLOGIJA V ROBOTIKI

Kaj se zgodi, če napravo v iztegnjenem položaju poskusimo premakniti v smer, ki je pravokotna na ravnino vrtenja kazalca?

Moramo najprej zavrteti za 90o... in potem premakniti v željeno smer.

Potreben je velik zasuk okoli navpične osi, ne glede na majhnost zahtevanega premika!

Obratna kinematična preslikava ni zvezna.

Page 7: TOPOLOGIJA V ROBOTIKI

7

KINEMATIČNA PRESLIKAVATOPOLOGIJA V ROBOTIKI

Natančnejši pogled:

lega sklepov je določena z izbiro , K, vse možne lege lahko gledamo kot točke na torusu K × K

možne lege konca roke so točke na sferi S

direktna kinematična preslikava je d: K × K S

d

Večina leg na sferi je slika natanko dveh leg na torusu. Izjemi sta tečaja sfere, v katera se preslikajo vse točke na označenih krožnicah.

Glavno razliko opazimo, ko pogledamo, kako se preslikajo tangentne ravnine:Slike ravnin so večinoma dvorazsežne, razen pri tečajih, kjer so le enorazsežne.

To pomeni, da z majhnimi premiki sklepov lahko dobimo premike roke le v eni smeri.

Page 8: TOPOLOGIJA V ROBOTIKI

8

KINEMATIČNA PRESLIKAVATOPOLOGIJA V ROBOTIKI

S pomočjo topološke teorije svežnjev lahko pokažemo, da vsaka preslikava iz torusa na sfero ima tovrstne izrojene točke, kjer slika tangentne preslikave ni dvorazsežna, torej naprave ni mogoče z majhnim gibom premakniti v poljubno smer.

Ker je dimenzija slike premajhna, lahko poskusimo povečati dimenzijo domene:če dodamo še en sklep, dobimo kinematično preslikavo d: K × K × K S.

Ne pomaga: na skoraj enak način pokažemo, da obstajajo točke, v katerih je slika tangente preslikave enorazsežna.

Enako velja ne glede na to koliko sklepov vzamemo (npr. industrijski roboti imajo običajno vsaj šest rotacijskih sklepov): vedno obstajajo točke, v katerih se naprava ‚zaskoči‘.

Problemu se lahko delno izognemo s tem, da robotski roki ‚prepovemo‘ določene lege.

Včasih pa to ne gre, npr. pri giroskopih, ki se sistematično uporabljajo v navigacijskih sistemih (gimbal lock, Apollo 11 incident), robotih (wrist singularity), računalniški grafiki (Euler angles gimbal lock) ipd.

Page 9: TOPOLOGIJA V ROBOTIKI

9

KONFIGURACIJSKI PROSTOR

Konfiguracijski prostor sistema ali naprave je prostor vseh njegovih možnih leg.

Lege praviloma opišemo z nekaj realnih parametrov, zato konfiguracijski prostor običajno gledamo kot podprostor v nekem n.

TOPOLOGIJA V ROBOTIKI

Bazična problema:

1. Kako izbrati pot, po kateri lahko izpeljemo premik?

2. Kako izbrano pot realizirati z vrtenjem osi naprave?

Primeri: Konfiguracijski prostor robotske roke z n rotacijskimi sklepi je produkt n krožnic.Za konfiguracijski prostor lahko vzamemo tudi prostor leg vrha roke, tj. sfero.

Premiki sistema/naprave so poti v konfiguracijskem prostoru.

Page 10: TOPOLOGIJA V ROBOTIKI

10

KONFIGURACIJSKI PROSTOR

PRIMERI

mehanična naprava konfiguracijski prostor je krožnica K

TOPOLOGIJA V ROBOTIKI

K K je torus

Page 11: TOPOLOGIJA V ROBOTIKI

11

Konfiguracijski prostor je K × K × K × K × K × K

Kako bi dobili konfiguracijske prostore, ki niso torusi?

Z omejitvijo gibanja delov naprave.

00

2πOVIRE

TOPOLOGIJA V ROBOTIKI KONFIGURACIJSKI PROSTOR

Page 12: TOPOLOGIJA V ROBOTIKI

12

x

Za vsak dopustni kot leve palice obstajata dva dopustna kota desne palice...

...razen v skrajnjih legah, ko je sklop iztegnjen in imamo le en dopustni kot desne palice.

Konfiguracijski prostor 3- paličnega sklopa je krožnica.

PALIČNI SKLOPI

TOPOLOGIJA V ROBOTIKI KONFIGURACIJSKI PROSTOR

Page 13: TOPOLOGIJA V ROBOTIKI

x

13

Konfiguracijski prostor 4-paličnega sklopa je sfera.

TOPOLOGIJA V ROBOTIKI KONFIGURACIJSKI PROSTOR

Z dodajanjem krakov in osi dobimo še bolj zapletene konfiguracijske prostore.

Page 14: TOPOLOGIJA V ROBOTIKI

x

14

TOPOLOGIJA V ROBOTIKI KONFIGURACIJSKI PROSTOR

dve možni legi ena možna lega izven dosega

Konfiguracijski prostor je sfera.

Page 15: TOPOLOGIJA V ROBOTIKI

x

15

TOPOLOGIJA V ROBOTIKI KONFIGURACIJSKI PROSTOR

Konfiguracijski prostor je torus.

Konfiguracijski prostor n-nogega ‚pajka‘ je orientabilna ploskev roda 1+(n-4)2n-3

(tj. torus z 1+(n-4)2n-3 luknjami).

Izrek (M. Kapovich, J.L.Millson, 2002)

Za vsako gladko sklenjeno mnogoterost M obstaja palični sklop, katerega konfiguracijski prostor je disjunktna unija nekaj kopij M.

Page 16: TOPOLOGIJA V ROBOTIKI

16

NAVIGACIJSKI NAČRT

Z X označimo konfiguracijski prostor dane naprave.

Navigacijski načrt za X je pravilo, ki vsakemu paru točk x,y v X priredi pot α v X z začetkom v x in koncem v y.

Gibanje naprave lahko predstavimom s potjo α: IX.

(Omejimo se na s potmi povezane konfiguracijske prostore.)

Formalno: označimo s PX prostor vseh poti v X in s p: PXX×X, preslikavo p(α)=(α(0),α(1)).

Navigacijski načrt je preslikava s: X×X PX, za katero je ps=Id.

PX X×Xp

x

y

TOPOLOGIJA V ROBOTIKI

s

Page 17: TOPOLOGIJA V ROBOTIKI

17

Zanimajo nas zvezni navigacijski načrti s: X×X PX.

Zvezni navigacijski načrt obstaja le za kontraktibilne prostore.

Recimo, da je s: X×X PX navigacijski načrt za X.

Izberemo točko x0: tedaj preslikava x s(x, x0) določa kontrakcijo X v x0.

Obratno, če obstaja kontrakcija X v x0, potem dobimo navigacijski načrt za pot od x do y tako, da združimo pot od x do x0 s obratom poti od y do x0.

x0

x0

xy

TOPOLOGIJA V ROBOTIKI NAVIGACIJSKI NAČRT

Page 18: TOPOLOGIJA V ROBOTIKI

18

M. Farber (2003)

Topološka kompleksnost prostora X je minimalno število delnih navigacijskih planov, ki so potrebni, da povežemo poljuben par točk v X.

x

y

Kaj pa, če konfiguracijski prostor ni kontraktibilen?

V tem primeru lahko poskusimo z delnimi navigacijskimi načrti, definiranimi samo za nekatere pare

PX

X×X

p

U

sU

TOPOLOGIJA V ROBOTIKI TOPOLOŠKA KOMPLEKSNOST

Page 19: TOPOLOGIJA V ROBOTIKI

x

x

19

Topološka kompleksnost krožnice: K× K razdelimo na

U={(x,y) | x+ y 0}, sU (x,y):= najkrajša pot po K od x do y

V={(x,y) | x+ y =0}, sV (x,y):= pot po glavni krožnici na S od x skozi severni tečaj N do y

Ker K ni kontraktibilna, je TC(K)=2.

Topološka kompleksnost sfere: S× S razdelimo na:

U={(x,y) | x+ y 0}, sU (x,y):= najkrajša pot po S od x do y

Drugo pravilo ni dobro definirano za par (N,-N), zato dodamo:

W={(N,-N), (-N,N)}, sW (N,-N):= poljubna pot po S , ki povezuje N in –N 2 ali 3?

V={(x,y) | x+ y =0}, sV (x,y):= pot po K od x do y v pozitivni smeri

TOPOLOGIJA V ROBOTIKI TOPOLOŠKA KOMPLEKSNOST

2 TC(K) 3

Page 20: TOPOLOGIJA V ROBOTIKI

20

Še nekaj izračunov:

TC(orientabilna ploskev roda g)=3, g =0,1

5, g > 1

TC(povezan graf)= 2, graf ima en cikel3, sicer

1, graf je drevo

TC((S2n)k) =k+1, n lih

2k+1, n sod

TC(SO(3))= TC(P3)=3

TOPOLOGIJA V ROBOTIKI TOPOLOŠKA KOMPLEKSNOST

Ali lahko S× S pokrijemo z dvema navigacijskima načrtoma?

To je precej težje vprašanje, ki za rešitev potrebuje tehnike algebraične topologije.Odgovor je NE, zato je TC(S)= 3.

Page 21: TOPOLOGIJA V ROBOTIKI

HVALA ZA POZORNOST!

TOPOLOGIJA V ROBOTIKI