ia distribuída

33
Inteligência Artificial IA Distribuída Rafael Rosario [email protected] .br [email protected] .br

Upload: rafaeljoi

Post on 28-Jan-2015

140 views

Category:

Technology


8 download

DESCRIPTION

Apresentação geral sobre IA Distribuída, suas classificações (agentes inteligentes, sistemas multiagentes) e aplicações

TRANSCRIPT

Page 1: IA Distribuída

Inteligência Artificial

IA Distribuída

Rafael [email protected]

[email protected]

Page 2: IA Distribuída

IA Clássica x IA Distribuída (I)

Inteligência Artificial Clássica – IA:

Inteligência: comportamento humano individual. Origem psicológica;

Representação do conhecimento (simbólica, neuronal);

Redução do espaço de busca / Analogias;

Page 3: IA Distribuída

IA Clássica x IA Distribuída (II)

Inteligência coletiva: porque pensar a inteligência como propriedade de um único indivíduo?

Não existe inteligência em:um time de futebol? um formigueiro?uma empresa?na sociedade?

Page 5: IA Distribuída

IA Distribuída - Conceito

Sistemas de Inteligência Artificial Distribuída são a classe de sistemas que permite a vários processos autônomos, chamados agentes, realizarem atos de inteligência global.

Os agentes utilizam somente processamento local e comunicação inter-processos.

A meta dos sistemas IAD é poder coordenar atividades de grupo resolvendo problemas que os sistemas compartilham - totalmente ou em parte.

Page 7: IA Distribuída

Benefícios IAD (II)

• Mais Poder de Computação e Hardware mais barato;

• Maior Segurança e Tolerância a Falhas;

• Mais agilidade na resolução de sistema com a aplicação do paralelismo;

• Múltiplas Perspectivas;

• Melhor performance em problema com vários domínios e que podem envolver dados fisicamente distribuídos.

Page 9: IA Distribuída

Paralelismo – Prolog (I)

No Prolog temos casos em que o paralelismo ajuda, e outros não:

Algumas cláusulas OU podem ser executas em paralelo, juntando o resultado final;

Da mesma forma, algumas cláusulas E podem ser executadas em paralelo;

Outras cláusulas que compartilham variáveis não podem ser satisfeitas independentemente.

Page 10: IA Distribuída

Paralelismo – Prolog (II)

Identifique quais das cláusulas abaixo podem ser executadas em paralelo ou não, e porque:

tio (X,Y): - mae (Z,Y), irmaos (X,Z);tio (X,Y):- pai (Z, Y), irmaos (X,Z);

rico(X):- rendaAlta(X), semDívidas(X), patrimonio(X);

avo(X,Y):- genitor(X,Z), genitor (Z, Y);

Page 11: IA Distribuída

Agentes (I)

Um agente inteligente é uma peça de software que executa uma determinada tarefa empregando informação extraída de seu ambiente.

Podem ser entidades reais ou virtuais imersas num ambiente sobre o qual são capazes de agir.

Diferem das noções estáticas tais como módulos, conjunto de regras e bases de conhecimentos.

Juntos, agentes resolvem problemas complexos.

Page 12: IA Distribuída

Agentes (II)

Inspiração biológica: cada agente contribui para o todo. O comportamento individual pouco conta, importa o comportamento coletivo;

“O resultado final é maior que a soma das partes”

Page 13: IA Distribuída

Agentes (III)

Exemplo:

• Molécula de água, H2O: 2 átomos de hidrogênio e 1 átomo de oxigênio;

• Hidrogênio e oxigênio são inflamáveis;

• A água apaga o fogo.

O todo tem propriedades que as partes não possuem.

Page 14: IA Distribuída

Agentes - Características

Autonomia - escolhe a ação a tomar baseado mais na própria experiência do que no conhecimento embutido pelo projetista.

Reatividade - reage aos estímulos do ambiente.

Proatividade - além de responder a estímulos, exibe um comportamento de prever como atingir ou evitar um determinado estado ou objetivo.

Comunicação - troca informações com o ambiente e com os outros agentes;

Page 15: IA Distribuída

IAD – Sub-áreas

A IAD pode ser dividida em duas áreas de pesquisa:

• Resolução Distribuída de Problemas (Distributed Problem Solving - DPS)

• Sistemas Multiagentes (Multiagent Systems - MAS)

Page 16: IA Distribuída

Resolução Distribuída de Problemas (I)

Se caracteriza por ter como objeto principal o problema a ser resolvido:

• Problemas que requerem “esforço coletivo”;

• Distribuição de tarefas;• Distribuição de conhecimento

(resultados);

PROBLEMA

SOLUÇÃO

AGENTES

EXECUÇÃO

Page 17: IA Distribuída

Resolução Distribuída de Problemas (II)

Motivações:• Velocidade da resolução do problema:– Ex.: distribuição de uma aplicação em várias

máquinas;• Especialização inerente ao problema:– Ex.: monitoramento de uma grande área geográfica;

• Necessidade dos resultados serem distribuídos:– Ex.: Entrega distribuída.

Page 18: IA Distribuída

Resolução Distribuída de Problemas (III)

Exemplo: Contract Net

Page 19: IA Distribuída

Sistemas Multiagentes (I)

“Sistemas Multiagentes (SMA) são sistemas compostos por múltiplos elementos computacionais interativos (agentes).

Agentes possuem duas habilidades fundamentais: (1) decidir por si próprios o que devem fazer para satisfazer seus objetivos de projeto e (2) interagir com outros agentes de forma social (...)”.

(Michael Wooldridge, 2002)

Page 20: IA Distribuída

Sistemas Multiagentes (I)

Agentes podem preexistir ao problema.

Cada agente possui informação e/ou capacidades incompletas.

Não há um sistema de controle global.

Dados descentralizados.

Computação assíncrona.

AGENTES

PROBLEMA

SOLUÇÕES

EXECUÇÃO

Page 21: IA Distribuída

SMA – Classificação (I)

Reativos - consideram as informações correntes (momento) do ambiente para sua tomada de decisão, eles não têm "memória" para armazenar vivências.

Cognitivos- cognitivos podem aprender com suas experiências e são deliberativos (planejam e excetuam planos criados por eles).

Page 22: IA Distribuída

SMA – Classificação(II)

Para refletir:• Por não terem memória, os agentes reativos são mais

fáceis de implementar?

• Os agentes abaixo são reativos ou cognitivos?– Jogos Computadorizados?– Patrulhamento robotizado?– Vôo não tripulado?

Page 23: IA Distribuída

SMA Reativos

Baseados nos modelos etológicos (formigas, cupins,...):– Estímulo-Resposta ou Ação-Reação;– Grande número de agentes (até milhares);– Não há Representação do Conhecimento;– Não há Representação do Ambiente;– Não há Memória das Ações.

Usados para: Recuperação de Informações (redes de computadores) e Telecomunicações (reconfiguração do sistema), entre outros.

Page 24: IA Distribuída

SMA Cognitivos

Baseados nos modelos sociais humanos:– Representação explícita do ambiente e dos outros

agentes da sociedade;– Poucos agentes (dezenas no máximo);– Histórico das interações para planejamento das

ações futuras;– Comunicação com outros agentes de modo direto;

Page 25: IA Distribuída

Comunicação e Padronização(I)

Com a distribuição dos processos, surge o problema da padronização: Linguagem de comunicação entre os

agentes; Forma de representação do conhecimento;

Solução: Base de dados comun aos processos;

Diminui a comunicação inter-processos; Cada agente busca e grava dado na base.

Page 26: IA Distribuída

Comunicação e Padronização(II)

Sistema de quadro-negro (blackboard):

Repositório que armazena o conhecimento do problema e o estado da solução;

As fontes de conhecimento (KSs) resolvem suas partes e devolvem os dados ao blackboard;

Um sistema de controle (Agenda) coordena as atividades das KSs (inserções no blackboard).

Page 27: IA Distribuída

Aplicações (I)

Primeiro Vôo Não Tripulado (UAV) totalmente autônomo – Melbourne, Australia (jul/04):

O avatar foi guiado pelo sistema JACK de IAD;

O agente on-board escolheu a melhor rota para voar avaliando em tempo real variáveis como velocidade (ar e terra), tempo e posição (GPS);

Page 28: IA Distribuída

Aplicações (II)

Robocup – copa do mundo de futebol de robôs:– 5 robôs em cada time; – O time da Austrália utilizou o

JACK em cada um dos robôs;– Cada jogador é autônomo, mas

tem comportamento coletivo;

Page 29: IA Distribuída

Aplicações (III)

Recomposição da rede de transmissão de energia elétrica da região sul do Brasil, após um “blackout”.

Usa o Expert-Coop: ambiente para desenvolvimento de SMA cognitivos, heterogêneos e abertos.

Cada unidade da rede de transmissão de energia elétrica possui seu próprio domínio de conhecimento sobre os equipamentos e procedimentos operacionais.

As unidades se comunicam através de um mail box, e abrem “licitações” de tarefas. Ex.: ajudar a suportar uma sobrecarga de demanda.

Page 30: IA Distribuída

Aplicações (IV)

1. Um dos agentes da comunidade necessita realizar uma atividade cooperativa, abre uma licitação e difunde na comunidade o respectivo edital;

2. Os demais agentes da comunidade respondem com propostas, aceitando ou rejeitando a realização da tarefa licitada;

3. Cada uma das propostas para realizar a tarefa licitada, possui um valor numérico associado (Grade);

4. Recebidas as propostas, a de maior Grade vence.

Page 31: IA Distribuída

Aplicações (V)

Outras (várias) aplicações:• Agentes de busca na internet;• Controle espaçonaves (Deep Space 1);• Controle de tráfico aéreo;• Games;• Compra e Venda on-line via Internet;

Page 32: IA Distribuída

What is next?

Exercício: Pesquisar e apresentar sobre uma aplicação ou plataforma de desenvolvimento IAD. Sugestões:

SeSAm: ambiente para desenvolvimento de Simulação Multiagentes (http://www.simsesam.de/); Cougaar: arquitetura que suporta aplicações distribuídas baseadas em agentes (http://cougaar.org/) Outras: JADE, Aglets, Jason, LGPL Vôos não tripulados e outros (http://www.aosgrp.com/applications/index.html ) STI – Artigo sobre Sistemas tutores inteligentes e agentes inteligente:

http://www.edukbr.com.br/colunas/artigo_conteudo.asp?Id=22 e http://www.edukbr.com.br/colunas/artigo_conteudo.asp?Id=25

Artigo: Jogos usando IAD - http://www2.dbd.puc-rio.br/pergamum/tesesabertas/0210488_04_cap_02.pdf (SMA) ---http://www2.dbd.puc-rio.br/pergamum/tesesabertas/0210488_04_cap_03.pdf - (RNA) ---- http://www2.dbd.puc-rio.br/pergamum/tesesabertas/0210488_04_cap_06.pdf (Comunicacao entre agentes) -----

Artigo – Compra e Venda on-line: http://www.inf.ufes.br/~jpalmeida/cvitae/smarket-techreport.pdf Distribuição de produtos entre fábricas e mercados (

http://www.inf.furb.br/~jomi/tccs/ate98/fabiano/sld030.htm)

Page 33: IA Distribuída

Referências• http://www.aosgrp.com/index.html• http://64.233.169.104/search?q=cache:dnkuj0HoDwYJ:www.das.ufsc.br/g

ia/iaft-apoio/tra-iad.ps+ia+distribuida&hl=pt-BR&ct=clnk&cd=12&gl=br• http://cougaar.org/• http://penta.ufrgs.br/gr952/trab1/geren21.html• http://pt.wikipedia.org/wiki/Sistema_multiagente• http://tutorials.cougaar.org/pizza/• http://www.edukbr.com.br/colunas/artigo_conteudo.asp?Id=25• http://ia.ucpel.tche.br/~lpalazzo/Aulas/SMA/• http://pt.wikipedia.org/wiki/Sistema_multiagente• http://www.inf.pucrs.br/~blois/materiais/dsm/IntroducaoEAgentes.pdf