• Nenhum resultado encontrado

5 Modelo Proposto

5.2 Formalização do Problema

No Capítulo 1, o problema foi enunciado considerando um agente robótico autônomo inserido em um ambiente inicialmente desconhecido. Tal agente deve então navegar e explorar seu ambiente produzindo representações que o capacitem a se auto-localizar, planejar e executar navegação pró-ativa e estratégias de exploração. O agente deve ainda produzir uma representação, 3D do ambiente, para posterior inspeção visual.

Nesta tese, o problema acima é analisado e discutido considerando como principal inspiração o conhecimento atual sobre como os seres vivos aprendem sobre o ambiente no qual estão inseridos. Assim, esta tese tem por objetivo a proposição de um modelo conceitual e de mecanismos de inteligência computacional, bio-inspirados, para capacitar o agente robótico a desempenhar as tarefas de navegação e exploração pró-ativas.

As próximas quatro subseções definem o agente robótico, os sistemas motor e sensor, e o ambiente considerado. Na sequência, as subseções 5.2.5 a 5.2.8 apresentam um conjunto de definições, as quais têm por objetivo formalizar os elementos constituintes do problema em mãos, e subsidiar a proposição dos mecanismos de realização do modelo proposto na subseção 5.3.

5.2.1 Agente Robótico

Pesquisas anteriores tais como: Yeap & Jefferies (1999); Provost et al. (2007); Beevers (2007); têm assumido modelos de mundo em duas dimensões, sendo o agente robótico representado por um ponto ou por um pequeno círculo. Tais simplificações não capturam algumas situações de um experimento real, como por exemplo, possíveis impedimentos às ações de virar à direita ou à esquerda. Nesta tese, considera-se um agente robótico ݎ, imerso no mundo real em três dimensões. Deste modo, o agente robótico é modelado com um corpo cuja forma pode ser abstraída para um paralelepípedo com dimensões ݈, ݈, ݈ (Figura 4) correspondendo respectivamente a comprimento, largura e altura. O agente robótico é equipado com sistema sensor e motor, os quais o capacitam a obter percepções sobre o ambiente ao seu redor, bem como a movimentar-se nesse ambiente.

1

l

l

2

3

l

Figura 4 – Descrição do corpo do agente robótico para um paralelepípedo e localização dos sensores de varredura laser acoplados.

5.2.2 Sistema Sensor

O sistema sensor foi definido como composto por seis sensores de varredura laser ortogonais às faces do paralelepípedo, como ilustrado na Figura 4. Cada sensor tem ângulo de varredura de 180º com passo ajustável para até 1º, e pode ser rotacionado em até 180º entorno de um eixo ortogonal à face em que está instalado. Deste modo é possível captar ݊ conjuntos de amostras (leituras sensoriais), um para cada grau de rotação.

Cada sistema sensor ݏ produz um fluxo de dados ࣠௦೔ ൌ ሼܠ ଴ ௦೔ǡ ǥ ǡ ܠ ௧ ௦೔ǡ ǥ ሽ, onde ܠ ௧௦೔ é

um vetor contendo as leituras do sistema sensor ݏ no instante de tempo ݐ. Cada componente ݔ de ܠ௦೔ é constituída por

ݔ݅ൌ ሺܝǡ ݀ሻǡ ԡܝԡൌ ͳǡ ݔ݅ אܠݐݏ݅ǡ (4)

em que ܝ é o vetor direção da linha de varredura e ݀ é a distância medida até o obstáculo que intercepta o feixe da varredura laser ou, na ausência de obstáculos, a distância de alcance máximo do sensor.

5.2.3 Sistema Motor

Assume-se que o agente robótico é dotado de um sistema motor que o capacita a flutuar no espaço. Tal sistema motor apresenta uma interface de alto nível, a qual aceita comandos tais como: navegar para frente e para trás, manobrar à direita ou à esquerda, para cima ou para baixo. É considerado que cada comando pode ser emitido com um fator no intervalo [0,1] indicando a potência motora a ser empregada na ação. Assim, a execução de movimentos com velocidades variáveis é possível, entretanto, as ações de parada e retomada do movimento são consideradas instantâneas. Considera-se, ainda, que a execução de um comando produz um sinal de realimentação informando sobre o resultado de cada ação especificada. A execução de um comando pode, então, ser abstraída para uma função que toma como entrada um vetor comando ૅ, executa as ações referentes ao comando e produz como retorno um vetor ૅԢ contendo a informação sobre o resultado de cada ação.

ૅ ൌ ሾܿǡ ǥ ǡ ܿǡ ǥ ǡ ܿሿǡܿ

݅אሾͲǡͳሿǡ݅ ൏ ݊ ǡ (5)

em que ݊ é o número de ações possíveis.

ૅƲ ൌ ሾݎ଴ǡ ǥ ǡ ݎ௜ǡ ǥ ǡݎ௡ሿǡݎ݅א ሼǡ ǡ ሽ ǡ (6)

em que  significa transposto e a valoração  indica que a ação não foi solicitada para execução.

5.2.4 Ambiente

O agente robótico ݎ está inserido em um ambiente do ܣ, o qual apresenta uma configuração estruturada e delimitada, composta por salas, corredores e passagens entre recintos.

A Figura 5 mostra a renderização do ambiente simulado para fins de validação do modelo proposto nesta tese. Uma câmera instalada na face frontal do agente robótico produz a visão renderizada na Figura 5 (a). A visão em (b) é produzida por uma câmera que acompanha a movimentação do agente. Esta câmera pode ser movimentada em torno do agente permitindo inspecionar suas atividades sob diferentes pontos de vista. A visão da Figura 5 (c) é proporcionada por uma câmera panorâmica que mantêm uma visão do layout do ambiente no entorno do agente, deslocando-se quando necessário de modo a manter o agente sempre visível.

Figura 5 - Ambiente virtual: a) visão dada pela câmera frontal; b) visão dada pela câmera que acompanha o agente robótico; c) visão dada pela câmera de observação “grande irmão”.

O ambiente de simulação descrito acima foi desenvolvido a partir da plataforma Ogre3D (www.ogre3d.org), a qual é um framework para o desenvolvimento de jogos em três dimensões. A simulação da dinâmica considera apenas a detecção de colisões do agente com a estrutura do ambiente. Sendo que a simulação de elementos tais como inercia aceleração e força de gravidade, é remetida a trabalhos futuros. O Apêndice B aborda os detalhes que envolvem a criação, compilação e configuração do ambiente para simulação.

5.2.5 Percepção

Percepções são interpretações sobre os dados provenientes de um sistema sensor ݏ, produzidas por computações específicas as quais são consideradas inatas. O resultado dessas computações são fluxos de percepções (fluxos perceptivos), cada qual capturando uma característica ou conjunto de características específicas e representam o modo como o agente

(a)

robótico “enxerga” o meio ao seu redor. Por exemplo, um determinado processo pode ser especializado na extração e codificação de contornos, outro pode ter por base a representação de cores e assim por diante.

Definição 2  Percepção

Uma percepção ݌ constitui-se de uma característica Ա do ambiente, capturada pelo vetor ܠ௦೔, extraída e codificada por um pré-processamento ԭሺܠ௦೔ሻ.

݌ ՞ ׌ԭሺܠݐݏ݅ൌ Աؿ ࢞

௧ ௦೔ǡ ׊࢞

௧௦೔ א࣠ݏ݅ǡ (7)

lê-se: têm-se a percepção ݌ se e somente se existe um processo ԭሺܠ௦೔ሻ que extrai e codifica a característica Ա contida na leitura ࢞௦೔ proveniente do fluxo ࣠௦೔ do i-ésimo sistema sensor ݏ,

gerando a sua representação.