• Sonuç bulunamadı

2.9 Frostig Görsel Algı Eğitim Programı

2.9.3 Frostig Görsel Algılama Testi

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 ambiente 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.

Durante a década de 1980, alguns trabalhos apresentaram as bases para que se pu- desse alcançar uma definição probabilística para o problema do mapeamento [Durrant- Whyte 1988]. O maior objetivo era demonstrar que havia uma alta correlação entre as

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).

Porém, há outras soluções aplicadas ao problema do mapeamento e localização simul- tâneos que não necessariamente seguem as duas principais metodologias de filtragem. Duckett (2003) propôs a utilização de algoritmo genético para a resolução do SLAM, tratando-o como um problema de otimização global. A desvantagem, segundo o próprio autor, é ainda o esforço computacional gasto para obter uma representação acurada. Frese et al. (2005) apresentaram uma solução utilizando a metodologia de minimização de erro quadrático, modificada de forma a permitir atuação em tempo real. Já Schoroeter et al.

2.2. METODOLOGIAS DE SLAM 23

(2004), dentro de uma filosofia mais simplificada, utilizaram a correção em tempo real dos erros de odometria para a construção do mapa. Pedrosa et al. (2006) apresentaram um SLAM geométrico, onde no qual o mapa é do tipo topológico, porém enriquecido com informações métricas dos ambientes definidos como locais (salas, quartos e corredo- res). Tais informações métricas eram obtidas por informações sensoriais e o erro na pose do robô era mantido dentro de limites devido a consideração do conhecimento abstrato inicial da forma geométrica padrão do ambiente local onde o robô se encontrava.

Embora a maioria dos trabalhos envolvendo SLAM trate da utilização de represen- tação métrica para descrever o ambiente, sobretudo com o mapa de características, os mapas topológicos também são apropriados para que se possa obter soluções adequadas. Por exemplo, Choset e Nagatani (2001) apresentaram um SLAM puramente topológico, onde o mapa era criado como um grafo generalizado de Voronöi e a localização do robô em cada nó do grafo baseava-se em características estáveis dos vértices de Voronöi (dis- tância entre os obstáculos mais próximos, número de arestas que partiam de um mesmo vértice e diferença angular entre estas arestas, por exemplo).

Estrada et al. (2005) também utilizaram uma representação topológica, no entanto, eles separaram o problema em níveis hierárquicos. No nível global, ou representação glo- bal, tem-se um grafo. Cada nó deste grafo consiste em um mapa local estocástico [Smith et al. 1990] de tamanho limitado. Estes mapas locais formam o nível hierárquico inferior. A resolução do SLAM propriamente dita ocorre neste nível mais baixo através de algo- ritmos baseados no EKF (Extended Kalman Filter). Para a representação global tem-se a resolução do problema do fechamento do laço. Um aspecto importante neste trabalho de Estrada et al. (2005) é que os mapas locais são independentes entre si. Esta propriedade garante que as incertezas de um determinado mapa local não sejam propagadas para outro mapa local. Contudo, as referências utilizadas para ligar tais representações locais são armazenadas globalmente em um outro mapa estocástico, onde os algoritmos de atualiza- ção são aplicados. Tal filosofia de representação hierárquica é bastante similar à adotada nesta tese. No entanto, a representação local apresentada aqui é condensada de forma a englobar uma sala fechada, por exemplo. A representação global por grafo tende a des- crever a topologia intuitiva de um ambiente interno [Fabrizi e Saffiotti 2000]. Isto foge da linha usada por Estrada et al. (2005). Como o mapa local deles é do tipo estocástico, então eles armazenam a descrição de elementos comuns em ambientes semi-estruturados como as paredes e seus cantos. Assim, não necessariamente um mapa local estocástico estará associado a uma única sala, por exemplo. Conseqüentemente, o nível global não descreverá as relações topológicas propostas por Fabrizi e Saffiotti (2000).

Esta tese não implementa diretamente uma proposta de resolução de SLAM. O seu foco está voltado para a tarefa de mapeamento e para as ferramentas envolvidas para ob- ter a representação desejada do espaço de trabalho do robô. Porém, durante o processo de exploração e mapeamento do ambiente interno, o robô móvel pode perfeitamente uti- lizar as informações recém-adquiridas do espaço local para a atualizar a sua pose. Mas diferentemente das abordagens probabilísticas comumente aplicadas, foi utilizada uma metodologia baseada em relações geométricas. Ou seja, o robô, valendo-se do prévio conhecimento abstrato do formato geométrico da sala na qual está, e de informações de distância obtidas de seus sensores, determina a sua posição relativa ao ambiente local.

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

Contudo, nada impede que os métodos baseados na filtragem extendida de Kalman sejam aplicados. Assim, garante-se que o desenvolvimento da abordagem apresentada esteja completamente inserido no contexto de SLAM. Tal discussão será retomada no capítulo 6. Nos próximos capítulos serão apresentados os métodos empregados por este trabalho de doutorado para obter uma representação híbrida do ambiente.

Capítulo 3

Metodologia do Mapeamento Híbrido

Uma estrutura de representação híbrida de um ambiente de trabalho de um robô autô- nomo consiste em ter mapas de diversos tipos para representar o local em que ele se en- contra. Normalmente, há a utilização de um mapa topológico, para descrever as relações de conectividade existentes no espaço de trabalho, e um mapa métrico, que descreve a geometria local de forma mais detalhada. O principal objetivo da utilização de um mapa híbrido é obter uma maior vantagem para que o robô realize suas tarefas. Ou seja, ele tanto pode executar tarefas de alto-nível, como planejamento de rotas, quanto pode utili- zar as informações métricas para tarefas que exigem uma maior precisão espacial. Assim, o robô tende a obter uma maior robustez em sua autonomia.

Este capítulo apresenta a metodologia empregada para a construção e gerenciamento da representação híbrida a ser utilizada por um robô móvel autônomo em um ambiente interno estruturado. São descritos aqui o modelo utilizado para a representação métrica local e para o mapa topológico proposto. Além disso, procura-se apresentar os algoritmos utilizados para efetuar todos os procedimentos de construção da representação proposta.

3.1

Definição do Mapa Híbrido

Segundo Buschka e Saffiotti (2004), intuitivamente um mapa híbrido é uma represen- tação do espaço que combina dois ou mais mapas distintos de um mesmo ambiente. Por exemplo, um mapa híbrido pode conter dois tipos diferentes de representações métricas, sendo uma na forma de mapa de características e outra como grade de ocupação; ou então possuir uma representação topológica do ambiente, na forma de um grafo, juntamente com algum tipo de mapa métrico.

Conceitualmente, um mapa híbrido é definido como uma estrutura H =< M,C >,

onde M= {M1, M2, . . ., Mn} é um conjunto de mapas e C = {c1, c2, . . . , cp} é um conjunto de elos. Cada elo corresponde a um par < mi, mj>, onde mi é um objeto do mapa Mi e, de forma similar, mjé um objeto de Mj, com i= j. Este elo trata da correspondência existente entre objetos distintos de ambientes distintos.

Há vários exemplos de representação híbrida na literatura. O mapa utilizado por Bus- chka e Saffiotti (2004) tem como conjunto de mapas a lista M = {T, M1, M2, . . ., Mn}, onde T é um mapa topológico, em que os nós representam espaços abertos (salas e cor- redores) e os elos são as passagens entre estes espaços. O conjunto M armazena mapas

26 CAPÍTULO 3. METODOLOGIA DO MAPEAMENTO HÍBRIDO

métricos na forma de grade de ocupação. Cada elemento Mi, com i= 1, 2, 3, . . ., n, co- bre um espaço aberto. Neste exemplo de Buschka e Saffiotti (2004), C é um conjunto de elos, os quais conectam cada vértice do mapa topológico T com um elemento Mido conjunto de mapas geométricos. Além disso, a estrutura de Buschka e Saffiotti (2004) faz a conexão de pares distintos de vértices do grafo com pares distintos de posições(x, y)

em diferentes mapas métricos Mi. Tal conexão corresponde a uma passagem entre dois espaços abertos.

Um outro exemplo de mapa híbrido foi utilizado por Tomatis et al. (2003). Nele, a estrutura de representação constava de um mapa topológico, onde os vértices eram posi- ções específicas no espaço de trabalho. Uma vez que o robô estivesse em alguma destas posições, ele tinha acesso visual a um conjunto de marcas. Com isso, ele estabelecia uma relação de identificação entre as marcas visualmente identificadas e as posições. A partir destes lugares específicos, o robô podia partir para outros vértices do grafo e, conseqüen- temente, aos mapas métricos locais, formados por linhas retas.

Quando um robô atua em um determinado ambiente de trabalho, há uma série de tare- fas que exigem o conhecimento exato (ou dentro de limites estabelecidos de precisão) de sua pose. Para isto, como discutido no capítulo 1, é necessário que ele tenha representação do espaço local para que a sua localização seja efetuada corretamente. Porém, em termos topológicos, quando o robô precisa determinar uma seqüência de vértices para sair de do vértice em que ele se encontra para alcançar um algum outro vértice, o conhecimento exato de sua pose torna-se desnecessário. Dessa forma, manter, simultaneamente, ambos os mapas garante que as vantagens particulares de cada tipo de representação se comple- mentem. Isto permite que o robô possa obter um desempenho apropriado na execução de suas tarefas.

Devido a possibilidade de obter vantagens de ambos os mapas, nesta tese é apre- sentada uma metodologia de mapeamento híbrido de ambientes internos, realizada por um robô móvel autônomo dotado de sensores de distância. A construção deste mapa é baseada em um processo incremental, diferentemente de trabalhos que o fazem off-line [Fabrizi e Saffiotti 2000].

O tipo de ambiente a ser explorado e mapeado pelo robô é interno e semi-estruturado. Ou seja, o robô atua essencialmente no interior de casas ou escritórios, com obstáculos simples que podem ser identificados com os seus sensores. Assim, seguindo as definições formais adotadas por Fabrizi e Saffiotti (2000) e Buschka e Saffiotti (2004), as salas e corredores deste tipo de ambiente são chamadas de “ambientes locais” ou “espaços lo- cais”. Cada ambiente local pode possuir portas ou passagens que levam a outras salas. Intuitivamente, esta relação de conectividade pode ser representada por uma estrutura de dados adequada.

O mapa híbrido apresentado consiste em manter dois conjuntos distintos: o primeiro armazena todas as informações métricas dos ambientes locais. O segundo conjunto man- tém todas as informações de conectividade entre estes ambientes locais. De uma maneira formal, a representação híbrida proposta é a estrutura:

M=< A, P > (3.1)