You are on page 1of 8

VII SBAI/ II IEEE LARS.

So Lus, setembro de 2005



NAVEGAO REATIVA DE ROBS MVEIS AUTNOMOS
UTILIZANDO LGICA NEBULOSA COM REGRAS PONDERADAS
Paulo Thiago Fracasso

Anna Helena Reali Costa
paulo.fracasso@poli.usp.br anna.reali@poli.usp.br

Laboratrio de Tcnicas Inteligentes LTI
Escola Politcnica da Universidade de So Paulo
Av. Prof. Luciano Gualberto 158, trav. 3 CEP 05508-900
So Paulo, SP, Brasil




ABSTRACT
This paper describes a behavior-based reactive navigation
system for an autonomous mobile robot, which uses fuzzy
logic combined with an inference rule weighting factor.
With the introduction of the weighting factor there is a
decrease in the number of rules needed to model the
navigation system, resulting in faster answers. The inputs of
the fuzzy navigation system are: the data from the eight
proximity sensors of the robot, the distance and the angular
difference between the current pose and the desired next
pose, which is defined by a path planning system. The
intensity of the translational and rotational movements of
the robot are the outputs of the fuzzy navigation system.
The experimental results obtained demonstrate the
feasibility of the proposed navigation approach to real
situations and implementations.
KEYWORDS: Mobile robots, fuzzy logic, reactive
architecture, behavior coordination, navigation.
RESUMO
Este trabalho descreve um sistema de navegao reativa
comportamental de robs mveis autnomos utilizando
lgica nebulosa combinada com uma ponderao entre as
regra de inferncia. Com a introduo dessas ponderaes
h uma diminuio na quantidade de regras necessrias
para a modelagem do sistema de navegao, resultando em
respostas rpidas. As entradas do sistema nebuloso de
navegao so: os dados provenientes de oito sensores de
proximidade do rob, a distncia e a diferena angular entre
a postura atual e a prxima postura desejada, que definida
por um sistema de planejamento de caminhos. As
intensidades dos movimentos de translao e de rotao do
rob so as sadas do sistema nebuloso de navegao. Os
resultados experimentais obtidos demonstram que o sistema
de navegao proposto factvel para situaes e
implementaes reais.
PALAVRAS-CHAVE: Robs mveis, lgica nebulosa,
arquitetura reativa, coordenao de comportamentos,
navegao.
1 INTRODUO
A navegao de robs mveis autnomos um grande
desafio, devido principalmente ao ambiente ser dinmico,
haver sensoriamento ruidoso e exigncias de controle e
tomada de decises em tempo real. Um sistema de
navegao responsvel por fornecer ao rob mvel os
comandos de movimentos necessrios para a sua
locomoo, de forma precisa e suave, ao mesmo tempo que
permite reaes rpidas s mudanas do ambiente para
evitar colises, garantindo que o destino seja atingido de
forma satisfatria. Sistemas de navegao so organizados
em arquiteturas que, juntamente com outros mdulos,
possibilitam ao rob executar tarefas, tomar decises e
interagir adequadamente com o ambiente onde est imerso.
Na robtica mvel, basicamente dois paradigmas guiam os
projetos de diversos tipos de arquitetura: o reativo e o
deliberativo [Murphy, 2000]. O paradigma reativo emula a
reao imediata dos animais aos estmulos do ambiente. As
arquiteturas reativas so geralmente utilizadas como uma
camada de nvel inferior na navegao de robs mveis,
com a vantagem de responderem em tempo real, por
mapearem diretamente a leitura dos sensores em aes do
rob [Arkin, 1999]. J o paradigma deliberativo intercala o
processo da tomada de deciso, desde a percepo at a
ao, com uma etapa de planejamento. Em arquiteturas
deliberativas este planejamento geralmente demanda grande
tempo de processamento, dificultando a atuao do rob em
tempo real. Solues de compromisso so muito exploradas
atualmente, definindo arquiteturas hbridas [Selvatici, 2005]
e [Connell, 1992], conjugando os paradigmas reativo e
deliberativo.
Para tarefas de navegao em ambientes dinmicos, os
robs necessitam reagir rapidamente a mudanas, tornando-
se adequado o uso de uma arquitetura reativa no sistema de
controle. Desta forma, o objetivo deste trabalho foi explorar
a parte reativa de uma arquitetura hbrida futura de forma a
adequar o sistema de navegao a responder rapidamente
em ambientes dinmicos, onde a arquitetura reativa
decomposta em mdulos concorrentes que correspondem
aos comportamentos [Saffiotti, Konolige e Ruspini, 1995].
VII SBAI/ II IEEE LARS. So Lus, setembro de 2005 2
Como vrios comportamentos podem ser ativados
simultaneamente, deve-se ainda estipular como as aes
indicadas pelos comportamentos podero ser coordenadas.
A coordenao competitiva, como na arquitetura de
subsuno [Brooks, 1986] tem a desvantagem de tornar o
trajeto pouco suave, uma vez que pode haver
descontinuidades quando se chaveia de um comportamento
para outro. Porm, coordenaes cooperativas nem sempre
so fceis de se projetar [Pacheco e Costa, 2002] e
[Selvatici, 2005]. Este trabalho prope o uso da lgica
nebulosa para definir a coordenao entre os
comportamentos, explorando as funcionalidades oferecidas
pelo uso de informaes vagas e imprecisas nas regras
lingsticas e que so obtidas pelo conhecimento e
experincia prvios do problema.
Atualmente, muitas abordagens do problema de navegao
de robs mveis utilizando lgica nebulosa so descritas na
literatura: Parasuraman, Ganapathy e Shirinzadeh [2004]
utilizam um algoritmo de navegao baseado em
comportamentos dividido em duas camadas nebulosas: a
primeira camada determina a ponderao entre os
comportamentos; j a segunda camada pondera a sada de
cada comportamento. Nessa abordagem o algoritmo
determina quais comportamentos devem atuar e nos
comportamentos atuantes determina as intensidades das
sadas, mas com a desvantagem de possuir muitas regras de
inferncia para a modelagem da navegao. J Zhu e Yang
[2004] propuseram um sistema de navegao reativa
baseada em comportamentos utilizando lgica nebulosa
sendo que o sistema nebuloso possui como entrada uma
interpretao dos dados sensoriais, adquiridos por meio de
uma fuso sensorial feita a priori. Alm disso, tal sistema
incorpora estratgias para eliminar a indeciso simtrica e
os ciclos viciosos atravs do uso de regras obrigatrias e
da atualizao de uma varivel de estado. Selekwa e Collins
Jr. [2003] descrevem um sistema navegao baseado em
fuso de comportamentos, divididos em dois blocos: o
bloco consultivo, composto por vrios comportamentos, e
que decide quais comandos devero estar disponveis para o
bloco subseqente e o bloco de comando, que determina
qual o melhor comando que satisfaa o maior nmero
possvel de comportamentos. Nessa abordagem tambm se
sobressaem os problemas da existncia de muitas regras de
inferncia e da dificuldade de determinar quais comandos
devem estar presentes na modelagem, mas apresentam a
vantagem de apenas um comando estar atuante por vez.
O sistema de navegao aqui proposto constitui-se de uma
arquitetura reativa comportamental, cujo sistema de
controle efetuado com lgica nebulosa associado regras
de inferncia ponderadas, que se encarrega de coordenar
cooperativamente os diversos comportamentos disparados
pelos dados sensoriados. O sistema foi desenvolvido e
testado no rob mvel Pioneer 2DX e em um ambiente
criado especialmente para impor dificuldades na obteno
de respostas mais prximas s diversas situaes que o rob
poder encontrar.
Este trabalho est organizado da seguinte forma: na seo 2
apresentada uma breve descrio sobre o rob Pioneer
2DX. A seo 3 descreve a modelagem do sistema
nebuloso de navegao. Na seo 4 so exibidos os
resultados dos experimentos realizados. Finalmente, a seo
5 apresenta as concluses e consideraes finais a respeito
do sistema de navegao proposto.
2 ROB PIONEER 2DX
O rob Pioneer 2DX utilizado no-holonmico,
diferencial, possui oito sensores de proximidade frontais,
dois odmetros (um para roda esquerda e para a roda
direita) para registrar os movimentos efetuados e conexo
com um computador externo, atravs de uma porta serial
para o processamento embarcado [ActivMedia Robotics,
2000]. Com exceo dos dois sensores laterais (S1 e S8), os
demais sensores (S2, S3, S4, S5, S6 e S7) esto dispostos
de forma que a direo entre os dois sonares consecutivos
forme um ngulo de 20, conforme a Figura 1.

Figura 1 Disposio dos sonares no rob Pioneer 2DX.
3 SISTEMA NEBULOSO DE NAVEGAO
O sistema nebuloso de navegao aqui proposto fornece os
comandos a serem efetuados pelo rob mvel para atingir
um certo alvo a partir de uma postura conhecida. Para
representar a postura do rob mvel que se move sobre um
plano definido um vetor composto por sua posio num
plano bi-dimensional e por sua orientao em relao ao
ambiente ( ) ( ) ( ) ( , , k k k y x ), a cada instante k [Dudek e Jenkin,
2000]. Este sistema composto por trs mdulos
independentes, conforme mostra a Figura 2: planejamento
do caminho, mdulo de navegao nebulosa reativa e
mdulo de localizao.

Figura 2 Sistema de navegao.
O mdulo de planejamento de caminho fornece uma lista
composta por posturas intermedirias que o rob mvel
VII SBAI/ II IEEE LARS. So Lus, setembro de 2005 3
deve alcanar para atingir o seu objetivo. O mdulo de
navegao nebulosa reativa responsvel por calcular os
movimentos efetuados pelo rob para atingir um certo alvo
a partir de uma origem conhecida. J o mdulo de
localizao, baseado em filtro de Kalman estendido [Brown
e Hwang, 1997], calcula a estimativa da postura do rob
mvel atravs das informaes dos sensores de
proximidade, dos odmetros e de uma representao interna
do ambiente. Este trabalho concentra-se apenas na
descrio do mdulo de navegao desenvolvido.
No mdulo de navegao nebulosa reativa, as intensidades
dos movimentos de translao e rotao so calculadas por
um controlador nebuloso, mostrado na Figura 3. Este
controlador nebuloso recebe os valores da distncia
( ) (k D ) e da diferena de direo ( ) (k ) entre a
postura atual ( ) ( ) ( ) ( , , k k k y x ) e a prxima postura
( ) 1 ( ) 1 ( ) 1 ( , , + + + k k k y x ), e as medidas dos oitos sensores
de proximidade (S1, S2, S3, S4, S5, S6, S7 e S8).

Figura 3 Mdulo de navegao nebulosa reativa.
A obteno dos valores da distncia e da diferena de
direo entre a postura atual e a prxima postura, conforme
ilustra a Figura 4, so descritos pelas equaes (1) e (2)
respectivamente:
( ) ( )
2
) ( ) 1 (
2
) ( ) 1 ( ) ( k k k k k y y x x D + = + +
(1)
|
.
|

\
|

=
+
+

) ( ) 1 (
) ( ) 1 (
1
) ( ) ( tan
k k
k k
k k
x x
y y
(2)

Figura 4 Distncia (D) e diferena de direo ( )
entre a postura atual e a prxima postura.
O sistema nebuloso de navegao tem como sada as
intensidades dos movimentos de translao ( ) (k MOVE ) e
rotao ( ) (k TURN ) efetuados pelo rob mvel. Para
simplificar a modelagem da cinemtica do rob mvel no
foram consideradas as velocidades e aceleraes dos
movimentos, como tambm os movimentos de translao e
de rotao foram considerados separadamente. Desta
forma, primeiro o rob mvel efetua o movimento de
rotao e posteriormente, o movimento de translao. Alm
disso, o rob mvel possui uma camada que proporciona
uma abstrao da tenso eltrica aplicada em cada um dos
motores, facilitando assim os comandos enviados para a
navegao do rob mvel.
3.1 Controlador Nebuloso
Um controlador nebuloso tpico descrito na Figura 5.
Primeiramente as variveis de entrada so fuzzyficadas para
que os valores do universo clssico (crisp) sejam
convertidos para valores do universo nebuloso. Estes
valores so processados pelo mdulo de inferncia que,
atravs do conjunto de regras descritos em linguagem
natural e dos operadores nebulosos, fornece os valores
nebulosos de sada. Os valores nebulosos de sada so ento
defuzzificados para serem obtidos os valores das variveis
de sada, novamente no universo dos nmeros clssicos.

Figura 5 Controlador Nebuloso.
3.2 Variveis Lingsticas de Entrada
A modelagem das entradas do problema de navegao
nebulosa reativa consiste na elaborao de seis funes de
pertinncia para as dez variveis lingsticas de entrada (os
oito sensores de proximidade S1 S8, a distncia D e a
diferena de direo entre a postura atual e da
prxima postura).
As variveis lingsticas dos sensores de proximidade
foram divididas em quatro pares (S1/S8, S2/S7, S3/S6 e
S4/S5) em funo da disposio do sensor no rob mvel,
conforme Figura 1. Estes quatro pares de variveis
lingsticas tm universo de discurso de 0 a 3000mm e
possuem dois valores lingsticos: near (N) e far (F). A
necessidade de apenas dois valores lingsticos justificada
para proporcionar ao rob somente a percepo da
proximidade de objetos que possam provocar coliso.
Devido ao sentido de movimento do rob, e visando maior
segurana, definiu-se maior sensibilidade proximidade de
objetos para as variveis lingsticas dos sensores mais
prximos ao eixo de locomoo do rob do que as variveis
lingsticas dos sensores localizados ortogonalmente a este
eixo.
As variveis lingsticas S1 e S8, correspondentes aos
sensores ortogonais ao eixo de locomoo do rob, so
descritas pela funo de pertinncia da Figura 6_a. A
percepo dos objetos prximos iniciada com distncias
menores que 500mm e pice quando houver coliso.
As variveis lingsticas S2 e S7 so descritas pela funo
de pertinncia da Figura 6_b. A percepo dos objetos
prximos iniciada com distncias menores que 600mm e
pice quando houver coliso.
VII SBAI/ II IEEE LARS. So Lus, setembro de 2005 4
As variveis lingsticas S3 e S6 so descritas pela funo
de pertinncia da Figura 6_c. A percepo dos objetos
prximos iniciada com distncias menores que 750mm e
pice quando houver coliso.

Figura 6 Funes de pertinncia das variveis
lingsticas de entrada: a) S1 e S8, b) S2 e S7,
c) S3 e S6, d) S4 e S5, e) D e f) .
As variveis lingsticas S4 e S5, correspondente aos
sensores mais prximos ao eixo de locomoo do rob, so
descritas pela funo de pertinncia da Figura 6_d. A
percepo dos objetos prximos iniciada com distncias
menores que 1000mm e pice quando houver coliso.
A varivel lingstica D descrita pela funo de
pertinncia da Figura 6_e. Esta funo de pertinncia tem
universo de discurso de 0 a 5000mm e possui trs valores
lingsticos: near (N), medium (M) e far (F). Atravs desses
trs valores lingsticos possvel representar de forma
adequada a distncia que o rob mvel est do seu alvo.
Estes valores lingsticos foram modelados em funo do
tamanho fsico do rob mvel.
A varivel lingstica descrita pela funo de
pertinncia da Figura 6_f. Esta funo de pertinncia tem
universo de discurso de -180 a 180 e possui sete valores
lingsticos: negative big (NB), negative medium (NM),
negative small (NS), zero (ZE), positive small (PS),
positive medium (PM) e positive big (PB). Com os sete
valores lingsticos tambm possvel representar de forma
adequada a diferena angular de direo do rob mvel em
relao ao alvo.
3.3 Variveis Lingsticas de Sada
As duas funes de pertinncia de sada, com as suas
respectivas variveis lingsticas (intensidade do
movimento de translao MOVE e de rotao TURN),
completam a modelagem do sistema de navegao.
A varivel lingstica MOVE descrita pela funo de
pertinncia da Figura 7_a. Esta funo de pertinncia tem
universo de discurso de 0 a 500mm e possui trs valores
lingsticos: small (S), medium (M) e big (B). Atravs dos
trs valores lingsticos possvel representar movimentos
de translao somente no sentido positivo (para frente), o
que possibilita a aproximao do rob mvel s posturas
pr-determinadas. Quando houver necessidade de
movimentos no sentido negativo (para trs), o rob
primeiramente dever executar um movimento de rotao
de 180, para depois efetuar os movimentos de translao,
agora no sentido oposto.

Figura 7 Funes de pertinncia das variveis
lingsticas de sada: a) MOVE e b) TURN.
A varivel lingstica TURN descrita pela funo de
pertinncia da Figura 7_b. Esta funo de pertinncia tem
universo de discurso de -180 a 180 e possui sete valores
lingsticos: negative big (NB), negative medium (NM),
negative small (NS), zero (ZE), positive small (PS), positive
medium (PM) e positive big (PB). Atravs desses sete
valores lingsticos possvel representar os movimento de
rotao tanto no sentido horrio (positivo) como no sentido
anti-horrio (negativo), fazendo com que o rob mvel
corrija sua direo e tambm desvie de objetos que possam
provocar coliso.
VII SBAI/ II IEEE LARS. So Lus, setembro de 2005 5
3.4 Regras de Inferncia
A Tabela 1 descreve as regras que possibilitam a navegao
do rob Pioneer 2DX a partir das informaes dos sensores
de proximidade, da distncia e da diferena angular da
direo entre a postura atual e a prxima postura. As regras
para o sistema nebuloso de inferncia tm como base trs
tipos de comportamentos distintos: aproximao (regras 1
3), correo da direo (regras 4 9) e anticoliso (regras
10 19).
O comportamento de aproximao acionado quando a
diferena angular da direo entre a postura atual e a
prxima postura muito pequena e tambm, quando no h
nenhum objeto prximo ao rob. J o comportamento de
correo de direo acionado quando a direo atual em
relao prxima postura no est correta e tambm,
quando no h nenhum objeto prximo ao rob, permitindo
que o mesmo possa corrigir a sua direo, evitando que o
rob distancie-se ainda mais da prxima postura.
Finalmente, o comportamento de anticoliso faz com que o
rob afaste-se dos objetos muito prximos a ele, evitando
assim possveis colises.
Tabela 1 Base de regras para o sistema nebuloso.

Os trs comportamentos so combinados a partir de uma
ponderao da composio das regras de inferncias
nebulosas, com valores variando de zero a um (coluna peso
da Tabela 1). A limitao dos valores de ponderao visa
restringir os valores resultantes de sada para que os
mesmos no ultrapassassem os fundos de escalas das suas
respectivas funes de pertinncia.
A ponderao caracteriza a relevncia de cada regra na
deciso combinada de controle e obtida atravs da anlise
dos grficos das variveis lingsticas de entrada versus
variveis lingsticas de sada, em relao ao conjunto de
regras definido. Inicialmente, todos as regras possuem alta
relevncia (peso=1.0). Nos grficos que apresentarem
descontinuidades, a relevncia das regras que as produzem
so diminudas at que essa descontinuidade seja suprimida
do grfico. As relevncias so traduzidas em pesos de
ponderao das regras. Dessa forma, possvel a
realizao de um ajuste fino do controlador sem que haja
a necessidade de incluso de novas regras.
3.5 Inferncia Nebulosa
No processo de inferncia ocorrem as operaes de deciso
do controlador nebuloso. A base de regras essencial ao
controlador, uma vez que ela que governa as relaes
entre as variveis lingsticas de entrada e de sada.
Neste trabalho o mtodo de inferncia empregado o
mtodo dos mnimos de Mandani, onde o operador lgico
mnimo ( ) utilizado como o mtodo de implicao para
cada regra e essas regras so agregadas atravs do operador
lgico mximo ( ), conforme o conjunto de equaes (3)
[Lee, 1990]:

( ) ( )
( ) ( ) TURN A TURN A y
MOVE A MOVE A x




=
=
19 1
19 1
...
...
(3)
onde x e y representam a agregao de inferncia das
variveis de sada MOVE e TURN respectivamente e An o
valor de ativao da regra n, obtido conforme equao (4):
( ) ( ) ( ) ( ) n d n D s n S s n S An = 8 8 1 1 ... (4)
onde n S1 , ... , n S8 , Dn e n representam as variveis
lingsticas de entrada ativadas pela regra n e s1, ... , s8,
d e so os valores nebulosos correspondentes s
variveis lingsticas de entrada.
3.6 Defuzzificao
A defuzzificao o responsvel por converter as
informaes obtidas do processo de inferncia para um
valor no universo clssico (crisp), associado a uma
determinada sada.
Neste trabalho o mtodo de defuzzificao utilizado o
mtodo do centro de gravidade [Lee, 1990], onde se
procura encontrar o valor do centro de gravidade da
distribuio de sada, conforme o conjunto de equaes (5):
( )
( )
( )
( )

=
=
=
=
19
1
19
1
19
1
19
1
_
_
_
_
_
_
i
i
i
i
i turn y
i turn y
i move x
i move x
i turn
i move
TURN
MOVE

(5)
onde move_i e turn_i so os valores nebulosos das variveis
lingsticas de sada referentes regra i.
4 EXPERIMENTOS E RESULTADOS
Para validar o sistema de navegao reativa utilizando
lgica nebulosa foram propostos dois experimentos: um
com pontos de origem e alvo iguais e outro com pontos de
origem e alvo diferentes.
VII SBAI/ II IEEE LARS. So Lus, setembro de 2005 6
Para realizar uma anlise comparativa, os experimentos
foram efetuados em dois ambientes de execuo: no
simulador do rob mvel em MatLab e no rob real. O
simulador do rob mvel em MatLab um ambiente de
simulaes preciso, ou seja, ideal. J a execuo com o
rob real apresenta as condies que existem de fato, ou
seja, com a introduo de imprecises.
Todos os testes efetuados tm preciso de 100mm, ou seja,
quando o rob se encontra dentro da circunferncia de raio
100mm centrada nos pontos intermedirios ou no alvo, o
algoritmo considera que este ponto foi atingido.
4.1 Simulador do Rob Mvel em MatLab
Como citado anteriormente, o simulador do rob mvel em
MatLab preciso, ou seja, no h a introduo de rudos
nos sensores de proximidade, nos odmetros e nem nos
movimentos de translao e de rotao, fazendo com que o
equacionamento das posturas do rob possa ser efetuado
por dead reckoning [Dudek e Jenkin, 2000]. Com esta
tcnica h a integrao das medidas relativas das posturas
atravs das medidas dos odmetros. Como o simulador no
introduz imprecises nas medidas dos odmetros, essa
tcnica no causa diferenas nos valores das posturas do
rob mvel durante o trajeto.
Os valores da postura atual so obtidos recursivamente
atravs da interao entre a postura anterior e os dados
provenientes dos odmetros da roda direita (OD) e da roda
esquerda (OE).
Devido aos movimentos de translao e rotao serem
independentes, para os movimentos de rotao, a postura
atual calculada conforme o conjunto de equaes (6):

( )
R
OD OE k k
k k
k k
k k
y y
x x


+ =
=
=


) ( ) (
) 1 ( ) (
) 1 ( ) (
) 1 ( ) (
90
(6)
J para os movimentos de translao, a postura atual
calculada conforme o conjunto de equaes (7):

( )
( )
( )
( )
) 1 ( ) (
) 1 (
) ( ) (
) 1 ( ) (
) 1 (
) ( ) (
) 1 ( ) (
2
2
cos

+
+
=

+
=

+
=
k k
k
k k
k k
k
k k
k k
sen y y
x x
OD OE
OD OE

(7)
4.2 Rob Real
Ao contrrio do simulador do rob mvel em MatLab, o
rob real introduz imprecises s posturas. Essas
imprecises so decorrentes dos sensores de proximidade,
dos odmetros, de escorregamentos das rodas e
imperfeies fsicas do rob e tambm do ambiente.
No caso do rob real, os valores da postura atual so
obtidos recursivamente atravs da interao entre a postura
anterior, os dados provenientes dos movimentos de
translao (MOVE), da correo de translao ( ), do
movimento de rotao (TURN) e da correo de
rotao ( ). Os valores de correo de translao e de
rotao so fornecidos pelo mdulo de localizao, baseado
em filtro de Kalman estendido [Fracasso e Rosa, 2004].
Para os movimentos de rotao, a postura atual calculada
conforme o conjunto de equaes (8):

) ( ) ( ) 1 ( ) (
) 1 ( ) (
) 1 ( ) (
k k k k
k k
k k
TURN
y y
x x
+ + =
=
=

(8)
J para os movimentos de translao, a postura atual
calculada conforme o conjunto de equaes (9):

( ) ( )
( ) ( )
) 1 ( ) (
) ( ) ( ) 1 ( ) 1 ( ) (
) ( ) ( ) 1 ( ) 1 ( ) ( cos

+
+
=
+ =
+ =
k k
k k k k k
k k k k k
MOVE
MOVE
sen y y
x x

(9)
4.3 Ambiente de Testes
O ambiente de testes para a validao da navegao reativa
utilizando lgica nebulosa um espao livre e cercado, com
lados iguais a 6000mm de comprimento cada. Neste espao
so inseridas placas de madeira para os dois tipos de
experimentos propostos: experimento com pontos de
origem e alvo iguais (Figura 8) e experimento com pontos
de origem e alvo diferentes (Figura 9).

Figura 8 Ambiente de testes do experimento
com pontos de origem e alvo iguais.


Figura 9 Ambiente de testes do experimento
com pontos de origem e alvo diferentes.
VII SBAI/ II IEEE LARS. So Lus, setembro de 2005 7
4.4 Experimento com Pontos de Origem
e Alvo Iguais
Esse experimento consiste na navegao do rob mvel em
volta de um quadrado de 2000mm de lado, inserido no
centro do ambiente de testes, com origem e alvo
coincidentes no mesmo ponto (1) e trajetria descrita por
quatro posturas (1 4), conforme ilustra a Figura 10. Nesta
figura tambm so ilustrados os resultados do experimento
com pontos de origem e alvo iguais.
Neste experimento os trs comportamentos (aproximao,
correo da direo e anticoliso) tiveram suas
funcionalidades exploradas, alm da capacidade do rob
mvel retornar ao mesmo local depois de percorrida a
trajetria. Pode-se observar uma ligeira diferena entre as
execues efetuadas no simulador do rob em MatLab e no
rob real. Alm das diferenas causadas pela introduo de
imprecises, principalmente atravs de escorregamento das
rodas nos movimentos de rotao, h tambm a grande
influncia das imprecises causadas pelos sensores de
proximidade quando estes detectam cantos e quinas. Nos
sensores de proximidade os erros tendem a aumentar
medida que os objetos ficam mais paralelos ao feixe do
sonar. As diferenas entre as simulaes no foram maiores
devido presena do mdulo de localizao que, aps cada
iterao, corrige a postura do rob mvel. Outra
caracterstica que bem evidenciada pelos resultados o
comportamento de anticoliso, que faz com que o rob
mvel desvie das quinas do quadrado interno do ambiente
de testes. Finalmente, pode-se observar que o rob mvel
atingiu a postura alvo de forma satisfatria tanto para
a simulao em MatLab quanto para o experimento
no rob real.

Figura 10 Resultado do experimento com
pontos de origem e alvo iguais.
4.5 Experimento com Pontos de Origem
e Alvo Diferentes
Esse experimento consiste na navegao do rob mvel em
torno de duas paredes horizontais de 4000mm de
comprimento, dispostas nas posies verticais 2000mm e
4000mm do ambiente de testes, com origem (1) e alvo (12)
diferentes e trajetria descrita por doze posturas (1 12),
conforme mostra a Figura 11. Nesta figura tambm so
ilustrados os resultados do experimento com pontos de
origem e alvo diferentes.
Neste experimento a principal capacidade observada foi a
realizao de curvas pelo rob, uma vez que este tipo de
movimento introduz grande parcela de erro ao controlador e
eventualmente pode denegrir a atuao do mdulo de
navegao reativa. Como no experimento anterior, pode-se
tambm observar uma ligeira diferena entre as execues
efetuadas no simulador do rob mvel em MatLab e no
rob real, devido novamente introduo de imprecises
principalmente atravs de escorregamento das rodas nos
movimentos de rotao e translao e pelos sensores de
proximidade, quando estes detectam cantos e quinas. As
maiores diferenas ocorrem quando o rob mvel efetua as
duas semi-circunferncias, devido a imprecises nos dados
fornecidos pelos odmetros nos movimentos de rotao.
Essas imprecises so em grande parte corrigidas pelo
mdulo de localizao quando o rob mvel efetua os
movimentos de translao, uma vez que esse tipo de
movimento introduz menos impreciso s leituras dos
odmetros. Como no experimento anterior, o rob mvel
tambm atingiu a postura alvo de forma satisfatria, em
ambos os casos.

Figura 11 Resultado do experimento com
pontos de origem e alvo diferentes.
5 CONCLUSES
Atravs da navegao reativa utilizando lgica nebulosa
com ponderao nas regras de inferncia, pode-se concluir
que, com a enumerao de poucas regras, consegue-se obter
elevada velocidade de processamento do sistema de
controle nebuloso (cerca de 30ms por iterao, incluindo a
aquisio dos dados e o clculo dos movimentos a serem
efetuados), o que proporciona respostas rpidas do rob
mvel aos estmulos do ambiente.
Com a adoo da ponderao das regras de inferncia do
sistema nebuloso de navegao, h uma reduo
significativa no nmero de regras que modelam a
navegao em comparao com abordagens semelhantes
VII SBAI/ II IEEE LARS. So Lus, setembro de 2005 8
[Parasuraman, Ganapathy e Shirinzadeh, 2004], [Zhu e
Yang, 2004] e [Selekwa e Collins Jr., 2003]. Alm disso,
ocorrem melhorias nos movimentos de sada, tornando-os
mais suaves, ou seja, sem mudanas bruscas e repentinas
quando chaveiam de comportamento. A ponderao das
regras possibilita o uso de um nmero menor de regras,
quando comparado com controladores que no usam esta
tcnica. Apesar dessas vantagens, os valores de ponderao
das regras so de difcil determinao.
Observa-se que o sistema de navegao nebuloso produz
respostas que no foram explicitamente descritas na base de
conhecimento. Comparativamente, outras abordagens
exigiriam a descrio das respostas do rob para cada tipo
de estmulo, tornando assim o problema bastante complexo
para a grande quantidade de variveis envolvidas no
problema abordado.
Dentre as dificuldades encontradas na abordagem proposta,
pode-se citar: encontrar a melhor descrio das variveis
lingsticas de entrada e de sada, a melhor e mais concisa
elaborao da base de regras de inferncia, como tambm a
obteno das ponderaes entre as regras de inferncia.
Durante os experimentos com o rob real houve a
necessidade da introduo do mdulo de localizao, uma
vez que a impreciso da localizao por dead reckoning,
utilizando somente os odmetros, grande. O mdulo de
navegao, previamente implementado por Fracasso e Rosa
[2004], reduziu significativamente a introduo de erros
pelo rob e pelo ambiente, fazendo com que os resultados
para os dois experimentos fossem satisfatrios.
Um fato marcante observado nos experimentos foi que
dentre todas as imprecises introduzidas no algoritmo, a
mais significativa foi a impreciso nos movimentos de
rotao, que conseqentemente afetava as medidas dos
odmetros. Alm disso, os sensores de proximidade
tambm apresentaram dados ruidosos, o que implica a
necessidade de um filtro nos sensores de proximidade para
eliminao dos dados esprios.
Os prximos passos incluem a definio e implementao
do mdulo de planejamento de caminho, de modo a
adquirir automaticamente a descrio dos pontos
intermedirios a alcanar para a realizao da tarefa.
Esforos tambm sero dirigidos para a adaptao
automtica da ponderao das regras de inferncia, de
acordo com a situao do ambiente e da descrio da tarefa
da navegao.
AGRADECIMENTOS
Este trabalho foi parcialmente financiado pelo projeto
MultiBot, CAPES-GRICES N.099/03.
REFERNCIA BIBLIOGRFICA
ActivMedia Robotics. Pioneer 2DX Mobile Robot:
Operational Manual, 2000.
Arkin, Ronald C. Behavior-Based Robotics. The
Massachusetts Institute of Technology Press, 1999.
Brooks, R. A Robust Layered Control System for a Mobile
Robot. IEEE Journal of Robotics and Automation,
vol. 1, pp. 1-10, 1986.
Brown, Robert Grove; Hwang, Patrick. Introduction to
Random Signals and Applied Kalman Filtering. John
Wiley & Sons, 3rd edition, 1997.
Connell, Jonathan. SSS: A Hybrid Architecture Applied to
Robot Navigation. Proceedings of the IEEE
Conference on Robotics and Automation (ICRA),
pp. 2719-2724, 1992.
Dudek, Gregory; Jenkin, Michael. Computational
Principles of Mobile Robotics, Cambridge
University Press, 2000.
Fracasso, Paulo Thiago; Rosa, Hugo Velasco. Navegao e
Localizao do Rob Pioneer 2DX. Projeto de
Formatura Engenharia Eltrica. Escola Politcnica
da Universidade de So Paulo, 2004.
Lee, Chien Chuen. Fuzzy Logic in Control Systems: Fuzzy
Logic Controller Part II. IEEE Transaction on
Systems, Man and Cybernetics, vol. 20, n.2, pp. 419-
435, March 1990.
Murphy, R. Introduction to AI Robotics. The Massachusetts
Institute of Technology Press, 2000.
Pacheco, Rafael Neto; Costa, Anna Helena Reali.
Navegao de Robs Mveis Utilizando o Mtodo
de Campos Potenciais. Workshop de Computao
WORKCOMP'2002, pp. 125-130, Instituto
Tecnolgico de Aeronutica, 2002.
Parasuraman, S.; Ganapathy, V.; Shirinzadeh, Bijan.
Behavior Based Mobile Robot Navigation
Technique for Real World Environments Using
Fuzzy Logic System. 2004 IEEE International
Conference on Systems, Man and Cybernetics,
pp. 3359-3364, 2004.
Saffiotti, Alessandro; Konolige, Kurt; Ruspini, Enrique. A
Multivalued Logic Approach to Integrating Planning
and Control. Artificial Intelligence, vol. 76,
pp. 481-526, 1995.
Selekwa, Majura; Collins Jr., Emmanuel. Centralized Fuzzy
Behavior Control for Robot Navigation. Proceedings
of the 2003 IEEE International Symposium on
Intelligent Control, Houston, TX, pp. 602-607, 2003.
Selvatici, Antonio Henrique Pinto. AAREACT: Uma
Arquitetura Comportamental Adaptativa para Robs
Mveis que Integra Viso, Sonares e Odometria.
Dissertao de Mestrado Engenharia Eltrica.
Escola Politcnica da Universidade de So Paulo,
2005.
Zhu, Anmin; Yang, Simon. A Fuzzy Logic Approach to
Reactive Navigation of Behavior-Based Mobile
Robots. Proceedings of the 2004 IEEE International
Conference on Robotics & Automation, New
Orleans, LA, pp. 5045-5050, 2004.

You might also like