agentes autónomos e sistemas multi-agente agentes reactivos e híbridos ist- 2003/2004 ana paiva
Post on 17-Apr-2015
112 Views
Preview:
TRANSCRIPT
Agentes Autónomos e Sistemas Agentes Autónomos e Sistemas Multi-agenteMulti-agente
Agentes Reactivos e HíbridosAgentes Reactivos e Híbridos
IST- 2003/2004IST- 2003/2004Ana PaivaAna Paiva
A. Paiva
Críticas aos Agentes Deliberativos
Rapidez na resposta em tempo real Comportamento racional pre-programado não está
ligado adequadamente ao ambiente do agente Os agentes não devem ser vistos sem as suas
restrições corporais e de local onde o agente se encontra
Comportamento inteligente não deve ser programado mas deve emergir de comportamentos simples.
A. Paiva
Agentes puramente reactivos
Alguns tipos de agentes decidem o que fazer sem qualquer referência ao seu historial. As suas decisões são situadas no ambiente e dependem simplesmente do presente.
- São chamados agentes “puramente reactivos”
Do ponto de vista formal um agente puramente reactivo pode ser visto como uma função:
Ag : E -> Ac
(ou seja em vez de RE o agente decide simplesmente baseando-se em E).
A. Paiva
Percepção/Acção
Ambiente
See Action
Agente
see : E -> Per Action : Per* -> Ac
A. Paiva
“Elephants don’t play chess”- Rodney Brooks
Recusa da hipótese do sistema simbólico
Ideia: “O mundo é o meu melhor modelo”
A. Paiva
Arquitectura de Subsumpção de Brooks
Teses:
1. Comportamento inteligente pode ser gerado sem representações explícitas e sem recorrer a IA simbólica
2. Comportamento inteligente pode ser gerado sem qualquer tipo de raciocínio abstracto usado em IA clássica
3. A “inteligência” é uma propriedade emergente de certos sistemas complexos.
A. Paiva
Ideia 1
Situação Situação Acção Acção
A. Paiva
Vários comportamentos podem Vários comportamentos podem disparar simultâneamentedisparar simultâneamente
Ideia 2
A. Paiva
Arquitectura de Brooks
Sensores EfectoresEXPLORAR
VAGUEAR
EVITAR
Política de controle
Camada de comportamentos
A. Paiva
Arquitectura de Brooks
Reflecte não uma decomposição funcional das suas componentes mas sim uma decomposição de comportamentos
A estratégia de construção:
ir dotando incrementalmente os agentes de mais comportamentos. Em cada passo de construção obtém-se um sistema mais ou menos completo (baseado numa máquina de estados finita).
A. Paiva
Action selection na arquitectura de Brooks
function: Action Selection in the Subsumption Architecture
function action (p:P):Avar fired: p(R)var selected: ABegin
fired <- {(c,a) | (c,a) R and p c} for each (c,a) fired do
if ( (c’,a’) fired such that (c’,a’) < (c,a)) then
return a end-if end-for return nullend function action
A. Paiva
Desenvolvimento de Sistemas usando a arquitectura de Brooks
1. Cria-se um módulo relativamente a uma actividade em particular. Este módulo deverá ligar a percepção à acção e o sistema resultante funcionar por si.
1. Acrescentar mais componentes, cada um deles ligando a percepção à acção. Por cada componente junta, ajustar as prioridades dos comportamentos.
A. Paiva
Exemplo: O explorador de Marte de L. Steels
Uso de 2 conceitos: • o campo de gradiente,- para os agentes saberem em que
direcção a nave deles se encontra;• Comunicação directa entre agentes
A. Paiva
Behaviours
if detect an obstacle then change direction (1)
if carrying samples and at the base then drop samples(2)
if carrying samples and not at the base then travel up gradient(3)
if detect a sample then pick sample up(4)
if true then move randomly(5)
1< 2 < 3 < 4 < 5
A. Paiva
Exemplo: Robot Genghis
Robot com seis pernas com aproximadamente 1 Kg. Anda em terreno usando 12 motores, 12 sensores de força, e
vários outros sensores.
Não existe sistema central de controlo nem memória (o controlo das pernas é feito cada uma por si... E portanto programada cada uma por si...)
Video.
A. Paiva
Exemplos:
Vários robots foram feitos no grupo de R. Brooks segundo sempre a mesma aproximação.
Exemplo mais recente: Kismet (videos)
A. Paiva
Limitações dos agentes reactivos
Alcance bastante limitado. Como os agentes não usam modelos do ambiente,
devem poder obter suficiente informação a cada instante para conseguirem determinar a melhor acção.
Não conseguem ter comportamentos orientados aos objectivos
São agentes difíceis de construir porque com pequenos comportamentos e regras que os relacionam é difícil prever o que vai resultar.
A. Paiva
Motivação para as arquitecturas Híbridas
Os agentes necessitam de:• Realizar tarefas complexas• Tomar atenção às mudanças que ocorrem no
ambiente e reagir em tempo real;• Ter em conta os seus recursos limitados (pelo que
necessitam da colaboração de outros agentes para a execução das tarefas)
Assim, se por um lado os agentes têm que necessariamente permanecer reactivos para sobreviver, por outro lado têm que tomar decisões estratégicas complexas e que a maioria das vezes são orientadas aos objectivos.
A. Paiva
Arquitecturas Híbridas: Requisitos
Comportamento situado: os agentes devem reconhecer os eventos e reajir em tempo apropriadamente.
Comportamento orientado aos objectivos: os agentes devem seleccionar as suas acções baseando-se nos fins que desejam alcançar e os meios disponíveis para o fazer.
Eficiência- as tarefas devem ser executadas eficientemente , mesmo com constrangimentos de ordem temporal.
Coordenação: os agentes devem ser capazes de coordenar as suas actividades com os outros agentes.
A. Paiva
Will
Memória
DisposiçõesPerceptor
Executor
MUNDO
Previsor
Planeador
Reactor
A. Paiva
Arquitecturas Híbridas com níveis
As arquitecturas híbridas têm normalmente associados níveis:
• Servem para estruturar as tarefas ou comportamentos dos agentes
• Estão organizados hierarquicamente• Interagem uns com os outros de forma a atingir um
comportamento geral do agente mais coerente
Normalmente: níveis deliberativos e reactivos
A. Paiva
Touring Machines De Innes Fergunson em 1994 3 Níveis: nível reactivo; nível de planeamento e nível
de modelação
Os três níveis operam concurrentemente e cada um deles está ligado ao subsistema sensorial do agente, do qual recebe informação, bem como ao subsistema de acção ao qual é possível enviar comandos de acção.
A. Paiva
Touring Machines: Arquitectura
Modelling layer
Planning layer
Reactive layer
Perception Subsystem Action Subsystem
Clock
Context Activated Control-rules
A. Paiva
Nível Reactivo
O Nível reactivo (R) foi desenhado para executar acções que são respostas específicas ao domínio e aos estímulos do ambiente.
Este nível dá ao agente a capacidade de reagir rapidamente em situações não planeadas pelos níveis superiores.
A. Paiva
Nível de Planeamento
É responsável por gerar, executar e dinamicamente readaptar planos parciais
Estes planos destinam-se a atingir uma alocação de tarefas que o agente tem que executar a longo prazo.
Os planos são guardados como planos parciais hierárquicos, numa biblioteca de planos.
A. Paiva
Nível de Modelação
O nível de modelação contém a representação do mundo sob a forma de 4-tuplos <C,B,D,I> indexados a unidades de tempo.
C- configuração, descreve a localização do objecto, sua velocidade, aceleração etc. das entidades do ambiente;
B- conjunto de crenças atribuídas à entidade; D- desejos, representados através de uma lista de
objectivos e suas prioridades I- um plano hierárquico que forma a estrutura de
intenções.
A. Paiva
Controlo das regras
As regras de controlo (suppressor e censor) são construídas pelo programadar, tal que:
- Pelo menos uma dispare numa dada situação- Pelo menos uma acção deve permanecer no
subsistema de acção.
A. Paiva
Regras Censor
Parte condicional: conjunções de expressões que testam a presença de objectos sensoriais particulares.
Parte de acção: é composta por operações para fazer com que objectos sensoriais não sejam colocados como input aos níveis de controlo.
Regra censor-rule-1: if entity(obstacle-6) in perception-buffer then remove-sensory-entity(layer-R,
entity(osbtacle-6))
A. Paiva
Regras Suppressor
Parte condicional: com expressões que testam a presença de determinados comandos (acções do agente)
Parte da acção: é composta por operações que restringem a que certos comandos sejam executados pelos effectors do agente.
rule suppressor-rule-3 :if action-command(layer-R, rule-6, change-orientation())
in action-buffer and current-intention(start-overtake) then
remove-action-command(layer-R, change-orientation())
and remove-action-command(layer-M, _).
A. Paiva
Aplicação da arquitectura
Em situações de simulação de robots com obstáculos: Touring world.
Foi desenvolvida uma ferramenta que permite a criação de certas configurações de agentes
A dinâmica do mundo é obtida através da utilização de um simulador de eventos, que incorpora um actualizador de mundos possíveis
A. Paiva
InteRaP
Estende um conjunto de aproximações de construção de agentes por níveis introduzindo um nível de cooperação.
Dá ao desenhador dos agentes a possibilidade de construir níveis com comportamento reactivo e deliberativo, tal como as arquitecturas apresentadas anteriormente.
O modelo do agente em InterRaP é definido por um conjunto de níveis funcionais ligados por uma estrutura de controlo e partilhando uma based de conhecimentos hierárquica.
A. Paiva
Arquitectura
Cooperation Knowledge
LocalPlans
Patterns ofBehaviour
WorldModel
Cooperation Component CC
Plan-basedComponent PBC
Behaviour BasedComponent BBC
Action Communication Perception
ENVIRONMENT
A. Paiva
Componentes da Arquitectura
WIF (World Interface) – contém as facilidades de percepção, acção e comunicação.
BBC- (Behaviour- Based Component) executa e controla o comportamento reactivo básico. Este comportamento é baseado em “patterns of behaviour”
PBC (Plan Based Component): contém um mecanismo de planeamento que permite o agente ter planos locais. Estes planos são baseados em esqueletos hierárquicos em que os nós podem ser sub-planos ou patterns of behaviour. Ou seja o PBC pode activar patterns of behaviour para atingir um determinado objectivo.
KB (Knowledge Base)- é uma estrutura hierarquicamente estruturada e é composta por quatro níveis, que básicamente correspondem à estrutura de controlo dos agentes.
CC (Cooperation Component): permite a cooperação entre agentes.
A. Paiva
World Interface
A. Paiva
World Interface
A. Paiva
Knowledge Base
A. Paiva
InteRRaP- Componente Baseada no Comportamento (BBC)
Objectivos
• Incorporar as actividades reactivas do agente que permitem lidar com situações de emergência e de tempo real.
• Dar ao agente conhecimento procedimental que lhe permite executar tarefas de rotina.
A. Paiva
Patterns of Behaviour: Tipos
Ligar situações a acções
Reactors: são activadas por eventos externos que causam a execução de uma acção por parte do agente (ex. Parar)
Control modifiers- extendem o controlo do planeador, fazendo uma chamada para cima para o PBC (ex. Treat_order)
Knowledge modifiers- mudam o estado interno do agente e são activadas por alterações do mundo detectadas pelo agente.
Procedures- executam acções especificadas pelo planeador.
A. Paiva
Patterns of Behaviour
A. Paiva
Aspectos da BBC
Tem que reconhecer situações de emergência e responder rápidamente a essas situações.
A parte da base de conhecimento acessível à BBC é o modelo do mundo
O número de situações a serem reconhecidas neste nível é bastante limitado
Situações que não emparelham com nenhum padrão de comportamento causam um pedido ao PBC
Os compromissos feitos pelo PBC para executar procedimentos causam a activação de procedimentos no BBC.
A. Paiva
Componente de Planeamento
Incorpora as capacidades de planeamento do agente
Funções principais são: (1) a obtençao de um plano para um dado objectivo e (2) controlar a execução desse plano.
Componentes• PBC-control- faz a interface com BBC recebendo e
enviando mensagens aos outros níveis.• Plan-generator- gera planos através da selecção de um
conjunto de planos da biblioteca.• Plan-evaluator- é usado para seleccionar os melhores
planos gerados.
A. Paiva
Controlo
A. Paiva
Aplicação: the Loading Dock
A. Paiva
Aplicação
A. Paiva
Aplicação: conflictos
A. Paiva
Aplicação: criação de PoBs
A. Paiva
Aplicação: criação de PoBs
A. Paiva
Aplicação: robots
A. Paiva
Vantagens das arquitecturas Híbridas
Consegue responder em tempo real sem deixar de ter comportamento orientado aos objectivos.
A reactividade do agente pode ser previligiada enquanto em deliberação, ou seja o nível reactivo pode continuar a monitorar o mundo.
Se há tipos diferentes de partições do conhecimento do mundo é possível restringir a quantidade de conhecimento que cada nível requer individualmente.
A. Paiva
Bibliografia da Aula
An Introduction to Multi-agent Systems, M. Wooldridge, John Wiley & Sons, 2002
A Mente e o Mundo lá Fora, H. Coelho e A. Paiva. Designing Autonomous Agents: Theory and Practice from Biology to
Engineering and Back, Ed. P. Maes, MIT Press, 1990. The Design of Intelligent Agents: a Layered Approach, Jörg Müller,
Springer, 1996.
top related