pucc 1 agenda agentes que respondem por estímulo agentes inteligentes
TRANSCRIPT
1PUCC
Agenda
•Agentes que Respondem por Estímulo
•Agentes Inteligentes
2PUCC
Robô
R
3PUCC
s1 s2 s3
s8 R s4
s7 s6 s5
Robô
X
4PUCC
Robô
Vetor de features (x1,...xi,...xn)
SensoresProcessamento de Percepção
Função de Ação
Ação
5PUCC
Robô
• Dois problemas precisam ser resolvidos– Converter o dado de entrada no vetor de
features.
– Especificar as funções de ação.
6PUCC
Percepção
• A entrada de dados dos sensores consistem dos valores s1,.....s8.
• Portanto existem 256 combinações possíveis.
• Para o nosso problema, existem 4 features que são úteis para o nosso problema.
7PUCC
Percepção
• x1=1 se e somente se s2=1 ou s3=1
• x2=1 se e somente se s4=1 ou s5=1
• x3=1 se e somente se s6=1 ou s7=1
• x4=1 se e somente se s8=1 ou s1=1
8PUCC
Ação
• Conhecidas as 4 features devemos especificar uma função delas que selecione uma ação apropriada:– Se x1=1 e x2=0 mova para LESTE
– Se x2=1 e x3=0 mova para SUL
– Se x3=1 e x4=0 mova para OESTE
– Se x4=1 e x1=0 mova para NORTE
9PUCC
Funções de Ação
• Várias maneiras de representar e implementar funções de ação foram estudadas.
• Se existem R possíveis ações a serem tomadas, então devemos encontrar uma função adequada do vetor de features para computar a ação.
10PUCC
Sistemas de Produção
• Lista ordenada de regras, chamadas regras de produção.
• Cada regra: ci ai, onde: ci é a condição e ai é a ação.c1 a1c2 a2
ci ai
cm am
11PUCC
Nosso Exemplo
x4x1 NORTE
x3x4 OESTE
x2x3 SUL
x1x2 LESTE
1 NORTE
12PUCC
Agentes
• Um AGENTE é qualquer coisa que pode ser vista como Percebendo seu ambiente através de Sensores e Agindo sobre ele através de atuadores (effectors).
• Um agente humano possui olhos, orelhas e outros órgãos como sensores e mãos, pernas, boca e outras partes do corpo como effectors.
13PUCC
Agentes x Ambiente
AGENTE Sensores
?Effectors
AMBIENTE
14PUCC
Agentes x Ambiente
AGENTE Sensores
Função do Agente
Effectors
AMBIENTE
15PUCC
Agente Racional
• É aquele que faz a coisa certa.• O que significa “coisa certa”• Ação certa é aquela que fará o agente obter
maior sucesso.• Precisamos de algum método para Medir o
sucesso.• Isso nos traz um outro problema: decidir
Como e Quando avaliar o sucesso do agente.
16PUCC
Medida de Performance
• Serve para responder a pergunta COMO?• Imposta por alguma autoridade• Vários níveis de sofisticação
• Na questão do QUANDO, muitas vezes é importante medir a performance em períodos de longo prazo
17PUCC
Racionalidade
• Depende de 4 pontos:– Medida de Performance que define graus
de sucesso.– Tudo que o agente “percebeu” (seqüência
de percepção).– O que o agente sabe sobre o ambiente.– As ações que o agente pode fazer.
• O que é uma gente racional perfeito?
18PUCC
Motorista de TAXI
• Open Ended - não existe limite para as combinações de circunstâncias que podem ocorrer.
• Temos que pensar em Sensores, Ações, Objetivos e Ambiente para esse agente.
• Tipo de Agente: Motorista de Taxi• Medidas de Desempenho:• Atuadores:• Sensores:
19PUCC
Motorista de TAXI
• Tipo de Agente: Motorista de Taxi• Medidas de Desempenho:
– Viagem mais curta, viagem mais segura, viagem mais agradável, maximizar lucros...
• Atuadores:– Direção, acelerador, freio, sinal, buzina, retrovisores...
• Sensores:– Câmeras, velocímetro, GPS, sonar...
20PUCC
Mapeamento
• Se o comportamento do agente depende da sua seqüência de percepção, podemos descrever qualquer agente fazendo uma tabela de ações que ele toma em resposta a cada seqüência de percepção.
• Numeração exaustiva??• Melhor fazer uma especificação do
mapeamento.
21PUCC
Autonomia
• Conhecimento “built-in”• Se as ações dos agentes são baseadas
exclusivamente em seu conhecimento interno, de forma que ele não precisa prestar atenção à sua percepção diz-se que falta autonomia a esse agente.
• O comportamento de uma agente pode ser baseado na sua experiência e no seu conhecimento interno.
• Um sistema é autônomo se em grande parte seu comportamento é determinado pela sua própria experiência.
22PUCC
Estrutura
• Um dos trabalhos da IA é desenvolver programas agentes: funções que implementem o mapeamento das percepções para as ações.
• Esse programa rodará em algum artefato computacional: arquitetura
• Agente= Arquitetura + Programa
23PUCC
Projetar Agentes
• Antes que se projete agentes de programas devemos:– ter idéia muito clara das percepções e ações
possíveis– quais objetivos ou medidores de performance são
esperados dos agentes– em qual ambiente ele vai operar
24PUCC
Programas Agentes
function agente(percepção)
static: memória (memória do agente do mundo)
memória Atualiza_memória(memória, percepção)
ação Escolha_melhor_ação(memória)
memória Atualiza_memória(memória,ação)
return(ação);
25PUCC
Tipos de Programas Agentes
• Agora nós temos que decidir como construir um programa real para implementar o mapeamento das percepções em ações. Vamos considerar quatro tipos de agentes:– Agentes de simples reflexo – Agentes baseado em modelos– Agentes para atingir objetivos– Agentes baseado em utilidades
26PUCC
Agentes de simples reflexo
• Construir uma tabela lookup explícita está fora de questão. Porquê?
• Nós podemos reduzir esta tabela notando certas associações comuns entrada/saída.
• Regra de condição-ação– SE o carro da frente está brecando
ENTÃO comece a brecar
27PUCC
Agentes de simples reflexo
AGENTE Sensores
Como o Mundo está agora
Que ação devo fazer agora
Effectors
Regras condição-ação
AMBIENTE
28PUCC
Agentes de simples reflexo
function Agente_SR (percepção)
static: regras, conjunto condição-ação
estado Interpreta-Entrada(percepção)
regra Encontra_Regra(estado,regra)
ação Regra_Ação[regra]
return ação
29PUCC
Agentes de simples reflexo
• Quando este tipo de agente funcionará?– Somente se a decisão correta puder ser
tomada baseada na percepção corrente
30PUCC
Agentes baseado em modelos
• Sensores não provêem acesso ao estado completo do mundo.
• Nessa condição, os agentes devem manter alguma informação interna do estado a fim de distinguir entre estados do mundo que gerem a mesma percepção mas sejam significativamente diferentes.
• Significativamente diferentes indica que ações diferentes são as mais adequadas.
31PUCC
Agentes baseado em modelos
• Atualizar essas informações internas do estado com o passar do tempo requer que dois tipos de conhecimento estejam codificados no programa agente:– Como o mundo evolui independente do agente.– Como as ações do agente afetam o mundo.
32PUCC
Agentes baseado em modelos
AGENTE Sensores
Como o Mundo está agora
Que ação devo fazer agora
Effectors
Regras condição-ação
AMBIENTE
EstadoEvolução Mundo
Minhas Ações
33PUCC
Agentes baseado em modelos
function Agente_R_com _estado(percepção)
static: regras, conjunto de condição-ação
estado, descrição do estado atual do mundo
ação, a mais recente, inicialmente nenhuma
estado Atualiza_Estado(estado,ação, percepção)
regra Encontra_Regra(estado,regras)
ação Regra_Ação[regra]
return ação
34PUCC
Agentes por Objetivos
• Conhecer o estado atual do ambiente nem sempre é suficiente para se decidir o que fazer.
• Da mesma forma que a descrição do estado atual, o agente necessita de alguma informação de objetivos.
• O programa agente pode combinar essa informação com as de resultados das ações para buscar o objetivo.
35PUCC
Agentes por Objetivos
• Técnicas de Busca
• Planejamento
• Tomada de Decisão desse tipo é diferente das regras de condição - ação descritas anteriormente.
• Embora sejam menor eficientes, são mais flexíveis
36PUCC
Agentes por Objetivos
AGENTE
Sensores
Como o Mundo está agora
Que ação devo fazer agora
Effectors
Objetivos
AMBIENTE
Estado
Evolução Mundo
Minhas Ações Como ficará Mundo se eu fizer ação A
37PUCC
Agentes por Utilidade
• Objetivos não são suficientes para gerar comportamento de alta qualidade.
• Eles somente provêem uma distinção entre estados “felizes” e “infelizes”. Medidas de performance mais gerais devem permitir comparação entre estados informando o quão “feliz” ele faria o agente se puder ser encontrado.
• Se um estado é preferível em relação a outro, ele tem uma utilidade maior para o agente.
38PUCC
Agentes por Utilidade
• Utilidade é portanto uma função que mapeia um estado num número real, o qual descreve o grau de “felicidade”
• Aparecem– quando existem objetivos conflitantes– muitos objetivos para o agente “procurar”
• Um agente pode tomar decisões racionais se ele possui um função de utilidade explícita.
39PUCC
Agentes com Aprendizagem
• Como os agentes passam a existir?– Programar máquinas inteligentes à mão– Algum método mais eficiente é desejável– Criar máquinas com capacidade de aprendizagem
e depois ensiná-las.
• Existem quatro componentes conceituais– Elemento de Aprendizado– Elemento de Desempenho– Crítico (padrões de desempenho)– Gerador de Problemas (novas experiências)
40PUCC
Agentes com Aprendizagem
AGENTE
Sensores
Effectors
AMBIENTE
Crítico
Elemento de Desempenho
Gerador de Problemas
Elemento de Aprendizado
Padrões de Desempenho
41PUCC
Ambiente
• Observável x Parcialmente Observável• Determinístico x Estocástico• Estático x Dinâmico• Discreto x Contínuo• Episódico x Seqüencial• Agente Único x Multiagentes
• Classifique:– Jogo de Xadrez– Backgammon– Motorista de Taxi– Robô de Seleção de Peças