INTELIGÊNCIA ARTIFICIAL
Eugénio Oliveira
Ana Paula Rocha
Henrique Lopes Cardoso
Think
INTELIGÊNCIA ARTIFICIAL
Eugénio Oliveira / FEUP
OBJETIVOS GENÉRICOS DA UNIDADE CURRICULAR:Incursão em um novo “continente” do saber ! 3 Palavras chave:
* CONHECIMENTO (mais além do que Dados)
* LÓGICA e outros paradigmas (mais que algoritmia) * ENGENHARIA (além de Ciência)
INTELIGÊNCIA ARTIFICIAL
Objetivos:
* APRENDER novos MÉTODOS de resolver problemas
* USAR outras TÉCNICAS de realizar Sistemas Comp. * REALIZAR diferentes PROGRAMAS para pesquisar soluções Conclusão: APRENDER novas formas de resolver Problemas
INTELIGÊNCIA ARTIFICIAL
I
I-INTRODUÇÃO À INTELIGÊNCIA ARTIFICIAL
•
Metodologias e Objetivos
• Aspetos
científicos
e
tecnológicos
•
Debilidades
metodológicas
específicos embora intersetando com outras áreas das Ciências da Computação e das C. Cognitivas, das Neurociências, da Sociologia, da Economia e da Electrónica
nos domínios da Programação, da Algoritmia, da Teoria das Probabilidades, da Estatística, da Análise Sistémica, da Perceção e Interpretação de dados e outros ramos da Engenharia.
Eugénio Oliveira / FEUP
INTELIGÊNCIA ARTIFICIAL
CIÊNCIA DA COMPUTAÇÃO ENGENHARIAS: Computação Eletrónica Robótica ... INTELIGÊNCIA ARTIFICIAL: Ciência Versus TecnologiaComentários > ambígua (a definição contém o definido); > verdade de "Lapalice" (computadores mais úteis).
INTELIGÊNCIA ARTIFICIAL
Definições
"A Inteligência Artificial é o estudo das ideias que, implementadas
no computador, lhes permitam realizar os mesmos objetivos que
fazem as pessoas parecer inteligentes".
"Mais especificamente a IA tenta que os computadores sejam mais úteis e ao mesmo tempo estuda os princípios que tornam a inteligência possível"
Eugénio Oliveira / FEUP
INTELIGÊNCIA ARTIFICIAL
Definições
Research priorities for robust and beneficial artificial intelligence
(S.Russel et al. Jan2015)
for the last 20 years AI has been focused on the problems surrounding
the construction of intelligent Agents - systems that perceive and act in
some environment.
In this context, the criterion for intelligence is related to statistical and
economic notions of rationality - colloquially, the ability to make good
"O campo da Inteligência Artificial tem como pressuposto que
existem
processos
comuns baseando perceção e pensamento e
que estes processos podem ser compreendidos e estudados
cientificamente. Além disso é completamente irrelevante para
a teoria da IA quem (ou o quê) "percebe" ou "pensa" - homem
ou computador. Isso é um detalhe de implementação...".
N. Nilsson ex-director do Stanford Research Institut; Stanford
Robotics Lab.
INTELIGÊNCIA ARTIFICIAL
Comentário:> polémico. A IA desviou-se, durante algum tempo deste paradigma para se tornar mais realista, mais independente do funcionamento da mente humana.
Eugénio Oliveira / FEUP
"A IA é o estudo dos processos que possibilitam aos computadores
realizar tarefas para as quais, no momento, as pessoas são mais
aptas.“
E. Rich.
Comentário:> Vaga. Incompleta. Mas aproximativa da verdade na sua simplicidade
Outra definição:
A Inteligência Artificial é uma disciplina científica cujo objetivo
fundamental é realizar sistemas computacionais capazes de exteriorizar
comportamentos operacionais
semelhantes aos humanos em situações
estereotipadas.
INTELIGÊNCIA ARTIFICIAL
As técnicas de programação usadas, de pesquisa não deterministica,
baseiam-se, pelo menos parcialmente, em Linguagens declarativas, sendo
essencialmentalmente relacionais, baseadas na lógica ou funcionais.
Existem ferramentas (“Tools”) incluindo algoritmos de inspiração
estatística (frequencista ou não) para extração de conhecimento
Eugénio Oliveira / FEUP
• EVOLUÇÃO:
Ciência da Cognição + Ciência da Computação Inteligência Artificial Engenharia do Conhecimento Agentes Autónomos “Data Science” Robótica
INTELIGÊNCIA ARTIFICIAL
• DIFERENCIAÇÃO:Técnicas de Inteligência Artificial para:
i) problemas complexos requerendo aplicação ou extração de Conhecimento ii) Modelação do raciocínio e tomada de Decisão
Fazer as máquinas
raciocinar…
Modelos
Computacionais para o
estudo
da (ou de acordo com a) mente racionalMáquinas que
realizam funções
requerendo inteligência
Estudar processos
computacionais que
simulam ação inteligente
Definições de Inteligência Artificial organizada em 4 categorias
Sist. que “pensam” como humanos Sist. que “pensam” racionalmente Sist. que “agem” como humanos Sist. que “agem” racionalmente
INTELIGÊNCIA ARTIFICIAL
racionalidade
humanos
pensar
INTELIGÊNCIA ARTIFICIAL
INTELIGÊNCIA ARTIFICIAL : SINÓPSE CRONOLÓGICA
"Pré-História" 1956 Clássico 1962 Romântico 1974 Pragmático 1982 Difusão/Integração Refundação Antropomorfi. 1990
Filosofia (Lógica) Matemática : Boole Frege Psicologia: Behaviorismo Cognitivismo (experimentalismo W. James) Cibernética Teste de Turing Teoria da Informação (SHANNON) Modelo do Neurónio Artificial
(McCulloch & Pits) Computação neuronal (Doutoramento de Minsky)
Nascimento da IA:
Reunião do Dartmouth College (Minsky, McCarthy, Simon,
Newell, Shannon,..). Logic Theorist e G.P.S. (Newell&Simon&Shaw) Geometry P.S. (IBM) Jogo de Damas (A. Samuel) LISP, Time-sharing (McCarthy) Pesquisa+ Conhecimento (advice taker)
Grupos: MIT (Minsky) U.Stanford (McCarthy) Computadores da 5º Geração (MITI) Hdw dedicado: Controlo "Fuzzy" ESPRIT S.Baseados em Conhecimento divulgados SOAR - Newell Aprendizagem Automática ML 1ª Conf. em. AGs
2000 Agentes Emocionais KISMET Agentes Robóticos Inteligência Social /Redes Data & Text Mining Semântica da LN + Web E-Business Intelligence SMA Cognitivos Robótica reactiva (Brooks) 2017 Engª do Conhecimento Sistemas Periciais: MYCIN Raciocínio incerto e Probabilístico: Prospector Frames (Minsky) PROLOG (Colmerauer) (Feigenbaum) Dendral Tom Mitchell em Stanford, “Formação de Conceitos (ML) Redes Neuronais Agentes "situados" IA Distribuída: S.Multi-Agente Ag. cognitivos IA + Web Deep Blue COG no MIT Robô humanóide (R.Brooks) Ni ck Je nnings A.T. C.S.. M.M. A.S.. Saída do Reconhecimentode Padróes HEARSAYII- Blackboard P. da Resolução
Cálculo Integral (SAINT) Gramática SIR (B.Raphael) Eliza
Minsky & Papert e a polémica dos perceptrões (A.Robinson) Perceptrão (Rosenblatt) Hiperplano separando 2 classes J.Mc.. Robótica ("Shakey") Shakey. Neocognitron Fukushima G.H.. Deep Learning App. (Geo. Hinton 2006 e outros antes)
Bringing Common Sense
, Expert Knowledge, and S
uperhuman Reasoning to C
omputers
PROGRAMA DE INTRODUÇÃO À INTELIGENCIA ARTIFICIAL I INTRODUÇÃO
Objetivo
Metodologia (ensino e avaliação)
Evolução e Cronologia da Inteligência Artificial Documentação
II NOÇÕES BASICAS
III MÉTODOS DE RESOLUÇÃO DE PROBLEMAS
PROGRAMA
Definições: o que é a I. A. ? Aplicações: em que domínios ? Definições básicas de Agente
Arquiteturas de Agentes: dos Reativos aos Cognitivos
Sistemas de "Produções"
Estratégias de Controlo da Pesquisa Sistemática
Encadeamento directo e inverso (Primeiro em Prof. e Primeiro em Largura) Pesquisa irrevogável: “Subir-a-colina” ( "hill climbing“)
“Arrefecimento Simulado” (“Simulated Annealing”)
Eugénio Oliveira / FEUP
III MÉTODOS DE RESOLUÇÃO DE PROBLEMAS (cont.)
PROGRAMA
** Apresentação pelos alunos e mini-teste de avaliação na Aula Teórica
Computação Evolucionária (Algoritmos Genéticos) (“ML-Evolutionaries”) Pesquisa Heurística: "O melhor primeiro"
Algoritmo A* e decréscimo progressivo da admissibilidade Análise Meios-Fins
Métodos de Satisfação de Restrições: Princípios da "Relaxação"
** Pesquisa em "Jogos": Procedimento Minmax Cortes Alfa-Beta
Exemplos em Prolog de estratégias básicas:
IV INTRODUÇÃO À REPRESENTAÇÃO DO CONHECIMENTO
V ENGENHARIA DO CONHECIMENTO
PROGRAMA
** Apresentação pelos alunos e avaliação na Aula Teórica
Definição de um Sistema de Representação
Estruturas de Representação:
Regras de Produção; Redes Associativas "Frames"; "Scripts"
Lógica de Predicados e Outras Lógicas Raciocínio Inexacto:
Modelo Probabilístico (Redes Bayesianas);(“ML-Bayesians”) Fatores de Certeza;
Modelo Dempster-Schafer; **Lógica dos Conjuntos Difusos
Lógica: Logica Proposicional, Logica de Predicados, Lógica Intencional. (referência)
Sistemas Baseados em Conhecimento
Sistemas Periciais: Caraterização Estrutura
Rep. do Conhecimento e Meta-Conhecimento Motor de Inferência e Geração de Explicações Casos exemplares de Sistemas Periciais:
ORBI; SMYCIN; ARCA Demonstrações
Eugénio Oliveira / FEUP
VI INTRODUÇÃO À LINGUAGEM NATURAL COMPUTACIONAL
VII APRENDIZAGEM AUTOMÁTICA (“ML- Symbolists”)
VIII INTRODUÇÃO ÀS REDES NEURONAIS (“ML- Connectionists”)
PROGRAMA
** Apresentação pelos alunos e mini-teste de avaliação na Aula Teórica
Objetivos e dificuldades
Análises Sintática e Semântica
ATN; Redes Associativas; "Frames“; Casos Típicos (referência) Aproximação clássica e uso da Lógica :
Gramáticas com Cláusulas Definidas; alguns ex. em Português Gramáticas de extraposição
Tipos de aprendizagem
ap. de Conceitos; ap. pelo exemplo; ap. por analogia ap. Baseada em Explicações (EBL) :
Descrição dos Algorítmos para EBG, mEBG e IOL; Exemplo concreto
Aprendizagem Indutiva: Algoritmos ID3 e C4.5 Exemplos de Aplicação
Princípios básicos
Acompanhamento dos Exercícios em Prolog e trabalhos 1 2 3 4 5 6 7 8 9 10 11 12 Intr. IA Noções Básicas Representação
Conhecimento LinguagemNatural SPeric
iais Aprendizagem Simb. Automática RNA 13
Agentes, pesquisa, minimax, AG, optimização
14 15 16 17 18 19 20 21 22 23 24 25 Repres. Conhec;SP Pesq.Sistem. 26 Lançamento trabalhos
PROGRAMA
AG LNatura l Aprend. Métodos de Resolução de ProblemasEugénio Oliveira / FEUP
BIBLIOGRAFIA de Inteligência Artificial
Quadros tópicos disponibilizados no “sítio web” da disciplina- Eugénio Oliveira
LIVROS
• "ARTIFICIAL INTELLIGENCE: A Modern Approach", S.Russel and P.Norvig; Prentice Hall, 3rd Ed 2010 • "ARTIFICIAL INTELLIGENCE" E. Rich; K. Knight, 2nd Ed., MacGraw-Hill, 1991
• “C4.5-Programs for Machine Learning" Ross Quinlan,Morgan Kaufmann,1993 • "THE ART OF PROLOG" Sterling and Shapiro, MIT Press, 1986
• “The Master Algorithm”, Pedro Domingos, Basic Books, 2015.
• "INTELIGÊNCIA ARTIFICIAL-Fundamentos e Aplicações " E.Costa, A.Simões; FCA editores, 2004
BIBLIOGRAFIA
• REVISTAS
• “Autonomous Agents and Multi-Agent Sytems”, Springer • "ARTIFICIAL INTELLIGENCE“ Elsevier-North-Holland • "IEEE EXPERT"
Trabalhos práticos tipo Mini-Projecto
• B. Resolução de Problemas de Otimização
B1. Otimização de Corte de Placas de madeira/vidro
B2. Otimização do Problema de Alocação de Lotes de Terreno B3. Otimização de Horários de Motoristas dos STCP
B4. Otimização da Localização de Prontos-Socorro numa Cidade
B5. Aplicação de Algoritmos Genéticos para localização de uma Barragem
Métodos: Pesquisa Sistemática/Informada, Algoritmos Genéticos, Pesquisa Tabu, Arrefecimento Simulado
A. Pesquisa Sistemática/Informada de Soluções
A1. Pesquisa de trajetos em redes de transportes públicos A2. Trajeto de um robô em ambiente conhecido
A3. Pesquisa aplicada ao Problema de Alocação de Lotes de Terreno A4. Pesquisa aplicada à resolução do jogo Rush
A5. Pesquisa aplicada à resolução do Solitário Sokoban
Eugénio Oliveira / FEUP
TRABALHOS
C. Pesquisa com Adversários – Jogos
C1. Jogo de Tabuleiro – Tic-Tac-Ku C2. Jogo de Tabuleiro – Yinsh
C3. Jogo de Tabuleiro – Hex C4. Jogo de Tabuleiro – Blockade
C5. Jogo de Tabuleiro – Samurai de Reiner Knizia
Métodos: Algoritmo MiniMax com Cortes Alfa-Beta e variações deste
D. Engenharia do Conhecimento e Linguagem Natural
D1. Desenvolvimento de uma "Shell" (com fuzzy)
D2. Sistema de Regras para controlo de dispositivos de Domótica, usando Jess D3. Informações sobre voos da TAP em Linguagem Natural
D4. Informações sobre Filmes de Cinema em Cartaz em Linguagem Natural D5. Informações sobre Restaurantes na cidade do Porto em Linguagem Natural
Métodos: Representação do Conhecimento, Raciocínio Incerto, Sistemas
TRABALHOS
E. Algoritmos de Aprendizagem e Redes Neuronais
Usar WEKA ou RapidMiner sobre Data Sets como: spam/ no spam; NIST;20NEwsGroup DS
E1. Reconhecimento de Sinais de Trânsito utilizando Redes Neuronais
E2. Aplicação de ID3 ou C4.5 à classificação de Área Destruída em Incêndio E3. Previsão de Área destruída num incêndio utilizando Redes Neuronais E4. Aplicação de ID3 ou C4.5 à classificação da Qualidade de Vinhos Verdes E5. Previsão da qualidade de um Vinho Verde utilizando Redes Neuronais
Eugénio Oliveira / FEUP
• Cálculo das classificações:
– Exame 50% (mínimo 7,5 em 20)
– Frequência 50% (mínimo 7,5 em 20)
» Participação e avaliação nas Aulas 30% da freq.
» Relatório + Trabalho Intercalar 15% “
» Qualidade e Apresentação doTrabalho 40% “
» Relatório Final 15% “
Eugénio Oliveira / FEUP
-
Nova abordagem
:
- Algoritmo:
Cálculo das próximas configurações possíveis (filhos do nodo)
encontra solução SENÃO considerar respostas possíveis para cada nó
TÉCNICAS
Abordagem tradicional:
- Algoritmo simples
- Desvantagens
- Desvantagem:
Mais tempo (todas as sequências possíveis antes de cada movimento)-Vantagem:
Extensível, versátil (vários jogos,heurísticas; vários níveis), menos memóriaMatriz M com todas as configurações possíveis de vetores (Vi) número ternário (configuração) à decimal
indexar nova posição na Matriz
Nova posição corresponde ao vetor resposta Vj
gasto de memória; introdução de todas as situações (erros);inflexível
Avançada: apren
der com exp
eriência
EXEMPLOS SIMPLISTAS e intuitivos da abordagem “orientada IA” (GOFAI):
Exemplo B: Representação do conhecimento
Reconhecimento de Letras
TÉCNICAS
- Uma alternativa:
- Contar o nº de 1s em cada sub-área
(ou a razão entre “1” e “0”)- Construir vector com os resultados
- Computar distância para os padrões
B
Entradas: contagem de 0s e 1s da matriz analógica (chave: nº 1s de 3 linhas da matriz e combine-as sem colisões numa f. de hashing)
Desvios de letras significativos ou não
Existência de muitos padrões implicam colisões
- Desvantagens:
I J
l I
- Uma abordagem tradicional:
matriz analógica:
Eugénio Oliveira / FEUP
- Nova abordagem:
-Padrões como descrições de caraterísticas:
arc (a,b) AND up(a,b) AND line(b,c) AND left(c,b) AND (nil OR (line(b,d) AND down(d,b))) AND
(nil OR (line(a,e) AND up(e,a))) - Algoritmo - Vantagem a b c d e
TÉCNICAS
- Encontrar instâncias das primitivas (arcos, linhas) - Relacioná-los e comparar com os padrões
- Selecionar o mais próximo
Permite variação de tamanhos; descrições alternativas com simplicidade -TÉCNICAS DE IA envolvidas nos exemplos: PESQUISA E REPRESENTAÇÃO SIMBÓLICA
Outros méto
dos expeditos
incluem us
o de redes n
Exemplo C: Extração de Conhecimento a partir de Dados
TÉCNICAS
- Dados:
- Linhas em Tabelas de Bases de Dados - Símbolos alfanuméricos em ficheiros
- Palavras em textos (notícias, mensagens ...)
Algoritmos estatísticos que reconheçam Padrões relevantes
Eugénio Oliveira / FEUP
ALGUNS DOMÍNIOS DE INVESTIGAÇÃO E APLICAÇÃO 1 Compreensão Computacional da Linguagem Natural
compreender ≡ traduzir
Domínios para a INTELIGÊNCIA ARTIFICIAL
F --> SN SV SN --> Qt SN1
SN --> SN1
SN1 --> N FADJ Gramática elementar FADJ--> nil | FADJ ADJ
SV --> V SN N --> João | bola |…
ADJ --> branca | … Qt --> a | o | … V --> atira
Nova abordagem: basea
da em frequência e cooco
rrências
• Tratamento superficial : Análise Lexical (Ex: Eliza )
• Análise em profundidade implica: Sintática, Semântica, Pragmática Frase: João atira a bola branca
• Interpretação Semântica fundamental para selecção da Ação ex: Qual é o valor da Aptidão do solo à Agricultura no ponto X1,Y1 Depois da Análise sintática, a análise semântica gera:
ponto(X1, Y1, D, V), a( 3, D, V-R).
• A Ação é a produção da resposta às questões aqui definidas (objetivos).
Domínios para a INTELIGÊNCIA ARTIFICIAL
Outras situações também requerendo análise semântica:
O político mentiu sobre o assunto X à opinião negativa sobre o político Análise
mais expedita
Eugénio Oliveira / FEUP
SISTEMAS PERICIAIS ("EXPERT SYSTEMS") ESPECÍFICO VS GERAL
Conhecimento Vs "Inteligência"
Domínios para a INTELIGÊNCIA ARTIFICIAL
SISTEMA SIMULADOR DO PERITO:
Uso de Conhecimento SIMBÓLICO E HEURÍSTICO Uso de Conhecimento INCERTO, VAGO, INCOMPLETO Acesso ao Conhecimento MODULAR
Conhecimento DEDUTIVO
Geração automática de EXPLICAÇÕES
ROBÓTICA
- ARQUITETURAS: Cognitivas e Reativas; Híbridas - PERCEÇÃO: Fusão sensorial e Interpretação de Cenas - DECISÃO: Geração Automática de Planos
• "Frame Problem" - Linguagens: Nível Tarefa - Visão + Interpretação
- COORDENAÇÃO de Equipas
Eugénio Oliveira / FEUP
* Indução de Regras e Classes baseada em:- analogia; exemplos; explicações
* “Data e Text Mining”
- Representação e Criação de novo Conhecimento;
- Reconhecimento de padrões (texto, imagem, música, PERFIS)
* Adaptação progressiva à melhor solução (Alg. Evolucionários)
Classificação e agrupamento de itens; previsões:consumos, finanças…. NOVAS LÓGICAS para o Racicinio Automático
Domínios para a INTELIGÊNCIA ARTIFICIAL
- de ordem n
- Modais e Intencionais - temporais
- não-monótonas
INTELIGÊNCIA ARTIFICIAL DISTRIBUÍDA
-AGENTES DISTRIBUÍDOS E COOPERATIVOS Aplicações em domínios DDD:
- Gestão e análise de Redes (energia, sociais, distribuição) - Oficinas de Produção (CIM)
- Softbots (Pesquisadores, Shopbots,...) - Mercados Eletrónicos (Leilões, contratos) - Instituições Eletrónicas (Empresas Virtuais,
Negociação, contratação)
- Agentes “Emocionais”
- Simulação de eco-sistemas, tráfego, desastres, ...
Domínios para a INTELIGÊNCIA ARTIFICIAL
ARQUITETURAS CONETIVISTAS E NEURONAIS - Informação sub-simbólica:
• Previsão
• Controlo adaptativo (de Robôs)
• Reconhecimento de padrões (imagens, texto,…)
Eugénio Oliveira / FEUP
TUTORES INTELIGENTESRepresentação de Conhecimento do domínio,
Estratégias Pedagógicas de Ensino (Itinerários de formação adaptativos)
Estratégias de Adaptação/Classificação e constituição de perfis
Domínios para a INTELIGÊNCIA ARTIFICIAL
SIMULAÇÃO DE COMPORTAMENTOS Humanos
Arquiteturas “mentalistas” e baseadas em “Emoções” Coordenação de equipas de entidades autónomas
Sistemas ecológicos; mobilidade rodoviária; evacuações…
COMPUTAÇÃO ECONÓMICA BASEADA EM AGENTES (ACE) “
Computational study of economic processes as dynamic
systems of interacting agents
”Modelos de mundos virtuais com leis económicas onde agentes de vários tipos interagem e evoluem no tempo
AGENTES COMPUTACIONAIS
* Agentes são entidades computacionais dispondo de capacidade de
perceção
do ambiente exterior a si (através de "sensores") e de
interação
com esse ambiente (através de "efetuadores").
Introdução aos Agentes
* Agentes usam
sequências
percecionais juntamente com eventual
conhecimento à priori para agirem de forma a
maximizar
o seu
desempenho.
* Agentes dizem-se
autónomos
na medida em que o seu
Eugénio Oliveira / FEUP
Descrição "PAGE" dos Agentes:[Perceções, Ações, "Goals" (objetivos), "Environment" (ambiente)]
Agora (PEAS- Performance measures, Environment, Actuators, Sensors)
Introdução aos Agentes
Exemplos de Agentes
Aplicações de AGENTES
APLICAÇÕES de AGENTES e SMA
• Gestão dinâmica de Redes de Distribuição
• Seleção de Recursos distribuídos em Empresas (por ex. de Construção)
• Mercados Eletrónicos: de Bens de consumo e de Utilidades (Eletricidade)
• Delegação de representação e negociação em Empresas Virtuais
• Pesquisadores na Web
• Gestão e Encaminhamento de Sistemas de Transportes
• Agentes Robóticos de exploração ou deslocamento • Gestão de redes de Comunicação
• Interfaces inteligentes e emocionais (Avatares)/ Jogos/Simulações
Eugénio Oliveira / FEUP
função esqueleto-agente (perceção
) retornaação
estática:
memória
/* a memória do mundo do agentememória
<---- atualiza_mem (memória, perceção
)ação
<---- selecciona_melhor (memória
)memória
<---- atualiza_mem (memória, ação
) retornaação
Notas: a sequência de perceções é criada internamente. A medida do desempenho é exterior ao agente
Desvantagens:
• enormes tabelas. Tempo de construção da tabela • agente sem autonomia
• A IA tenta substituir a programação exaustiva por um código mais compacto que permita gerar comportamento racional
* agente mais elementar: agente_tabela
função agente_tabela (
perceção
) retornaação
estática: memória /* a memória do mundo do agente
tabela indexada pelas perceções. Inicialmente completamente especificada */memória <---- atualiza_mem (memoria, perceção)
ação <---- seleciona_melhor (memoria)
memória <---- atualiza_mem (memoria, ação)
retorna ação
Arquiteturas básicas
Eugénio Oliveira / FEUP
* Um Agente com "raciocínio" pode tentar evitar estas desvantagens.* Como construir agentes capazes de melhor mapear as perceções em ações? * Consideremos cinco tipos de agentes:
a) Reativos simples
b) Baseados no Modelo do mundo c) Geridos por objetivos
d) Baseados na utilidade e) Com Aprendizagem
Arquiteturas
1) Reativos simples : Usam um conjunto de regras "situação-ação"
* válidos quando a decisão correta é só função da perceção atual
estado do próxima B E N AGENTE mundo Sensores ação ? Efetuadores Regras:Condições->ação A M B I E N T E
Diagrama esquemático de um Agente Reacivo simples
função agente_reativo_simples( perceção ) retorna ação persistente: regras /*conjunto de regras situação-ação */
estado <--- interpreta_input ( perceção )
regra <--- selecciona ( estado, regras )
Eugénio Oliveira / FEUP
A tomada da decisão implica um conhecimento prévio do mundo. função agente_reativo_c_mem (perceção) retorna açãopersistente:estado , modelo /* descrição do estado (corrente) do mundo */
regras, ações /* conjunto de regras situação_ação */
estado <--- atualiza_estado (estado, ação,perceção, modelo) regra <--- selecciona_regra (estado, regras)
ação <--- conclusão_regra (regra)
retorna ação /*mesma perceção -->ações diferentes,(estado do mundo) */
Arquiteturas
2) Baseados no Modelo do mundo:
AGENTE estado do mundo Sensores próxima ação ? Efetuadores Regras:Condições->ação A M B I E N T E
Diagrama esquemático de um Agente com estado interno Modelando o Mundo estado
Para além da descrição do estado corrente o agente usa informação sobre os
objetivos. Implica pesquisa e planeamento. É mais flexivel pois diferentes
comportamentos são obtidos para o mesmo estado do mundo dependendo do objetivo.
Arquiteturas
3) Geridos por objetivos:
AGENTE estado do mundo Sensores próxima ação ? Efectuadores A M B I E N T E
Diagrama esquemático de um Agente com objetivos explícitos estado
evolução do mundo
resultados das ações
Objetivos
evolução do mundo se executar ação A
Eugénio Oliveira / FEUP
Utilidades são medidas de "satisfação", para o agente, relativamente aos diversos estados. Utilidades podem ser usadas para decidir entre objetivos em conflito ou ainda (quando há incerteza nas ações) para medir a verosimilhança de atingir o objetivo.
Agentes que usam a função utilidade são mais racionais.
Arquiteturas
4) Baseados na utilidade Qual o grau de satisfação do Agente neste estado AGENTE estado do mundo Sensores próxima ação ? Efetuadores A M B I E N T EDiagrama esquemático de um Agente baseado em Utilidades estado
evolução do mundo resultados das ações
Arquiteturas
5) Agentes Adaptativos
(na disciplina de AIAD)
AGENTE Crítico Sensores agente executor Efectuadores A M B I E N T E
Diagrama esquemático de um Agente Adaptativo