INTRODUÇÃO À ROBÓTICA MÓVEL
Transcript of INTRODUÇÃO À ROBÓTICA MÓVEL
![Page 1: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/1.jpg)
INTRODUÇÃO À ROBÓTICA MÓVEL
Edson PrestesDepartamento de Informática Teóricahttp://www.inf.ufrgs.br/[email protected]
Aula 15
![Page 2: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/2.jpg)
REPRESENTAÇÃO DO AMBIENTE
Decomposição Aproximada - Occupancy Grid
Figuras Extraída de [6]
![Page 3: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/3.jpg)
REPRESENTAÇÃO DO AMBIENTE
Decomposição Aproximada – 2m-trees¢ 2m-tree oferece uma decomposição hierárquica do espaço Ω
(definido no inicio da decomposição retangulóide) na forma de uma árvore de grau 2m, onde m é a dimensão do espaço de configurações.
¢ Cada nó da árvore é um retangulóide rotulado de vazio, ocupado ou misto. A raiz da árvore é Ω e apenas as células mistas podem ter filhos, cuja quantidade é 2m.
¢ Se m=2, a árvore é chamada quadtree. Se m=3 ela é chamada octree.
![Page 4: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/4.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Aproximada – 2m-trees¢ A altura h da árvore determina a resolução da decomposição.
¢ Valores altos de h levam a células pequenas e possuem impacto direto na eficiência do processo de planejamento.
¢ O número máximo de folhas é 2mh
¢ Em geral, a decomposição de um nó na árvore ocorre se este for misto e se sua profundidade for menor que um valor pré-definido.
¢ As células mistas com profundidade igual a máxima permitida são rotuladas como ocupadas.
![Page 5: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/5.jpg)
REPRESENTAÇÃO DO AMBIENTE
Decomposição Aproximada – 2m-trees
![Page 6: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/6.jpg)
REPRESENTAÇÃO DO AMBIENTE
Decomposição Aproximada - 2m-trees
Figura Extraída de [1]
![Page 7: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/7.jpg)
REPRESENTAÇÃO DO AMBIENTE
Decomposição Aproximada - Células de tamanho variável
Grade de Ocupação x Quadtree 17787 células x 2290 células
![Page 8: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/8.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica l As decomposições fixa e adaptativa impõem um
conhecimento a priori do mundo, além do que desconsideram detalhes sobre o ambiente.
l A decomposição topológica concentra-se nos aspectos mais relevantes do ambiente, evitando medidas diretas das propriedades geométricas do ambiente.
l Uma representação topológica é um grafo G=(V,A), composto por um conjunto de vértices V e um conjunto de arestas A.
![Page 9: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/9.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica l Os vértices representam áreas do ambiente, com
características distingüíveis. Por exemplo, uma intersecção de corredores, uma T-junction.
l As arestas mostram as conexões entre as diferentes áreas do ambiente e informam ao robô quais são atingíveis a partir de uma dada.
l É comum associar comportamentos específicos ou comandos às arestas de forma que o robô consiga se deslocar de um local para outro.
l Os vértices podem estar associados a áreas de diferentes tamanhos.
![Page 10: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/10.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica
Figura Extraída de [1]
![Page 11: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/11.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica l Para que um robô consiga navegar robustamente em um
ambiente ele deve possuir mecanismos para :� detectar a sua posição corrente em termos de vértices do grafo
topológico;� permitir uma navegação entre os vértices do grafo topológico.
l Devido ao nível de abstração da representação do ambiente, é difícil determinar com exatidão a localização espacial do robô.
![Page 12: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/12.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica
Figura Extraída de [1]
![Page 13: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/13.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica - RoadMapsl A abordagem roadmap captura a conectividade do
espaço livre do robô na forma de uma rede de curvas unidimensionais.
l Uma vez que o roadmap é construído, ele é usado como um conjunto de caminhos padrão.
l De acordo com Choset[7], roadmaps são exemplos de decomposição topológica.
l Existem vários tipos de roadmaps : grafos de
visibilidade; diagramas de voronoi, etc.
![Page 14: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/14.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica – Diagrama de Voronoil É uma abordagem que tende a maximizar a distância entre
o robô e os obstáculos presentes no ambiente (clearance).
l Considere . Para qualquer , faça
e
O diagrama de Voronoi do espaço livre
![Page 15: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/15.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica – Diagrama de Voronoil O diagrama de Voronoi consiste em um
conjunto finito de segmentos de retas e curvas, chamados arcos.
l Um arco é um segmento de reta se ele corresponder a um conjunto de configurações que estão mais próximas de um mesmo par de arestas que compõem os obstáculos do ambiente.
l Um arco é uma curva se ele corresponder a um conjunto de configurações que estão mais próximas de um mesmo par consistindo de pelo menos um vértice que compõe os obstáculos do ambiente.
![Page 16: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/16.jpg)
Decomposição Topológica – Diagrama de Voronoi
e delimitam uma região, onde qualquer q possui card(near(q))=1.
REPRESENTAÇÃO DO AMBIENTE
Figura Extraída de [2]
![Page 17: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/17.jpg)
Decomposição Topológica – Diagrama de Voronoi
REPRESENTAÇÃO DO AMBIENTE
Figura Extraída de [2]
![Page 18: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/18.jpg)
Decomposição Topológica – Diagrama de Voronoil Planejamento usando o Diagrama de Voronoi é como
segue:� Computa
� Computa e e identifica os arcos de que contenham estes pontos
� Busca em uma seqüência de arcos A1, A2, … Ap de forma que e e para todo i ∈ {1,2,…, p-1} , Ai e Ai+1, compartilham um mesmo vértice.
� Se a busca termina com sucesso então retorna juntamente com a seqüência de arcos que os conecta.
REPRESENTAÇÃO DO AMBIENTE
![Page 19: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/19.jpg)
Decomposição Topológica – Diagrama de Voronoi
REPRESENTAÇÃO DO AMBIENTE
Figura Extraída de [2]
![Page 20: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/20.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Topológica – Diagrama de Voronoil Os caminhos produzidos pelo diagrama de Voronoi não
são ótimos no que se refere ao seu comprimento do caminho total.
l Uma fraqueza do uso deste tipo de representação está associada ao uso de sensores de curto alcance que podem fazer com que o robô não consiga sentir obstáculos a sua volta.
l De acordo com [1], uma das principais vantagens é a facilidade em seguir os arcos de Voronoi através de simples regras de controle.
![Page 21: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/21.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Contínual Usado como representação 2D de ambientes indoor.
l É considerado como método de decomposição contínua exata [1].
l O custo de armazenamento é proporcional à densidade de objetos presentes no ambiente.
l Os objetos do ambiente real são modelados através de primitivas geométricas.
![Page 22: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/22.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Contínua
Figura extraída de [1]
![Page 23: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/23.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Contínual O uso de sensores do tipo laser permite extrair linhas
mais facilmente que sensores sonar.
Figura extraída de [1]
![Page 24: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/24.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Contínual Múltiplos retornos de sensores do tipo sonar permitem
estimar a estrutura de objetos simples.
Figuras extraída de [8]
![Page 25: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/25.jpg)
REPRESENTAÇÃO DO AMBIENTEDecomposição Contínual Em geral, mapas baseados em características são
usados em conjunto com Filtro de Kalman.
l Filtro de Kalman representa as características através de um vetor de posições e uma matriz de covariança.
![Page 26: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/26.jpg)
BIBLIOGRAFIAl [1] Siegwart, R. Nourbakhsh, I. R. Introduction to Autonomous Mobile
Robots, MIT Press, 2004.
l [2] Latombe, J. C. Robot Motion Planning, Kluwer Academic Publishers, 1991.
l [3] Bailey, T., Nebot, E. Localisation in large-scale environment. Robotics and Autonomous Systems, v.37, 2001.
l [4] Elfes, A. Sonar-based real world mapping and navigation. IEEE Journal of Robotics and Automation, v. RA-3, n.3, p.249-265, 1987
l [5] Elfes, A. Using occupancy grids for mobile robot perception and navigation. Computer Magazine, june, 1989.
![Page 27: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/27.jpg)
BIBLIOGRAFIAl [6] Prestes, E. Navegação Exploratória baseada em problemas de valores de
contorno, Tese de Doutorado, UFRGS, 2003.
l [7] Choset, H. Lynch, K.M., Hutchinson, S. , Kantor, G., Burgard, W., Kavraki, L. E., Thrun, S. Principle of Robot Motion ; Theory, Algorithms, and Implementation.
l [8] Leonard, J.J., Durrant-Whyte, H. F. , Cox, I. J. Dynamic Map Building for an Autonomous Mobile Robot. IEEE IROS, 1990
![Page 28: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/28.jpg)
Grades de Ocupaçãol Amplamente usada na área de Robótica.
l O ambiente real é representado por um conjunto de células de mesmo tamanho.
l Cada célula está associada a uma região quadrada do ambiente.
l É um exemplo de decomposição aproximada do ambiente.
![Page 29: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/29.jpg)
Grades de Ocupação
Figura extraída de [1]
![Page 30: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/30.jpg)
Grades de Ocupaçãol Permitem facilmente integrar as leituras dos sensores do
robô para gerar mapas.
l Isto é feito usando uma teoria formal de evidência como Bayes ou Dempster-Shape, ou heurísticas, como HIMM.
l É possível usar as grades de ocupação como sensores virtuais para algoritmos de tratamento de obstáculos.
l A atualização do mapa exige um modelo do sensor do robô.
![Page 31: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/31.jpg)
Grades de Ocupação
I – região associada à leitura. Objeto pode estar em qualquer posição nesta área.
II – região vazia.
III – região “coberta” pelo sensor, mas desconhecida.
IV – região fora do campo de visão do sensor.
Figura extraída de [2] Figura extraída de [6]
![Page 32: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/32.jpg)
Grades de Ocupação
Distribuição típica do sinal emitido por um sensor sonarFigura extraída de [3]
![Page 33: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/33.jpg)
Grades de Ocupação - Bayesl Um método muito usado para atualizar a grade de
ocupação é converter as leituras dos sensores em probabilidades usando o Teorema de Bayes.
l Elfes e Moravec foram os pioneiros em 1980 no uso de probabilidades para atualizar a grade.
l Nesta abordagem o modelo do sensor gera uma probabilidade condicional da forma P(A|B).
![Page 34: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/34.jpg)
Grades de Ocupação - Bayesl Sensores TOF Sonar podem observar se uma célula c em
particular está ocupada ou vazia.
l Este estado pode ser visto como um evento H={H,¬ H} ou H={ocupado, vazio}.
l A probabilida da ocorrência de H é representada por P(H) de forma que 0· P(H)· 1.
l Conhecendo P(H), sabemos P(¬ H), pois P(¬ H)=1-P(H).
l Esta probabilidade é chamada incondicional já que independe das leituras feitas pelos sensores do robô.
![Page 35: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/35.jpg)
Grades de Ocupação - Bayesl Dada uma leitura s, a probabilidade de uma célula c
estar ocupada, ou seja, de ocorrer o evento H=ocupado é denotada por P(H |s).
l A probabilidade P(H|s) é calculada através da regra de Bayes da seguinte forma
l P(s|H) consiste na probabilidade da leitura s ter sido obtida dado que a célula c está ocupada. Esta probabilidade está relacionada ao modelo do sensor usado.
Slides sobre Probabilidade
![Page 36: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/36.jpg)
Grades de Ocupação - Bayesl Um modelo simples mostrado em [2] é definido como segue:
l Para a região I
l Para a região II
l Tanto P(s|vazia) quanto P(s|ocupada) são armazenadas para cada célula.
![Page 37: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/37.jpg)
Grades de Ocupação - Bayesl Considere a célula (marcada abaixo) com distância
r=3.5 e ®=0.l Usando as equações associadas ao
modelo do sensor definidas para a região II obtemos
P(s|vazia)=0.825P(s|ocupada)=0.175
Figura extraída de [2]
![Page 38: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/38.jpg)
Grades de Ocupação - Bayesl Considere a célula (marcada abaixo) com distância r=6
e ®=5.l Usando as equações associadas ao
modelo do sensor definidas para a região I obtemos
P(s|ocupada)=0.52P(s|vazia)=0.48
Figura extraída de [2]
![Page 39: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/39.jpg)
Grades de Ocupação - Bayesl A probabilidade P(H|s) é calculada por
mais especificamente
P(ocupada) e P(vazia) correspondem a probabilidade prévia (prior probability). Como não conhecemos o estado da célula previamente, é assumido que
P(ocupada)=P(vazia)=0.5
![Page 40: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/40.jpg)
Grades de Ocupação - Bayesl Usando l Usando
l Sabendo que P(s|ocupada)=0.52 e P(s|vazia)=0.48 e P(ocupada)= P(vazia)=0.5
l Temos P(ocupada|s)=0.52l P(vazia|s)=0.48
l Isto ocorreu devido a probabilidade prévia ser 0.5. Em geral P(s|H) é diferente de P(H|s)
Figura extraída de [2]
![Page 41: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/41.jpg)
Grades de Ocupação - Bayesl O método para calcular a probabilidade condicional a
partir de várias leituras é definido como
l Devido a independência das leituraspode ser simplificado para
l Um problema nesta abordagem é a necessidade de armazenar todas as probabilidades P(si|H)
![Page 42: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/42.jpg)
Grades de Ocupação - Bayesl Através de P(H| s)P(s) = P(s|H)P(H) podemos escrever
de forma recursiva, como
![Page 43: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/43.jpg)
Grades de Ocupação - Bayesl Considere três leituras feitas nos instantes t1, t2 e t3
como apresentado abaixo (exemplo extraído de [2])
![Page 44: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/44.jpg)
Grades de Ocupação - Bayesl No passo 1 de atualização usando
temos
Assumindo
![Page 45: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/45.jpg)
P (St2 |O) = 0.69, P (St2 |E) = 0.31
Grades de Ocupação - Bayesl No passo 2 de atualização usando
temos
Onde
![Page 46: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/46.jpg)
Grades de Ocupação - Bayesl No passo 3 de atualização usando
temos
Onde
![Page 47: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/47.jpg)
Grades de Ocupação -HIMMl O método HIMM – Histogramic In Motion Mapping [6] foi
desenvolvido por Borenstein e Koren na universidade de Michigan .
l A principal motivação para o desenvolvimento do método foi o tratamento dinâmico de obstáculos.
l O método bayesiano consumia muito tempo de processamento.
![Page 48: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/48.jpg)
Grades de Ocupação -HIMMl O método HIMM usa o modelo de sonar mostrado na figura
abaixo
Figura extraída de [6]
l O modelo usado considera que apenas as células no eixo acústico são importantes.
l Isto gera uma quantidade muito menor de atualizações das células no cone de visão.
l Neste modelo são consideradas as taxa de atualização das células.
l Cada célula armazena um valor entre 0 e 15.
![Page 49: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/49.jpg)
Grades de Ocupação -HIMMl Uma célula da grade é atualizada sempre que o eixo acústico
está sobre ela.
l Uma célula da grade é atualizada sempre que o eixo acústico está sobre ela.
l Se esta célula estiver na região associada à leitura feita pelo sensor, então ela será incrementada de 3 unidades.
l Se ela estiver a uma distância menor que a distância fornecida pela leitura do sensor, então ela é decrementada de 1 unidade.
Figura extraída de [6]
![Page 50: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/50.jpg)
Grades de Ocupação -HIMMl Este processo coleta apenas uma pequena amostra do
ambiente, a qual é dependente da velocidade do robô.
Figura extraída de [2]
![Page 51: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/51.jpg)
Grades de Ocupação -HIMMl Um exemplo de funcionamento é apresentado abaixo.
Figura extraída de [2]
![Page 52: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/52.jpg)
Grades de Ocupação -HIMMl Uma das desvantagens do HIMM é que cada célula é atualizada
no máximo duas vezes. Isto faz com que cada célula tenha um grau de certeza igual a 6, o que corresponde a menos da metade do valor máximo permitido.
l Para tratar obstáculos dinâmicos o valor armazenado na célula é levado em consideração para ponderar a força de reação.
l Robôs com alta velocidade podem ter dificuldades para reagir adequadamente aos obstáculos presentes no ambiente.
l Para tratar este problema foi proposta uma nova forma de atualização dos valores na grade, chamada Growth Rate Operator.
![Page 53: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/53.jpg)
Grades de Ocupação -HIMMl Quando um elemento é atualizado como ocupado, o
GRO é aplicado usando uma máscara de peso.
min(15,23)
Calculando o valor de atualização da usando a máscara.
Figuras extraídas de [2]
![Page 54: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/54.jpg)
Grades de Ocupação -HIMMl Um exemplo de mapa gerado pelo método HIMM é
ilustrado abaixo
Figura extraída de [6]
Mapa produzido C o n s i d e r a n d o threshold=12
![Page 55: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/55.jpg)
BIBLIOGRAFIAl [1] Prestes, E. Navegação Exploratória baseada em problemas de
valores de contorno, Tese de Doutorado, UFRGS, 2003.
l [2] Murphy, R.. Introduction to AI Robotics, MIT Press, 2000.
l [3] Siegwart, R. Nourbakhsh, I. R. Introduction to Autonomous Mobile Robots, MIT Press, 2004.
l [4] Neal, R. M. Probabilistic Inference using Markov Chain Monte Carlo Methods. Technical Report (CRG-TR-93-1). University of Toronto, 1993.
l [5] Thrun, S., Burgard, W. , Fox, D. Probabilistic Robotics, MIT Press, 2005.
l [6] Borenstein, J., Koren, Y. Histogramic In-Motion Mapping for mobile robot obstacle avoidance, IEEE Journal of Robotics and Automation, vol. 7, no. 4, 1991.
![Page 56: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/56.jpg)
Probabilidadel Considere X1, X2,... Xn variáveis aleatórias que podem assumir valores
dentro de um conjunto discreto. Por exemplo
l Podemos ter um modelo probabilistítico completamente especificado pela probabilidade de união (joint probabilities) para cada possível associação de valores para as variáveis aleatórias.
![Page 57: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/57.jpg)
Probabilidadel Assumindo A={1,2,...,m} e B={m+1,m+2,...,n}, a probabilidade
associada a um subconjunto de variáveis (probabilidade marginal) é dada por
Por exemplo,P(Clear,Rising)= P(Clear,Rising,Dry)+ P(Clear,Rising,Wet)P(Clear,Rising)= 0.4 + 0.07 = 0.47
![Page 58: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/58.jpg)
Probabilidadel A probabilidade condicional para um subconjunto de variáveis, dado
os valores para outro subconjunto (disjunto), é definida por
l Por exemplo,
![Page 59: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/59.jpg)
P ({xi : i � A}|{xj : j � B}) =P ({xj : j � B}|{xi : i � A})P ({xi : i � A})
P ({xj : j � B})
Probabilidadel Usando a probabilidade condicional chegamos ao Teorema de Bayes
Quando estamos lidando com múltiplas variáveis aleatórias, temos
P (x|y) =P (y|x)P (x)
P (y)Probabilidade a prioriProbabilidade a posteriori
Probabilidade inversa
![Page 60: INTRODUÇÃO À ROBÓTICA MÓVEL](https://reader036.fdocument.pub/reader036/viewer/2022070121/62bcf8bea483a14c361281c3/html5/thumbnails/60.jpg)
l Considerando 2 variáveis aleatórias, sabemos que a probabilidade marginal
l Usando a probabilidade condicional
l Chegamos ao Teorema da Probabilidade Total (caso discreto)
P (x) =�
y
P (x|y)p(y)
P (x) =�
y
P (x, y)
Probabilidade
P (x|y) = P (x, y)/P (y)
Retorno