• Nenhum resultado encontrado

Percepção do espaço e do movimento por parte de robots móveis inteligentes

N/A
N/A
Protected

Academic year: 2021

Share "Percepção do espaço e do movimento por parte de robots móveis inteligentes"

Copied!
89
0
0

Texto

(1)

Percepção do espaço e do

movimento por parte de robots

móveis inteligentes

Por

André da Cruz Monteiro Peres Teixeira da Silva

Orientador: Doutor Paulo Alexandre Cardoso Salgado

Dissertação submetida à

UNIVERSIDADE DE TRÁS-OS-MONTES E ALTO DOURO para obtenção do grau de

MESTRE

em Engenharia Electrotécnica e de Computadores, de acordo com o disposto no DR – I série–A, Decreto-Lei n. 74/2006 de 24 de Março e no

Regulamento de Estudos Pós-Graduados da UTAD DR, 2. série – Regulamento n. 470/2011

(2)
(3)

Orientação Científica :

Paulo Alexandre Cardoso Salgado

Professor Associado do Departamento de Engenharias da Escola de Ciência e Tecnologia da Universidade de Trás-os-Montes e Alto Douro

(4)
(5)
(6)
(7)

Agradecimentos

Quero agradecer às pessoas que tornaram possível a elaboração desta dissertação, prestando-me apoio e força, em particular:

Ao Professor Doutor Paulo Salgado, orientador deste trabalho, pela constante ajuda e motivação, pelas imprescindíveis orientações e ideias.

Aos meus pais e à minha namorada pelo apoio incondicional e encorajamento. A todos, o meu sincero obrigado!

(8)
(9)

Percepção do espaço e do movimento por parte de robots móveis

inteligentes

André da Cruz Monteiro Peres Teixeira da Silva

Submetido na Universidade de Trás-os-Montes e Alto Douro para o preenchimento dos requisitos parciais para obtenção do grau de

Mestre em Engenharia Electrotécnica e de Computadores

Resumo — Na utilização de robots móveis, grande parte do sucesso está direc-tamente relacionada com a sua capacidade de leitura do ambiente envolvente. Só com informação completa e fiável do seu espaço de trabalho, conjugado com o seu estado interno, será possível ao robot movimentar-se de modo planeado e com segurança, executando com naturalidade as suas tarefas.

Se a percepção do estado interno do robot, realizado por sensores que monitori-zam as variáveis internas, tais como sejam ângulos de rotação de eixos, posição e deslocamento de diferentes partes do robot, é tipicamente mais fácil de alcan-çar, já a leitura do seu meio ambiente apresenta uma maior exigência e depende de um maior número de sensores, geralmente mais sofisticados. Também haverá um melhor desempenho do sistema sensorial se houver complementaridade en-tre os sensores e redundância das leituras directas e indirectas passíveis de serem realizadas. A mudança do meio envolvente do robot, devido a um novo posicio-namento ou a uma mera alteração de objectos, conjugada com incerteza e leituras incompletas do ambiente, torna esta tarefa complexa e exigente. Geralmente a simples aquisição dos sinais dos sensores, por possuírem informação incompleta e de difícil interpretação, não permite ao robot ter suficiente visão do espaço en-volvente.

Tendo em conta as limitações apontadas, existe a plena consciência que o robot autónomo móvel só terá real percepção do seu meio ambiente se for capaz de processar, integrar e fundir a informação de modo continuado e cumulativo, ao criar uma mapa cognitivo do ambiente em que desenvolve as suas actividades. Assim, ao longo da presente dissertação são propostos vários métodos e aborda-gens às problemáticas da recolha e processamento de dados de um ambiente de trabalho desconhecido. Surge assim, como objectivo principal, a necessidade de

(10)

desenvolver mecanismos capazes de criar mapas cognitivos do ambiente de tra-balho a partir de dados recolhidos pelos sistemas sensoriais dos robots móveis, podendo estes serem provenientes do próprio ou de um exame de robôs em que esteja incluído e partilhe dados e informação. Neste trabalho serão apresentados alguns novos métodos que ajudarão a construir o desejado mapa "mental"do am-biente de trabalho, guardando convenientemente essa informação num género de memória cognitiva central onde estarão incluídas a informação relativa à in-certeza e relevância da informação até então recolhida e processada.

Espera-se que, com este objectivo alcançado, haja a possibilidade de alargar a lei-tura e melhorar os processos de interacção do robot com o seu espaço de trabalho.

Palavras Chave: robots móveis, percepção do ambiente de trabalho, navegação autónoma, mapa cognitivo.

(11)
(12)

Space and movement perception by intelligent mobile robots

André da Cruz Monteiro Peres Teixeira da Silva

Submitted to the University of Trás-os-Montes and Alto Douro in partial fulfillment of the requirements for the degree of Master of Science in Electrical and Computers Engineering

Abstract —When using mobile robots, a great deal of the success is directly re-lated to their ability to read the surrounding environment. Only with complete and reliable information about the working environment, together with its inter-nal state, will be possible for the robot to move in a safe and planned manner, executing its tasks naturally.

If the perception of the robot’s internal state, accomplished by sensors that mo-nitor the internal variables, such as axis rotation angles, position and movement by different parts of the robot, its usually easier to achieve, since the reading of its working environment is more demanding and relies on a greater number of sensors, usually more sophisticated. There will also be a better performance of the sensorial system if the sensors and the redundancy of the direct and indirect readings that could be made complement each other. Changes in the working en-vironment, be it through new positioning or an alteration of objects, together with uncertainty and incomplete readings of the environment, make this task complex and demanding. Usually the simple acquisition of the sensorial signals, due to being incomplete information of hard interpretation, doesn’t allow the robot to have sufficient vision of the surrounding space.

Taking into account the limitations presented, it is known that the mobile robot will only have a real perception of its surrounding environment if it is capable of processing, integrating and fusing the information in a continuous and cumula-tive fashion, by creating a cognicumula-tive map of its working environment.

Thus, throughout the present dissertation, various methods and approaches are proposed to deal with problems regarding gathering and processing the data from a given unknown working environment. As a main objective, there is a need to develop mechanisms capable of creating cognitive maps of the working environment from the data gathered with the robot’s sensorial systems. This data may come from a single robot or from a robot swarm where they share data and

(13)

information. In this work ,several new methods will be presented that will help creating the desired "mental"map of the working environment, saving conveni-ently this information in a kind of cognitive central memory where information regarding the uncertainty and relevance of the information already gathered and processed is present.

It is hoped that, achieving this goal, there are possibilities to widen the reading and improve the interaction processes of the robot with its surrounding work environment.

Key Words: mobile robots, surrounding environment perception, autonomous navigation, cognitive map.

(14)
(15)

Conteúdo

1 Introdução 1

1.1 Caracterização e percepção do ambiente de trabalho dos robots . . 2

1.2 Caracterização do problema a resolver na dissertação e abordagem geral do mesmo . . . 3

1.3 Materiais e objectivos . . . 4

1.4 Descrição dos vários capítulos da dissertação . . . 5

2 Percepção sensorial e cognitiva do ambiente de trabalho 7 3 Métodos e algoritmos de percepção do ambiente envolvente 19 3.1 Análise de movimento do robot com duas rodas motrizes . . . 21

3.2 Identificação de obstáculos - Método . . . 25

3.3 Representação granular . . . 27

3.4 Inserção e minimização do erro dos sensores . . . 28

3.5 Distribuição e qualificação dos gaussianos circulares . . . 32

4 Testes e resultados 39 4.1 Metodologia . . . 39

4.2 Ensaios . . . 42

5 Conclusões e trabalho futuro 61

(16)
(17)

Lista de Figuras

2.1 Ilustração da medição do ângulo entre dois robots vizinhos . . . 11 2.2 O objectivo do método detecção de mudanças proposto é encontrar

e segmentar mudanças no ambiente de trabalho do robot móvel, neste caso o aparecimento da pessoa em (b) . . . 14 2.3 Exemplo de um mapa gerado a partir de leituras correctas apenas . 17 2.4 Resultado obtido com a técnica eML . . . 18 3.1 Movimento no sentido anti-horário . . . 23 3.2 Representação da identificação de um obstáculo por um robot. A

direcção do sonar é identificada pelo segmento vermelho. O ponto onde foi encontrado o obstáculo é dado pelo ponto O(x∗, y∗) . . . . 26 3.3 Representação da identificação de um obstáculo por um robot,

cri-ando um gaussiano G centrado no ponto de colisão com o sonar . . 29 3.4 Representação de um gaussiano com raio r, centro c e intervalo de

relevância . . . 31 3.5 Fluxograma de criação de gaussianos . . . 32 3.6 Fluxograma do algoritmo de eliminação de centros de Gaussianos

Circulares indesejados . . . 38 4.1 Representação do robot utilizado nos testes . . . 41 4.2 Mapa de testes. Os objectos delimitados por pontos negros

repre-sentam os obstáculos. As circunferências azuis reprerepre-sentam os faróis 41 xvii

(18)

xviii Lista de Figuras

4.3 Mapa resultante dos testes da primeira iteração do sistema . . . 43 4.4 Mapa resultante dos testes realizados com o novo sistema de

sen-sores (sonares + laser) . . . 44 4.5 Mapa resultante da iteração com os centros dos gaussianos. Os

centros são representados pelos pontos vermelhos, os pontos pre-tos são inseridos sempre que é identificado um obstáculo . . . 46 4.6 Mapa de superfícies criado através dos dados recolhidos pelo robot 47 4.7 Mapa com a distribuição dos centros dos gaussianos para o teste

com os novos parâmetros . . . 49 4.8 Mapa de superfícies para o teste com os novos parâmetros . . . 50 4.9 Mapa com a distribuição dos centros dos gaussianos com um

inter-valo de erro de duas unidades nas abcissas e ordenadas da posição do robot . . . 51 4.10 Mapa da distribuição de centros dos gaussianos circulares com a

implementação do filtro de pontos indesejados . . . 52 4.11 Mapa de superfícies após a implementação do algoritmo de filtragem 53 4.12 Mapa com a distribuição e raio de actuação de cada gaussiano

cir-cular, com filtragem de pontos . . . 54 4.13 Mapa com a distribuição e raio de actuação de cada gaussiano

cir-cular, sem filtragem de pontos, com os mesmos parâmetros da fi-gura 4.12 . . . 55 4.14 Mapa de distribuição dos centros dos gaussianos circulares com

base em dados captados por dois robots em simultâneo . . . 57 4.15 Mapa de superfície com base em dados captados por dois robots

em simultâneo . . . 58 4.16 Mapa com a distribuição e raio de actuação de cada gaussiano

(19)

Lista de Tabelas

3.1 Lista de parâmetros usados na análise do movimento. . . 22 4.1 Resultados médios do processamento de dados resultante dos

tes-tes realizados . . . 60

(20)
(21)

Lista de acrónimos e abreviaturas

Sigla Expansão

MDS-MAP Multidimensional Scaling

GMMs Gaussian Mixture Models

EMD Earth Mover’s Distance

ICP Iterative Closest Point

sNDT sonar Normal Distributions Transform LF/SoG Likelihood Field/Sum of Gaussians

eML enhanced Maximum Likelihood

mSP maximal Sound Pressure

(22)
(23)

Capítulo 1

Introdução

Ao longo dos anos foram realizados progressos significativos no que diz respeito a sensores, actuadores, controlo, sistemas mecânicos, entre outros, que permitem que os robots actuem em diversas áreas com cada vez mais eficiência.

No entanto, para se obter um robot móvel robusto e autónomo, é necessário que este tenha a percepção do ambiente que o rodeia. Esta característica é funda-mental para que o robot possa interagir no meio, permitindo que se mova ou manipule objectos de forma autónoma. A percepção é importante para criar uma representação ou modelo do ambiente de trabalho, essencial para o robot. Sem uma percepção apropriada, o robot não consegue interagir eficientemente com o exterior, mesmo que possua poderosos sistemas de locomoção ou seja construído com a melhor tecnologia no mercado.

Para que o robot consiga tomar decisões , mover-se e interagir, é necessário obter um modelo do espaço. Para tal é necessário que o sistema sensorial do robot seja capaz de criar representações geométricas do ambiente envolvente, mesmo quando se trata de um ambiente com um nível de estruturação reduzido.

Os robots modernos navegam de forma autónoma tanto em ambientes interiores (como escritório e fábricas) como em ambientes exteriores. Em ambos os casos existe a dificuldade de percepcionar o ambiente e decidir sobre como agir em determinada situação, tendo em conta as barreiras mecânicas e electrónicas da construção de plataformas móveis. Estas são questões cruciais que limitam a uti-lização dos robots móveis e que condicionam o seu desempenho. Deste modo, um dos principais problemas da Robótica prende-se com a correcta leitura do

(24)

2 Capítulo 1. Introdução

paço envolvente, que se pode depreender do processamento e análise dos vários sinais adquiridos pelos sensores do robot.

No âmbito do movimento e percepção do espaço em robots, existem vários tipos de aproximação aos problemas. A percepção do espaço é realizada através de um sistema sensorial, tipicamente composto por sonares, lasers, sensores de contacto, infravermelhos, entre outros.

Na presente dissertação optou-se por uma abordagem associada aos métodos probabilísticos que, recorrendo a um conjunto de variáveis probabilísticas (tais como o desvio padrão e a covariância) visam ajudar a criar um mapa cognitivo mais robusto e fiável do ambiente.

1.1

Caracterização e percepção do ambiente de

traba-lho dos robots

Neste trabalho serão usados um ou vários robots, colocados num dado ambiente contendo obstáculos que se pretendem reconhecer. O processo de recolha de da-dos consiste em posicionar um número de robots num espaço desconhecido e fazê-lo mover-se em modo de exploração do espaço. Cada robot é dotado de um conjunto de sensores (sonares ultrassónicos e lasers) para a recolha de dados e sensores de contacto, cujo objectivo principal é auxiliar a navegação no ambiente. Como já foi referido, os robots não têm qualquer informação a priori sobre o es-paço onde são inseridos; os únicos dados disponíveis à partida são o seu ponto de partida e o farol ou sequência de faróis destino. De forma a conseguir uma maior cobertura do espaço de pesquisa, um robot ao chegar ao seu farol adquire como tarefa seguinte alcançar um novo farol na sequência previamente atribuída ou o regresso à origem. Em todo o percurso realizado o robot regista, a uma taxa de amostragem fixa pré-definida, os principais valores dos sensores. Todos os dados recolhidos são pré-processados pelo robot e sujeitos à análise pelos vários métodos propostos neste trabalho. Em paralelo, estes mesmos dados, mas prin-cipalmente os resultados do processamento local, são enviados para um servidor para continuarem a ser processados, permitindo actualizar o modelo gráfico, mas principalmente, o mapa cognitivo. Toda esta informação é, em tempo real de lei-tura, realizada por todos os robôs que partilham o mesmo ambiente de trabalho.

(25)

1.2. Caracterização do problema a resolver na dissertação e abordagem geral do

mesmo 3

O modelo gráfico é criado tendo em conta o grau de certeza e confiança que existe em cada ponto alvo do sonar ou laser (obstáculo). Em torno de cada ponto iden-tificado por cada robot é associado à sua posição um gaussiano circular, caracte-rizado por um grau de confiança ou relevância. Este valor tem em conta a ampli-tude e qualidade dos sinais dos sensores, o que para medidas de maior distância ou de maior ângulo de incidência do laser/sonar dará valores mais baixos. A maior valia dos métodos propostos será de levar em conta a repetibilidade das medidas, por um mesmo sensor em condições de posição diferentes ou da in-formação dada por outros robots para a mesma posição no mapa. Em resumo, através dos dados adquiridos pelos robots, são criados vários mapas que permi-tem analisar dados específicos, permitindo desta forma analisar quais os aspectos a melhorar no processamento dos dados e, identificando, ao mesmo tempo, o im-pacto que estas ineficiências têm no mapa cognitivo.

1.2

Caracterização do problema a resolver na

disser-tação e abordagem geral do mesmo

Ao longo da dissertação serão explicadas as várias fases pelas quais o sistema foi estruturado, apresentando os testes realizados e os resultados obtidos. Estes ser-viram para identificar e ajustar os métodos que poderiam ser trabalhados para encontrar soluções para o problema proposto. Acresce ainda a descrição da con-figuração dos robots, a afinação de parâmetros, critérios de análise e recolha de dados.

A primeira fase consistiu em usar um robot e fazê-lo navegar pelo ambiente a ex-plorar, recolhendo dados através de um conjunto de sensores (três sonares com uma amplitude angular de 60◦, com um desfazamento de −60◦, 0◦ e +60◦, res-pectivamente, em relação à direcção de movimento do robot). Na segunda fase, após se obter um sistema funcional para um robot, os métodos utilizados nesse sistema foram ajustados para se usarem mais robots, com um mesmo sistema de recolha de dados.

Numa terceira fase, ao sistema de recolha de dados foi inserido um conjunto de lasers (emparelhados com os sonares) de modo a melhorar significativamente o grau de confiança dos dados recolhidos e, consequentemente, melhorando o

(26)

4 Capítulo 1. Introdução

resultado final. O conjunto de métodos propostos tiveram como principal enqua-dramento esta nova configuração.

Os primeiros ensaios foram conduzidos assumindo condições óptimas, isto é, que não existe qualquer imprecisão do hardware do sistema de recolha de dados e sistema sensorial. Nos ensaios seguintes introduziram-se graus de incerteza crescentes em todos os instrumentos pertinentes, simulando assim as condições reais. Tais condições traduziram-se num nível decrescente da relação sinal/ruído de todos os sinais, particularmente as dos sensores externos.

Em sentido contrário, de modo a acomodar os factores de incerteza dos sinais, desenvolveram e implementaram-se novas metodologias nos algoritmos de pro-cessamento dos dados. De entre estas alterações, a principal passou pelo uso de gaussianos circulares em zonas estratégicas do ambiente. Associado a estes gaus-sianos, é construído um modelo virtual usando métodos probabilísticos. Deste modo, os valores lidos pelos sensores não são considerados valores absolutos pas-sando a estar associado a eles um valor de confiança ou relevância da informação. Tornou-se possível também adicionar informação existente com nova informação e ter em conta a fiabilidade dos dados.

Neste quadro passa a ser possível ajustar a posição dos gaussianos circulares exis-tentes, criar novos gaussianos ou eliminar aqueles que apresentam reduzido grau de certeza.

1.3

Materiais e objectivos

O sistema apresentado foi implementado em ambiente MatLab, utilizando como base o "Simulador de Robot Movel"desenvolvido pelo Professor Doutor Paulo Salgado.

O simulador permite criar um sistema de interacção robot-ambiente, onde é pos-sível criar um mapa, definir os seus faróis de destinos, inicializar robots no am-biente fazendo-os navegar o amam-biente de trabalho interagindo com os obstáculos existentes e o farol de destino.

(27)

1.4. Descrição dos vários capítulos da dissertação 5

O objectivo da presente dissertação é o de apresentar uma metodologia para a identificação de características morfológicas gerais de um espaço desconhecido através da colaboração de robots móveis autónomos.

Assim, desenvolveu-se uma aproximação mais focada na parte analítica do pro-blema, visando colmatar vários dos problemas já referidos principalmente atra-vés de soluções de software, reduzindo e viabilizando assim os custos que uma implementação real deste sistema poderá ter.

1.4

Descrição dos vários capítulos da dissertação

A presente dissertação é composta por mais quatro capítulos, que acrescem ao presente capítulo. O primeiro capítulo introduz o tema da dissertação, formula os principais problemas a resolver e apresenta a abordagem utilizada para a sua resolução. Contém ainda os materiais e os métodos utilizados na implementação do sistema e as principais linhas de trabalho da dissertação.

O segundo capítulo resume o conjunto de informação pertinente recolhida e que serviu de apoio à criação e ao desenvolvimento do sistema proposto. Esta in-formação inclui trabalhos desenvolvidos na área de percepção do ambiente por parte de robots individuais ou grupos de robots, fazendo alusão a algoritmos, técnicas e metodologias.

O terceiro capítulo trata dos algoritmos, técnicas e metodologias utilizadas. São aí descritas as principais abordagens ao problema considerado e apresentados os algoritmos utilizados. Todo o processo, desde a recolha de dados até à criação do mapa cognitivo também é descrito.

No quarto capítulo são descritos os ensaios realizados e apresentados os resulta-dos resulta-dos diferentes testes. A análise de resultaresulta-dos é conduzida tendo como ponto comparativo o mapa cognitivo criado versus o mapa real do ambiente de trabalho. São também analisados a relevância no aprimoramento do sistema.

Por fim, no quinto e último capítulo são apresentadas as principais conclusões e apontadas novas linhas de trabalho futuro.

(28)
(29)

Capítulo 2

Percepção sensorial e cognitiva do

ambiente de trabalho

Para que um robot possa navegar autonomamente, este tem que ser capaz de se localizar a si próprio, i.e., saber a sua posição e orientação, tanto em ambientes de trabalho interiores como exteriores [1]. Portanto, uma das temáticas mais impor-tantes na área da robótica móvel em geral é a determinação da localização de um ou mais robots num certo ambiente ou espaço [2].

É possível classificar a localização de um robot como absoluta ou relativa [3]. A localização ou posição de um robot é absoluta quando são usados mapas globais, faróis, sinais de satélite para a determinar. Este tipo de localização requer que o ambiente em que o robot navega seja conhecido com grande detalhe e precisão. Por outro lado, a posição relativa de um robot é preferível quando há mobilidade, uma vez que os métodos de localização absoluta levam mais tempo a processar os dados. Um dos métodos mais utilizados para localização relativa é a odometria, que mede a distância a partir da posição inicial através das revoluções das rodas do robot. É um método simples e fácil mas que contém erros cumulativos [2]. A maioria dos sistemas de localização actuais assenta na combinação de leituras por parte de sensores proprioceptivos que monitorizam o movimento do veículo com a informação recolhida por sensores exteroceptivos que fornecem a repre-sentação do ambiente de trabalho e os seus sinais. Muitas aplicações robóticas requerem que os robots colaborem de forma a realizar uma tarefa. Muitas das téc-nicas de localização existentes referem-se apenas ao caso de um robot, e mesmo quando se considera um grupo de M robots, o problema de localização do grupo

(30)

8 Capítulo 2. Percepção sensorial e cognitiva do ambiente de trabalho

é resolvido através da resolução independente de M estimativas de localização. Cada robot estima a sua posição baseado na sua própria experiência (leituras dos sensores proprioceptivos e exteroceptivos). O conhecimento das diferentes en-tidades do grupo não é combinado e cada membro depende dos seus próprios recursos (capacidades sensoriais e de processamento). Esta é uma abordagem re-lativamente simples que evita lidar com o problema da agregação da informação de um grande número de fontes independentes e interdependentes. Por outro lado, um esquema mais coordenado para localização possui vantagens que com-pensam a complexidade inerente a este tipo de técnicas [1].

Numa primeira análise, considera-se um grupo homogéneo de robots. Como é esperado, as capacidades sensoriais dos robots possuem um certo grau de incer-teza e ruído. Quando um grupo de robots equipados com o mesmo tipo de sen-sores detecta uma determinada particularidade no ambiente, tal como uma porta ou uma medida de uma característica da área, como o vector local do campo magnético da Terra, é recolhido um número de leituras independentes origina-das a partir dos diferentes membros do grupo. Combinando convenientemente toda a informação, obtém-se numa única estimativa da posição e orientação com melhor precisão e incerteza reduzida. A estimativa melhorada de posição e ori-entação de uma dada marca pode aumentar em grande escala o resultado do pro-cesso de localização e, assim, o grupo de robots é beneficiado por este esquema colaborativo. As vantagens de partilha e troca de informações entre membros de um mesmo grupo são ainda mais cruciais no caso de se estar a lidar com grupos heterogéneos de robots. Estes grupos são compostos por robots que têm dife-rentes plataformas com difedife-rentes sensores, que por sua vez possuem difedife-rentes capacidades de localização própria. Portanto, a qualidade das estimativas de lo-calização irá variar significativamente entre os vários membros do grupo [1]. O trabalho realizado por [1] apresenta uma nova abordagem para a localização cooperativa entre robots, denominada por localização distribuída de múltiplos robots. Um grupo de M robots é visto como um único sistema composto por robots que possuem, em geral, diferentes sensores e diferentes capacidades de posicionamento. É formulado um filtro de Kalman para estimar a posição e ori-entação de todos os membros do grupo. Este esquema centralizado é capaz de juntar a informação proveniente dos sensores distribuídos pelos robots enquanto

(31)

9

acomodam independências e interdependências entre os dados recolhidos. De forma a possibilitar o processamento distribuído, as equações do filtro de Kalman centralizado são tratadas de maneira a que possam ser decompostas em M filtros de Kalman modificados, cada um a ser processado num robot individual. O algo-ritmo de localização distribuída é aplicado num grupo de três robots e verifica-se uma melhoria na precisão da localização em relação a trabalhos anteriores [1]. A problemática da localização está principalmente ligada ao tipo de mapa que se usa para representar o espaço onde o robot navega. Os mapas dividem-se em duas categorias: mapas baseados em características do espaço e mapas baseados em localizações. No primeiro tipo de mapas, o ambiente é representado como um conjunto de características com as suas coordenadas cartesianas, como linhas e esquinas no espaço [4, 5, 6]. Em [4] é descrito como a fusão de múltiplos senso-res aumenta tanto a confiabilidade como a precisão das observações do ambiente de trabalho em situações de localização e construção de mapas em robótica mó-vel. A fusão de múltiplos sensores é feita ao nível de marcos, que representam conjuntos de observações dos sensores, relacionadas entre si. No trabalho reali-zado por [4] introduzido um algoritmo para localização e orientação num sistema de múltiplos robots. Segundo os seus developers[4], cada robot tem a capacidade para estimar a localização relativa dos robots que se encontram na sua área de transmissão [4].

Os mapas baseados em localizações criam uma marca para cada localização no espaço em questão. Um dos exemplos clássicos deste tipo de mapas é a occu-pancy grid [7] [8]. Este tipo de mapas pode ser descrito como uma representação probabilística da informação espacial num tabuleiro de xadrez. É um campo mul-tidimensional aleatório que mantém estimativas estocásticas do estado de ocupa-ção das células de uma estrutura espacial. Para construir um mapa do espaço que rodeia o robot, as estimativas do estado da célula são obtidas através da in-terpretação da leitura dos dados de entrada, utilizando modelos probabilísticos de sensores. Os procedimentos de estimativas Bayesianas permitem aumentar a actualização do estado da occupancy grid, usando leituras efectuadas a partir de vários sensores colocados em diversos pontos de vista [8].

Na maioria dos casos, não existem mapas disponíveis a priori, e, como tal, quando o sistema robótico é constituído por um conjunto de robots, a localização e

(32)

ma-10 Capítulo 2. Percepção sensorial e cognitiva do ambiente de trabalho

peamento do espaço são simultânea e eficientemente tratados. Cada robot do conjunto pode fornecer informação parcial sobre o espaço no qual se movimenta mas também informação sobre as posições relativas de outros robots que se en-contram a curta distância (geralmente denominados por vizinhos) do referido robot [9, 10, 11]. Este tipo de métodos exploram as capacidades de comunicação e detecção dos robots que conseguem identificar outros robots no mesmo espaço e partilhar dados com eles [1] [12], gerando assim vários mapas do ambiente que, posteriormente, são integrados num mapa global do espaço em questão [2]. O sistema proposto por [2] para localização e orientação combina uma fonte de informação absoluta com informação parcial. A fonte de informação absoluta é um sensor de infravermelhos que mede a distância e que está colocado numa estrutura fixa no espaço, combinado com uma fonte de informação relativa (e parcial): os mapas locais gerados pelos robots do mesmo grupo que se encon-tram no mesmo espaço. Esta abordagem é, portanto, concebida para sistemas com múltiplos robots, com M unidades equipadas com n canais direccionais de comunicação de infravermelhos uniformemente distribuídos pelo robot. Cada sensor de infravermelhos é capaz de comunicar com os sensores dos robots vizi-nhos. O sensor de infravermelhos que está fixo é utilizado para analisar o espaço e medir a distância entre si e os robots. A partir destas duas fontes são obtidos dois mapas da distribuição dos robots no ambiente. À semelhança da abordagem MDS-MAP, que se define como um método de localização baseado num escalona-mento multidimensional [13], ambos os mapas são representados por redes nas quais os nós são os robots e uma ligação entre dois nós é criada se os robots são vizinhos. A partir do sensor de infravermelhos fixo obtém-se a rede do cluster, enquanto que a partir da integração dos mapas locais obtidos pelos sensores a bordo dos robots obtém-se uma unit disk graph. O algoritmo criado, denominado por algoritmo cluster matching, determina a posição e orientação dos robots em relação à estrutura global de referência. O problema da localização é tratado em duas fases. Na primeira fase é assumido que se conhece a posição absoluta de alguns robots (em relação ao sensor de infravermelhos fixo), sendo que a infor-mação está limitada aos robots que o sensor consegue detectar. Estes robots são os nós da rede, anteriormente denominada por rede do cluster. O termo cluster refere-se ao facto dos nós da rede estarem divididos em grupos. Cada grupo é constituído por um nó líder, chamado de cluster head, e os nós vizinhos. Os

(33)

ân-11

gulos entre o cluster head e os nós vizinhos em cada cluster são calculados. Na segunda fase, assume-se que está disponível informação relativa sobre a orienta-ção dos robots (a partir dos sensores dos robots). Os ângulos entre cada robot e os seus vizinhos são calculados e o problema inicial da localização é resolvido fa-zendo corresponder os ângulos obtidos nas duas fases anteriores. Este processo permite faze corresponder cada nó da rede do cluster a cada robot da unit disk graph. Os ângulos da rede do cluster e da unit disk graph são utilizados para esti-mar a localização do robot [2]. A figura 2.1 ilustra a medição do ângulo entre dois robots vizinhos.

Figura 2.1: Ilustração da medição do ângulo entre dois robots vizinhos [2]. Logicamente se conclui que num grupo de robots móveis, a cooperação para a exploração do ambiente de trabalho é vital para o sucesso das tarefas destinadas a esses robots.

Quando múltiplos robots exploram cooperativamente um ambiente de trabalho, os mapas de cada robot devem ser agrupados para produzir um único mapa global consistente. Este é um problema desafiante quando os robots não têm uma estrutura de referência comum ou a posição global. Em [12] é descrito um algoritmo de junção de mapas topológicos embebidos. Este tipo de mapas for-nece uma descrição consistente da navegabilidade de um determinado espaço,

(34)

12 Capítulo 2. Percepção sensorial e cognitiva do ambiente de trabalho

e, com leituras facilmente realizadas durante a exploração, os vértices do mapa podem ser embebidos num espaço métrico. O algoritmo proposto utiliza tanto a estrutura como a geometria de mapas topológicos para determinar a melhor correspondência entre mapas com uma ou múltiplas regiões. Segundo os testes realizados, este algoritmo é de facto eficaz [12].

O algoritmo baseado em marcas para mapeamento cooperativo por robots autó-nomos, proposto por [14], é muito eficiente em combinar mapas topológicos de ambientes de interior, gerados por robots móveis autónomos. Na primeira imple-mentação prática para testar este algoritmo, dois robots com diferentes mecânicas e capacidades dos sensores exploram o ambiente de trabalho independentemente sem mapas a priori. Cada robot não tem conhecimento inicial da posição e orien-tação relativas do outro robot. Utilizando o algoritmo proposto, os robots con-seguem juntar os dois mapas e formar um único mapa topológico correcto em tempo real, baseado apenas nas características que cada um descobriu de forma independente [14].

Igualmente importante na área da percepção do ambiente de trabalho por parte de robots, é o facto de uma abordagem se conseguir adaptar às mudanças que um ambiente possa sofrer, ou seja, um ambiente de trabalho pode ser dinâmico. Existe um algoritmo distribuído de construção de mapas, desenvolvido por [15], baseado na produção de uma aproximação ao gráfico de Voronoi generalizado do ambiente do robot. Utilizando sensores de sonar, um grupo de robots móveis constrói mapas que são topológicos e relativamente dispersos, pelo que, conse-quentemente, são bastante adequados para abordagens básicas de planeamento de trajectórias. Os mapas também contêm dados métricos que podem ser usa-dos para detectar modificações automaticamente num ambiente dinâmico. Este algoritmo é bastante confiável em ambiente dinâmicos, ou seja, o ambiente pode mudar mesmo depois do mapa ter sido gerado [15].

O problema de detectar mudanças (novelties) num ambiente de trabalho engloba a comparação de dados actuais com dados obtidos anteriormente ou com um comportamento esperado [15].

O trabalho proposto por [15] diz respeito a uma framework que detecta e segmenta mudanças no conjunto de dados de robots, utilizando mapeamento robótico em 3D como caso de estudo. O objectivo desta proposta é identificar modificações

(35)

13

significativas através do cruzamento dos dados actuais com dados mais antigos, fornecidos por sensores, o que se revela como algo extremamente desafiante por-que existem muitos dados com ruído por-que têm por-que ser processados de uma forma praticável. A framework proposta lida com a detecção e segmentação em mapas robóticos utilizando clusters fornecidos por GMMs. Estes modelos disponibili-zam uma estrutura espacial que permite a compressão de dados e o seu proces-samento efectivo. Neste trabalho comparam-se dois critérios para detectar mu-danças no espaço GMM, uma técnica métrica baseada na EMD e um algoritmo de correspondência estrutural, que servem tanto para restrições absolutas (cor-respondência global) como para relativas (cor(cor-respondência de estruturas) [15]. Então, o ponto crucial do problema da detecção de mudanças é identificar ca-racterísticas previamente desconhecidas. Uma das aplicações consideradas para testar o método proposto por [15] é a percepção avançada para robots móveis autónomos equipados com lasers 3D. Na figura 2.2 está ilustrada uma situação típica de trabalho onde um robot autónomo se move. Como se pode verificar, o ambiente pode apresentar mudanças repentinas. Como tal, o robot deve encon-trar e segmentar esta mudança de forma a lidar com a dinâmica do espaço de trabalho e deve actualizar correctamente o seu modelo do ambiente de trabalho [15].

Este método de detecção de novelties engloba várias fases:

- Primeiro, a informação do ambiente é obtida por um sensor de laser 3D; - Os dados são pré-processados por dois métodos consecutivos com o

objec-tivo de reduzir o número de pontos no mapa 3D:

1. um algoritmo de simplificação - usa informação da superfície e gera um conjunto de pontos multi-escala;

2. métodos de remoção do plano do chão e valores extremos dispersos -- como a maioria dos dados contidos em ambos os conjuntos de dados que vão ser comparados estão geralmente relacionados com estrutu-ras estáticas, estes métodos removem dados que, apesar de não esta-rem relacionados com novelties, aumentam significativamente o esforço computacional despendido.

(36)

14 Capítulo 2. Percepção sensorial e cognitiva do ambiente de trabalho

Figura 2.2: O objectivo do método detecção de mudanças proposto é encontrar e segmentar mudanças no ambiente de trabalho do robot móvel, neste caso o aparecimento da pessoa em (b) [15].

(37)

15

- Depois da fase de pré-processamento estar completa, o conjunto de dados é convertido do espaço Euclidiano para o espaço matemático de Gaussian Mixtures, ou seja, características baseadas em GMMs são extraídas para sim-plificar os dados. A utilização destas características permite que o processo descreva a informação do ambiente de um modo mais conveniente, e que mais facilmente se detecte e segmente mudanças. A abordagem baseada em GMMs foi proposta por [16];

- Finalmente, as novelties são processadas e segmentadas no espaço matemá-tico de GMMs, através de dois algoritmos já referidos, para comparação:

1. O algoritmo baseado na EMD, descrita por [16] [17];

2. O algoritmo de correspondência estrutural baseado na teoria dos gra-fos, proposta por [18].

Ambos os algoritmos testados neste trabalho foram comparados em termos de robustez, precisão e sensibilidade. Os resultados mostram que o algoritmo ba-seado em EMD apresenta uma ligeira vantagem em relação ao outro algoritmo testado [15].

Algoritmos de análise e correspondência têm sido extensivamente utilizados nos últimos anos para efectuar localização de robots móveis. Apesar destes algorit-mos requererem grandes conjuntos de dados precisos, como é o caso dos dados fornecidos por sensores de laser, vários estudos demonstram que a localização de robots pode também ser feita através de sensores de sonar [19].

No entanto, projectos desenvolvidos com sensores de laser ou sonar são usual-mente baseados em ideias introduzidas na abordagem ICP [19].

O estudo conduzido por [20] lida com a estimativa da postura de robots através da integração de informação recolhida por sensores proprioceptivos e exterocep-tivos. Mais especificamente, um algoritmo de ICP é utilizado e modificado para caracterizar a correspondência entre as informações recolhidas pelos sensores. De forma a utilizar este algoritmo com sucesso e eficazmente, foi desenvolvido um algoritmo de procura para identificar uma parte potencialmente comum de duas frames consecutivas de dados obtidas pelos sensores [20].

(38)

16 Capítulo 2. Percepção sensorial e cognitiva do ambiente de trabalho

No trabalho desenvolvido por [21] é apresentada uma nova abordagem, baseada num campo de probabilidades (Likelihood Field), que constitui uma alternativa à abordagem ICP. São descritos três algoritmos baseados neste conceito [19]:

- sNDT não filtrado; - sNDT filtrado; - LF/SoG.

Os testes efectuados pela equipa [19] revelam que a abordagem proposta apre-senta vantagens em relação a algoritmos da família ICP em termos de robustez e precisão.

Os sensores utilizados na captura de dados para a percepção do ambiente de tra-balho são propensos a erros e possuem incertezas nas suas leituras. Tendo esta problemática em conta, em [22] é apresentado um trabalho que visa construir um mapa em grid tão preciso quanto possível utilizando sensores de sonares acessí-veis em termos de preços e propensos a erros. As leituras incorrectas de sonares, que passam por falhar a detecção dos objectos mais próximos da sua área de transmissão, geralmente são [22]:

- Manipuladas da mesma forma que as leituras correctas, o que pode com-prometer a qualidade do mapa gerado, ficando seriamente degradado, ou, - Excluídas do mapa, podendo resultar num mapa com informação reduzida

depois da remoção das medidas incorrectas, pois apenas as leituras correc-tas podem ser insuficientes para representar todo o ambiente de trabalho. Na figura 2.3 está ilustrado um exemplo no qual só foram utilizadas as lei-turas correctas. Na figura 2.3 - (a) está ilustrado o mapa de referência. A área branca representa o espaço vazio, a região preta é o espaço ocupado e a área cinzenta é o espaço desconhecido. A linha vermelha traduz a trajectó-ria do robot. Como se pode verificar na figura 2.3 - (b) o mapa obtido pelas leituras correctas recolhidas por dois sonares contêm áreas que não estão bem definidas e que estão rodeadas pelas caixas a picotado [22].

(39)

17

(40)

18 Capítulo 2. Percepção sensorial e cognitiva do ambiente de trabalho

A abordagem proposta por [22] consiste num mapeamento em grid eficiente que incorpora as leituras incorrectas de uma forma especializada para construir um mapa melhorado e denomina-se por abordagem eML.

A técnica eML funde as leituras correctas e incorrectas num mapa baseado em sub-mapas gerados a partir de cada conjunto de leituras. É também proposto um método mSP para detectar leituras de sonar incorrectas utilizando a pressão do som das ondas dos sensores de sonar. Em experiências em ambiente interior a combinação da técnica eML com o método mSP permitiu alcançar os melho-res melho-resultados em termos de qualidade do mapa, comparando com várias técni-cas de mapeamento [22]. Na figura 2.4 está ilustrado um dos resultados obtidos com a abordagem proposta por [22], integrando leituras correctas e incorrectas, verificando-se uma melhor definição do espaço representado no mapa de refe-rência da figura 2.3 - (a) [22].

(41)

Capítulo 3

Métodos e algoritmos de percepção

do ambiente envolvente

Neste capítulo serão apresentados os principais métodos e algoritmos propostos para a construção de um mapa cognitivo do meio ambiente onde navega o robot móvel. Estes algoritmos fazem parte de um mecanismo de percepção associado a uma memória construída a partir de informação instantânea pré-processada, fornecida pelos sensores do robot.

O objectivo principal do sistema de percepção será identificar a posição dos obs-táculos presentes no espaço de trabalho do robot e caracterizá-los, num processo contínuo no reforço do detalhe e na aferição da sua informação. Tal tarefa é re-alizada a partir do processamento dos sinais recolhidos pelo sistema sensorial de um ou vários robots que vão navegando pelo espaço de trabalho, tendo em conta a estimação da posição e orientação do(s) robot(s). Numa primeira fase deste trabalho considerou-se que a informação proveniente dos sensores era toda ela precisa, embora limitada pelo alcance dos sensores sonares/lasers. Posterior-mente, foram tomados em consideração os erros e a relação sinal/ruído dos sinais dos sensores, bem como os aspectos limitadores do hardware e eventuais falhas de funcionamento. O resultado final deste processo será a geração de um mapa com o maior detalhe possível sobre a localização dos vários obstáculos bem como a certeza da sua existência, numa perspectiva de se dar a conhecer igualmente a confiança da informação.

A insuficiência dos modelos usados e a incerteza das medidas efectuadas pelos sensores comprometem os resultados que metodologias mais simplistas,

(42)

20 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

almente propostas, são capazes de dar como resposta. Estes aspectos, fruto do modo real como os sistemas trabalham, evidenciam que, uma tarefa aparente-mente simples como detectar obstáculos e os seus posicionamentos se pode reve-lar extremamente complexa, uma vez que a presença de erros nos dados recolhi-dos contamina o processo de identificação de obstáculos, diminuindo significati-vamente o grau de confiança e robustez dos resultados obtidos.

O sistema apresentado coloca um ou vários robots numa determinada área, que a priori lhes são desconhecidas. Estes robots navegam em direcção a pontos de in-teresse (faróis), localizado na região a explorar e da qual o robot apenas conhece a sua direcção posicional. Somente quando o robot alcança o farol é que toma co-nhecimento da sua posição, navegando então em direcção a outro farol na ordem da lista atribuída. Durante todo o percurso, o sistema sensorial do robot recolhe dados sobre o ambiente envolvente. Estes dados são então enviados para uma base de dados que se encarrega de os processar e criar representações virtuais da área navegada.

Não fossem os erros posicionais do robot e a precisão dos sensores, para a qual colaboram negativamente o forte ruído dos sinais bem como a resolução dos sen-sores e do sistema de aquisição de dados, o processo de caracterização dos obs-táculos detectados e a determinação da sua posição relativa seria um trabalho perfeitamente acessível e exequível. Adicionalmente, se o modelo cinemático in-verso do robot fosse completo e exacto, a posição absoluta dos obstáculos seria possível de calcular tendo em conta os valores dos sensores e dos actuadores motores. Outra questão, não menos importante, prende-se com a resolução da representação dos obstáculos no mapa. Numa situação ideal, com máxima preci-são dos sensores e inexistência de incertezas, a maior dificuldade reside na falta de capacidade de registar todos os detalhes observáveis e processados, apesar de que também se revelaria pouco proveitoso face às necessidades de informação daí resultantes. Já na presença de forte incerteza dos dados e imprecisão dos modelos a questão vem reforçada de como agregar convenientemente essa informação em níveis de resolução relativamente aceitáveis.

A abordagem tida neste capítulo, visa dar resposta aos sucessivos patamares de exigência e dificuldades encontradas, pela apresentação de modelos e algoritmos mais fiáveis e robustos. Primeiramente será apresentado o modelo de

(43)

cinemá-3.1. Análise de movimento do robot com duas rodas motrizes 21

tica directa do robot considerado no estudo, seguindo-se a análise geométrica que permite determinar a posição dos obstáculos de acordo com a informação prestada pelos sensores do robot e pelo modelo posicional do mesmo. Segue-se a quantificação da representação posicional por um algoritmo de vizinhança su-portada por funções radiais do tipo gaussiano. Numa fase seguinte é estudada a agregação dos dados aquando da presença de incertezas na informação e o modo como se capitaliza a agregação de informação para melhorar os índices de con-fiança dos resultados. Será apresentado o algoritmo que conjuga a informação associando níveis de relevância ou confiança, fazendo-se de modo articulado a anterior representação gaussiana do espaço. O resultado final será um mapa com uma resolução aceitável, enriquecido com níveis de confiança da informação con-tida.

3.1

Análise de movimento do robot com duas rodas

motrizes

A caracterização do movimento, através do estabelecimento de equações cine-máticas, deverá prestar-se às necessidades, por um lado, da simulação real do agente móvel e, por outro lado, permitir com um grau de exactidão aceitável a determinação da posição e orientação do robot em ambiente e condições reais. A abordagem que se segue resume os assuntos apresentados na disciplina de Ro-bótica do Mestrado [23]. O movimento do robot móvel de duas rodas motrizes é comandado por dois eixos rotativos independentes, associados a cada uma das suas rodas motrizes, do qual resultarão velocidades próprias angulares wL e wR, respectivamente para a do lado esquerdo e direito.

Especificadas todas as dimensões geométricas do agente móvel (largura do eixo, raio das rodas), o problema resume-se em estabelecer o movimento gerado pelo movimento de cada uma das duas rodas, conhecidas as suas velocidades.

O robot é caracterizado, para um dado instante i, pela sua posição central (posi-ção central do eixo entre rodas), Pi, e o ângulo que a sua direcção faz com a um

linha de referência, φi. Se durante um intervalo de tempo ∆t os motores rodarem,

as rodas esquerda (L) e direita (R) irão conduzir o robot para uma nova posição, Pi+1, com uma orientação, φi+1, que corresponderá ao seu estado no instante i + 1.

(44)

22 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

Tendo em conta as variáveis definidas na tabela 3.1 e o esquema do movimento do robot apresentado na figura 3.1, o propósito seguinte será estabelecer as prin-cipais equações de cinemática directa do robot de dois eixos motrizes.

Tabela 3.1: Lista de parâmetros usados na análise do movimento.

d Largura do eixo

Pi Posição do centro do robot no instante i : (xi, yi)

Pi+1 Posição do centro do robot no instante i + 1: (xi+1, yi+1)

φi Ângulo de direcção corrente

φi+1 Ângulo de direcção seguinte

εLi Escorregamento da roda esquerda em Pi(0 ≤ εLi≤ 1)

εRi Escorregamento da roda direita em Pi(0 ≤ εRi≤ 1)

V Li Velocidade da roda esquerda em Pi

V Ri Velocidade da roda direita em Pi

θi Ângulo de curvatura em Pi

ri Raio de curvatura do agente em Pi

∆Pi Avanço do centro do eixo em Pi

αi Ângulo de fase de ∆Pi

A situação de movimento apresentada na figura 3.1, realizada de modo curvilí-neo no sentido anti-horário, resulta quando o robot é sujeito a um movimento diferentes nos seus dois eixos, com a amplitude de rotação da roda direita maior que a da roda esquerda.

Dadas as velocidades de cada roda (V Li, V Ri), os deslocamentos das rodas (∆SLi,

∆SRi)durante o intervalo de tempo ∆t, a partir da posição Pi, considerando os

escorregamentos das rodas (εLi, εRi), com valores (0 ≤ εLi, εRi ≤ 1), podem ser

dados pela seguinte aproximação linear:

∆SLi ≈ V Li(1 − εLi)∆t (3.1)

(45)

3.1. Análise de movimento do robot com duas rodas motrizes 23

Figura 3.1: Movimento no sentido anti-horário [23].

Devido à curvatura em arco do movimento, uma outra expressão que relaciona os deslocamentos das rodas com raio da curvatura, largura do eixo e ângulo de curvatura, pode ser estabelecida:

∆SLi = (ri+ d 2)θi (3.3) ∆SRi = (ri+ d 2)θi (3.4)

Da subtracção da equação (3.3) pela equação (3.4) resulta:

θi =

∆SLi− ∆SRi

(46)

24 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

Somando as equações (3.3) e (3.4) e utilizando o resultado da equação (3.5), temos que: ri = d 2 ∆SLi + ∆SRi ∆SLi − ∆SRi (3.6)

Pela inspecção da figura 3.1 pode-se estabelecer a seguinte relação entre os ângu-los de direcção seguinte com o anterior e o ângulo de fase de ∆Pi(αi):

φi+1= φi− θi (3.7)

αi = φi+

θi

2 (3.8)

Onde φi é o ângulo que a direcção do robot, que no instante discreto i, faz com a

horizontal.

Da figura 3.1 pode-se ainda constatar que o avanço do centro do eixo em Pi tem

a magnitude de:

|∆Pi| = 2risin(

θi

2) (3.9)

Finalmente as posições seguintes do robot, após o movimento considerado, em termos das suas coordenadas cartesianas, são dadas por:

xi+1 = xi+ |∆Pi| cos(αi) Pxi+1 = Pxi+ |∆Pi| cos(αi) (3.10) yi+1= yi+ |∆Pi| sin(αi) Pyi+1 = Pyi+ |∆Pi| sin(αi) (3.11)

(47)

3.2. Identificação de obstáculos - Método 25

Onde (xi, yi)são as coordenadas do centro do robot no instante discreto i.

3.2

Identificação de obstáculos - Método

O processo de recolha de dados do ambiente envolvente é realizado através de um conjunto de três sonares instalados em cada robot, apontando para três di-recções distintas. O sensor central está alinhado com a direcção frontal do robot enquanto os outros dois estão simetricamente desviados de um ângulo de 60◦

face à direcção central. Aquando da realização de uma medida, o sensor emite uma cadeia de impulsos sonoros que se propagam no ar até chocarem com um obstáculo e serem reflectidos de volta ao sensor sonar. O tempo de "voo"dos im-pulsos acústicos dá-nos a indicação da distância percorrida pelo som e deste do valor da distância a que se situa o obstáculo. Por um processo análogo, um me-didor laser fornece com relativa precisão direccional a distância dos obstáculos. Após um processo de leitura dos sensores, cada um destes fornece a indicação da distância do obstáculo por ele detectado bem como o nível de sensibilidade do sinal eco/feixe laser detectado, que diminui na razão inversa do quadrado da distância e do ângulo de incidência do sinal sonoro no obstáculo e o eco reflectido. Valores inferiores de sensibilidade dos sinais dão-nos a indicação de uma maior incerteza no valor apresentado para a distância, enquanto valores altos de sensi-bilidade reflectem maior certeza no valor do sensor sonar/laser. Num ambiente perfeito, sem ruído nos sinais e ausência de incorrecções por parte do sistema de medida, o valor de sensibilidade não é um factor importante, contrariamente ao que sucede em situações reais.

Conhecida, em cada momento, a posição e orientação do robot e as distâncias dos obstáculos dadas pelos três sensores, é possível com uma análise geométrica de-terminar a localização exacta dos obstáculos detectados relativamente ao robots e sua posição global, se conhecido também com exactidão a posição absoluta e orientação do robot.

A figura 3.2 ilustra um exemplo de, estando o robot situado na posição de coorde-nadas (x, y) e orientado na direcção que faz um ângulo com a linha de referência horizontal, o laser do sensor central detecta um obstáculo O a uma distância d (unidades).

(48)

26 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

Figura 3.2: Representação da identificação de um obstáculo por um robot. A direcção do sonar é identificada pelo segmento vermelho. O ponto onde foi en-contrado o obstáculo é dado pelo ponto O(x∗, y).

A posição do objecto detectado poderá ser estimada pelas seguintes equações:    x∗ = x + d ∗ cos(ϕ + i ∗ 60◦) y∗ = y + d ∗ sin(ϕ + i ∗ 60◦) (3.12)

Com o valor do i = −1, 0, 1, os índices de cada um dos três sensores. Onde:

x∗é a abcissa do obstáculo, y∗é a ordenada do obstáculo,

xé a abcissa do robot aquando da identificação do obstáculo, yé a ordenada do robot aquando da identificação do obstáculo, dé a distância do robot ao obstáculo identificado,

ϕé o ângulo do robot com a vertical,

(49)

3.3. Representação granular 27

Cada ponto identificado pelos sensores como obstáculos é guardado numa matriz M com dimensões Xm∗Ym, sendo os valores de Xme Ymde acordo com as

dimen-sões da área definida aquando da inicialização dos robots. Valores maiores para Xm e Ym trazem maior resolução, sendo por norma Xm = dimX/resolução e Ym =

dimY /resolução, com dimX e dimY as dimensões físicas X e Y respectivamente do espaço a pesquisar. O valor da variável resolução especifica o grau de detalhe pretendido. Assim, se tiver sido detectado um obstáculo na posição (x∗, y∗)a ma-triz M terá assinalado na sua posição (i, j) o valor 1, para i = ceil(x∗/resolução) e j = ceil(y∗/resolução), sendo ceil a função que arredonda o valor para o número inteiro superior. Deste modo, a matriz M será uma representação discreta do am-biente envolvente onde cada ponto observado (ou pixel) caracteriza a presença ou ausência de obstáculos nessa grelha posicional.

3.3

Representação granular

A solução anterior permite apresentar um mapeamento discretizado do meio, for-necendo uma mapeamento granular discreto, de forma quadrangular ou pixelar. Todavia, esta aproximação não permite acomodar a incerteza das medidas nem integrar novas informações.

O novo método aqui apresentado, também designado como aproximação proba-bilística, procede a uma granulação do espaço através da distribuição de gaussi-anos circulares pelos locais onde são identificados obstáculos. Como a qualidade da informação recolhida pelos sensores depende de várias variáveis de carác-ter endócrino e exócrino, esta nova estrutura sustentada por gaussianos permite também conter a informação relativa ao grau de importância/relevância ou mera confiança sobre a localização de obstáculos ou a sua ausência. Como se compre-ende, esta informação extra depende de vários factores tais como da coerência das leituras instantâneas ou da sua mera agregação. O mero coleccionar de lei-turas, por vezes contraditórias relativamente a leituras anteriores, não dá uma resposta clara em presença de um quadro de múltiplas incertezas.

Para tirar maior proveito do facto de ser um sistema que actua em tempo real, ao longo do tempo, o sistema vai efectuando ajustes nos pontos identificados. Es-tes ajusEs-tes têm vários graus de actuação, sendo esEs-tes o reforço da relevância de

(50)

28 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

um ponto, o ajuste da sua posição no mapa (ajustando os centros dos gaussianos circulares) ou mesmo a sua eliminação da matriz de obstáculos. O ajuste da posi-ção dos centros dos gaussianos é efectuado tendo em conta o valor do cálculo do desvio padrão de cada centro.

Assim, à medida que uma zona é processada, os gaussianos nela presentes pos-suirão um grau de confiança mais elevado ao longo do tempo. Quando determi-nado ponto possui um grau de confiança inferior a um determidetermi-nado limiar defi-nido, esse ponto é eliminado, incrementando assim a robustez do mapa cognitivo apresentado.

3.4

Inserção e minimização do erro dos sensores

Um dos maiores desafios deste tipo de sistemas é o de ultrapassar as incertezas das leituras realizadas tendo em conta os erros de posição e orientação do robot e das limitações do sistema de medida, isto é, erros inerentes aos componentes de captura e recolha de dados. No caso de um sistema perfeito, o algoritmo anterior seria suficiente para criar uma imagem virtual perfeita de um ambiente desco-nhecido. Como tal não acontece, considera-se a existência de erros nos sensores. Assim, a posição de um robot passa a ser dada por:

Posição do Robot = (x + α, y + α) (3.13)

Onde:

xé a abcissa da posição do robot, yé a ordenada da posição do robot,

αé o erro associado aos sensores do robot.

De igual modo, o alinhamento do robot também é passível de conter um erro, pelo que o ângulo associado será ϕ + β. Assume-se que nos erros aqui consi-derados (α e β) existe uma distribuição probabilística gaussiana, tendo por base uma razoável aproximação prática. De modo a simplificar a análise do problema

(51)

3.4. Inserção e minimização do erro dos sensores 29

considera-se que a função cos(ϕ + β) também obedece a uma distribuição gaussi-ana de valor médio cos(ϕ), generalizando-se esta simplificação à função sin(ϕ+β). Deste modo a estimação da posição do obstáculo (x∗, y∗), de acordo com a equa-ção atrás apresentada, terá subjacente a conjugaequa-ção da incerteza da posiequa-ção e do ângulo da direcção do robot, pelo que terá igualmente uma incerteza posicional de forma gaussiana.

Utilizando uma aproximação estatística, é possível incrementar o grau de confi-abilidade das representações virtuais criadas pelo sistema. Para tal, cria-se um gaussiano no local onde é identificado o obstáculo, o que podemos observar na figura 3.3.

Figura 3.3: Representação da identificação de um obstáculo por um robot, criando um gaussiano G centrado no ponto de colisão com o sonar.

Cada gaussiano G é dado por:

G = [(xG, yG), r] (3.14)

Onde:

(xG, yG)é o centro do gaussiano,

(52)

30 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

Os centros (xG, yG)dos gaussianos, criados nos pontos O(x∗, y∗)identificados

pe-los sonares do robot, são guardados numa matriz Xo.

Para além destas variáveis, cada gaussiano possui também duas componentes A e B.

Aé a amplitude cumulativa de cada gaussiano. Esta propriedade é definida pela sensibilidade dos sensores.

B é a massa do gaussiano cujo valor é igual ao número de amostras que se posi-cionam dentro da esfera do gaussiano, dentro de um raio de acção r. Apenas o Gaussiano mais próximo do ponto obstáculo e a uma distância inferior a r terá os valores dos seus parâmetros actualizados, fazendo-o do seguinte modo:

- O valor de A para um dado ponto i é calculado por:

A = Bi Bi+ 1 ∗ Ai+ sens Bi+ 1 (3.15)

- O valor de B para um dado ponto i é dado por:

B = Bi+ 1 (3.16)

Estes valores apenas são calculados quando o ponto a ser processado não é um centro de um gaussiano circular, isto é, quando a distância do ponto a um centro de um gaussiano é inferior ao raio definido de cada gaussiano circular.

Quando se trata de um centro de um gaussiano circular, o valor de A é igual ao valor sens (sensibilidade do sensor de captura de dados) e o valor de B é igual a 1.

A área de actuação de cada um destes gaussianos circulares é definida pelo seu raio r. O centro de cada gaussiano é o ponto onde é maior a probabilidade de existir um obstáculo, possuindo assim uma maior relevância. Contrariamente, quanto mais nos afastarmos do centro do gaussiano, menor é a probabilidade de existir um obstáculo e, consequentemente, menor a relevância desse ponto do gaussiano.

(53)

3.4. Inserção e minimização do erro dos sensores 31

A relevância de cada ponto numa dada vizinhança é calculada por:

Relev = M X i=1 Ai∗ nRi Bi∗ nRi (3.17)

Onde M é o número total de gaussianos existentes e nR é o nível de relevância do ponto ao abrigo de cada gaussiano. Este valor, por sua vez, é dado por:

nR = e−dG∗r∗r∗1,21 (3.18)

Onde dG = ||x − xi||2é a distância ao quadrado do ponto ao centro do gaussiano

circular e r é o raio de acção do gaussiano, cuja forma se apresenta na figura 3.4.

Figura 3.4: Representação de um gaussiano com raio r, centro c e intervalo de relevância.

Parte-se do principio que todos os centros dos gaussianos têm um nível de rele-vância igual a 0, 5, no intervalo [0, 1]. Sempre que o valor nR calculado for inferior

(54)

32 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

a 0, 5, a relevância é calculada através de:

Relev = Ai Bi

∗ nRi (3.19)

Sendo i o índice do gaussiano com maior valor de relevância.

3.5

Distribuição e qualificação dos gaussianos

circu-lares

Em cada ponto O(x∗, y∗)identificado, cria-se um gaussiano com um raio r prede-finido (todos os gaussianos têm a mesma dimensão), que tem em consideração a confiança das leituras realizadas. No caso da distância dc de um ponto iden-tificado ao centro de um gaussiano ser maior que o raio r do gaussiano, cria-se um novo gaussiano. Caso essa distância dc seja menor que o raio r do gaussiano, procura-se o gaussiano mais próximo do ponto O(x∗, y)identificado e

reforçam-se os parâmetros A e B desreforçam-se gaussiano. Este processo é reprereforçam-sentado no fluxo-grama da figura 3.5.

Figura 3.5: Fluxograma de criação de gaussianos.

Através deste processo, o foco deixa de ser uma matriz M de pontos com e sem obstáculos e passa a ser uma matriz Xo com os centros dos gaussianos. Isto leva à necessidade de uma nova representação virtual do ambiente onde podemos observar áreas onde é provável existirem obstáculos.

(55)

3.5. Distribuição e qualificação dos gaussianos circulares 33

Apesar da aglomeração de regiões identificadas por gaussianos reduzir drastica-mente o erro na identificação da posição de obstáculos, ao mesmo tempo limita o sistema devido ao facto de que a criação dos primeiros gaussianos irá afectar a criação dos posteriores. Assim, se o primeiro gaussiano for criado num ponto identificado com base numa margem de erro significativa, a sua presença impede a criação de um outro gaussiano adjacente, mesmo que este apresente maior grau de confiança.

Surge então a necessidade de ajustar a posição de cada gaussiano, movendo o seu centro para esse efeito. Esta tarefa será realizada tomando em consideração o cálculo do valor médio e desvio padrão das leituras ligadas ao gaussiano e pela sua ligação aos centro e raio do gaussiano. Esta técnica será usada em modo continuado, realizado sempre que uma nova leitura é considerada.

Em seguida apresenta-se uma metodologia para o cálculo iterativo do valor cen-tral de um conjunto de dados e o respectivo desvio padrão sempre que uma nova amostra é adicionada aos elementos do conjunto.

Assim, para n pontos (pontos existentes no sistema) temos: 1. Valor médio x = 1 n ∗ n X k=1 xk (3.20) 2. Covariância σn = 1 n ∗ n X k=1 (xk− xn)2 (3.21)

Como foi referido, o objectivo deste processo é ajustar os centros dos gaussianos circulares de forma a reduzir o erro introduzido pelo material. Assim, temos que ter em conta tanto os pontos existentes no sistema como novos pontos que surjam noutro instante de tempo. Se uma nova amostra, de índice n + 1, for adicionada

(56)

34 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

ao conjunto, o valor médio e o desvio padrão são alterados, podendo estes novos valores ser dados a partir dos valores precedentes. Seguem-se as demonstrações dessas expressões, que foram usadas no contexto deste trabalho.

Para o conjunto de n + 1 pontos teremos: 1. Valor médio xn+1= 1 n + 1 ∗ n+1 X k=1 xk = 1 n + 1 ∗ n X k=1 xk+ xn+1 ! (3.22) Sendo n X k=1 xk+ xn+1 = n ∗ xn (3.23) Então, xn+1= n n + 1∗ xn+ 1 n + 1 ∗ xn+1 (3.24) Ou simplesmente xn+1= α ∗ xn+ (1 − α) ∗ xn+1 (3.25) Com α = n

n+1. Para valores crescentes de n, o parâmetro α convergirá para

(57)

3.5. Distribuição e qualificação dos gaussianos circulares 35 2. Covariância σn+1 = 1 n + 1 ∗ n X k=1 (xk− xn)2+ (xn+1− xn+1)2 ! = = 1 n + 1 ∗ n X k=1 [(xk− xn) + (xn− xn+1)]2+ (xn+1− xn+1)2 ! (3.26)

Aplicando o quadrado da diferença, vem:

σn+1 = 1 n + 1 ∗ n X k=1 (xk− xn)2− 2 ∗ (xk− xn) ∗ (xn− xn+1)+ + (xn− xn+1)2+ (xn+1− xn+1)2 ! (3.27) Contudo, como n X k=1 (xk− xn)2 = n ∗ σn+ n ∗ (xn− xn+1)2 (3.28) Temos: σn+1 = 1 n + 1 ∗ [n ∗ σn+ n ∗ (xn− xn+1) 2+ (x n+1− xn+1)2] = = n n + 1 ∗ σn+ n n + 1(xn− xn+1) 2 + 1 n + 1(xn+1− xn+1) 2 (3.29)

(58)

36 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente Todavia, como: xn+1= n n + 1∗ xn+ 1 n + 1 ∗ xn+1 (3.30) Ter-se-à: xn+1 = (n + 1) ∗ xn+1− n ∗ xn (3.31)

Substituindo este resultado na última expressão de covariância, teremos:

σn+1 = n n + 1 ∗ σn+ n n + 1(xn− xn+1) 2+ n2 n + 1(xn+1− xn) 2 = = n n + 1 ∗ σn+ n ∗ (n + 1) n + 1 ∗ (xn+1− xn) 2 (3.32) Assim, σn+1 = n n + 1 ∗ σn+ n ∗ (xn+1− xn) 2 (3.33) Ou σn+1 = α ∗ σn+ α 1 − α ∗ (xn+1− xn) 2 (3.34)

Aplicando a fórmula anterior, é possível reduzir o nível de erro nos obstá-culos identificados, sendo a sua eficácia proporcional ao tempo decorrido. Contudo, podem existir leituras de dados com um nível de erro demasiado

(59)

3.5. Distribuição e qualificação dos gaussianos circulares 37

grande para serem relevantes para o sistema, influenciando negativamente o processo de ajuste dos centros dos gaussianos circulares.

Por vezes considera-se usar o parâmetro α como um valor pré-definido (ti-picamente com valores próximo da unidade, por exemplo 0, 99) de modo a realizar um género de esquecimento gradual sobre o passado. Desta forma, podemos considerar que o valor médio como um filtro passa-baixo da forma:

xn+1 = α ∗ xn+ (1 − α) ∗ xn+1 (3.35)

Da conjugação destes resultados com o algoritmo anterior resulta um algo-ritmo composto, que se descreve a seguir.

Para um novo ponto (leitura) x, têm-se: i) Se dGi < r2, então: xi = α ∗ xi+ (1 − α) ∗ x (3.36) A = Bi Bi+ 1 ∗ Ai+ sens Bi+ 1 (3.37) Bi = Bi+ 1 (3.38)

ii) Senão (criar novo Gaussiano):

xi = x (3.39)

Ai = sens (3.40)

Bi = 1 (3.41)

(60)

38 Capítulo 3. Métodos e algoritmos de percepção do ambiente envolvente

O critério utilizado para eliminar um determinado gaussiano está representado na figura 3.6. São assim eliminados os gaussianos cujo valor B, a massa do gaus-siano, é inferior a uma dada percentagem µ do valor médio de B.

Figura 3.6: Fluxograma do algoritmo de eliminação de centros de Gaussianos Circulares indesejados.

No capítulo 4 serão apresentados os resultados da implementação de cada um dos algoritmos apresentados no reconhecimento de um ambiente de trabalho de um robot móvel, nomeadamente na criação de um mapa cognitivo onde estão assinalados os obstáculos detectados bem como a confiança dessa informação.

Imagem

Figura 2.1: Ilustração da medição do ângulo entre dois robots vizinhos [2].
Figura 2.2: O objectivo do método detecção de mudanças proposto é encontrar e segmentar mudanças no ambiente de trabalho do robot móvel, neste caso o aparecimento da pessoa em (b) [15].
Figura 2.3: Exemplo de um mapa gerado a partir de leituras correctas apenas [22].
Figura 2.4: Resultado obtido com a técnica eML [22].
+7

Referências

Outline

Documentos relacionados

Os candidatos reclassificados deverão cumprir os mesmos procedimentos estabelecidos nos subitens 5.1.1, 5.1.1.1, e 5.1.2 deste Edital, no período de 15 e 16 de junho de 2021,

Desde logo, a nossa compreensão e interpretação da importância funcional e ritual das lamentações públicas das carpideiras e dos carpideiros egípcios é sublinhada pelo

Dessa maneira, os resultados desta tese são uma síntese que propõe o uso de índices não convencionais de conforto térmico, utilizando o Índice de Temperatura de Globo Negro e

Bom, eu penso que no contexto do livro ele traz muito do que é viver essa vida no sertão, e ele traz isso com muitos detalhes, que tanto as pessoas se juntam ao grupo para

Esta degradação, é de difícil avaliação, por isso para cada caverna realiza-se uma análise da capacidade de carga, ou seja, o quanto uma área pode agüentar as

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

I, Seltan Segued, emperor of Ethiopia, believe and profess that Saint Peter, prince of the Apostles was nominated head of the Christian Church by Christ our Lord, who bestowed

Tendo em conta que os valores do teor de água que são encontrados no bacalhau que é comercializado se encontra num intervalo entre 40% e 58%, recorrendo aos ensaios anteriores e