Escolar Documentos
Profissional Documentos
Cultura Documentos
Definição de paradigma
!! Principais paradigmas da robótica:
!! Paradigma Hierárquico (Deliberativo)
!! Exemplos
Prof. Dr. Alexandre da Silva Simões !! Paradigma Reativo
UNESP !! Exemplos
!! Paradigma Híbrido (Reativo-Deliberativo)
Robótica Móvel
1 Prof. Dr. Alexandre da Silva Simões 2
!! Números romanos (!) e arábicos (!) : !! Paradigma: conjunto de suposições e/ou técnicas
I:1 V:5 X:10 L:50 C:100 D:500 M: que caracterizam uma abordagem para uma
1000 classe de problemas (Murphy, 2002)
Robótica Móvel
Robótica Móvel
Prof. Dr. Alexandre da Silva Simões 4
Prof. Dr. Alexandre da Silva Simões 3
!! Estabelecem a relação entre as primitivas !! Hierárquico
sentir, planejar e agir (ou deliberativo)
!! Sentir: como, quando e o quê observar?
!! Planejar: como determinar as ações corretas?
!! Reativo
!! Agir: como ativar os atuadores de forma
adequada?
Primitiva Entrada Saída
Sentir Dados Informações !! Híbrido
Planejar Informações (sentidas Diretivas
ou conhecidas)
Agir Informações ou diretiva Comandos aos
atuadores
Robótica Móvel Robótica Móvel
Prof. Dr. Alexandre da Silva Simões 5 Prof. Dr. Alexandre da Silva Simões 6
NA_SALA(ROBÔ, S1)
!! NA_SALA(x, s) onde x é um objeto móvel e s é uma
NA_SALA(PRESENTE, S2)
sala CONECTADA(P1, S1, S2)
!! PRÓXIMO_A(x, p) onde x é um objeto móvel e p é uma CONECTADA(P1, S2, S1)
porta SITUAÇÃO(P1, ABERTA)
!! SITUAÇÃO(p,sp) onde p é uma porta e sp assume
ABERTA ou FECHADA !! Estado final:
!! CONECTA (p, sa, sb) onde p é uma porta, sa e sb são
salas NA_SALA(ROBÔ, S2)
NA_SALA(PRESENTE, S2)
CONECTADA(P1, S1, S2)
Maiúsculo: predicados ou valores, minúsculo: variáveis CONECTADA(P1, S2, S1)
SITUAÇÃO (P1, ABERTA)
ATRAVESSAR CONECTADA (p, sa, sb) NA_SALA (ROBÔ, sb) NA_SALA (ROBÔ, sa)
(ROBÔ, p) PRÒXIMO (ROBÔ, p)
SITUAÇÂO (p, ABERTA)
NA_SALA (ROBÔ, sa)
Robótica Móvel
Robótica Móvel
Prof. Dr. Alexandre da Silva Simões 12
Prof. Dr. Alexandre da Silva Simões 11
2.! Reduzir a diferença selecionando o primeiro operador da 3.! Examinar as pré-condições para ver se um conjunto de condições
tabela de diferença cuja adição à lista inclua um predicado verdadeiras para a variável em questão pode ser encontrado.
Se nem todas forem encontradas, tomar a primeira pré-
que nega a diferença condição falsa, fazê-la o novo objetivo e armazenar o objetivo
anterior no stack. Recursivamente reduzir esta diferença repetindo
Operador Pré-condição Adicionar à lista Retirar da lista os passos 2 e 3.
IR_PARA_PORTA NA_SALA (ROBÔ, sa) PRÓXIMO (ROBÔ, p) Operador Pré-condição Adicionar à lista Retirar da lista
(ROBÔ, p) CONECTADA (p, sa, sb) IR_PARA_PORTA NA_SALA (ROBÔ, sa) PRÓXIMO (ROBÔ, p)
(ROBÔ, p) CONECTADA (p, sa, sb)
ATRAVESSAR CONECTADA (p, sa, sb) NA_SALA (ROBÔ, sb) NA_SALA (ROBÔ, sa)
(ROBÔ, p) PRÒXIMO (ROBÔ, p) ATRAVESSAR CONECTADA (p, sa, sb) NA_SALA (ROBÔ, sb) NA_SALA (ROBÔ, sa)
SITUAÇÂO (p, ABERTA) (ROBÔ, p) PRÒXIMO (ROBÔ, p)
Estado:
NA_SALA (ROBÔ, sa) SITUAÇÂO (p, ABERTA)
NA_SALA(ROBÔ, S1)
NA_SALA (ROBÔ, sa) NA_SALA(PRESENTE, S2)
OBs: variável sa instanciada com o valor S1
Variáveis instanciadas: CONECTADA(P1, S1, S2)
sa=S1, p=P1, sb = S2 CONECTADA(P1, S2, S1)
SITUAÇÂO(P1, ABERTA)
Robótica Móvel Robótica Móvel
Prof. Dr. Alexandre da Silva Simões 13 Prof. Dr. Alexandre da Silva Simões 14
Operador Pré-condição Adicionar à lista Retirar da lista Operador Pré-condição Adicionar à lista Retirar da lista
IR_PARA_PORTA NA_SALA (ROBÔ, sa) PRÓXIMO (ROBÔ, p) IR_PARA_PORTA NA_SALA (ROBÔ, sa) PRÓXIMO (ROBÔ, p)
(ROBÔ, p) CONECTADA (p, sa, sb) (ROBÔ, p) CONECTADA (p, sa, sb)
ATRAVESSAR CONECTADA (p, sa, sb) NA_SALA (ROBÔ, sb) NA_SALA (ROBÔ, sa) ATRAVESSAR CONECTADA (p, sa, sb) NA_SALA (ROBÔ, sb) NA_SALA (ROBÔ, sa)
(ROBÔ, p) PRÒXIMO (ROBÔ, p) (ROBÔ, p) PRÒXIMO (ROBÔ, p)
SITUAÇÂO (p, ABERTA) Estado : SITUAÇÂO (p, ABERTA) Estado :
NA_SALA (ROBÔ, sa) NA_SALA(ROBÔ, S1) NA_SALA (ROBÔ, sa) NA_SALA(ROBÔ, S1)
NA_SALA(PRESENTE, NA_SALA(PRESENTE,
S2) S2)
Variáveis instanciadas: CONECTADA(P1, S1, S2) Variáveis instanciadas: CONECTADA(P1, S1, S2)
sa: S1, p: P1, sb: S2 CONECTADA(P1, S2, S1) CONECTADA(P1, S2, S1)
sa: S1, p: P1, sb: S2
SITUAÇÂO(P1, ABERTA) SITUAÇÂO(P1, ABERTA)
Robótica Móvel Robótica Móvel
Prof. Dr. Alexandre da Silva Simões 15 Prof. Dr. Alexandre da Silva Simões 16
4.! Quando todas as pré-condições para um operador forem possíveis, Estado inicial:
colocar o operador no stack e atualizar uma cópia do modelo do
NA_SALA(ROBÔ, S1)
mundo. Retornar ao operador cujas pré-condições falharam e
NA_SALA(PRESENTE, S2)
então aplicar seu operador ou retornar a uma outra pré-condição
CONECTADA(P1, S1, S2)
falha.
CONECTADA(P1, S2, S1)
Operador Pré-condição Adicionar à lista Retirar da lista SITUAÇÂO(P1, ABERTA)
IR_PARA_PORTA NA_SALA (ROBÔ, sa) PRÓXIMO (ROBÔ, p)
(ROBÔ, p) CONECTADA (p, sa, sb)
ATRAVESSAR CONECTADA (p, sa, sb) NA_SALA (ROBÔ, sb) NA_SALA (ROBÔ, sa)
(ROBÔ, p) PRÒXIMO (ROBÔ, p)
SITUAÇÂO (p, ABERTA)
NA_SALA (ROBÔ, sa)
Estado final :
NA_SALA(ROBÔ, S1)
NA_SALA(PRESENTE, S2)
CONECTADA(P1, S1, S2)
CONECTADA(P1, S2, S1)
SITUAÇÂO(P1, ABERTA)
PRÓXIMO (ROBÔ, P1)
NA_SALA (ROBÔ, S2)
Robótica Móvel
Robótica Móvel
Prof. Dr. Alexandre da Silva Simões 27
Prof. Dr. Alexandre da Silva Simões 28
!! A literatura etológica sugere que a inteligência seja !! Camadas provêm comportamentos que vão do
formada em camadas verticais: nível mais baixo (sobrevivência) ao mais alto;
!! Se algo acontecer com um comportamento de nível
Construir mapas mais alto, o inferior ainda estará operando
!! C o m p o r t a m e n t o p o d e m i n i b i r o u t r o s
SENSORES ATUADORES
Explorar
Perambular comportamentos ou acioná-los de forma paralela
Evitar colisões para produzir comportamentos de mais alto nível;
!! A percepção dos comportamentos é propositada
(sensoriamento pode ser local)
!! Paradigma reativo não é propício a provas
Alto nível SENTIR AGIR Construir mapas
AGIR
matemáticas demonstrando que alguns
comportamentos são suficientes e corretos para
SENTIR Explorar
(1980-?)
Arquiteturas para
programação reativa
•! Procura fundir as vantagens dos robôs deliberativos com a
simplicidade dos robôs reativos;
•! Robô decompõe uma tarefa em subtarefas (de forma deliberativa),
e depois decide quais são os comportamentos (reativos) mais
adequados para cumprir cada subtarefa, estabelecendo uma
organização planejar, sentir-agir. abrir
Robótica Móvel
Robótica Móvel
Prof. Dr. Alexandre da Silva Simões 31
Prof. Dr. Alexandre da Silva Simões 32
!! MURPHY, Robin R. Introduction to AI robotics. MIT
Press, 2002.
!! DUDEK, Gregory; JENKIN, Michael. Computational
Principles of mobile robotics. Cambridge Press,
2000.
!! RUSSEL, S. NORVIG, P. Artificial Intelligence: a
modern approach. Prentice Hall, 2002.
!! B R O O K S , R o d n e y A . I n t e l l i g e n c e w i t h o u t
representation. Artificial Intelligence, 47:139-159,
1991.
!! BRATKO, I. PROLOG: programming for artificial
intelligence. Addison Wesley, 2nd edition, 1990.
Robótica Móvel
Prof. Dr. Alexandre da Silva Simões 33