440 likes | 518 Vues
Agentes Baseados em Conhecimento. Jacques Robin Geber Ramalho CIn-UFPE. Exemplo introdutório: West é criminoso?. West é criminoso ou não?
E N D
Agentes Baseados em Conhecimento Jacques Robin Geber Ramalho CIn-UFPE
Exemplo introdutório: West é criminoso? • West é criminoso ou não? • “A lei americana diz que é proibido vender armas a uma nação hostil. Cuba possui alguns mísseis, e todos eles foram vendidos pelo Capitão West, que é americano” • Como resolver automaticamente este problema de classificação? • Segundo a IA (simbólica), é preciso: • Identificar o conhecimento do domínio (modelo do problema) • Representá-lo utilizando uma linguagem formal de representação • Implementar um mecanismo de inferência para utilizar esse conhecimento
Ask Tell Retract Agente baseado em conhecimento Ambiente Raciocínio Automático Sensores Base de Conhecimento Especializada Máquina de Inferência Genérica Representação e Aquisição de Conhecimento Atuadores
O que é conhecimento? • Dado, informação ou abstração formatado de maneira a permitir raciocínio por um ser humano ou por uma máquina, por exemplo • Classes e objetos • Formula da lógica • Distribuição de probabilidade prévia e condicional de variáveis aleatórias • O que é raciocínio? • Mecanismo sistemático para inferir ou derivar novo conhecimento a partir de novas percepções e/ou de conhecimento prévio, por exemplo: • Herança de atributos entre classe, sub-classes e objetos • Prova de teorema por refutação, resolução e unificação • Cálculo de probabilidade posterior de um evento pelo Teorema de Bayes
Sabendo que: 1. É criminoso para um americano vender armas para uma nação hostil aos EUA 2. Nono tem mísseis 3. Nono comprou todos seus mísseis do Capitão West 4. O Capitão West é americano 5. Nono é uma nação 6. Nono “está” inimiga dos EUA 7 . Um míssil é um tipo de arma 8. A inimizade é uma forma de hostilidade 9. Os EUA são uma nação Pode se inferir que: 0. O Capitão West é criminoso? Representando esse conhecimento em lógica dos predicados da 1a ordem ( P,W,N american(P) weapon(W) nation(N) hostile(N) sells(P,N,W) criminal(P)) //1 ( W owns(nono,W) missile(W)) //2 ( W owns(nono,W) missile(W) sells(west,nono,W)) //3 american(west) //4 nation(nono) //5 enemy(nono,america) //6 W missile(W) weapon(W) //7 N enemy(N,america) hostile(N) //8 nation(america) //9 Provador de teorema pode ser usado para tentar inferir: criminoso(west) //0 Exemplo de raciocínio automáticocom conhecimento: West é criminoso?
Revisão de lógica • Refutação: • Para provar BC C verdadeiro, provar BC C falso • Porque? Por que (BC C) (BC C) (BC C) BC C • Formal normal (implicativa): • Para qualquer formula da lógica dos predicados da 1a ordem, existe uma formula com mesmas valores de verdades da forma: X1, ..., Xk P1(...,Xi,...) ... Pm(...,Xj,...) C1(...,Xu,...) ... Cm(...,Xv,...) • Skolemização: • substituir variáveis existencialmente quantificadas por constantes • ex, x míssil(x) por míssil(m1) • Regra de resolução (implicativa): • Caso proposicional: ((A B) (B C)) (A C) A B e B C se resolvam em A C • Caso da 1a ordem: (A B) (C D) (B) = (C) ((A) (D)) onde é o conjunto de substituições de variáveis que unificam B com C A B e C D se resolvam em (A) (D) pela unificação de B com C via • Unificação: • conjunto de substituições variável/constante ou variável1/variável2 em 2 termos a unificar para torná-los iguais
Prova por refutação: mostrar que ( P,W,N american(P) weapon(W) nation(N) hostile(N) sells(P,N,W) criminal(P)) //1 ( W owns(nono,W) missile(W)) //2 ( W owns(nono,W) missile(W) sells(west,nono,W)) //3 american(west) //4 nation(nono) //5 enemy(nono,america) //6 W missile(W) weapon(W) //7 N enemy(N,america) hostile(N) //8 nation(america) //9 criminoso(west)//0 é inconsistente. 1o passo: colocar formula em forma normal (american(P) weapon(W) nation(N) hostile(N) sells(P,N,W) criminal(P)) // 1 T owns(nono,m1) // skolemização 2a T missile(m1) // 2b (owns(nono,W) missile(W) sells(west,nono,W)) //3 T american(west) //4 T nation(nono) //5 T enemy(nono,america) //6 missile(W) weapon(W) //7 enemy(N,america) hostile(N) //8 T nation(america) //9 criminoso(west) F//0 Exemplo de raciocínio automáticocom conhecimento: West é criminoso?
2o passo: aplicar regra de resolução a pares de clausulas tal que premissa de uma se unifica com conclusão da outra (american(P) weapon(W) nation(N) hostile(N) sells(P,N,W) criminal(P)) //1 (T owns(nono,m1)) //2a (T missile(m1)) //2b (owns(nono,W) missile(W) sells(west,nono,W)) //3 (T american(west)) //4 (T nation(nono)) //5 (T enemy(nono,america)) //6 (missile(W) weapon(W)) //7 (enemy(N,america) hostile(N)) //8 (T nation(america)) //9 (criminoso(west) F)//0 Resolver 0 com 1 unificando P/west: american(west) weapon(W) nation(N) hostile(N) sells(west,N,W) F //10 2. Resolver 10 com 4: weapon(W) nation(N) hostile(N) sells(west,N,W) F //11 3. Resolver 11 com 7: missile(W) nation(N) hostile(N) sells(west,N,W) F //12 4. Resolver 12 com 2b unificando W/m1: nation(N) hostile(N) sells(west,N,m1) F //13 5. Resolver 13 com 5 unificando N/nono: hostile(nono) sells(west,nono,m1) F //14 6. Resolver 14 com 8 unificando N/nono: enemy(nono,america) sells(west,nono,m1) F //15 7. Resolver 15 com 6: sells(west,nono,m1) F //16 8. Resolver 16 com 3 unificando W/m1: owns(nono,m1) missile(m1) F //17 9. Resolver 17 com2a: missile(m1) F //18 10. Resolver 18 com 2b: F Exemplo de raciocínio automáticocom conhecimento: West é criminoso?
Tipos de conhecimento • Intencional x Extensional • Diagnóstico x Causal • Dedutivo x Terminológico • Síncrono x Diácrono • Certo x Incerto • Explicito x Implícito • Preciso x Vago • Declarativo x Procedimental • De senso comum x Especialista • Do problema x Meta-conhecimento (controle, explicação, reuso)
Conhecimento intencional x extensional • Conhecimento em intenção: • Geral ao domínio de aplicação e classe de problema • Hierarquia de conceitos (classes de fatos) • ex, X, wumpus(X) monstro(X). • Restrições de integridades • ex, X,Y wumpus(X) wumpus(Y) X = Y. • Regras de funcionamento do domínio • ex, X,Y smelly(X,Y) (loc(wumpus,X+1,Y) loc(wumpus,X-1,Y) loc(wumpus,X,Y+1) loc(wumpus,X,Y-1). • Esquema de BD, classes de programação orientada a objetos • Conhecimento em extensão: • Particular da instância do problema a resolver • Fatos, i.e., proposições sobre instâncias de conceitos • ex, loc(wumpus,2,1) loc(wumpus,1,2) loc(wumpus,2,3)alive(wumpus,4). alive(wumpus,7). • Dados, exemplos, casos, objetos
Conhecimento terminológico x dedutivo • Conhecimento terminológico: • Taxonomia de entidades do domínio e seus relacionamentos estáticos • Aspectos estruturais e estacionários • ex, M, wumpus(M) monster(M). M,T monster(M) alive(M,T) dangerous(M,T). • Conhecimento dedutivo: • Regras de funcionamento e restrições de integridade do domínio • Aspectos comportamentais e temporais • Ligando elementos em várias regiões da taxonomia • ex, M,X,Y,T dangerous(M,T) loc(M,X,Y,T) safe(X,Y,T). X,Y,T loc(agent,X,Y,T) orientation(0,T) forward(T) loc(wall,X,Y+1) loc(agent,X,Y+1,T+1).
Conhecimento causal x diagnóstico • Conhecimento causal: • prevê resultados de ações e eventos • ex, X,Y,T loc(agent,X,Y,T) orientation(0,T) forward(T) loc(wall,X,Y+1) loc(agent,X,Y+1,T+1). • Conhecimento diagnóstico: • forma hipóteses sobre causas de efeitos observados • ex, X,Y,T smell(stench,X,Y,T) smelly(X,Y). X,Y smelly(X,Y) (loc(wumpus,X+1,Y) loc(wumpus,X-1,Y) loc(wumpus,X,Y+1) loc(wumpus,X,Y-1)).
Conhecimento sincrónico x diacrónico • Conhecimento diacrónico: • Regras de previsão das propriedades do ambiente entre dois instantes T e T+1 devidas a ações ou eventos • ex, X,Y,T loc(agent,X,Y,T) orientation(0,T) forward(T) loc(wall,X,Y+1) loc(agent,X,Y+1,T+1). • Conhecimento sincrónico: • Regras de propagação das conseqüências não observáveis do ambiente a partir das observadas no mesmo instante T • ex, M,X,Y,T dangerous(M,T) loc(M,X,Y,T) safe(X,Y,T).
Conhecimento certo x incerto • Conhecimento certo: • Epistemologicamente booleano • ex, X,Y smelly(X,Y) smelly(X+1,Y-1) smelly(X-1,Y-1) loc(wumpus,X,Y+1). • Conhecimento incerto: • Epistemologicamente probabilista: • ex, X,Y smelly(X,Y,1) (loc(wumpus,X+1,Y,0.25) loc(wumpus,X-1,Y,0.25) loc(wumpus,X,Y+1,0.25) loc(wumpus,X,Y-1,0.25)).
Conhecimento explícito x implícito • Conhecimento explícito: • Sentenças simbólicas explicitamente armazenadas na base de conhecimento • Conhecimento implícito: • Axiomas que devem ser verificados para que a base de conhecimento reflete o ambiente modelado • Idealmente documentadas, no entanto muitas vezes presentes apenas na cabeça do engenheiro do conhecimento • Suposições permitindo codificação mais simples e concisa da base de conhecimento • Explicitar conhecimento implícito necessário para tornar BC facilmente extensível
Conhecimento explícito x implícito: exemplo de explicitação de conhecimento • A codificação see(glitter) pick. • Deixa implícito que: • Existe um único agente no ambiente • See é uma percepção • Pick é uma ação • A visão do agente é limitada a caverna no qual se encontra • O ouro é o único objeto a brilhar e o único objeto que o agente pode pegar
Conhecimento explícito x implícito: exemplo de explicitação de conhecimento • Quando essas suposições não são mais verificadas, a codificação tem que tornar-se mais explícita, ex: • A,C,T,X,Y agent(A) loc(C,[(X,Y)]) time(T) in(A,C,T) horizCoord(X) verticCoord(Y) percept(A,C,T,vision,glitter) O physObj(O) emit(O,glitter) in(O,C,T). • O physObj(O) emit(O,glitter) ouro(O). • O ouro(O) treasure(O). • A,C,T,X,Y,O agent(A) loc(C,[(X,Y)]) time(T) in(A,C,T) horizCoord(X) verticCoord(Y) in(O,C,T) treasure(O) chooseAction(A,T+1,pick(O)).
Tipos de raciocínio • Dedução: • Utilização de conhecimento completo • Previsão com conhecimento causal • Diagnóstico com conhecimento diagnóstico • Abdução: • Utilização de conhecimento incompleto • Diagnóstico com conhecimento causal • Previsão com conhecimento diagnóstico (incomum) • Indução: • Aquisição (aprendizagem) de conhecimento • Analogia: • Utilização de conhecimento incompleto • Previsão, diagnóstico com conhecimento diagnóstico ou causal • Resolução de restrições: • Utilização de conhecimento incompleto • Previsão com conhecimento causal • Diagnóstico com conhecimento diagnóstico
Conhecimento Prévio Causal em Intenção X c(X) e(X) Conhecimento Prévio Diagnóstico em Intenção X e(X) c(X) Conhecimento Prévio em Extensão: Causas Observadas c(a), c(b), ... Conhecimento Prévio em Extensão: Efeitos Observados e(a), e(b), ... Novo Conhecimento em Extensão: Efeitos Previstos e(a), e(b) ... Dedução CPECCPCI |= NCEE Novo Conhecimento em Extensão: Causas c(a), c(b) ... Dedução CPDICPEE|= NCEC Dedução
A partir de: Conhecimento prévio causal em intenção: X,Y,Tloc(agent,X,Y,T) orientation(0,T) forward(T) loc(wall,X+1,Y)loc(agent,X+1,Y,T+1) Conhecimento prévio em extensão de causas observadas: loc(agent,1,1,1) orientation(0,1) forward(1) loc(wall,2,1) Deduzir: Novo conhecimento em extensão de efeito previsto: loc(agent,2,1,2). A partir de: Conhecimento prévio diagnóstico em intenção: X,Y,T loc(agent,X,Y,T) smell(stench,T) smelly(X,Y). X,Y smelly(X,Y) loc(wumpus,X+1,Y) loc(wumpus,X-1,Y) loc(wumpus,X,Y+1) loc(wumpus,X,Y-1)). Conhecimento prévio em extensão de efeito observado smell(stench,3) loc(agent,2,2,3) Deduzir: Novo conhecimento em extensão de causa hipotética: loc(wumpus,3,2) loc(wumpus,1,2) loc(wumpus,2,3) loc(wumpus,2,1)). Dedução: exemplos
Conhecimento • Prévio em Extensão: • Efeitos Observados • e(a), e(b), ... • Causais ObservadasIncompletasco(a), co(b), ... Novo Conhecimento em Extensão: Causas Hipotéticas ca(a), ca(b) ... Abdução Conhecimento Prévio Causal em Intenção X co(X) ca(X) e(X) Abdução CPCICPECNCEC |= CPEE Viés sobre Hipóteses: X ca(X)
Abdução: exemplo • A partir de: • Conhecimento prévio causal em intenção: • X,Y,Tloc(agent,X,Y,T) orientation(0,T) do(forward,T) loc(wall,X+1,Y)loc(agent,X,Y,T+1) • Conhecimento prévio em extensão incompleto de causas: • loc(agent,4,1,1) orientation(0,1) do(forward,1) • Conhecimento prévio em extensão de efeitos observados: • loc(agent,4,1,2) • Abduzir: • Novo conhecimento em extensão de causa hipotética: • loc(wall,5,1)
Indução Conhecimento Prévio Causal em Intenção Incompleto X c(X) i(X) • Conhecimento • Prévio em Extensão: • Efeitos Observados • e(a), e(b), ... • Causais Observadasc(a), c(b), ... Novo Conhecimento Causal Hipotético em Intenção X i(X) e(X) Indução CPCINCCICPEC|= CPEE Viés sobre Hipóteses: X,Y i(X) Y(X)
Indução: exemplo • A partir de: • Conhecimento prévio em extensão: • loc(wall,1,1) loc(wall,0,1) loc(wall,1,2) loc(0,2) ...loc(wall,4,5) loc(wall,4,4) loc(wall,3,5) loc(wall,3,4) ... • Viés sobre hipótese: • P1,P2,P3,P4 {>,<,=}, C {, }, Q1,Q2,Q3 {,}: Q1U1,U2,U3,U4 Q2V1,V2,V3,V4 Q3W P1(U,V1) P2(U,V2) P3(U,V3) P4(U,V4) loc(W,U,V) • Induzir: • Novo conhecimento em intenção: • X,Y X<1 X>4 Y<1 Y>4 loc(wall,X,Y) • Variação: • Conhecimento prévio em intenção: • X,Y,H,W X<1 X>H Y<1 Y>W loc(wall,X,Y)
Analogia • Conhecimento • Prévio em Extensão: • Causais Observadasc(i), c(j), c(k), ... • Efeitos Observados • e(i), e(k), e(h), ... • Similaridade entre Causass(c(i),c(j))=m, s(c(j),c(k))=n, ... • Similaridade entre Efeitoss(e(i),e(h))=u, s(e(k),e(h))=v, ... ml n l u l v l • Novo Conhecimento • em Extensão: • Efeitos Previstos • e(j) = e(i) ... • Causas Hipotéticas • c(h) = c(k)... Analogia CPEECPESCPEC| NCEE CPECCPESCPEE| NCEC Regra de inferência: X,Y,P,Q (P(X) Q(X) P(Y) s(P(X),P(Y)) l)Q(Y)
A partir de: Conhecimento prévio em extensão: loc(agent,1,1,3) orientation(agent,180,3) do(forward,3) percept([none,none,none,none,bump],4) loc(agent,1,1,5) orientation(agent,90,5) do(forward,5) percept([none,none,none,none,none],6) loc(agent,1,2,7) orientation(agent,180,7) do(forward,7) percept([none,none,none,none,bump],8) loc(agent,1,2,9) orientation(agent,90,9) do(forward,9) percept([none,none,none,none,none],10) ... loc(agent,1,3,11) orientation(agent,180,11) do(forward,11) ? Medidas de similaridades: ssa = % de símbolos em comum entre as partes situação e ação das sentenças, desconsiderando as variáveis temporais spp = % de símbolos em comum entre as partes próxima percepção das sentenças, desconsiderando as variáveis temporais Inferir por analogia: percept( [none,none,none,none,bump], 12) Dado que: ssa(sa5,sa1) = 8/9 ssa(sa5,sa2) = 7/9 ssa(sa5,sa3) = 8/9 ssa(sa5,sa4) = 7/9 spp(sa1,sa2) = 6/6 Analogia: exemplo
Resolução de Restrições Conhecimento Prévio em Intenção X,Y,P a(P,[X,Y]) c(X)+c(Y)c(P) Novo Conhecimento em Extensão: a(q,[d,f]) a(q,[e,g]) Conhecimento Prévio em Extensão: c(q) = 120 c(d) = 90 c(e) = 60 c(f) = 30 c(g) = 60 Resolução de Restrições CPI CPE |= NCE CPI CPE |= NCI Novo Conhecimento em Intenção: X,Y {d,e,f,g}a(q,[X,Y]) c(X)+c(Y) 120
Agente baseado em conhecimentodedutivo ou abdutivo Ambiente Base de Conhecimento Intencional (BCI): regras, classes, formulas lógicas universalmente quantificadas Sensores Não Monotônica Ask Máquina de inferência dedutiva ou abdutiva Tell Retract Ask Base de Conhecimento Extensional (BCE): fatos, objetos formulas lógicas instanciadas Atuadores
Agente baseado em resolução de restrições Ambiente Sensores Base de Conhecimento Intencional (BCI): restrições universalmente quantificadas Ask Tell Retract Máquina de inferência dedutiva ou abdutiva Tell Retract Ask Base de Conhecimento Extensional (BCE): restrições instanciadas Atuadores
Agente baseado em conhecimento analógico Ambiente Sensores Máquina de inferência analógica Tell Ask Retract Base de Conhecimento Extensional (BCE): fatos, objetos formulas lógicas instanciadas estruturados por similaridades Atuadores
O agente baseado em conhecimento é: Reflexo? Autômato? Cognitivo? Deliberativo? Otimizador? Adaptativo? Híbrido? Pode ser qualquer um ! Distinções ortogonais Existe alguma relação entre arquitetura de agente e tipo de raciocínio? A qual? Agente adaptativo baseado em conhecimento inclui necessariamente uma máquina de inferência indutiva ou analógica Agentes baseados em conhecimentona tipologia de arquiteturas de agentes
Lembram do agente deliberativo? Ambiente Modelo dosambientes (passados)e atual Interpretador de percepções Regras: percepção(t) modelo(t-1) modelo(t) Sensores Atualizador do modelo do ambiente Regras:modelo(t) modelo(t) Atualizador dos objetivos Regras:modelo(t) objetivos(t-1) objetivos(t) Objetivos Previsor de ambientes futuros Regras: modelo(t) ação(t) modelo(t+1) e modelo(t) modelo(t+1) Modelo dos ambientesfuturos hipotéticos Escolhedor de ação Regras: resultado([ação(t),...,ação(t+n)]) = modelo(t+n) modelo(t+n) objetivo(t) faz(ação(t)) Atuadores
Ask Tell Retract E lembram do agente baseado em conhecimento? Ambiente Sensores Base de Conhecimento Especializada Máquina de Inferência Genérica Atuadores
Ambiente Sensores BCI: interpretação das percepções BCE: modelo dos ambientespassados e atual BCI: atualização do modelo do ambiente BCI: atualização do objetivos Máquina de inferência BCE: Objetivos BCE: modelo de ambientes futuros hipotéticos BCI: predição deambientes futuros BCI: estratégia de escolha de ações Atuadores Como seria então um agente deliberativo baseado em conhecimento?
Arquitetura alternativa Ambiente BCI: interpretação das percepções Máquina de inferência 1 Sensores BCE: modelo dos ambientespassados e atual BCI: atualização do modelo do ambiente Máquina de inferência 2 BCI: atualização do objetivos Máquina de inferência 3 BCE: Objetivos BCE: modelo de ambientes futuros hipotéticos BCI: predição deambientes futuros Máquina de inferência 4 BCI: estratégia de escolha de ações Máquina de inferência 5 Atuadores
Como se obtém conhecimento? • Durante desenvolvimento: • Conhecimento em intencao e em extensao inicial • Manualmente via codificação direta • Semi-automaticamente via interface de aquisição de conhecimento • Semi-automaticamente via aprendizagem de máquina (indução off-line) • Usando metodologias de engenharia de conhecimento • Durante execução: • Conhecimento em extensao • Automaticamente via percepção, dedução, abdução ou analogia • Conhecimento em intencao • Automaticamente via analogia ou indução on-line (agente aprendiz situado)
Engenharia do conhecimento • Metodologia para desenvolver sistemas baseados em conhecimento e especialmente bases de conhecimento • Orientação a objeto(e também métodos formais) em: • Linguagens de modelagem, programação e representação do conhecimento • Favoreceu interseção e convergência entre engenharia de software e engenharia de conhecimento • Problemática comum: • Robustez, escalabilidade, estendibilidade, reusabilidade, desenvolvimento distribuído, elicitação do conhecimento de especialista do domínio leigo em informática • Desenvolvimento de uma base de conhecimento: • Geralmente em espiral com três níveis principais de captura de conhecimento • Nível do conhecimento, nível da formalização, nível da implementação
Nível formal: • Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades) • Verificação de consistência • Nível semi-formal: • Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML) • Validação com especialista Engenharia de uma base de conhecimento Elicitação do conhecimento • Nível do conhecimento: • Nos termos do especialista do domínio de aplicação • Linguagem natural, Notações gráficas ad-hoc Formalização do conhecimento Implementação do conhecimento • Nível da implementação: • Codificação em uma linguagem de programação • Teste de protótipo
Nível formal: • Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades) • Verificação de consistência • Nível semi-formal: • Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML) • Validação com especialista Engenharia de uma base de conhecimento Elicitação do conhecimento • Nível do conhecimento: • Nos termos do especialista do domínio de aplicação • Linguagem natural, Notações gráficas ad-hoc Formalização do conhecimento Implementação do conhecimento • Nível da implementação: • Codificação em uma linguagem de programação • Teste de protótipo
Elicitação do conhecimento • Nível do conhecimento: • Nos termos do especialista do domínio de aplicação • Linguagem natural, Notações gráficas ad-hoc Formalização do conhecimento • Nível formal: • Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades) • Verificação de consistência • Nível semi-formal: • Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML) • Validação com especialista Implementação do conhecimento • Nível da implementação: • Codificação em uma linguagem de programação • Teste de protótipo Engenharia de uma base de conhecimento • Entrevistas estruturadas com especialista • Preparação de dados • Ontologias • Linguagens semi-formais derepresentação do conhecimento • Linguagens formais derepresentação do conhecimento • Aprendizagem de Máquina • Compiladores • Máquinas de inferências • Aprendizagem de Máquina
Agente indutivo off-line: fase de treinamento Base de ConhecimentoIntencional (BCI): regras, classes, formulas lógicas universalmente quantificadas Ask Máquina de inferência indutiva Tell Formação de Hipóteses Retract Ask Verificação de Hipóteses Base de Dados, Exemplos, Casos representativos do ambientefatos, objetos formulas lógicas instanciadas Ask Máquina de inferência dedutiva e/ou abdutiva Tell Retract Ask
Agente indutivo off-line: fase de utilização Ambiente Base de Conhecimento Intencional (BCI)construída por indução: regras, classes, formulas lógicas universalmente quantificadas Sensores Ask Máquina de inferência dedutiva e/ou abdutiva Tell Ask Retract Base de Conhecimento Extensional (BCE): fatos, objetos formulas lógicas instanciadas Atuadores
Agente indutivo situado Ambiente Base de ConhecimentoIntencional (BCI): regras, classes, formulas lógicas universalmente quantificadas Retract Máquina de inferência indutiva Sensores Tell Formação de Hipóteses Ask Verificação de Hipóteses Ask Base de Conhecimento Extensional (BCE): fatos, objetos formulas lógicas instanciadas Máquina de inferência dedutiva e/ou abdutiva Tell Retract Atuadores