1 Problema Auxlio Compras na Web CIn UFPE
1 Problema: Auxílio á Compras na Web CIn- UFPE
2 Problema: Automatização de sistemas de potência objetos: rios, barragens, turbinas, transformadores, linhas, . . . CIn- UFPE
Problema: Produção de histórias interativas . Criar ilusão da vida (ex. Walt Disney). Permitir interação com usuário. Modelar comportamento e personalidade (ex. tamagotchi) CIn- UFPE 3
4 E aí? n O que estes problemas têm em comum? • Grande complexidade (número, variedade e natureza das tarefas) • Não há “solução algorítmica”, mas existe conhecimento • Modelagem do comportamento de um ser inteligente (autonomia, aprendizagem, conhecimento, etc. ) n Inteligência Artificial (IA) • Há 30 anos lida com esses problemas. • Objetivo: construir (e aprender a construir) programas que, segundo critérios definidos, exibem um comportamento inteligente na realização de uma dada tarefa. CIn- UFPE
Um programa de IA pode ser visto como um Agente Racional n Plano da aula • O que é um Agente Racional (inteligente)? • Qual sua utilidade em IA? • Ambientes e arquiteturas • Aplicações • Estado atual do conceito de agente CIn- UFPE 5
6 O que é um agente n Agente é qualquer entidade que: • percebe seu ambiente através de sensores (ex. câmeras, microfone, teclado, finger, . . . ) • age sobre ele através de efetuadores (ex. vídeo, auto-falante, impressora, braços, ftp, . . . ) ambiente n Mapeamento: seqüência perceptiva => ação sensores Raciocinador efetuadores Agente modelo do ambiente
7 Medida de Desempenho n Critério que define o grau de sucesso de um agente na realização de uma dada tarefa • Esta medida deve ser imposta do exterior • Má escolha da MD pode acarretar comportamento indesejado • Compromissos entre objetivos múltiplos conflitantes • Resta o problema de saber quando avaliar o desempenho • Exs. aspirador de pó, provador de teoremas, filtragem de -mails, policial de trânsito, avaliador de clima. . . e CIn- UFPE
Agente Racional (Mc. Carthy & Hayes 69, Newell 81) n Agente Racional: fazer a melhor coisa possível • segue o princípio da racionalidade: dada uma seqüência perceptiva, o agente escolhe, segundo seus conhecimentos, as ações que satisfazem melhor seu objetivo. n Problema • estado inicial + ações => estado final (objetivo) n Racionalidade ¹ Onisciência, limitações de: • • sensores efetuadores raciocinador (conhecimento, tempo, etc. ) Agir para obter mais dados perceptivos é racional CIn- UFPE 8
9 Autonomia e utilidade n Autonomia • Capacidade de adaptação a situações novas, para as quais não foi fornecido todo o conhecimento necessário com antecedência • Duas implementações: aprendizagem e/ou programação declarativa n Para construir um sistema inteligente, utilizamos • linguagem • inferência • conhecimento CIn- UFPE
10 A Metáfora de agente decompõe 1) Problema em: • percepções, ações, objetivos, e ambiente (e outros agentes) 2) Tipo de conhecimento em: • • Quais são as propriedades relevantes do mundo Como o mundo evolui Como identificar os estados desejáveis do mundo Como interpretar suas percepções Quais as conseqüências de suas ações no mundo Como medir o sucesso de suas ações Como avaliar seus próprios conhecimentos 3) Arquitetura e método de resolução de problema CIn- UFPE
11 Agente de policia Agente raciocínio Conhecimento: - leis - comportamento dos indivíduos, . . . percepção Ambiente Objetivo: - fazer com que as leis sejam respeitadas execução Ações: - multar - apitar - parar, . . .
Exemplos de agentes 12
13 Ambiente n Classes de ambientes • Físico: robôs • Software: softbots • Realidade virtual (simulação do ambiente físico): softbots e avatares n Propriedades de um ambiente • • • acessível x inacessível estático x dinâmico determinista x não-determinista discreto x contínuo episódico x não-episódico tamanho: número de percepções, ações, objetivos, . . . CIn- UFPE
14 Ambientes: propriedades n Acessível: quando os sensores do agente conseguem perceber o estado completo do ambiente. n Determinista: o próximo estado do ambiente pode ser completamente determinado pelo estado atual e as ações selecionadas pelo agente. n Episódico: a experiência do agente é dividida em episódios. Cada episódio consiste em o agente perceber e então agir. Cada episódio não depende das ações que ocorreram em episódios prévios. CIn- UFPE
15 Ambientes: propriedades n Estático: o ambiente não muda enquanto o agente está escolhendo a ação a realizar. • Semi-estático: o ambiente não muda enquanto o agente delibera, mas o "score" do agente muda. n Discreto: quando existe um número distinto e claramente definido de percepções e ações em cada turno. n Contínuo: percepções e ações mudam em um espectro contínuo de valores. CIn- UFPE
Exemplos de ambientes + O Tamanho do ambiente é dado por: número de percepções, ações e objetivos possíveis 16
17 Algoritmo básico n função agente. Simples (percept) retorna ação memória : = atualiza. Memória (memória, percept) ação : = escolhe. Melhor. Ação(memória) memória : = atualiza. Memória (memória, ação) retorna ação n Arquiteturas • • • Agente tabela Agente reativo com estado interno (autômato) Agente cognitivo (baseado em objetivos) Agente otimizador Agente adaptativo autonomia complexidade CIn- UFPE
18 Agente tabela sensores Agente Tabela percepções ações. . ambiente efetuadores n Limitações • Mesmo Problemas simples -> tabelas muito grandes – ex. xadrez 30^100 • Nem sempre é possível, por ignorância ou questão de tempo, construir a tabela • Não há autonomia nem flexibilidade n Ambientes • acessível, determinista, episódico, estático, discreto e minúsculo!
19 Agente reativo ambiente sensores Agente Como está o mundo agora? Que ação devo escolher agora? Regras “condição-ação” efetuadores n Vantagens e desvantagens • Regras condição-ação: representação inteligível, modular e eficiente – ex. Se velocidade > 60 então multar • Não pode armazenar uma seqüência perceptiva, pouca autonomia n Ambientes: • Reflexo imprescindível em ambientes dinâmicos • Acessível, episódico, pequeno
Agente reativo com estado interno Agente sensores ambiente Como está o mundo agora? estado: como o mundo era antes como o mundo evolui impacto de minhas ações Que devo fazer agora? efetuadores n Desvantagem: pouca autonomia • não tem objetivo, não encadeia regras n Ambientes: determinista e pequeno • Ex. Tamagotchi Regras “condição-ação” 20
Agente cognitivo (baseado em objetivo) ambiente sensores Agente estado: como o mundo era antes Como está o mundo agora? como o mundo evolui Como ele ficará se faço isto? impacto de minhas ações Que devo fazer agora? Objetivos efetuadores n Vantagens e desvantagens: • Mais complicado e ineficiente, porém mais flexível, autônomo • Não trata objetivos conflitantes n Ambientes: determinista • ex. : xeque-mate no xadrez 21
Agente otimizador (utility based) Agente sensores Como está o mundo agora? ambiente Como ele ficará se faço isto? Este novo mundo é melhor? Que ação devo escolher agora? estado: como o mundo era antes como o mundo evolui qual é o impacto de minhas ações Função de Utilidade efetuadores n Ambiente: sem restrição n Desvantagem: não tem adaptabilidade n Ex. motorista recifence 22
23 Agente que aprende Agente t+1 ambiente sensores crítico avaliação t elemento de execução (agente) trocas elemento de conhecimento aprendizagem objetivos de aprendizagem t efetuadores Gerador de problemas n Ambiente: sem restrição n Vantagem: tem adaptabilidade (aprende) n Ex. motorista sem o mapa da cidade
24 Simulação do ambiente n Às vezes é mais conveniente simular o ambiente • mais simples • permite testes prévios • evita riscos, etc. . . n O ambiente (programa) • recebe os agentes como entrada • fornece repetidamente a cada um deles as percepções corretas e recebe as ações • atualiza os dados do ambiente em função dessas ações e de outros processos (ex. dia-noite) • é definido por um estado inicial e uma função de atualização • deve refletir a realidade CIn- UFPE
25 Simulação de ambiente n função simula. Ambiente (estado, função. Atualização, agentes, final) repita para cada agente em agentes faça Percept[agente] : = pega. Percepção(agente, estado) para cada agente em agentes faça Action[agente] : = Programa[agente] (Percept[agente]) estado : = função. Atualização(ações, agentes, estado) scores : = avalia. Desempenho(scores, agente, estado) //opcional até final n Observação: • não cair em tentação “roubando” do ambiente a descrição do que aconteceu. Usar a memória do agente! CIn- UFPE
26 Inteligência coletiva n Porque pensar a inteligência/racionalidade como propriedade de um único indivíduo? n Não existe inteligência. . . • • Em um time de futebol? Em um formigueiro? Em uma empresa (ex. correios)? Na sociedade? n Solução: IA Distribuída • Agentes simples que juntos resolvem problemas complexos tendo ou não consciência do objetivo global • Proposta por Marvin Minsky e em franca expansão. . . • o próprio ambiente pode ser modelado como um agente CIn- UFPE
27 IA Distribuída: dois tipos de sistemas n Resolução distribuída de problemas • consciência do objetivo global e divisão clara de tarefas • Exemplos: Robótica clássica, Busca na Web, Gerência de sistemas distribuídos, . . . n Sistemas Multi-agentes • não consciência do objetivo global e nem divisão clara de tarefas • Exemplos: n-puzzle, futebol de robôs, balanceamento de carga, robótica, . . . F 3 7 4 3 5 7 8 1 4 2 6 5 8 2 1 1 2 3 6 4 5 6 7 8 CIn- UFPE
Questões 28 n Questões centrais • • comunicação negociação (ex. compra-venda na Web) estados mentais crença, . . . n Tensão (trade-off) • Quanto mais agentes, mais simples (sub-dividido) fica o problema • No entanto, mais complexa fica a comunicação e coordenação entre os agentes CIn- UFPE
29 Evolução da noção de Agente além das fronteiras da IA. . CIn- UFPE
Agente: ainda não há uma definição única 30 n IBM: Intelligent agents are software entities that carry out some set of operations on behalf of an user, and in doing so employ some knowledge representation of the user’s goals or desires n Kid. Sim: Agent is a persistent software entity (agents have their own ideas about how to accomplish tasks) dedicated to a specific purpose (smaller than multifunctions applications) n Soda. Bot: Software agents are programs that engage in dialogs to negotiate and coordinate transfer of information CIn- UFPE
31 Técnicas & Problemas Antes. . Agora programas IA agentes inteligentes agentes móveis, agentes de software, robôs, . . . CIn- UFPE
Propriedades 32 n Autonomia (IA) • raciocínio, comportamento guiado por objetivos • reatividade n Adaptabilidade & aprendizagem (IA) n Comunicação & Cooperação (IA) n Personalidade (IA) n Continuidade temporal n Mobilidade CIn- UFPE
33 Agentes na Internet n Categorias por Tipos de Serviços: • Agentes de Busca e Recuperação (ex. Altavista) • Agentes que Filtram Informações (ex. KOM) • Agentes de Entrega Off-line (ex. Point. Cast) • Agentes Notificadores (ex. URL-Minder) • Agentes de Suporte ao Comércio (ex. Bargain. Bot) • Agente corretor (interoperabilidade - ACL) • Outros. . . CIn- UFPE
Conclusões 34 n Agentes em IA • Metodologia (metáfora) para projeto de sistemas • Sistemas multi-agentes e robótica n Agentes em computação • Adoção de uma nova metáfora (antropomórfica e sociológica). Extrapolação de OOP – IA: autômato -> mente – Agentes: objetos -> pessoas • Integração de técnicas de IA • Novas tecnologias próprias à Web (ex. mobilidade) • Marketing (moda) n Agentes: técnica ou metodologia ? CIn- UFPE
35 Desenvolver software inteligente n Projeto: • Modelar tarefa em termos de ambiente, percepções, ações, objetivos e utilidade • Identificar o tipo de ambiente • Identificar a arquitetura de agente adequada ao ambiente e tarefa n Implementação • o gerador e o simulador de ambientes • componentes do agente (vários tipos de conhecimento) • Testar o desempenho com diferentes instâncias do ambiente CIn- UFPE
- Slides: 35