Agentes lógicos e planejamento

Aprenda como um sistema de IA pode armazenar o que sabe como sentenças lógicas e determinar o que decorre delas. Escreva conhecimento em lógica proposicional e de primeira ordem, demonstre conclusões com resolução e encadeamento, encontre modelos com resolvedores SAT, organize fatos em ontologias e grafos de conhecimento e descreva problemas de planejamento para que um planejador possa encontrar uma sequência de ações que alcance um objetivo.

IntermediárioAula 5 de 10 do curso Curso de Inteligência artificial

O que você vai aprender

  1. Explique como um agente baseado em conhecimento armazena fatos e chega a conclusões, escreva seu conhecimento como sentenças proposicionais e determine o que decorre dessas sentenças por verificação de modelos.
    • Descreva o funcionamento de um agente baseado em conhecimento
      Explique a base de conhecimento, as operações TELL e ASK e o ciclo de perceber, raciocinar e agir do agente, usando o mundo do wumpus como exemplo recorrente.
    • Escreva sentenças em lógica proposicional
      Use a sintaxe e o significado dado pelas tabelas-verdade da lógica proposicional para codificar regras sobre um mundo, incluindo fatos que mudam com o tempo.
    • Determine a consequência lógica por verificação de modelos
      Defina consequência lógica, validade e satisfatibilidade e use a enumeração por tabela-verdade para determinar se uma conclusão decorre de uma base de conhecimento.
  2. Construa demonstrações com regras de inferência e resolução, raciocine de modo eficiente com cláusulas de Horn por encadeamento e use resolvedores SAT para encontrar modelos ou mostrar que não existem.
    • Construa demonstrações com regras de inferência
      Aplique Modus ponens, eliminação da conjunção e equivalências padrão para construir demonstrações passo a passo e trate a busca de uma demonstração como um problema de busca.
    • Demonstre a consequência lógica por resolução
      Converta sentenças para a forma normal conjuntiva e use a refutação por resolução para mostrar que uma consulta é consequência lógica de uma base de conhecimento.
    • Raciocine com cláusulas de Horn por encadeamento para frente e para trás
      Reconheça cláusulas definidas e de Horn e determine a consequência lógica com encadeamento para frente e para trás, comparando quando cada método é adequado.
    • Encontre modelos com resolvedores SAT
      Determine a satisfatibilidade com o algoritmo de retrocesso DPLL e a busca local WalkSAT e avalie o que cada resultado mostra.
  3. Leia, avalie e escreva sentenças de primeira ordem sobre objetos e relações e construa uma pequena base de conhecimento para um domínio.
    • Leia e avalie sentenças de primeira ordem
      Use a sintaxe e a semântica da lógica de primeira ordem, avalie sentenças em um modelo e compare a semântica padrão com a de banco de dados.
    • Traduza enunciados para a lógica de primeira ordem
      Escreva enunciados em português como sentenças de primeira ordem, escolhendo corretamente quantificadores, conectivos e igualdade e evitando os erros clássicos de tradução.
    • Construa uma base de conhecimento para um domínio
      Siga o processo de engenharia do conhecimento para escolher um vocabulário, escrever axiomas gerais e fatos de uma instância, fazer consultas e corrigir uma pequena base de conhecimento.
  4. Faça a correspondência entre sentenças de primeira ordem por unificação, faça encadeamentos para frente e para trás com regras de primeira ordem e demonstre consultas por resolução de primeira ordem.
    • Faça a correspondência entre sentenças por substituição e unificação
      Aplique instanciação universal e existencial, explique a proposicionalização e calcule os unificadores mais gerais para o Modus ponens generalizado.
    • Faça encadeamentos para frente e para trás com regras de primeira ordem
      Execute o encadeamento para frente até um ponto fixo e o encadeamento para trás sobre objetivos com cláusulas definidas de primeira ordem e explique como funciona a programação lógica em Prolog.
    • Demonstre consultas de primeira ordem por resolução
      Converta sentenças de primeira ordem para a forma clausal com Skolemização e demonstre consultas por refutação por resolução, usando estratégias que mantenham a busca pequena.
  5. Estruture conhecimento geral com categorias, ontologias e redes semânticas e explique como os grafos de conhecimento armazenam, consultam e ampliam fatos.
    • Estruture conhecimento com categorias e ontologias
      Represente categorias, pertencimento, subclasses e partes, descreva redes semânticas e lógicas de descrição e explique o raciocínio por padrão com exceções.
    • Explique como os grafos de conhecimento armazenam e usam fatos
      Descreva grafos de conhecimento como conjuntos de triplas com um esquema, consulte-os, derive novos fatos por regras e reconheça seus usos e limites.
  6. Descreva problemas de planejamento em PDDL, busque planos para frente e para trás com heurísticas independentes de domínio e compare abordagens de planejamento e seus limites.
    • Descreva um problema de planejamento em PDDL
      Escreva estados, esquemas de ação, estados iniciais e objetivos em PDDL e calcule como uma ação altera um estado.
    • Busque planos com heurísticas independentes de domínio
      Execute buscas para frente e para trás no espaço de estados em problemas de planejamento e estime o comprimento do plano com heurísticas de problemas relaxados.
    • Compare abordagens de planejamento e seus limites
      Explique a interação entre subobjetivos, o planejamento baseado em SAT, de ordem parcial e hierárquico, a complexidade do planejamento e o que o planejamento clássico não consegue modelar.

Guia de estudo de Agentes lógicos e planejamento

6 capítulos

1

Represente o conhecimento de um agente em lógica proposicional

Um agente pode tirar conclusões úteis a partir de observações antes de ver o mundo inteiro. Sentenças formais tornam essas conclusões verificáveis: você pode perguntar quais mundos possíveis são compatíveis com as observações e se todos eles sustentam a ação proposta. Comece pelo agente baseado em conhecimento, codifique suas regras com conectivos proposicionais e depois use modelos para distinguir conclusões justificadas de fatos que permanecem desconhecidos.

1.1 Descreva o funcionamento de um agente baseado em conhecimento

Um agente baseado em conhecimento age com base em uma descrição de seu mundo. Sua base de conhecimento (BC) contém sentenças formais: fatos e regras iniciais, chamados axiomas, e informações acrescentadas durante a operação. A inferência conecta essas sentenças a conclusões que o agente nunca observou diretamente.

Conecte percepção e ação

TELL acrescenta uma sentença à BC. ASK solicita uma resposta sustentada por ela, já armazenada ou derivada. A cada passo de tempo, o agente registra sua percepção, pergunta qual ação tomar, registra a ação escolhida e a executa. Registrar ações é importante porque o raciocínio posterior precisa saber como o mundo mudou.

No nível de conhecimento, podemos dizer que um robô sabe que uma passagem está bloqueada e quer chegar a uma área de armazenamento. No nível de implementação, descrevemos estruturas de dados e procedimentos de inferência. Um projeto declarativo fornece fatos e regras; um projeto procedural escreve o comportamento diretamente em código. Um agente em funcionamento pode combinar os dois.

Entenda o mundo do wumpus

O mundo do wumpus é uma grade de 4 × 4. As coordenadas são [coluna, linha]; o agente começa em [1, 1] voltado para a direita. Há um wumpus, uma peça de ouro e uma probabilidade de poço de 0,2 em cada casa, exceto na inicial. Os poços e o wumpus permanecem no mesmo lugar. O mundo é discreto, determinístico e de agente único, mas parcialmente observável: sua disposição está oculta.

Uma brisa indica um poço em uma casa diretamente adjacente; um fedor indica o wumpus nessa posição. Casas diagonais não contam. O brilho marca ouro na casa atual, o choque indica uma parede e o grito indica a morte do wumpus em qualquer lugar da caverna. As ações são avançar, virar à esquerda, virar à direita, pegar, atirar e sair. O agente tem uma flecha; sair só é possível a partir de [1, 1]. Sair com o ouro rende 1000 pontos, morrer faz perder 1000, cada ação custa 1 e atirar custa mais 10.

Combine observações

Em [1, 1], a ausência de brisa descarta poços em [1, 2] e [2, 1]; a ausência de fedor descarta o wumpus nessas casas. Ambas são seguras. Em [2, 1], uma brisa indica um poço em [2, 2] ou [3, 1], pois a casa inicial não tem poço. A ausência de fedor descarta o wumpus em [2, 2] e [3, 1].

Em seguida, o agente visita [1, 2]. A ausência de brisa exclui um poço em [2, 2], portanto a disjunção anterior exige um poço em [3, 1]. Um fedor em [1, 2] situa o wumpus em [1, 3] ou [2, 2]. A observação anterior de ausência de fedor exclui [2, 2], restando [1, 3]. O agente estabeleceu que [2, 2] não contém nenhum dos perigos sem entrar nela.

Esse raciocínio depende tanto das percepções quanto das regras que as relacionam aos perigos. Uma casa não explorada é desconhecida quando a BC não sustenta nem sua segurança nem seu perigo. Não conseguir derivar o perigo é insuficiente para afirmar que ela é segura. Escolher entrar nessa casa exige uma decisão sobre o risco, além das consequências lógicas por si só.

Principais conclusões

  • Uma BC combina axiomas prévios com percepções e ações registradas.
  • TELL acrescenta sentenças; ASK retorna respostas sustentadas pela BC.
  • O agente registra uma percepção, escolhe e registra uma ação e então age.
  • O conhecimento pode estabelecer fatos sobre casas não visitadas.
  • Desconhecida e segura são conclusões diferentes.

1.2 Escreva sentenças em lógica proposicional

A lógica proposicional fornece a um agente regras precisas para combinar afirmações de sim ou não. Um símbolo atômico nomeia uma afirmação completa, como P₁₂ para “há um poço em [1, 2]”. Um literal é um átomo ou sua negação. Sentenças maiores os combinam com ¬, ∧, ∨, ⇒ e ⇔.

Avalie os conectivos

Um modelo atribui verdadeiro ou falso a cada símbolo. Com n símbolos, há 2ⁿ atribuições. A negação inverte um valor de verdade; uma conjunção exige que ambos os lados sejam verdadeiros; uma disjunção inclusiva exige pelo menos um. Uma implicação é falsa apenas quando a premissa é verdadeira e a conclusão é falsa. Uma bicondicional exige valores de verdade iguais nos dois lados.

PQP ⇒ QP ⇔ Q
VerdadeiroVerdadeiroVerdadeiroVerdadeiro
VerdadeiroFalsoFalsoFalso
FalsoVerdadeiroVerdadeiroFalso
FalsoFalsoVerdadeiroVerdadeiro

A ordem de precedência é ¬, ∧, ∨, ⇒, ⇔. Assim, ¬A ∧ B ⇒ C significa ((¬A) ∧ B) ⇒ C. Use parênteses quando o agrupamento pretendido puder não estar claro. Com A verdadeiro, B falso e C verdadeiro, (A ∨ B) ⇒ C é verdadeira, enquanto A ⇒ (B ∧ C) é falsa.

A implicação lógica estabelece uma restrição sobre valores de verdade, não uma causa. Uma premissa falsa torna a implicação verdadeira. Ela também não permite inverter o sentido: de “se a bateria está descarregada, o robô para”, a parada, por si só, não permite concluir que a bateria está descarregada.

Codifique os dois sentidos de uma regra

A regra da brisa na casa inicial é B₁₁ ⇔ (P₁₂ ∨ P₂₁). Ela diz que há uma brisa exatamente quando existe um poço vizinho. O sentido B₁₁ ⇒ (P₁₂ ∨ P₂₁) permite detectar um perigo a partir de uma brisa. O sentido inverso permite excluir poços a partir da ausência de brisa. Omiti-lo impede a inferência de ¬B₁₁ para ¬P₁₂ ∧ ¬P₂₁.

Cada casa precisa de sua própria regra proposicional. Codificar exatamente um wumpus entre 16 casas exige uma disjunção de pelo menos um, além de uma restrição de no máximo um para cada par. Há 16 × 15 / 2 = 120 pares distintos. Símbolos proposicionais não podem quantificar sobre casas, portanto regras gerais tornam-se muitas sentenças separadas.

Represente mudanças sem perder a persistência

Um fluente é um fato cuja verdade pode mudar. Um índice de tempo sobrescrito distingue seus valores: L₁₁⁰ registra a localização no tempo 0. Um axioma de efeito pode dizer que mover-se para a direita a partir de [1, 1] produz a localização [2, 1] no tempo 1 e remove a localização anterior. Ele deixa em aberto o que acontece com fatos não relacionados, como a posse da flecha. Descrever todos esses fatos que não mudam é o problema do quadro.

Um axioma de estado sucessor fornece uma regra completa de atualização por fluente: Fᵗ⁺¹ ⇔ (uma ação torna F verdadeiro) ∨ (Fᵗ ∧ nenhuma ação torna F falso). Para a flecha, HaveArrowᵗ⁺¹ ⇔ (HaveArrowᵗ ∧ ¬Shootᵗ). Sem uma ação que forneça outra flecha, ela permanece com o agente até o disparo e continua ausente depois dele.

Principais conclusões

  • Uma implicação é falsa apenas quando sua premissa é verdadeira e sua conclusão é falsa.
  • O ou inclusivo permite que ambas as alternativas sejam verdadeiras.
  • Uma bicondicional codifica duas implicações.
  • Regras gerais proposicionais exigem instâncias separadas.
  • Axiomas de estado sucessor descrevem tanto a mudança quanto a persistência.
  • Exatamente um combina pelo menos um com exclusões entre pares.

1.3 Determine a consequência lógica por verificação de modelos

Um agente precisa de um critério para decidir se uma conclusão é justificada. Consequência lógica, escrita BC ⊨ α, significa que α é verdadeira em todo modelo que satisfaz a BC. Um único mundo compatível em que α é falsa invalida essa consequência lógica.

Mantenha exatamente os modelos compatíveis

A verificação de modelos enumera atribuições, descarta aquelas que tornam falsa alguma sentença da BC e testa a consulta nas que restam. Suponha que a BC contenha A ∨ B e ¬A. Das quatro atribuições a A e B, apenas A falso, B verdadeiro satisfaz ambas as sentenças. B e ¬A são consequências lógicas da BC. A não é consequência lógica dela porque o modelo restante torna A falsa.

Na BC do wumpus, ¬P₁₁, B₁₁ ⇔ (P₁₂ ∨ P₂₁), B₂₁ ⇔ (P₁₁ ∨ P₂₂ ∨ P₃₁), ¬B₁₁ e B₂₁ usam sete símbolos. Há 128 atribuições. Exatamente três satisfazem a BC: P₁₂ e P₂₁ são falsas, enquanto P₂₂ e P₃₁ são, respectivamente, verdadeira/falsa, falsa/verdadeira ou verdadeira/verdadeira. Assim, ¬P₁₂ é consequência lógica da BC. P₂₂ varia entre os três modelos, portanto nem P₂₂ nem ¬P₂₂ é consequência lógica dela. Essas regras sobre poços, por si só, estabelecem a ausência de um poço, não a ausência do wumpus.

Diferencie os principais testes lógicos
TesteO que pergunta
SatisfatívelA sentença é verdadeira em pelo menos um modelo?
InsatisfatívelEla não é verdadeira em nenhum modelo?
VálidaEla é verdadeira em todos os modelos?
EquivalentesDuas sentenças têm exatamente os mesmos modelos?

P ∨ ¬P é válida; P ∧ ¬P é insatisfatível. P ⇒ Q e ¬P ∨ Q são equivalentes. A equivalência exige consequência lógica nos dois sentidos. A ∧ B tem A como consequência lógica, mas A permite modelos em que B é falsa, portanto a consequência lógica inversa não vale.

Transforme uma consulta em um teste de contradição

BC ⊨ α exatamente quando BC ∧ ¬α é insatisfatível. Acrescentar a consulta negada busca um mundo em que a BC é verdadeira e a consulta é falsa. Não encontrar nenhum demonstra a consequência lógica; encontrar um fornece um contramodelo. Equivalentemente, α ⊨ β exatamente quando α ⇒ β é válida. A validade de α pode ser testada verificando se ¬α é insatisfatível.

O conectivo ⇒ pertence ao interior de uma sentença. O símbolo ⊨ descreve uma relação entre sentenças e seus modelos. Da mesma forma, “não é consequência lógica” pode significar que a consulta está descartada ou que permanece desconhecida. Verifique se a negação é consequência lógica antes de escolher entre as duas possibilidades.

A enumeração é correta e completa para a lógica proposicional porque verifica exaustivamente um conjunto finito. A enumeração em profundidade leva tempo O(2ⁿ) e memória O(n); 50 símbolos já fornecem cerca de 1,13 × 10¹⁵ atribuições. A consequência lógica proposicional é co-NP-completa. Verifique também a consistência: toda sentença é consequência lógica de uma BC sem modelos, pois ela não tem modelo compatível que possa violar uma consulta.

Principais conclusões

  • Consequência lógica significa verdade em todo modelo da BC.
  • Um contramodelo satisfaz a BC e torna a consulta falsa.
  • Desconhecido significa que nem uma afirmação nem sua negação é consequência lógica da BC.
  • BC ⊨ α exatamente quando BC ∧ ¬α é insatisfatível.
  • Toda sentença é consequência lógica de uma BC clássica inconsistente.
2

Demonstre conclusões com inferência proposicional e resolvedores SAT

Enumerar todos os mundos possíveis pode ser custoso mesmo quando uma conclusão tem uma demonstração curta. Regras de inferência, resolução e encadeamento de cláusulas de Horn oferecem maneiras diferentes de derivar consequências de uma base de conhecimento. Resolvedores SAT abordam as mesmas restrições lógicas buscando atribuições que as satisfaçam. Entender o que cada procedimento retorna ajuda você a distinguir uma conclusão demonstrada, um contraexemplo e uma busca que simplesmente parou.

2.1 Construa demonstrações com regras de inferência

Uma demonstração deriva uma consulta aplicando regras a sentenças já conhecidas. BC ⊢ α registra uma derivação; BC ⊨ α registra uma garantia semântica sobre os modelos. Um procedimento de demonstração correto conecta os dois: toda conclusão que ele deriva realmente decorre das premissas. Um procedimento completo pode derivar toda conclusão que seja consequência lógica dentro da linguagem a que se destina.

Aplique regras às suas premissas

Modus ponens parte de P ⇒ Q e P para obter Q. A eliminação da conjunção parte de P ∧ Q para obter qualquer um dos termos da conjunção. Se SensorOn ∧ Calibrated é conhecido e SensorOn ⇒ ReadingAvailable é conhecido, a eliminação da conjunção fornece SensorOn, e então Modus ponens fornece ReadingAvailable. Cada linha identifica as informações e a regra que a justificam.

Essas regras preservam a verdade, mas seu vocabulário restrito as torna incompletas como sistema de demonstração. De P, a sentença P ∨ Q decorre semanticamente, mas nenhuma das regras introduz ∨. Um conjunto de regras corretas ainda pode deixar de encontrar conclusões válidas.

Reescreva sem mudar o significado

Equivalências úteis podem ser aplicadas nos dois sentidos:

  • Dupla negação: ¬¬P ≡ P.
  • Implicação: P ⇒ Q ≡ ¬P ∨ Q.
  • Contraposição: P ⇒ Q ≡ ¬Q ⇒ ¬P.
  • Bicondicional: P ⇔ Q ≡ (P ⇒ Q) ∧ (Q ⇒ P).
  • De Morgan: ¬(P ∨ Q) ≡ ¬P ∧ ¬Q, e ¬(P ∧ Q) ≡ ¬P ∨ ¬Q.
  • Distribuição: P ∨ (Q ∧ R) ≡ (P ∨ Q) ∧ (P ∨ R), com a lei dual para ∧ sobre ∨.

A conjunção e a disjunção também permitem reagrupar e reordenar os termos. Essas reescritas revelam a estrutura útil de uma sentença sem acrescentar uma nova hipótese factual.

Para B₁₁ ⇔ (P₁₂ ∨ P₂₁) e ¬B₁₁, separe a bicondicional e selecione (P₁₂ ∨ P₂₁) ⇒ B₁₁. A contraposição fornece ¬B₁₁ ⇒ ¬(P₁₂ ∨ P₂₁). Modus ponens fornece ¬(P₁₂ ∨ P₂₁); De Morgan fornece ¬P₁₂ ∧ ¬P₂₁. A eliminação da conjunção então demonstra ¬P₁₂. A demonstração nunca precisa enumerar todas as disposições possíveis da caverna.

Teste um atalho inválido

De P ⇒ Q e Q, inferir P é afirmar o consequente. De P ⇒ Q e ¬P, inferir ¬Q é negar o antecedente. Ambos falham no modelo P falso, Q verdadeiro. Uma queda do servidor pode impedir o carregamento de uma página, mas uma falha de carregamento tem outras causas possíveis; a ausência de uma queda também não garante o sucesso.

Encontrar uma demonstração é um problema de busca. O estado inicial contém a BC; uma ação aplica uma regra de inferência e acrescenta sua conclusão; o estado objetivo contém a consulta. O comprimento da demonstração pode servir como custo do caminho. Selecionar sentenças relevantes evita gastar esforço com cadeias não relacionadas. A lógica clássica é monotônica: acrescentar premissas preserva consequências lógicas anteriores. Regras por padrão com exceções precisam de outro tratamento, pois informações posteriores podem retirar uma conclusão anterior obtida por padrão.

Principais conclusões

  • Uma inferência correta preserva a verdade das premissas na conclusão.
  • Modus ponens precisa tanto de uma implicação quanto de sua premissa.
  • Equivalências podem reescrever uma sentença nos dois sentidos.
  • Afirmar o consequente e negar o antecedente são formas inválidas.
  • A busca de uma demonstração acrescenta sentenças justificadas até chegar à consulta.
  • A consequência lógica clássica é monotônica.

2.2 Demonstre a consequência lógica por resolução

A resolução demonstra uma consequência lógica buscando uma contradição. Sua entrada está na forma normal conjuntiva (FNC): uma conjunção de cláusulas, cada uma sendo uma disjunção de literais. Uma cláusula de um literal é uma cláusula unitária. A cláusula vazia não tem nenhum literal que possa ser verdadeiro e representa a falsidade.

Converta sentenças em cláusulas

Primeiro, elimine ⇔ e ⇒. Depois, mova as negações para dentro com as leis de De Morgan e a eliminação de duplas negações. Por fim, distribua ∨ sobre ∧. Uma bicondicional pode, portanto, gerar várias cláusulas.

Para B₁₁ ⇔ (P₁₂ ∨ P₂₁), o primeiro sentido fornece ¬B₁₁ ∨ P₁₂ ∨ P₂₁. O inverso fornece ¬(P₁₂ ∨ P₂₁) ∨ B₁₁. Mover a negação para dentro e distribuir fornece ¬P₁₂ ∨ B₁₁ e ¬P₂₁ ∨ B₁₁. As três cláusulas são necessárias para a bicondicional completa.

Resolva um par complementar

De P ∨ A e ¬P ∨ B, a resolução deriva A ∨ B. Qualquer que seja o valor de P, pelo menos uma das partes restantes deve ser verdadeira. A resolução unitária usa uma cláusula de um único literal: P com ¬P ∨ B fornece B. Literais duplicados são eliminados por fatoração, portanto resolver A ∨ B com A ∨ ¬B fornece A.

Resolva exatamente um par complementar por vez. A ∨ B e ¬A ∨ ¬B são conjuntamente satisfatíveis quando A é verdadeira e B é falsa. Remover ambos os pares forneceria incorretamente a cláusula vazia. Resolver apenas o par de A produz B ∨ ¬B, uma tautologia que não acrescenta nenhuma restrição.

Refute a consulta negada

Para demonstrar BC ⊨ α, acrescente ¬α, converta a sentença combinada para FNC e derive novos resolventes. Chegar à cláusula vazia demonstra que não existe contramodelo.

Para a consulta sobre o poço ¬P₁₂, acrescente P₁₂. Resolva-a com ¬P₁₂ ∨ B₁₁ para obter B₁₁. Resolva esse resultado com a observação ¬B₁₁ para chegar à cláusula vazia. A demonstração estabelece a ausência do poço, não sua presença: o literal positivo do poço era uma consulta negada temporária.

Um segundo exemplo usa R ⇒ C, (C ∨ I) ⇒ G e R. As cláusulas em FNC são ¬R ∨ C, ¬C ∨ G, ¬I ∨ G e R. Acrescente ¬G. Ela se resolve com ¬C ∨ G para fornecer ¬C, que fornece ¬R usando a primeira cláusula. Resolver ¬R com R conclui a refutação. Nenhum fato sobre I foi necessário.

A resolução proposicional é correta e completa para refutação. Ela termina porque um número finito de símbolos permite um número finito de cláusulas distintas. Se o fechamento exaustivo não produzir uma nova cláusula nem uma contradição, a consulta não é consequência lógica da BC. Ela não precisa derivar diretamente toda sentença que seja consequência lógica: apenas de A, a resolução não constrói A ∨ B.

A distribuição pode expandir a FNC exponencialmente. Uma codificação de Tseitin introduz símbolos para subfórmulas e produz uma FNC de tamanho linear. A nova sentença é equissatisfatível com a original; ela não precisa ser logicamente equivalente no vocabulário ampliado. Preservar a satisfatibilidade basta para testes de contradição baseados em SAT.

Principais conclusões

  • A FNC é uma conjunção de disjunções de literais.
  • A resolução elimina um par complementar por passo.
  • A refutação acrescenta a negação da consulta.
  • A cláusula vazia demonstra insatisfatibilidade.
  • A resolução proposicional é completa para refutação e termina.
  • A codificação de Tseitin preserva a satisfatibilidade e controla o tamanho da FNC.

2.3 Raciocine com cláusulas de Horn por encadeamento para frente e para trás

Regras com uma conclusão positiva permitem um procedimento de inferência mais simples que a resolução geral. Uma cláusula definida tem exatamente um literal positivo; ¬A ∨ ¬B ∨ C é escrita A ∧ B ⇒ C. Um fato tem corpo vazio. Uma cláusula de Horn tem no máximo um literal positivo, incluindo uma cláusula de objetivo sem nenhum, como A ∧ B ⇒ Falso.

Deixe os fatos orientar as regras

O encadeamento para frente começa com fatos conhecidos. Quando todas as premissas de uma regra forem conhecidas, acrescente sua cabeça. Continue até a consulta aparecer ou até um ponto fixo em que nada seja acrescentado. Implementações eficientes mantêm uma agenda de novos fatos e uma contagem de premissas não satisfeitas por regra.

Considere PowerOn, FanSpinning e LoadLow como fatos. As regras são PowerOn ∧ FanSpinning ⇒ Cooling; Cooling ∧ LoadLow ⇒ TempNormal; PowerOn ⇒ LedLit; LedLit ∧ TempNormal ⇒ SystemOK; FanSpinning ⇒ NoiseHeard. Processar PowerOn permite derivar LedLit e satisfaz parcialmente a regra de resfriamento. FanSpinning permite derivar Cooling e NoiseHeard. Cooling junto com LoadLow fornece TempNormal, e então TempNormal junto com LedLit fornece SystemOK. NoiseHeard é uma conclusão adicional válida, embora a consulta não precisasse dela.

Deixe uma consulta escolher as regras

O encadeamento para trás começa com SystemOK. Sua regra exige LedLit e TempNormal. LedLit reduz-se ao fato conhecido PowerOn. TempNormal exige Cooling e LoadLow; Cooling exige PowerOn e FanSpinning. Toda folha é um fato, portanto a consulta tem sucesso. A regra sobre ruído nunca é examinada.

MétodoPonto de partidaSituação útil
Encadeamento para frenteFatos disponíveisManter consequências à medida que chegam observações
Encadeamento para trásUma conclusão solicitadaResponder a uma consulta específica com regras relevantes

Para BCs de cláusulas definidas e consultas atômicas, ambos os métodos são corretos e completos com controle adequado da busca. O encadeamento para frente proposicional pode executar em tempo linear no tamanho da BC. Em seu ponto fixo, atribuir verdadeiro aos símbolos derivados e falso a todos os outros fornece um modelo das cláusulas definidas.

Trate ciclos sem perder respostas

A ⇒ B e B ⇒ A colocam um procedimento ingênuo de encadeamento para trás em um ciclo infinito. Um ramo pode parar quando seu objetivo já está na pilha de objetivos ativos. Subobjetivos bem-sucedidos podem ser armazenados em cache, mas uma falha causada por um ciclo é temporária. Com B ⇒ A, A ⇒ B, C ⇒ A e o fato C, uma tentativa inicial de demonstrar B enquanto A está ativo pode falhar. Depois de demonstrar A a partir de C, uma nova tentativa de B tem sucesso. Armazenar a primeira falha permanentemente faria perder a demonstração. A tabulação de respostas acompanha objetivos dependentes e os revisita quando surgem respostas.

O encadeamento depende da forma da regra. A ∨ B tem dois literais positivos, portanto não é uma cláusula de Horn. Junto com A ⇒ C e B ⇒ C, ela tem C como consequência lógica ao considerar as duas alternativas. Nenhuma regra definida é acionada apenas a partir da disjunção. A resolução geral pode demonstrar essa conclusão mesmo quando o encadeamento simples para.

Principais conclusões

  • Cláusulas definidas têm um literal positivo; cláusulas de Horn têm no máximo um.
  • O encadeamento para frente é orientado pelos dados.
  • O encadeamento para trás é orientado pelo objetivo.
  • Um ponto fixo não acrescenta novos fatos.
  • Falhas causadas por ciclos não devem ser armazenadas como definitivas.
  • Premissas disjuntivas podem exigir raciocínio além do encadeamento.

2.4 Encontre modelos com resolvedores SAT

Um resolvedor SAT busca uma atribuição que satisfaça todas as cláusulas de uma sentença em FNC. Um modelo retornado pode ser verificado diretamente. Um resultado insatisfatível descarta todas as atribuições. SAT é NP-completo, mas instâncias estruturadas muitas vezes admitem soluções muito mais rápidas que a enumeração exaustiva por tabela-verdade.

Reduza a busca com DPLL

DPLL é uma busca com retrocesso em profundidade com três atalhos. Um literal verdadeiro satisfaz toda a sua cláusula, enquanto uma cláusula inteiramente falsa encerra o ramo. Um símbolo puro ocorre com apenas um sinal entre as cláusulas não satisfeitas, portanto pode receber um valor que satisfaça essas ocorrências. Uma cláusula unitária tem apenas um literal restante que pode ser verdadeiro, ao qual deve ser atribuído verdadeiro. Repetir essas escolhas forçadas é a propagação unitária.

Considere (A), (¬A ∨ B), (¬B ∨ C ∨ D), (¬C ∨ ¬D), (D ∨ E). E é puro, portanto atribua a ele verdadeiro. A cláusula unitária A força A a ser verdadeiro, o que força B a ser verdadeiro. A restrição restante C ∨ D e a cláusula ¬C ∨ ¬D exigem que exatamente um entre C e D seja verdadeiro. Ramifique com C verdadeiro; a propagação força D a ser falso. A, B, C e E verdadeiros com D falso satisfazem todas as cláusulas.

Para (A ∨ B), (A ∨ ¬B), (¬A ∨ C), (¬A ∨ ¬C), ramifique em A. A falso força tanto B quanto ¬B; A verdadeiro força tanto C quanto ¬C. Ambos os ramos entram em conflito, portanto a sentença inteira é insatisfatível.

Aprenda com os conflitos

O aprendizado de cláusulas dirigido por conflitos (CDCL) estende essa busca. Uma cláusula aprendida bloqueia uma combinação responsável por um conflito. O retrocesso com salto ignora escolhas irrelevantes; a atividade das variáveis orienta a ramificação; reinícios mudam o caminho da busca; literais observados aceleram a propagação. As cláusulas aprendidas são justificadas pela fórmula, portanto preservam suas possíveis soluções.

Busque alterando uma atribuição completa

WalkSAT começa com uma atribuição completa aleatória. Ele escolhe uma cláusula não satisfeita e inverte uma variável nela, às vezes aleatoriamente e às vezes para deixar o maior número de cláusulas satisfeitas. Movimentos aleatórios ajudam a escapar de armadilhas locais. Começar com os cinco símbolos falsos no exemplo anterior deixa (A) e (D ∨ E) falsas. Inverter A corrige (A), mas torna (¬A ∨ B) falsa. Um movimento pode reparar uma cláusula enquanto prejudica outra.

ResultadoDPLL ou CDCLWalkSAT
Modelo satisfatível encontradoEstabelece a satisfatibilidadeEstabelece a satisfatibilidade
Busca termina sem modeloA falha exaustiva demonstra insatisfatibilidadeUm limite de inversões deixa a resposta indefinida

Para testar consequência lógica, forneça BC ∧ ¬α. A insatisfatibilidade demonstra α; um modelo é um contraexemplo. Um encerramento do WalkSAT por limite de tempo deixa as duas possibilidades em aberto. Em grandes fórmulas 3-FNC aleatórias, a razão entre cláusulas e variáveis tem uma transição estimada perto de 4,26, com instâncias difíceis frequentemente próximas a ela. Esse é um padrão do conjunto de fórmulas, não um limite que decide uma fórmula individual. A estrutura das cláusulas e a estratégia do resolvedor também afetam a dificuldade.

Principais conclusões

  • A propagação unitária faz atribuições forçadas.
  • Escolhas de símbolos puros preservam a satisfatibilidade.
  • DPLL ramifica e retrocede; CDCL também aprende com conflitos.
  • WalkSAT busca entre atribuições completas.
  • Um encerramento do WalkSAT por limite de tempo deixa a satisfatibilidade indefinida.
  • SAT testa a consequência lógica verificando BC ∧ ¬α.
  • O limiar de 3-SAT aleatório descreve uma distribuição, não cada instância.
3

Represente conhecimento em lógica de primeira ordem

Uma regra sobre todos os objetos não deveria precisar de um símbolo separado para cada um. A lógica de primeira ordem acrescenta objetos, relações, funções e quantificadores para que uma sentença compacta possa descrever um domínio inteiro. Seu poder expressivo também torna as escolhas de modelagem mais importantes: a ordem dos quantificadores, a identidade e as hipóteses sobre fatos ausentes podem mudar as respostas. Construa uma pequena base de conhecimento para ver como essas escolhas funcionam juntas.

3.1 Leia e avalie sentenças de primeira ordem

A lógica de primeira ordem descreve objetos e suas relações. Em vez de dar a cada casa um símbolo independente, ela pode expressar uma regra para todas as casas: ∀s (Breezy(s) ⇔ ∃r (Adjacent(r, s) ∧ Pit(r))). Os quantificadores incorporam a generalidade à linguagem.

Separe objetos de afirmações

Uma constante nomeia um objeto, como Ada. Uma variável, como x, assume valores entre os objetos. Uma função associa objetos a um objeto: MotherOf(Ada) é um termo que se refere a alguém. Um predicado forma uma afirmação: Owns(Ada, Atlas) é verdadeira ou falsa. Um termo pode ser uma constante, uma variável ou uma função aplicada a termos.

Book(x) é uma sentença, não um objeto, portanto Owns(Ada, Book(x)) coloca o tipo errado de expressão em uma posição de argumento. A igualdade compara aquilo a que os termos se referem: MotherOf(Ada) = Clara diz que ambos os termos denotam o mesmo objeto.

Avalie uma sentença em um modelo

Um modelo de primeira ordem fornece um domínio não vazio e uma interpretação. Constantes denotam objetos do domínio, predicados denotam relações e funções fornecem saídas para cada tupla apropriada de objetos do domínio. Uma sentença universalmente quantificada deve valer para todo valor possível de sua variável; uma sentença existencial precisa de pelo menos uma testemunha.

Seja o domínio {a, b, k}; Ada nomeia a, Ben nomeia b e Atlas nomeia k. Person contém a e b, Book contém k, e Owns contém apenas (a, k). Owns(Ada, Atlas) é verdadeira. ∃x (Book(x) ∧ Owns(Ben, x)) é falsa porque Ben não possui nenhum objeto. ∀x (Person(x) ⇒ ∃y (Book(y) ∧ Owns(x, y))) é falsa porque Ben é um contraexemplo. Ainda assim, todo livro tem um dono: ∀x (Book(x) ⇒ ∃y Owns(y, x)) vale.

Explicite as hipóteses de modelagem
HipóteseSignificado
Nomes únicosNomes de constantes diferentes denotam objetos diferentes
Mundo fechadoUm fato atômico ausente das consequências conhecidas é considerado falso
Fechamento do domínioTodo objeto é nomeado

A lógica de primeira ordem padrão não impõe essas hipóteses de banco de dados. Book(Atlas), Book(Beowulf), Owns(Ada, Atlas) e Owns(Ada, Beowulf) deixam em aberto se os dois nomes denotam o mesmo livro e se Ada possui mais livros. Sob a semântica de banco de dados, eles descrevem exatamente dois livros pertencentes a Ada.

Para obter essa afirmação exata na semântica padrão, mantenha os quatro fatos e acrescente ¬(Atlas = Beowulf) e ∀x ((Book(x) ∧ Owns(Ada, x)) ⇒ (x = Atlas ∨ x = Beowulf)). A desigualdade estabelece dois livros distintos; a restrição universal exclui outros livros que Ada possua.

Modelos de primeira ordem podem ter domínios arbitrariamente grandes, portanto o método de enumeração finita dos modelos proposicionais não fornece aqui um procedimento geral de decisão. Métodos de demonstração trabalham com a estrutura das sentenças. Uma variável livre precisa de uma atribuição para ser avaliada; vincule as variáveis ao escrever uma afirmação fechada para a BC.

Principais conclusões

  • Termos referem-se a objetos; predicados formam afirmações.
  • Um modelo fornece um domínio e interpretações dos símbolos.
  • ∀ verifica todo objeto; ∃ precisa de uma testemunha.
  • A lógica de primeira ordem padrão não pressupõe nomes únicos nem um domínio fechado.
  • Contagens exatas exigem que os objetos sejam distintos e uma condição de limite superior.

3.2 Traduza enunciados para a lógica de primeira ordem

A tradução começa decidindo o que a sentença afirma sobre cada objeto. O escopo dos quantificadores, o sentido da implicação e a igualdade determinam o significado; nomes de predicados, por si só, não o definem. Parênteses tornam o escopo pretendido visível.

Use o conectivo certo com um quantificador

“Todo gato é mamífero” torna-se ∀x (Cat(x) ⇒ Mammal(x)). Um objeto fora da categoria satisfaz a implicação sem ser gato. Escrever ∀x (Cat(x) ∧ Mammal(x)) faz com que tudo seja gato, incorretamente.

“Algum gato é preto” torna-se ∃x (Cat(x) ∧ Black(x)). A testemunha deve satisfazer ambas as propriedades. Com ∃x (Cat(x) ⇒ Black(x)), qualquer objeto que não seja gato já é uma testemunha, mesmo em um mundo sem gatos pretos. Regras universais de categoria geralmente usam implicação; afirmações existenciais sobre categorias geralmente usam conjunção.

Verifique quem pode depender de quem

∀x ∃y Loves(x, y) permite uma pessoa amada diferente para cada x. ∃y ∀x Loves(x, y) exige uma pessoa amada por todos. Em um mundo de duas pessoas no qual cada uma ama apenas a outra, a primeira vale e a segunda falha. Trocar a ordem de quantificadores de tipos diferentes pode mudar uma afirmação; trocar dois quantificadores universais adjacentes ou dois quantificadores existenciais adjacentes a preserva.

A negação troca os quantificadores: ¬∀x P(x) ≡ ∃x ¬P(x), e ¬∃x P(x) ≡ ∀x ¬P(x). Portanto, “Nem todo estudante foi aprovado” significa ∃x (Student(x) ∧ ¬Passed(x)). Isso exige um estudante que não foi aprovado; não afirma que todos os estudantes não foram aprovados.

Expresse sentido e quantidade

“Somente membros tomam emprestado” significa ∀x (Borrows(x) ⇒ Member(x)). Tomar emprestado basta para estabelecer o pertencimento, enquanto pertencer, por si só, nada diz sobre tomar emprestado. “Nenhum réptil é mamífero” significa ∀x (Reptile(x) ⇒ ¬Mammal(x)).

Para expressar que Ada possui pelo menos dois livros, escreva ∃x ∃y (Book(x) ∧ Book(y) ∧ Owns(Ada, x) ∧ Owns(Ada, y) ∧ ¬(x = y)). A desigualdade importa: dois nomes de variável podem referir-se ao mesmo objeto. Exatamente um usa uma testemunha e a unicidade: ∃x (Book(x) ∧ Owns(Ada, x) ∧ ∀y ((Book(y) ∧ Owns(Ada, y)) ⇒ y = x)).

Dê os dois sentidos às definições

Uma definição de irmãos pode ser ∀x ∀y (Sibling(x, y) ⇔ (¬(x = y) ∧ ∃p (Parent(p, x) ∧ Parent(p, y)))). O primeiro sentido impõe condições aos irmãos; o inverso permite que fatos sobre compartilhar um dos pais estabeleçam que duas pessoas são irmãos. Uma implicação em um único sentido fornece apenas metade desse significado.

Em um domínio de agente, regras diagnósticas vão das observações às possíveis causas, enquanto regras causais vão das causas aos efeitos. “Toda casa com brisa tem um poço adjacente” é diagnóstica. “Todo poço faz com que toda casa adjacente tenha brisa” é causal. Juntas, elas sustentam a bicondicional completa da brisa. Termine uma tradução verificando a vinculação de cada variável e testando um pequeno mundo no qual a afirmação em português deveria ser falsa.

Principais conclusões

  • Regras universais de categoria usam implicação; testemunhas existenciais usam conjunção.
  • A ordem dos quantificadores controla se as testemunhas podem variar.
  • A negação troca ∀ e ∃.
  • “Somente” inverte um sentido de implicação comumente usado por engano.
  • A contagem precisa de igualdade ou desigualdade.
  • Definições frequentemente precisam de uma bicondicional.

3.3 Construa uma base de conhecimento para um domínio

Construir uma base de conhecimento útil é uma tarefa de modelagem. A notação formal só ajuda depois que as perguntas, os objetos e as relações relevantes foram escolhidos. A engenharia do conhecimento transforma essas escolhas em axiomas que podem ser verificados com exemplos pretendidos.

Construa em torno das perguntas

Uma sequência prática é identificar a tarefa, reunir o conhecimento relevante, escolher um vocabulário, escrever axiomas gerais, acrescentar fatos da instância, fazer consultas e corrigir os resultados. Comece com perguntas concretas como “Este estudante pode se matricular nesta disciplina?”. Essa pergunta determina o que a representação deve permitir responder.

Para matrícula, use Student(s), Course(c), Prereq(p, c), Passed(s, c) e CanEnroll(s, c). Prereq(p, c) significa que é preciso ser aprovado em p antes de cursar c; inverter seus argumentos inverteria a dependência. Uma regra é ∀s ∀c ((Student(s) ∧ Course(c) ∧ ∀p (Prereq(p, c) ⇒ Passed(s, p))) ⇒ CanEnroll(s, c)). Ela exige todos os pré-requisitos, não apenas um.

Separe regras reutilizáveis de uma instância

Suponha que os fatos sejam Student(Mia), Course(AI), Prereq(Logic, AI), Prereq(Programming, AI), Passed(Mia, Logic) e Passed(Mia, Programming). A regra geral pode ser reutilizada para outros estudantes e disciplinas, enquanto esses fatos da instância descrevem um caso.

Na lógica de primeira ordem padrão, esses fatos deixam em aberto a existência de pré-requisitos adicionais para AI. Um modelo compatível poderia incluir um terceiro pré-requisito no qual Mia não foi aprovada, portanto CanEnroll(Mia, AI) ainda não é consequência lógica da BC. Acrescente ∀p (Prereq(p, AI) ⇔ (p = Logic ∨ p = Programming)) para completar a lista. Agora cada pré-requisito é uma das duas disciplinas nas quais ela foi aprovada, e a regra de matrícula se aplica. Um banco de dados de mundo fechado pode obter a mesma resposta tratando fatos ausentes sobre pré-requisitos como falsos.

Escolha o que se torna um objeto

Uma ontologia é o vocabulário e suas hipóteses estruturais. Red(x) trata o vermelho como propriedade. Color(x, Red) faz de Red um objeto, permitindo que ∃c (Color(x, c) ∧ Color(y, c)) expresse uma cor compartilhada. Essa mudança é a reificação: ela permite que a linguagem trate uma propriedade ou categoria como algo por si só.

ASK pode perguntar se CanEnroll(Mia, AI) é consequência lógica da BC. ASKVARS pode solicitar vinculações para CanEnroll(x, AI), retornando uma substituição como {x/Mia}. A mesma BC permite tanto perguntas sobre a verdade quanto consultas por objetos correspondentes.

Corrija o significado, não apenas a sintaxe

Um axioma ausente pode impedir uma consequência lógica desejada; um axioma incorreto pode sustentar uma consequência indesejada. Teste exemplos positivos, exemplos negativos e casos-limite. A regra ∀c (Course(c) ⇒ ∃t Teaches(t, c)) é forte demais se algumas disciplinas ainda não têm professor. A regra ∀p ∀c (Prereq(p, c) ⇒ Passed(Mia, p)) é forte demais porque atribui a Mia a aprovação em todos os pré-requisitos de todas as disciplinas.

Nomes de predicados são rótulos para o sistema de raciocínio. Chamar uma relação de Prereq não fornece, por si só, uma política de matrícula. As regras devem conectar fatos sobre pré-requisitos, disciplinas concluídas e elegibilidade no sentido pretendido.

Principais conclusões

  • Escolha as perguntas antes de escolher o vocabulário.
  • Mantenha axiomas gerais separados dos fatos da instância.
  • Uma exigência universal pode precisar de uma lista completa sob a semântica de mundo aberto.
  • ASKVARS retorna substituições que satisfazem a consulta.
  • A reificação torna uma propriedade ou categoria disponível como objeto.
  • Corrija tanto axiomas ausentes quanto axiomas fortes demais.
4

Faça inferências em lógica de primeira ordem

Regras com variáveis só se tornam úteis quando o sistema de raciocínio consegue associá-las a fatos específicos. Substituição e unificação fornecem essa correspondência, permitindo que encadeamento e resolução trabalhem diretamente com sentenças de primeira ordem. Acompanhe como as vinculações percorrem uma demonstração, como testemunhas existenciais mantêm suas dependências e como o controle da busca determina se uma implementação realmente encontra uma resposta justificada logicamente.

4.1 Faça a correspondência entre sentenças por substituição e unificação

A inferência de primeira ordem trabalha com padrões que contêm variáveis. A substituição troca variáveis por termos; a unificação encontra substituições que tornam duas expressões idênticas. Juntas, elas permitem que uma regra geral atenda a muitos fatos específicos sem gerar primeiro todas as instâncias possíveis.

Instancie sentenças quantificadas com cuidado

A instanciação universal substitui uma variável universalmente vinculada por qualquer termo sem variáveis. De ∀x (Cat(x) ⇒ Mammal(x)), derive Cat(Tom) ⇒ Mammal(Tom), ou a instância correspondente com MotherOf(Tom). Um termo sem variáveis não contém nenhuma variável.

A instanciação existencial introduz um novo nome para uma testemunha. De ∃x (Crown(x) ∧ OnHead(x, John)), introduza uma nova constante C₁ e acrescente Crown(C₁) e OnHead(C₁, John). Nomear Ben como testemunha identificaria incorretamente um objeto não especificado com um objeto existente. A BC ampliada preserva a satisfatibilidade, mas não a equivalência no vocabulário ampliado.

A proposicionalização gera instâncias sem variáveis e então usa raciocínio proposicional. Símbolos de função podem produzir infinitos termos: Ada, MotherOf(Ada), MotherOf(MotherOf(Ada)) e assim por diante. Consultas de primeira ordem que são consequências lógicas têm demonstrações finitas, mas um demonstrador geral pode executar indefinidamente quando a consulta não é consequência lógica. Isso é semidecidibilidade.

Encontre uma substituição consistente

Para unificar Knows(Ana, x) com Knows(y, Bo), primeiro faça corresponder o predicado e a aridade. Os primeiros argumentos exigem y = Ana; os segundos exigem x = Bo. A substituição {y/Ana, x/Bo} torna ambas as expressões iguais a Knows(Ana, Bo).

Knows(Ana, x) e Knows(y, MotherOf(y)) fornecem {y/Ana, x/MotherOf(Ana)}. Uma vinculação deve ser propagada pelos outros termos. Se a mesma variável x ocorre nas duas expressões Knows(Ana, x) e Knows(x, Bo), ela precisaria tornar-se Ana e Bo ao mesmo tempo, portanto a unificação sintática falha.

Variáveis em sentenças quantificadas separadamente são independentes. A padronização de variáveis à parte renomeia-as antes de combinar as sentenças. Renomear o segundo x como z nesse último par permite {z/Ana, x/Bo}. Isso preserva a independência pretendida das variáveis locais de duas regras.

Um unificador mais geral não impõe vinculações desnecessárias. Knows(Ana, x) e Knows(y, z) unificam-se com {y/Ana, x/z}; atribuir também Ana a z especializaria o resultado sem necessidade. A verificação de ocorrência rejeita x = MotherOf(x), pois um termo finito não pode conter a si mesmo. A unificação comum em Prolog pode permitir termos cíclicos, portanto seu comportamento exige cuidado quando se pretende usar lógica de primeira ordem com termos finitos.

Aplique a regra correspondente

O Modus ponens generalizado faz todas as premissas corresponderem sob uma única substituição consistente. Owns(Ada, Atlas) e Book(Atlas) correspondem a Owns(x, y) ∧ Book(y) ⇒ Reader(x) com {x/Ada, y/Atlas}, fornecendo Reader(Ada). Fazer uma premissa corresponder com y = Atlas e outra com y = Beowulf não justificaria acionar a regra: variáveis compartilhadas exigem objetos compartilhados.

Principais conclusões

  • Substituições trocam variáveis por termos.
  • Testemunhas existenciais precisam de novos nomes.
  • A unificação deve satisfazer consistentemente todas as correspondências entre argumentos.
  • Padronize variáveis independentes à parte.
  • Um unificador mais geral deixa em aberto escolhas desnecessárias.
  • A verificação de ocorrência exclui termos finitos que contenham a si mesmos.
  • O Modus ponens generalizado usa uma substituição para todas as premissas.

4.2 Faça encadeamentos para frente e para trás com regras de primeira ordem

Uma cláusula definida de primeira ordem tem premissas atômicas e uma conclusão atômica, com suas variáveis consideradas universalmente quantificadas. Os encadeamentos para frente e para trás usam unificação para aplicar essas regras a objetos nomeados. Datalog mantém essa forma de regra e exclui símbolos de função, produzindo um espaço finito de fatos possíveis sem variáveis no contexto usual de um banco de dados finito.

Derive locais alcançáveis

Considere Link(A, B), Link(B, C) e Link(C, D). Use Link(x, y) ⇒ Reach(x, y) e Link(x, y) ∧ Reach(y, z) ⇒ Reach(x, z). Em rodadas síncronas, cada regra lê os fatos disponíveis antes daquela rodada.

A rodada 1 deriva Reach(A, B), Reach(B, C) e Reach(C, D). A rodada 2 acrescenta Reach(A, C) e Reach(B, D). A rodada 3 acrescenta Reach(A, D). A rodada 4 não acrescenta nada. Há seis fatos Reach no ponto fixo. Uma implementação que reutiliza imediatamente novos fatos pode encontrá-los em outra ordem, mas chega ao mesmo fechamento.

Com n constantes e predicados de aridade no máximo k, apenas um número finito de tuplas é possível; um limite superior é p · nᵏ para p predicados. Em contraste, NatNum(0) e NatNum(n) ⇒ NatNum(S(n)) geram termos cada vez mais profundos indefinidamente. Símbolos de função eliminam a garantia de domínio finito.

Fazer corresponder uma regra com várias premissas é um problema de restrições. Uma premissa seletiva pode reduzir muito as substituições consideradas em seguida. O encadeamento para frente incremental concentra-se em regras afetadas por fatos recém-acrescentados. Redes Rete mantêm correspondências parciais entre atualizações, evitando trabalho repetido em sistemas de regras de produção.

Trabalhe para trás com vinculações

Para demonstrar Reach(A, D), tente a regra de vínculo direto, que exige o fato ausente Link(A, D). A regra recursiva exige Link(A, y) e Reach(y, D). A primeira vincula y a B. Continuar por B e C leva ao fato conhecido Link(C, D). A consulta Reach(A, w) tem três respostas: w = B, C ou D.

Prolog escreve regras com a cabeça primeiro e usa variáveis em maiúsculas e constantes em minúsculas:

reach(X, Y) :- link(X, Y).
reach(X, Z) :- link(X, Y), reach(Y, Z).

Ela tenta as cláusulas de cima para baixo e as premissas da esquerda para a direita, usando encadeamento para trás em profundidade. A aritmética pode usar N is M + 1. A negação por falha, escrita \+ p, tem sucesso se a tentativa de demonstrar p falhar em um número finito de passos. Ela é um teste operacional de falha, não uma demonstração geral de negação clássica.

Evite que a recursão prenda a busca

Colocar reach(X, Y) primeiro no corpo recursivo pode chamar imediatamente o mesmo objetivo ainda não resolvido. Colocar as cláusulas base primeiro e usar uma recursão que consome um vínculo ajuda, mas ciclos ainda podem prender buscas malsucedidas. A tabulação de respostas registra respostas de subobjetivos e gerencia dependências repetidas. O encadeamento para frente é completo para Datalog finito; a busca ingênua para trás em profundidade precisa desse tipo de controle para evitar perder respostas alcançáveis atrás de ramos infinitos.

Principais conclusões

  • O encadeamento de primeira ordem faz a correspondência de regras usando substituições.
  • Datalog exclui símbolos de função e tem um número finito de fatos sem variáveis.
  • O encadeamento para frente chega a um ponto fixo.
  • Prolog usa encadeamento para trás em profundidade e em uma ordem definida.
  • A negação por falha exige falha em um número finito de passos.
  • A tabulação de respostas gerencia subobjetivos repetidos e suas respostas.

4.3 Demonstre consultas de primeira ordem por resolução

A resolução de primeira ordem amplia o raciocínio com cláusulas por meio da unificação. Ela pode demonstrar conclusões que envolvem objetos sem nome porque os termos de Skolem preservam as dependências das testemunhas existenciais. Como na refutação proposicional, comece com a BC e a negação da consulta.

Prepare cláusulas de primeira ordem

Elimine ⇔ e ⇒, mova as negações para dentro, padronize as variáveis vinculadas, Skolemize as existenciais, elimine os quantificadores universais e distribua ∨ sobre ∧. Mover a negação primeiro é importante porque ¬∀x P(x) torna-se ∃x ¬P(x), mudando o tipo de testemunha necessário.

Para “Toda disciplina tem um professor”, ∀c (Course(c) ⇒ ∃t Teaches(t, c)), o professor existencial pode depender de c. Introduza uma nova função T(c) para obter ¬Course(c) ∨ Teaches(T(c), c). Uma única constante imporia um professor comum, o que a sentença original não exige. Para ∃t ∀c (Course(c) ⇒ Teaches(t, c)), uma nova constante é apropriada porque a testemunha precede o quantificador universal.

“Nem toda ave voa” torna-se ∃x (Bird(x) ∧ ¬Flies(x)) e depois Bird(B₁) e ¬Flies(B₁). Ambas as cláusulas usam a mesma nova testemunha. A Skolemização preserva a satisfatibilidade; ela não é uma equivalência comum no vocabulário ampliado.

Aplique um unificador a todo o resolvente

Padronize as variáveis das duas cláusulas à parte. Encontre literais complementares que se unifiquem, remova-os e aplique seu unificador mais geral a cada literal restante. A fatoração também combina literais unificáveis dentro de uma cláusula. A resolução com fatoração é completa para refutação de cláusulas de primeira ordem.

Considere ¬Course(c) ∨ Teaches(T(c), c), ¬Teaches(u, v) ∨ Staff(u) e Course(Logic). A consulta é ∃w Staff(w); sua negação fornece ¬Staff(w), universalmente quantificada. Resolva o fato sobre a disciplina com a primeira cláusula para obter Teaches(T(Logic), Logic). Resolva com a segunda sob {u/T(Logic), v/Logic}, obtendo Staff(T(Logic)). Resolva com ¬Staff(w) sob {w/T(Logic)} para chegar à cláusula vazia. Existe um membro da equipe, embora a BC nunca dê a essa pessoa um nome comum.

Controle a busca por cláusulas

A preferência unitária escolhe primeiro cláusulas curtas. O conjunto de suporte exige uma cláusula de origem da consulta negada ou de suas descendentes e preserva a completude quando o restante da BC é satisfatível. A resolução de entrada exige uma cláusula de origem original em cada passo e é completa para BCs de Horn. A subsunção remove uma cláusula mais fraca já abrangida por uma mais forte e geral, como ao excluir P(Ana) ∨ Q(Bo) quando P(x) é conhecida.

A igualdade precisa de tratamento específico: axiomas de igualdade, reescrita por equações por meio de demodulação ou inferências como a paramodulação. A resolução puramente sintática, por si só, não captura todos os significados da igualdade. Uma busca justa e completa encontra uma contradição para todo conjunto insatisfatível de cláusulas de primeira ordem, mas pode executar indefinidamente nos demais casos. Demonstradores baseados em resolução incluem Vampire e E; EQP demonstrou a conjectura de Robbins em 1996.

Principais conclusões

  • Negue a consulta antes da conversão.
  • Mova a negação para dentro antes de escolher as testemunhas de Skolem.
  • Uma função de Skolem registra a dependência de variáveis universais.
  • Aplique o unificador a todos os literais restantes.
  • A resolução com fatoração é completa para refutação.
  • A igualdade e o controle da busca precisam de tratamento explícito.
5

Organize conhecimento em ontologias e grafos de conhecimento

Grandes coleções de fatos precisam de uma estrutura compartilhada. Categorias e ontologias organizam os tipos de coisas que existem e como se relacionam, enquanto grafos de conhecimento registram entidades e vínculos específicos. O raciocínio pode ampliar esses vínculos, consultas podem recuperar objetos correspondentes e modelos estatísticos podem sugerir acréscimos. Essas operações respondem a perguntas diferentes, portanto seus resultados precisam de interpretações diferentes quando um grafo está incompleto.

5.1 Estruture conhecimento com categorias e ontologias

Uma ontologia organiza as categorias, os objetos, as relações e as hipóteses de um domínio. Uma ontologia superior fornece ideias amplas, como objetos, eventos e tempo; uma ontologia de domínio fornece as distinções úteis em uma área específica. Ontologias clínicas e biológicas ilustram por que um vocabulário compartilhado útil frequentemente atende a uma comunidade específica.

Mantenha pertencimento e subclasse separados

Uma categoria pode aparecer como predicado, Laptop(x), ou como objeto, Laptops. O pertencimento x ∈ Laptops diz que um indivíduo pertence a ela. Laptops ⊂ Computers diz que todo notebook é um computador. Uma taxonomia organiza essas relações de subclasse em uma hierarquia. Se todo computador tem um processador, notebooks herdam essa propriedade.

A relação de subclasse é transitiva: Penguins ⊂ Birds e Birds ⊂ Animals fornecem Penguins ⊂ Animals. O pertencimento não é transitivo. Pingu ∈ Penguins e Penguins ∈ Species não fazem de Pingu uma espécie. Uma afirmação diz respeito a uma ave individual; a outra diz respeito a uma categoria tratada como objeto.

Categorias são disjuntas quando não compartilham membros. Uma decomposição exaustiva abrange todo membro da categoria superior. Uma partição faz as duas coisas: inteiros negativos, zero e inteiros positivos particionam os inteiros. A exaustividade permite sobreposição, a menos que a disjunção também seja afirmada.

Represente partes, eventos e valores herdados

PartOf descreve composição, não pertencimento a uma categoria. PartOf é transitiva: um raio que pertence a uma roda que pertence a uma bicicleta é parte da bicicleta. Isso não faz de uma bicicleta um tipo de roda. Eventos também podem ser objetos: Happens(e, t), Initiates(e, f, t) e HoldsAt(f, t) conectam eventos a fluentes que mudam. Acender uma lâmpada inicia um fluente que persiste até que um evento o encerre.

Uma rede semântica representa objetos e categorias como nós com relações rotuladas. Em uma rede com padrões, “aves normalmente voam” pode fornecer um valor herdado por aves comuns, enquanto uma categoria mais específica de pinguins o substitui. Isso é diferente de afirmar o axioma clássico sem exceções ∀x (Bird(x) ⇒ Flies(x)), que também se aplicaria aos pinguins.

Escolha a linguagem de raciocínio
AbordagemPrincipal vantagemRestrição importante
Rede semânticaCaminhos de relações e herança fáceis de interpretarUma rede simples não oferece negação e disjunção arbitrárias da lógica de primeira ordem
Lógica de descriçãoDefinições de categorias e raciocínio decidívelA expressividade é deliberadamente restrita
Raciocínio por padrãoRegras típicas com exceçõesConclusões podem ser retiradas

Lógicas de descrição permitem verificar subsunção, classificação e consistência. Uma definição pode classificar uma pessoa com pelo menos três filhos em uma categoria apropriada. Essas lógicas formam a base das linguagens de lógica de descrição de OWL.

O raciocínio por padrão é não monotônico: saber que uma ave é um pinguim pode retirar uma conclusão padrão de que ela voa. A circunscrição minimiza casos anormais em regras como Bird(x) ∧ ¬Abnormal(x) ⇒ Flies(x). A lógica de padrões permite conclusões enquanto elas permanecem consistentes com o conhecimento. Sistemas de manutenção da verdade registram o suporte para que conclusões que dependam de uma crença retirada possam ser removidas.

Principais conclusões

  • Uma ontologia fornece um vocabulário formal e hipóteses.
  • Pertencimento difere de subclasse; apenas a relação de subclasse é transitiva na hierarquia de categorias.
  • Uma partição é disjunta e exaustiva.
  • PartOf e subclasse descrevem relações diferentes.
  • Lógicas de descrição limitam a expressividade para permitir raciocínio decidível.
  • Conclusões por padrão podem ser retiradas quando surgem exceções.

5.2 Explique como os grafos de conhecimento armazenam e usam fatos

Um grafo de conhecimento armazena entidades e suas relações como um grafo direcionado. Uma aresta simples torna-se uma tripla: sujeito, predicado, objeto. Por exemplo, (Ada, worksAt, Lab) corresponde a WorksAt(Ada, Lab); (Ada, type, Researcher) afirma o pertencimento a uma categoria. Um esquema dá significado compartilhado a esses rótulos e permite novas inferências.

Diferencie os padrões da web

RDF representa grafos como triplas. Sujeitos são IRIs ou nós em branco, predicados são IRIs e objetos também podem ser valores literais. IRIs identificam recursos em diferentes conjuntos de dados; um nó em branco representa um recurso sem lhe dar um identificador global. RDFS acrescenta classes, relações de subclasse e domínio e imagem de propriedades. OWL fornece definições de ontologia mais ricas. SPARQL faz a correspondência de padrões de grafo para retornar vinculações de variáveis. Grafos de propriedades oferecem outro modelo com propriedades de chave–valor em nós e arestas; Cypher e GQL são linguagens de consulta dessa família.

Se Ada é classificada como Researcher e Researcher é uma subclasse de Scientist, uma regra de subclasse deriva que Ada é Scientist. Isso é encadeamento para frente de primeira ordem sobre Member(x, c) ∧ Subset(c, d) ⇒ Member(x, d). Um mecanismo de consulta de grafos precisa do suporte relevante à consequência lógica ou de conclusões materializadas para apresentar esse fato inferido.

Faça a correspondência de uma consulta e preserve os detalhes

Com ex: declarado como prefixo de IRI, uma consulta pode ser:

SELECT ?p WHERE {
  ?p a ex:Researcher .
  ?p ex:worksAt ex:Lab .
}

O mesmo ?p deve satisfazer ambos os padrões. É uma junção, não duas buscas independentes. Os resultados são vinculações como ?p = ex:Ada, semelhantes às substituições em consultas lógicas.

Uma aresta binária não pode, por si só, expressar todos os papéis em um evento com data. Para um prêmio, crie um nó de evento ou de afirmação e conecte-o ao destinatário, ao prêmio e ao ano. Isso mantém juntos os detalhes de um prêmio e evita associar acidentalmente a data a todos os prêmios desse tipo. O Wikidata permite qualificadores de afirmação para esses detalhes.

Separe vínculos ausentes, inferidos e previstos

RDF e OWL usam uma leitura de mundo aberto: uma aresta ausente sobre o cônjuge deixa a relação desconhecida. Aplicações de mundo fechado fazem uma escolha diferente sobre fatos ausentes. Um resultado vazio de consulta informa a ausência de correspondência naquela configuração de consulta; por si só, ele não estabelece um fato negativo universal.

Wikidata, DBpedia, Knowledge Graph do Google e grafos internos de organizações apoiam consultas factuais, vinculação de registros, recomendações e recuperação de informações para sistemas generativos. Seus fatos podem estar incompletos ou desatualizados. A resolução de entidades identifica registros que se referem à mesma coisa mesmo quando os identificadores são diferentes.

Representações vetoriais atribuem vetores a entidades e relações. No TransE, o vetor da cabeça somado ao vetor da relação é treinado para ficar próximo do vetor da cauda. Uma pontuação alta sugere um vínculo ausente; é uma previsão estatística. A inferência lógica deriva uma consequência de fatos e regras declarados. Mantenha essa diferença visível ao decidir se uma nova aresta pertence ao conjunto de fatos verificados.

Principais conclusões

  • Uma tripla registra uma relação direcionada de sujeito–predicado–objeto.
  • RDF, RDFS, OWL e SPARQL cumprem papéis diferentes.
  • Variáveis de consulta compartilhadas unem padrões.
  • Nós de evento mantêm juntos fatos com várias partes.
  • Uma aresta ausente é desconhecida sob a semântica de mundo aberto.
  • Vínculos previstos precisam de verificação; eles não são consequências lógicas.
  • A resolução de entidades conecta identificadores diferentes para a mesma coisa.
6

Formule e resolva problemas de planejamento clássico

Um problema de planejamento conecta descrições lógicas à ação. Represente o estado atual, as condições necessárias para cada ação e os fatos que ela altera; depois busque uma sequência que alcance o objetivo. A estrutura das ações permite raciocinar para trás e criar heurísticas úteis, mas subobjetivos podem interferir uns nos outros. Comparar busca em estados, codificações SAT e refinamento de tarefas mostra como planejadores lidam com essa dificuldade e onde as hipóteses clássicas precisam de extensões.

6.1 Descreva um problema de planejamento em PDDL

O planejamento clássico busca ações que levem um estado inicial conhecido a um objetivo. O modelo é totalmente observável, determinístico, discreto e de agente único; o mundo muda por meio das ações modeladas. Uma representação fatorada descreve cada estado por meio de fluentes, para que um planejador possa raciocinar sobre o que cada ação altera.

Escreva o estado e os esquemas de ação

No fragmento básico de PDDL no estilo STRIPS, um estado lista fluentes atômicos verdadeiros sem variáveis. Fluentes não listados são falsos sob a hipótese de mundo fechado. O domínio reutilizável declara predicados e esquemas de ação; o problema declara objetos, o estado inicial e um objetivo. PDDL foi introduzida para a competição de planejamento de 1998, com base em STRIPS.

Um esquema de ação tem parâmetros, uma precondição e efeitos. Go(r, from, to) exige At(r, from) e Connected(from, to); adiciona At(r, to) e remove At(r, from). Pick(r, p, l) exige At(r, l), In(p, l) e HandEmpty(r); adiciona Holding(r, p) e remove In(p, l) e HandEmpty(r). Drop exige localização e posse; adiciona a localização do pacote e uma mão vazia e remove a posse.

Uma ação sem variáveis só se aplica quando suas precondições são verdadeiras. Sua atualização é RESULT(s, a) = (s − DEL(a)) ∪ ADD(a). Outros fluentes persistem, incluindo fatos estáticos Connected. Essa persistência implícita trata o problema do quadro sem um axioma separado para cada fluente não afetado.

Acompanhe uma entrega em quatro ações

Inicialmente, R está em Dock, Box está em Shelf e a mão de R está vazia. Vínculos Connected ligam Dock a Shelf e Shelf a Packing nos dois sentidos. O objetivo é In(Box, Packing).

  1. Go(R, Dock, Shelf) altera a localização de R e preserva os fatos sobre a caixa e a mão.
  2. Pick(R, Box, Shelf) remove a caixa da prateleira e faz R segurá-la.
  3. Go(R, Shelf, Packing) move R preservando Holding(R, Box).
  4. Drop(R, Box, Packing) coloca a caixa em Packing e libera a mão.

O objetivo deixa a localização final do robô não especificada, exceto onde as ações a exigem. Objetivos geralmente descrevem muitos estados aceitáveis, não um único estado completo.

Leia e verifique um esquema
(:action pick
 :parameters (?r ?p ?l)
 :precondition (and (at ?r ?l) (in ?p ?l) (hand-empty ?r))
 :effect (and (holding ?r ?p)
              (not (in ?p ?l)) (not (hand-empty ?r))))

Omitir um efeito de remoção pode deixar um robô em dois lugares ou um pacote sendo segurado e sobre uma prateleira ao mesmo tempo. Colocar uma condição necessária apenas em um efeito faz a ação criá-la em vez de verificá-la.

No mundo dos blocos, mover um bloco livre b de x para cima de um bloco livre y exige On(b, x), Clear(b), Clear(y), Block(b), Block(y) e ¬(b = y). A ação adiciona On(b, y) e Clear(x), e remove On(b, x) e Clear(y). As verificações de distinção e de bloco impedem empilhar um bloco sobre si mesmo e tratar a mesa como um único bloco. Uma ação separada MoveToTable mantém a mesa disponível para outros blocos.

Principais conclusões

  • Estados contêm fluentes verdadeiros sem variáveis; fluentes ausentes são falsos.
  • As precondições de uma ação devem ser satisfeitas antes de sua execução.
  • Efeitos de remoção removem fatos e efeitos de adição inserem fatos.
  • Fatos não mencionados persistem.
  • Um domínio é reutilizável; um problema fornece objetos, fatos iniciais e objetivos.
  • Verificações no modelo impedem ações impossíveis sem variáveis.

6.2 Busque planos com heurísticas independentes de domínio

Um modelo de planejamento define um espaço de busca, mas escolher ações úteis ainda é difícil. A progressão busca para frente por estados completos. A regressão busca para trás pelas condições que um estado anterior deve satisfazer. Ambas podem reutilizar métodos gerais de busca e aproveitar a estrutura das ações.

Busque a partir de qualquer uma das pontas

A progressão começa no estado inicial e aplica ações aplicáveis sem variáveis. Ela pode desperdiçar esforço com ações irrelevantes: um robô, 20 caixas e 10 locais já fornecem 200 combinações possíveis de Pick sem variáveis antes da filtragem por aplicabilidade.

A regressão considera uma ação que alcança um literal do objetivo sem negar outro literal do objetivo. Para regredir um conjunto de objetivos g por a, remova os literais alcançados e acrescente as precondições: g′ = (g − EFFECT(a)) ∪ PRECOND(a). EFFECT inclui literais positivos e negativos com seus sinais. Rejeite um resultado inconsistente que contenha um literal e sua negação.

Para In(Box, Packing) ∧ At(R, Dock), regredir por Drop(R, Box, Packing) fornece Holding(R, Box) ∧ At(R, Packing) ∧ At(R, Dock). Essas condições entram em conflito com a invariante pretendida de localização única. Um plano válido deve entregar a caixa antes do retorno final do robô. Regredir por Go(R, Shelf, Dock), por sua vez, fornece In(Box, Packing) ∧ At(R, Shelf) ∧ Connected(Shelf, Dock), preservando o pacote entregue.

Estime a distância usando problemas mais simples

Uma heurística é admissível quando nunca superestima o custo ótimo restante. A* com uma heurística admissível encontra um plano ótimo. Contar objetivos não satisfeitos nem sempre é admissível: uma única ação pode alcançar vários.

Ignorar precondições torna todas as ações imediatamente utilizáveis. Ignorar efeitos de remoção torna o progresso permanente, em problemas expressos com precondições e objetivos positivos. Condições negativas devem primeiro ser convertidas em fluentes positivos mantidos explicitamente. O comprimento ótimo do plano relaxado h⁺ é um limite inferior para o comprimento do plano real, mas calculá-lo é NP-difícil. FF encontra rapidamente um plano relaxado sem garantir sua otimalidade; seu comprimento pode superestimar h⁺ e não tem garantia de ser admissível.

Para o objetivo de entrega e retorno no armazém, o plano real de menor comprimento tem seis ações: ir a Shelf, pegar, ir a Packing, soltar, voltar a Shelf e voltar a Dock. O relaxamento por desconsideração de efeitos de remoção precisa apenas das quatro primeiras porque At(R, Dock) permanece verdadeiro após a saída. Assim, h⁺ = 4 enquanto o custo real é 6. A contagem de objetivos não satisfeitos começa em apenas 1 e deixa passar a maior parte desse trabalho.

Combine estimativas sem contar duas vezes

Um grafo de planejamento alterna níveis de fluentes e de ações possíveis, com vínculos de exclusão mútua marcando pares incompatíveis. A primeira aparição de um objetivo fornece uma estimativa por nível. Usar o máximo dos níveis individuais dos objetivos é admissível; somá-los pode contar repetidamente o trabalho compartilhado. A abstração de estados remove alguns fluentes para reduzir o espaço de estados. A decomposição em subobjetivos também se beneficia da verificação de ações compartilhadas: o máximo dos custos admissíveis dos subobjetivos é seguro, enquanto sua soma precisa de justificativa adicional.

Principais conclusões

  • A progressão busca em estados completos; a regressão busca em condições do objetivo.
  • A regressão exige alcançar um objetivo sem efeitos que conflitem com outro.
  • Relaxamentos removem restrições para estimar o trabalho restante.
  • O custo ótimo h⁺ com efeitos de remoção desconsiderados é admissível, mas difícil de calcular.
  • O comprimento do plano relaxado de FF não tem garantia de ser admissível.
  • Somar custos de subobjetivos pode contar duas vezes o trabalho compartilhado.

6.3 Compare abordagens de planejamento e seus limites

Métodos de planejamento diferem no que exploram: estados, atribuições de valores de verdade, restrições de ordenação ou refinamentos de procedimentos de especialistas. Sua utilidade depende da interação entre subobjetivos e das hipóteses que o modelo faz sobre a execução.

Reconheça subobjetivos que interagem

Na anomalia de Sussman, C está sobre A, com A e B sobre a mesa. O objetivo é On(A, B) ∧ On(B, C). Concluir primeiro o subobjetivo de colocar A sobre B bloqueia a colocação posterior de B. Colocar B sobre C imediatamente deixa A preso embaixo. Um plano de menor comprimento libera A primeiro e depois constrói a pilha de baixo para cima: mover C para a mesa, mover B para cima de C e então mover A para cima de B. Os três movimentos intercalam preparação e alcance de objetivos.

Codifique um plano limitado como SAT

SATPlan escolhe um horizonte T. Ele afirma os fluentes iniciais no tempo 0, os fluentes do objetivo em T, as precondições das ações, as restrições de estado sucessor e as exclusões para ações incompatíveis. Uma atribuição satisfatória seleciona ações que formam um plano. Um resultado insatisfatível exclui planos dentro dessa codificação e desse horizonte.

Tentar horizontes em ordem encontra o menor horizonte satisfatível. Com ações paralelas, isso minimiza camadas, não necessariamente o número total de ações. É necessário um limite de parada para transformar horizontes insatisfatíveis repetidos na conclusão de que não existe plano.

Mantenha apenas a ordem necessária

O planejamento de ordem parcial registra ações, restrições de ordem e vínculos causais. Um vínculo de A para B, identificado por p, diz que A estabelece a precondição p de B. Uma ação C que poderia remover p entre elas é uma ameaça. O rebaixamento ordena C antes de A; a promoção a ordena depois de B. Ações não relacionadas podem permanecer sem ordem definida até a execução, seguindo o compromisso mínimo.

O planejamento HTN refina tarefas de alto nível por meio de uma biblioteca de métodos. DeliverBox pode tornar-se viajar até a caixa, pegá-la, viajar ao destino e soltá-la. Esses métodos codificam procedimentos de especialistas, portanto a busca pode se concentrar em refinamentos úteis em vez de considerar cada ação primitiva a cada ponto.

MétodoPrincipal objeto de busca
Planejamento em espaço de estadosEstados e ações aplicáveis
SATPlanAtribuições satisfatórias indexadas no tempo
Planejamento de ordem parcialAções, vínculos causais e restrições de ordenação
Planejamento HTNDecomposições de tarefas usando métodos fornecidos
Ajuste o modelo ao mundo

A existência de plano para STRIPS proposicional geral é PSPACE-completa. O mundo dos blocos tem um problema de existência mais fácil para disposições possíveis: mova os blocos para a mesa e reconstrua as pilhas, usando no máximo 2n movimentos para n blocos. Encontrar um plano de menor comprimento para o mundo dos blocos ainda é NP-difícil.

Modelos clássicos deixam de fora resultados incertos, estado oculto e durações das ações. Planos conformantes funcionam sem observações, planos contingentes ramificam-se conforme as observações, o replanejamento em tempo de execução responde a diferenças durante a execução, e a programação de tarefas trata de tempos e recursos. Uma precondição de bateria ausente pode fazer um plano válido no modelo falhar fisicamente. O monitoramento da execução verifica essa diferença. O planejamento automatizado chegou a sistemas reais, incluindo o Remote Agent da NASA na Deep Space 1 em 1999.

Principais conclusões

  • A interação entre subobjetivos pode exigir que ações sejam intercaladas.
  • SATPlan testa um horizonte por vez.
  • Um horizonte paralelo mínimo não necessariamente minimiza o número de ações.
  • Ameaças a vínculos causais são resolvidas por promoção ou rebaixamento.
  • Métodos HTN codificam refinamentos de tarefas feitos por especialistas.
  • A existência de plano para STRIPS geral é PSPACE-completa.
  • O monitoramento da execução verifica se o mundo segue o modelo.

Exercícios resolvidos de Agentes lógicos e planejamento

6 Lições Interativas

1

De uma percepção a uma jogada justificada

12 passos
Construa o conhecimento de um agente, codifique suas regras e verifique o que todo modelo compatível sustenta.
  1. 1
    IntroduçãoRaciocine antes de entrar

    Um agente em uma caverna pode aprender sobre uma casa sem entrar nela. Suas observações restringem as disposições possíveis, e suas regras prévias conectam essas observações aos perigos.

    Acompanhe uma cadeia desde uma percepção registrada até uma sentença proposicional e, depois, uma consequência lógica. A pergunta importante é se toda disposição compatível sustenta a conclusão proposta.

  2. 2
    ExplicaçãoRegistre, raciocine e aja

    A base de conhecimento armazena sentenças formais. TELL acrescenta informações; ASK solicita uma resposta já armazenada ou derivada por inferência.

    Em um passo de tempo, o agente registra sua percepção, pergunta o que fazer, registra a ação escolhida e a executa. Esse registro da ação ajuda o raciocínio posterior a distinguir o que era verdadeiro antes do movimento do que deve ser verdadeiro depois dele.

  3. 3
    ExemploUse a ausência de brisa

    O agente começa em [1, 1] e não percebe brisa. A regra da brisa diz que uma casa tem brisa exatamente quando uma casa diretamente adjacente contém um poço.

    As únicas casas vizinhas da inicial são [1, 2] e [2, 1]. Se qualquer uma delas tivesse um poço, haveria brisa na casa inicial. A observação, portanto, exclui um poço de ambas as casas vizinhas, sem exigir que o agente as visite.

  4. 4
    DesafioNão ter poço é suficiente?

    O agente descartou um poço em [1, 2], mas não tem informações sobre fedor. Ele já pode considerar a casa totalmente segura?

    ---reveal---

    Não. A segurança completa também exige excluir o wumpus. Uma demonstração sobre poços, por si só, não fornece informações sobre o wumpus. A ausência de fedor em [1, 1], junto com a regra do fedor, forneceria a exclusão que falta para suas casas vizinhas.

  5. 5
    ExplicaçãoDê à regra os dois sentidos

    Escreva B₁₁ ⇔ (P₁₂ ∨ P₂₁). Aqui, B₁₁ significa brisa na casa inicial, e cada P indica uma casa com poço. A bicondicional diz tanto que uma brisa exige um poço vizinho quanto que um poço vizinho produz uma brisa.

    Seu sentido inverso é o que torna a ausência de brisa útil para excluir poços. Uma regra em um único sentido, da observação para a causa, perderia essa inferência.

  6. 6
    ExemploAvalie uma implicação

    Para B₁₁ ⇒ (P₁₂ ∨ P₂₁), suponha que B₁₁ seja falsa e ambos os símbolos de poço sejam verdadeiros. A implicação é verdadeira porque sua premissa é falsa.

    Essa atribuição mostra por que essa regra em um único sentido permite poços sem brisa. Acrescentar a implicação inversa a exclui. A verdade lógica segue a tabela do conectivo, mesmo quando uma sentença é um modelo físico incompleto.

  7. 7
    DesafioEscolha a atualização no tempo

    Um agente tem uma flecha, e nada fornece outra. Qual condição no passo seguinte expressa exatamente a manutenção da flecha?

    ---reveal---

    HaveArrowᵗ⁺¹ ⇔ (HaveArrowᵗ ∧ ¬Shootᵗ). A flecha permanece com o agente se ele a tinha e não atirou para removê-la. Começar sem a flecha faz com que ela continue ausente. Esse axioma de estado sucessor abrange tanto a persistência quanto a mudança.

  8. 8
    ExplicaçãoMantenha apenas mundos compatíveis

    Consequência lógica significa que uma consulta é verdadeira em todo modelo que satisfaz a BC. Para testá-la diretamente, liste atribuições, descarte as que violam a BC e examine a consulta em cada uma das restantes.

    Uma única atribuição restante em que a consulta é falsa é um contramodelo. Se restarem atribuições em que a consulta é verdadeira e outras em que é falsa, a consulta é desconhecida a partir dessa BC.

  9. 9
    ExemploExamine três disposições

    A ausência de brisa na casa inicial exclui P₁₂ e P₂₁. Uma brisa em [2, 1], junto com a ausência de poço na casa inicial, exige P₂₂ ∨ P₃₁.

    Há três escolhas compatíveis para esses dois últimos símbolos de poço: verdadeiro/falso, falso/verdadeiro e verdadeiro/verdadeiro. Assim, ¬P₁₂ é verdadeira em todas, mas P₂₂ varia. A primeira afirmação é consequência lógica da BC, e a segunda permanece desconhecida.

  10. 10
    DesafioEncontre o contramodelo

    Para BC = {A ∨ B}, A é consequência lógica da BC? Dê uma atribuição compatível que responda à pergunta.

    ---reveal---

    Não. A falso e B verdadeiro satisfaz a BC enquanto torna A falsa, portanto é um contramodelo. A atribuição inversa também satisfaz a BC. A é, portanto, desconhecida, não descartada: nem A nem ¬A é consequência lógica da BC.

  11. 11
    ConexãoTransforme a consulta sobre a jogada em SAT

    Para testar uma conclusão de segurança proposta α, pergunte se BC ∧ ¬α é satisfatível. Um modelo descreve um mundo compatível em que a conclusão é falsa; a insatisfatibilidade estabelece a consequência lógica.

    Isso conecta a decisão do agente ao resultado formal de um resolvedor. A ausência de uma demonstração de segurança deixa um risco sem solução; ela não transforma a casa não visitada em um perigo comprovado.

  12. 12
    RecapitulaçãoMantenha distintos os três resultados

    TELL registra a evidência, e a codificação determina o que ela significa. A inferência então separa uma conclusão sustentada, uma negação sustentada e uma afirmação desconhecida.

    Antes de agir, verifique se a regra codificada inclui os sentidos necessários para a inferência e se a conclusão exclui todos os perigos relevantes. Um contramodelo identifica exatamente por que uma conclusão proposta falha.

2

Demonstre uma consulta e interprete resultados de resolvedores

16 passos
Acompanhe regras de demonstração, resolução, encadeamento e busca SAT sem confundir suas garantias.

Salve esta aula para seguir cada Lição Interativa passo a passo.

  1. 1
    IntroduçãoUma consulta, vários métodos
  2. 2
    ExemploExtraia uma premissa
  3. 3
    DesafioVerifique uma inversão tentadora
  4. 4
    ExplicaçãoPrepare a forma clausal
  5. 5
    ExemploNegue a consulta sobre a liberação
  6. 6
    ExemploConclua a refutação
  7. 7
    DesafioDois pares podem desaparecer?
  8. 8
    ExplicaçãoAproveite uma única cabeça de regra
  9. 9
    ExemploAcompanhe a cadeia relevante
  10. 10
    DesafioTrate um ciclo com cuidado
  11. 11
    ExplicaçãoPropague atribuições forçadas
  12. 12
    ExemploExplore ambos os ramos
  13. 13
    Ideia-chaveAprender e reparar
  14. 14
    DesafioInterprete um limite de tempo da busca local
  15. 15
    DesafioConecte regras a um resultado do resolvedor
  16. 16
    RecapitulaçãoSaiba o que cada resultado permite concluir
3

Faça uma regra quantificada dizer o que você pretende

12 passos
Escolha termos, escopo e axiomas de domínio e depois corrija uma pequena base de conhecimento.

Salve esta aula para seguir cada Lição Interativa passo a passo.

  1. 1
    IntroduçãoDe fatos individuais a regras gerais
  2. 2
    ExplicaçãoIdentifique a função de cada símbolo
  3. 3
    ExemploAvalie um pequeno mundo
  4. 4
    DesafioDois nomes significam dois livros?
  5. 5
    ExplicaçãoCombine o quantificador e o conectivo
  6. 6
    ExemploMude a posição da testemunha compartilhada
  7. 7
    DesafioNegue o universal corretamente
  8. 8
    ExplicaçãoComece pela consulta pretendida
  9. 9
    ExemploComplete a relação de pré-requisitos
  10. 10
    DesafioEncontre a política ausente
  11. 11
    DesafioCombine escopo e completude
  12. 12
    RecapitulaçãoVerifique o significado em um pequeno modelo
4

Acompanhe vinculações em uma demonstração de primeira ordem

15 passos
Unifique padrões de regras, execute consultas recursivas e preserve dependências existenciais na resolução.

Salve esta aula para seguir cada Lição Interativa passo a passo.

  1. 1
    IntroduçãoDeixe a regra encontrar seus objetos
  2. 2
    ExemploFaça a correspondência da primeira premissa
  3. 3
    Ideia-chaveDeixe escolhas desnecessárias em aberto
  4. 4
    DesafioVerifique todas as restrições dos argumentos
  5. 5
    DicaUse uma nova testemunha existencial
  6. 6
    ExemploConstrua caminhos em rodadas
  7. 7
    ExplicaçãoInterprete a consulta como uma busca
  8. 8
    DesafioTeste uma chamada que se repete
  9. 9
    ConexãoEntenda de onde vem a finitude
  10. 10
    ExplicaçãoPreserve a dependência de uma testemunha
  11. 11
    ExemploAcrescente a consulta negada sobre a equipe
  12. 12
    ExemploAplique a vinculação ao resultado
  13. 13
    DesafioA negação muda a testemunha
  14. 14
    DesafioDistinga demonstração de término
  15. 15
    RecapitulaçãoMantenha o significado em cada passo
5

Acompanhe um fato por uma ontologia e um grafo

11 passos
Separe pertencimento, herança, correspondências de consultas, padrões e previsões.

Salve esta aula para seguir cada Lição Interativa passo a passo.

  1. 1
    IntroduçãoVários tipos de afirmação em um grafo
  2. 2
    ExplicaçãoSepare categoria e indivíduo
  3. 3
    ExemploAcrescente uma exceção sem contradição
  4. 4
    DesafioVerifique se uma divisão é uma partição
  5. 5
    ConexãoEscolha um sistema de raciocínio sobre categorias
  6. 6
    ExemploTransforme a relação em triplas
  7. 7
    ExemploUna dois padrões
  8. 8
    DesafioInterprete uma relação ausente
  9. 9
    Ideia-chaveMantenha visível o status de uma previsão
  10. 10
    DesafioAcompanhe o suporte para um novo tipo
  11. 11
    RecapitulaçãoPergunte o que justifica a aresta
6

Construa, verifique e busque um plano de entrega

16 passos
Atualize estados, regrida objetivos, compare custos relaxados e trate ações que interagem.

Salve esta aula para seguir cada Lição Interativa passo a passo.

  1. 1
    IntroduçãoExplicite as consequências das ações
  2. 2
    ExplicaçãoInterprete o estado inicial
  3. 3
    ExemploDesloque-se e pegue
  4. 4
    ExemploDesloque-se segurando a caixa e solte-a
  5. 5
    DesafioEncontre o efeito de remoção ausente
  6. 6
    ExplicaçãoBusque por estados ou condições
  7. 7
    ExemploTrabalhe para trás a partir da entrega
  8. 8
    DesafioAcrescente o objetivo de retorno
  9. 9
    ExemploRemova efeitos de remoção para obter uma estimativa
  10. 10
    DesafioA contagem de objetivos pode superestimar o custo?
  11. 11
    ExemploIntercale objetivos do mundo dos blocos
  12. 12
    ExplicaçãoCodifique um horizonte de tempo
  13. 13
    DesafioProteja uma condição de entrega
  14. 14
    ConexãoUse métodos e monitore a execução
  15. 15
    DesafioEscolha uma extensão para a observação
  16. 16
    RecapitulaçãoVerifique o plano em relação ao seu objetivo

Questões de Agentes lógicos e planejamento

50 Questões de Prática em 5 conjuntos

Conjunto 1: Das observações às conclusões justificadas10 Questões de Prática

Questão 1 de 10

Uma BC contém U ∨ V e ¬V. O que é consequência lógica dela sobre U?
  1. U é falsa.
  2. U permanece desconhecida.
  3. A BC não tem modelo.
  4. U é verdadeira.
Mostrar respostaOcultar resposta
Resposta: D
¬V elimina toda atribuição em que V é verdadeira. Para satisfazer U ∨ V nas atribuições restantes, U deve ser verdadeira. A disjunção não deixa U desconhecida depois que uma alternativa foi excluída; a atribuição em que U e V são ambas falsas violaria a BC.

Questão 2 de 10

De Tested e Tested ⇒ Approved, qual conclusão o Modus ponens permite obter?
  1. ¬Approved
  2. Approved
  3. Approved ⇒ Tested
  4. ¬Tested
Mostrar respostaOcultar resposta
Resposta: B
A regra se aplica porque tanto sua premissa, Tested, quanto sua implicação estão presentes. Ela deriva Approved sem acrescentar uma regra inversa. Approved ⇒ Tested é a recíproca da implicação fornecida, e o Modus ponens não estabelece essa recíproca.

Questão 3 de 10

Um robô acabou de perceber que uma passagem está bloqueada. Qual operação da BC registra essa percepção?
  1. ASK
  2. Resolver
  3. TELL
  4. Unificar
Mostrar respostaOcultar resposta
Resposta: C
TELL acrescenta a sentença que representa a passagem bloqueada. ASK solicita uma resposta a partir de informações já armazenadas ou derivadas, portanto não realiza o registro da percepção. Resolução e unificação são operações de inferência, não a operação de interface que acrescenta uma observação.

Questão 4 de 10

Qual é o valor de verdade de P ⇒ Q quando P e Q são ambas falsas?
  1. Verdadeira
  2. Falsa
  3. Desconhecida
  4. Inconsistente
Mostrar respostaOcultar resposta
Resposta: A
Uma implicação é falsa apenas quando a premissa é verdadeira e a conclusão é falsa. Aqui a premissa é falsa, portanto a implicação é verdadeira. Tratar uma premissa falsa como suficiente para tornar toda a implicação falsa confunde a implicação com uma conjunção que exige ambas as partes.

Questão 5 de 10

Uma regra de sensor é Alarm ⇔ (Heat ∨ Smoke). A BC registra ¬Alarm. O que decorre sobre Heat e Smoke?
  1. Ambas são falsas.
  2. Smoke é desconhecida.
  3. Heat é desconhecida.
  4. Apenas uma é falsa.
Mostrar respostaOcultar resposta
Resposta: A
A bicondicional inclui (Heat ∨ Smoke) ⇒ Alarm. Com ¬Alarm, sua contrapositiva exclui Heat ∨ Smoke, portanto De Morgan fornece ¬Heat ∧ ¬Smoke. Excluir apenas uma causa deixaria a outra capaz de produzir um alarme, contradizendo a mesma regra.

Questão 6 de 10

Qual FNC representa (M ∨ N) ⇒ R?
  1. (¬M ∨ ¬N ∨ R)
  2. (M ∨ R) ∧ (N ∨ R)
  3. (¬M ∨ R) ∧ (¬N ∨ R)
  4. (¬R ∨ M) ∧ (¬R ∨ N)
Mostrar respostaOcultar resposta
Resposta: C
Elimine a implicação para obter ¬(M ∨ N) ∨ R, depois mova a negação para dentro e distribua. Isso fornece (¬M ∨ R) ∧ (¬N ∨ R). A cláusula única ¬M ∨ ¬N ∨ R codifica, por sua vez, (M ∧ N) ⇒ R, exigindo ambos os fatores.

Questão 7 de 10

Os fatos são Input e Valid. As regras são Input ⇒ Parsed, Parsed ∧ Valid ⇒ Stored e Stored ⇒ Logged. Quais novos fatos estão presentes no ponto fixo do encadeamento para frente?
  1. Apenas Parsed e Stored
  2. Parsed, Stored e Logged
  3. Apenas Stored e Logged
  4. Apenas Parsed e Logged
Mostrar respostaOcultar resposta
Resposta: B
Input primeiro permite derivar Parsed, que se combina com Valid para permitir Stored; Stored então permite Logged. Os três novos fatos pertencem ao ponto fixo. Parar após Parsed e Stored encerra a busca cedo demais, pois uma regra recém-habilitada ainda acrescenta Logged.

Questão 8 de 10

Com X = verdadeiro, o que a propagação unitária infere de ¬X ∨ Y e ¬Y ∨ Z?
  1. Y = falso e Z = verdadeiro
  2. Y = verdadeiro e Z = falso
  3. Y = falso e Z = falso
  4. Y = verdadeiro e Z = verdadeiro
Mostrar respostaOcultar resposta
Resposta: D
Como ¬X é falso, a primeira cláusula força Y verdadeiro. Isso torna ¬Y falso, portanto a segunda cláusula força Z verdadeiro. Atribuir falso a Y para satisfazer sua ocorrência negativa ignora a primeira cláusula, em que Y é a única maneira restante de torná-la verdadeira.

Questão 9 de 10

Uma BC tem (¬L ∨ M), (¬M ∨ N) e L. Pergunta-se a um resolvedor SAT completo se N é consequência lógica da BC. O que seu teste de refutação deve retornar?
  1. Satisfatível para BC ∧ ¬N
  2. Insatisfatível para BC ∧ N
  3. Insatisfatível para BC ∧ ¬N
  4. Satisfatível para BC ∧ ¬L
Mostrar respostaOcultar resposta
Resposta: C
L força M pela primeira cláusula, e M força N pela segunda. Acrescentar ¬N cria, portanto, uma contradição, de modo que a fórmula de refutação é insatisfatível. Testar BC ∧ N pode encontrar um modelo, mas a concordância com N em um modelo não estabeleceria a consequência lógica.

Questão 10 de 10

Uma BC contém J ∨ K, J ⇒ H, K ⇒ H e H ⇒ T. O que acontece quando a resolução testa se T é consequência lógica da BC?
  1. Negar T leva à cláusula vazia.
  2. Negar T deixa um modelo com J verdadeiro.
  3. Negar T deixa um modelo com K verdadeiro.
  4. Negar T deixa J e K desconhecidos.
Mostrar respostaOcultar resposta
Resposta: A
Acrescente ¬T para derivar ¬H. Resolver ¬H com as duas regras fornece ¬J e ¬K, que contradizem J ∨ K e produzem a cláusula vazia. O encadeamento simples para frente pode inicialmente parar na disjunção, mas isso não impede que a resolução combine as alternativas.
Conjunto 2: Quantificadores, vinculações e demonstrações de primeira ordem10 Questões de Prática

Salve esta aula para ver todas as respostas e praticar cada conjunto.

Questão 1 de 10

Em Owns(Lea, Notebook), que tipo de expressão é Notebook?
  1. Um predicado unário
  2. Um termo constante
  3. Uma variável vinculada
  4. Uma sentença atômica
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 2 de 10

Como você expressa “Somente trabalhadores certificados operam a máquina”?
  1. ∀x (Certified(x) ⇒ Operates(x))
  2. ∃x (Certified(x) ∧ Operates(x))
  3. ∀x (Certified(x) ∧ Operates(x))
  4. ∀x (Operates(x) ⇒ Certified(x))
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 3 de 10

Um domínio contém apenas Ivo e Noor. Cada um ajuda o outro, e nenhum ajuda a si mesmo. Quais são os valores de verdade de ∀x ∃y Helps(x, y) e ∃y ∀x Helps(x, y), respectivamente?
  1. Verdadeiro, falso
  2. Verdadeiro, verdadeiro
  3. Falso, verdadeiro
  4. Falso, falso
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 4 de 10

Uma regra permite a matrícula após a aprovação em todos os pré-requisitos. A BC lista dois pré-requisitos para Robotics e diz que Ken foi aprovado em ambos. Sob a lógica de primeira ordem padrão, por que a matrícula ainda pode não ser demonstrada?
  1. Os dois nomes devem ser correferentes.
  2. Regras universais abrangem apenas para estudantes nomeados.
  3. Pode existir um pré-requisito adicional.
  4. Fatos não podem ocorrer em regras quantificadas.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 5 de 10

Por que a unificação com termos finitos rejeita x com ParentOf(x)?
  1. Os termos têm valores de verdade diferentes.
  2. O termo de substituição contém o próprio x.
  3. Uma variável não pode corresponder a um termo de função.
  4. Nomes de função devem corresponder a nomes de constante.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 6 de 10

Qual é um unificador mais geral de Reads(Nia, x) e Reads(y, Guide)?
  1. {y/Nia, x/Guide}
  2. {y/Guide, x/Nia}
  3. {y/Nia, x/Nia}
  4. {y/Guide, x/Guide}
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 7 de 10

Uma rede tem Edge(U, V), Edge(V, W), Edge(W, X) e Edge(X, Y). As regras são Edge(a, b) ⇒ Path(a, b) e Edge(a, b) ∧ Path(b, c) ⇒ Path(a, c). Quantos fatos Path distintos há em seu fechamento?
  1. 6
  2. 9
  3. 16
  4. 10
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 8 de 10

Como ∀p (Project(p) ⇒ ∃r Reviews(r, p)) deve ser Skolemizada?
  1. ¬Project(p) ∨ Reviews(K, p)
  2. Project(p) ∧ Reviews(F(p), p)
  3. ¬Project(p) ∨ Reviews(F(p), p)
  4. ¬Project(p) ∨ Reviews(p, p)
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 9 de 10

A BC contém ∀x (Device(x) ⇒ ∃y (Part(y, x) ∧ Metal(y))), ∀a ∀b (Part(a, b) ⇒ Component(a)) e Device(D7). O que decorre sobre componentes de metal?
  1. Existe pelo menos um componente de metal.
  2. Todo componente é de metal.
  3. O próprio D7 deve ser um componente de metal.
  4. Um componente pertence a todo dispositivo.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 10 de 10

Os fatos são Assigned(Elin, Task1), Assigned(Omar, Task2), Needs(Task1, KitA) e Needs(Task2, KitB). Regra: Assigned(p, t) ∧ Needs(t, k) ⇒ Uses(p, k). Qual fato Uses decorre para Elin?
  1. Uses(Elin, KitB)
  2. Uses(Omar, KitA)
  3. Uses(Elin, Task1)
  4. Uses(Elin, KitA)
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Conjunto 3: Organização de fatos e mudança de estados10 Questões de Prática

Salve esta aula para ver todas as respostas e praticar cada conjunto.

Questão 1 de 10

O que faz de uma decomposição de uma categoria uma partição?
  1. É disjunta, mas pode omitir membros.
  2. É exaustiva, mas pode ter sobreposição.
  3. É transitiva e não vazia.
  4. É disjunta e exaustiva.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 2 de 10

Um grafo RDF não tem nenhuma relação sobre o fabricante de um dispositivo. Sob a semântica de mundo aberto, qual é o status da afirmação sobre o fabricante?
  1. Falsa em todos os modelos
  2. Desconhecida a partir do grafo
  3. Verdadeira para um fabricante sem nome
  4. Inconsistente com o grafo
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 3 de 10

Uma ação tem a precondição Charged(R). O que deve ser verdadeiro quando a ação é aplicada?
  1. Charged(R) vale antes da ação.
  2. Charged(R) é adicionado pela ação.
  3. Charged(R) é removido pela ação.
  4. Charged(R) vale apenas após a ação.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 4 de 10

A BC diz Scout ∈ Rovers, Rovers ⊂ Robots e Rovers ∈ ProductFamilies. O que decorre sobre Scout?
  1. Scout ∈ ProductFamilies
  2. Scout ⊂ Robots
  3. Scout ∈ Robots
  4. Scout ⊂ ProductFamilies
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 5 de 10

Um grafo contém (Uma, type, Engineer), (Uma, worksAt, EastLab), (Vik, type, Engineer) e (Vik, worksAt, WestLab). Qual vinculação corresponde tanto a (?p, type, Engineer) quanto a (?p, worksAt, WestLab)?
  1. ?p = Uma
  2. ?p = Engineer
  3. ?p = WestLab
  4. ?p = Vik
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 6 de 10

O estado s contém At(Bot, Gate), At(Crate, Store) e Charged(Bot). Um movimento remove At(Bot, Gate) e adiciona At(Bot, Store). Qual é o estado resultante?
  1. At(Bot, Gate), At(Bot, Store), At(Crate, Store), Charged(Bot)
  2. At(Bot, Store), At(Crate, Store), Charged(Bot)
  3. At(Bot, Store), At(Crate, Store), ¬Charged(Bot)
  4. At(Bot, Gate), At(Crate, Store), Charged(Bot)
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 7 de 10

O objetivo é Packed ∧ Labeled. A ação Seal exige Filled e adiciona Packed sem outros efeitos. Qual é a regressão do objetivo por Seal?
  1. Packed ∧ Filled
  2. Apenas Filled
  3. Filled ∧ Labeled
  4. Packed ∧ Labeled ∧ Filled
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 8 de 10

Um vínculo causal vai de Load a Deliver por meio de Loaded. Unload poderia remover Loaded entre elas. Qual ordenação protege o vínculo por promoção?
  1. Deliver antes de Unload
  2. Unload antes de Load
  3. Load antes de Unload antes de Deliver
  4. Unload simultânea a Deliver
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 9 de 10

Inicialmente P é verdadeiro e Q, R e S não são. A tem precondição P, adiciona Q e remove P. B tem precondição Q e adiciona R. C tem precondição P ∧ R e adiciona S. Nenhuma ação restaura P. Quais são as possibilidades reais e com efeitos de remoção desconsiderados para S?
  1. Real: alcançável em 3; relaxado: alcançável em 3.
  2. Real: inalcançável; relaxado: alcançável em 3 ações.
  3. Real: inalcançável; relaxado: inalcançável.
  4. Real: alcançável em 2; relaxado: alcançável em 2.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 10 de 10

Um grafo afirma Type(Sol, Analyst), Subclass(Analyst, Specialist) e Subclass(Specialist, Staff). Suas regras propagam tipos por vínculos de subclasse. Uma representação vetorial também prevê Leads(Sol, Team). O que a inferência estrita pode estabelecer?
  1. Type(Sol, Staff) junto com Leads(Sol, Team)
  2. Type(Sol, Specialist), mas não Type(Sol, Staff)
  3. Leads(Sol, Team), sem Type(Sol, Staff)
  4. Type(Sol, Staff), sem estabelecer Leads(Sol, Team)
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Conjunto 4: Diagnóstico de erros sutis de raciocínio10 Questões de Prática

Salve esta aula para ver todas as respostas e praticar cada conjunto.

Questão 1 de 10

Um resolvedor SAT completo retorna uma atribuição satisfatória. O que isso estabelece sobre sua fórmula de entrada?
  1. A fórmula é satisfatível.
  2. A fórmula é válida.
  3. A fórmula é insatisfatível.
  4. Toda atribuição a satisfaz.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 2 de 10

Um agente em uma caverna demonstra que uma casa não tem poço, mas não tem informações sobre o wumpus nela. O que ele pode concluir sobre entrar com segurança?
  1. A casa é totalmente segura.
  2. A segurança completa continua indefinida.
  3. A casa contém o wumpus.
  4. A BC é inconsistente.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 3 de 10

Um registro contém Failed ⇒ Alert e Alert. Por que Failed não é estabelecido por essas sentenças?
  1. Failed deve ser falso sempre que Alert valer.
  2. Uma implicação exige que ambos os lados sejam verdadeiros.
  3. As duas sentenças não podem ser verdadeiras juntas.
  4. Alert pode valer enquanto Failed é falso.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 4 de 10

Quais cláusulas representam ¬∀x (Sensor(x) ⇒ Working(x)) após a Skolemização?
  1. ¬Sensor(K) e Working(K), com uma nova K
  2. ¬Sensor(x) ∨ Working(x), universalmente
  3. Sensor(K) e ¬Working(K), com uma nova K
  4. Sensor(F(x)) ∨ ¬Working(F(x)), universalmente
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 5 de 10

Um sistema de raciocínio por padrão conclui Flies(Rio) a partir de Bird(Rio). Depois, Penguin(Rio) ativa uma exceção mais específica que indica que ele não voa. O que deve acontecer com a conclusão por padrão?
  1. Retirar a conclusão de que ele voa.
  2. Manter as duas conclusões contraditórias.
  3. Excluir Bird(Rio) para manter a conclusão de voo.
  4. Rejeitar o fato Penguin posterior.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 6 de 10

Uma fórmula contém U ∨ V, ¬U ∨ W, ¬V ∨ W, ¬W ∨ X e ¬X. O que a busca DPLL completa estabelece?
  1. Satisfatível com U falso
  2. Satisfatível com U verdadeiro
  3. Insatisfatível
  4. Satisfatível com V = W
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 7 de 10

Um domínio não vazio tem dois objetos a e b. R contém exatamente (a, a) e (b, b). Quais são os valores de verdade de ∀x ∃y R(x, y), ∃y ∀x R(x, y) e ∃x ∃y (R(x, y) ∧ ¬(x = y))?
  1. Verdadeiro, verdadeiro, falso
  2. Verdadeiro, falso, falso
  3. Falso, falso, verdadeiro
  4. Verdadeiro, falso, verdadeiro
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 8 de 10

Duas cláusulas quantificadas independentemente contêm P(x, F(x)) e ¬P(G(y), z) ∨ Q(z). Após a padronização à parte, qual resolvente decorre da correspondência dos literais P?
  1. Q(F(G(y)))
  2. Q(G(F(y)))
  3. Q(F(F(y)))
  4. Q(G(G(y)))
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 9 de 10

Objetivo: A ∧ ¬B. A ação Finish tem precondição C, adiciona A e remove B. Qual condição anterior a regressão produz?
  1. C ∧ ¬B
  2. C ∧ A
  3. C ∧ A ∧ ¬B
  4. C
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 10 de 10

Dois fatos independentes do objetivo podem ser alcançados cada um por uma ação, e as ações não interferem entre si. Uma codificação SAT permite ambas as ações na mesma camada de tempo. Qual objetivo é minimizado pelo primeiro horizonte satisfatível?
  1. Número total de ações
  2. Soma das durações das ações
  3. Camadas paralelas
  4. Número de fluentes do objetivo
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Conjunto 5: Combinação de representação, inferência e planejamento10 Questões de Prática

Salve esta aula para ver todas as respostas e praticar cada conjunto.

Questão 1 de 10

Qual abordagem de planejamento refina tarefas de alto nível usando uma biblioteca de métodos fornecida?
  1. Verificação de modelos proposicionais
  2. Planejamento HTN
  3. Busca em estados com efeitos de remoção desconsiderados
  4. Busca por resolução irrestrita
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 2 de 10

Uma BC de lógica de primeira ordem padrão contém Tool(Drill), Tool(Driver) e Used(Drill). Ela não contém desigualdade. Qual é o número mínimo de objetos que são ferramentas compatível com ela?
  1. 0
  2. 2
  3. 3
  4. 1
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 3 de 10

Uma máquina pode ter vários reparos com diferentes técnicos e datas. Como triplas binárias comuns podem distinguir cada reparo e manter juntos sua máquina, seu técnico e sua data?
  1. Criar um nó de reparo ligado à sua máquina, ao técnico e à data.
  2. Armazenar técnicos e datas de cada máquina como vínculos independentes.
  3. Armazenar máquinas e datas de cada técnico como vínculos independentes.
  4. Substituir os reparos por vínculos sem data entre máquina e técnico.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 4 de 10

A BC tem apenas S ∨ T, S ⇒ U e T ⇒ U. O que acontece com o encadeamento simples para frente de cláusulas definidas para a consulta U?
  1. Ele deriva S e depois U.
  2. Ele deriva T e depois U.
  3. Ele para, embora U seja consequência lógica.
  4. Ele demonstra ¬U em seu ponto fixo.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 5 de 10

A elegibilidade exige que Jo tenha sido aprovado em todo Required(p, Build). Os fatos fornecem Required(Logic, Build), Required(Code, Build), Passed(Jo, Logic), Passed(Jo, Code) e ¬(Logic = Code). Qual restrição adicional da relação torna demonstrável a condição de elegibilidade na lógica de primeira ordem padrão?
  1. ∀p ((p = Logic ∨ p = Code) ⇒ Required(p, Build))
  2. ∀p (Required(p, Build) ⇒ Passed(Jo, Logic))
  3. ∃p (Required(p, Build) ∧ Passed(Jo, p))
  4. ∀p (Required(p, Build) ⇒ (p = Logic ∨ p = Code))
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 6 de 10

Considere cláusulas Prolog nesta ordem: path(X, Z) :- path(X, Y), edge(Y, Z). e depois path(X, Z) :- edge(X, Z). Fato: edge(m, n). O que acontece na busca comum em profundidade por path(m, n) sem tabulação de respostas?
  1. Ela entra em ciclo antes de chegar à demonstração pela aresta direta.
  2. Ela retorna imediatamente a demonstração pela aresta direta.
  3. Ela falha em tempo finito porque a regra recursiva falha.
  4. Ela retorna todos os caminhos antes de tentar a recursão.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 7 de 10

Uma BC contém A ⇔ (B ∨ C), ¬B e C ⇒ D. A ⇒ D é consequência lógica dela? Por quê?
  1. Não; ¬B quebra a bicondicional.
  2. Não; C pode ser falso quando A é falso.
  3. Sim; A com ¬B força C e depois D.
  4. Sim; D vale em todo modelo da BC.
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 8 de 10

Um robô começa em North com a mão vazia; um pacote está em South. O único vínculo de deslocamento liga North e South nos dois sentidos. Go muda a localização, Pick exige que robô e pacote estejam no mesmo local e que a mão esteja vazia, e Drop exige que estejam no mesmo local e que o robô segure o pacote. Qual é o plano de menor comprimento que entrega o pacote em North e termina com a mão vazia?
  1. Ir para o sul, Pick, Drop, ir para o norte
  2. Ir para o sul, Pick, ir para o norte, Drop
  3. Pick, ir para o sul, ir para o norte, Drop
  4. Ir para o sul, ir para o norte, Pick, Drop
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 9 de 10

Uma tarefa tem objetivo F ∧ G. Uma ação estabelece ambos sem precondições e com custo unitário. Duas outras ações estabelecem F e G separadamente, com custo unitário. Quais são o custo ótimo, a contagem de objetivos não satisfeitos e a soma dos custos individuais dos objetivos inicialmente, quando nenhum deles é verdadeiro?
  1. 1, 2, 2
  2. 2, 2, 2
  3. 1, 1, 1
  4. 2, 1, 2
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Questão 10 de 10

Um plano de ordem parcial tem um vínculo causal de MakeReady para Use, identificado por Ready, e Use ≺ Clean. Reset remove Ready. Qual nova ordenação resolve com segurança a ameaça de Reset sem criar um ciclo?
  1. MakeReady ≺ Reset ≺ Use
  2. MakeReady ≺ Reset ≺ Clean
  3. Reset ≺ Use ≺ MakeReady
  4. Use ≺ Reset
Mostrar respostaOcultar resposta

Salve esta aula para ver esta resposta.

Travou em uma questão sua? Ajuda com Tarefas

Termos-Chave

102 Termos-Chave, cada um com sua definição

A

Ameaça
Uma ameaça é uma ação que poderia negar a condição de um vínculo causal enquanto estiver ordenada entre a ação que a estabelece e a ação que a utiliza.
Ordenar uma ação ameaçadora antes da ação que estabelece a condição ou depois da que a utiliza protege a condição exigida.
Aprendizado de cláusulas dirigido por conflitos (CDCL)
O CDCL é uma abordagem SAT que aprende cláusulas a partir de conflitos e as usa com retrocesso com salto e propagação eficiente para orientar a busca.
Uma cláusula aprendida exclui uma combinação conflitante para que ramos posteriores evitem repeti-la.
ASK
ASK é a operação que solicita uma resposta sustentada por uma base de conhecimento, já armazenada ou obtida por inferência.
O agente usa ASK para perguntar se uma casa vizinha é segura antes de escolher seu próximo movimento.
Axioma
Um axioma é uma sentença fornecida como conhecimento inicial, de modo que um procedimento de inferência pode usá-la sem derivá-la primeiro.
Para um agente que explora uma caverna, a regra que relaciona poços próximos a brisas é um axioma em sua base de conhecimento.
Axioma de completamento
Um axioma de completamento restringe explicitamente as possibilidades de uma relação, permitindo raciocínios que uma lista aberta de fatos não pode sustentar.
Completar a lista de pré-requisitos de uma disciplina exclui pré-requisitos adicionais não concluídos para a matrícula nessa disciplina.
Axioma de estado sucessor
Um axioma de estado sucessor define o valor seguinte de um fluente por meio das ações que o estabelecem e das condições que permitem sua persistência.
A flecha permanece disponível no passo seguinte exatamente quando está disponível agora e o agente não atira.

B

Base de conhecimento
Uma base de conhecimento é uma coleção de sentenças formais que registra as informações prévias de um agente e suas observações posteriores.
Um robô combina suas regras de rota armazenadas com um bloqueio observado recentemente para decidir por onde pode se mover.
Bicondicional
Uma bicondicional é uma sentença P ⇔ Q que exige que P e Q tenham o mesmo valor de verdade, afirmando assim ambas as implicações.
Uma bicondicional que relaciona brisas a poços próximos permite que um agente raciocine de um poço próximo para uma brisa e de uma brisa para poços.

C

Cláusula
Uma cláusula é uma disjunção de literais; um único literal é uma cláusula unitária, e a cláusula vazia representa a falsidade.
A cláusula ¬A ∨ B torna-se uma exigência unitária para B quando A recebeu o valor verdadeiro.
Cláusula de Horn
Uma cláusula de Horn tem no máximo um literal positivo, portanto inclui cláusulas definidas e cláusulas com apenas literais negativos.
A cláusula de objetivo ¬A ∨ ¬B descarta que A e B sejam verdadeiros ao mesmo tempo sem afirmar uma cabeça positiva.
Cláusula definida
Uma cláusula definida tem exatamente um literal positivo e pode expressar um fato ou uma regra com uma conjunção de premissas e uma cabeça.
A cláusula ¬A ∨ ¬B ∨ C pode ser lida como a regra A ∧ B ⇒ C para encadeamento.
Codificação de Tseitin
Uma codificação de Tseitin introduz símbolos auxiliares para subfórmulas a fim de criar uma FNC pequena, preservando a existência ou não de uma solução.
Um resolvedor SAT pode usar as cláusulas codificadas sem expandir cada disjunção sobre cada conjunção.
Completude
Completude significa que um procedimento pode derivar toda conclusão que seja consequência lógica das premissas dentro de seu escopo lógico declarado.
Regras corretas ainda podem ser incompletas se suas operações disponíveis não conseguirem construir uma sentença que seja consequência lógica.
Conjunto de suporte
A estratégia de conjunto de suporte restringe a resolução a passos que envolvam a consulta negada ou seus descendentes, com um conjunto restante satisfatível.
Um demonstrador concentra-se em cláusulas conectadas à consulta em vez de resolver cláusulas prévias não relacionadas.
Consequência lógica
A consequência lógica ocorre quando uma conclusão é verdadeira em todo modelo que satisfaz as premissas, de modo que não existe contraexemplo compatível.
A ∨ B junto com ¬A tem B como consequência lógica porque toda atribuição restante torna B verdadeira.
Contramodelo
Um contramodelo de uma consequência lógica é um modelo em que todas as premissas são verdadeiras, mas a conclusão proposta é falsa.
P falso e Q verdadeiro refutam a afirmação de que P é consequência lógica de P ⇒ Q junto com Q.
Correção
Correção significa que um procedimento de inferência deriva apenas conclusões que decorrem de suas premissas na semântica pretendida.
Uma regra de demonstração correta nunca transforma premissas verdadeiras em uma conclusão falsa no mesmo modelo.

D

Datalog
Datalog usa cláusulas definidas sem funções, de modo que um conjunto finito de constantes permite apenas um número finito de fatos possíveis sem variáveis.
Regras de alcançabilidade sobre uma lista finita de locais nomeados chegam por fim a um ponto fixo de encadeamento para frente.
Domínio PDDL
Um domínio PDDL declara predicados e esquemas de ação reutilizáveis, enquanto um problema fornece objetos, fatos iniciais e objetivos específicos.
O mesmo domínio de entrega pode servir a problemas com diferentes robôs, pacotes e locais conectados.
DPLL
DPLL é um procedimento completo de busca SAT que combina ramificação em profundidade e retrocesso com avaliação antecipada e atribuições forçadas.
Depois que a propagação unitária para de produzir resultados, DPLL escolhe um símbolo sem atribuição e explora seus valores de verdade.

E

Encadeamento para frente
O encadeamento para frente deriva consequências de fatos conhecidos acionando regras cujas premissas são verdadeiras, até chegar a uma consulta ou a um ponto fixo.
Um sistema de monitoramento começa com fatos de sensores e deriva cada alarme habilitado por suas regras armazenadas.
Encadeamento para trás
O encadeamento para trás parte de uma consulta, encontra regras que poderiam estabelecê-la e demonstra recursivamente as premissas exigidas.
Para estabelecer Released, o sistema de raciocínio procura uma regra com Released como cabeça e verifica seu corpo.
Engenharia do conhecimento
A engenharia do conhecimento é o processo de projetar, preencher, consultar e testar uma base de conhecimento para responder às perguntas de um domínio.
Uma BC de matrículas precisa de vocabulário e regras que relacionem a aprovação em pré-requisitos à elegibilidade para uma disciplina.
Escopo do quantificador
O escopo de um quantificador é a expressão que ele governa, determinando quais ocorrências de variáveis ele vincula e como testemunhas podem depender de outras.
Em ∀x ∃y Helps(y, x), o ajudante y pode variar conforme o objeto escolhido para x.
Esquema de ação
Um esquema de ação descreve uma ação parametrizada por meio das condições exigidas antes dela e dos efeitos produzidos depois.
Instanciar o esquema Pick sem variáveis seleciona um robô, um pacote e um local específicos para verificar a aplicabilidade.
Exclusão mútua
Um vínculo de exclusão mútua em um grafo de planejamento marca um par de ações ou fluentes que não podem ocorrer juntos no nível correspondente.
Efeitos de ações mutuamente exclusivos podem impedir que duas ações, de outra forma disponíveis, sejam tratadas como simultâneas.

F

Fatoração
A fatoração combina literais unificáveis dentro de uma cláusula, simplificando-a e permitindo a resolução completa de primeira ordem com unificação.
Dois literais positivos P(x) e P(Ada) em uma cláusula podem ser combinados sob a substituição x = Ada.
Fluente
Um fluente é um fato cuja verdade pode mudar com o tempo, como a localização de um robô ou se ele ainda segura um pacote.
Índices de tempo distinguem a localização do robô antes de um movimento de sua localização depois dele.
Forma normal conjuntiva
A forma normal conjuntiva é uma conjunção de cláusulas, que torna uma fórmula adequada à inferência baseada em cláusulas e à resolução de SAT.
A fórmula (A ∨ B) ∧ (¬A ∨ C) está em FNC porque cada termo da conjunção é uma disjunção de literais.

H

Heurística admissível
Uma heurística admissível nunca excede o custo ótimo real restante, fornecendo uma estimativa de limite inferior para a busca informada.
O comprimento ótimo do plano com efeitos de remoção desconsiderados é um limite inferior porque a tarefa real mantém mais restrições.
Hipótese de fechamento do domínio
A hipótese de fechamento do domínio afirma que o domínio não contém objetos além daqueles denotados pelos nomes disponíveis.
Um banco de dados finito pode restringir seu mundo aos objetos listados em vez de permitir livros sem nome.
Hipótese de mundo aberto
A hipótese de mundo aberto deixa um fato não declarado indefinido, pois o conhecimento disponível pode omitir fatos verdadeiros sobre o mundo.
Um grafo sem uma aresta de cônjuge para uma pessoa deixa essa relação desconhecida em vez de declará-la falsa.
Hipótese de mundo fechado
A hipótese de mundo fechado trata afirmações atômicas não estabelecidas pelo conhecimento disponível como falsas na aplicação modelada.
Um estado básico de planejamento lista fluentes verdadeiros e trata um fato de localização omitido como falso.
Hipótese de nomes únicos
A hipótese de nomes únicos exige que símbolos de constante distintos denotem objetos distintos, diferentemente da semântica padrão de primeira ordem sem essa restrição.
Atlas e Beowulf contam como livros diferentes sob a hipótese de nomes únicos, sem um fato adicional de desigualdade.

I

Implicação
Uma implicação é uma sentença P ⇒ Q que é falsa apenas quando P é verdadeira e Q é falsa; ela não afirma uma relação causal.
Uma premissa falsa torna uma implicação verdadeira mesmo quando sua conclusão também é falsa.
Instanciação existencial
A instanciação existencial introduz uma nova constante como testemunha de uma sentença existencial, preservando a satisfatibilidade do conhecimento.
Uma coroa pode ser nomeada com uma nova constante sem afirmar que ela é algum objeto específico já nomeado.
Instanciação universal
A instanciação universal substitui uma variável universalmente quantificada por um termo sem variáveis, derivando uma instância específica de uma afirmação geral.
Uma regra sobre todo gato pode ser instanciada para Tom ou para o objeto denotado por MotherOf(Tom).
Interpretação
Uma interpretação atribui objetos a constantes, relações a predicados e funções totais a símbolos de função em um modelo de primeira ordem.
Dois nomes de constante podem denotar o mesmo objeto, a menos que o modelo seja restringido por uma desigualdade.

L

Lista de adição
A lista de adição de uma ação contém os fluentes positivos tornados verdadeiros pela execução, que são inseridos no estado de planejamento resultante.
Um movimento até a prateleira adiciona At(R, Shelf), deixando inalterados os fatos não relacionados sobre o pacote.
Lista de remoção
A lista de remoção de uma ação contém os fluentes positivos removidos pela execução, impedindo que persistam no estado resultante.
Um movimento remove a localização anterior para que o robô não permaneça tanto na doca quanto na prateleira.
Literal
Um literal é uma proposição atômica ou sua negação, que fornece a afirmação positiva ou negativa básica usada em uma cláusula.
Tanto P₁₂ quanto ¬P₁₂ são literais, enquanto P₁₂ ∧ P₂₁ combina dois literais em uma sentença maior.
Lógica de descrição
Uma lógica de descrição define categorias em uma linguagem formal restrita, projetada para permitir classificação decidível e raciocínios relacionados.
Um sistema de raciocínio para ontologias pode verificar se uma categoria definida está necessariamente contida em outra.
Lógica de primeira ordem
A lógica de primeira ordem expressa afirmações sobre objetos, relações e funções usando quantificadores, permitindo regras reutilizáveis sobre um domínio.
Uma regra quantificada da brisa pode descrever todas as casas sem nomear uma regra proposicional separada para cada uma.

M

Manutenção da verdade
Um sistema de manutenção da verdade acompanha o suporte das crenças para que conclusões dependentes possam ser revisadas quando suas hipóteses mudarem.
Remover o suporte de uma crença por padrão de que uma ave voa também remove conclusões que dependiam apenas dessa crença.
Modelo
Um modelo proposicional atribui valores de verdade a símbolos de proposição, permitindo avaliar a verdade de sentenças compostas.
Com A falso e B verdadeiro, o modelo satisfaz A ∨ B enquanto torna A ∧ B falsa.
Modus ponens
Modus ponens é a regra de inferência que deriva uma conclusão Q de uma implicação P ⇒ Q e da premissa correspondente P.
Ready e Ready ⇒ Checked permitem que a demonstração acrescente Checked como uma nova sentença justificada.
Modus ponens generalizado
O Modus ponens generalizado aplica uma regra depois que uma substituição consistente faz todas as suas premissas atômicas corresponderem a fatos disponíveis.
Owns(Ada, Atlas) e Book(Atlas) correspondem conjuntamente à regra de que proprietários de livros são leitores.
Monotonicidade
Monotonicidade significa que acrescentar premissas preserva conclusões que já eram consequências lógicas, embora possa acrescentar outras conclusões.
Acrescentar uma nova percepção a uma BC clássica não retira as consequências lógicas que ela sustentava anteriormente.

N

Negação por falha
A negação por falha trata uma tentativa de demonstração que falha em tempo finito como sucesso para um objetivo negado, dependendo do comportamento operacional da busca.
Em Prolog, \+ p espera pela tentativa de demonstrar p; um ciclo infinito não conta como falha.
Nível de conhecimento
O nível de conhecimento descreve um agente por suas crenças e objetivos, independentemente do código e das estruturas de dados que os implementam.
Dizer que um robô sabe que a ponte está fechada descreve seu nível de conhecimento, não seu formato de armazenamento.

O

Ontologia
Uma ontologia especifica formalmente as categorias, relações e hipóteses de um domínio para que fatos possam ser interpretados de maneira consistente.
Uma ontologia de equipamentos distingue a categoria de um dispositivo dos componentes que fazem parte dele.
OWL
OWL é uma linguagem de ontologia para a web que oferece definições mais ricas de classes e propriedades, com linguagens de lógica de descrição para raciocínio formal.
Uma ontologia de grafo pode usar definições OWL para classificar indivíduos além das afirmações explícitas de tipo.

P

Padronização de variáveis à parte
A padronização de variáveis à parte renomeia variáveis em sentenças independentes antes de combiná-las, evitando o compartilhamento acidental de vinculações locais.
Duas regras que usam x localmente devem receber nomes de variáveis distintos antes de um passo de resolução ou encadeamento.
Paramodulação
A paramodulação é uma regra de inferência para igualdade que substitui uma ocorrência usando uma equação enquanto deriva consequências de cláusulas.
Um demonstrador de teoremas precisa de raciocínio sobre igualdade para conectar um objeto nomeado a um termo de função igual a ele.
Partição
Uma partição divide uma categoria superior em categorias disjuntas que juntas abrangem todos os membros, sem sobreposições nem omissões.
Inteiros negativos, zero e inteiros positivos formam uma partição do conjunto dos inteiros.
Planejamento clássico
O planejamento clássico encontra ações que alcançam um objetivo a partir de um estado conhecido usando um modelo de mundo totalmente observável, determinístico e discreto.
Um plano de entrega aplica ações modeladas de deslocamento e manuseio até que o pacote chegue ao local exigido.
Planejamento por redes hierárquicas de tarefas (HTN)
O planejamento HTN refina tarefas de alto nível por meio de métodos específicos do domínio até que as tarefas restantes sejam ações primitivas executáveis.
Um método de entrega decompõe a tarefa em deslocar-se, pegar o pacote, deslocar-se novamente e soltá-lo.
Plano
Um plano é uma sequência de ações cujas execuções aplicáveis levam um estado inicial de planejamento a um estado que satisfaz o objetivo exigido.
Ir até um pacote, pegá-lo, deslocar-se até seu destino e soltá-lo forma um plano de entrega.
Plano contingente
Um plano contingente ramifica-se conforme as observações, permitindo ações diferentes de acordo com o que um agente aprende durante a execução.
Uma inspeção pode levar a ramos de ação separados para uma passagem aberta e para uma passagem bloqueada.
Ponto fixo
Um ponto fixo é alcançado quando a aplicação das regras de inferência não produz novos fatos além dos que já estão na base de conhecimento.
Depois que todos os pares alcançáveis de nós são derivados, outra rodada de regras de alcançabilidade não acrescenta nada.
Precondição
Uma precondição é uma condição que deve valer antes que uma ação possa ser aplicada em um estado de planejamento, não um resultado criado pela ação.
Pick exige uma mão vazia; listar esse fato apenas como efeito não verificaria previamente sua disponibilidade.
Predicado
Um predicado nomeia uma relação sobre objetos do domínio e forma uma sentença atômica quando recebe os termos de argumento necessários.
Owns(Ada, Atlas) aplica o predicado binário Owns a dois termos que identificam o proprietário e o objeto.
Problema de satisfatibilidade booleana (SAT)
O problema SAT pergunta se alguma atribuição de valores de verdade satisfaz uma fórmula proposicional, geralmente representada na forma normal conjuntiva.
Um resolvedor retorna uma atribuição satisfatória ou, quando sua busca completa descarta todas as atribuições, informa que a fórmula é insatisfatível.
Problema do quadro
O problema do quadro é o problema de representar o que permanece inalterado quando uma ação modifica apenas alguns aspectos de um mundo.
Mover um robô deve preservar sua posse de uma flecha sem precisar de uma regra separada para cada ação.
Programação de tarefas
A programação de tarefas atribui horários de início respeitando durações das ações, exigências de ordenação e restrições sobre recursos compartilhados.
Duas tarefas que precisam do mesmo robô podem exigir horários de início diferentes, mesmo que ambas sejam logicamente alcançáveis.
Progressão
A progressão busca para frente a partir do estado inicial de planejamento, aplicando ações cujas precondições são verdadeiras em cada estado alcançado.
Um planejador que busca para frente considera movimentos permitidos a partir da doca, mesmo quando alguns não ajudam a entregar o pacote.
Propagação unitária
A propagação unitária atribui repetidamente verdadeiro ao único literal que ainda pode tornar uma cláusula verdadeira, permitindo que atribuições forçadas acionem outras.
Depois que A se torna verdadeiro, ¬A ∨ B força B a ser verdadeiro, o que pode, por sua vez, reduzir outra cláusula.

Q

Quantificador existencial
O quantificador existencial ∃ exige que pelo menos um objeto do domínio torne seu escopo verdadeiro; esse objeto é uma testemunha.
A sentença ∃x (Cat(x) ∧ Black(x)) precisa de um objeto que seja gato e preto.
Quantificador universal
O quantificador universal ∀ exige que seu escopo seja verdadeiro para todo objeto possível do domínio atribuído à variável que ele vincula.
A sentença ∀x (Cat(x) ⇒ Mammal(x)) verifica a implicação tanto para gatos quanto para objetos que não são gatos.

R

Raciocínio por padrão
O raciocínio por padrão tira conclusões que normalmente são válidas, permitindo sua retirada quando informações mais específicas revelam uma exceção.
Uma conclusão por padrão de que uma ave voa pode ser retirada depois que o sistema descobre que ela é um pinguim.
RDF
RDF é um modelo de dados para a web que expressa grafos como triplas com IRIs, nós em branco e valores literais em suas posições permitidas.
Um conjunto de dados pode conectar uma entidade identificada por um IRI a um ano literal por meio de uma propriedade nomeada.
RDFS
RDFS acrescenta classes, relações de subclasse e domínio e imagem de propriedades ao RDF, permitindo inferências básicas baseadas em esquema.
Um vínculo de subclasse de Researcher para Scientist sustenta um tipo Scientist inferido para um pesquisador conhecido.
Rede Rete
Uma rede Rete mantém correspondências parciais de regras entre atualizações, reduzindo o trabalho repetido de correspondência em sistemas orientados por fatos que mudam.
Um mecanismo de regras reutiliza uma correspondência armazenada para uma premissa quando um novo fato satisfaz outra premissa.
Refutação
Uma refutação deriva uma contradição das premissas e de uma consulta negada, estabelecendo que a consulta decorre das premissas.
A demonstração de Q acrescenta ¬Q temporariamente e termina quando Q e ¬Q se resolvem na cláusula vazia.
Regressão
A regressão trabalha para trás a partir das condições do objetivo, substituindo literais que uma ação alcança pelas precondições necessárias antes dela.
Regredir um objetivo de entrega por Drop cria exigências de que o robô segure o pacote no destino.
Reificação
A reificação representa uma propriedade, categoria ou relação como um objeto para que outros fatos possam se referir diretamente a ela.
Representar Red como objeto permite que uma consulta pergunte se dois objetos compartilham a mesma cor.
Relaxamento por desconsideração de efeitos de remoção
O relaxamento por desconsideração de efeitos de remoção remove efeitos negativos de uma tarefa de planejamento com precondições e objetivos positivos, de modo que fatos alcançados persistam.
A localização inicial de um robô permanece verdadeira na tarefa relaxada mesmo depois que ele se move para outro local.
Representação vetorial de grafo de conhecimento
Uma representação vetorial de grafo de conhecimento representa entidades e relações com vetores aprendidos que pontuam vínculos possíveis para previsão estatística.
Uma pontuação alta pode sugerir uma relação ausente, mas uma consequência lógica baseada em regras precisa de suporte lógico separado.
Resolução
A resolução deriva uma nova cláusula removendo um par de literais complementares de duas cláusulas e mantendo os literais restantes.
Resolver A ∨ C com ¬A ∨ D fornece C ∨ D, que todo modelo das cláusulas de origem deve satisfazer.
Resolução de entidades
A resolução de entidades identifica registros ou identificadores que se referem à mesma entidade real, ajudando a conectar fatos entre fontes de dados.
Dois conjuntos de dados podem usar identificadores diferentes para o mesmo laboratório e precisar de um mapeamento verificado.

S

Satisfatibilidade
Satisfatibilidade é a propriedade de ser verdadeira em pelo menos um modelo, mesmo que a sentença seja falsa em outros modelos.
A sentença A ∧ ¬B é satisfatível porque a atribuição A verdadeiro e B falso a torna verdadeira.
SATPlan
SATPlan codifica uma tarefa de planejamento em um horizonte escolhido como SAT, com cláusulas para fatos iniciais, objetivos, precondições e transições de estado.
Um horizonte insatisfatível de três passos deixa em aberto se existe um plano de quatro passos para a tarefa.
Semidecidibilidade
Semidecidibilidade significa que um procedimento pode confirmar por fim toda instância positiva, mas pode executar indefinidamente em uma instância negativa.
Um demonstrador completo de primeira ordem encontra consultas que são consequências lógicas, mas pode nunca parar em uma que não seja.
Símbolo puro
Um símbolo puro ocorre com uma única polaridade em todas as cláusulas atualmente não satisfeitas, permitindo uma atribuição que satisfaça essas ocorrências.
Se E ocorre apenas positivamente entre as cláusulas restantes, atribuir verdadeiro a E preserva a satisfatibilidade.
Skolemização
A Skolemização substitui variáveis existenciais por novas constantes ou funções que refletem suas dependências universais, preservando a satisfatibilidade.
Um professor escolhido dentro de ∀c pode ser representado por T(c), permitindo que disciplinas diferentes tenham professores diferentes.
SPARQL
SPARQL é uma linguagem de consulta que faz a correspondência de padrões em grafos RDF para retornar vinculações, grafos ou outros resultados conforme a forma da consulta.
Usar o mesmo ?p em dois padrões exige que uma entidade satisfaça ambas as relações na consulta.
Substituição
Uma substituição associa variáveis a termos e substitui suas ocorrências de maneira consistente em uma expressão ou passo de inferência.
Aplicar {x/Ada, y/Atlas} a Owns(x, y) produz a sentença sem variáveis Owns(Ada, Atlas).
Subsunção
A subsunção remove uma cláusula já abrangida por uma cláusula mais geral, evitando trabalho redundante sem perder suas restrições.
A cláusula geral P(x) torna a cláusula mais fraca P(Ana) ∨ Q(Bo) desnecessária no conjunto de cláusulas.

T

Tabulação de respostas
A tabulação de respostas armazena respostas para subobjetivos repetidos e gerencia suas dependências para que buscas recursivas possam reutilizar resultados à medida que surgem.
Uma consulta de alcançabilidade com tabulação pode tratar um ciclo sem percorrer as mesmas chamadas indefinidamente.
Taxonomia
Uma taxonomia organiza categorias por relações de subclasse, permitindo que propriedades de categorias mais amplas se apliquem a seus membros.
Notebooks herdam propriedades de computadores porque Laptops é uma subclasse de Computers na hierarquia.
TELL
TELL é a operação que acrescenta uma sentença a uma base de conhecimento, como uma percepção ou um registro da ação escolhida.
Depois de perceber a ausência de brisa, o agente usa TELL para informar à base de conhecimento a percepção negativa correspondente.
Termo
Um termo é uma expressão que se refere a um objeto, construída a partir de uma constante, uma variável ou uma função aplicada a outros termos.
MotherOf(Ada) é um termo, enquanto Person(Ada) é uma afirmação com valor de verdade.
Termo sem variáveis
Um termo sem variáveis é um termo que não contém variáveis e, portanto, refere-se a um objeto sem exigir uma atribuição de variável no modelo.
MotherOf(Ada) não contém variáveis, embora seja uma expressão composta, enquanto MotherOf(x) contém uma variável.
Tripla
Uma tripla registra uma relação direcionada de sujeito, predicado e objeto, fornecendo a estrutura básica de fatos de um grafo de conhecimento RDF.
A tripla (Ada, worksAt, Lab) conecta a pessoa ao local de trabalho por meio da relação worksAt.

U

Unificação
A unificação encontra uma substituição que torna duas expressões sintaticamente idênticas, respeitando as restrições de variáveis repetidas.
Knows(Ana, x) e Knows(y, Bo) unificam-se vinculando y a Ana e x a Bo.
Unificador mais geral
Um unificador mais geral torna expressões idênticas sem especialização desnecessária, permitindo obter outros unificadores por substituições adicionais.
Vincular x a z deixa mais liberdade do que vincular ambas as variáveis a uma constante existente específica.

V

Validade
Validade é a propriedade de ser verdadeira em todos os modelos, independentemente de qualquer base de conhecimento ou observação específica.
P ∨ ¬P é válida porque cada atribuição torna verdadeiro um de seus dois termos da disjunção.
Variável livre
Uma variável livre é uma ocorrência de variável não vinculada por um quantificador, de modo que avaliar a fórmula exige uma atribuição para ela.
Em ∀x Likes(x, y), x está vinculada, mas o valor atribuído a y ainda afeta a avaliação da sentença.
Verificação de ocorrência
A verificação de ocorrência rejeita uma vinculação que colocaria uma variável dentro de seu próprio termo de substituição, preservando a unificação de termos finitos.
Tentar unificar x com MotherOf(x) falha porque nenhum termo finito pode satisfazer essa substituição.
Vinculação de variável
Uma vinculação de variável associa uma variável de consulta a um termo, identificando um objeto que satisfaz a consulta sob a base de conhecimento.
Uma consulta CanEnroll(x, AI) pode retornar a vinculação x = Mia em vez de apenas uma resposta sim ou não.
Vínculo causal
Um vínculo causal registra que uma ação estabelece uma precondição necessária a outra, protegendo esse fato entre as ações.
Um vínculo de Pick para Drop relativo a Holding(R, Box) é ameaçado por uma ação intermediária que remove a posse.

W

WalkSAT
WalkSAT busca entre atribuições completas invertendo variáveis de cláusulas não satisfeitas, combinando escolhas aleatórias com reparos orientados.
Uma execução do WalkSAT que atinge seu limite de inversões deixa a satisfatibilidade indefinida, mesmo que a fórmula tenha um modelo.

Sobre esta aula

Por StudeliRelatar um erro

Crie seus próprios Materiais de Estudo

Transforme suas anotações, slides e documentos em Guias de Estudo, Questões de Prática, Flashcards e mais 6 ferramentas.

Começar