1 Indeling Inleiding Opbouw van potentiaalvelden Pathplanning in potentiaalvelden Alternatieve potentiaalvelden Gerandomiseerde pathplanning.

Slides:



Advertisements
Verwante presentaties
Sudoku puzzels: hoe los je ze op en hoe maak je ze?
Advertisements

Doublet deel 1 – de basis.
Welke eis stel je aan de ondergrond als je aan uitwendige hartmassage begint Dat deze hard is.
28 juni 2009 Paëllanamiddag 1 Paëllanamiddag 28 juni 2009 Voorbereiding vrijdagavond (Loopt automatisch - 7 seconden)
1 Motion Planning (simpel) •Gegeven een “robot” A in een ruimte W, een verzameling obstakels B, en een start en doel positie, bepaal een beweging voor.
November 2013 Opinieonderzoek Vlaanderen – oktober 2013 Opiniepeiling Vlaanderen uitgevoerd op het iVOXpanel.
Personalisatie van de Archis website Naam: Sing Hsu Student nr: Datum: 24 Juni 2004.
Global e-Society Complex België - Regio Vlaanderen e-Regio Provincie Limburg Stad Hasselt Percelen.
Stijgen en dalen constante stijging toenemende stijging
Ronde (Sport & Spel) Quiz Night !
Multiple Moving Objects Siu-Siu Ha Marlies Mooijekind.
Keuzeondersteunend model voor inbouwpakketten bij herbestemmingsprojecten Eindcolloquium Wiebrand Bunt.
1 Hashtabellen Datastructuren. 2 Dit onderwerp Direct-access-tabellen Hashtabellen –Oplossen van botsingen met “ketens” (chaining) –Analyse –Oplossen.
Start.
Datastructuren Analyse van Algoritmen en O
F. Rubben NI Lookout 1 06/RIS/05 - NI Lookout VTI Brugge F. Rubben, ing.
Leiden University. The university to discover. ICLON, Interfacultair Centrum voor Lerarenopleiding, Onderwijsontwikkeling en Nascholing Denkgereedschap.
Passie - Verrijzenis Arcabas
Motion Planning in Games Pathfinding with A * Ronald Treur.
1 Datastructuren Zoekbomen II Invoegen en weglaten.
Visibility-based Probabilistic Roadmaps for Motion Planning Tim Schlechter 13 februari 2003.
Parallelle Algoritmen String matching. 1 Beter algoritme patroonanalyse Bottleneck in eenvoudig algoritme: WITNESS(j) (j = kandidaat in eerste i-blok)
Oefeningen F-toetsen ANOVA.
Hoofdstuk 1, 2 en 3 Toegepaste Mechanica deel 1
Wie het kleine niet eert ... (quarks, leptonen,….)
Approximate Cell Decomposition
1 Complexiteit Bij motion planning is er sprake van drie typen van complexiteit –Complexiteit van de obstakels (aantal, aantal hoekpunten, algebraische.
Movable Objects Richard Jacobs Robin Langerak. Movable Objects Introductie en definities Aanpak Aangepaste algoritmen Grasp planning Assembly planning.
Motion planning with complete knowledge using a colored SOM Jules Vleugels, Joost N. Kok, & Mark Overmars Presentatie: Richard Jacobs.
1 Datastructuren Heapsort (2e deel) College 5. 2 Vandaag  Heaps en Heapsort  (eind)  Nog sneller sorteren:  Ondergrenzen  Linair sorteren.
Indeling Inleiding op PRM-planners & Medial Axis Retraction van configuraties op de Medial Axis Verbetering van retraction Verbetering van sampling Expliciete.
Path planning voor elastische objecten Robin Langerak Planning paths for elastic objects under manipulation constraints LamirauxKavraki.
Geometrie en topologie Rob Kromwijk, 26 juli 2012.
Elektriciteit 1 Les 4 Visualisatie van elektrische velden
Les 6 Elektrische potentiaal - vervolg
Elektriciteit 1 Basisteksten
2009 Tevredenheidsenquête Resultaten Opleidingsinstellingen.
Construeren van een Tennishal Vergeet-mij-nietjes. Week 13
ribwis1 Toegepaste wiskunde Lesweek 01 – Deel B
ribwis1 Toegepaste wiskunde – Differentieren Lesweek 7
Toegepaste mechanica voor studenten differentiatie Constructie
ribWBK11t Toegepaste wiskunde Lesweek 02
1 Datastructuren Een informele inleiding tot Skiplists Onderwerp 13.
De Meetcyclus Control en/of Feedback Object Signaal Meting Analyse
ECHT ONGELOOFLIJK. Lees alle getallen. langzaam en rij voor rij
Hoofdstuk 5 Vijfkaart hoog, eerste verkenning 1e9 NdF-h1 NdF-h5 1 1.
17/08/2014 | pag. 1 Fractale en Wavelet Beeldcompressie Les 5.
17/08/2014 | pag. 1 Fractale en Wavelet Beeldcompressie Les 3.
Fractale en Wavelet Beeldcompressie
Fractale en Wavelet Beeldcompressie
De financiële functie: Integrale bedrijfsanalyse©
Planning With Nonholonomic Constraints By Jeroen Resoort & Ronald Treur.
23 september 2014 Niels Vanmarcke
1 Amsterdam, april 2005 Drs. Frits Spangenberg Rotary Extern imago.
22/11/ DE ADVIEZEN VAN BEURSMAKELAAR BERNARD BUSSCHAERT Week
Even voorstellen : Groep 3b
1 Zie ook identiteit.pdf willen denkenvoelen 5 Zie ook identiteit.pdf.
1 DE ADVIEZEN VAN BEURSMAKELAAR BERNARD BUSSCHAERT Week Us$ stijgt en de VS markten en grondstoffen markten+ obligatie markten storten ineen.
ZijActief Koningslust
45 levenslessen Klikken voor vervolg Muziek: snowdream.
1 Jeroen de Vries Topologie. 2  Historische basis  Belangrijkste concepten  Topologie in de praktijk Inhoud:
1 DE ADVIEZEN VAN BEURSMAKELAAR BERNARD BUSSCHAERT Week
1 XSLT processing & control Datamodellering 2006.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag top-down decompositie Opdrachten:
Grafentheorie Graaf Verzameling knopen al dan niet verbonden door takken, bijv:
Minimum Opspannende Bomen Algoritmiek. 2 Inhoud Het minimum opspannende bomen probleem Een principe om een minimum opspannende boom te laten groeien Twee.
Doorzoeken van grafen Algoritmiek. Algoritmiek: Divide & Conquer2 Vandaag Methoden om door grafen te wandelen –Depth First Search –Breadth First Search.
Modderdorp UNPLUGGED Bron: csunplugged.org.
Transcript van de presentatie:

1 Indeling Inleiding Opbouw van potentiaalvelden Pathplanning in potentiaalvelden Alternatieve potentiaalvelden Gerandomiseerde pathplanning

2 Basisidee Potentiaalfunctie modelleert magnetisch veld Doel: attractive force, trekt de robot aan Obstakels: repulsive force, stoten robot af Alternatief: Zie potentiaalveld als landschap Grootste probleem: lokale minima Sterke punten: Lokale methode In de praktijk redelijk snel en betrouwbaar Inleiding

3 Potentiaalveld: voorbeeld Inleiding

4 Gebruikte symbolen Inleiding ARobot B, CBObstakels q, q init, q goal Configuraties U(q)Potentiaalfunctie F(q)Krachtfunctie voor A CG, GWGrids MAantal dimensies ρ(q)Afstand tot

5 Opbouw van potentiaalveld In translationele geval (2D) Attractive potential Repulsive potential Generalisatie naar meer dimensies Problemen Alternatieve benadering

6 Krachtveld en potentiaalveld Relatie tussen potentiaal en resulterende kracht: Kracht F is het grootst waar het potentiaal het snelst stijgt / daalt Richting van F(q) is richting van ‘steepest descent’ Opbouw van potentiaalveld

7 Attractive force (1) Veroorzaakt door q goal, onafhankelijk van CB U(q) kan parabolisch zijn: F is evenredig met || q – q goal || Kan ook ‘conic’ zijn F is overal constant (behalve op q goal ) Opbouw van potentiaalveld

8 Attractive force (2) Combinatie van beiden is misschien beter U(q) is parabolisch bij q goal, en conic daarbuiten Vaak: alleen parabolische variant Opbouw van potentiaalveld

9 Repulsive force (1) Veroorzaakt door CB, onafhankelijk van q goal Gewenste eigenschappen: Vormt barrière om obstakel Geen invloed buiten een bepaalde grensafstand Voor een enkel obstakel B i : Opbouw van potentiaalveld

10 Repulsive force (2) Afstand tot CB wordt genomen als afstand tot dichtstbijzijnde edge van CB Werkt goed voor convexe B, maar niet voor concave: Opbouw van potentiaalveld

11 Repulsive force (3) Aanpassingen Deel concave obstakels op in convexe stukken Neem gewogen som van potentialen die door elk obstakel gegenereerd worden… …waarbij het gewicht wordt bepaald door grootte van het obstakel Pad lijkt op retraction Maar is niet beperkt tot Voronoi-diagram Opbouw van potentiaalveld

12 Resultaat + = Opbouw van potentiaalveld

13 Generalisatie naar R N x SO(N) Probleem met hogere dimensies: Vaak geen efficiënte manier om afstand ρ CB (q) en gradient te berekenen Oplossing: Blijf in 2D of 3D workspace werken Definieer A met M control points Opbouw van potentiaalveld

14 Attractive potential Elk control point reageert op z’n eigen veld Natuurkundig onmogelijk, maar… model! Control points volgen minima Dus oriëntatie is die van ‘steepest descent’ Kies evt. een leading control point Veld voor dit control point veel sterker Voorkomt ‘ruzie’ Opbouw van potentiaalveld

15 Repulsive potential Meerdere fixed control points, 1 variabele Variabele punt ligt in de rand van A, zo dicht mogelijk bij een rand van CB A komt nooit te dicht bij CB Als A en CB evenwijdig zijn… Lijn van mogelijkheden (!) Mogelijk een zig-zag pad In dat geval: variabele punt -> lijn Opbouw van potentiaalveld

16 Pathplanning in potentiaalvelden Concept: de robot wordt gezien als een massa die zich voortbeweegt onder invloed van het potentiaalveld Twee manieren Depth-First Planning Best-First Planning

17 Depth-First Planning Iteratief een pad genereren door steeds het volgende segment te berekenen Werking algemeen: Start in q init Berekent de richting van het segment met behulp van potentiaalfunctie Herhaal tot q goal bereikt is Pathplanning in potentiaalvelden

18 Bepalen van de lengte Behoud representatie van de werkelijkheid Voorkomen van botsingen tussen q i en q i+1 Pad mag niet voorbij q goal gaan Pathplanning in potentiaalvelden

19 Lokale minima Detecteren van lokale minima Afhandelen q loc q goal Pathplanning in potentiaalvelden

20 Best-First Planning Definieer een regelmatig grid GC van configuraties Bouw een boom, start in q init en volg de buren. Grootste aantrekkingskracht eerst Herhaal totdat q goal bereikt is of de vrije ruimte volledig verkend is Pathplanning in potentiaalvelden

21 Aannames vooraf q init en q goal zijn configuraties in het grid Wanneer twee buren in de vrije ruimte liggen, ligt ook het lijnsegment tussen hen in de vrije ruimte Het grid is bounded U(q) groeit richting ∞ wanneer q dichter bij een obstakel komt Pathplanning in potentiaalvelden

22 Het algoritme (1) 1. Initialiseer de boom T met root q init en list L met daarin q init 2. while L is niet leeg do 3. q  Eerste element in L 4. for elke buur q’ van q do 5. if U(q’) niet te groot and q’ nog niet bezocht then 6. Voeg q’ aan T toe onder q en voeg q’ toe aan L 7. if q’ = q goal then 8. maak L leeg 9. return het gevonden pad 10. else Verwijder q uit L Pathplanning in potentiaalvelden

23 Het algoritme (2) Vindt altijd een pad als het bestaat Werkt goed en snel wanneer M klein is (M < 5) Wanneer M groter wordt, wordt het moeilijker om lokale minima ‘op te vullen’ Pathplanning in potentiaalvelden

24 Verbeteringen Grootste probleem: lokale minima Robot zit in een dal dat niet q goal is Mogelijkheden om dit tegen te gaan: Pas potentiaalfunctie aan Gebruik een path planner die uit lokale minima kan ontsnappen

25 Alternatieve potentiaalvelden (Almost global) navigation function Potentiaalfunctie zonder locale minima, alleen saddle-points. Keuze: analytische of gridgebaseerde functies Gridgebaseerde functies Makkelijker …maar vergen vaak wel meer rekenkracht

26 Navigaton functions in een grid Wavefront expansion / breadth-first Verken CG vanuit q goal naar buiten toe Altijd kortste pad, maar pad raakt CB Wavefront met skeleton Bouw skelet in GC free als basis voor pad Soort van roadmap / Voronoi-diagram Omzeilt CB zo veel mogelijk Maar nog veel meer mogelijkheden… Alternatieve potentiaalvelden

27 Wavefront met skeleton (1) 1) Bouw skelet S door expansion van CB Verbind q goal met S door steepest ascent 2) Reken potentiaal uit in skelet S Weer met wavefront expansion, bron is q goal 3) Reken potentiaal uit in de rest van CG free …ditmaal met S als bron Looptijd: Alternatieve potentiaalvelden

28 Wavefront met skeleton (2) Alternatieve potentiaalvelden 1) Expansion naar skelet S

29 Wavefront met skeleton (3) Alternatieve potentiaalvelden 2) Berekenen potentiaal in S

30 Wavefront met skeleton (4) Alternatieve potentiaalvelden 3) Berekenen potentiaal in GC free \ S

31 Wavefront met skeleton (5) 4) Resultaat

32 Elliptische potentiaalvelden Lokale minima ontstaan daar, waar velden van meerdere obstakels elkaar overlappen Creëer potentiaalveld dat van vorm verandert Dichtbij: vorm van obstakel Veraf: cirkel Stel grensafstand zo in, dat geen 2 potentiaalvelden elkaar overlappen Sowieso moeilijker om met 3 cirkels een minimum te creëeren

33 Grids in hogere dimensies GC in hogere dimensies groeit te snel M = 6, elk met 64 posities: 6,8*10 10 cellen! Idee: Reken GW wel helemaal uit (M=2 of 3) Geef A meerdere control points in GW Gebruik dit als leidraad om cellen in GC te berekenen Maar: GC is niet langer vrij van lokale minima!

34 Randomized Planning Depth-First en Best-First hebben beperkte mogelijkheden om met lokale minima om te gaan Een potentiaalfunctie zonder lokale minima definiëren is lastig (Obstakels moeten simpele vorm hebben en M=2 of M=3)

35 Randomized Path Planner (1) Combinatie van eerder genoemde technieken en gerandomiseerde zoektechnieken Best-First Planning + Random Motion Randomized Search Randomized Planning

36 Algemene werking We maken gebruik van de grid potentiaalfunctie U Bouw een graaf G op de lokale minima van de functie U. Twee nodes worden verbonden wanneer de planner er een pad tussen construeert Verbeter het eventueel gevonden pad (Path Smoothing) Randomized Planning

37 Bouwen van de graaf Best First M = klein (bv 3), bekijk alle buren M = groot (bv 6), bekijk random buren Als alle buren een groter potentiaal hebben is de huidige q een lokaal minimum Gevolgd door een Random Motion Wanneer een lokaal minimum gevonden is, voer een random motion uit Doe t random stappen, controller bij elke stap of een obstakel geraakt wordt Een kiezen van een goede t Graaf wordt incrementeel opgebouwd totdat doel bereikt is of de planner het opgeeft Randomized Planning

38 Graph Searching Best-First manier Volg de aangrenzende node’s, begin met degene met het laagste potentiaal Nadeel: Zelfde minimum kan vaker bezocht worden Randomized Planning

39 Randomized Path Planner (2) Alternatieve wijze: Bij het bouwen van de graaf alleen het pad naar q current bewaren Wanneer een lokaal minimum q loc bereikt wordt: voer een aantal random motions uit gevolgd door een best-first. Dit levert een lokaal minimum q loc ’ op Als U(q loc ’) > U(q loc ), voeg q loc ’ toe aan het pad en ga verder vanuit q loc ’ Als geen enkele U(q loc ’) < U(q loc ), pad loopt dood en voer een backtrack uit Algoritme stopt als: q loc ’ = q goal (doel bereikt) Tijdslimiet bereikt is Randomized Planning

40 Randomized Path Planner (3) Voordelen Omdat er meestal veel mogelijke oplossingen zijn, wordt er meestal relatief snel een pad gevonden Resultaten zijn relatief goed. Ook in hogere dimensies en grote ruimtes Nadelen Wanneer je het algoritme een aantal keer op dezelfde situatie loslaat, kan dit tot wisselende resultaten leiden. De looptijd varieert en verschillende paden worden gevonden Geen garantie dat er geen pad bestaat Randomized Planning