agentes inteligentes

36
Inteligência Artificial Aula 2 - Agentes Inteligentes Prof. Gustavo Jardim Portella

Upload: otavio-friedein

Post on 19-Dec-2015

12 views

Category:

Documents


2 download

DESCRIPTION

Exercícios sobre agentes inteligentes em IA.

TRANSCRIPT

Inteligência Artificial

Aula 2 - Agentes Inteligentes

Prof. Gustavo Jardim Portella

Roteiro

• Conceito de Agente

• Exemplo: mundo do aspirador de pó

• Características dos Agentes

• Propriedades dos Ambientes

• Tipos de Agentes

• Exercícios

• Bibliografia

Conceito de Agente

• Um agente é qualquer coisa que pode perceber seu ambiente através de sensores e agir nesse ambiente por meio de atuadores.

Atuadores

Sensores

? Ambiente

Percepções

Ações

Agente

Conceito de Agente

• Exemplos de Agentes: – Agente Humano: tem olhos, orelhas e outros órgãos

como sensores, e mãos, pernas, boca e outras partes do corpo como atuadores.

– Agente Robô: tem câmeras e localizadores infravermelho como sensores e vários motores como atuadores.

– Agente de Software: recebe entradas do teclado, conteúdo de arquivos e pacotes de rede como sensores de entrada e age no ambiente mostrando resultados na tela, gravando em arquivos e enviando pacotes pela rede.

Conceito de Agente

• Agentes são diferentes de algoritmos convencionais, pois operam sob controle autônomo, percebem seu ambiente, adaptam-se a mudanças e são capazes de assumir metas.

• O comportamento de um agente é dado abstratamente pela função do agente: – f = P → A – Onde:

• P é uma sequência de percepções • A é uma ação.

• Sequência de percepções: é o histórico completo de tudo que o agente percebeu.

Exemplo: mundo do aspirador de pó

• Ambiente: apenas dois locais, quadrado A e quadrado B.

• Percepção: há sujeira ou não.

• Ações: mover para direita ou esquerda, aspirar a sujeira ou não fazer nada.

Exemplo: mundo do aspirador de pó

• Função agente: se o quadrado atual está sujo, aspire a sujeira, senão, vá para o outro quadrado.

Sequência de Percepções Ação

[A, Limpo] Direita

[A, Sujo] Aspirar

[B, Limpo] Esquerda

[B, Sujo] Aspirar

[A, Limpo], [A, Limpo] Direita

[A, Limpo], [A, Sujo] Aspirar

... …

[A, Limpo], [A, Limpo], [A, Limpo] Direita

[A, Limpo], [A, Limpo], [A, Sujo] Aspirar

... …

Características dos Agentes

• Medida de performance: incorpora o critério de sucesso do comportamento de um agente.

– Exemplos: quantidade de sujeira aspirada, gasto de energia, gasto de tempo, quantidade de barulho gerado.

• A medida de performance deve refletir o resultado realmente desejado em um período de tempo determinado.

Características dos Agentes

• Racionalidade: bom comportamento. • Racionalidade X Onisciência (impossível na

prática). • O que é racional em um dado intervalo depende

de 4 coisas: – A medida de performance que define os critérios de

sucesso; – O conhecimento prévio do agente sobre o ambiente; – As ações que o agente pode realizar; – A sequência de percepções do agente até o momento

atual.

Características dos Agentes

• Os agentes podem executar ações para coleta de informações. – Um tipo importante de coleta de informação é a

exploração de um ambiente desconhecido.

• Os agentes também podem aprender, ou seja, modificar seu comportamento dependendo do que ele percebe ao longo do tempo. – Nesse caso o agente é chamado de autônomo.

– Um agente que aprende pode ter sucesso em uma ampla variedade de ambientes.

Características dos Agentes

• O processo de modelagem de um agente envolve a definição de:

– Medida de Performance

– Ambiente (environment)

– Atuadores (actuators)

– Sensores (sensors)

• PEAS (Performance, Environment, Actuators, Sensors)

Características dos Agentes

Tipo de Agente

Medidas de Performance

Ambiente Atuadores Sensores

Sistema de diagnóstico médico

Saúde do paciente, minimizar custos, causas

Paciente, hospital, equipe médica

Mostrar questões, testes, diagnósticos, tratamentos, orientação

Entrada dos sintomas por teclado, respostas do paciente, pesquisa

Sistema de análise de imagem de satélite

Categorização correta da imagem

Downlink a partir do satélite em órbita

Mostrar categorização da cena

Arrays de pixels de cores

Robô coletor de partes

Percentual de partes na caixa correta

Esteira rolante com partes caixas

Braço articulado e mão

Câmera, sensores de ângulo articulado

Controlador de refinaria

Maximizar pureza, produção, segurança

Refinaria, operadores

Válvulas, bombas de água, aquecedores, telas

Temperatura, pressão, sensores químicos

Tutor de inglês interativo

Maximizar a pontuação de estudantes em testes

Conjunto de estudantes, agência de testes

Mostrar exercícios, sugestões, correções

Entrada pelo teclado

Propriedades dos Ambientes

• Totalmente observável x parcialmente observável (acessível x inacessível): – se o sensor do agente tem acesso completo ao estado do

ambiente o tempo todo, conseguindo observar todos os aspectos relevantes para escolher uma ação a executar, assim, o ambiente é completamente observável, sendo que relevância depende das medidas de performance.

– Um ambiente pode ser parcialmente observável devido a ruído ou sensores não acurados ou parte do estado do ambiente que estejam faltando - por exemplo, o agente aspirador de pó com apenas um sensor de sujeira local não pode dizer se há sujeira em outros quadrados, e um táxi automatizado não pode saber o que outros motoristas estão pensando.

Propriedades dos Ambientes

• Determinístico x estocástico (determinístico x não determinístico): – Se o próximo estado do ambiente é completamente determinado pelo

estado atual e ações executadas pelo agente, então podemos dizer que o ambiente é determinístico, ou seja, previsível; senão, é estocástico.

– Em princípio, um agente não precisa se preocupar sobre incertezas em um ambiente determinístico e completamente observável. Se o ambiente é parcialmente observável, todavia, ele pode parecer ser estocástico.

– Motorista de táxi é claramente estocástico, porque ele não pode predizer o comportamento do tráfego, além do mais, um pneu pode estourar. O mundo do aspirador de pó, como descrevemos, é determinístico, mas variações podem incluir elementos estocásticos como aparecimento randômico de sujeira e um mecanismo de sucção não confiável. Se o ambiente é determinístico, exceto pelas ações de outros agentes, dizemos que o ambiente é estratégico.

Propriedades dos Ambientes

• Episódico x sequencial (episódico x não episódico): – Em um ambiente episódico, a experiência do agente é dividida em

episódios atômicos. Cada episódio consiste da percepção do agente e realização de uma única ação. Crucialmente, o próximo episódio não depende de ações realizadas em episódios anteriores.

– Em um ambiente episódico, a escolha de uma ação depende somente do próprio episódio. Um agente para apontar peças defeituosas em uma linha de montagem baseia cada decisão somente na peça atual, sem se preocupar com decisões anteriores, e a decisão atual não afeta decisões futuras.

– Em ambientes sequenciais, a decisão atual pode afetar todas as decisões futuras. Xadrez e um motorista de táxi são sequenciais: em ambos os casos, ações de curto prazo podem ter consequências de longo prazo.

– Ambientes episódicos são mais simples porque o agente não tem que pensar a frente, ou seja, não tem que pensar nas consequências futuras de suas ações, apenas nas consequências da ação atual.

Propriedades dos Ambientes

• Estático x dinâmico: – Se o ambiente pode mudar enquanto o agente está deliberando,

podemos dizer que ele é dinâmico, senão, é estático. – Ambientes estáticos são mais fáceis de lidar pois o agente não precisa

ficar observando o mundo enquanto está decidindo uma ação a executar, nem precisa se preocupar com a passagem do tempo.

– Ambientes dinâmicos, por outro lado, estão continuamente perguntando ao agente o que ele quer fazer; se ele não decidiu ainda, isto conta como se tivesse decidido por fazer nada. Se o ambiente não muda com a passagem do tempo mas a performance do agente sim, então dizemos que ele é semi-dinâmico.

– Dirigir um táxi é claramente dinâmico. Xadrez, quando jogado com um relógio, é semi-dinâmico. Jogos de palavras cruzadas são estáticos.

Propriedades dos Ambientes

• Discreto x continuo:

– Um ambiente discreto, como o jogo de xadrez, tem um conjunto finito de estados, além de um discreto(finito) conjunto de percepções e ações.

– Dirigir um táxi é um problema de estados, ações e tempo contínuos.

Propriedades dos Ambientes

• Agente único x multi agente:

– Um jogo de palavras cruzadas é claramente de apenas um agente, já o xadrez é um ambiente de 2 agentes. Xadrez é um ambiente multi agente competitivo.

– No ambiente do táxi, evitar colisões maximiza a performance de todos os agentes, logo ele é um ambiente multi agente parcialmente cooperativo, além de parcialmente competitivo, por exemplo, competindo por vagas de estacionamento e passageiros.

Propriedades dos Ambientes

Tipos de Agentes

• Agentes reflexivos simples:

– São o tipo mais simples de agente, que selecionam ações com base na percepção atual, ignorando o resto do histórico de percepções.

– Por exemplo, o agente aspirador de pó, pois suas decisões são baseadas somente na localização atual e se lá há sujeira ou não.

Tipos de Agentes

• Agentes reflexivos simples: exemplo aspirador de pó.

Função AGENTE-ASPIRADOR ([posição, estado])

retorna ação

Inicio

se estado = sujo então

retorna aspirar

senão se posição = A então

retorna direita

senão se posição = B então

retorna esquerda

Fim

Tipos de Agentes

• De forma genérica, um agente reflexivo simples pode ser definido pelo seguinte algoritmo:

function SIMPLE-REFLEX-AGENT(percept) returns action

static:rules, a set of condition action rules

state ← INTERPRET-INPUT(percept)

rule ← RULE-MATCH(state, rules)

action ← RULE-ACTION(rule)

return action

Tipos de Agentes

• O funcionamento do agente reflexivo simples é baseado em regras de condição-ação: – if condição then ação.

• São simples, porém limitados: – Funcionará somente se a decisão correta puder ser

tomada com base apenas na percepção atual.

– A tabela de regras condição-ação pode se tornar muito grande em problemas complexos.

– O ambiente deve ser completamente observável.

Tipos de Agentes

• Agentes reflexivos baseados em modelo: – Um agente reflexico baseado em modelo pode lidar

com ambientes parcialmente observáveis. O agente deve controlar as partes do mundo que ele não pode ver.

– O agente deve manter um estado interno que dependa do histórico de percepções e reflita os aspectos não observados no estado atual.

– Agente baseado em modelo é um agente que usa um modelo de mundo. • Como o ambiente evoluí independente do agente? • Como as ações do próprio agente afetam o mundo?

Tipos de Agentes

• De uma forma mais genérica, podemos definir o comportamento de um agente reflexivo baseado em modelo da seguinte forma:

function REFLEX-AGENT-WITH-STATE(percept) returns an action

static: state, a description of the current world state

action, the most recent action, initially none

rules, a set of condition-action rules

state ← UPDATE_INPUT(state, action, percept)

rule ← RULE_MATCH(state, rules)

action ← RULE_ACTION(rule)

return action

Tipos de Agentes

• Esquema de um agente reflexivo baseado em modelo:

Tipos de Agentes

• Conhecer um modelo do mundo nem sempre é suficiente para tomar uma boa decisão.

• Exemplo: – Um agente Motorista de Táxi chega a um cruzamento com

três caminhos, qual direção tomar?

– Simplesmente reagir? mas existem três reações possíveis.

– Examinar o modelo de mundo? não ajuda a decidir qual o caminho.

– A decisão depende de onde o táxi está tentando chegar (objetivo).

Tipos de Agentes

• Agentes baseados em objetivos: – Expandem as capacidades dos agentes baseados

em modelos através de um “objetivo”.

– O objetivos descreve situações desejáveis. • Exemplo: estar no destino

– A seleção da ação baseada em objetivo pode ser: • Direta: quando o resultado de uma única ação atinge o

objetivo.

• Mais complexa: quando será necessário longas sequências de ações para atingir o objetivo.

Tipos de Agentes

• Para encontrar sequências de ações que alcançam os objetivos são utilizados algoritmos de Busca e Planejamento.

• A tomada de decisão envolve a consideração do futuro, o que não acontece com o uso de regras de condição-ação. – “O que acontecerá se eu fizer isso ou aquilo?” – “O quanto isso me ajudará a atingir o objetivo?”

• O agente que funciona orientado a objetivos é mais flexível do que um agente reflexivo. – Entretanto, o objetivo não garante o melhor comportamento

para o agente, apenas a distinção entre estados objetivos e não objetivos.

Tipos de Agentes

• Esquema de um agente baseado em objetivo:

Tipos de Agentes

• Agentes baseados na utilidade: – buscam definir um grau de satisfação com os

estados. O quanto “bom” é para o agente um determinado estado.

– Se um estado do mundo é mais desejável que outro, então ele terá maior utilidade para o agente.

– Utilidade é uma função que mapeia um estado para um número real que representa o grau de satisfação com este estado.

Tipos de Agentes

• Esquema de um agente baseado na utilidade:

Tipos de Agentes

• Agentes com aprendizado:

– podem atuar em ambientes totalmente desconhecidos e se tornar mais eficientes do que o seu conhecimento inicial poderia permitir.

– Em agentes sem aprendizagem, tudo o que o agente sabe foi colocado nele pelo projetista.

33

Tipos de Agentes

• Esquema de um agente com aprendizado:

34

Exercícios

• 1. Defina uma medida de desempenho, o ambiente, os atuadores e os sensores para os seguintes casos: – Robô jogador de futebol.

– Agente para uma livraria online.

– Assistente matemático para prova de teoremas.

• 2. Ambas as funções de medida de desempenho e utilidade em agentes baseados na utilidade servem para mensurar o quão bem o agente está atuando. Qual a diferença entre essas duas funções?

Bibliografia

• RUSSELL, Stuart J. NORVIG, Peter. Inteligência Artificial. Editora Campus, 2004.

• LIMA, Edirlei. Agentes Inteligentes - Aula 2. PUC-RIO, 2014.

• SOUTO, Marcílio. Agentes Inteligentes. UFRN, 2001.