Problema: Auxílio á Compras na Web

1 Problema: Auxílio á Compras na Web ...
Author: Giovanna Bernardes Marreiro
0 downloads 2 Views

1 Problema: Auxílio á Compras na Web

2 Problema: Automatização de sistemas de potênciaobjetos: rios, barragens, turbinas, transformadores, linhas, ...

3 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)

4 E aí? O que estes problemas têm em comum? Inteligência Artificial (IA)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.) 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.

5 Um programa de IA pode ser visto como um Agente RacionalPlano da aula O que é um Agente Racional (inteligente)? Qual sua utilidade em IA? Ambientes e arquiteturas Aplicações Estado atual do conceito de agente

6 O que é um agente 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, ...) Mapeamento: seqüência perceptiva => ação Agente sensores a m b i e n t e modelo do ambiente Raciocinador efetuadores

7 Medida de Desempenho 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 s, policial de trânsito, avaliador de clima...

8 Agente Racional (McCarthy & Hayes 69, Newell 81)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. Problema estado inicial + ações => estado final (objetivo) Racionalidade ¹ Onisciência, limitações de: sensores efetuadores raciocinador (conhecimento, tempo, etc.) Agir para obter mais dados perceptivos é racional

9 Autonomia e utilidade AutonomiaCapacidade 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 Para construir um sistema inteligente, utilizamos linguagem inferência conhecimento

10 A Metáfora de agente decompõe1) 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

11 Agente de policia Agente Ambiente raciocínio percepção execuçãoObjetivo: - fazer com que as leis sejam respeitadas Ações: - multar - apitar - parar, ... Conhecimento: - leis - comportamento dos indivíduos,... percepção execução Ambiente

12 Exemplos de agentes

13 Ambiente Classes de ambientes Propriedades de um ambienteFísico: robôs Software: softbots Realidade virtual (simulação do ambiente físico): softbots e avatares 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,...

14 Ambientes: propriedadesAcessível: quando os sensores do agente conseguem perceber o estado completo do ambiente. Determinista: o próximo estado do ambiente pode ser completamente determinado pelo estado atual e as ações selecionadas pelo agente. 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.

15 Ambientes: propriedadesEstá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. Discreto: quando existe um número distinto e claramente definido de percepções e ações em cada turno. Contínuo: percepções e ações mudam em um espectro contínuo de valores.

16 Exemplos de ambientes + O Tamanho do ambiente é dado por:número de percepções, ações e objetivos possíveis

17 Algoritmo básico função agenteSimples (percept) retorna açãomemória := atualizaMemória (memória, percept) ação := escolheMelhorAção(memória) memória := atualizaMemória (memória, ação) retorna ação Arquiteturas Agente tabela Agente reativo Agente reativo com estado interno (autômato) Agente cognitivo (baseado em objetivos) Agente otimizador Agente adaptativo autonomia complexidade

18 Agente tabela sensores ambiente efetuadores Limitações Ambientespercepções ações . . Agente 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 Ambientes acessível, determinista, episódico, estático, discreto e minúsculo!

19 Agente reativo Vantagens e desvantagens Ambientes: Agente sensoresefetuadores Como está o mundo agora? Que ação devo escolher agora? Regras “condição-ação” a m b i e n t e Agente 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 Ambientes: Reflexo imprescindível em ambientes dinâmicos Acessível, episódico, pequeno

20 Agente reativo com estado internosensores Agente Como está o mundo agora? Regras “condição-ação” estado: como o mundo era antes como o mundo evolui efetuadores Que devo fazer agora? a m b i e n t e impacto de minhas ações Desvantagem: pouca autonomia não tem objetivo, não encadeia regras Ambientes: determinista e pequeno Ex. Tamagotchi

21 Agente cognitivo (baseado em objetivo)sensores Agente Como está o mundo agora? Objetivos como o mundo evolui efetuadores Que devo fazer agora? a m b i e n t e impacto de minhas ações Como ele ficará se faço isto? estado: como o mundo era antes Vantagens e desvantagens: Mais complicado e ineficiente, porém mais flexível, autônomo Não trata objetivos conflitantes Ambientes: determinista ex.: xeque-mate no xadrez

22 Agente otimizador (utility based)ambiente sensores efetuadores Agente Como está o mundo agora? Que ação devo escolher agora? Função de Utilidade qual é o impacto de minhas ações como o mundo evolui Este novo mundo é melhor? Como ele ficará se faço isto? estado: como o mundo era antes Ambiente: sem restrição Desvantagem: não tem adaptabilidade Ex. motorista recifence

23 Agente que aprende Ambiente: sem restriçãosensores crítico avaliação t trocas elemento de execução (agente) elemento de aprendizagem conhecimento a m b i e n t e objetivos de aprendizagem t Gerador de problemas efetuadores Ambiente: sem restrição Vantagem: tem adaptabilidade (aprende) Ex. motorista sem o mapa da cidade

24 Simulação do ambiente Às vezes é mais conveniente simular o ambientemais simples permite testes prévios evita riscos, etc... 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

25 Simulação de ambiente Observação:função simulaAmbiente (estado, funçãoAtualização,agentes,final) repita para cada agente em agentes faça Percept[agente] := pegaPercepção(agente,estado) Action[agente] := Programa[agente] (Percept[agente]) estado := funçãoAtualização(ações, agentes, estado) scores := avaliaDesempenho(scores,agente,estado) //opcional até final Observação: não cair em tentação “roubando” do ambiente a descrição do que aconteceu. Usar a memória do agente!

26 Inteligência coletivaPorque pensar a inteligência/racionalidade como propriedade de um único indivíduo? Não existe inteligência ... Em um time de futebol? Em um formigueiro? Em uma empresa (ex. correios)? Na sociedade? 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

27 IA Distribuída: dois tipos de sistemasResoluçã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, ... 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, ... 1 5 3 4 8 6 7 2 1 5 3 4 8 6 7 2 F 1 5 3 4 8 6 7 2

28 Questões Questões centrais Tensão (trade-off) comunicaçãonegociação (ex. compra-venda na Web) estados mentais crença, ... 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

29 Evolução da noção de Agente além das fronteiras da IA....

30 Agente: ainda não há uma definição únicaIBM: 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 KidSim: 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) SodaBot: Software agents are programs that engage in dialogs to negotiate and coordinate transfer of information

31 Técnicas & Problemas Antes.... Agora programas programas IA agentesinteligentes agentes móveis, agentes de software, robôs, ...

32 Propriedades Autonomia (IA) Adaptabilidade & aprendizagem (IA)raciocínio, comportamento guiado por objetivos reatividade Adaptabilidade & aprendizagem (IA) Comunicação & Cooperação (IA) Personalidade (IA) Continuidade temporal Mobilidade

33 Agentes na Internet 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. PointCast) Agentes Notificadores (ex. URL-Minder) Agentes de Suporte ao Comércio (ex. BargainBot) Agente corretor (interoperabilidade - ACL) Outros...

34 Conclusões Agentes em IA Agentes em computaçãoMetodologia (metáfora) para projeto de sistemas Sistemas multi-agentes e robótica 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) Agentes: técnica ou metodologia ?

35 Desenvolver software inteligenteProjeto: 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 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