Introduo aos Agentes Inteligentes Aula Agentes Inteligentes Flvia

  • Slides: 42
Download presentation
Introdução aos Agentes Inteligentes Aula: Agentes Inteligentes Flávia Barros 1

Introdução aos Agentes Inteligentes Aula: Agentes Inteligentes Flávia Barros 1

Agentes Inteligentes Plano da aula n O que é um Agente Racional (inteligente)? n

Agentes Inteligentes Plano da aula n O que é um Agente Racional (inteligente)? n Ambientes e arquiteturas n IA distribuída n Metodologia de desenvolvimento n Conclusão 2

O que é um Agente? Qualquer entidade (humana ou artificial) que: n está imersa

O que é um Agente? Qualquer entidade (humana ou artificial) que: n está imersa ou situada em um ambiente w físico, virtual/simulado n percebe seu ambiente através de sensores w ex. câmeras, microfone, teclado, finger, . . . n age sobre ele através de atuadores w ex. vídeo, auto-falante, impressora, braços, ftp, . . . n possui objetivos próprios w explícitos ou implícitos n escolhe suas ações em função das suas percepções para atingir seus objetivos 3

Agentes Inteligentes x Sistemas de IA Clássica Sistema Inteligente Agente Interpretação das percepções Sensores

Agentes Inteligentes x Sistemas de IA Clássica Sistema Inteligente Agente Interpretação das percepções Sensores IA Ambiente Objetivos Atuadores Raciocínio = escolha das ações IA Dados de Entrada Raciocínio Objetivos Dados de Saída IA

Agente Racional (Inteligente) Agente Racional n faz a melhor coisa possível n segue o

Agente Racional (Inteligente) Agente Racional n faz a melhor coisa possível n segue o princípio da racionalidade: w dada uma seqüência perceptiva, o agente escolhe, segundo seus conhecimentos, as ações que melhor satisfazem seu objetivo Racionalidade ¹ Onisciência n Limitações de: w sensores w atuadores w “raciocinador" (conhecimento, tempo, etc. ) 5

Agente Racional Medida de Desempenho Então como vamos medir o “sucesso” do agente? n

Agente Racional Medida de Desempenho Então como vamos medir o “sucesso” do agente? n Usando uma “medida de performance” w Quando o agente é colocado em um ambiente, ele gera uma seqüência de ações com base nas suas percepções. w Essa seqüência de ações leva o ambiente a modificar-se passando por uma seqüência de estados. w Se essa seqüência de estados é “desejável”, então o agente teve um bom desempenho! Contudo. . . n n Não existe uma medida de sucesso fixa para todos os agentes Assim sendo, vamos optar por uma medida de performance objetiva, que seja determinada pelo projetista o agente! 6

Cuidado. . . na computação, nem todo agente é inteligente (racional)! Inteligência Artificial Engenharia

Cuidado. . . na computação, nem todo agente é inteligente (racional)! Inteligência Artificial Engenharia de Software Agentes Sistemas Distribuídos 7

Outras propriedades associadas aos Agentes Autonomia (IA) n raciocínio, comportamento guiado por objetivos n

Outras propriedades associadas aos Agentes Autonomia (IA) n raciocínio, comportamento guiado por objetivos n reatividade Adaptabilidade & aprendizagem (IA) Comunicação & Cooperação (IA) Personalidade (IA) Continuidade temporal Mobilidade 8

Outras propriedades associadas aos Agentes Autonomia de raciocínio (IA): n n Requer máquina de

Outras propriedades associadas aos Agentes Autonomia de raciocínio (IA): n n Requer máquina de inferência e base de conhecimento Essencial em sistemas especialistas, controle, robótica, jogos, agentes na internet. . . Adaptabilidade (IA): n n n 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 w aprendizagem e/ou programação declarativa Essencial em agentes na internet, interfaces amigáveis. . . 9

Outras propriedades associadas aos Agentes Comunicação & Cooperação (Sociabilidade) (IA): n n IA +

Outras propriedades associadas aos Agentes Comunicação & Cooperação (Sociabilidade) (IA): n n IA + técnicas avançadas de sistemas distribuídos: w Protocolos padrões de comunicação, cooperação, negociação w Raciocínio autônomo sobre crenças e confiabilidade w Arquiteturas de interação social entre agentes Essencial em sistemas multi-agente, comércio eletrônico, . . . Personalidade (IA): n n IA + modelagem de atitudes e emoções Essencial em entretenimento digital, realidade virtual, interfaces amigáveis. . . 10

Outras propriedades associadas aos Agentes Continuidade temporal e persistência: n Requer interface com sistema

Outras propriedades associadas aos Agentes Continuidade temporal e persistência: n Requer interface com sistema operacional e banco de dados n Essencial em filtragem, monitoramento, controle, . . . Mobilidade: n n Requer: w Interface com rede w Protocolos de segurança w Suporte a código móvel Essencial em agentes de exploração da internet, . . . 11

Como descrever um Agente Racional? Pode ser descrito em termos de seu PEAS n

Como descrever um Agente Racional? Pode ser descrito em termos de seu PEAS n P – performance n E – (environment) ambiente n A – atuadores n S – sensores n e outros agentes – nos sistemas multiagentes 12

Exemplo: Agente de Polícia Agente Raciocínio Conhecimento: - leis - comportamento dos indivíduos, .

Exemplo: Agente de Polícia 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 e seus PEAS

Exemplos de Agentes e seus PEAS

Ambientes 15

Ambientes 15

Ambientes Classes de ambientes n Ambiente físico: agentes robôs n Ambiente de Software: agentes

Ambientes Classes de ambientes n Ambiente físico: agentes robôs n Ambiente de Software: agentes softbots n Ambiente de Realidade virtual (simulação do ambiente físico): agentes softbots e avatares Propriedades de um ambiente n n n n totalmente observável x parcialmente observável determinista x estocástico episódico x seqüencial estático x dinâmico discreto x contínuo um agente x multiagentes complexidade: número de percepções, ações, objetivos, . . . 16

Ambientes: propriedades Totalmente observável n quando os sensores do agente conseguem perceber o estado

Ambientes: propriedades Totalmente observável n quando os sensores do agente conseguem perceber o estado completo do ambiente. Determinista n o próximo estado do ambiente pode ser completamente determinado pelo estado atual e as ações selecionadas pelo agente. Episódico n n n 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. 17

Ambientes: propriedades Estático n n o ambiente não muda enquanto o agente está escolhendo

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

Exemplos de Ambientes > A complexidade do ambiente é dada por: número de percepções,

Exemplos de Ambientes > A complexidade do ambiente é dada por: número de percepções, ações e objetivos possíveis

Agentes Algoritmo Básico e Arquiteturas 20

Agentes Algoritmo Básico e Arquiteturas 20

Agentes: Algoritmo básico função agente. Simples (percepção) retorna ação memória : = atualiza. Memória

Agentes: Algoritmo básico função agente. Simples (percepção) retorna ação memória : = atualiza. Memória (memória, percepção) ação : = escolhe. Melhor. Ação(memória, objetivos) memória : = atualiza. Memória (memória, ação) retorna ação 21

Agentes: Arquiteturas Agente reativo com estado interno Agente cognitivo (baseado em objetivos) Agente otimizador

Agentes: Arquiteturas Agente reativo com estado interno Agente cognitivo (baseado em objetivos) Agente otimizador Agente adaptativo autonomia complexidade 22

Agentes: Arquiteturas De forma bem simplificada, um agente pode ser visto como um mapeamento:

Agentes: Arquiteturas De forma bem simplificada, um agente pode ser visto como um mapeamento: seqüência perceptiva => ação ambiente n sensores Raciocinador Agente modelo do ambiente atuadores 23

ambiente Agente Tabela? Não é um agente racional. . . sensores Agente Tabela Percepções

ambiente Agente Tabela? Não é um agente racional. . . sensores Agente Tabela Percepções ações. . atuadores Limitações n Mesmo problemas simples requerem tabelas muito grandes w ex. xadrez 30^100 n Nem sempre é possível, por ignorância ou questão de tempo, construir a tabela n Não tem autonomia nem flexibilidade Ambiente n Totalmente observável, determinista, episódico, estático, discreto e minúsculo!

ambiente Agente Reativo Simples Agente sensores Como está o mundo agora? Que ação devo

ambiente Agente Reativo Simples Agente sensores Como está o mundo agora? Que ação devo escolher agora? Regras “condição-ação” atuadores Vantagens e desvantagens n n Regras condição-ação - representação inteligível, modular e eficiente w ex. Se velocidade > 60 então multar Não pode armazenar uma seqüência perceptiva, tem pouca autonomia Ambiente n n Totalmente observável, episódico, pequeno Reflexo é imprescindível em ambientes dinâmicos

Agente Reativo baseado em Modelo do Mundo Agente sensores ambiente Como está o mundo

Agente Reativo baseado em Modelo do Mundo 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? atuadores Desvantagem: pouca autonomia n não tem objetivo, não encadeia regras Ambiente: determinista e pequeno Ex. Tamagotchi Regras “condição-ação”

Agente cognitivo - Baseado em Objetivo ambiente sensores Agente estado: como o mundo era

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 atuadores Vantagens e desvantagens n Mais complicado e ineficiente, porém mais flexível, autônomo n Não trata objetivos conflitantes Ambiente: determinista Ex. de objetivo: xeque-mate no xadrez

Agente otimizador - baseado em utilidade Agente sensores estado: como o mundo era antes

Agente otimizador - baseado em utilidade Agente sensores estado: como o mundo era antes Como está o mundo agora? Como ele ficará se faço isto? ambiente Este novo mundo é melhor? Que ação devo escolher agora? atuadores Ambiente: sem restrição Desvantagem: não tem adaptabilidade Ex. motorista de táxi n Segurança e velocidade – conflito! como o mundo evolui qual é o impacto de minhas ações Função de Utilidade

Agente que aprende Agente sensores t+1 avaliação ambiente t elemento de execução (agente) crítico

Agente que aprende Agente sensores t+1 avaliação ambiente t elemento de execução (agente) crítico trocas elemento de conhecimento aprendizagem t atuadores objetivos de aprendizagem Gerador de problemas Ambiente: sem restrição Vantagem: tem adaptabilidade (aprende) n Contudo, não necessariamente trata dois objetivos conflitantes Ex. motorista sem o mapa da cidade

Inteligência Coletiva IA Distribuída 30

Inteligência Coletiva IA Distribuída 30

Inteligência Coletiva Por que pensar a inteligência/racionalidade como propriedade de um único indivíduo? Não

Inteligência Coletiva Por que pensar a inteligência/racionalidade como propriedade de um único indivíduo? Não existe inteligência. . . n n Em um time de futebol? Em um formigueiro? Em uma empresa (ex. correios)? Na sociedade? Solução: IA Distribuída 31

IA Distribuída Agentes simples que juntos resolvem problemas complexos n tendo ou não consciência

IA Distribuída Agentes simples que juntos resolvem problemas complexos n tendo ou não consciência do objetivo global O próprio ambiente pode ser modelado como um agente Dois tipos de sistemas: n Resolução distribuída de problemas n Sistemas Multi-agentes 32

Resolução distribuída de problemas Cada agente tem consciência do objetivo global Existe uma divisão

Resolução distribuída de problemas Cada agente tem consciência do objetivo global Existe uma divisão clara de tarefas Exemplos: n Robótica clássica, Busca na Web, Gerência de sistemas distribuídos, . . . 33

Sistemas Multi-agentes Não existe consciência do objetivo global Não existe divisão clara de tarefas

Sistemas Multi-agentes Não existe consciência do objetivo global Não existe divisão clara de tarefas Exemplos: n n-puzzle (jogo dos 8 -números), 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 34

Agentes em IA Metodologia para projeto de sistemas e dicas de implementação 35

Agentes em IA Metodologia para projeto de sistemas e dicas de implementação 35

Projeto Metodologia de desenvolvimento Decompõe o problema em: n n PEAS dos agentes (Performance,

Projeto Metodologia de desenvolvimento Decompõe o problema em: n n PEAS dos agentes (Performance, Environment (ambiente), Atuadores e Sensores); & Objetivos (ou função utilidade, se for o caso) dos agentes; Decompõe o conhecimento do agente em: n n n Quais são as propriedades relevantes do mundo? Como identificar os estados desejáveis do mundo? Como interpretar as suas percepções? Quais as conseqüências das suas ações no mundo? w Como medir o sucesso de suas ações? Como avaliar seus próprios conhecimentos? w São suficientes para resolver o problema? 36

Projeto Metodologia de desenvolvimento O resultado dessa decomposição indica: n n Arquitetura de agente

Projeto Metodologia de desenvolvimento O resultado dessa decomposição indica: n n Arquitetura de agente adequada ao ambiente e ao problema a ser tratado O método de resolução de problema (raciocínio) 37

Como desenvolver um software inteligente? Projeto: n Modelar o problema em termos de PEAS

Como desenvolver um software inteligente? Projeto: n Modelar o problema em termos de PEAS e Objetivos (ou função utilidade) dos agentes n Identificar o tipo de ambiente n Identificar a arquitetura do(s) agente(s) Implementação: n Componentes do agente O simulador de ambientes n Testar o desempenho com diferentes instâncias do ambiente n 38

Implementação Simulação do Ambiente Às vezes, é mais conveniente simular o ambiente n n

Implementação Simulação do Ambiente Às vezes, é mais conveniente simular o ambiente n n n mais simples permite testes prévios evita riscos, etc. . . O ambiente (pedaço de código. . . ) n n n recebe os agentes como entrada fornece repetidamente a cada um deles as percepções corretas e recebe as ações escolhidas atualiza os dados do ambiente em função dessas ações e de outros processos (ex. dia-noite) n é definido por um estado inicial e uma função de atualização n deve refletir a realidade 39

Simulação de Ambientes função simula. Ambiente (estado, função. Atualização, agentes, final) repita para cada

Simulação de Ambientes 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 Cuidado para não cair em tentação e “roubar” do ambiente a descrição do que aconteceu. Use a memória do agente! 40

Por que usar a “metáfora” de agentes? 1. Fornece uma visão unificadora das várias

Por que usar a “metáfora” de agentes? 1. Fornece uma visão unificadora das várias sub-áreas da IA 2. Fornece metodologias de desenvolvimento de sistemas inteligentes estendendo as de engenharia de software 3. Ajuda a embutir a IA em sistemas computacionais tradicionais 4. Permite tratar melhor a interação com o ambiente 5. Permite tratamento natural da IA distribuída 41

Próxima Aula Agentes baseados em conhecimento 42

Próxima Aula Agentes baseados em conhecimento 42