Você está na página 1de 35

Problema: Auxlio Compras na Web

CIn- UFPE

Problema: Automatizao de
sistemas de potncia

objetos: rios, barragens, turbinas, transformadores, linhas, ...


CIn- UFPE

Problema: Produo de histrias


interativas
. Criar iluso da vida (ex. Walt
Disney)
. Permitir interao com
usurio
. Modelar comportamento e
personalidade (ex.
tamagotchi)

CIn- UFPE

E a?
O que estes problemas tm em comum?
Grande complexidade (nmero, variedade e natureza das
tarefas)
No h soluo algortmica, mas existe conhecimento
Modelagem do comportamento de um ser inteligente
(autonomia, aprendizagem, conhecimento, etc.)

Inteligncia Artificial (IA)


H 30 anos lida com esses problemas.
Objetivo: construir (e aprender a construir) programas que,
segundo critrios definidos, exibem um comportamento
inteligente na realizao de uma dada tarefa.

CIn- UFPE

Um programa de IA pode ser visto como um


Agente Racional

Plano da aula
O que um Agente Racional (inteligente)?
Qual sua utilidade em IA?
Ambientes e arquiteturas
Aplicaes
Estado atual do conceito de agente

CIn- UFPE

O que um agente
Agente qualquer entidade que:
percebe seu ambiente atravs de sensores (ex. cmeras,
microfone, teclado, finger, ...)
age sobre ele atravs de efetuadores (ex. vdeo, auto-falante,
impressora, braos, ftp, ...)

ambiente

Mapeamento: seqncia perceptiva => ao

sensores
Raciocinador
efetuadores

Agente
modelo do
ambiente

Medida de
Desempenho
Critrio que define o grau de sucesso de um agente na
realizao de uma dada tarefa
Esta medida deve ser imposta do exterior
M escolha da MD pode acarretar comportamento
indesejado
Compromissos entre objetivos mltiplos conflitantes
Resta o problema de saber quando avaliar o desempenho
Exs. aspirador de p, provador de teoremas, filtragem de
e-mails, policial de trnsito, avaliador de clima...

CIn- UFPE

Agente Racional (McCarthy & Hayes 69, Newell 81)

Agente Racional: fazer a melhor coisa possvel


segue o princpio da racionalidade: dada uma seqncia
perceptiva, o agente escolhe, segundo seus conhecimentos,
as aes que satisfazem melhor seu objetivo.

Problema
estado inicial + aes => estado final (objetivo)

Racionalidade Oniscincia, limitaes de:

sensores
efetuadores
raciocinador (conhecimento, tempo, etc.)
Agir para obter mais dados perceptivos racional

CIn- UFPE

Autonomia e utilidade
Autonomia
Capacidade de adaptao a situaes novas, para as quais
no foi fornecido todo o conhecimento necessrio com
antecedncia
Duas implementaes: aprendizagem e/ou programao
declarativa

Para construir um sistema inteligente, utilizamos


linguagem
inferncia
conhecimento

CIn- UFPE

10

A Metfora de agente
decompe

1) Problema em:

percepes, aes, objetivos, e ambiente (e outros agentes)

2) Tipo de conhecimento em:

Quais so as propriedades relevantes do mundo


Como o mundo evolui
Como identificar os estados desejveis do mundo
Como interpretar suas percepes
Quais as conseqncias de suas aes no mundo
Como medir o sucesso de suas aes
Como avaliar seus prprios conhecimentos

3) Arquitetura e mtodo de resoluo de problema

CIn- UFPE

Agente

raciocnio

Conhecimento:
- leis
- comportamento
dos indivduos,...

percepo

Ambiente

Agente de
policia
Objetivo:
- fazer com que as leis
sejam respeitadas

execuo

Aes:
- multar
- apitar
- parar, ...

Agente
Diagnstico
mdico

Dados
perceptivos

Exemplos de
agentes Objetivos
Aes

Sintomas,
Perguntar,
Sade do paciente,
paciente, exames prescrever exames, minimizar custos
respostas, ...
testar

Ambiente
Paciente,
gabinete, ...

Anlise de
imagens de
satlite

Pixels

imprimir uma
categorizao

categorizar
corretamente

Imagens de
satlite

Tutorial de
portugus

Palavras
digitadas

Imprimir exerccios,
sugestes,
correes, ...

Melhorar o
desempenho do
estudante

Conjunto de
estudantes

Filtrador de
mails

mensagens

Aceitar ou rejeitar
mensagens

Aliviar a carga de
leitura do usurio

Mensagens,
usurios

Motorista de
taxi

Imagens,
velocmetro,
sons

brecar, acelerar,
dobrar, falar com
passageiro, ...

Msico de jazz

Sons seus e de
Escolher e tocar
outros msicos, notas no andamento
grades de
acordes

Segurana,
Ruas, pedestres,
rapidez, economia,
carros, ...
conforto,...
Tocar bem, se
divertir, agradar

Musicos,
publico, grades
de acordes

13

Ambient
e
Classes de ambientes
Fsico: robs
Software: softbots
Realidade virtual (simulao do ambiente fsico): softbots e
avatares

Propriedades de um ambiente

acessvel x inacessvel
esttico x dinmico
determinista x no-determinista
discreto x contnuo
episdico x no-episdico
tamanho: nmero de percepes, aes, objetivos,...

CIn- UFPE

14

Ambientes: propriedades
Acessvel: quando os sensores do agente conseguem
perceber o estado completo do ambiente.
Determinista: o prximo estado do ambiente pode ser
completamente determinado pelo estado atual e as aes
selecionadas pelo agente.
Episdico: a experincia do agente dividida em
episdios. Cada episdio consiste em o agente perceber e
ento agir. Cada episdio no depende das aes que
ocorreram em episdios prvios.

CIn- UFPE

15

Ambientes: propriedades
Esttico: o ambiente no muda enquanto o agente est
escolhendo a ao a realizar.
Semi-esttico: o ambiente no muda enquanto o agente
delibera, mas o "score" do agente muda.

Discreto: quando existe um nmero distinto e claramente


definido de percepes e aes em cada turno.
Contnuo: percepes e aes mudam em um espectro
contnuo de valores.

CIn- UFPE

Exemplos de
ambientes
Agente

acessvel determinista episdico

esttico

discreto

xadrez sem relgio

Sim

Sim

No

Sim

Sim

xadrez com relgio

Sim

Sim

No

Semi

sim

gamo

sim

no

no

sim

sim

motorista de taxi

No

No

No

No

No

mdico

No

No

No

No

No

tutor

No

No

No

No

Sim

Analisador de imagem

Sim

Sim

Sim

Semi

No

Busca na web

No

No

Sim

No

Sim

Filtrador de mail

Sim

No

Sim

No

Sim

Msico

Sim

No

No

No

No

+ O Tamanho do ambiente dado por:


nmero de percepes, aes e objetivos possveis

17

Algoritmo bsico
funo agenteSimples (percept) retorna ao
memria := atualizaMemria (memria, percept)
ao := escolheMelhorAo(memria)
memria := atualizaMemria (memria, ao)
retorna ao

Arquiteturas

Agente tabela
Agente reativo
Agente reativo com estado interno (autmato)
Agente cognitivo (baseado em objetivos)
Agente otimizador
Agente adaptativo
autonomia
complexidade

CIn- UFPE

Agente tabela
sensores

Agente

Tabela
percepes
aes
.
.
.
.

ambiente

efetuadores
Limitaes
Mesmo Problemas simples -> tabelas muito grandes
ex. xadrez 30^100

Nem sempre possvel, por ignorncia ou questo de tempo,


construir a tabela
No h autonomia nem flexibilidade

Ambientes
acessvel, determinista, episdico, esttico, discreto e minsculo!

ambiente

Agente reativo
sensores

Agente

Como est o mundo agora?


Que ao devo escolher agora?

Regras
condio-ao

efetuadores

Vantagens e desvantagens

Regras condio-ao: representao inteligvel, modular e eficiente


ex. Se velocidade > 60 ento multar
No pode armazenar uma seqncia perceptiva, pouca autonomia

Ambientes:

Reflexo imprescindvel em ambientes dinmicos


Acessvel, episdico, pequeno

ambiente

sensores

Agente reativo com estado


Agente
interno

Como est o mundo agora?

estado: como o mundo era antes


como o mundo evolui
impacto de minhas aes

Que devo fazer agora?


efetuadores

Desvantagem: pouca autonomia


no tem objetivo, no encadeia regras

Ambientes: determinista e pequeno


Ex. Tamagotchi

Regras
condio-ao

Agente cognitivo (baseado em objetivo)

ambiente

sensores

Agente
estado: como o mundo era antes

Como est o mundo agora?

como o mundo evolui

Como ele ficar se fao isto?

impacto de minhas aes

Que devo fazer agora?

Objetivos

efetuadores

Vantagens e desvantagens:
Mais complicado e ineficiente, porm mais flexvel, autnomo
No trata objetivos conflitantes

Ambientes: determinista
ex.: xeque-mate no xadrez

Agente otimizador (utility


based) Agente
sensores

estado: como o mundo era antes

Como est o mundo agora?


ambiente

Como ele ficar se fao isto?


Este novo mundo melhor?
Que ao devo escolher agora?
efetuadores

Ambiente: sem restrio


Desvantagem: no tem adaptabilidade
Ex. motorista recifence

como o mundo evolui


qual o impacto de
minhas aes
Funo de Utilidade

Agente que
aprende

ambiente

sensores

t+1

crtico
avaliao

t
elemento de
execuo (agente)

Agente

trocas

elemento de
conhecimento aprendizagem

t
efetuadores

Ambiente: sem restrio


Vantagem: tem adaptabilidade (aprende)
Ex. motorista sem o mapa da cidade

objetivos de
aprendizagem
Gerador de
problemas

24

Simulao do ambiente
s vezes mais conveniente simular o ambiente
mais simples
permite testes prvios
evita riscos, etc...

O ambiente (programa)
recebe os agentes como entrada
fornece repetidamente a cada um deles as percepes
corretas e recebe as aes
atualiza os dados do ambiente em funo dessas aes e
de outros processos (ex. dia-noite)
definido por um estado inicial e uma funo de atualizao
deve refletir a realidade

CIn- UFPE

25

Simulao de ambiente
funo simulaAmbiente (estado, funoAtualizao,agentes,final)
repita
para cada agente em agentes faa
Percept[agente] := pegaPercepo(agente,estado)
para cada agente em agentes faa
Action[agente] := Programa[agente] (Percept[agente])
estado := funoAtualizao(aes, agentes, estado)
scores := avaliaDesempenho(scores,agente,estado) //opcional
at final

Observao:
no cair em tentao roubando do ambiente a descrio do que
aconteceu. Usar a memria do agente!
CIn- UFPE

26

Inteligncia coletiva
Porque pensar a inteligncia/racionalidade como
propriedade de um nico indivduo?
No existe inteligncia ...

Em um time de futebol?
Em um formigueiro?
Em uma empresa (ex. correios)?
Na sociedade?

Soluo: IA Distribuda
Agentes simples que juntos resolvem problemas complexos
tendo ou no conscincia do objetivo global
Proposta por Marvin Minsky e em franca expanso...
o prprio ambiente pode ser modelado como um agente
CIn- UFPE

27

IA Distribuda: dois tipos de sistemas


Resoluo distribuda de problemas
conscincia do objetivo global e diviso clara de tarefas
Exemplos: Robtica clssica, Busca na Web, Gerncia de
sistemas distribudos, ...

Sistemas Multi-agentes
no conscincia do objetivo global e nem diviso clara de
tarefas
Exemplos: n-puzzle, futebol de robs, balanceamento de
carga, robtica, ...

3
7
4

5
8
2

CIn- UFPE

Questes

28

Questes centrais

comunicao
negociao (ex. compra-venda na Web)
estados mentais
crena, ...

Tenso (trade-off)
Quanto mais agentes, mais simples (sub-dividido) fica o
problema
No entanto, mais complexa fica a comunicao e
coordenao entre os agentes

CIn- UFPE

29

Evoluo da noo de Agente


alm das fronteiras da IA....

CIn- UFPE

Agente: ainda no h uma definio nica

30

IBM: Intelligent agents are software entities that carry out


some set of operations on behalf of an user, and in doing so
employ some knowledge representation of the users goals
or desires
KidSim: Agent is a persistent software entity (agents have
their own ideas about how to accomplish tasks) dedicated to
a specific purpose (smaller than multifunctions applications)
SodaBot: Software agents are programs that engage in
dialogs to negotiate and coordinate transfer of information
CIn- UFPE

31

Tcnicas &
Problemas Agora

Antes....
programas

programas

IA

agentes
inteligentes

agentes mveis,
agentes de software,
robs, ...

CIn- UFPE

Autonomia (IA)

Propriedade
s

32

raciocnio, comportamento guiado por objetivos


reatividade

Adaptabilidade & aprendizagem (IA)


Comunicao & Cooperao (IA)
Personalidade (IA)
Continuidade temporal
Mobilidade
CIn- UFPE

33

Agentes na
Internet
Categorias por Tipos de Servios:
Agentes de Busca e Recuperao (ex. Altavista)
Agentes que Filtram Informaes (ex. KOM)
Agentes de Entrega Off-line (ex. PointCast)
Agentes Notificadores (ex. URL-Minder)
Agentes de Suporte ao Comrcio (ex. BargainBot)
Agente corretor (interoperabilidade - ACL)
Outros...

CIn- UFPE

Agentes em IA

Concluse
s

34

Metodologia (metfora) para projeto de sistemas


Sistemas multi-agentes e robtica

Agentes em computao
Adoo de uma nova metfora (antropomrfica e
sociolgica). Extrapolao de OOP
IA: autmato -> mente
Agentes: objetos -> pessoas

Integrao de tcnicas de IA
Novas tecnologias prprias Web (ex. mobilidade)
Marketing (moda)

Agentes: tcnica ou metodologia ?


CIn- UFPE

35

Desenvolver software
inteligente
Projeto:
Modelar tarefa em termos de ambiente, percepes, aes,
objetivos e utilidade
Identificar o tipo de ambiente
Identificar a arquitetura de agente adequada ao ambiente e
tarefa

Implementao
o gerador e o simulador de ambientes
componentes do agente (vrios tipos de conhecimento)
Testar o desempenho com diferentes instncias do ambiente

CIn- UFPE

Você também pode gostar