520 likes | 617 Views
Introdução aos Sistemas Multiagentes. Patricia Tedesco. Ao fim da aula de hoje a gente deve. Relembrar o conceito de Agente Inteligentes Rever suas Várias Arquiteturas Definir o que é um Sistema Multiagentes Entender quais as principais questões a tratar no projeto de SMA.
E N D
Introdução aos Sistemas Multiagentes Patricia Tedesco
Ao fim da aula de hoje a gente deve... • Relembrar o conceito de Agente Inteligentes • Rever suas Várias Arquiteturas • Definir o que é um Sistema Multiagentes • Entender quais as principais questões a tratar no projeto de SMA
O que é um Agente? • Qualquer entidade (humana ou artificial) que: • está imersa ou situada em um ambiente(físico, virtual/simulado) • percebe seu ambiente através de sensores (ex. câmeras, microfone, teclado, finger, ...) • age sobre ele através de atuadores (ex. vídeo, auto-falante, impressora, braços, ftp, ...) • possui objetivos próprios • explícitos ou implícitos • escolhe suas ações em função das suas percepções para atingir seus objetivos
Como descrever um Agente? • Pode ser descrito em termos de seu PAGE: • P – percepções • A – ações • G – (goals) objetivos • E – (environment) ambiente • e outros agentes – nos sistemas multi-agentes
Agente sensores a m b i e n t e modelo do ambiente Raciocinador atuadores Agentes: Arquiteturas • De forma bem simplificada, um agente pode ser visto como um mapeamento: • seqüência perceptiva => ação
sensores Como está o mundo agora? a m b i e n t e Regras “condição-ação” Que ação devo escolher agora? atuadores Agente Reativo 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
Agente sensores estado: como o mundo era antes Como está o mundo agora? como o mundo evolui impacto de minhas ações a m b i e n t e Regras “condição-ação” Que devo fazer agora? atuadores Agente reativo com estado interno • Desvantagem: pouca autonomia • não tem objetivo, não encadeia regras • Ambientes: determinista e pequeno • Ex. Tamagotchi
Agente sensores 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 a m b i e n t e Que devo fazer agora? Objetivos atuadores Agente cognitivo - baseado em objetivo • 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
Agente sensores estado: como o mundo era antes Como está o mundo agora? como o mundo evolui Como ele ficará se faço isto? ambiente qual é o impacto de minhas ações Este novo mundo é melhor? Que ação devo escolher agora? Função de Utilidade atuadores Agente otimizador (utility based) • Ambiente: sem restrição • Desvantagem: não tem adaptabilidade • Ex. motorista recifense • Segurança e velocidade – conflito!
Agente que aprende Agente t+1 sensores crítico • Ambiente: sem restrição • Vantagem: tem adaptabilidade (aprende) • Ex. motorista sem o mapa da cidade 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 atuadores
IA e Agentes • IA cresceu muito nos anos 70 modelando a inteligência individual. • Advento das redes de computadores modificou as necessidades! • Inteligência como a integração dos processos de raciocinar, decidir, aprender e planejar. • O Modelo de Agente aparece então como catalisador...
De fato... • Mundo onde informações e conhecimentos crescem (e mudam) rápido demais! • Atualmente, a Computação tem a ver com... • Acesso a informações relevantes • Identificação de oportunidades • Ação no momento preciso • Manipulação de grandes volumes de informação
Assim, os sistemas da gente precisam de... • Ubiqüidade • Interconexão • Delegação • Inteligência • Orientação ao Usuário!!!!
No Entanto... • o aumento da complexidade trouxe... • Inteligência • Sistemas que podem agir por nós • Que operam independentemente • Que sabem representar os nossos interesses • E, por fim... Que podem cooperar e chegar a acordos! • Masss... Como fazer????
IA Distribuída Inteligência Coletiva
Inteligência Coletiva • Porque 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
A IA Distribuída • Grupo de Entidades que podem Interagir • Cooperando para resolver problemas • Coordenando Esforços • Negociando Acordos • Tudo isto de acordo com... • Organização • Protocolos de Interação • Metáfora de inteligência é o Comportamento Social.
3 5 3 5 7 8 1 7 8 1 1 2 3 4 2 6 4 2 6 4 5 6 7 8 IA Distribuída: dois tipos de sistemas • Resoluçã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, ... F
Duas noções fundamentais... • Resolução Distribuída de Problemas(RDP) envolve: • Um grupo de especialistas • Habilidades Complementares • Organização Fixa • Sistemas Multiagentes (SMA)... • Agentes podem preexistir • Organização varia em tempo de execução
Um Sistema Multiagente Interação Organização Agentes Recurso Esfera de Influência Ambiente
Definindo SMA • Um SMA é um sistema que possui os seguintes elementos: • Um ambiente, E • Um conjunto de objetos O • Um conjunto de Agentes, A (AO) • Um conjunto de relações R, que liga objetos • Um conjunto de operações Op • Operadores que representam os resultados das operações em Op e as reações do ambiente a eles.
Trocando em miúdos... • Um Sistema Multiagentes ... • Consiste de uma coleção de componentes autônomos, com objetivos particulares • Que se interrelacionam • De acordo com uma Organização • Interagindo, negociando e coordenando esforços para resolver tarefas
Mas... Por que mesmo distribuir? • Porque o problema é fisicamente distribuído. • Porque o problema é heterogêneo. • Porque o problema só pode ser resolvido pela integração de pontos de vista locais. • Porque precisamos de adaptação a mudanças estruturais...
É boa idéia quando... • Precisamos manter a autonomia das sub-partes; • As interações são complexas • Não é possível descrever o Problema a priori.
As vantagens... • Maior rapidez na solução dos problemas • Diminuição do overhead de comunicação • Maior flexibilidade • Aumento da Segurança
Duas Formas de Projeto Organização Emergência de Propriedades Interação Restrições e Objetivos Agentes
O que nos leva a dois níveis de considerações • Como construir os agentes individualmente? • Como fazê-los trabalhar juntos de maneira coerente?
O que, por sua vez, levanta as seguintes questões fundamentais... • Como a cooperação pode emergir? • Como identificar que precisa e com quem cooperar? • Como os agentes podem identificar Conflitos e negociar? • Como os agentes podem coordenar esforços? • Como os agentes podem se comunicar?
Considerações no Projeto de SMA • Três Grandes Grupos... • Aspectos Fundamentais • Como podemos garantir compatibilidade de ações? • Aspectos Arquiteturais • Características a serem providas pela arquitetura • Aspectos Ambientais • Como é o ambiente onde funciona o SMA?
E mais um importante... A Estrutura • Padrão de Relações entre os agentes e sua distribuição de habilidades • Cobertura: as habilidades necessárias para resolver problemas devem ser possuídas por pelo menos um agente; • Conectividade: Agentes devem interagir de forma que suas habilidades possam ser integradas
Comunicação • Habilita os agentes a intercambiar informações. • Percepção • Ação • Modelada sobre a comunicação humana • Atos de Fala • Blackboard • Tem esforços de padronização!
Organização • Conjunto de Compromisso Globais, Crenças e intenções comuns aos agentes que querem atingir um objetivo comum. • Definem... • Um conjunto de diretrizes... • Uma política de interação. • Muitos exemplos! • O CIn • Sua Família
Negociação • Esforço para solução de conflitos e cooperação • Grupo de agentes “self-interested” que consegue chegar a uma decisão conjunta. • Envolve.. • Linguagem • Protocolo – ex. Contract Net • Processo de Decisão
Coordenação • Fundamental para o trabalho conjunto. • Um SMA pressupõe coordenação entre seus agentes! Porque... • Há dependências entre as ações • Nenhum indivíduo pode resolver o problema sozinho • Deve-se respeitar as restrições globais • Deve-se garantir a harmonia na execução conjunta de tarefas!
Coordenação... II • Então coordenação é... • O processo pelo qual um agente raciocina sobre suas ações locais e as de outros agentes para garantir que a comunidade funcione coerentemente. • Visa garantir que... • Todas as partes necessárias existam na sociedade. • Interação que possibilite a execução das atividades. • Que todos atuem consistentemente • Que tudo seja feito com dos recursos disponíveis
Coordenação... III • Para coordenar com sucesso é preciso... • Uma estrutura... • Flexibilidade nas interações • Comunicação! • Negociação! • Conhecimento e raciocínio • Para reconhecer interações potenciais entre planos de ação!
Então... O fundamental é... • Interagir!!! • Com quem? • Quando? • Qual o conteúdo? • Como? Que processos e recursos? • Por que? • Como estabelecer a compreensão mútua?
Em resumo... No “PAGE” dos SMA a gente deve... • Considerar o que queremos realizar.. • O que precisaremos perceber? • Que decisões de que tipo serão tomadas? Por quem? Quando? • Como se dá a comunicação entre os agentes?
Design de SMA • Quando partir para SMA? • Quando o ambiente é aberto; • Quando os agentes são a metáfora natural. • Quando há distribuição de dados, controle ou expertise. • Quando estamos lidando com sistemas legados.
Problemas no Desenvolvimento de Agentes • Superestimativas do potencial dos agentes. • Dogmatismo a respeito dos agentes. • Não está claro porque usar agentes. • Construção de soluções genéricas para problemas específicos. • Desenvolver SMA é desenvolver Software... • SMA é software “multithreaded”.
E mais Problemas... • Seu projeto não explora concorrência. • Você resolve adotar sua arquitetura. • Seus agentes usam IA demais. • Os agentes estão em todos os lugares. • Não tem agentes suficientes. • A Interação é caótica...
Algumas aplicações “Diretas” de SMA • Engenharia de Software • Sistemas Complexos Interação • Computação “Self-Interested” • Aplicação de mecanismos da Economia em Computação • Grid Computing • Não lembra Solução Cooperativa de Problemas?
Algumas aplicações “Diretas” de SMA • Computação Ubíqua • Autonomia e Cooperação entre Aplicações e Dispositivos • Já ouviram falar de AmbientIntelligence? • Web Semântica • Computação Autonômica • Sistemas que se configuram, gerenciam e se adaptam a novos ambientes não lembram agentes?
O que levanta as seguintes questões fundamentais... • Como a cooperação pode emergir? • Como identificar que precisa e com quem cooperar? • Como os agentes podem identificar Conflitos e negociar? • Como os agentes podem coordenar esforços? • Como os agentes podem se comunicar?
Objeções a SMA • Não é a mesma coisa que SD? • Sincronização e Coordenação Dinâmicas • Agentes têm interesses próprios!!! • Não é IA? • SMA têm características de CC e de ES! • Em SMA, o aspecto social é fundamental!