introduÇÃo À robÓtica mÓvelprestes/courses/robotics/slides/raula20.pdfsem campo harmônico com...

30
INTRODUÇÃO À ROBÓTICA MÓVEL Edson Prestes Departamento de Informática Teórica http://www.inf.ufrgs.br/~prestes [email protected] Aula 20

Upload: others

Post on 20-Jan-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

INTRODUÇÃO À ROBÓTICA MÓVEL

Edson PrestesDepartamento de Informática Teóricahttp://www.inf.ufrgs.br/[email protected]

Aula 20

Page 2: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl É possível incorporar restrições ambientais durante o

planejamento de caminhos ?

l Restrições ambientais referem-se à preferência de movimentação por certas regiões do ambiente.

l É melhor o robô seguir um caminho por uma região plana do que por uma região acidentada.

l Regiões com restrições são diferentes de regiões com obstáculos, pois elas podem ser cruzadas se necessário.

Page 3: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl O planejador baseado na equação de Laplace gera

sempre os caminhos mais seguros para alcançar a posição objetivo.

Figura extraída de [7]

ͿԤԥԦԧԨԩԪԫԬԭԮԯՠֈ֍֎֏ࢪࢩࢨࢧࢦࢥࢤࢣࢢࢡࢠࡪࡩࡨࡧࡦࡥࡤࡣࡢࡡࡠ࡞࡛࡚࡙ࡘࡗࡖࡕࡔࡓࡒࡑࡐࡏࡎࡍࡌࡋࡊࡉࡈࡇࡆࡅࡄࡃࡂࡁࡀ࠾࠽࠼࠻࠺࠹࠸࠷࠶࠵࠴࠳࠲࠱࠰࠭ࠬࠫࠪࠩࠨࠧࠦࠥࠤࠣࠢࠡࠠࠟࠞࠝࠜࠛࠚ࠙࠘ࠗࠖࠕࠔࠓࠒࠑࠐࠏࠎࠍࠌࠋࠊࠉࠈࠇࠆࠅࠄࠃࠂࠁࠀ߿߾߽ٟؠׯ ͿԤԥԦԧԨԩԪԫԬԭԮԯՠֈ֍֎֏ࢪࢩࢨࢧࢦࢥࢤࢣࢢࢡࢠࡪࡩࡨࡧࡦࡥࡤࡣࡢࡡࡠ࡞࡛࡚࡙ࡘࡗࡖࡕࡔࡓࡒࡑࡐࡏࡎࡍࡌࡋࡊࡉࡈࡇࡆࡅࡄࡃࡂࡁࡀ࠾࠽࠼࠻࠺࠹࠸࠷࠶࠵࠴࠳࠲࠱࠰࠭ࠬࠫࠪࠩࠨࠧࠦࠥࠤࠣࠢࠡࠠࠟࠞࠝࠜࠛࠚ࠙࠘ࠗࠖࠕࠔࠓࠒࠑࠐࠏࠎࠍࠌࠋࠊࠉࠈࠇࠆࠅࠄࠃࠂࠁࠀ߿߾߽ٟؠׯ

Obstáculos

Objetivo

Page 4: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl O planejador BVP distorce o campo potencial dando uma

preferência de movimentação de acordo com os parâmetros v e ²

l Considere o caso unidimensional

Page 5: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVP

Figura extraída de [7]

Page 6: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVP

Figuras extraídas de [7]

Page 7: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl No caso bidimensional, temos

com

e é o gradiente do potencial harmônico

Page 8: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVP

(a)(a) (c) (d)

(a) – ambiente de teste

(b) – curvas de nível do potencial harmônico

(c) – curvas de nível do potencial BVP com ²=0.2

(d) – curvas de nível do potencial BVP com ²=-0.2

Page 9: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVP

(b)(a)

(a) – ambiente de teste. Regiões marcadas sofreram planificação

(b) – curvas de nível do potencial harmônico

(c) – curvas de nível do potencial BVP. ²>0 apenas na região selecionada. Potencial sem planificação.

(c)

Page 10: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVP

Page 11: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl Regiões com alta preferência

²= 0.1 ²= 0.5

Page 12: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl Regiões com baixa preferência

²= - 0.1 ²= -0.5

Page 13: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl Regiões com diferentes graus de preferência

HP (²= 0.5) e VHP (²= 1.5) LP (²= -0.5) e V LP (²= -1.5)

Page 14: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl Regiões com diferentes graus de preferência

Page 15: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl Regiões com diferentes graus de preferência

Page 16: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl Regiões com diferentes graus de preferência

HP (²= 1.5) e LP (²= -1.5)

Figuras extraídas de [7]

Page 17: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPl Usar o campo vetorial do potencial harmônico como

campo de entrada na equação pode gerar situações indesejadas.

Page 18: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

⇥2 p(r) = �v ·⇥p(r)

⇥2 p(r) = �|⇥p(r)| cos(⇥(r))

Planejador BVPl Este efeito pode ser visto reescrevendo a equação

l como

l onde Θ é o angulo que o vetor v faz com o gradiente do potential ∇p(r)

Page 19: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVP

Page 20: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

l A partir da equação

l assumimos , ou seja, que v= ∇p(r)/|∇p(r)|, obtendo [8]

l Temos agora apenas um único parâmetro para o controle da preferência das regiões. Usando desigualdade triangular temos,

⇥2 p(r) = �|⇥p(r)| cos(⇥(r))

�2 p(r) = �(r)⇥����

⇥p(r)⇥x

���� +����⇥p(r)⇥y

����

Planejador BVP

cos(�(r)) = 1

⇥2 p(r) = �(r)|⇥p(r)|

Page 21: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVP

In the algorithm, each cell c has a position (x, y) inthe mesh; a potential p(c) and a parameter �(c) accordingto Equation 6. Cells cn, cs, cw, ce have position (x, y + 1),(x, y � 1), (x � 1, y), (x + 1, y), respectively. The valueh(c) corresponds to the harmonic potential, ⇤2p(c) =0, and the term �(c)d(c)/4 corresponds to the distortion�(c)

⌅⇤⇤⇤�p(c)�x

⇤⇤⇤ +⇤⇤⇤�p(c)

�y

⇤⇤⇤⇧

.

Algorithm 1 Basic Algorithm1: for all cell c that does not contain the goal do2: set its potential value to high potential ⇥ p(c)⇥ 13: initialize �(c)⇥ 04: end for5: for all cell c that contain the goal do6: set its potential value to low potential ⇥ p(c)⇥ 07: end for8: while TRUE do9: for all cell c that represents an environment free-space do

10: h(c)⇥ 14 (p(cn) + p(cs) + p(cw) + p(ce))

11: d(c)⇥�⇤⇤ p(cn)�p(cs)

2

⇤⇤ +⇤⇤ p(cw)�p(ce)

2

⇤⇤⇥

12: p(c)⇥ h(c)� �(c)4 d(c)

13: end for14: if potential converged then15: for all cell c do16: �(c)⇥ preference(c)17: end for18: end if19: end while

The algorithm extension to handle dynamic environmentor preferences collected in real-time by the robot is straight-forward. We need only to add lines to save the cells pref-erences from the data collected by robot sensors or to savethe new features in the map and update the potential of thecorresponding cells.

III. RESULTS

This section presents several results obtained in simulationto demonstrate the ideas discussed in the previous sections.All experiments use the environment shown in Figure 3(a)represented by an array of 100⇥ 100 cells.

A. Experiment with Laplace Equation

Figure 5 shows an experiment using Laplace Equation.Several paths(black lines) starting near the bottom wall aredisplayed. We can see that the robot tends to approach theenvironment center, since it diminishes the hitting probabilitywith obstacles.

In what follows we discuss the role of the distortionsin concavity/convexity and its relation with preferences incrossing a region. In order illustrate that, we produce inFigures 6 and 7 the two-dimensional equivalents of Figures1 and 2. In these figures, a small square region is introducedat the center of the environment shown in Figure 3(a). InFigure 6 we investigate the effect in the paths when we distortthe potential using � > 0 while in Figure 7, � < 0 is used.

Fig. 5. Experiment with Laplace Equation. Paths (black lines) producedby Laplace Equation from several robot starting positions.

B. Zone with High Preference (HP): � > 0Figures 6 (a) and (b) show the paths followed by the robot

using Eq. 3 and Eq. 6, respectively. In both cases, there existsa HP region at the environment center with �(r) = 1.2 for allposition r at this region. Observe that the concavity of thepotential in this region is increased giving rise to an effectiveattractive force that pulls the trajectories towards this region.The bigger the � the more the paths approach the center of theregion. Figures 6(c) and (d) illustrate the paths (black lines)over the level curves of the potential field computed in (a)and (b), respectively. Observe that the low potential zone isstretched diminishing the high potential zone, as compared tothe harmonic potential (Figure 5). The distortion produced byEq. 6 , show in (c), is stronger than the distortion generatedby Eq. 3, show in (d). As a consequence, this region becomesstill more attractive since the potential decays more quicklyaugmenting the influence of the goal.

C. Zones with Low Preference (LP): � < 0Figures 7(a) and (b) show the paths followed by the robot

using Eq. 3 and Eq. 6, respectively, in an environment with alow preference region with �(r) = �1.2. We can observe thatincreasing the convexity in a region decreases its preferencefor path planning. Figures 7(c) and (d) illustrate the paths(black lines) over the level curves of the potential fieldcomputed in (a) and (b), respectively. The high potential zoneis stretched diminishing the low potential zone, as comparedto the harmonic potential (Figure 5). The paths tend to avoidthe convex region. Again, we can see that Eq. 6 produces adistortion stronger than Eq.3 for the same � value. Besides,in (a), we can see that some paths cross the low preferenceregion. In (b), this does not happen and the robot changesits direction before getting too close to the low preferenceregion.

D. Several zones of different preference levelsFigures 8(a) and (b) show an experiment in an environment

with a barrier of alternating LP and very low preference(VLP) zones using Eq. 3 and Eq. 6, respectively. In bothcases, �(r) = �0.6 at the LP region and �(r) = �1.2 at theVLP region. Observe the robot crosses LP regions to reach

Page 22: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVP

Com campo harmônicoSem campo harmônico

Zona de Alta Preferência

Page 23: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPZona de Baixa Preferência

Com campo harmônicoSem campo harmônico

Page 24: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPDiversas zonas de baixa preferência

Com campo harmônicoSem campo harmônico

Page 25: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPDiversas zonas de baixa preferência

Com campo harmônicoSem campo harmônico

Page 26: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Planejador BVPDiversas zonas de baixa preferência

Com campo harmônicoSem campo harmônico

Page 27: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Exploração direcionadaDurante a exploração, o robô considera a preferência de navegação das regiões do ambiente.

Estas preferências estão associadas às distorções locais produzidas no campo potencial.

O valor do parâmetro associado às distorções é obtido dinamicamente durante à exploração.

Esta estratégia [10] é a base para o desenvolvimento de métodos do tipo “integrated exploration”, pois favorece certas regiões do ambiente produzindo mapas de melhor qualidade.

Page 28: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Exploração direcionadaEquação base

�2 p(r) = �(r)⇥����

⇥p(r)⇥x

���� +����⇥p(r)⇥y

����

ε(r) é a distorção local e está associada à preferência da região

Page 29: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Exploração direcionada

Page 30: INTRODUÇÃO À ROBÓTICA MÓVELprestes/Courses/Robotics/Slides/RAula20.pdfSem campo harmônico Com campo harmônico. Exploração direcionada Durante a exploração, o robô considera

Exploração direcionadaAlgoritmo

l Ativa e obtém as leituras dos sensores;

l Realiza a atualização local do mapa;

l Atualiza o atributo potencial das células da região visitada;

l Determina a preferência das regiões do ambiente e associa um valor de distorção às células da região.

l Calcula o vetor gradiente descendente da posição do robô;

l Desloca-se seguindo a direção definida por este gradiente;

l Repete o processo até que todo o ambiente esteja completamente explorado.