um pouco do que é prec iso saber sobre robôs móveis . . .
Luís [email protected]
DEPARTAMENTO DE INFORMÁTICA
bib l iograf ia
● R.C. Arkin, Behavior-Based Robotics, MIT Press, 1998
● George A. Bekey, Autonomous robots from biological inspiration to implementation and control, MIT Press, 2005
● Roland Y. Siegwart and Illah Reza Nourbakhsh, Introduction to Autonomous Mobile Robots (Intelligent Robotics & Autonomous Agents), Bradford Books, 2004
● V. Braitenberg, Vehicles, MIT Press, 1984● Rodney A. Brooks, Cambrian intelligence: the early
history of the new AI, MIT Press, 1999● Rodney A. Brooks, Flesh and machines: how robots
will change us, Vintage Books, 2002
VA corpor i zada
● é a única área da VA sobre o mesmo ambiente físico que o nosso
● tecnologia de materiais não orgânicos● não tem propriedades de
– auto-regeneração– reprodução
● ainda assim gostaríamos que parecessem seres artificiais
the four F ' s o f l i fe b y D a v e C l i f f
● Feeding
● Fighting
● Fleeing
● Reproduction
robôs há mui tos ! . . .
. . . mas são uns mamarrachos!
i de ia gera l . . . de ser ar t i f i c ia l
sensores
actuadores
granular idade comparadaa v i d a n a t u r a l v s . a r t i f i c i a l
Natureza
partículas sub-atómicas
átomos e moléculas
tecnologia do carbono
-
interacções físico-químicas
moléculas orgânicas
células (neurónios)
órgãos
organismo integrado
Artificial
-
-
tecnologia do silício
tecnologia de materiais
interacção eléctrica
circuitos integrados
"hardware"/"software"
"software"
electrónica + mecânica
pré-h is tór ia
● o pato de Vaucanson (~1730)
antecedentes próx imos
● as tartarugas de Grey Walter ~1950
machina speculatrix – Elmer e Elsie
comportamento muito simples:
- se colide com um obstáculo afasta-se
- aproxima-se de fontes de luz, excepto
se a fonte de luz for muito forte afasta-se
mas resultado da interacão com o ambiente é complexo
tar tarugas em acção
© Burden Neurological Institute
a “est ragação” da IA
● robôs baseados em modelos de planeamento da IA
– modelos perfeitos do mundo– raciocínio perfeito– modelos perfeitos de actuação
mas há– imprecisão dos sensores– dificuldade de formar percepção do ambiente– imprecisão da actuação
FALHARAM!
i n te l igênc ias há mui tas . . .
● os elefantes não jogam xadrez... e no entanto são inteligentes
Rodney Brooks
● capacidade de movimentação e sobrevivência num mundo dinâmico é uma base necessária ao desenvolvimento da inteligência
Brooks & Moravec
i n te l igênc ia . . .
mimese da inteligência humana (IA)
imitação do comportamento animal (VA)
animais ar t i f i c ia i s
● formiga artificial● iguana artificial● gato artificial
● robocteria
Daniel Dennet
l i ções de um mundo crue l
● estado do mundo imprevisível– Difícil abstrair o interessante de um conjunto de
detalhes– Paradoxo: pobreza sensorial
● difícil lidar com o imprevisto– planeamento é severamente limitado– mas. . . o animal (veículo) não deve ficar
bloqueado– fisicamente, ou em decisões
i n teragindo com o mundo
● sensores– poucos e rudimentares para percepcionar o
mundo
● actuadores– grotescos para mover o robô
● tecnologia– muito limitada (exclusivamente electrónica)
pobres seres artificiais!...
sensores
● medem grandezas físicas
– passivamente● termómetro, fotómetro, ...
– activamente● radar, sonar, ...
t ipos de grandeza
● radiação electromagnética
● ondas de pressão
● contacto
● posição
contacto
● por interruptor (binário)
● mais sofisticado
fio + membrana + microfone
● ... ainda mais sofisticado
i n f ra -vermelhos ( IV)
● radiação Electro-Magnética (EM)
● sensor (10 – 80cm)
mede-seintensidadeem B
aprox. 2cm
IV (act ivo)
● sensível à iluminação ambiente– luz solar, lâmpadas (50Hz da rede eléctrica)
saturam o sensor– utilizáveis apenas com pouca luz
● sensível às cores– preto mate quase não reflecte (não é detectado)– superfícies espelhadas fazem diminuir
artificialmente a distância percepcionada(objectos afastados parecem mais próximos)
i n ter rupção de fe ixe
● baseado em IV
● pode detectar pequenos ângulos em rotações
codificador de roda
⇒ odometria
ul t ra -sons (US)
● mede distância
por ondas de pressão (activo) – freq. > 30KHz
10cm – 5m aprox.
● sensor
mede o tempo de vôo
medi r d i s tânc ias com US
● lento
3 a 4 medições por seg. (máx)
pouco eficaz para obstáculos móveis
● sensível ao tipo de material do obstáculo
tecidos absorvem o som
prob lema comum
a IV e US:
● dificuldade em detectar obstáculos oblíquos
sinal reflectido é fraco
distância medida > distância real (IV)
receptor pode não detectar eco (US)
outros sensores
visãoGPS
laser range finder
flexómetro
clinómetro
actuadores
● para locomoção
pernas lagartas rodas
● para manipulação
l ocomoção sem motores
● andante passivo
motor DC
● motor de corrente contínua
● alimentado a tensão constante● corrente proporcional à força realizada
– se bloqueado, pára e consome o máximo de corrente
servo-motor
● motor DC, com controlo próprio
permite manter uma posição fixa (“step motor”)
ou uma velocidade constante
engrenagens
● motores com v >> e binário <<
engrenagens redutoras (dividem velocidade e multiplicam binário)
redução de60:12 = 5:160 dentes 12 dentes ⇒
apesar dos motores rotat ivos . . .
● locomoção “estilo” insecto
miniWhegs
● saltitão
stumpy
● ou um pouco mais... formal
asimo
contro lo
● o que fica no meio– entre sensores e actuadores
● o que toma as decisões
● o que põe tudo a mexer!
+morfologiaelectrónica
energia
contro lo react ivo
● ligação directa (ou quase) entre sensores e actuadores
● não “pensa”, reage
● comportamento de tipo insecto
veícu los Bra i tenberg
● exemplo de controlo reactivo
paradigma func iona l ( IA)
ciclo demasiadolongo - lento
tentat ivas de s impl i f i car . . .
● no mundo– espaço - quadricular, cúbico, . . .– blocos – cúbicos, . . .– sistemas de posicionamento absoluto
...
⇒ irrealista
outras tentat ivas de s impl i f i car . . .
● no robô– simples ⇒ robusto (menos assunções)– programador não prevê todas as situações– imprevistos resolvidos naturalmente...
⇒ comportamento emergente
contro lo por comportamentos
● um pouco mais elaborado do que o reactivo
● permite comportamento global complexo
● simples de especificar
abordagem comportamenta l
ou senso-motora– tem uma ligação muito próxima entre sensores
e actuadores
● composta por comportamentos– cada um com ciclo percepção-acção
especializado– funcionam em paralelo– cardinalidade do espaço de decisão maior do
que num sistema não modular (. . . )– comportamento global emergente
vár ios módulos comportamenta is . . .
... necessário decidir:
afinal qual é a acção a efectuar?
duas soluções:● arbitragem
o comportamento mais prioritário é o que actua
● combinação
compromisso entre saídas dos vários comportamentos activos
r iqueza comportamenta l
● arbitragem– exclusão mútua de comportamentos
● se um deles se expressa os outros não podem fazê-lo
– comportamentos que se interrompem● mais prioritários interrompem outros
● combinação– saída dos vários comportamentos é combinada
● comportamentos ortogonais● expressam-se em simultâneo independentemente dos
outros – não competem pelos mesmos actuadores
esp í r i to da abordagem comportamenta l
● o conhecimento é distribuído– não há entidade central com todo o
conhecimento
– sendo um modelo de programação... nem todos respeitam esta ideia
modular idade + / -
● controlo por competição entre comportamentos– comportamentos são independentes– cada um tem uma perspectiva miópica do
problema– origina comportamento global. . . por vezes,
difícil de prever
● modular– permite desenvolvimento incremental das
capacidades
modelo vs . rea l idade
● módulos de comportamento construídos
≠
● comportamentos observados em animais– modelo modular– suporte físico não lhe corresponde
necessariamente (conjunto de neurónios & células)
no entanto...
i nsp i ração na eto log ia
etologia
estudo do comportamento animal no seu habitat
● comportamentos básicos em resposta a um estímulo:– reflexo - imediata e unitária– padrão de acção fixo - acções sequenciais, de
forma balística– programa motor - idem, mas sem ser de forma
balística
evolução
seres vivos● evolução genética
– adaptação das espécies
● co-evolução– nichos ecológicos
seres artificiais● algoritmos
evolucionários+RNs– impraticável– lento e complexo
● comportamentos– conhecimento
humano– desenvolvi/ rápido
comportamentos , pros & cons
+ modularidade+ complexidade
emergente+ fácil desenvolvi/+ subsimbólicos+ comportamento
global plausível+ bom para ambientes
pouco estruturados
- falta de perspectiva global
- imprevisibilidade- dificuldade de
afinação- incapacidade para
probls simbólicos- incerteza sobre grd
nº comportamentos
ava l iação de arqu i tecturas comportamenta is (Ark in) I
– suporte ao paralelismo– articulação com “hardware”
● implementação em robôs● compilação para “hardware”
– adaptação a um nicho– suporte à modularidade– robustez
● tolerância a falhas
– utensílios de desenvolvimento– flexibilidade em execução– desempenho efectivo
modelos comportamenta is
Brooks subsunção
Connell subsunção modificada
Maes sequenciação de comportamentos e aprendizagem
Steels processos estabilizadores/ perturbadores
Arkin integração de comportamentosem planeadores
Kaelbling
Smithers/Hallam comportamentos reactivosredes neuronais
Beer
poster iormente
Correia fadiga comportamentalbloqueadores com histerese
Connell SSS – arquitectura híbridaintegração de controloe planeamento numabase comportamental
Pirjanian combinação de acções decomportamentos
Saffiotti comportamentos “fuzzy”
arqu i tectura de subsunçãoR o d n e y B r o o k s ~ 1 9 8 6
exemplo de nível 0
subsunçãoc o m 2 n í v e i s
exemplo de nível 0 com nível 1
subsunçãoc o m 3 n í v e i s
exemplo denível 0 comnível 1 e comnível 2
subsunçãom ó d u l o s e l i g a ç õ e s
● inibidor
inibe saída durante otempo especificado
● supressor
suprime e substitui aentrada durante otempo especificado
AFSM - AugmentedFiniteStateMachine
subsunção modi f i cadaC o n n e l l ~ 1 9 9 0
braço manipulador recolhe uma lata numa mesa
Maes 1990
sequenciação decomportamentos
Stee ls ~1993
estabilizador / perturbador
arqu i tectura SSSC o n n e l l ~ 1 9 9 2
prob lemas comportamenta is
● bloqueios (“deadlocks”)– comportamentos que se opõem
solução: fadiga comportamental o que se fatiga mais tarde vence
● oscilações– comportamentos que se opõem, alternando
solução: histerese na comutação evita oscilações em situações de equilíbrio
com fad iga e h is tereseC o r r e i a ~ 1 9 9 5
módulo comportamental separa Acção da Actividade
a fad iga
bloqueador
elemento da estrutura de arbitragem
uns quantos comportamentos ao baru lho
P (RC) > P (EO) > P (SO) = P (V ) = P (F )
arrumador – o robô
arrumador - comportamentos
14 comportamentos31 bloqueadores180 ligações
“ fa lhas” conhec idas
● distância (à parede) de depósito de caixas variável
● chão como caixa
● caixa como parede
● outros objectos como caixas
● caixas voadoras
programar com comportamentos
● não sobre-especificar um comportamento
● um comportamento deve poder funcionar isoladamente ou com outros
● comportamento pode “aproveitar” acções de comportamentos independentes
● minimizar a intervenção de cada comportamento
usar mais comportamentos, se necessário
espec i f i cando um comportamento
# comportamento Evitar Obstáculos
repete semprese sensorE detecta obstáculo então
vira direita se sensorD detecta obstáculo então vira esquerdafim repete
isto só não chega!
um comportamento complementar do anter ior
# comportamento Evitar Obstáculos Frontais
repete semprese (sensorE detecta obstáculo e sensorD detecta obstáculo) então
párarecuaenquanto sensorE detecta obstáculo e sensorTras não detecta obstáculo vira direitafim enquantopára
fim repete
um comportamento entre out ros
● não sobre-especificar um comportamento– Evitar_Obstáculos não se preocupa em voltar ao
rumo– Evitar_Obstáculos_Frontais não volta a pôr o
robô a andar (para a frente)
● um comportamento deve poder funcionar isoladamente (ou com outros)– ambos Evitar_Obstáculos respeitam isto
● comportamento pode “aproveitar” acções de comportamentos independentes– Evitar_Obstáculos e Evitar_Obstáculos_Frontais
comportamentos vs . monol i to
● riqueza da interacção– descentralizada (desnecessária entidade central
com “todo” o conhecimento)
● paralelismo dos comportamentos
● assincronismo
comportamento global emergente
robôs d i spon íve is
Khepera
~5cm diâmetroeste é a versão 2
robôs d i spon íve is
● NXT da Lego
robôs d i spon íve is
entre outros– Hemison– Lego Mindstorms– RWI– AAI R-2
um s imulador
simulador do Khepera
exemplo:co-evolução depredador-presa comcontrolo por RNs
outro s imulador
Webots
um ambiente de agentes
NetLogo
um chei r inho da programação em NetLogo. . .
to uphillnestscent ;; turtle procedure flattenworld ;; sniff left and right, and go where the ;; strongest smell is let scentahead nestscentof patchahead 1 let scentright nestscentof patchrightandahead 45 1 let scentleft nestscentof patchleftandahead 45 1 if ((scentright > scentahead) or (scentleft > scentahead)) [ ifelse (scentright > scentleft) [ rt 45 ] [ lt 45 ] ]end
NetLogo e mul t i - agentes
● comportamento colectivo emergente
● tipos de interacção– convivência (ignorar semelhantes = obstáculos)– cooperação– competição
● simulação de populações de seres artificiais