A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que:...

95
AGENTES Patricia Tedesco 1

Transcript of A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que:...

Page 1: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

1

AGENTES Patricia Tedesco

Page 2: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)
Page 3: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

3

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,...)age sobre ele através de atuadores (ex. vídeo,

auto-falante, impressora, braços, ftp, ...)possui objetivos próprios

explícitos ou implícitosescolhe suas ações em função das suas

percepções para atingir seus objetivos

Page 4: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

4

O QUE É UM AGENTE RACIONAL

Agente Racional faz a melhor coisa possívelsegue o princípio da racionalidade:

dada uma seqüência perceptiva, o agente escolhe, segundo seus conhecimentos, as ações que melhor satisfazem seu objetivo

Racionalidade ¹ Onisciência Limitações de:

sensoresatuadoresraciocinador (conhecimento, tempo, etc.)

Page 5: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

5

PROPRIEDADES ASSOCIADAS AOS AGENTES

Autonomia de raciocínio (IA):Requer máquina de inferência e base de

conhecimentoEssencial em sistemas especialistas,

controle, robótica, jogos, agentes na internet ...

Adaptabilidade (IA):Capacidade de adaptação a situações novasDuas implementações

aprendizagem e/ou programação declarativaEssencial em agentes na internet, interfaces

amigáveis ...

Page 6: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

6

OUTRAS PROPRIEDADES FREQÜENTEMENTE ASSOCIADAS AOS AGENTES

Comunicação & Cooperação (Sociabilidade): IA + técnicas avançadas de sistemas distribuídos:

Protocolos padrões de comunicação, cooperação, negociação

Raciocínio autônomo sobre crenças e confiabilidade Arquiteturas de interação social entre agentes

Essencial em sistemas multi-agente, comércio eletrônico, ...

Personalidade: IA + modelagem de atitudes e emoções Essencial em entretenimento digital, realidade

virtual, interfaces amigáveis ...

Page 7: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

EXEMPLO: AGENTE DE POLÍCIA

Ambiente

Agenteraciocínio

Conhecimento:- leis- comportamento dos indivíduos,...

Objetivo:- fazer com que as leis sejam respeitadas

Ações:- multar- apitar- parar, ...

execuçãopercepção

Page 8: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

8

AGENTESAlgoritmo Básico e Arquiteturas

Page 9: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

9

AGENTES: ALGORITMO BÁSICO

função agenteSimples (percepção) retorna açãomemória := atualizaMemória (memória,

percepção)ação := escolheMelhorAção(memória)memória := atualizaMemória (memória,

ação)retorna ação

Page 10: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

10

AGENTES: ARQUITETURAS

Agente reativo Agente reativo com estado interno Agente cognitivo (baseado em objetivos) Agente otimizador Agente adaptativo

autonomiacomplexidade

Page 11: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

11

AGENTES: ARQUITETURAS

De forma bem simplificada, um agente pode ser visto como um mapeamento: seqüência perceptiva => ação

sensoresAgente

atuadores

a m

b i

e n

t e

Raciocinadormodelo do ambiente

Page 12: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

Agente sensores

atuadores

Como está o mundo agora?

Que ação devo escolher agora? Regras “condição-ação”a

m b

i e

n t

e

AGENTE REATIVO

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

Page 13: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AGENTE REATIVO COM ESTADO INTERNO

Desvantagem: pouca autonomia não tem objetivo, não encadeia regras

Ambientes: determinista e pequeno Ex. Tamagotchi

sensores

Agente

Como está o mundo agora?

Regras “condição-ação”

estado: como o mundo era antes

como o mundo evolui

atuadores

Que devo fazer agora?a m

b i

e n

t e

impacto de minhas ações

Page 14: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

sensoresAgente

Como está o mundo agora?

Objetivos

como o mundo evolui

atuadores

Que devo fazer agora?

a m

b i

e n

t e

impacto de minhas açõesComo ele ficará se faço isto?

estado: como o mundo era antes

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

Page 15: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AGENTE OTIMIZADOR (UTILITY BASED)

Ambiente: sem restrição Desvantagem: não tem adaptabilidade Ex. motorista recifense

Segurança e velocidade – conflito!

ambiente

sensores

atuadores

Agente

Como está o mundo agora?

Que ação devo escolher agora?Função de Utilidade

qual é o impacto de minhas ações

como o mundo evolui

Este novo mundo é melhor?

Como ele ficará se faço isto?

estado: como o mundo era antes

Page 16: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AGENTE QUE APRENDE

Ambiente: sem restrição Vantagem: tem adaptabilidade (aprende) Ex. motorista sem o mapa da cidade

sensores

atuadores

Agente

Gerador de problemas

crítico

elemento de aprendizagem

avaliação

objetivos de aprendizagem

elemento de execução (agente)

trocas

conhecimento

a m

b i

e n

t e

t

t+1

t

Page 17: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

RELEMBRANDO...

Um agente é... Uma entidade autônoma, que percebe o

ambiente através de seus sensores e atua neste através de seus atuadores...

Assim... Como decidir que ações realizar?

Page 18: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AINDA OUTRAS ARQUITETURAS FAMOSAS...

Page 19: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AGENTES BASEADOS EM LÓGICA

Comportamento Inteligente = Representação simbólica do ambiente + do comportamento desejado

Formalismo: lógica Manipulação: dedução lógica

Teoria de agentes (): como os agentes devem se comportar

Page 20: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AGENTES BASEADOS EM LÓGICA

Estados internos dos agentes: fórmulas lógicas Aberta(válvula221) Interessante(aulaagentes)

Comportamento do agente: determinado por sua Base de Conhecimento (regras + fatos) Aquilo que o Agente acredita sobre seu ambiente

Três funções básicas: See – determina a percepção Next – atualiza a BC Action – escolhe a próxima ação

Page 21: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

O ROBÔ ASPIRADOR DE PÓ

Page 22: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

O ROBÔ ASPIRADOR

Agente recebe: Sujeira Null

Ações: para frente sugar virar

Objetivo: mover-se no ambiente buscando e removendo sujeira

Três predicados: Em(x.y) Sujeira(x,y) Direção(d)

Comportamento do agente função próximo regras de dedução

Page 23: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AGENTES BASEADOS EM LÓGICA

Função ´próximo´: Analisar as percepçõesAtualizar a Base de Conhecimentoremover informações velhas ou irrelevantes Inferência em várias partes:

velho() = {P(t1,...,tn}/ P {Em, Suj, Dir} & P(t1,...,tn} Novo: todas as novas posições, direções e possíveis sujeiras Próximo(,P) = ( \ velho()) Novo(,P)

Page 24: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

ALGORITMO BÁSICO

Função ação_agente-BL (BC):açãoPara cada a A faça

se BC faça(a) entãoretorne a

para cada a A façase BC ¬faça(a) então

retorne aRetorne nullFim ação_agente-BL

Page 25: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AGENTES BASEADOS EM LÓGICA

Regras de dedução:predicado(termo) predicado(termo)Ex: Em(0,0) Sujeira(0,0) Faça(sugar)

Problemas com essa abordagemComo mapear percepções para fórmulas?Complexidade da prova do teoremaDifícil representar conhecimento

procedimentalAmbiente estático!!! Como seria num

dinâmico?

Page 26: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AGENTES BDI

BDI – Beliefs, Desires, Intentions Motivação: Raciocínio prático

Processo de Decidir, a cada momento, que ações tomar para chegar mais perto dos objetivos.

ImplicaDecidir que objetivos quer realizarComo vão ser executados esses objetivos

RequerTrês conjuntos de sentenças lógicas: B, D e

I Estes conjuntos são consistentes entre si.

Page 27: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

OS ESTADOS MENTAIS

Crenças: o que se sabe sobre o estado do ambiente e dos agentes

“Recife é ensolarada”.

Desejos: estados do mundo que o agente quer atingir

“Eu gostaria de ganhar 45 milhões de reais

Intenções: Comprometimento com ações para alcançar objetivo

“Vou Ligar para o dentista”

Page 28: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

UM EXEMPLO...

Daniel acabou de se formar... O que fazer?Virar acadêmico... Ir para o Mercado

Se resolve ser acadêmico... Se compromete a realizar ações neste sentido IntençõesProcurar Emprego em uma Universidade.

E o mundo, como está? Crenças Daniel se formou, Daniel pode ser professor

Que Desejo escolher?

Page 29: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

DESEJOS

Especificam as preferências dos agentes sobre os estados do ambiente

Podem ser inconsistentesEu desejo perder 30 KgGostaria de comer quilos de chocolate

suíço Desejos causam intenções ações Objetivos: subconjunto consistente dos

desejos.

Page 30: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

INTENÇÕES Guiam a escolha das Ações

Devem ser c onsistente com desejos e crenças Devem ser persistentes Demasiado persistentes. Fazem o agente

perder tempo! Pouco persistentes. Não alcançam

nenhum objetivo É preciso reconsiderar as intenções com

alguma frequencia Ainda é possível realizá-las? Já foram realizadas? Seria melhor se comprometer com outra intenção?

Page 31: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

RECONSIDERANDO INTENÇÕES...

Tempo t = 0Desejo: Atingir o alienIntenção: Aproximar-se de PCrença: o Alien está em P

P

Page 32: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

RECONSIDERANDO INTENÇÕES...

Tempo t = 10Desejo: Atingir o alienIntenção: Aproximar-se de PCrença: o Alien está em P

P

?

Q

Page 33: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

O DILEMA BDI

O agente não para para reconsiderar suas intenções: Perde tempo tentando o impossível! (Xiita)

O agente para demais para reconsiderar: Não tem tempo de fazer nada! (Indeciso)

Como encontrar o balanço?

Page 34: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

O QUE O AGENTE BDI TEM?

3 conjuntos de sentenças Crenças Desejos Intenções

4 Funções Revisão de Crenças BRF(Bel, BC) Geração de Intenções Options(Bel, Int) Função Filtro Filter(Bel, Des, Int) Função Selecionadora de Ações

Execute(Int)

Page 35: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

A ARQUITETURA BDI

Agente

Como está o mundo agora?

Função Filtro

Função Revisão de Crenças

Que Intenções tenho?

A m

b i e

n t

e

Função de OpçãoQue objetivos podem ser alcançados?

Estado interno: Crenças, desejos, intenções

percepções+

ações

Sensores

Atuadores

Função de seleção de ações

Page 36: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

ALGORITMO DO AGENTE BDI

Programa Agente BDIt := 0 //contador de tempoenquanto Agente-BDI vivo, faça

Tell(BC, Percepções-Sentença(percepção,t))

BRF(Percepcao, BC)Desejos <- Options(BC, intençao)intençao <- Filter (Bel, Des, intenção)

ação <- Executa(intenção)fim

Page 37: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

MARCO

Mediador Artificial de Conflitos Media discussões entre agentes Humanos Raciocínio BDI/BGI

Page 38: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

MARCO

Page 39: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

UM EXEMPLO DE INTERAÇÃO

A. Eu acho que as vendas de natal começam no princípio de novembro

B. Por que? Acho que é mais tarde...A. Para dar tempo de fazer propaganda..B. Ah, ok.

Page 40: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

O FUNCIONAMENTO DE MARCOMArCo

Como está o mundo agora?

Função Filtro

Função Revisão de CrençasO povo mudou de idéia?

Atualizo modelos

Que Intenções tenho?Diá

log

o

Função de Opção: faço o povo elaborar as idéias?

Que objetivos podem ser alcançados?

Estado interno: Crenças (individuais e de grupo), desejos, intenções

percepções+

ações

Sensores

Atuadores

Função de seleção de ações

Page 41: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

Agentis (Australian Artificial Intelligence Institute)

Objetivo. Ajudar no desenvolvimento e manutenção de call centers Ou de portais na internet.

• Gera aplicações automáticas para os clientes• Reduz tempo de desenvolvimento e custos • Gera estatísticas de rendimento

Utilizado pela companhia de telecomunicações australiana para responder a 98% das chamadas ao sistema de ajuda ao usuário. Sistema comporta 4000 agentes.

                   

UM EXEMPLO REAL...

Page 42: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

ARQUITETURAS REATIVAS Alternativa a representação simbólica O comportamento do agente é produto de

sua interação com o ambiente Comportamento inteligente emerge da

interação entre vários comportamentos mais simples.

Abordagem comportamental, situada, reativa

Page 43: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

THE SUBSUMPTION ARCHITECTURE

a tomada de decisão é um conjunto de comportamentos realizadores de tarefa. Cada um é uma função de ação

Neste caso máquinas de estados finitos. Cada um assume a forma situação ação

Há uma hierarquia de comportamentos Comportamentos de nível mais baixo inibem os

de nível mais alto

Page 44: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

O ALGORITMO BÁSICO

Função ação (p:Percepção): açãovar disparado: nível; selecionada: açãodisparado <- {(cond, ação) }

para todo (cond, ação) disparadoSe ¬(cond’, ação’) disparado tal que

(cond’, ação’) < (cond, ação) return ação

return nullFim função ação

Page 45: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

A ARQUITETURA DE BROOKS

Módulos (e organização) definidos pelo designer

Pode ser usada para descrever agentes cognitivos também.

Page 46: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

UM EXEMPLO – ROBÔ EXPLORANDO AMBIENTE

Evitar obstáculos

Recarregar

Otimizar caminhos

Mapear território

Explorar

Pegar/largar objetosAvançar random.

Sensores

Atuadores

Ambiente

Page 47: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

UM EXEMPLO...

O objetivo é explorar um planeta distante, para coletar amostras de rocha. Não se sabe onde

estão, mas há áreas de maior concentração delas. Vários veículos autônomos estão disponíveis para coletar amostras e depois voltar para a nave-mãe. Há um mapa do planeta disponível, mas o planeta tem vários obstáculos que impedem os veículos

de se comunicar.

Page 48: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

PARA RESOLVER O PROBLEMA...

Utilização de dois mecanismos... Campo Gradiente/Potencial

Os objetos do ambiente emitem sinais, cuja intensidade é inversamente proporcional ao objetivo.

U(p) = Uatr(p) + U rep(p) Uatr(p) = k * dist(p, objetivo)2

U rep(p) = k’ * 1/dist(p, objetivo)2 se dist(p,

objetivo)<distinfl

0 caso contrárioComunicação Indireta

Fragmentos radioativos são deixados no caminho

Page 49: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

UM PARÊNTESE...

Outra forma de construir os campos potenciais é alterar o potencial de atração...Campo dividido em células

Procedure valor(x, v)Se x.potencial não está definido ou v<x.potencialEntão

x.potencial = v; para todo y vizinho de x valor(y, v+1)Senão faça nadaFim da procedure

Page 50: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

COMPORTAMENTOS UTILIZADOS...

1. se detectar obstáculo, mude de direção2. Se carregar amostras e na base, largue3. Se carregar amostras e fora da base, vá na

direção do gradiente4. Se achar amostra, pegue5. Se true, se mova randomicamente

Page 51: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

PARA ASSEGURAR COOPERAÇÃO

1. se detectar obstáculo, mude de direção

2. Se carregar amostras e na base, largue

3. Se carregar amostras e fora da base, largue dois fragmentos e vá na direção do gradiente

4. Se achar amostra, pegue5. Se detectar fragmento, pegue e vá

no sentido contrário ao gradiente6. Se true, se mova randomicamente

Page 52: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

NEM TUDO SÃO FLORES...

O ambiente deve fornecer informação suficiente para os agentes...

mais complicado tomar decisões de longo prazo.

Difícil projetar comportamento emergente. Difícil construir agentes com muitos

comportamentos.

Page 53: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

EM RESUMO...

Page 54: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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...

Page 55: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

DE FATO...

Mundo onde informações e conhecimentos crescem (e mudam) rápido demais!

O crescimento da Internet trás desafios constantes que incluem:Acesso a informações relevantes Identificação de oportunidadesAção no momento precisoManipulação de grandes volumes de informação

Ubiqüidade, Gerenciamento e Inteligência

Page 56: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

NO ENTANTO...

Vários problemas não podem ser tratados centralizadamente... Por exemplo...Controle de linha de metrôMonitoramento de Redes de ComputadorDiagnóstico MédicoCompra e Venda

Como Resolvê-los?

Page 57: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

57

INTELIGÊNCIA COLETIVAIA Distribuída

Page 58: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

UM CENÁRIO...

Page 59: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)
Page 60: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

60

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

Page 61: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

A IA DISTRIBUÍDA

Grupo de Entidades que podem InteragirOrganizaçãoAção e Interação

Metáfora de inteligência é o Comportamento Social.

Page 62: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

62

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, ...

1

53

4

8

6

7

2

1

5

3

4

8

6

7

2F 1

53

4

8

6

7

2

Page 63: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

63

AGENTES EM IAMetodologia (metáfora) para projeto de sistemas

Page 64: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

64

AGENTES:METODOLOGIA DE DESENVOLVIMENTO

Decompõe problema em: percepções, ações, objetivos e ambiente (e outros

agentes) Decompõe tipo de conhecimento em:

Quais são as propriedades relevantes do mundo? Como o mundo evolui? Como identificar os estados desejáveis do mundo? Como interpretar suas percepções? Quais as conseqüências de suas ações no mundo? Como medir o sucesso de suas ações? Como avaliar seus próprios conhecimentos?

O resultado dessa decomposição indica a arquitetura e o método de resolução de problema (raciocínio)

Page 65: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

65

SIMULAÇÃO DE AMBIENTES

Às vezes, é mais conveniente simular o ambiente mais simples permite testes prévios evita riscos, etc...

O ambiente (programa) recebe os agentes como entrada fornece repetidamente a cada um deles as percepções

corretas e recebe as ações atualiza os dados do ambiente em função dessas ações

e de outros processos (ex. dia-noite) é definido por um estado inicial e uma função de

atualização deve refletir a realidade

Page 66: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

66

SIMULAÇÃO DE AMBIENTES

função simulaAmbiente (estado, funçãoAtualização,agentes,final)repita

para cada agente em agentes faça

Percept[agente] := pegaPercepção(agente,estado)

para cada agente em agentes faça

Action[agente] := Programa[agente] (Percept[agente])

estado := funçãoAtualização(ações, agentes, estado)

scores := avaliaDesempenho(scores,agente,estado) //opcional

até final Cuidado para não cair em tentação e “roubar” do ambiente a

descrição do que aconteceu. Usar a memória do agente!

Page 67: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

67

COMO DESENVOLVER UMSOFTWARE INTELIGENTE

Projeto:Modelar tarefa em termos de ambiente,

percepções, ações, objetivos e utilidade Identificar o tipo de ambiente Identificar a arquitetura de agente adequada

ao ambiente e tarefa Implementação:

O simulador de ambientesComponentes do agente Testar o desempenho com diferentes

instâncias do ambiente

Page 68: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

68

PORQUE USAR A METÁFORA DE AGENTES?

1. Fornece metodologias de desenvolvimento de sistemas inteligentes estendendo as de engenharia de software

2. Fornece visão unificadora das várias sub-áreas da IA

3. Ajuda a embutir a IA em sistemas computacionais tradicionais

4. Permite tratar melhor a interação com ambiente

5. Permite tratamento natural da IA distribuída

Page 69: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)
Page 70: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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

Page 71: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

UM SISTEMA MULTIAGENTE

Ambiente

Esfera de Influência

Organização

Agentes

Interação

Recurso

Page 72: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

DEFININDO SMA

Um SMA é um sistema que possui os seguintes elementos:Um ambiente, EUm conjunto de objetos OUm conjunto de Agentes, A (AO)Um conjunto de relações R, que liga objetosUm conjunto de operações OpOperadores que representam os resultados das

operações em Op e as reações do ambiente a eles.

Page 73: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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

Page 74: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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...

Page 75: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

EM RESUMO...É 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.

Page 76: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

AS VANTAGENS...

Maior rapidez na solução dos problemas Diminuição do overhead de comunicação Maior flexibilidade Aumento da Segurança

Page 77: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

DUAS FORMAS DE PROJETO

Organização

Agentes

InteraçãoRestrições e Objetivos

Emergência dePropriedades

Page 78: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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?

Page 79: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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

Page 80: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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!

Page 81: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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 CInSua Família

Page 82: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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

Page 83: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

COORDENAÇÃO

Fundamental para o trabalho conjunto. Um SMA pressupõe coordenação entre seus

agentes! Porque...Há dependências entre as açõesNenhum indivíduo pode resolver o problema

sozinhoDeve-se respeitar as restrições globaisDeve-se garantir a harmonia na execução

conjunta de tarefas!

Page 84: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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 consistentementeQue tudo seja feito com dos recursos disponíveis

Page 85: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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!

Page 86: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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?

Page 87: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

ASSIM... Quando Encarar os SMA?

Page 88: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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.

Page 89: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

CONSIDERAÇÕES EM SMA

Ação Como coordenar ações?

O indivíduo e sua relação com o mundo Estados mentais

Interação Comunicação Negociação/Argumentação

Implementação

Page 90: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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”.

Page 91: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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...

Page 92: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

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!

Page 93: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

OBJEÇÕES A SMA... II

Não é só teoria dos Jogos? TJ muitas vezes desconsiderou a computação... Hipóteses da TJ são questionadas em SMA

O que eu vou fazer com Ciência Social? Ambas servem como ferramentas uma para outra. Mas são bem diferentes!!!!

Page 94: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

100

CONCLUSÕES

Page 95: A GENTES Patricia Tedesco 1 O QUE É UM A GENTE ? Qualquer entidade (humana ou artificial) que: está imersa ou situada em um ambiente (físico, virtual/simulado)

101

AGENTES NO MAPA DA COMPUTAÇÃONEM TODO AGENTE É INTELIGENTE!

InteligênciaArtificial

Engenhariade Software

SistemasDistribuídos

Agentes