1 Agentes Inteligentes e Sistemas Multi-agente Agentes de Interface IST- 2003/2004 Ana Paiva.

Post on 17-Apr-2015

109 views 0 download

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/