1 Agentes Inteligentes e Sistemas Multi-agente Agentes de Interface IST- 2003/2004 Ana Paiva.
Transcript of 1 Agentes Inteligentes e Sistemas Multi-agente Agentes de Interface IST- 2003/2004 Ana Paiva.
1
Agentes Inteligentes e Agentes Inteligentes e Sistemas Multi-agenteSistemas Multi-agente
Agentes de InterfaceAgentes de Interface
IST- 2003/2004IST- 2003/2004Ana PaivaAna Paiva
A. Paiva
Sumário
Enquadramento: Tipologia de Agentes
Motivações
Considerações sobre Agentes de Interface
Relação Utilizador/Agente
Utilidade dos Agentes de Interface
A. Paiva
Sumário
Agentes de Interface: porquê?
Objecções aos Agentes de Interface
Construção de Agentes
Exemplo de Agente: “E-mail Agent”
Exemplo de Agente: Letizia
Plataforma para Agentes de Interface: Sofware Agents
A. Paiva
Agentes de Interface: Porquê?
Tecnologia como uma companheira: o computador invisível Precisão de computadores vs complexidade das pessoas Maior uso de computadores nas actividades diárias Interacção está a acompanhar avanços tecnológicos?
Domínio de “direct manipulation”
• Utilizador inicia todas as tarefas• Utilizador monitoriza todos os eventos
Problema: Difícil para utilizadores sem treino
A. Paiva
Alterar Metáfora: Direct Manipulation
Método Usado• visualização de objectos• acções em objectos de interface correspondem a acções nos
objectos reais• Nada acontece a não ser que o utilizador o faça acontecer
Tarefa para a qual foi desenhado• Fechada, estática e pouca informação estruturada do mundo
Agentes de Interface: Porquê?
A. Paiva
Agentes de Interface: Porquê?
Alterar Metáfora Direct Manipulation
Método Usado• Utilizador delega agentes que conhecem os interesses,
preferências e hábitos do utilizador• Agente faz sugestões e pode agir em benefício do utilizador• Muitas coisas podem acontecer, mesmo com o utilizador inactivo
Tarefa para a qual foi desenhado• Aberta, dinâmica e muita informação não estruturada do mundo
“Indirect Management”
A. Paiva
Agente Interface = Interface?
Melhores agentes não inibem acções do utilizador
Agentes assistem os utilizadores por diversas formas:• Efectuam tarefas em benefício do utilizador• Escondem complexidade• Treinam e ensinam o utilizador• Ajudam diferentes utilizadores a colaborar• Monitorizam eventos e procedimentos
Tarefas e Aplicações – conjunto virtualmente ilimitado• Filtragem de informação, gestão de correio, escalonamento de eventos,
selecção de livros, filmes, música, etc.
A. Paiva
Agente Interface = Interface?
A. Paiva
Agentes de Interface
Personagem representada pelo computador Actua e colabora em nome do utilizador Fornece assistência activa ao utilizador através de tarefas
computer-based Intermediário Interface desenhada para o utilizador Robot: Sensores e Actuadores correspondem a entradas e
saídas do agente.
A. Paiva
Agentes de Interface
A. Paiva
Principais Características (1/3)
Actividade• Actua estritamente em benefício do utilizador• Fornece vistoria, trabalho e perícia• Perceber objectivos -> traduzi-los em acções e
mostrar resultados• Obter mais informação
A. Paiva
Principais Características (2/3)
Sensibilidade e Reacção• Sucesso ou falha com base na capacidade de responder ao utilizador• Dimensões:
- Explícita – utilizador e sistema comunicam por um conjunto restrito de transacções
- Implícita – agente capaz de agir em favor do utilizador -> decidir e efectuar conjunto de acções.
Objectivos podem ser definidos de forma explícita
Problemas: - Requer inferência e esta é fuzzy- Uma inferência errada é pior do que não existir qualquer inferência
A. Paiva
Principais Características
Competência• Competente no domínio da aplicação e ambiente em que opera• Agente deve possuir ou poder gerar Meta-Conhecimento e Múltiplas
Representações• No limite, competência consiste em saber como seleccionar entre
múltiplas representações alternativas consoante as necessidades e estilos do utilizador
Meta-Conhecimento: sobre resolução de problemas num domínioMúltiplas Representações: Ambiguidades numa representação são
desambiguadas por outra representação; Fornecem a base para um ambiente de aprendizagem
A. Paiva
Principais Características
Acessibilidade• Características e predisposições do agente acessíveis ao
utilizador• Utilizadores têm “deixas” da representação externa para
inferir características internas• Conceptualmente, o utilizador pode prever o que deverá ser
feito em determinada situação com base na personalidade do agente
A. Paiva
Relação Utilizador - Agente de Interface
Compreensão: Utilizador compreende o agente? Pode confiar nele?
Controlo: Como o utilizador controla o agente? Distracção: Como minimizá-la? Facilidade de uso: É necessário um utilizador experiente? Personificação: Como representar o agente para o utilizador
A. Paiva
Compreensão
Problema: Colaboração Agente/Utilizador só pode ser útil se o utilizador confiar e compreender o agente:
• Como é que os utilizadores percebem o estado e funcionamento dos agentes?
• Como é que a pessoa aprende tudo o que o agente pode fazer?Solução
• Modelos acessíveis ao utilizador• Feedback contínuo do estado, acções e aprendizagem do agente
A. Paiva
Controlo
Problema: Utilizadores podem dar controlo a agentes autónomos, mas não podem sentir que o perderam:
• Como tornar os agentes não totalmente independentes do utilizador?
• Como acomodar diferentes quantidades de controlo para diferentes utilizadores?
Solução:• Permitir vários graus de autonomia• Utilizador pode definir grau de autonomia• Utilizador pode programar o agente
A. Paiva
Personificar Agentes?
Novo estilo de interacção: “indirect management”• Actuar como equipa
Comportamento dos Computadores• Predisposições de comportamento• Utilizador deve perceber e prever o comportamento dos
sistemas computacionais
A. Paiva
Distracção
Problema: Agentes devem manter o utilizador informado e interrompê-lo se necessário:
• Como definir o nível de interacção com os agentes?• Quando é que um evento é suficientemente importante para
interromper o utilizador?• Como se mantém o utilizador informado sem o interromper?
Solução:• Diminuir número de interrupções gradualmente• Utilizador pode programar situações que requerem interrupção• Feedback do agente sem requerer total atenção do utilizador
A. Paiva
Facilidade de utilização
Problema: Agentes efectuam acções que o utilizador não consegue ou não pretende fazer. Se o agente for complexo, o utilizador não o usará:
• Como é que os utilizadores devem instruir o agente sem necessidade de programação
• Como inserir os agentes, de forma discreta, nas aplicações
Solução:
• Não forçar utilizador a aprender uma nova linguagem• Usar a linguagem da aplicação para comunicar entre o agente e
utilizador
A. Paiva
Personificação
Problema: Lembrar o utilizador que existe um processo a actuar em seu benefício:
• Como personificar sem fazer pensar que o computador é inteligente?
• Como tirar vantagens da personificação? Solução:
• ???
A. Paiva
Utilidade de Agentes de Interface
Gestão de Tarefas Mundanas (ex: escalonamento) Pesquisas personalizadas de informação Companhia Aviso Ajuda em tempo de execução de um contexto interactivo
A. Paiva
Objecções aos Agentes de Interface
Agente como um “virus”
• “whining chatting little irritants”• Problema não está nos agentes “per se”, mas nos
processos e características que pretendem possuir.• Soluções:
1. Utilizador escolhe de uma lista de agentes2. Kit de configuração de agentes
Agente <-> estupidez
• Sente-se estúpido em pretender que exista uma “pessoa” no computador
A. Paiva
Objecções aos Agentes de Interface
Indirecção
• Para quê negociar com um agente se sei o que quero fazer Ética
• Motivação para o mesmo tratamento com “agentes reais” Necessidade de usar Inteligência Artificial
• Estrela está em eclipse• Não funciona• Se funcionasse, iria consumir mais ciclos do que as piores estimativas+ Muitos exemplos de sucesso de aplicação de Técnicas de IA+ Não se deve confundir um agente antropomórfico com uma completa
personalidade artificial
A. Paiva
Antropomorfismo
Antropomorfismo: Metáfora incompleta. Selecciona algumas características humanas e elimina outras
Vantagens:
• Estamos habituados a comunicar com pessoas• Perceber como o agente pensa, decide e age, com base nas
características externas• Conversação interactiva -> inferir e empregar convenções de
conversação• Dirige a atenção para as qualidades essenciais da natureza do
agente: sensibilidade e reacção, capacidade de efectuar acções, competência e acessibilidade
A. Paiva
Construção de Agentes
Problemas:
Competência: como adquirir o conhecimento necessário (quando, no quê e como ajudar o utilizador)
Confiança: Utilizador sente-se confortável com o agente
A. Paiva
Construção de Agentes: Abordagens
1ª Abordagem - Utilizador final programa o agente de interface (semi-autónomo). (e.g. Malone & Lai’s Oval system)
Problemas:
• Competência: Requer muito esforço do utilizador• Confiança: Não é problema. Utilizador confia nas suas
capacidades de programação
A. Paiva
Construção de Agentes: Abordagens
2ª Abordagem – Baseada em Conhecimento (e.g. UCEgo)
• Fornecer ao agente extensivo conhecimento do domínio do utilizador e da aplicação
Problemas:
• Competência: Muito trabalho do Engenheiro de Conhecimento e pouca reutilização
• Confiança: Utilizador não tem um modelo das limitações e forma de trabalho do agente
A. Paiva
Construção de Agentes – Machine Learning
Hipóteses
• Agente de interface pode programar-se a si próprio• Recebe um conhecimento mínimo inicial• Aprende o “comportamento” apropriado com o utilizador e
outros agentes• Trabalha como um assistente pessoal, isto é, torna-se cada
vez mais útil e competente
Metáfora: Assistente Pessoal
A. Paiva
Construção de Agentes – Machine Learning
Condições
• Comportamento repetitivo
senão o agente não aprende• Comportamento diferente para diferentes
utilizadores
senão a abordagem baseada em conhecimento seria melhor
A. Paiva
Machine Learning - Vantagens
Solução para o problema da confiança Requer menos trabalho do utilizador e programador Adaptação do agente ao utilizador / organização Facilidade de transferir informações, hábitos e conhecimentos entre
utilizadores
A. Paiva
Aquisição de Informação
Observando o utilizador Feedback do utilizador
• Indirecto: utilizador ignora sugestão do agente e age de forma diferente
• Directo: utilizador reprova atitudes do agente Exemplos do utilizador Pedindo conselho a outros agentes
• utilizador define “agentes professores”
A. Paiva
Aquisição de Informação
A. Paiva
Machine Learning - Exemplos
Electronic Mail Agent Meeting Schedule Agent News Filtering Agent Entertainment Selection Agent
A. Paiva
Exemplos: Agente de E-mail
Características:• Aprende a priorizar, apagar, encaminhar, ordenar e arquivar mensagens• Common Lisp no Mac com o software Eudora
Técnica de aprendizagem: Memory-based reasoning• O agente memoriza as situações ocorridas através das características:
- To:, From:, Cc:, Subject:, msg lida (bool), reply (bool)...• Nova situação é comparada com as memorizadas (medida de distância das
situações)• Os pesos das características são ajustados de acordo com as ações do utilizador• A cada previsão é dado um valor de confiança do agente
- dependendo das diferenças nas situações observadas e quantidade de situações arquivadas
A. Paiva
Exemplos: Agente de E-mail
A. Paiva
Exemplos: Agente de E-mail
A. Paiva
Exemplos: Agente de E-mail
•Limiares para previsão do agente definidos pelo utilizador
•Aquisição + rápida de Competência:
•pelo utilizador•colaboração entre agentes (e-mail)
A. Paiva
Exemplos: Letizia
Letizia???
"Letizia Álvarez de Toledo has observed that this vast library is useless: rigorously speaking, a single volume would be sufficient, a volume of ordinary format, printed in nine or ten point type, containing an infinite number of infinitely thin leaves."
- Jorge Luis Borges, The Library of Babel
A. Paiva
Letizia - Motivações
Manipulação directa de links na Web conduz geralmente a informação irrelevante
Grande crescimento da Web leva à necessidade de uma assistente inteligente de navegação
Facilitar pesquisas e navegação através da cooperação entre agente e utilizador
A. Paiva
Letizia
Agente de Interface Autónomo Ajuda a navegação Web Opera num browser tradicional como o Netscape Actua em paralelo com a actividade do utilizador -> está sempre activo Nunca toma controlo da interface. Apenas faz sugestões É dinâmico e incremental
A. Paiva
Como Funciona
Analisa o comportamento do utilizador (links seguidos, pesquisas, pedidos, etc.) Guarda URLs escolhidos pelo utilizador Tenta antecipar acções do utilizador Usa um conjunto de heurísticas para perceber e antecipar o comportamento do
utilizador A pedido do utilizador mostra as suas sugestões (observação passiva)
A. Paiva
Como Funciona
Não tem um interpretador de linguagem natural. Apenas guarda uma lista de palavras
Não determina medidas de qualidade de uma página. Define ordens de preferência entre elas.
Não altera a aplicação: Actua entre o browser e o utilizador
A. Paiva
Letizia: Interface
Três Janelas de Netscape
1. Janela normal de browse. Utilizador actua sem qualquer interferência do agente
2. Janela de Candidatos. Links que o Letizia pondera recomendar ao utilizador
3. Janela de Recomendações. Links que já passaram todos os testes. Letizia considera do interesse do utilizador
Configurações diferentes:• Duas Janelas• Vários perfis de utilizador
A. Paiva
Letizia – Interface
A. Paiva
Letizia – Recomendações
A. Paiva
Letizia: Procura Utilizador
Navegação normal: Sempre que o utilizador segue um link, a janela é recarregada com a nova página
Browser guarda num stack as páginas anteriores
Browsers incentivam a uma procura em profundidade primeiroProblema: O mesmo que em IA. Pode se entrar numa procura infinita quando a
solução estava na “vizinhança”
A. Paiva
Procura em profundidade
A. Paiva
Letizia: Procura Agente
Efectua uma procura em largura primeiro
• Distância 1, depois 2, etc. Quando o utilizador muda de página, é iniciada uma nova procura
Agente e utilizador actuam em cooperação
A. Paiva
Letizia - Procura
A. Paiva
Implementação
Macintosh Common Lisp Arquitectura object-oriented -> Facilita a introdução de novas Heurísticas Usa Netscape como browser e interface utilizador. Agente é um processo separado Lisp e Netscape comunicam através de AppleEvents e AppleScript “interprocess
communication”. Parsing do HTML feito por “Zebu parser-generator”
A. Paiva
Referências
“Software Agents”, Jeffrey Bradshaw http://www.semanticweb.org/events/dagstuhl2000/ http://pattie.www.media.mit.edu/people/pattie/ http://lieber.www.media.mit.edu/people/lieber/ http://www.eps.ufsc.br/teses99/thiry/