• Nenhum resultado encontrado

Mapeamento de ambientes estruturados com extração de informações geométricas através de dados sensoriais

N/A
N/A
Protected

Academic year: 2017

Share "Mapeamento de ambientes estruturados com extração de informações geométricas através de dados sensoriais"

Copied!
159
0
0

Texto

(1)
(2)

UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE

UNIVERSIDADEFEDERAL DORIOGRANDE DONORTE CENTRO DETECNOLOGIA

PROGRAMA DEPÓS-GRADUAÇÃO EMENGENHARIAELÉTRICA

Mapeamento de Ambientes Estruturados com

Extração de Informações Geométricas através

de Dados Sensoriais

Diogo Pinheiro Fernandes Pedrosa

Orientador: Prof. Dr. Adelardo Adelino Dantas de Medeiros

Co-orientador: Prof. Dr. Pablo Javier Alsina

Tese de Doutorado apresentada ao Progra-ma de Pós-Graduação em Engenharia Elé-trica da UFRN (área de concentração: Enge-nharia de Computação) como parte dos re-quisitos para obtenção do título de Doutor em Ciências.

(3)
(4)
(5)
(6)

Agradecimentos

Agradeço primeiramente a Deus por ter chegado são e salvo ao fim desta jornada.

Ao meu orientador e ao meu co-orientador, professores Adelardo Medeiros e Pablo Al-sina, sou grato pela valiosíssima orientação. Certa vez me disseram que os orientadores são, antes de tudo, modelos de profissionais que seguimos para as nossas carreiras de professor e pesquisador. É a mais pura verdade!

Aos professores Luiz Marcos, Eduardo Freire e Silvia Botelho, membros da minha banca examinadora, agraceço às sugestões, críticas e comentários. Tenho certeza que o traba-lhou enriqueceu mais ainda com suas palavras.

Ao professor Fábio Meneghetti, que em tantas conversas informais me mostrou, sempre com muito bom humor, como “sobreviver” a um doutorado. Muito obrigado.

Sou grato de coração aos queridos amigos do peito, sejam da pós-graduação ou não. Com vocês eu dividi risos, angústias, sonhos, estresses e uma série de outros sentimentos que nos acomente quando resolvemos enfrentar um mestrado ou doutorado.

Aos meus pais e irmãos, que mesmo distantes, torceram e se esforçaram tanto para me ajudar a concluir este trabalho. Essa conquista é nossa! Muito obrigado a todos vocês.

Aos meus caros Sr. Tadeu, Sra. Socorro, Tadeu Jr. e Tatiany, que conviveram dia após dia com os altos e baixos que sofri ao longo do doutorado. Obrigado mesmo!

Aos meus amores Alaíde e Emanuel, acredito que ser eternamente grato a vocês seria pouco.

(7)

Resumo

Esta tese tem o objetivo de propor uma metodologia para construção de um mapa híbrido de um ambiente interno. A parte topológica da representação trata das relações de conectividade existentes entre as salas e corredores, sendo assim um grafo que representa a topologia do ambiente global. A parte métrica consiste em armazenar um conjunto de parâmetros que descreve uma figura geométrica plana que melhor se ajusta ao espaço livre local. Esta figura é calculada através do conhecimento de pontos, ou amostras, dos limites do espaço livre. Estes pontos são obtidos com sensores de distância e a informação é complementada com a estimativa da pose do robô. Uma vez que estes pontos estão determinados, o robô então aplica uma ferramenta baseada na transformada generalizada de Hough para obter a figura em questão. O processo de construção do mapa é incremental e totalmente realizado enquanto o robô explora o ambiente. Cada sala é representada por este mapa local e cada nó do grafo que representa a topologia do ambiente está associado a este mapa. Durante o mapeamento o robô pode utilizar as informações recém-adquiridas do ambiente para obter uma melhor estimativa de sua pose global ou relativa a uma sala ou corredor.

(8)

Abstract

The objective of this thesis is proposes a method for a mobile robot to build a hybrid map of an indoor, semi-structured environment. The topological part of this map deals with spatial relationships among rooms and corridors. It is a topology-based map, where the edges of the graph are rooms or corridors, and each link between two distinct edges represents a door. The metric part of the map consists in a set of parameters. These parameters describe a geometric figure which adapts to the free space of the local envi-ronment. This figure is calculated by a set of points which sample the boundaries of the local free space. These points are obtained with range sensors and with knowledge about the robot’s pose. A method based on generalized Hough transform is applied to this set of points in order to obtain the geomtric figure. The building of the hybrid map is an in-cremental procedure. It is accomplished while the robot explores the environment. Each room is associated with a metric local map and, consequently, with an edge of the topo-logical map. During the mapping procedure, the robot may use recent metric information of the environment to improve its global or relative pose.

(9)

Lista de Figuras

1.1 Diagrama de blocos de um sistema simplificado de localização de um robô. 3

1.2 Exemplo ilustrativo do crescimento das regiões de incerteza no cálculo da

pose relativa do robô pelo método da odometria. . . 4

1.3 Diagrama de blocos simplificado da tarefa de mapeamento de um ambi-ente desconhecido. . . 6

1.4 Comparação ilustrativa entre o tipo padrão de representação métrica lo-cal por mapa de características (lista de segmentos de retas associadas às faces dos obstáculos) e o tipo de representação proposta neste trabalho. . 9

1.5 Representação híbrida proposta para um ambiente interno. . . 10

3.1 Representação da topologia de um ambiente interno através de um grafo. . 28

3.2 Erro de aproximação de uma figura geométrica para um ambiente local. . 31

3.3 Utilização do ponto âncora para manutenção da coerência dos ambientes locais no mapa global. . . 33

3.4 Seqüência de construção do mapa híbrido. . . 37

3.5 Transformações para cálculo da posição global de um ambiente. . . 40

3.6 Determinação da passagem em relação a um ambiente local. . . 40

3.7 Caminho para ambiente desconhecido. . . 43

3.8 Construção de mapa híbrido em um ambiente com ciclo. . . 44

3.9 Formas de estimar a posição local de um robô em um ambiente retangular. 47 3.10 Correção da orientação do robô. . . 48

3.11 Processo adotado para determinar a localização topológica do robô. O robô 1 não se encontra dentro do ambiente ai. . . 49

3.12 Erro de representação em ambientes com ciclos. . . 50

3.13 Verificação da sobreposição entre ambientes para a insersão no mapa. . . 51

3.14 Verificação da sobreposição entre passagens para a insersção no mapa. . . 52

4.1 Parametrização da reta com distânciaρe inclinaçãoθ. . . 59

4.2 Reta obtida através da transformada de Hough para um conjunto de pon-tos(x,y). . . 60

4.3 Matriz acumuladora após a aplicação da transformada de Hough para o conjunto de pontos apresentado na figura 4.2. . . 61

4.4 Picos obtidos no espaço de Hough. . . 61

4.5 Exemplo ilustrativo de geração da tabela-R a partir das informações de uma forma de referência. . . 64

(10)

4.7 Limites dos espaços de busca dos parâmetros x, y, l e c do retângulo para

a transformada generalizada de Hough. . . 68

4.8 Pontos em um retângulo com parâmetros reais iguais a(x,y) = (3.0,2.5), θ=0◦ e(l,c) = (4.0,3.0). . . 70

4.9 Retângulos resultantes da aplicação do algoritmo 4.3. . . 72

4.10 Evolução dos parâmetros x e y durante o refinamento da solução para o conjunto de pontos da figura 4.8. . . 78

4.11 Conjunto de pontos escolhidos do retângulo r= [6.7,−5.4,−23◦,4.0,8.0]T. 80 4.12 Retângulos calculados pelo método de refinamento da solução para o con-junto de pontos apresentados na figura 4.11. . . 81

4.13 Evolução dos parâmetros do retângulo da figura 4.12. . . 82

4.14 Pontos obtidos por simulação de sonar em uma sala vazia. . . 83

4.15 Retângulo final para os pontos apresentados na figura 4.14. . . 84

4.16 Matriz acumuladora da transformada padrão de Hough para o conjunto de pontos apresentado na figura 4.14. . . 85

4.17 Picos obtidos no epaço de Hough exibido na figura 4.16. . . 86

4.18 Principais retas no espaço cartesiano para o conjunto de pontos fornecido, obtidas do espaço de Hough apresentado na figura 4.16. . . 87

4.19 Exemplo de um ambiente ocupado esparsamente por obstáculos estáticos. 89 4.20 Pontos coletados por um robô em um ambiente local com dois obstáculos estáticos. . . 90

4.21 Retângulo obtido em um ambiente esparsamente povoado com obstáculos estáticos. . . 91

4.22 Obstáculos representados no ambiente local, através da transformada ge-neralizada de Hough. . . 92

4.23 Ambiente com obstáculos estáticos próximos às paredes. . . 93

4.24 Pontos coletados do ambiente da figura 4.23. . . 94

4.25 Região livre retornada pela transformada generalizada de Hough. . . 95

4.26 Ambiente com obstáculo estático comportando-se como divisória. . . 95

4.27 Pontos coletados de parte do ambiente da figura 4.26. . . 96

4.28 Região correspondente a parte de um ambiente real que fol delimitado pelo obstáculo. No mapeamento, o retângulo encontrado irá corresponder a um ambiente local. . . 97

5.1 Modelo de movimento de robô com acionamento diferencial. . . 100

5.2 Incerteza na pose do robô. Cada um dos pontos é uma possível pose que o robô pode assumir. . . 101

5.3 Disposição dos sonares no modelo do robô. . . 102

5.4 Modelo da abertura da onda emitida por um sonar para detecção de obs-táculos. . . 103

5.5 Eco produzido por uma parede para o modelo adotado do sonar. . . 104

5.6 Retorno produzido por um canto de parede (a) e por uma quina de parede (b). . . 105

(11)

5.8 Simulação com os sonares modelados. . . 107

5.9 Descrição de passagens em um ambiente retangular, segundo o modelo

proposto. . . 109 5.10 Ambiente para simulação 01 de mapeamento com descrição utilizada pelo

simulador. . . 110 5.11 Mapa de nuvem de pontos para o ambiente apresentado na figura 5.10. . . 110 5.12 Mapa métrico final obtido para simulação de mapeamento sem a

utiliza-ção de âncoras e sem erros de odometria. . . 113 5.13 Mapa métrico final obtido para simulação de mapeamento sem a

utiliza-ção de âncoras e com erros de odometria. . . 115 5.14 Mapa métrico final obtido com correção da pose do robô e sem utilização

de poses âncoras. . . 116 5.15 Parte métrica final da representação híbrida obtida com auxílio de poses

âncoras e sem correção dos erros de odometria. . . 120 5.16 Parte métrica final da representação híbrida obtida com auxílio de poses

âncoras e com correção dos erros de odometria. . . 122 5.17 Grade de um ambiente interno obtido de dados reais. . . 124 5.18 Nuvem de pontos para a construção da grade apresentada na figura 5.17 . 125 5.19 Parte métrica da representação por retângulos para as informações de

dis-tância apresentadas pela figura 5.18. . . 126

(12)

Lista de Tabelas

4.1 Comparativo entre os resultados retornado pela transformada generali-zada de Hough para diferentes valores de resolução das dimensões do espaço de Hough. . . 73

5.1 Comparação entre valores reais e valores obtidos para os ambientes locais, com a primeira simulação. Não foram considerados erros de odometria nem ajuste de posição através de poses âncoras. Os erros no parâmetroθ

estão em valores absolutos. . . 114 5.2 Comparação entre valores reais e valores obtidos para os ambientes locais,

com a segunda simulação. Os erros de odometria foram considerados, mas descartou-se o uso das poses âncoras. Os erros no parâmetroθestão em valores absolutos. . . 114 5.3 Comparação entre valores reais e valores obtidos para os ambientes locais,

com a terceira simulação. Aqui adotou-se a correção do erro de odometria na localização relativa do robô. As poses âncoras não foram utilizadas. Os erros no parâmetroθestão em valores absolutos. . . 117 5.4 Comparação entre valores reais e valores obtidos para os ambientes locais,

com a quarta simulação. Foram utilizados pontos âncoras para o posicio-namento dos ambientes, mas não houve correção dos erros de odometria do robô. Os erros no parâmetroθestão em valores absolutos. . . 121 5.5 Comparação entre valores reais e valores obtidos para os ambientes locais,

(13)

Lista de Algoritmos

3.1 Mapeamento de um ambiente interno estruturado por um robô móvel. . . 39

3.2 Inserção de passagens na fila F. . . . 41 3.3 Inserção de ambientes no mapa híbrido. . . 42 3.4 Comparação entre ambientes. . . 52 3.5 Verificação da necessidade de inserção de elemento na fila de passagens

para ambientes desconhecidos. . . 54

4.1 Seqüência passos para construção da tabela-R, dada uma imagem de

re-ferência. . . 64

4.2 Transformada generalizada de Hough, dada uma tabela-R previamente

construída. . . 65 4.3 Variante da transformada generalizada de Hough para detecção de

retân-gulos. . . 69

4.4 Refinamento da precisão do resultado da transformada generalizada de

Hough. . . 75

(14)

Sumário

1 Introdução 1

1.1 Propostas de Trabalho . . . 6

1.1.1 Descrição do Ambiente . . . 7

1.1.2 Captura da Geometria Local . . . 9

1.1.3 Exploração do Ambiente Interno . . . 11

1.1.4 Atualização da Pose do Robô . . . 11

1.1.5 Objetivo Global . . . 11

1.2 Organização do Trabalho . . . 12

2 Mapeamento de Ambientes por Robôs Autônomos 13 2.1 Mapeamento Global . . . 13

2.1.1 Mapas Métricos . . . 14

2.1.2 Mapas Topológicos . . . 16

2.1.3 Mapas Híbridos . . . 18

2.2 Metodologias de SLAM . . . 21

3 Metodologia do Mapeamento Híbrido 25 3.1 Definição do Mapa Híbrido . . . 25

3.2 Representação Topológica do Ambiente . . . 27

3.3 Representação Métrica do Ambiente . . . 30

3.4 Construção do Mapa Global . . . 35

3.4.1 Recursos do Mapeamento Híbrido . . . 45

3.5 Considerações . . . 53

4 Representação Métrica Local 57 4.1 Transformada de Hough Padrão . . . 58

4.1.1 Aplicações em Localização e Mapeamento por Robôs . . . 62

4.2 Transformada Generalizada de Hough . . . 63

(15)

4.3.1 Resultados . . . 70

4.4 Aprimoramento da Precisão do Retângulo . . . 73

4.5 Robustez da Transformada Generalizada em Mapeamento . . . 80

4.6 Comparação com Outras Abordagens . . . 84

4.7 Derivação da Geometria em Ambientes Povoados . . . 88

4.8 Considerações . . . 94

5 Simulações 99 5.1 Modelos Utilizados . . . 99

5.2 Simulação em Ambientes Internos . . . 107

5.3 Aplicação em Dados Reais . . . 122

5.4 Considerações . . . 127

6 Conclusões e Perspectivas Futuras 129

(16)

Capítulo 1

Introdução

Os robôs são dispositivos mecânicos dotados de elementos que lhes permitem interagir com o ambiente que os cerca. Eles podem sentir o ambiente em que estão trabalhando através de um sistema de percepção e podem modificar o estado deste ambiente utilizando atuadores. Eles foram projetados inicialmente para substituir o homem em tarefas que exigem trabalhos repetitivos ou em atividades executadas em ambientes perigosos. Eles também têm estruturas que lhes garantem um certo nível de autonomia. Isso permite que eles respondam, de forma adequada, a estímulos externos coletados do ambiente através dos seus sensores.

Fazer uma classificação rígida dos tipos de robôs baseando-se apenas no seu formato físico não é uma tarefa trivial. Devido ao grande número de formas e a grande variedade de aplicações de cada uma delas [Çavusoglu et al. 2003, Poignet et al. 2003, Jezernik et al. 2004, Lee et al. 2005, Ranky 2005, Ranky e Ranky 2005] não há uma regra fixa de definição funcional. Entretanto, considerando as aplicações mais usuais, pode-se afirmar que existem os robôs manipuladores, com forte atuação nas indústrias [Romano 2002, Verdonck e Swevers 2002, Ferreira-Filho et al. 2003], e robôs móveis com abrangente campo de ação [Huntsberger et al. 2002, Kanakanis et al. 2004, Kochan 2005, Roh e Choi 2005].

Pesquisas com robôs móveis buscam dotá-los de suficiente autonomia para que eles possam realizar as suas tarefas. Para isto, o robô deve utilizar as informações percebidas do seu ambiente de trabalho e adotar um determinado tipo de ação com o intuito de cum-prir a tarefa para a qual ele foi programado. No entanto, fazer um robô decidir por uma determinada ação diante de algum estímulo externo apresenta algumas dificuldades:

1. A limitação na capacidade de percepção dos sensores utilizados. Dependendo do ambiente de trabalho do robô, nem todo sensor se torna apropriado para coletar as informações desejadas. E mesmo que um sensor seja adequado para isso, o seu alcance pode não ser suficiente para obter toda a descrição necessária do ambiente local;

(17)

2 CAPÍTULO 1. INTRODUÇÃO

3. A discretização do vetor de estado do robô diante de um ambiente dinâmico e con-tínuo, por causa do sistema computacional de controle global. Dependendo do período de amostragem do sistema de controle, determinados eventos podem ocor-rer sem que sejam percebidos pelos sensores. Além disso, os erros provenientes da discretização de informações contínuas contribuem, em maior ou menor grau, para a incerteza em determinadas tarefas do robô.

O desenvolvimento da autonomia de um robô pode ser relativamente simplificado através da implementação modular do seu sistema de controle global. Neste tipo de cons-tituição, cada bloco é responsável por uma tarefa essencial para que o robô desempenhe apropriadamente as suas ações em seu ambiente de trabalho. Normalmente, o resultado fornecido por um módulo passa a ser a entrada para o funcionamento de outros módulos [Medeiros 1998].

Das várias tarefas que o robô tem que executar ou, especificamente, dos vários mó-dulos do sistema de controle global do robô, a localização apresenta-se como uma das mais importantes. Dotar um robô com uma capacidade de determinar cuidadosamente a sua pose1 no espaço de trabalho é o requisito mínimo para se obter uma autonomia satisfatória.

Da mesma forma que o sistema de controle global, o sistema de localização do robô também pode ter uma constituição modular. Isto garante uma melhor organização em sua implementação e uma maior robustez em relação às falhas. Ele necessita basicamente de:

1. Um conjunto de sensores para percepção do ambiente. Neste caso devem ser anali-sados os diferentes tipos de sensores e em qual ambiente o robô atuará;

2. Um módulo de integração de todas as informações extraídas destes diferentes sen-sores em um único dado; e

3. Um outro módulo que calcula a pose ou, tratando de robôs móveis terrestres, a posição(x,y)e orientaçãoθcom relação a uma referência fixa no ambiente. Um módulo de localização pode ser ilustrado de forma simplificada pela figura 1.1.

O robô pode calcular a sua pose através de duas metodologias principais, que são:

1. As medidas de posição relativa, que dão a posição e orientação do robô em relação a uma pose calculada anteriormente; e

2. As medidas de posição absoluta, que dão a pose com relação a um sistema de coor-denadas global. Elas não necessitam de poses calculadas anteriormente.

As poses obtidas pelas medidas relativas e pelas medidas absolutas podem ser agru-padas para fornecer uma melhor estimativa para a localização do robô. Borenstein et al. (1996) fizeram uma compilação dos métodos e sensores mais utilizados para efetuar a localização através destas duas metodologias. Normalmente, a medida de posição rela-tiva utiliza sensores chamados de encoders para verificar a rotação total das rodas. Com

1Conjunto de dados que descreve completamente o robô em relação a um sistema de coordenadas fixo

(18)

3

Sensores (estímulos do ambiente)

Fusão Sensorial

Cálculo da Pose

Localização

Figura 1.1: Diagrama de blocos de um sistema simplificado de localização de um robô.

isso, através de um procedimento matemático simples (odometria), do conhecimento da pose anterior e sabendo em que direção o robô seguiu, pode-se determinar a sua pose atual. Este tipo de localização tem a vantagem de ser auto-suficiente, mas sofre com a presença de erros que vão se acumulando com o deslocamento do robô. Este erro inte-gral existe por fatores sistemáticos (diferenças nos diâmetros e desalinhamento das rodas) e não-sistemáticos (irregularidades e objetos no piso ou até mesmo escorregamento das rodas durante o movimento do robô) [Di Marco et al. 2003, Doh et al. 2003, Zhou e Chirikjian 2003, Meng e Bischoff 2004]. O erro de odometria faz com que haja uma in-certeza na determinação da localização exata do robô no espaço de trabalho, como ilustra a figura 1.2.

Já as medidas de posição absoluta podem ser realizadas utilizando alguma das ferra-mentas a seguir:

1. Marcas naturais ou artificiais: estas marcas são elementos de fácil percepção que estão presentes no ambiente de trabalho do robô. Elas podem ser objetos natu-rais como quadros, placas, portas, por exemplo, ou podem ser elementos artificiais colocados no ambiente especificamente para esse propósito, como etiquetas colori-das. Elas têm a sua posição conhecida com relação a um frame global. Assim, ao identificá-las através de seus sensores, o robô pode facilmente calcular a sua pose global por triangulação. No entanto, alguns autores consideram que a alteração do ambiente do robô com a colocação das marcas artificiais modifica o objetivo inicial de desenvolvimento da autonomia;

(19)

4 CAPÍTULO 1. INTRODUÇÃO

elipses de incerteza trajetória estimada

Figura 1.2: Exemplo ilustrativo do crescimento das regiões de incerteza no cálculo da pose relativa do robô pelo método da odometria.

trabalho previamente armazenado na memória do robô. Se houver equivalência entre ambas as informações, o robô pode estimar a sua pose absoluta.

Dessa forma, um dos mais simples sistemas de localização de robôs utiliza a odome-tria e a comparação entre mapas de maneira conjunta [Demirli e Türk¸sen 2000, Iocchi e Nardi 2002, Arras et al. 2003, Borges e Aldon 2004].

Os mapas que representam o ambiente de trabalho do robô podem ser descritos na forma geométrica ou na forma topológica. A representação geométrica define o ambi-ente de uma maneira detalhada. Ele apresenta todas as características métricas de que é constituído, como posição de paredes, passagens, obstáculos, entre outros. A sua grande vantagem é manter uma boa relação com o mundo real.

Este tipo de representação pode ser construído através de uma grade de ocupação. Nele, o espaço de trabalho é representado por uma matriz. Cada elemento dessa ma-triz corresponde a uma região do espaço de trabalho. Um elemento pode armazenar a probabilidade da região correspondente estar ou não ocupada com obstáculo.

Um outro tipo de representação métrica utilizado é um mapa baseado em primitivas geométricas, como retas ou polígonos. Ou seja, o robô constrói e mantém uma lista de uma determinada estrutura de dados que armazena parâmetros que podem descrever estas primitivas mais simples. Tal mapa fornece uma representação mais compacta do ambiente.

(20)

5

representadas pelos nós do grafo, embora a maior parte destes mapas descreva o espaço livre do robô.

Há um terceiro tipo de representação que é chamada de mapa híbrido (ou mapa geométrico-topológico). Ela agrega as vantagens isoladas de ambos os tipos de mapa, o que reduz as suas desvantagens individuais. Isto permite que o robô execute eficiente-mente as tarefas mais apropriadas para cada tipo de representação. Por exemplo, o robô tanto pode navegar pelo ambiente de trabalho, planejando a sua rota através de um al-goritmo que determina o menor caminho entre dois nós no grafo (parte topológica da representação), quanto pode adotar estratégias para se esquivar localmente de obstáculos utilizando as informações armazenadas na parte geométrica. Uma visão geral dos concei-tos associados a uma representação híbrida pode ser vista no artigo de Buschka e Saffiotti (2004).

Assim, percebe-se que há diversas formas para dotar um robô com aceitável capa-cidade de localização. Para isto, é suficiente ter um conjunto de sensores e um modelo do ambiente previamente armazenado na memória do robô. Mas há determinadas situa-ções reais em que este mapa não pode ser fornecido. Sem uma referência, não há como comparar as abstrações realizadas sobre as medidas sensoriais com o modelo fornecido para obter a pose do robô. Por conseqüência, todas as outras tarefas que dependem da localização do robô são afetadas.

Dessa forma, há uma outra ação essencial para que o robô mantenha a sua autonomia: o construção do mapa do ambiente. Esta tarefa deve ser realizada antes de qualquer outra que necessita da localização do robô.

Para isso, o robô deve primeiramente utilizar sensores que determinam a distância relativa entre ele e os obstáculos para descrever a cena observada. Em seguida, as infor-mações obtidas destes sensores devem ser tratadas para que se obtenha uma abstração da vizinhança local do robô. Esta abstração é comparada com outras anteriormente reali-zadas e adicionada ao mapa em construção, caso aquele local específico não tenha sido investigado. Para o êxito deste mapeamento, deve-se implementar estratégias de explo-ração no robô. Assim, ele pode percorrer todo o seu ambiente e repetir esta investigação local. A figura 1.3 sintetiza este procedimento.

O sucesso desta forma básica de mapeamento reside na capacidade de referenciar toda informação extraída dos sensores em uma mesma origem. Dessa forma, a medida de posição relativa do robô exerce um papel importante nesta tarefa. Como se tem o total desconhecimento do ambiente, pode ser assumido que a origem do frame global é a pose inicial do robô. Toda informação métrica obtida então estará referenciada a uma mesma origem e o mapa construído corresponderá ao ambiente real. Com isto, este mapa irá manter a propriedade citada por Frese (2004): “certeza nas relações apesar da incerteza nas posições”.

O grande problema no mapeamento é que a medição de pose relativa do robô tem erros acumulativos. Além disso, as medidas obtidas por sensores extraceptivos também são imprecisas. Como ambas as informações são necessárias para a criação do mapa, ele vai se degradando significativamente com a sua construção. A única forma para evitar isto seria utilizar a informação do próprio mapa para corrigir a pose do robô.

(21)

6 CAPÍTULO 1. INTRODUÇÃO

extraceptivos Sensores

Sensores

proprioceptivos

Construção do Mapa

Pose relativa

Exploração Robô

trabalho Ambiente de

Figura 1.3: Diagrama de blocos simplificado da tarefa de mapeamento de um ambiente desconhecido.

problema para o desenvolvimento da autonomia em robótica móvel, que foi denominado de Mapeamento e Localização Simultâneos2. Nesta situação, o robô tem que construir a representação do seu espaço de trabalho enquanto, de forma simultânea, utiliza o próprio mapa em desenvolvimento para atualizar a sua pose. A abordagem mais simples para a solução deste problema seria desconsiderar os erros das medidas relativas e recair no pro-blema de mapeamento puro. No entanto, o mapa obtido não teria a qualidade necessária para a realização de outras tarefas pelo robô. Outras metodologias mais eficientes foram desenvolvidas e uma análise do estado da arte em SLAM pode ser vista no capítulo 2.

1.1

Propostas de Trabalho

Tratar do problema de mapeamento executado por um robô autônomo e resolver si-multaneamente o seu problema de localização não é uma tarefa trivial. Os algoritmos implementados para isto devem levar em consideração alguns dos desafios existentes. Eles podem ser descritos da seguinte forma:

• As incertezas existentes no modelo do robô e nas medidas dos sensores estão relaci-onadas com as incertezas obtidas no mapeamento do ambiente. E de forma cíclica e acumulativa, este mesmo mapa incerto é utilizado para o cálculo da pose do robô;

2Do inglês, tem-se Simultaneous Localization and Mapping cuja sigla é SLAM. Alguns autores também

(22)

1.1. PROPOSTAS DE TRABALHO 7

• Um grande desafio consiste no estabelecimento adequado da correspondência entre medidas sensoriais e abstrações passadas com medidas e abstrações atuais. Ou seja, como o robô pode determinar se uma característica que foi anteriormente percebida está sendo novamente observada no momento atual, levando em consideração todas as incertezas citadas?

• Se o mapa do ambiente terá informações métricas, é necessário ponderar quais

estruturas são mais adequadas para serem utilizadas. A complexidade do algoritmo pode crescer com a quantidade de características do ambiente representadas.

• Como no início do processo de mapeamento o ambiente é totalmente desconhecido, o robô deverá ter a capacidade de definir estratégias para explorar o seu espaço de trabalho. A dificuldade existe no fato de que a exploração deverá considerar informações incompletas do ambiente.

• Por fim, um último problema em mapeamento consiste na representação de

ambi-entes dinâmicos. Grande parte dos trabalhos em mapeamento e localização simul-tâneos focam ambientes estáticos.

Esta tese de doutorado propõe uma nova abordagem para tratar o problema da cons-trução autônoma de um mapa bidimensional de um ambiente de trabalho interno do robô (interior de casas, escritórios e laboratórios) utilizando uma representação topológica en-riquecida com informações métricas do ambiente. Teoricamente, pode-se afirmar que se trata de uma representação híbrida, porém o mapa proposto não mantém duas representa-ções em paralelo, mas sim um conjunto de informarepresenta-ções métricas locais que são agregadas em um grafo, comportando-se então como um vértice. Assim, o robô tem a plena ca-pacidade de determinar a sua pose métrica local e, de forma extensiva, determinar a sua pose global. Para que os resultados apresentados ao longo do texto fossem mais realistas, optou-se por incluir incertezas no cálculo da pose do robô e nas medidas de distância obtidas com os sensores (especificamente sensores de ultrassom, modelados para a re-alização de simulações, e sensores de infravermelho, obtidos de um banco de dados de experiências com robôs reais [Howard e Roy 2003]). Com a inclusão destas incertezas, torna-se necessária a elaboração de técnicas de correção da pose do robô durante a fase de construção do mapa.

O tema de mapeamento topológico com enriquecimento da representação através de informações métricas apresentou suficientes desafios per si. Contudo, neste trabalho não foram propostas soluções para o problema de mapeamento em ambientes dinâmicos. Tal assunto faz parte das extensões que esta tese pode gerar, como pode ser visto no capítulo 6, tornando-se assim uma proposta para futuros trabalhos.

1.1.1

Descrição do Ambiente

(23)

8 CAPÍTULO 1. INTRODUÇÃO

Os vértices do grafo são associados a uma descrição métrica, suficientemente completa para a tarefa de mapeamento, de salas, quartos e corredores de um ambiente de traba-lho interno. As arestas são associadas então às passagens ou portas existentes entre estes ambientes locais.

A principal vantagem desta representação topológica aqui adotada é que o grafo des-creve, verdadeiramente, a topologia do ambiente de trabalho do robô. Ou seja, o grafo descreve com os seus vértices e arestas os arranjos de salas e corredores de um ambiente interno.

Este mapa topológico é similar ao mapa baseado em topologia, proposto por Fabrizi e Saffiotti (2000). Como o grafo descreve a conectividade “natural” do ambiente de tra-balho do robô, tarefas de alto nível podem ser mais facilmente executadas. Por exemplo, considerando que o ambiente esteja completamente ou parcialmente mapeado, a tarefa mudança de ambiente a ser realizada pelo robô torna-se mais intuitiva. Para isto, basta indicar simbolicamente para qual sala o robô deve se deslocar.

Para a parte métrica desta representação híbrida foi utilizada a descrição de primitivas geométricas, opondo-se ao mapa por grade de ocupação proposto por Moravec e Elfes (1985). No entanto, diferentemente de outros mapas de características que normalmente mantêm uma lista de segmentos de retas para representarem paredes e/ou as faces dos obstáculos, a descrição aqui utilizada busca representar todo o espaço livre local de uma forma condensada. Ou seja, descreve-se um ambiente local por uma figura geométrica que melhor se adaptar às informações sensoriais extraceptivas coletadas pelo robô. Um exem-plo ilustrativo desta simplificação de representações abstratas em um único dado métrico é apresentado pela figura 1.4. Este tipo de representação tem suas vantagens já descritas na literatura: facilita tarefas de nível mais baixo como o desvio local de obstáculos, além de possuir menor espaço computacional para armazenamento.

Além da descrição geométrica do ambiente livre local por uma figura, cada nó do grafo também pode armazenar uma lista contendo todos os obstáculos presentes neste ambiente. E de maneira similar, estes obstáculos também são representados por figuras geométricas simples.

Uma observação feita sobre o mapa proposto é que as passagens, ou arestas, também são enriquecidas com informações métricas. Para determiná-las, o robô realiza uma busca no ambiente local e utiliza heurísticas para determinar o conjunto de informações neces-sárias que possa descrever cada passagem encontrada. A manutenção destas informações métricas desepenha um papel importante neste trabalho. Elas podem servir como âncoras, ou referências absolutas, para que o robô possa unir diferentes ambientes locais com uma passagem em comum no mapa híbrido final.

(24)

1.1. PROPOSTAS DE TRABALHO 9

reta 01

reta 05

reta 04 reta 02

reta 06

reta 03

Ambiente local: reta 01 reta 02 reta 03 reta 04 reta 05 reta 06

Ambiente local: retângulo 01 retângulo 02 retângulo 02

retângulo 01

Figura 1.4: Comparação ilustrativa entre o tipo padrão de representação métrica local por mapa de características (lista de segmentos de retas associadas às faces dos obstáculos) e o tipo de representação proposta neste trabalho.

1.1.2

Captura da Geometria Local

O procedimento de captura das informações métricas para descrever os ambientes lo-cais (salas e corredores) é inspirada em uma variação da transformada de Hough, a qual é chamada de Transformada Generalizada de Hough [Ballard 1981]. Ela é comumente uti-lizada para a obtenção de curvas cuja descrição analítica é desconhecida ou é inexistente. É levado em consideração que se tem um prévio conhecimento abstrato de que o ambiente livre local (uma sala, por exemplo) pode ser aproximado por uma figura geo-métrica simples. Assim, o robô utiliza sensores de distância para coletar um conjunto de pontos neste ambiente local, e aplica a transformada para obter os dados da figura geométrica que representa este ambiente investigado. A vantagem deste procedimento é que torna-se possível obter toda a descrição métrica do espaço local através de uma única aplicação do método de votação inspirado no algoritmo de Hough. Além disso, o co-nhecimento abstrato inicial permite que várias etapas comumente utilizadas para se obter uma representação métrica por descrição de elementos geométricos sejam dispensadas. Por exemplo, algoritmos padrões coletam pontos no ambiente, determinam retas, e com elas as paredes da sala, para, em seguida, calcular as suas dimensões. O algoritmo aqui apresentado permite que, coletados os pontos, a geometria da sala seja determinada em seguida. Vale ressaltar que nas simulações foram consideradas as incertezas no cálculo da distância relativa entre o robô e o anteparo.

(25)

10 CAPÍTULO 1. INTRODUÇÃO

(a) Exemplo de ambiente interno. Os obstáculos estão estáticos. Ambiente 01

Ambiente 02

Ambiente 04 Ambiente 03

Passagens

01

02

03

04

Amb. 01

Passagem: amb. 01−02

Amb. 02

Passagem: amb. 02−03

Amb. 03 Amb. 04

Passagem: amb. 02−04

(b) Exemplo do mapa híbrido equivalente. Cada nó armazena um conjunto

− Lista de obstáculos; − Geometria local; Nó 04:

− Lista de obstáculos; − Geometria local; Nó 03:

− Lista de obstáculos; − Geometria local; Nó 02:

− Geometria local; Nó 01:

de informações métricas que descrevem um ambiente local.

(26)

1.1. PROPOSTAS DE TRABALHO 11

Não foram encontradas na literatura referências sobre a aplicação da transformada gene-ralizada dentro do contexto de mapeamento autônomo.

1.1.3

Exploração do Ambiente Interno

Neste mapeamento é assumido que o robô não tem qualquer conhecimento inicial da conectividade do ambiente a ser representado. Dessa forma, é implementada uma me-todologia de exploração para que o robô execute, localmente, as aquisições sensoriais necessárias para representar o espaço aberto em que ele se encontra e agregue estas in-formações na representação topológica. É importante observar que a construção do mapa é realizada enquanto o robô executa esta exploração. Ou seja, para cada ambiente local investigado, um novo nó é adicionado ao grafo que representa a topologia do ambiente. Este procedimento é repetido até que não haja ambientes locais a serem explorados.

O tipo de exploração utilizado consiste na aplicação de algoritmos padrões de busca em grafo para alcançar espaços locais desconhecidos (ou na nomenclatura da teoria dos grafos, nós não-visitados) e adicioná-los na representação final.

1.1.4

Atualização da Pose do Robô

Para que o mapa gerado reproduza o ambiente total com qualidade, é necessário que o robô mantenha uma boa estimativa de sua pose durante a exploração. Como as medi-das de localização relativa têm erros acumulativos, o mapa resultante apresentará defor-mações nas posições determinadas para as características métricas reproduzidas, e não terá uma precisão final adequada, violando um dos requisitos necessários para um ma-peamento autônomo eficiente, de acordo com Frese (2004). Para corrigir este problema, então deve-se fazer com que o robô atualize constantemente a sua pose. Como ele está em um procedimento de construção do mapa do seu ambiente de trabalho, o robô deverá uti-lizar as informações recém adquiridas para corrigir a sua po sição e orientação, adotando assim procedimentos de SLAM.

Neste sentido, é apresentado uma metodologia para que o robô possa localizar-se den-tro de uma precisão estabelecida utilizando as informações métricas recém determinadas da representação híbrida. Embora tenha um peso menor na contribuição total do trabalho, a abordagem para resolução do problema de SLAM aqui apresentada é bastante simples e intuitiva e busca obter resultados apropriados sem, necessariamente, utilizar ferramentas da teoria de filtragem, amplamente utilizadas na literatura.

O objetivo é atualizar a pose do robô por simples métodos determinísticos baseando-se no conhecimento geometria local e nas informações de distância obtidas do ambiente. O conhecimento abstrato inicial do formato geométrico do ambiente local permite que esta tarefa seja bastante simples, o que faz com que a comparação de mapas não seja utilizada.

1.1.5

Objetivo Global

(27)

12 CAPÍTULO 1. INTRODUÇÃO

utiliza as informações sensoriais obtidas para localizar-se adequadamente. Os algoritmos propostos visaram, sempre que possível, resultados eficientes juntamente com o esforço computacional reduzido. Além disso, outro objetivo importante é que o mapa seja gerado de forma iterativa, e não por cálculo em lote ao término da exploração.

Deseja-se mostrar com este trabalho que resultados adequados para o problema de mapeamento autônomo executado por um robô móvel pode ser obtido com um conjunto de propostas simples, utilizando ferramentas e algoritmos bem-fundamentados pela lite-ratura especializada.

1.2

Organização do Trabalho

Este documento encontra-se organizado da seguinte forma:

• O capítulo 2 apresenta o estado da arte em localização, mapeamento e SLAM, que são os principais assuntos abordados por esta tese. As propostas encontradas na li-teratura serão analisadas e, conceitualmente comparadas com o trabalho aqui apre-sentado;

• No capítulo 3 descreve-se o método do mapeamento híbrido proposto para criação e manipulação do grafo topológico representativo do ambiente e a sua utilização no procedimento de exploração pelo robô móvel;

• O capítulo 4 mostra como é realizada a determinação dos parâmetros geométricos úteis para representar metricamente os espaços locais;

• O capítulo 5 apresenta uma série de simulações realizadas para a validação do mé-todo proposto. Neste capítulo, também são apresentados os modelos do robô e dos sensores utilizados para a realização do mapeamento;

(28)

Capítulo 2

Mapeamento de Ambientes por Robôs

Autônomos

Este capítulo tem o objetivo de apresentar as principais pesquisas e desenvolvimento em tarefas de mapeamento por robôs móveis autônomos. Como descrito no capítulo 1, a capacidade de definir autonomia em robôs está diretamente relacionada à sua capacidade de localizar-se adequadamente no espaço de trabalho. Porém, as tarefas de localização e mapeamento global possuem um acoplamento que força o seu tratamento conjunto, o que resulta no problema de SLAM. Embora não seja o principal foco desta tese, a resolução do problema de mapeamento e localização simultâneos pode ser uma extensão da abordagem de mapeamento híbrido bidimensional aqui apresentada.

2.1

Mapeamento Global

A definição de uma representação do ambiente de trabalho de um robô móvel se dá pela necessidade de construir um sistema de navegação autônoma eficaz. Esta navegação pode ser didaticamente definida através de três questões: “onde estou?”, “onde vou?” e “como faço para chegar lá?”. As duas últimas perguntas estão relacionadas com planeja-mento de tarefas e controle de trajetórias, enquanto a primeira aborda todos os problemas relativos à localização.

Em robótica móvel, localizar é definir e manter periodicamente atualizada uma esti-mativa da pose de um robô. Se a sua atuação for restrita a ambientes internos, um pro-cedimento simples de localização consiste em fazer com que o robô perceba o ambiente local onde está para, em seguida, realizar uma comparação com o mapa global do ambi-ente. O conhecimento de informações sobre a pose anterior do robô melhora a precisão do resultado. Assim, é importante observar que para executar tal tarefa, é necessário que o robô mantenha uma representação interna do ambiente global.

(29)

14 CAPÍTULO 2. MAPEAMENTO DE AMBIENTES POR ROBÔS AUTÔNOMOS

2.1.1

Mapas Métricos

Dentro da corrente de representação métrica do ambiente, o mapa pode ser construído por uma grade de ocupação [Moravec e Elfes 1985, Borenstein e Koren 1991, Oriolo et al. 1998] ou por mapa de características [Crowley 1985, Austin e McCarragher 2001, Pfister et al. 2003].

A representação por grade de ocupação foi inicialmente proposta por Moravec e El-fes (1985) e é bastante utilizada para navegação dos robôs. A abordagem utilizada para a construção deste mapa consiste em utilizar um sonar ou algum sensor que retorne a distância relativa até um obstáculo dentro de um ambiente fechado (um laboratório, por exemplo). Cada medida coletada traz uma informação associada sobre a existência ou não de obstáculos em uma determinada região do ambiente englobada pelo feixe sonoro do sensor. Estas informações eram então projetadas em um mapa horizontal (bidimensi-onal) levando em consideração o conhecimento da pose do robô. Assim, cada região do ambiente real corresponderia a uma área do mapa. Quanto mais medidas de distância são coletadas de posições diferentes, mais preciso é o mapa.

Um problema enfrentado por Moravec e Elfes (1985) foi a existência de incertezas nas medidas retornadas pelos sonares. Embora tenham adotado métodos para filtrar informa-ções não-desejadas, a informação do feixe sonoro apenas fornecia um dado indireto sobre uma região ocupada do ambiente (por exemplo, o sonar apenas fornece a informação de distância entre o robô e o obstáculo, mas não informa sobre a posição deste obstáculo). Assim, como um feixe do sonar apenas informava se um volume do ambiente de trabalho estava vazio ou ocupado, Moravec e Elfes (1985) modelaram este feixe através de fun-ções de distribuição de probabilidade. Tais funfun-ções descreviam a confiança de que vários pontos dentro do cone (modelo matemático do feixe) representavam regiões livres de obs-táculos, e a incerteza sobre a localização de um ponto (obstáculo real) sobre a superfície deste cone.

As informações retornadas pelas funções de distribuição de probabilidade sobre os volumes do espaço real eram projetadas em uma matriz, com células descrevendo uma área pré-definida do ambiente. Estas probabilidades eram combinadas com as probabi-lidades de outros feixes sonores para a mesma região do espaço real. Portanto, o mapa resumia-se a uma matriz cujas células armazenavam valores entre [-1,1], correspondendo a probabilidade da região estar vazia (valores negativos) ou ocupada (valores positivos). Células com valor nulo representavam o desconhecimento sobre a ocupação de regiões não investigadas pelo robô.

(30)

2.1. MAPEAMENTO GLOBAL 15

Cada uma destes métodos apresentou suas vantagens quando comparadas entre si. Porém, a conclusão obtida tanto por Ribo e Pinz (2001) quanto por Gambino e Oriolo (1996) foi que a teoria possibilística produz resultados mais adequados dentro de um contexto de navegação robótica [Oriolo et al. 1998], por causa do melhor tratamento dado às falsas informações retornadas pelos sonares. A abordagem probabilística a evidência teórica foram mais conservativas no tratamento da informação, o que gerou resultados menos realísticos.

Outras variações do mapeamento com grade também foram elaboradas. Borenstein e Koren (1991) apresentaram o Histogramic In Motion Mapping (HIMM), que é uma metodologia de geração de grade para representar o ambiente. A sua construção ocorre em tempo real, durante o processo de exploração local. Ela é utilizada para auxiliar as ações de desvio de obstáculos. O valor armazenado em uma célula da representação implicará na execução, ou não, de manobras para que o robô não colida com algum obstáculo.

Esta forma de construção de mapa é fortemente baseada na metodologia da grade de certeza [Elfes 1987]. Cada célula do mapa armazena um valor que corresponde à certeza da existência de obstáculo na região correspondente. A diferença existe nos aspectos cor-respondentes à construção e atualização da grade. Por exemplo, o método da grade de certeza incrementa todas as células do mapa que estão sob a borda da área cônica cor-respondente ao feixe do sonar. O HIMM apenas incrementa o valor da célula que existe sobre o eixo acústico do sonar e que corresponde à distância retornada. Para a represen-tação do setor vazio (correspondente à área cônica do sonar) as células existentes apenas no eixo acústico são decrementadas, desde que o seu valor não seja nulo. Assim, com o deslocamento do robô no espaço de trabalho, é formado um histograma bidimensional que contém as informações necessárias para o desvio de obstáculos.

Há um outro tipo de representação métrica chamado de mapa de características. Neste mapa, são armazenados dados que descrevem alguma forma geométrica que pode ser facilmente encontrada no ambiente de trabalho do robô, como pontos, retas ou figuras geométricas mais simples (retângulos, círculos, etc.), por exemplo. Por causa disto, a sua aplicação é mais freqüente em ambientes internos e semi-estruturados, como interior de casas, escritórios e laboratórios [Kao e Probert 2000, Austin e McCarragher 2001, Toma-tis et al. 2001, Borges e Aldom 2002, Borges e Aldom 2003, Pfister et al. 2003, TomaToma-tis et al. 2003, Amigoni et al. 2004, Hwang et al. 2004, Thrun et al. 2004, Wulf et al. 2004]. Como o mapa é resumido a uma lista de elementos geométricos, essa abordagem cria representações compactas para armazenamento na memória do robô. Uma desvantagem é a necessidade da realizar abstrações sobre as informações sensoriais.

(31)

16 CAPÍTULO 2. MAPEAMENTO DE AMBIENTES POR ROBÔS AUTÔNOMOS

É possível utilizar diferentes abordagens para o mapa de características. Por exemplo, um ambiente pode ser representado computacionalmente através de uma lista de retas e pontos, onde tais elementos possuem uma incerteza associada (representação probabilís-tica do ambiente). Com isto, torna-se possível utilizar a filtragem extendida de Kalman para a atualização dos elementos do mapa [Kao e Probert 2000, Tomatis et al. 2003].

O tipo de representação adotado por Pfister et al. (2003) também foi por segmentos de reta. Porém, eles não utilizaram uma abordagem probabilística do mapa de forma que este tinha que ser periodicamente atualizado pela teoria da filtragem. Pfister et al. (2003) determinaram as retas de maneira a incorporar as incertezas dos sensores de distância. Com um conjunto denso de pontos coletados de uma parede do ambiente em que o robô estava, eles encontravam uma quantidade de retas através de transformada de Hough. Uma vez de posse deste conjunto, eles determinavam a reta que melhor se ajustava aos pontos utilizando minimização do erro quadrático.

Ter a descrição de um ambiente permite que o robô possa executar diversas tarefas no seu espaço de atuação. Porém, Austin e McCarragher (2001) imaginaram que seria mais viável o robô armazenar informações sobre as restrições que ele sofre pelos obstáculos. Desta forma, o mapa proposto por eles não descreve paredes ou faces de móveis dentro de um ambiente tipo escritório, mas sim os limites de até onde o robô tem liberdade de movimento. Embora tenha esta característica conceitual de representação dos limites das restrições físicas para o movimento do robô, o procedimento adotado por Austin e McCarragher (2001) para obter o mapa é similar a outros que utilizam representação por primitivas geométricas simples, tais como segmentos de retas, segmentos cúbicos, entre outros. Os autores efetuaram a minimização de erros para determinar a confiança de uma determinada primitiva descrever uma restrição específica.

2.1.2

Mapas Topológicos

Os mapas topológicos utilizam grafos para representar o ambiente de trabalho do robô. Normalmente, estes grafos descrevem os espaços livres para a execução de tarefas. Os nós correspondem a regiões que possuem informações sensoriais homogêneas e os arcos refletem a conexão entre estas regiões. Mapas topológicos são compactos para armaze-namento na memória do robô. Eles permitem a definição de tarefas de alto nível, como o planejamento de rotas, por exemplo. O tipo de localização nesta forma de representação é abstrata, ou seja, não se pode definir explicitamente a pose do robô. No entanto, pode-se afirmar em qual nó do grafo ou em qual região do ambiente ele se encontra. Isto faz com que as incertezas presentes no modelo do robô tenham uma influência reduzida na sua localização topológica.

(32)

2.1. MAPEAMENTO GLOBAL 17

Neste caso em especial, o objetivo dos autores era obter um mapa de navegação, uma vez que os nós são imagens omnidirecionais e os elos são descritos por informações motoras sobre como o robô pode acessar outras regiões. Um outro tipo de descrição topológica foi proposta por Tomono e Yuta (2003). O seu grafo descreve o arranjo dos objetos presentes no ambiente, como os móveis. Tal representação é útil para tarefas de transporte ou manipulação de objetos. Neste mapa, um nó representa um objeto e cada arco representa uma pose relativa entre objetos. Cada arco tem uma distribuição de probabilidade de representar a incerteza da pose relativa.

Diante desta diversidade de representações por grafo, Fabrizi e Saffiotti (2000) apre-sentaram uma forma de representar a topologia de um ambiente interno a partir da infor-mação do espaço livre presente em um mapa do tipo grade de ocupação. Estes espaços livres são as salas e/ou corredores existentes no ambiente global. Pela definição adotada por Fabrizi e Saffiotti (2000), eles correspondem os nós do grafo gerado. As passagens entre as salas são os arcos. Dessa forma, o mapa descreve o ambiente de forma mais natural e intuitiva.

Uma interessante abordagem de mapeamento topológico foi proposta por Wether-bie III e Christopher (2001). Eles apresentaram uma metodologia na qual consideravam o conhecimento abstrato prévio das características geométricas mais comuns do ambiente interno que o robô está. Ou seja, a priori o robô sabe que o seu ambiente de trabalho pos-sui corredores, junções em T, em L, entre outras características comumente encontradas nos interiores de edifícios. Para identificá-las, o robô utilizava informações obtidas por sonares e aplicava testes baseados em simples regras de comparação das distâncias retor-nadas com thresholds utilizados para definir cada uma destas marcas (corredores, junções, etc.). Utilizar um conhecimento inicial da geometria do ambiente simplifica o processo interpretação sensorial para obter o mapa.

A teoria de mapeamento topológico de ambientes estabelece que a representação ob-tida pelo robô é menos sensível às incertezas nos modelos do robô e dos sensores ex-traceptivos. No entanto, isso ocorre apenas em descrições exclusivamente simbólicas do ambiente. A maioria dos grafos tende a armazenar alguma informação métrica em seus vértices.

Desta forma, é perfeitamente possível associar as incertezas sensoriais aos vértices de uma representação topológica. Com isso, obtem-se uma representação estocástica como as apresentadas para os mapas de características. Por exemplo, a pose relativa entre dois objetos no mapa topológico de Tomono e Yuta (2003) possui incertezas por causa ao mo-delo do robô. Assim, eles incluíram uma distribuição de probabilidade na representação obtida. Ranganathan et al. (2006) utilizaram mapas topológicos probabilísticos, ou seja, uma distribuição de probabilidades sobre todas as possíveis topologias para o ambiente. O objetivo principal era a resolução do problema de identificação de uma região anterior-mente explorada.

(33)

18 CAPÍTULO 2. MAPEAMENTO DE AMBIENTES POR ROBÔS AUTÔNOMOS

2.1.3

Mapas Híbridos

Dando continuidade a um trabalho anterior [Fabrizi e Saffiotti 2000], Fabrizi e Saffiotti (2002) enriqueceram a representação topológica obtida a partir de uma grade de ocupação com informações métricas, tais como posição do centro do espaço livre, largura, altura e orientação em relação a um referencial comum. Este trabalho de Fabrizi e Saffiotti (2000) foi um dos principais influenciadores das abordagens apresentadas nesta tese.

Como visto no capítulo 1, um dos objetivos aqui apresentados é fazer com que o robô crie uma representação topológica na qual os nós representem as salas e corredores de um ambiente interno e as arestas representem as passagens entre as salas. Estes vértices e arestas armazenam informações métricas relativas ao ambiente local representado. Dessa forma, o mapa aqui construído é similar ao apresentada por Fabrizi e Saffiotti (2002). A representação proposta possui informações sobre a geometria de cada espaço local, o que permite a reconstrução do mapa na forma métrica. No entanto, ressalta-se que embora o objetivo final seja o mesmo, os meios utilizados para obter o mapa são distintos. Fabrizi e Saffiotti (2002) geram o grafo após o robô ter explorado todo o ambiente e ter construído uma grade de ocupação. A abordagem desta tese gera o mapa topológico iterativamente, ou seja, para cada nova sala investigada, um novo vértice é inserido no grafo.

Uma outra diferença é que a morfologia matemática foi utilizada como ferramenta para criar o grafo no trabalho de Fabrizi e Saffiotti (2000), e as informações métricas das salas são obtidas pelo cálculo dos momentos na grade gerada, enquanto que o mapa aqui proposto é gerado pela exploração do ambiente e tem as informações métricas obtidas por um método inspirado na transformada generalizada de Hough.

Similarmente a Fabrizi e Saffiotti (2002), Laviers e Peterson (2004) apresentaram uma idéia de mapeamento cognitivo que habilita o robô determinar a sua posição em termos abstratos. Os seus objetivos gerais são bastante próximos aos apresentados no capítulo 1: (1) representar o ambiente de trabalho do robô através de uma estrutura compacta e (2) permitir que o robô se localize de forma métrica e abstrata simultaneamente. Para isso, Laviers e Peterson (2004) utilizaram a abordagem híbrida, em que os nós do mapa to-pológico são segmentos de retas armazenados em uma estrutura denominada Absolute

Space Representation. Esta estrutura parte do pressuposto que cada ambiente local é

in-dependente de todos os outros. A construção deste tipo de mapa também é incremental: para cada espaço local o procedimento de obtenção das estruturas geométricas que dão o caráter métrico da representação é repetido e um novo nó é adicionado na representação topológica. As diferenças entre os dois trabalhos residem em:

(34)

2.1. MAPEAMENTO GLOBAL 19

aplicação do método dos mínimos quadrados. Com isso, determina-se um conjunto de retas que representa metricamente o espaço local onde está o robô.

2. O tipo de elemento geométrico usado para a parte métrica da representação híbrida: aqui é usada uma figura geométrica simples para representar todo o espaço local. É necessário partir de um prévio conhecimento abstrato de que os ambientes internos são semi-estruturados e que sejam facilmente representados por essa figura. O tra-balho de Laviers e Peterson (2004) usa linhas retas para aproximar os limites dos espaços locais.

Sobre a construção do mapa topológico e o tratamento utilizado para as incertezas sen-soriais e do robô, o artigo não foi específico. Deste modo não é possível realizar uma comparação mais detalhada.

Um mapa baseado na topologia do ambiente [e.g. Fabrizi e Saffiotti 2000, Fabrizi e Saffiotti 2002] também foi utilizado por Galindo et al. (2005). Eles propuseram uma abor-dagem para permitir que um robô móvel construa uma representação híbrida adicionada de informações semânticas. Estas informações semânticas são obtidas por visão compu-tacional. Elas consistem na atribuição de etiquetas (ou símbolos) para objetos percebidos pelo robô dentro do ambiente explorado. Por exemplo, os autores definem um conjunto de características para que se possa reconhecer uma cama, uma banheira, etc. Com isto, cada ambiente também pode receber uma etiqueta especial de acordo com a presença des-tes símbolos mais básicos. A forma como o robô faz a ligação entre a informação sensorial e a informação semântica é chamada de anchoring [Coradeschi e Saffiotti 2003].

Bandera et al. (2001) e Poncela et al. (2002) seguiram o mesmo procedimento adotado por Fabrizi e Saffiotti para obter uma representação híbrida. Eles partem de uma represen-tação em grade e obtêm uma outra topológica. O trabalho apresenta um esquema de nave-gação para fazer um robô percorrer eficientemente o ambiente desconhecido. O algoritmo de exploração utiliza informações previamente adquiridas para otimizar a construção do mapa. O grande diferencial destes trabalhos é que as relações geométricas entre as áreas não-exploradas são mantidas na representação topológica. Dessa forma, o grafo contém as áreas desconhecidas do ambiente e o procedimento de exploração do ambiente é man-tido enquanto houver conectividade entre vértices que representam áreas não-exploradas e vértices que estão associados a regiões já representadas.

Para construir este mapa híbrido, eles criaram uma representação em grade. Porém, visando a redução da memória ocupada para o armazenamento, eles trabalharam com uma estrutura de resolução variável. Assim, tendo esta grade, os autores agregaram células vi-zinhas que possuiam o mesmo valor e as associaram aos nós do mapa topológico. Este mapa era então formado por uma estrutura em árvores, onde cada nível correspondia a uma determinada resolução da grade. Embora tenham adotado procedimentos para ma-pear diferentes do apresentado nesta tese, os trabalhos de Bandera et al. (2001) e Poncela et al. (2002) geram a representação híbrida de maneira incremental.

(35)

20 CAPÍTULO 2. MAPEAMENTO DE AMBIENTES POR ROBÔS AUTÔNOMOS

obter as informações métricas do ambiente utilizando o grafo gerado como rota para ex-plorar o ambiente. Este mapa topológico era construído através de medidas sensoriais e estratégias de controle. Por exemplo, quando o robô navegava por um corredor, ele utili-zava as leituras do sensores de alcance para que pudesse controlar e manter uma distância específica das paredes. Esta metodologia de Kuipers e Byun (1991) apresentou uma série de vantagens como eliminação de erro acumulativo de localização (o mapa topológico não era construído com informações métricas, mas sim utilizando informações sensoriais e de controle), o movimento do robô era guiado por controle realimentado, a navegação não dependia da geometria do ambiente e da identificação correta de lugares anterior-mente explorados. Embora o artigo de Kuipers e Byun (1991) apresentasse resultados bem estabelecidos e tivesse sido referência para vários outros trabalhos que mapeiam um ambiente de forma híbrida, partindo da representação topológica para a métrica [Kuipers et al. 2004] ou da métrica para a topológica [Fabrizi e Saffiotti 2000], esta tese adota o mapeamento híbrido com a construção simultânea dos dois tipos de representação.

No trabalho de Kuipers et al. (2004) é apresentada uma melhoria do mapeamento híbrido de Kuipers e Byun (1991). Nele, a parte topológica representa o ambiente global e a parte métrica representa ambientes locais (nós do grafo). Esta representação métrica é por grade de ocupação construída com o auxílio do filtro de partículas [Thrun et al. 2000] para localização do robô.

Muitas vezes, mapas híbridos podem ser formados por metodologias distintas de um mesmo tipo de representação. Por exemplo, o artigo de Lerasle et al. (2003) apresentou uma representação de ambientes internos utilizando uma descrição estocástica [Smith et al. 1990]. Os objetos utilizados como referência foram marcas retangulares naturais do ambiente, como janelas, quadros e portas. O grafo foi do tipo generalizado de Voronöi, o qual também poderia ser enriquecido com a observação destes objetos.

Boada et al. (2004) também apresentaram uma proposta de mapeamento híbrido, de-nominada por eles como topo-geométrico, cujo objetivo era auxiliar a resolução dos pro-blemas de localização, planejamento de caminho e navegação. A idéia principal era re-presentar o ambiente como um grafo formado pela união de vários diagramas locais de Voronöi (ou mapas locais), construídos a partir de informações de sensores lasers. Em-bora estes mapas locais fossem grafos que representassem a conectividade do espaço livre do robô, tanto os nós quanto os arcos consistiam em informações métricas. Estas infor-mações eram as posições(x,y)e a distância entre tais pontos e os obstáculos locais. Isto trouxe a vantagem de eliminar ambigüidades e melhorou o processo de localização. Além disso, cada diagrama local foi associado a um modelo cognitivo que representasse uma estrutura particular de um ambiente interno típico de escritórios, como corredores, jun-ções, etc. Dessa forma, com este tipo de representação híbrida, o artigo apresentou um algoritmo para localização do robô utilizando modelos markovianos.

(36)

2.2. METODOLOGIAS DE SLAM 21

estas informações métricas, a pose do robô era atualizada por um filtro de Kalman exten-dido. A similaridade entre este trabalho e o mapeamento aqui apresentado é a construção incremental da representação.

Arleo et al. (1999) propuseram uma metodologia de mapeamento híbrido de um am-biente interno utilizando o particionamento deste amam-biente em subáreas de diferentes ta-manhos. Estas partições eram sensorialmente homogêneas e montadas por segmentos de retas. Para criá-las, o robô utilizava uma grade de ocupação local. Como característica, as informações sensoriais que auxiliavam na construção da grade local tinham as suas incertezas tratadas por uma rede neural feed-forward. A resolução de uma determinada área era ampliada somente se houvesse a necessidade de melhorar o desempenho do sis-tema de navegação do robô móvel. Como o espaço total era representado pela união estas partições, tornou-se simples obter a representação topológica.

Este trabalho de Arleo et al. (1999) representou localmente o ambiente através de um conjunto de segmentos de retas. Estas retas eram calculadas por mínimos quadrados. Em termos de representação geométrica local, o mapeamento de Arleo et al. (1999) tende a ser mais generalista por ter a capacidade de representar ambientes internos com formatos diferentes de figuras geométricas mais comuns. Contudo, eles adotaram a restrição das paredes e faces dos obstáculos serem paralelas aos eixos x e y do frame global. Nesta situ-ação, a representação métrica aqui apresentada tornou-se similar, em termos qualitativos, à proposta de Arleo et al. (1999), embora os meios de obtê-la sejam distintos. Em relação à representação topológica propriamente dita, foi observado que a abordagem de Arleo et al. (1999) tendeu a descrever as passagens do ambiente como partições homogêneas, logo também eram representadas como vértices do grafo.

Como procedimento de exploração, o trabalho de Arleo et al. (1999) utilizou um sis-tema de aprendizado para minimizar o tempo de construção do mapa. A política desta exploração ativa consistia em estimar um índice que indicava o quão frequentemente uma determinada partição gerada pelo robô foi visitada. Assim, a exploração determinava para qual região do ambiente o robô deveria se mover e investigar para atualizar o mapa. Esta metodologia permitiu que o robô representasse mais rapidamente o ambiente.

2.2

Metodologias de SLAM

A definição do problema de SLAM é bastante similar à definição do problema abor-dado neste trabalho: considerando que o robô se encontra em uma posição desconhecida, de um ambiente desconhecido, ele deve construir uma representação consistente deste ambiente enquanto, simultaneamente, determina a sua localização utilizando este mesmo mapa. Na prática, resolver um problema de SLAM consiste em fazer com que o robô trate de questões reais de mapeamento. Ou seja, uma série de considerações que são adotadas para construir um mapa não são adotadas no contexto do SLAM, como o conhecimento exato da pose do robô ou ausência de incertezas nos modelos do robô e dos sensores, por exemplo.

(37)

22 CAPÍTULO 2. MAPEAMENTO DE AMBIENTES POR ROBÔS AUTÔNOMOS

estimativas de localização de diferentes marcas no ambiente e que esta correlação crescia com sucessivas observações. Com o trabalho de Smith et al. (1990), foi mostrado que estando o robô em um ambiente desconhecido coletando observações de marcas de refe-rência para mapeamento, as estimativas destas marcas são correlacionadas devido ao erro de localização do robô. Com isto, tornou-se possível estabelecer uma solução comum para os problemas de localização do robô e do mapeamento do ambiente, pois Smith et al. (1990) definiram um vetor de estado que continha a pose do robô juntamente com a localização de cada marca observada. Para cada nova observação realizada, havia uma atualização desta estrutura. Este novo mapa foi chamado de mapa estocástico.

Nos últimos anos, o tratamento conjunto dos problemas de mapeamento e localização de robôs nos mais diversos tipos de ambientes se tornou uma atrativa área de pesquisa. Há duas correntes principais para a resolução computacional do problema de SLAM: uma usa a teoria da filtragem extendida de Kalman [Dissanayake et al. 2001, Guivant e Nebot 2001, Se et al. 2002, Tardós et al. 2002, Ip e Rad 2004, Estrada et al. 2005], enquanto a outra utiliza filtros de partículas [Thrun 2001, Nieto et al. 2003, Yuen e MacDonald 2003, Kouzoubov e Austin 2004].

Para estes dois tipos de solução, é necessário que se tenham os modelos do robô e de observação das marcas de referência. Assim é possível utilizar a teoria bayesiana para a atualização do mapa. Sendo este mapa um vetor de estado adicionado de ruído gaussiano, a solução computacional mais utilizada é através do filtro extendido de Kalman. Porém o grande problema consiste no esforço computacional por causa do crescimento do vetor de estado do sistema (ou do mapa estocástico). Para cada nova marca encontrada, um novo elemento é adicionado ao mapa. Contudo, como demonstrado por Dissanayake et al. (2001), a convergência da solução é garantida.

Uma proposta para a redução deste esforço foi apresentada por Williams et al. (2002) através da utilização de frames locais para referenciar um certo conjunto de marcas. O vetor de estado do sistema é então incrementado pela posição global desses frames, o que permite mapear extensas áreas ou até mesmo ambientes com vários objetos que podem ser coletadas pelos sensores do robô.

Embora haja uma maior tendência para a utilização da teoria da filtragem, outras me-todologias de resolução podem ser adotadas. Uma outra alternativa é descrever o modelo de movimento do robô como um conjunto de amostras utilizando funções de distribuição de probabilidade diferentes da gaussiana. Isto conduz a utilização do filtro de partícula para resolução de SLAM, ou como é comumente chamada na literatura, do FastSLAM [Thrun 2001].

Uma compilação da teoria envolvendo estes dois principais tipos de solução compu-tacional para o SLAM probabilístico foi realizada por Durrant-Whyte e Bailey (2006).

Referências

Documentos relacionados

O score de Framingham que estima o risco absoluto de um indivíduo desenvolver em dez anos DAC primária, clinicamente manifesta, utiliza variáveis clínicas e laboratoriais

Detectadas as baixas condições socioeconômicas e sanitárias do Município de Cuité, bem como a carência de informação por parte da população de como prevenir

Promovido pelo Sindifisco Nacio- nal em parceria com o Mosap (Mo- vimento Nacional de Aposentados e Pensionistas), o Encontro ocorreu no dia 20 de março, data em que também

• The definition of the concept of the project’s area of indirect influence should consider the area affected by changes in economic, social and environmental dynamics induced

O objetivo do curso foi oportunizar aos participantes, um contato direto com as plantas nativas do Cerrado para identificação de espécies com potencial

Os maiores coeficientes da razão área/perímetro são das edificações Kanimbambo (12,75) e Barão do Rio Branco (10,22) ou seja possuem uma maior área por unidade de

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Apesar da longa distância dos grandes centros urbanos do país, Bonito destaca- se, regionalmente, como uma área promissora dentro do Estado de Mato Grosso do Sul. Bonito,