460 likes | 719 Views
Aplicações de Agentes Inteligentes. Agentes: o que são?. Programação Orientada a Agentes envolve um conjunto de metáforas, ferramentas e tecnologias para construir sistemas complexos Evolução procedimentos/funções => programação estruturada objetos => programação orientada a objetos
E N D
Agentes: o que são? • Programação Orientada a Agentes • envolve um conjunto de metáforas, ferramentas e tecnologias para construir sistemas complexos • Evolução • procedimentos/funções => programação estruturada • objetos => programação orientada a objetos • agentes => programação orientada a agentes • Importante • distinguir análise/projeto de implementação • ex. sistema de informação (biblioteca) • procedimentos... • objetos... • agentes...
Agentes: como usar? • Nível de conhecimento • modelagem do negócio: classe de problema, domínio,... • elicitação: percepções, ações, objetivos, ambiente, conhecimento,... • Nível de formalização • análise e projeto: especificar arquitetura, escolher e usar uma LRC para escrever a base de conhecimento,... • Nível de implementação • Agent0, java, prolog, C... • o importante são os serviços oferecidos pela linguagem!
Agentes: por que e quando usar? • Tarefas • 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.) • Algumas capacidades • Comportamento guiado por objetivos e autonomia • Reatividade e raciocínio • Adaptabilidade e aprendizagem • Comunicação e cooperação • Personalidade • outros: mobilidade, persistência temporal, ...
Busca de informação na Web: morrendo ignorante em um mar de informação • Como localizar a informação relevante? • Como modelar o interesse de um usuário particular?
Automação de sistemas complexos • Como modelar os componentes do sistema e dar-lhes autonomia? • Como assegurar uma boa comunicação e coordenação entre estes componentes?
Produção de jogos e histórias interativas • Como modelar o comportamento e personalidade para criar ilusão da vida? • Como permitir uma boa interação com usuário e um comportamento adequado? Deep Blue Woggles
Controlar robôs HAZBOT: ambientes com atmosfera inflamável • Como obter navegação segura e eficiente, estabilidade, manipulação fina e versátil? • E no caso de ambientes dinâmicos não deterministas?
Classes de tarefas das aplicações Classe Problemas Abordados Interpretação Inferindo descrições das situações por observações Predição Inferindo prováveis conseqüência de dadas situações Diagnóstico Inferência de mal funcionamento do sistemapor observações Projeto Configurando objetos sobre restrição Planejamento Desenvolvimento de plano(s) para realização de objetivo(s), meta(s) Monitoramento Comparando observações para planos, detectando exceções
Aplicações Agricultura Negócios e finanças Química Comunicações Comércio Computação Educação Eletrônica Engenharia Meio ambiente Geologia Processamento de imagem Direito Indústria Matemática Medicina Meteorologia Militar Sistemas de potência Ciência Tecnologia espacial Transportes, ...
Aplicações em computação • Internet • Redes e Sistemas Distribuídos • Banco de dados • Engenharia de software • Interfaces • Robótica • Jogos • Hardware (projeto e análise) • Etc.
A Internet • Informação não estruturada, de escopo aberto, multilíngue, ... e em enorme quantidade • Usuários diversificados • Desafios • prover informação aos usuários leigos; • libertar os usuários das tarefas repetitivas da WEB; • envio de informações relevantes aos usuários. • Formato, Conteúdo.
Categorias de Agentes na Internet por Tipos de Serviços • Agentes de Busca e Recuperação de informação • Agentes de Extração de Informação • Agentes de Entrega Off-line • Agentes Notificadores • Agente Corretores (interoperabilidade) • Agentes para Ensino a distância • Agentes de Chat • Agentes para Comércio Eletrônico • etc.
Agentes de BuscaArquitetura Usuário Search Engine Consulta Browser Servidor de Consultas Base de Índices Resposta )--( Robô Web Indexing Engine Busca Exemplos: Radix, AltaVista, Lycos, Excite, ...
Agentes que filtram InformaçãoArquitetura Servidor de News Browser Perfil do usuário Artigos Indexados Internet Indexing Engine Agente de Filtragem • Filtram as informações encontradas de acordo com o perfil do usuário.
Exemplos Base de Índices Usuário Search Engine Consulta Servidor de Consultas Browser Softbot Resposta Perfil do usuário • NewsHound • Busca notícias em diversos jornais a partir do perfil dado • Envia informações através de e-mail ou páginas html. • Utiliza critérios de relevância • MetaCrawler • Programa inteligente que usa outros engenhos de busca em prol do usuário
Agentes de Entrega Off-line Agentes que filtram informação, mas que não necessitam de conexão permanente à Internet. Software desktop Exemplo: Pointcast Serviço de divulgação de notícias Propriedades Autonomia Continuidade temporal
Agentes Notificadores • Notifica o usuário de eventos de importância para ele. • Mudança no conteúdo de uma página na Web. • Mudança de endereço de uma página. • Exemplo: URLMINDER • Monitora páginas na Webe comunica aos usuários se houve mudanças nelas • Checa páginas pelo menos 1 vez/dia • Não faz busca recursiva de URLs.
Agentes de Chat Session Log Padrões de Conversação ChatterBot Usuário • Também chamados de Avatares • Podem aparecer nas salas de Chat ou para help online de MUD’s • “Conversam” com usuários Web • Alguns baseiam-se em casamento de padrões • e.g., Eliza • Referências: Consultbot - Eduardo Laureano • http://www.cin.ufpe.br/~fab/publications/consultbot.doc
Comércio Eletrônico • Hoje • informação • marketing • processamento do pedido • Problemas • O que comprar? • Onde comprar? • Quanto pagar? • Amanhã • shoppings eletrônicos, com agentes representando vendedores e compradores • leilões, com agentes fazendo lançes
Modelo de compra • identificação da necessidade • recomendação de produtos • pesquisa de mercado • negociação • compra e envio • serviço e avaliação de produtos MEDIADOS POR AGENTES Agent-Mediated Electronic Commerce
Identificação da necessidade • Agentes de notificação • exemplos: • amazon.com (novos livros disponíveis) • fastparts.com (novos lançes afetam os seus) • classifieds 2000 (produto específico disponível por um preço específico) • produtos: • Firefly • Microsoft • Oracle, ...
Recomendação de produtos • Agentes de recomendação • exemplos: • amazon.com, barnesandnoble.com, ZDNet.com, mylaunch.com, personalogic - AOL,...
Pesquisa de mercado • Agentes de comparação. • exemplos: • bargainfinder, jango (excite), fido. miner (uol), priceline • … • produtos: • agentsoft, Israel • junglee
Negociação consumidor agente de compra agentes de venda lojas • Agentes de negociação • pesquisa: • Kasbah - MarketMaker (MIT Media Lab) • Tete-a-Tete (MIT Media Lab) • AuctionBot (Univ. of Michigan) • ShopBot (DI-UFPE)... • produtos comerciais: • Moai Technologies, Inc • BusinessBots, Inc
Negociação: leilão • AuctionWeb Auction Fever!
Agentes em Intranets • Gerência de redes e sistemas distribuídos • Monitoramento e diagnóstico de falhas • Balanceamento de carga • Detecção de intrusão • Etc…
Gerenciamento de redes e sistemas distribuídos heterogêneos • Problemas da política centralizada • Gargalo no administrador; • Requer muito processamento na plataforma de administração; • Excesso de tráfego na rede • Tarefas de Gerenciamento • Monitorar estado e tráfego em conexões; • Manter operacionais os nós da conexão; • Automatizar distribuição de arquivos; • Manter inventário de HW; • Gerenciar recursos compartilhados; • Gerenciar SW instalado; • Atualizar versões de SO’s e SW’s; • Implantar e manter políticas de segurança; • Atender as necessidades dos usuários; • ...
Agentes (móveis) Inteligentes • Promessas • Aumentar confiança e qualidade de serviço para usuários • minimizar a complexidade na gerência • Como? • Programas migratórios • Operam no mesmo local, sem sobrecarregar a rede • Retornam somente dados relevantes ou compilados • Pequenos sistemas em esforço cooperativo para a realização de tarefas.
Detecção de Intrusão • Motivação: • Firewalls só conseguem conter ataques conhecidos. • Firewalls não conseguem conter ataques oriundos da rede interna. • Ataques (internos ou externos) deixam sintomas. • Possibilidade de previsão de ataques.
Onde os agentes entram ? • Detectando sintomas: • Periodicamente verificando permissões etc... • Detectando cenários: • Periodicamente analisando o tráfego etc... • Possibilidade de oferecer serviços adicionais: • Otimizando a coleta de informações relevantes; • Disparando “triggers”; • Possibilidade de oferecer “capacidade reativa” automática da rede atacada. • Desconectando o intruso; • Bloqueando o tráfego para a Internet etc… • Enviando mensagem para o operador do backbone
Banco de dados • Motivação • Quantidades imensas de dados que devem se transformar dados em informação útil • Análise de Mercado e de tendências • Sistemas de Suporte à Decisão • Gerência Empresarial • Agentes • Ferramentas inteligentes para descoberta e integração de conhecimento em BDs • Data mining • Data warehouse • On-Line Analitical processing (OLAP)
Data Mining (Mineração de Dados) • O que é? • análise inteligente visando manipulação automática de quantidades imensas de dados • Larga aplicação nos mais variados ramos da indústria, comércio, medicina, governo, administração, etc. • Integra várias técnicas e tecnologias • Exemplos • Bank of America • Selecionou entre seus clientes, aqueles com menor risco de dar calotes • Em três anos o banco lucrou 30 milhões de dólares com a carteira de empréstimos • Fraldas e cervejas • homens casados, entre 25 e 30 anos compravam fraldas e/ou cervejas às sextas-feiras à tarde • Wal-Mart otimizou as gôndolas e o consumo cresceu 30%
Descoberta de conhecimento: etapas Interpretação e avaliação Data mining Transformação Pré-processamento Seleção Conhecimento Padrões Dados transformados Dados pré-processados Dados 1os. dados
OLAP • OLTP (usuários) e OLAP (analistas e gerentes)
Entretenimento • Diversos tipos de aplicações • histórias interativas • animações em ambientes virtuais • jogos • Requisitos p/ sucesso em jogos • bons níveis de interação • bons níveis de realismo gráfico • ótimo gameplaying • Para gerar ilusão de vida é preciso expressar e controlar • personalidade, emoções, atitudes => atores sintéticos
Exemplos CyberLife: Creatures OZ: Woggles El Fish PFMagic:Petz
Exemplos Maxis: SimLife Fujitsu: Fin Fin
Robótica Robôs Pequenos Robôs Médios
IA simbólica no CIn Flávia Barros fab@cin.ufpe.br Geber Ramalho glr@cin.ufpe.br Jacques Robin jr@cin.ufpe.br Francisco Carvalho fatc@cin.ufpe.br Professores Alunos/2001
Projetos em andamento • Mercado Virtual • Negociação entre agentes para comércio eletrônico • Meta-busca de páginas especializadas • páginas de lista de publicações • Extração de informação • de home-pages de publicações para banco de dados • Administração de sistemas heterogêneos • espaço em disco • Atores sintéticos para jogos • Guararapes e Enigmas do Campus • Recuperação de informação com Wordnet
Projetos em andamento • Ambientes Virtuais de Estudo Cooperativo • agentes para ensino à distância pela internet • Robótica e sistemas multi-agentes • robocup: simulator • Acompanhamento musical automático • percepção, previsão de acordes, improvisação,... • Integração de técnicas descoberta de conhecimento em BD automatizada • OLAP e Data Warehouse • Planejamento de sistemas celulares • otimização baseada em agentes
Disciplinas de IA na Graduação • Fundamentos de IA • Res. de Problemas, Repr. de Conhecimento e Raciocínio • Intro. à Redes Neurais Redes Neurais Inteligência Artificial Simbólica Programação em Lógica
Disciplinas de IA na Pós-graduação • Básicas: • Métodos de C.I. 1 • Busca, Representação do conhecimento e raciocínio, Sistemas especialistas • Aplicações de C.I. • Redes Neurais e Probabilidade • Agentes Inteligentes • Eletivas: • Métodos de C.I. 2 • Aprendizagem Simbólica, Planejamento, Sistemas multi-agente, etc... • Agentes Inteligentes • Redes Neurais • Data Mining • ETCCCCCC = ~compint/eletivas.html