SlideShare uma empresa Scribd logo
1 de 119
Conhecimento
Termo abstracto usado para capturar a compreensão de um indivíduo
num domínio específico.
                   área de conhecimento bem delimitada, focalizada.
      Volume

                                                              Decisão/Acção
                                                Competência

                                 Conhecimento


                         Informação
                         Estruturada



                 Dados
                                                                      Valor


Existem várias teorias que explicam como se organiza o conhecimento humano na
resolução de problemas      – Vários Tipos de Conhecimento
                                                                       1
Tipos de Conhecimento
  •   Conhecimento Procedimental
  •   Conhecimento Declarativo
  •   Meta-Conhecimento
  •   Conhecimento Heurístico
  •   Conhecimento Estrutural

Representação do Conhecimento
    Método usado na codificação do conhecimento contido na Base
   de Conhecimento do Sistema Pericial


Não existe uma representação única ideal para todos os tipos de
conhecimento
                                                    2
Conhecimento Procedimental
• Descreve como um problema é resolvido ou como agir perante uma dada
  situação (como fazer).
• Regras, estratégias, agendas e procedimentos são representações típicas
  para este tipo de conhecimento.                                      Sangrador de
                                                                      Combustível OK?



                                                             Sim                                    Não




                                     Há fugas de ar de                                                        Verificar circuito de
                                       admissão ?                                                                alimentação



                                    Sim                Não




                       Reparar fugas de                  Descida de
                              ar                          rotação?


                                                 Sim                                Não



                                      Teste de                                                        Posição parafuso
                                    Mariposa OK?                                                        ralenti OK?


                              Sim               Não
                                                                                              Sim                     Não
                        ...
                                                Reparar válvula               Teste de
                                                  mariposa                   Compressão                                      ...
                                                                                OK?

                                                                            Sim         Não


                                                                      ...

                                                                                                                            3
Conhecimento Declarativo
• Descreve o que é conhecido acerca de um determinado problema.
  Inclui declarações (statements) que são assumidas como
  verdadeiras ou falsas e que descrevem um objecto ou conceito.
• Corresponde a uma representação descritiva.

Exemplo
              Fumar pode provocar cancro no pulmão.

• Conhecimento Declarativo
   – é mais transparente – mais facilmente entendido, mais fácil de manter
• Representações procedimentais
   – são mais eficientes, mas mais difíceis de manter


                                                                4
Meta-Conhecimento
• Conhecimento acerca do próprio conhecimento.
• é usado para aceder a conhecimento mais orientado para resolver
  determinado problema
• Aumenta a eficiência de resolução do problema dirigindo o
  raciocínio para o subconjunto de conhecimento mais adequado
• Representado através de meta-regras – regras que descrevem
  como usar outras regras
  Exemplo

        Se o carro não pega
        E o sistema eléctrico está operacional
        Então usar regras relativas ao circuito de alimentação


                                                        5
Conhecimento Heurístico
• Reflecte o conhecimento obtido com toda a experiência que se
  detém ao lidar com um determinado tipo de problema
• É obtido pela experiência prévia na resolução de um grande
  número de problemas de uma determinada especialidade, é
  essencialmente empírico
• Muitas vezes assume o aspecto de regras de bom senso ou de
  “Rules of Thumb”

Exemplo
      Para elaborar horários considerando salas devemos começar com as salas
      que impõem mais restrições;
      Numa máquina de pintura fazer as mudanças de tintas sempre das mais
      claras para as mais escuras.



                                                             6
Conhecimento Estrutural
Descreve a estruturação do conhecimento, ou seja, o modelo mental
que o perito tem na resolução de um determinado tipo de problema.
Pode indicar conceitos e sub-conceitos na estruturação do
conhecimento.
Exemplo com as anomalias no Betão
               Tipos de Anomalias no Betão
                         Fissura
                                 Excesso de Ar
                                 Excesso de Água
                                 Grande grau de Silicato Tricálcio no Cimento
                                 Factores Climatéricos
                                 Temperatura Inconstante
                         Chocho
                                 Má vibração
                                 Falta de Inertes Finos
                                 Cofragem não estanque
                                 Excesso de Inertes Grossos ....

                                                                  7
Tipos de Conhecimento
                             Regras
                             Estratégias
                             Agendas
Conhecimento Procedimental
                             Procedimentos

                             Conceitos
Conhecimento Declarativo     Objectos
                             Factos

                             Conhecimento acerca de outros tipos de
Metaconhecimento             conhecimento e como usá-lo


Conhecimento Heurístico      Regras de bom-senso

                             Conjuntos de Regras
Conhecimento Estrutural      Relações entre Conceitos
                             Relações entre Objectos

                                                           8
Conhecimento do Perito
• não e geralmente baseado em definições claras nem em
  algoritmos precisos
• é composto por teorias de carácter geral, mas também por regras
  de dedo, estratégias e truques aprendidos com a experiência ...
                                         heurísticas
  ... utilizadas para simplificar a resolução de problemas, para
  identificar situações comuns
• é muito dependente do domínio
• pode estar continuamente sujeito a mudança
      Consequências
           Separação explícita entre conhecimento e algoritmos
           para aplicação do conhecimento
              Sistema Pericial = Conhecimento + Inferência
                                                     9
Níveis de Conhecimento
Conhecimento Superficial
• faz uma descrição básica (superficial) do conhecimento
  Exemplo
     SE o depósito de gasolina está vazio ENTÃO o carro não irá funcionar


• é muito limitado, por exemplo, explicar a alguém os fenómenos
  que se passam
• não traz valor acrescentado por ser demasiadamente genérico e
  básico
• é um tipo de conhecimento que tira relações causa-efeito - “caixa
  preta” (no sentido de não se observar o interior dos sistemas)

                                                              10
Níveis de Conhecimento

Conhecimento Profundo
• considera a estrutura causal e interna de um sistema e contempla
  a interacção entre os componentes desse sistema
• É mais difícil de adquirir, representar e validar
• A representação com redes semânticas ou enquadramentos
  (frames) é a mais adequada.




                                                     11
Representação do Conhecimento

Necessário formalismos:

• Utilizáveis em computador
• Com forma próxima da do conhecimento do perito
• Que facilitem as operações de recolha, organização, manutenção,
  validação ....
       .... transparentes




                                                     12
Representação do Conhecimento

Alguns formalismos de representação do conhecimento mais
vocacionados para o desenvolvimento de Sistemas Periciais :
   •   Tripletos Objecto-Atributo-Valor e Listas de Propriedades
   •   Relações de Classificação e Pertença (IS-A e IS-PART)
   •   Redes Semânticas
   •   Enquadramentos (Frames)
   •   Guiões
   •   Regras
   •   Lógica


                                                       13
Tripletos Objecto-Atributo-Valor (O-A-V)
Caracterizam os valores de determinados atributos de um dado
objecto
O objecto pode ser uma entidade física (carro) ou uma entidade
conceptual (empréstimo)



                    has                        is
      Objecto                  Atributo                     Valor




                                                       14
Tripletos Objecto-Atributo-Valor (O-A-V)
Exemplo
Tripletos associados a um carro
                    carro-marca-opel
                    carro-modelo-astra
                    carro-cilindrada-1400
                    carro-nºportas-4
                    carro-côr-verde
                    ...

Os tripletos podem vir afectados de valores numéricos que expressam a
certeza, ou incerteza, que se tem no conhecimento em causa.
Exemplo
          Previsão do tempo é de chuva com 60% de certeza
         (previsão- tempo-chuva – CF = 0.6)

                                                        15
Listas de Propriedades
No exemplo
            carro-marca-opel
            carro-modelo-astra
            carro-cilindrada-1400
            carro-nºportas-4
            carro-côr-verde
            ...

O nome do objecto aparece muitas vezes, visto que temos muitos
atributos para o mesmo objecto.
Nessas situações podemos usar listas de propriedades, nas quais
para um dado objecto temos uma lista de pares atributo‑valor.
Lista de propriedades para o carro:
  carro-[marca-opel, modelo-astra, cilindrada-1400, nºportas-4, côr-verde,...].


                                                                  16
Limitações
• Os tripletos e as listas de propriedades têm limitações quando se
  pretende representar conhecimento declarativo sobre atributos de
  objectos que estejam em modificação.
• Nessas situações o conhecimento é dinâmico e temos que
  modificar o valor de um atributo.

Exemplo
   tripletos dinâmicos que se referem ao estado de um disjuntor (aberto ou
   fechado) e ao modo de operação de uma linha (manual ou automático):

            disjuntor_D - estado-aberto.
            linha_L - modo_operação - manual.



                                                            17
Relações de Classificação (IS-A)

                                    Animal Selvagem


                                             IS-A



                  IS-A                 Animal
                                                                    IS-A

                            IS-A                           IS-A
                                             IS-A


                 Canino             Animal Doméstico                Felino


          IS-A       IS-A             IS-A          IS-A     IS-A     IS-A

   Lobo                       Cão                     Gato                   Tigre




                                                                               18
Relações de Pertença (IS-PART)
As relações de pertença (IS-PART) organizam o conhecimento
através da composição ou decomposição de componentes.
                                                 Mobiliário de
                                                  Cozinha

                          IS-PART                                    IS-PART


                         Cadeira
                                                                               Mesa
                                   IS-PART
          IS-PART
                                                                  IS-PART              IS-PART
                     IS-PART
 Pernas da Cadeira         Encosto     Assento                   Pernas da Mesa        Tampo




                                                                                  19
Relações de Classificação (IS-A) e de
Pertença (IS-PART)
As relações IS-A e IS-PART podem ser combinadas na mesma
representação.

                             Computador

                 IS-PART          IS-PART        IS-PART


                 CPU                                   teclado
                             monitor
                                       .......              .......
          IS-A


   Pentium 4       .......




                                                            20
Redes Semânticas
• São um método de representação do conhecimento através de um
  grafo directo composto por nós e arcos

• Os nós representam objectos (físicos ou abstractos), as suas
  propriedades e valores

• Os arcos representam relações entre os nós

• As relações IS-A e IS-PART são vulgarmente usadas como
  etiquetas dos arcos, podem ser usadas outras etiquetas à nossa
  escolha (tem, desloca-se, respira, etc) que capturam conhecimento



                                                      21
Redes Semânticas
                                                                  A sas                           Ar


                                                                          te m                     r e s p ir a



                       IS -A                              IS -A                                          IS -A
  A m a r e lu s               C a n á r io                                      A ve                             A n im a l

                                                                                        d e s lo c a ç ã o

                                                      IS -A
                       IS -A   P in g u im
 B la c k & W h it e
                                                                                 Voo


                                     d e s lo c a ç ã o



                               Andar




                                                                                                                  22
Modo de Operação
Quando se coloca uma questão a um Nó,
este procura nos seus arcos locais por uma etiqueta que coincida
com a questão
se não existir procura a resposta via as suas ligações IS_A, ou seja,
passa a questão até um Nó que contenha um arco com a resposta.

deslocação Amarelus ?

                deslocação              deslocação             deslocação
   Utilizador                Amarelus                Canário                 Ave
                   vôo                      vôo
                                                                   vôo

                                                                                       deslocação



                                                                                 Vôo



                                                                            23
Inferência sobre Redes Semânticas
Para descrever o processo de inferência nas Redes Semânticas
vamos usar lógica:
Cada ligação
                           Relação
                    Obj1             Obj2




É traduzido para
                     relação (Obj1,Obj2)

Deslocação Amarelus ?

                     Is_a (Amarelus,Canário).
                     Is_a (Canário, Ave).
                     deslocação(Ave,Voo).

                                                      24
Inferência sobre Redes Semânticas
O tratamento de excepções no mecanismo de herança faz-se impondo
uma restrição ao mecanismo de herança
         algo dito explicitamente sobrepõe-se aos factos herdados

deslocação Black&White?

                     Is_a (Black&White,Pinguim).
                     deslocação(Pinguim,andar).
                     Is_a (Pinguim, Ave).
                     Is_a (Ave,animal).
                     respira(Ave,Ar).

                      herda todas as características da superclasse
                        excepto aquelas explícitas no próprio Nó

                                                     25
Características Redes Semânticas
• simplicidade de representação - devido às características de
  herança
     – Amarelus herda todas as propriedades de Aves
• as Redes Semânticas estão na origem da Programação Orientada a
  Objectos
• permitem uma redução no tempo de pesquisa, visto que os nós
  estão directamente ligados aos nós vizinhos com interesse

Desvantagens:
• podem permitir inferências inválidas
• não têm uma norma de interpretação - a interpretação depende dos
  programas que a manipulam.

                                                      26
Exemplo
•   Uma ave é um animal.
•   A maneira normal de movimentação das aves é voar.
•   Uma ave está activa durante o dia.
•   Um albatroz é uma ave.
•   Uma albatroz é preto e branco.
•   O tamanho normal do albatroz é 115 cm.
•   O Alberto é um albatroz.
•   O tamanho do Alberto é 120 cm.
•   Um pinguim é uma ave.
•   Um pinguim é branco e preto.
•   A maneira normal de movimentação dos pinguins é andar.
•   O Tweety é um pinguim.

Questões:
      – Qual o método de movimentação do Alberto ?
      – Qual o método de movimentação do Tweety ?

                                                             27
Exemplo
                            andar

                                  deslocação

                   IS-A                               diurna
    tweety                 Pinguim
                                               IS-A      actividade
                           cor

                          Preto e                               IS-A
                                                      Ave               Animal
                          Branco

                                 cor                     deslocação
                                               IS-A
                   IS-A
    Alberto               Albatroz
                                                      Vôo

         tamanho                 tamanho



    120 cm                115 cm




                                                                       28
Enquadramentos (Frames)
• Introduzido em 1975 por Marvin Minsky

• Permitem representar conhecimento de um conceito ou objecto

• Um enquadramento é uma versão enriquecida de um registo ou de
  um objecto:
      • Propriedades
      • Herança: características, comportamentos

• É possível criar Instâncias dos Enquadramentos

• Adequados para sistemas complexos, de larga escala, envolvendo
  valores por defeito e quantidades elevadas de dados conhecidos
  a-priori
                                                      29
Frames - Campos
• Identificador
• Slots
   – são representados em gavetas (slots)
   – correspondem aos atributos
   – Cada slot tem
        • identificação
        • valor que toma por defeito (quando nenhum valor foi ainda atribuído)
        • valor actual (espaço onde são guardadas as alterações ao atributo)

                                      Nome do frame


               Nome do slot 1   Valor por defeito - slot 1   Valor actual slot 1


               Nome do slot 2   Valor por defeito - slot 2    Valor actual slot 2




                                                                              30
Definição de Frames em LPA Flex
frame <nome_do_frame>
      [{is a|is an|is a kind of} <frame_pai>] [,<outro_frame_pai>,…] [;]
      [ [ default <slot> {is|is a|are} <valor> ]
      [ and default <outro_slot> {is|is a|are} <outro_valor> [and … ] ] [;]
      [ inherit <slot> from <nome_do_frame_herda>
          [ and do not inherit <slot> [ and …] ] ] ].

 • nome_do_frame é o nome do frame (atómico)
 • frame_pai, outro_frame_pai e nome_do_frame_herda
   são nomes de frames (com o mesmo formato) definidos noutro local
 • slot e outro_slot são identificações dos slots pertencentes
   ao frame nome_do_frame.
 • valor e outro_valor são valores por defeito que os slots tomam respectivamente.




                                                                 31
Relações entre Frames
Permitem implementar características de herança entre Frames

Tipos de Relações
 • “is a” ou “is an” : relação de dependência hierárquica entre
   frames
 • “inherit” : herança de slot(s) de frames que não estão na mesma
   linha de hierarquia
 • “do not inherit” : ausência de herança de slot(s) de frame(s)
   hierarquicamente superiores
 • um slot ser ele mesmo um frame




                                                      32
“Is a” Simples
O frame_filho herda todos os slots de frame_pai
             frame_pai

    slot_1    valor_1


    slot_2    valor_2



                    Is a

             frame_filho            frame frame_pai
                                            default slot_1 is valor_1 and
    slot_3    valor_3                       default slot_2 is valor_2.

    slot_4    valor_4
                                    frame frame_filho is a frame_pai
                                            default slot_3 is valor_3 and
                                            default slot_4 is valor_4.


                                                         33
“Is a” Múltiplo
Exemplo
              Mamífero
    pele        pelo


   habitat      terra
                              frame mamifero
  movimento   anda,nada
                                default pele is pelo and
                                default habitat is terra and
                       Is a
                                default movimento are {anda,nada}.
                Felino

    cauda       longa         frame felino is a mamifero
                                default cauda is longa and
   pernas        4
                                default pernas are 4.



                                                     34
“Inherit”
Herança de slot(s) de frames que não estão na mesma linha de hierarquia
          frame_pai                                outro_frame


 slot_1   valor_1                         slot_3    valor_3

 slot_2   valor_2                         slot_4    valor_4


                         Is a                  inherit

                                frame_filho                      frame frame_pai
                                                                         default slot_1 is valor_1 and
                      slot_5    valor_5
                                                                         default slot_2 is valor_2.
                      slot_6    valor_6
                                                                 frame outro_frame
                                                                         default slot_3 is valor_3 and
                                                                         default slot_4 is valor_4.
                                                                 frame frame_filho is a frame_pai
                                                                          default slot_5 is valor_5 and
                                                                          default slot_6 is valor_6 ;
                                                                          inherit        slot_4       from
                                                                 outro_frame.                35
“Inherit” - Exemplo
                          Pássaro                                              Mamífero
                 pele     penas                                  pele            pelo

                habitat   árvore                                habitat          terra

            movimento      voa                                 movimento       anda,nada


                                              Is a                   inherit
frame passaro
                                                     Pinguim
....                                 pele             lisa

frame mamifero                      habitat          terra

......
frame pinguim is a passaro
  default pele is lisa and
  default habitat is terra ;
  inherit movimento from mamifero.
                                                                                         36
“do not inherit”
Ausência de herança de slot(s) de frame(s) hierarquicamente superiores
             frame_pai

    slot_1    valor_1


    slot_2    valor_2
                                            frame frame_pai
                                                    default slot_1 is valor_1 and
                   Is a    Do not inherit
                                                    default slot_2 is valor_2.
             frame_filho
                                            frame frame_filho is a frame_pai
    slot_3    valor_3
                                                    default slot_3 is valor_3 and
    slot_4    valor_4                               default slot_4 is valor_4 ;
                                                    do not inherit slot_2.




                                                                      37
“do not Inherit” - Exemplo
                      Pássaro
    pele              penas

   habitat            árvore

  movimento            voa


              Is a              Do not inherit   frame passaro
                     Pinguim
                                                   default pele is penas
     pele             lisa                         default habitat is arvore and
    habitat          terra                         default movimento is voa;

                                                 frame pinguim is a passaro
                                                   default pele is lisa and
                                                   default habitat is terra ;
                                                   do not inherit movimento.

                                                                       38
Um slot como Frame
O slot tem como valor por defeito o nome de um frame que pode depois
ser acedido como tal
           frame_1                    frame_2

  slot_1                    slot_3    valor_3


  slot_2   valor_2          slot_4    valor_4



                                     frame frame_1
                                             default slot_1 is frame_2 and
                                             default slot_2 is valor_2.

                                     frame frame_2
                                             default slot_3 is valor_3 and
                                             default slot_4 is valor_4.

                                                              39
Exercício                      Definir em termos de frames em LPA-flex a estrutura

                                                   Empregado
                                       nome             ''
                                      morada            ''
                                    vencimento          0


                                         Is an                                 Is a
                                                       Is a
                Programador                                                  Relações Públicas
  categoria        prog                                          categoria      rel_pub

                                                                 num_pr               0
                          Gestor de Projecto
              categoria      gest_proj

                                                                     Projecto
                                                 identificacao          ''
                                                   lista_prog        nothing
                                                     sistema            ''
                                                  linguagem             ''
                                                      gestor            ''
                                                     rel_pub            ''
                                                      estado     'em construção'



                                                                                                 40
frame empregado                              frame projecto
 default nome    is '' and                    default identificacao is ''    and
 default morada is '' and
                                              default lista_prog is nothing and
 default vencimento is 0.
                                              default sistema      is ''    and
frame programador is an empregado             default linguagem is ''       and
 default categoria is prog.                   default gestor       is ''    and
                                              default rel_pub      is ''    and
frame 'gestor de projecto' is an empregado
                                              default estado is 'em construcao'.
 default categoria is gest_proj.

frame 'relacoes publicas' is an empregado
 default categoria is rel_pub and
 default num_pr is 0.



                                                                       41
Instância de um Frame
•   é um elemento do conjunto que o frame representa, ou uma particularização da
    classe
•   podem ser vistas como frames cujos slots estão restringidos apenas ao valor
    actual
•   as instâncias, contrariamente aos frames, só podem ter um pai
•   é possível introduzir novos atributos a instâncias

                     Frame                                      Instância
                                                     Nome do
                                               Enquadramento
                                                                               Tweety
        Nome do
                                  Ave
     Enquadramento
                                                       Classe                     Ave
      Propriedades    Nº Asas            2
                                                 Propriedades            Cor            Branco
                        Voa             Verd
                                                                    Nº Asas                  2

                     Actividade         Desc                            Voa              Falso

                                                                  Actividade             Desc




                                                                               42
Definição de Instância
As instâncias podem ser definidas:
   • no programa
   • em execução (através de acções)

Definição no programa
          instance <nome_da_instancia>
            [ is a | is an | is a kind of | is an instance of <nome_do_frame> ] [;]
            [ [ <slot> is|is a|are <valor> ]
            [ and <outro_slot> is|is a|are <outro_valor> [and … ] ] [;]
            [ inherit <slot> from <nome_do_frame_herda>
            [ and do not inherit <slot> [ and …] ] ] ].
Exemplo
       instance Tweety is a passaro;
                                                   Cada vez que se tenha de criar uma
       movimento are {voa, nada};                   nova instância é necessário:
      cor is branco&preto.                         • acrescentar a instância ao programa
                                                   • reinicia-lo  ineficiente !

                                                                       43
Questões e Respostas
Permitem a comunicação entre o LPA Flex e o utilizador

Tipos de questões
   • Questões de menu

                      question <nome_da questão>
                      <Texto a apresentar pela questão> ;
                      choose {one | some} of <grupo_de_escolha>.

  • Questões de introdução

                       question <nome_da questão>
                              <Texto a apresentar pela questão> ;
                              input {number | name | set}.

                                                      44
Questões e Respostas - Exemplos
Questão de Menu

      group tipos_hobbies
             estudar, ler, praticar_desporto.

      question tempos_livres
      O que faz nos seus tempos livres ? ;
      choose some of tipos_hobbies.

Questão de introdução

      question int_numero
      Introduza um numero ;
      input number.
                                                45
Acções
• São uma colecção de directivas para execução
• correspondem aos predicados em PROLOG (sintaxe diferente)
• só existe uma definição possível para cada acção
• uma acção pode ter um número arbitrário de argumentos
• são úteis para aceder ou mostrar valores de slots, criar instâncias


Sintaxe
       action <nome_da_acção>
       do <directiva_1> [ and <directiva_2> [ and … ] ].




                                                          46
Acções
% Grupos
group animais
  mamifero, passaro, felino, pinguim.

% Questões
                                Acção para criar uma instância em execução de
Question escolher_animal        qualquer tipo de animal
Escolha o animal;
choose some of animais.         action cria_animal (TipoAnimal , NomeAnimal )
question introduzir_nome         do ask escolher_animal
Introduza o nome;                    and check that TipoAnimal is escolher_animal
input name                           and ask introduzir_nome
                                     and check that NomeAnimal is introduzir_nome
                                     and NomeAnimal is a new TipoAnimal.


                                                               47
Programação gerida por dados
Associados aos Frames existem procedimentos que são activados
sempre que são realizadas operações de actualização, acesso ou
criação de uma instância do Frame.

Tipos de procedimentos geridos por dados:
   • Launches
   • Constraints
   • Demons
   • Watchdogs




                                                    48
Programação gerida por dados
                 procedimentos geridos por dados



       frames                      slots




                     acesso                   actualização



                                      antes              depois



      launches     watchdogs       constraints           demons




                                                                  49
Launch
Procedimento gerido por dados invocado sempre que uma nova
instância de um qualquer frame é criada.
Quando uma nova instância é criada, todas as launches existentes
são verificadas e aquelas cujas condições se verifiquem são
executadas.

É composto por três partes distintas:
  • Contexto: teste para verificação de uma condição (qual o frame de que foi
    criada a instância)
  • Teste: um teste de condições para verificar se o launch deve actuar
  • Acção: uma série de comandos a serem executados se todas as condições
    forem satisfeitas.



                                                              50
Launch
Sintaxe
          launch <nome_da_launch>
          when [the] <{valor | variável}> is a new < nome_do_frame >
          [ and <condiçao> [and …] ]
          then <acção_1> [ and <acção_2> [ and … ] ].

Exemplo
                   frame empregado
                     default sexo is masculino.
                   launch novo_empregado
                   when Pessoa is a new empregado
                   and sexo of Pessoa is masculino
                   then questoes_sexo_masculino( Pessoa ).

                   instance pedro is an empregado.


                                                                       51
Constraint
• Uma restrição é algo que afecta um slot individualmente
• é implementada de forma a que restrinja a alteração ao conteúdo do slot da
  forma desejada
• é activada sempre que um determinado slot esteja prestes a ser alterado, sendo
  invocada imediatamente antes do conteúdo do slot ser realmente alterado, para
  validar a alteração

É composto por três partes distintas:

    • Contexto: teste para verificação de uma condição
                (qual o slot a ser restringido)
    • Teste: um teste de condições para verificar se a restrição deve actuar
    • Erro: uma série de comandos a serem executados se as restrições não
           forem satisfeitas.


                                                                 52
Constraint
Sintaxe
          constraint <nome_da_restrição>
          when [the] <slot > [ of < nome_do_frame> ] changes to <{valor|variável}>
          [ and <condiçao> [and …] ]
          then check [that] <verificação_1> [ and < verificação _2> [ and … ] ]
          [ otherwise <acção_1> [ and <acção_2> [ and … ] ] ].

Exemplo
                   frame empregado
                           default sexo is masculino.

                   constraint tipo_sexo
                   when the sexo of Pessoa changes to S
                   and Pessoa is some empregado
                   then check that S is included in {masculino, feminino}
                   otherwise nl and write(' Nao e'' possivel' ) and nl.

                   instance pedro is an empregado.


                                                                        53
Demon
• é invocada sempre que existe alteração a um determinado valor de
  um qualquer atributo,
• É executada imediatamente depois da alteração ter acontecido
• não restringe a alteração, existe apenas para invocar uma acção
  depois da alteração ocorrer

É composta por três partes distintas:
   • Contexto: teste para verificação de uma condição
                (qual o slot a provocar acções )
   • Teste: um teste de condições
   • Acção: uma série de comandos a serem executados se as
             restrições não forem satisfeitas.


                                                     54
Demon
Sintaxe
          demon <nome_da_demon>
          when [the] <slot> [ of < nome_do_frame> ]
          [changes from <{valor|variável}> ] to {valor|variável}>
          [ and <condiçao> [and …] ]
          then <acção_1> [ and <acção_2> [ and … ] ] ].

Exemplo
                  frame empregado
                  default sexo is masculino.

                  demon qual_sexo
                  when the sexo of Pessoa changes from S1 to S2
                  and Pessoa is some empregado
                  and S1 is different from S2
                  then write(' A mudanca de sexo e'' pouco habitual!' ) and nl.



                                                                      55
Watchdog
  • implementam restrições de acesso aos valores dos atributos
  • sempre que um valor de um determinado atributo é pedido, e
    imediatamente
    antes deste ser fornecido, verificam automaticamente as condições de acesso
  • baseiam o seu funcionamento em condições que permitem ou não a
    disponibilização de informação.

É composto por três partes distintas:

  • Contexto: teste para verificação de uma condição
               (qual o slot a ter restrições de acesso )
  • Teste: um teste de condições para verificar se a restrição deve actuar
  • Erro: uma série de comandos a serem executados se restrições não forem
          satisfeitas.


                                                                56
Watchdog
Sintaxe
          watchdog <nome_do_watchdog>
          when [the] <slot > [ of < nome_do_frame> ] is requested
          [ and <condiçao> [and …] ]
          then check [that] <verificação_1> [ and < verificação _2> [ and … ] ]
          [ otherwise <acção_1> [ and <acção_2> [ and … ] ] ].
Exemplo
                  frame conta
                  default saldo is 0.
                  frame utilizador
                  default nome is '' and
                  default acesso is 0.
                  watchdog seguranca_de_conta
                  when the saldo of the Conta is requested
                  and Conta is some conta
                  then check that the acesso of utilizador is above 99
                  otherwise nl and write( 'Acesso negado ao utilizador ' ) and
                  write( utilizador`s nome ).

                                                                            57
Frames
• facilitam o processamento orientado pelas expectativas, através
  do uso de procedimentos geridos por dados, ficam num estado de
  espera até serem realmente necessários
• permitem uma boa organização do conhecimento
• são auto-guiáveis, ou seja, eles são capazes, por si só, de
  determinar quando devem ser aplicados, se não forem aplicáveis
  podem sugerir outros Enquadramentos que o sejam.
• permitem guardar valores dinâmicos

Desvantagens
• são pouco adequados a novas situações
• a explicitação de conhecimento heurístico, comum em regras, é
  complexa
                                                    58
Guiões (Scripts)
Especificam uma sequência estereotipada de acontecimentos que normalmente
acontecem e que se seguem para representar conhecimento procedimental.

Contêm um conjunto de “slots” dos seguintes tipos:
   – Condições de entrada – que devem ser atendidas para que os eventos
     descritos no guião possam ocorrer
   – Resultados – que irão ser verdadeiros após a ocorrência dos eventos
     descritos no guião
   – Objectos – representando objectos envolvidos nos eventos do guião
   – Participantes – representando entidades que estão envolvidas nos eventos
     do guião
   – Cenas – sequências de eventos que ocorrem
São adequados:
   – para os casos em que temos sequências tipificadas (por exemplo, as fases da
     análise de um incidente)
   – para descrever planos que devem ser seguidos (por exemplo, os tratamentos
     a seguir para a cura de uma doença).
                                                                 59
Guiões (Scripts)
Participantes: cliente, empregado, dono,...
Objectos: mesa, cadeira, refeição, ....
Condições de entrada: cliente com apetite e dinheiro, mesa/vaga
                        disponível,...
Condições de saída: cliente satisfeito, cliente com menos dinheiro, dono
                     com mais dinheiro,...

Cena 1: cliente entra no restaurante, aguarda por lugar, senta-se
Cena 2: cliente chama empregado, pede menu, escolhe,...
  ....
Cena N: cliente chama empregado, pede conta, paga, sai.


                                                              60
Regras
Modelo psicológico do comportamento humano (regras de
produção):


              Estímulos                 Acções

É uma forma de conhecimento procedimental
                   associa informação dada com alguma acção

Neste modelo, um processador cognitivo tenta disparar as regras
activadas pelos estímulos adequados
                                É o papel do motor de inferência


                                                    61
Forma Geral
            Se Antecedente Então Consequente1
                           Senão Consequente2
       Ou

        Se Condição1 E ... E CondiçãoN
        Então Conclusão11 E ... E Conclusão 1M
        Senão Conclusão21 E ... E Conclusão 2M

As condições do antecedente podem também estar ligadas por OU:

             Condição1 E ... E CondiçãoN
                OU CondiçãoN1 E ....
                                                    62
Forma Geral
       Regra1
                Se SensorA tem valor > 50
                Então temperatura da água é muito alta
                Senão temperatura da água é normal

Alternativa (de mais fácil validação):

    Regra 1a: Se SensorA tem valor > 50
              Então temperatura da água é muito alta

    Regra 1b: Se SensorA tem valor <= 50
              Senão temperatura da água é normal
                                                         63
Antecedentes Disjuntivos
           Se A = x OU B = y Então C = k

Pode converter-se em

                Se A = x Então C = k
                Se B = y Então C = k

Vantagem
     Mais fácil o acompanhamento da inferência

                                            64
Forma Geral
Formato das regras

               regra Identificador : se LHS então RHS1

Exemplo

Regra r1: SE Bot_1=actuado E Bot_2=actuado ENTÃO Sistema_A=activado


                     LHS                              RHS




                                                         65
Regras
LHS (Left-Handed Side)
• contempla as condições que terão que ser atendidas para que a
  regra seja aplicável

• pode envolver a conjunção, disjunção e negação de termos

• os termos podem ser factos básicos ou termos gerados pelas
  conclusões de outras regras - hipóteses ou conclusões intermédias




                                                      66
Regras
RHS (Right-Handed Side)

• corresponde às conclusões ou acções que se podem obter caso as
  condições sejam verdadeiras

• alguns sistemas só permitem uma conclusão por regra (Cláusulas
  de Horn)

• outros permitem mais do que uma conclusão

• as conclusões podem ser intermédias, se entrarem no LHS de
  outras regras (também recebendo o nome de hipóteses) ou
  conclusões definitivas

                                                    67
Regras vs. Triplos OAV

  Regra 1a:Se SensorA tem valor > 50
           Então temperatura da água é muito alta

                      Se        Então
       Objecto     Sensor A     Água
       Atributo    tem valor temperatura
        Valor        > 50     muito alta



                                             68
Regras vs. Triplos OAV

• As condições e as conclusões serão
  genericamente designadas por átomos

• Os átomos podem ser:
     • Triplos Objecto|Atributo|Valor
     • Pares Atributo/Valor (objectos implícitos)




                                               69
Pares Atributo/Valor vs. Triplos OAV
Se classificação > 14                           Objectos implícitos
Então admitir ao Mestrado
                                 Se               Então
             Objecto        Classificação   Admissão Mestrado
              Valor             > 14               Sim

• Melhor
   Se classificação do aluno > 14             Objectos explícitos
   Então Aluno Estado de Admissão Mestrado = Sim
                                 Se               Então
            Objecto            Aluno              Aluno
            Atributo        Classificação   Admissão Mestrado
             Valor              > 14               Sim
                                                    70
Tipos de Regras
Relação                                    Recomendação
    Se bateria descarregada                Se o automóvel não arranca
    Então o automóvel não arrancará        Então arranjar cabos

Orientação                                 Heurística
    Se o automóvel não arranca             Se o automóvel não arranca
     E sistema de alimentação = Ok         E carro modelo Ford, 1975
    Então verificar sistema eléctrico      Então Verificar Circuito de Alimentação

Estratégia
   Se o automóvel não arranca
   Então 1º verificar sistema de alimentação
         em seguida o sistema eléctrico


                                                                71
Classificação das Regras quanto à Incerteza
Regras de Validade absoluta
      Regra da implicação usada na Lógica
        Ex: mortal (X) SE humano (X)
            má (ideia) SE
                     mau-humor (patrão) AND
                            pedir (patrão, aumento)


Regras de Validade Incerta
      Regras com grau de certeza
        Ex: Se Inflação Elevada
           Então Taxas de Juro Elevadas FC=0,8
      Regras com probabilidades associadas

                                                      72
Regras Variáveis
       Se ?X é Empregado
        E ?X Idade > 65
       Então ?X pode reformar-se.

O motor de inferência processa a memória de trabalho de modo a
encontrar factos que verifiquem ambas as condições
       João é Empregado.
       João Idade = 75.
       Maria é Empregado.
       Maria Idade = 35.

       João pode reformar-se.
                                                     73
Regras Causais vs. Regras de Diagnóstico
Uma regra de Produção numa Base de Conhecimento pode estar em
uma das seguintes formas:
   • Causas influenciam a verosimilhança de sintomas (efeitos), ou
   • Sintomas observados afectam a verosimilhança de todas as
     suas causas

Regras Causais
      R1 SE torniquete funcionou ENTÃO relva húmida (FC)
      R2 SE choveu ENTÃO relva húmida (FC)

Regra Tipo Diagnóstico
      R3 SE relva húmida ENTÃO choveu (FC)

                                                     74
Regras Causais vs. Regras de Diagnóstico
• A mistura numa mesma Base de Conhecimentos dos dois tipos de
  Regras (que aliás representam conhecimento verdadeiro) pode ser
  desastrosa.

No exemplo anterior:
 A aplicação da Regra R1 seguida de R3
   levaria a concluir que choveu porque o torniquete funcionou

• As Bases de Conhecimento devem ser consistentes e incorporar
  regras apenas um dos tipos de regras
• São preferíveis Regras do tipo Causal porque assim representa-se
  o modelo teórico de causa a efeito.
• Bases de Conhecimento com Regras Causais
                                    são ditas Baseadas em Modelos
                                                       75
Principais Propriedades da
Representação de Conhecimento com Regras
Modularidade
Cada regra define uma pequena parte do conhecimento relativamente
independente das outras regras

Incrementalidade
Novas regras podem ser acrescentadas à Base de Conhecimento de
maneira relativamente independente

Possibilidade de Modificação
Regras podem ser modificadas de maneira relativamente independnte

Transparência
Permite explicações de raciocínio (questões Como ? E Porquê ?)
                                                     76
Problemas das Representações por Regras
       Ave (X)  Deslocação ( X, Voar)
            Não está correctamente correcta porque existem excepções

Uma possível solução é a introdução de excepções e o uso da negação
por falha

Ave (X) E ¬pinguim(X) E ¬avestruz(X)  Deslocação( X, Voar)
                          Isto torna difícil gerir todas as excepções
Tratamento de excepções através de regras:
• tem a desvantagem de implicar não só acrescentar novas regras (ex.
  sobre aves que não voam) como também modificar outras regras
  (regras gerais que descrevem as aves)

                                                      77
Representação de Conhecimento com Regras
Exemplo
Base de Conhecimento para análise de um problema de inundação num
andar

Conceptualização
• Sintomas possíveis
   cozinha Ok / Com água, hall Ok / Com água, WC Ok / Com água
• Outros parâmetros
   janela aberta/fechada, choveu/não choveu        janela

• Causas (diagnósticos) possíveis
                                                  cozinha
   choveu
   fuga de água na cozinha / no WC
                                             WC         hall



                                                   78
Relacionamento dos sintomas com as causas
R1: Se hall com água
    E cozinha Ok
    Então fuga de água no WC
R2:   Se hall com água
       E WC Ok
       Então problema na cozinha
R3:   Se janela da cozinha fechada
      ou não choveu
      Então não entrou água de fora
R4:    Se não entrou água de fora
       E problema na cozinha
       Então fuga de água na cozinha
                                       79
Lógica
Lógica - forma de representação de conhecimento mais usada ao
nível de computação.

Exemplo
Na compreensão de texto em Língua Natural é usual transformar
frases em representações em lógica

Lógicas mais usuais:
   Lógica Proposicional
   Lógica de Predicados (ou Cálculo de Predicados)

Outras Lógicas:
   Lógica Modal
   Lógica Temporal
                                                     80
Lógica
Em Lógica os símbolos representam conhecimento e os operadores
são aplicados aos símbolos para dar origem a raciocínios lógicos


           Operador                   Símbolos
        Conjunção (AND)               ∧, &, ∩, .
         Disjunção (OR)                ∨, ∪ , +
         Negação (NOT)                  ¬,∼
           Implicação                   →, ⊃
          Equivalência                    ≡


                                                    81
Lógica Proposicional
Usa proposições para a representação do conhecimento e raciocínio
sobre esse mesmo conhecimento.


Exemplo

Representar através de A a proposição que indica:
                        hoje está a chover
       → A = hoje está a chover.

Se quisermos provar a verdade da proposição hoje está a chover
É necessário provar a verdade da variável A.


                                                     82
Lógica Proposicional
Tabela de Verdade da Conjunção   Tabela de Verdade da Negação
  A        B         C=A∧ B         A            C=¬A
  F        F             F          F               V
  F        V             F          V               F
  V        F             F
  V        V             V

Tabela de Verdade da Disjunção   Tabela de Verdade da Equivalência
 A        B         C=A∨ B         A        B            A≡ B
 F        F           F            F        F             V
 F        V           V            F        V             F
 V        F           V            V        F             F
 V        V           V            V        V             V

                                                    83
Lógica Proposicional
Tabela de Verdade da Implicação    AB ≡ ¬ A ∨ B

    A         B          C=A→B
    F         F            V
    F         V            V
    V         F            F
    V         V            V

Exemplo
               SE a bateria está em baixo
               ENTÃO o carro não vai arrancar




                                                   84
Algumas Equivalências
na Lógica Proposicional
Nome da Propriedade        Equivalência

Idempotência               A→B ≡ ¬A ∨ B
                           A ∧ ¬A ≡ F
                           A ∨ ¬A ≡ V
Propriedade Comutativa     A∧B≡B∧A
                           A∨B≡B∨A
Propriedade Distributiva   A ∧ (B ∨ C) ≡ (A ∧ B) ∨ (A ∧ C)
                           A ∨ (B ∧ C) ≡ (A ∨ B) ∧ (A ∨ C)
Propriedade Associativa    A ∧ (B ∧ C) ≡ (A ∧ B) ∧ C
                           A ∨ (B ∨ C) ≡ (A ∨ B) ∨ C
Absorção                   A ∨ (A ∧ B) ≡ A
                           A ∧ (A ∨ B) ≡ A
DeMorgan                   ¬ (A ∧ B) ≡ ¬A ∨ ¬B
                           ¬ (A ∨ B) ≡ ¬A ∧ ¬B

                                                         85
Limitação da Lógica Proposicional
Dificuldade em expressar conhecimento          que     necessite   de
quantificadores (todos, alguns).
Exemplo
                “todos os seres humanos são mortais”
e sabendo que
                “alguém é um ser humano”
inferir que esse
                “alguém é mortal”


                ∀C [ser_humano(C) → mortal(C)]


                                                        86
Lógica de Predicados
• Baseada no trabalho de Gottfried Frege
• Opera com predicados e argumentos
• As frases estabelecem relações entre objectos - pessoas, entidades
  físicas, conceitos
• Os predicados têm a ver com as relações
• Os argumentos têm a ver com os objectos
• Inclui os quantificadores:
               universal (∀ - qualquer) e existencial (∃ - existe)
Exemplo
Em vez de representar uma proposição através de um simbolo
              P = Portugal é um país europeu
              fica(portugal, europa) → predicado
                                                     87
Símbolos da Lógica de Predicados
Constantes - usadas para designar objectos ou propriedades dos predicados
Ex. temperatura, maria, ...
Predicados - dividem-se em duas partes: o predicado (asserção acerca do
objecto) e o argumento (representa o(s) objectos(s) da proposição)
Ex: gosta (joão, maria)
Variáveis – usadas para representar classes gerais de objectos ou propriedades
Ex: gosta (X, Y)
Funções - permitem relacionar entidades de um conjunto com um elemento
único de um outro conjunto.
Ex:           pai (joão) = antónio     mãe (joana) = maria
             amigos(pai (joão), mãe (joana)) = amigos (antónio, maria)
Estes símbolos são manipulados usando os
                                  operadores da Lógica Proposicional
                                                            88
Representação de Frases em
Lógica de Predicados
Todas as crianças gostam de gelados

         ∀C [criança(C) → gosta(C, gelado)]

Há um oceano que banha Portugal
           ∃O [oceano(O) → banha(O,portugal)]

Algumas aves migram

             ∃A [ave(A) → migra(A)]



                                                89
Raciocínio usando a Lógica de Predicados
• Requer a capacidade de inferir conclusões a partir dos factos
  disponíveis
            Através do uso dos operadores do Cálculo de Predicados

Inferência
              SE p é verdadeiro
                      E ( p → q) também é verdadeiro
                                    ENTÃO q é verdadeiro

Nova informação é inferida com base em informação conhecida
usando regras e/ou implicações
                             “modus ponens”

                                                    90
Exemplo
                                D                          C
                                A              E           B

                                              Mesa

Objectos
   cubo(a) cubo(b) cubo(d) triângulo(c) esfera(e) pega(pega) mesa(mesa)
Relações
   em_cima(a, mesa) em_cima(b, mesa) em_cima(e, mesa) em_cima(d, a)
   em_cima(c, b) estado(pega,livre)

Escrever as implicações que permitam
   – colocar um bloco em cima do outro
   – verificar se um bloco está livre
   – verificar que blocos estão por debaixo
                                                         91
Exemplo - Blocos
Colocar um bloco em cima do outro
Condições:
           Pega tem de segurar bloco a colocar em cima
           Tem de haver pelo menos um bloco livre para se colocar bloco em cima
   ∀X ∃Y [ pega_segura(X) ∧ livre(Y) → coloca_em_cima(X, Y) ]

verificar se um bloco está livre
       ∀X ( ¬ ∃Y em_cima(Y,X) → livre(X) )

verificar que blocos estão por debaixo
        ∀X ∀Y ( em_cima(Y,X) → em_baixo (X,Y) )

                                                             92
Raciocínio
Capacidade humana em trabalhar com conhecimento, factos e
estratégias de resolução de problemas por forma a obter conclusões

Entender
   – como os humanos raciocínam
   – como trabalham com a informação relativa a um dado problema

Permite
      delinear o processo de inferência num Sistema Pericial




                                                      93
Mecanismos de Raciocínio

         Indução    (do particular para o geral)

 Dados                                                 Hipóteses
          Dedução       (do geral para o particular)

                                                                    Abdução
                                                                    (gerando explicações)




                                                       Evidências




                                                                           94
Raciocínio Dedutivo
• Modo de raciocinar através do qual se parte de um princípio
  conhecido em direcção a um princípio desconhecido
• Do geral para o específico
• De uma premissa para uma conclusão lógica
Exemplo
          SE
               objecto A maior que objecto B
          E
             objecto B é maior que objecto C
          ENTÃO
             objecto A também é maior que objecto C
Lógica de Predicados
      ∀A ∀B ∀C [maior(A,B) ∧ maior(B,C) → maior(A,C)]

                                                      95
Raciocínio Indutivo
A Indução é definida como o modo de raciocinar a partir de factos
particulares na direcção de uma conclusão geral.

Exemplo
      P(a) é verdadeiro
      P(b) é verdadeiro

Então, por indução, concluímos que
                      ∀X P(X) é verdadeiro

O Raciocínio Indutivo está na base das Técnicas de Aprendizagem
usadas em Descoberta de Conhecimento a partir de grandes Bases de
dados, Ex: Traçar o perfil de clientes

                                                    96
Raciocínio Abdutivo
 • Observamos algo como sendo verdadeiro e conjecturamos sobre o que
   pode ter levado a essa observação
 • Tipo de raciocínio usado geralmente na produção de explicações
 • Não garante que se chegue a conclusões verdadeiras
         se A→ B é verdadeiro
          e B é verdadeiro
      então A também será possivelmente verdadeiro
Tal conclusão será sustentada no histórico anterior ou apenas no senso
comum.
Exemplo
               ∀X [nada(X) → molhado(X)]
Com base neste conhecimento e usando raciocínio abdutivo se nos
aparecer alguém molhado vamos admitir que esse alguém esteve a nadar
                                                        97
Modus Ponens
É a base do raciocínio dedutivo
               Se p é verdadeiro
                e ( p → q) também é verdadeiro
            então q é verdadeiro
Exemplo
               “se alguém está a nadar então está molhado”.
                    ∀X [nada(X) → molhado(X)]
                   p = nada(X) e q = molhado(X)

Se soubermos que X está a nadar e sabendo que quem nada se molha
então podemos, pelo “modus ponens”, concluir que X está molhado.


                                                       98
Modus Ponens
Exemplo
     1. Se temperatura > 38.2º então paciente tem febre
             E1 → E2
     2. Se paciente tem febre então prescrever 1 aspirina
             E2 → E3
Provar E3 assumindo que o paciente tem temperatura > 38.2º

Estado-0             Estado-1              Estado-2
1.   E1→E  2
                     1. E1→E    2
                                           1. E1→E    2

•    E → E
      2    3
                     2. E → E
                         2      3
                                           2. E → E
                                               2      3


1.   E1              3. E1                 3. E1
                     4. E2                 4. E2
                                           5. E3
                                                          99
Modus Tollens
       Se a declaração
                      se (p → q) é verdadeiro
                      e q é falso
       então podemos inferir que
                      p é falsa.
            O “modus tollens” é a base do raciocínio baseado em regras.
Exemplo
              “se alguém está a nadar então está molhado”.
                   ∀X [nada(X) → molhado(X)]
                   p = nada(X) e q = molhado(X)

Se soubermos que X não está molhado então podemos inferir que X não
está a nadar.
                                                          100
Princípio da Resolução
Estratégia de inferência com a qual se tenta provar que a negação do
objectivo ¬O não é Verdadeiro – Prova por Refutação.

Prova Automática de Teoremas baseada no Princípio da Resolução:
  Para provar A
    1. transformam-se os axiomas garantidamente verdadeiros na
       forma clausal, usando os princípios da idempotência:
       A→B ≡ ¬A ∨ B,        A ∧¬A ≡ F,       A ∨¬A ≡ V
    2. de seguida junta-se ¬A
    3. se por aplicação da regra de resolução a situação na prova
       falha
    4. conclui-se que ¬A é falso e portanto A é verdadeiro

                                                       101
Princípio da Resolução – Exercício
Exemplo
          1. Se temperatura > 38.2º então paciente tem febre
               E1 → E2 ≡ ¬ E1 ∨ E2

          2. Se paciente tem febre então prescrever 1 aspirina
                E2 → E3 ≡ ¬ E2 ∨ E3

Pretende-se provar E3, (ou seja, prescrever 1 aspirina) de acordo com o
Princípio da Resolução assumimos ¬ E3 e acrescentamos este facto à
lista de axiomas.



                                                        102
Resolução – Exercício
Estado-0
1.¬ E1 ∨ E2                  ¬ E1 ∨ E2
2.¬ E2 ∨ E3                  ¬ E2 ∨ E3
3. E1                        ¬ E1 ∨ E3
4.¬ E3
Estado-1                                    Estado-2
.....                                       ......

1. E1                  E1                   3. E1
2.¬ E3                ¬ E1 ∨ E3             4. ¬ E3
3. ¬ E1 ∨ E3          E3                    5. ¬ E1 ∨ E3
                                            6. E3
Axiomas 4 e 6 revelam uma contradição, pelo que, ¬ E3 é falso e
portanto E3 é verdadeiro                               103
Resolução – Exercício
Dados os axiomas
                      1. p
                      2. ( p ∧ q ) → r
                      3. ( s ∨ t ) → q
                      4. t
Provar → r
1º Converter para a Forma Clausal e acrescentar ¬ r
                      1. p
                      2. ¬ p ∨ ¬ q ∨ r
                      3. ¬ s ∨ q
                      4. ¬ t ∨ q
                      5. t
                      6. ¬ r
                                                      104
Resolução – Exercício
     ¬ p ∨ ¬ q ∨ r   ¬ r


             ¬ p ∨ ¬ q      p


                     ¬ q         ¬ t ∨ q


                           ¬ t       t




                                         105
Unificação
Na Lógica Proposicional é simples verificar se dois literais não podem ser
verdadeiros simultaneamente, pois L e ¬L são contraditórios

Na Lógica de Predicados este processo de “matching” dos axiomas é mais
complicado uma vez que podem conter variáveis.
Por exemplo
               homem(João) ∧ ¬ homem (João) são contraditórios
enquanto que homem(João) ∧ ¬ homem ( Spot ) não são
É então necessário um mecanismo de identificação (matching) ou de
unificação que irá tentar instanciar possíveis valores para as variáveis com
base nos axiomas existentes.
Por exemplo
                homem (X) ∧ ¬ homem (Spot ) são contraditórios pois
homem (X) e homem ( Spot ) podem ser unificados

                                                             106
Representação de Conhecimento
Exprima as seguintes frases usando a Lógica de Predicados de 1ª ordem

•   Os gatos são mamíferos
•   Todo o mamífero tem um progenitor
•   O filho de um gato é um gato
•   Teco é um gato
•   Teco é progenitor do Navalha

Prove que Navalha é um gato, pela regra de:
• Modus ponens
• Princípio da Resolução



                                                          107
Definição doa Axiomas através da
Lógica de Predicados de 1ª ordem
• Os gatos são mamíferos
                       ∀g [ gato(g) → mamifero(g) ]
• Todo o mamífero tem um progenitor
                       ∀g ∃p [ mamifero(g) → progenitor(p,g) ]
• O filho de um gato é um gato
                       ∀g [ gato(g) ∧ progenitor( g, f ) → gato(f) ]
• Teco é um gato
                       gato (Teco)
• Teco é progenitor do Navalha
                       progenitor ( Teco, Navalha)
                                                          108
Modus Ponens
                      Provar → gato(Navalha)

Estado-0
1. gato(g) → mamifero(g)
2. mamifero(g) → progenitor(p,g)
3. gato(g) ∧ progenitor( g, f ) → gato(f)
4. gato ( Teco)
5. progenitor ( Teco, Navalha)

Pelos Axiomas 3,4,5 e     Teco/g, Navalha/ f
gato ( Teco) ∧ progenitor ( Teco, Navalha) → gato ( Navalha)
6. gato ( Navalha)
                                                     109
Resolução
                     Provar → gato(Navalha)

Estado-0
    1. ¬ gato(g) ∨ mamifero (g)
    2. ¬ mamifero (g) ∨ progenitor( p, g)
    3. ¬ gato(g) ∨ ¬ progenitor( g, f) ∨ gato(f)
    4. gato ( Teco)
    5. progenitor ( Teco, Navalha)
    6. ¬gato(Navalha)




                                                   110
Resolução

¬gato( Navalha )            ¬ gato(g) ∨ ¬ progenitor( g, f ) ∨ gato(f)
                                 Navalha / f

     ¬ gato(g) ∨ ¬ progenitor( g, Navalha )          gato ( Teco)

                                               Teco / g
                    ¬ progenitor ( Teco, Navalha)         progenitor ( Teco, Navalha)




                                                                    111
Representação de Conhecimento
Considere o seguinte texto:
“ Os gatos gostam de peixe. Os gatos comem tudo do que gostam.
                    Teco é um gato”

 – Exprima as frases em Lógica de Predicados de 1ª ordem.
 – Usando a regra de resolução prove por refutação, com base no
   conhecimento anterior que “o Teco come peixe”




                                                     112
Resolução
Os gatos gostam de peixe
       ∀g [ gato(g) → gosta (g, peixe) ]
Os gatos comem tudo do que gostam
       ∀g [ gosta (g, c) → come (g, c) ]
Teco é um gato
       gato ( Teco)

Provar → come (Teco, peixe)




                                           113
Resolução
Provar → come (Teco, peixe)

Resolução

Estado-0
 1. ¬ gato(g) ∨ gosta (g, peixe)
 2. ¬ gosta (g, c) ∨ come (g, c)
 3. gato ( Teco)
 4. ¬come (Teco, peixe)




                                   114
Resolução
Provar → come (Teco, peixe)

Resolução

 ¬come (Teco, peixe)     ¬ gosta (g, c) ∨ come (g, c)


             ¬ gosta (Teco, peixe)    ¬ gato(g) ∨ gosta (g, peixe)

                            ¬ gato ( Teco)    gato (Teco)




                                                        115
Representação de Conhecimento
Represente as afirmações seguintes usando lógica de predicados de
1ª ordem
 – Um animal pesado come muito
 – Os elefantes são animais grandes
 – Todos os elefantes têm um alimento preferido
 – Dumbo é um elefante
 – Todos os animais grandes são pesados
 – O amendoim é um alimento

Provar → Dumbo come muito



                                                      116
Definição doa Axiomas através da
Lógica de Predicados de 1ª ordem
  –   ∀a [ animal (a, pesado) → come(a,muito) ]
  –    ∀a [ elefante(a) → animal (a, grande) ]
  –    ∀a ∃c [elefante(a) → alimento (c, preferido) ]
  –   elefante (Dumbo)
  –    ∀a [ animal (a, grande) → animal (a, pesado) ]
  –    alimento (amendoim)




                                                        117
Resolução
Provar → Dumbo come muito
        come(Dumbo, muito)

Estado-0
 1. ¬ animal (a,pesado) ∨ come (a, muito)
 2. ¬ elefante (a) ∨ animal (a, grande)
 3. ¬ elefante (a) ∨ alimento (c, preferido)
 4. elefante (Dumbo)
 5. ¬ animal (a, grande) ∨ animal (a, pesado)
 6. Alimento (amendoim)
 7. ¬come (Dumbo, muito)



                                                118
Resolução
Provar → come(Dumbo, muito)
8                              1
¬come (Dumbo, muito)       ¬ animal (a,pesado) ∨ come (a, muito)
                                                   5
         ¬ animal(Dumbo, pesado)           ¬ animal (a, grande) ∨ animal (a,
      pesado)                                               2
                ¬ animal (Dumbo, grande)      ¬ elefante (a) ∨ animal (a, grande)


                                                                     4
                                   ¬ elefante (Dumbo)       elefante (Dumbo)




                                                                  119

Mais conteúdo relacionado

Último

Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfcomercial400681
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfmaurocesarpaesalmeid
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdfLeloIurk1
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAHELENO FAVACHO
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxTailsonSantos1
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfHELENO FAVACHO
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxLusGlissonGud
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfHELENO FAVACHO
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfLuizaAbaAba
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...HELENO FAVACHO
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteVanessaCavalcante37
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxLuizHenriquedeAlmeid6
 

Último (20)

Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdf
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 

Destaque

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destaque (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Representação do conhecimento

  • 1. Conhecimento Termo abstracto usado para capturar a compreensão de um indivíduo num domínio específico.  área de conhecimento bem delimitada, focalizada. Volume Decisão/Acção Competência Conhecimento Informação Estruturada Dados Valor Existem várias teorias que explicam como se organiza o conhecimento humano na resolução de problemas – Vários Tipos de Conhecimento 1
  • 2. Tipos de Conhecimento • Conhecimento Procedimental • Conhecimento Declarativo • Meta-Conhecimento • Conhecimento Heurístico • Conhecimento Estrutural Representação do Conhecimento Método usado na codificação do conhecimento contido na Base de Conhecimento do Sistema Pericial Não existe uma representação única ideal para todos os tipos de conhecimento 2
  • 3. Conhecimento Procedimental • Descreve como um problema é resolvido ou como agir perante uma dada situação (como fazer). • Regras, estratégias, agendas e procedimentos são representações típicas para este tipo de conhecimento. Sangrador de Combustível OK? Sim Não Há fugas de ar de Verificar circuito de admissão ? alimentação Sim Não Reparar fugas de Descida de ar rotação? Sim Não Teste de Posição parafuso Mariposa OK? ralenti OK? Sim Não Sim Não ... Reparar válvula Teste de mariposa Compressão ... OK? Sim Não ... 3
  • 4. Conhecimento Declarativo • Descreve o que é conhecido acerca de um determinado problema. Inclui declarações (statements) que são assumidas como verdadeiras ou falsas e que descrevem um objecto ou conceito. • Corresponde a uma representação descritiva. Exemplo Fumar pode provocar cancro no pulmão. • Conhecimento Declarativo – é mais transparente – mais facilmente entendido, mais fácil de manter • Representações procedimentais – são mais eficientes, mas mais difíceis de manter 4
  • 5. Meta-Conhecimento • Conhecimento acerca do próprio conhecimento. • é usado para aceder a conhecimento mais orientado para resolver determinado problema • Aumenta a eficiência de resolução do problema dirigindo o raciocínio para o subconjunto de conhecimento mais adequado • Representado através de meta-regras – regras que descrevem como usar outras regras Exemplo Se o carro não pega E o sistema eléctrico está operacional Então usar regras relativas ao circuito de alimentação 5
  • 6. Conhecimento Heurístico • Reflecte o conhecimento obtido com toda a experiência que se detém ao lidar com um determinado tipo de problema • É obtido pela experiência prévia na resolução de um grande número de problemas de uma determinada especialidade, é essencialmente empírico • Muitas vezes assume o aspecto de regras de bom senso ou de “Rules of Thumb” Exemplo Para elaborar horários considerando salas devemos começar com as salas que impõem mais restrições; Numa máquina de pintura fazer as mudanças de tintas sempre das mais claras para as mais escuras. 6
  • 7. Conhecimento Estrutural Descreve a estruturação do conhecimento, ou seja, o modelo mental que o perito tem na resolução de um determinado tipo de problema. Pode indicar conceitos e sub-conceitos na estruturação do conhecimento. Exemplo com as anomalias no Betão Tipos de Anomalias no Betão Fissura Excesso de Ar Excesso de Água Grande grau de Silicato Tricálcio no Cimento Factores Climatéricos Temperatura Inconstante Chocho Má vibração Falta de Inertes Finos Cofragem não estanque Excesso de Inertes Grossos .... 7
  • 8. Tipos de Conhecimento Regras Estratégias Agendas Conhecimento Procedimental Procedimentos Conceitos Conhecimento Declarativo Objectos Factos Conhecimento acerca de outros tipos de Metaconhecimento conhecimento e como usá-lo Conhecimento Heurístico Regras de bom-senso Conjuntos de Regras Conhecimento Estrutural Relações entre Conceitos Relações entre Objectos 8
  • 9. Conhecimento do Perito • não e geralmente baseado em definições claras nem em algoritmos precisos • é composto por teorias de carácter geral, mas também por regras de dedo, estratégias e truques aprendidos com a experiência ...  heurísticas ... utilizadas para simplificar a resolução de problemas, para identificar situações comuns • é muito dependente do domínio • pode estar continuamente sujeito a mudança  Consequências Separação explícita entre conhecimento e algoritmos para aplicação do conhecimento Sistema Pericial = Conhecimento + Inferência 9
  • 10. Níveis de Conhecimento Conhecimento Superficial • faz uma descrição básica (superficial) do conhecimento Exemplo SE o depósito de gasolina está vazio ENTÃO o carro não irá funcionar • é muito limitado, por exemplo, explicar a alguém os fenómenos que se passam • não traz valor acrescentado por ser demasiadamente genérico e básico • é um tipo de conhecimento que tira relações causa-efeito - “caixa preta” (no sentido de não se observar o interior dos sistemas) 10
  • 11. Níveis de Conhecimento Conhecimento Profundo • considera a estrutura causal e interna de um sistema e contempla a interacção entre os componentes desse sistema • É mais difícil de adquirir, representar e validar • A representação com redes semânticas ou enquadramentos (frames) é a mais adequada. 11
  • 12. Representação do Conhecimento Necessário formalismos: • Utilizáveis em computador • Com forma próxima da do conhecimento do perito • Que facilitem as operações de recolha, organização, manutenção, validação .... .... transparentes 12
  • 13. Representação do Conhecimento Alguns formalismos de representação do conhecimento mais vocacionados para o desenvolvimento de Sistemas Periciais : • Tripletos Objecto-Atributo-Valor e Listas de Propriedades • Relações de Classificação e Pertença (IS-A e IS-PART) • Redes Semânticas • Enquadramentos (Frames) • Guiões • Regras • Lógica 13
  • 14. Tripletos Objecto-Atributo-Valor (O-A-V) Caracterizam os valores de determinados atributos de um dado objecto O objecto pode ser uma entidade física (carro) ou uma entidade conceptual (empréstimo) has is Objecto Atributo Valor 14
  • 15. Tripletos Objecto-Atributo-Valor (O-A-V) Exemplo Tripletos associados a um carro carro-marca-opel carro-modelo-astra carro-cilindrada-1400 carro-nºportas-4 carro-côr-verde ... Os tripletos podem vir afectados de valores numéricos que expressam a certeza, ou incerteza, que se tem no conhecimento em causa. Exemplo Previsão do tempo é de chuva com 60% de certeza (previsão- tempo-chuva – CF = 0.6) 15
  • 16. Listas de Propriedades No exemplo carro-marca-opel carro-modelo-astra carro-cilindrada-1400 carro-nºportas-4 carro-côr-verde ... O nome do objecto aparece muitas vezes, visto que temos muitos atributos para o mesmo objecto. Nessas situações podemos usar listas de propriedades, nas quais para um dado objecto temos uma lista de pares atributo‑valor. Lista de propriedades para o carro: carro-[marca-opel, modelo-astra, cilindrada-1400, nºportas-4, côr-verde,...]. 16
  • 17. Limitações • Os tripletos e as listas de propriedades têm limitações quando se pretende representar conhecimento declarativo sobre atributos de objectos que estejam em modificação. • Nessas situações o conhecimento é dinâmico e temos que modificar o valor de um atributo. Exemplo tripletos dinâmicos que se referem ao estado de um disjuntor (aberto ou fechado) e ao modo de operação de uma linha (manual ou automático): disjuntor_D - estado-aberto. linha_L - modo_operação - manual. 17
  • 18. Relações de Classificação (IS-A) Animal Selvagem IS-A IS-A Animal IS-A IS-A IS-A IS-A Canino Animal Doméstico Felino IS-A IS-A IS-A IS-A IS-A IS-A Lobo Cão Gato Tigre 18
  • 19. Relações de Pertença (IS-PART) As relações de pertença (IS-PART) organizam o conhecimento através da composição ou decomposição de componentes. Mobiliário de Cozinha IS-PART IS-PART Cadeira Mesa IS-PART IS-PART IS-PART IS-PART IS-PART Pernas da Cadeira Encosto Assento Pernas da Mesa Tampo 19
  • 20. Relações de Classificação (IS-A) e de Pertença (IS-PART) As relações IS-A e IS-PART podem ser combinadas na mesma representação. Computador IS-PART IS-PART IS-PART CPU teclado monitor ....... ....... IS-A Pentium 4 ....... 20
  • 21. Redes Semânticas • São um método de representação do conhecimento através de um grafo directo composto por nós e arcos • Os nós representam objectos (físicos ou abstractos), as suas propriedades e valores • Os arcos representam relações entre os nós • As relações IS-A e IS-PART são vulgarmente usadas como etiquetas dos arcos, podem ser usadas outras etiquetas à nossa escolha (tem, desloca-se, respira, etc) que capturam conhecimento 21
  • 22. Redes Semânticas A sas Ar te m r e s p ir a IS -A IS -A IS -A A m a r e lu s C a n á r io A ve A n im a l d e s lo c a ç ã o IS -A IS -A P in g u im B la c k & W h it e Voo d e s lo c a ç ã o Andar 22
  • 23. Modo de Operação Quando se coloca uma questão a um Nó, este procura nos seus arcos locais por uma etiqueta que coincida com a questão se não existir procura a resposta via as suas ligações IS_A, ou seja, passa a questão até um Nó que contenha um arco com a resposta. deslocação Amarelus ? deslocação deslocação deslocação Utilizador Amarelus Canário Ave vôo vôo vôo deslocação Vôo 23
  • 24. Inferência sobre Redes Semânticas Para descrever o processo de inferência nas Redes Semânticas vamos usar lógica: Cada ligação Relação Obj1 Obj2 É traduzido para relação (Obj1,Obj2) Deslocação Amarelus ? Is_a (Amarelus,Canário). Is_a (Canário, Ave). deslocação(Ave,Voo). 24
  • 25. Inferência sobre Redes Semânticas O tratamento de excepções no mecanismo de herança faz-se impondo uma restrição ao mecanismo de herança  algo dito explicitamente sobrepõe-se aos factos herdados deslocação Black&White? Is_a (Black&White,Pinguim). deslocação(Pinguim,andar). Is_a (Pinguim, Ave). Is_a (Ave,animal). respira(Ave,Ar).  herda todas as características da superclasse excepto aquelas explícitas no próprio Nó 25
  • 26. Características Redes Semânticas • simplicidade de representação - devido às características de herança – Amarelus herda todas as propriedades de Aves • as Redes Semânticas estão na origem da Programação Orientada a Objectos • permitem uma redução no tempo de pesquisa, visto que os nós estão directamente ligados aos nós vizinhos com interesse Desvantagens: • podem permitir inferências inválidas • não têm uma norma de interpretação - a interpretação depende dos programas que a manipulam. 26
  • 27. Exemplo • Uma ave é um animal. • A maneira normal de movimentação das aves é voar. • Uma ave está activa durante o dia. • Um albatroz é uma ave. • Uma albatroz é preto e branco. • O tamanho normal do albatroz é 115 cm. • O Alberto é um albatroz. • O tamanho do Alberto é 120 cm. • Um pinguim é uma ave. • Um pinguim é branco e preto. • A maneira normal de movimentação dos pinguins é andar. • O Tweety é um pinguim. Questões: – Qual o método de movimentação do Alberto ? – Qual o método de movimentação do Tweety ? 27
  • 28. Exemplo andar deslocação IS-A diurna tweety Pinguim IS-A actividade cor Preto e IS-A Ave Animal Branco cor deslocação IS-A IS-A Alberto Albatroz Vôo tamanho tamanho 120 cm 115 cm 28
  • 29. Enquadramentos (Frames) • Introduzido em 1975 por Marvin Minsky • Permitem representar conhecimento de um conceito ou objecto • Um enquadramento é uma versão enriquecida de um registo ou de um objecto: • Propriedades • Herança: características, comportamentos • É possível criar Instâncias dos Enquadramentos • Adequados para sistemas complexos, de larga escala, envolvendo valores por defeito e quantidades elevadas de dados conhecidos a-priori 29
  • 30. Frames - Campos • Identificador • Slots – são representados em gavetas (slots) – correspondem aos atributos – Cada slot tem • identificação • valor que toma por defeito (quando nenhum valor foi ainda atribuído) • valor actual (espaço onde são guardadas as alterações ao atributo) Nome do frame Nome do slot 1 Valor por defeito - slot 1 Valor actual slot 1 Nome do slot 2 Valor por defeito - slot 2 Valor actual slot 2 30
  • 31. Definição de Frames em LPA Flex frame <nome_do_frame> [{is a|is an|is a kind of} <frame_pai>] [,<outro_frame_pai>,…] [;] [ [ default <slot> {is|is a|are} <valor> ] [ and default <outro_slot> {is|is a|are} <outro_valor> [and … ] ] [;] [ inherit <slot> from <nome_do_frame_herda> [ and do not inherit <slot> [ and …] ] ] ]. • nome_do_frame é o nome do frame (atómico) • frame_pai, outro_frame_pai e nome_do_frame_herda são nomes de frames (com o mesmo formato) definidos noutro local • slot e outro_slot são identificações dos slots pertencentes ao frame nome_do_frame. • valor e outro_valor são valores por defeito que os slots tomam respectivamente. 31
  • 32. Relações entre Frames Permitem implementar características de herança entre Frames Tipos de Relações • “is a” ou “is an” : relação de dependência hierárquica entre frames • “inherit” : herança de slot(s) de frames que não estão na mesma linha de hierarquia • “do not inherit” : ausência de herança de slot(s) de frame(s) hierarquicamente superiores • um slot ser ele mesmo um frame 32
  • 33. “Is a” Simples O frame_filho herda todos os slots de frame_pai frame_pai slot_1 valor_1 slot_2 valor_2 Is a frame_filho frame frame_pai default slot_1 is valor_1 and slot_3 valor_3 default slot_2 is valor_2. slot_4 valor_4 frame frame_filho is a frame_pai default slot_3 is valor_3 and default slot_4 is valor_4. 33
  • 34. “Is a” Múltiplo Exemplo Mamífero pele pelo habitat terra frame mamifero movimento anda,nada default pele is pelo and default habitat is terra and Is a default movimento are {anda,nada}. Felino cauda longa frame felino is a mamifero default cauda is longa and pernas 4 default pernas are 4. 34
  • 35. “Inherit” Herança de slot(s) de frames que não estão na mesma linha de hierarquia frame_pai outro_frame slot_1 valor_1 slot_3 valor_3 slot_2 valor_2 slot_4 valor_4 Is a inherit frame_filho frame frame_pai default slot_1 is valor_1 and slot_5 valor_5 default slot_2 is valor_2. slot_6 valor_6 frame outro_frame default slot_3 is valor_3 and default slot_4 is valor_4. frame frame_filho is a frame_pai default slot_5 is valor_5 and default slot_6 is valor_6 ; inherit slot_4 from outro_frame. 35
  • 36. “Inherit” - Exemplo Pássaro Mamífero pele penas pele pelo habitat árvore habitat terra movimento voa movimento anda,nada Is a inherit frame passaro Pinguim .... pele lisa frame mamifero habitat terra ...... frame pinguim is a passaro default pele is lisa and default habitat is terra ; inherit movimento from mamifero. 36
  • 37. “do not inherit” Ausência de herança de slot(s) de frame(s) hierarquicamente superiores frame_pai slot_1 valor_1 slot_2 valor_2 frame frame_pai default slot_1 is valor_1 and Is a Do not inherit default slot_2 is valor_2. frame_filho frame frame_filho is a frame_pai slot_3 valor_3 default slot_3 is valor_3 and slot_4 valor_4 default slot_4 is valor_4 ; do not inherit slot_2. 37
  • 38. “do not Inherit” - Exemplo Pássaro pele penas habitat árvore movimento voa Is a Do not inherit frame passaro Pinguim default pele is penas pele lisa default habitat is arvore and habitat terra default movimento is voa; frame pinguim is a passaro default pele is lisa and default habitat is terra ; do not inherit movimento. 38
  • 39. Um slot como Frame O slot tem como valor por defeito o nome de um frame que pode depois ser acedido como tal frame_1 frame_2 slot_1 slot_3 valor_3 slot_2 valor_2 slot_4 valor_4 frame frame_1 default slot_1 is frame_2 and default slot_2 is valor_2. frame frame_2 default slot_3 is valor_3 and default slot_4 is valor_4. 39
  • 40. Exercício Definir em termos de frames em LPA-flex a estrutura Empregado nome '' morada '' vencimento 0 Is an Is a Is a Programador Relações Públicas categoria prog categoria rel_pub num_pr 0 Gestor de Projecto categoria gest_proj Projecto identificacao '' lista_prog nothing sistema '' linguagem '' gestor '' rel_pub '' estado 'em construção' 40
  • 41. frame empregado frame projecto default nome is '' and default identificacao is '' and default morada is '' and default lista_prog is nothing and default vencimento is 0. default sistema is '' and frame programador is an empregado default linguagem is '' and default categoria is prog. default gestor is '' and default rel_pub is '' and frame 'gestor de projecto' is an empregado default estado is 'em construcao'. default categoria is gest_proj. frame 'relacoes publicas' is an empregado default categoria is rel_pub and default num_pr is 0. 41
  • 42. Instância de um Frame • é um elemento do conjunto que o frame representa, ou uma particularização da classe • podem ser vistas como frames cujos slots estão restringidos apenas ao valor actual • as instâncias, contrariamente aos frames, só podem ter um pai • é possível introduzir novos atributos a instâncias Frame Instância Nome do Enquadramento Tweety Nome do Ave Enquadramento Classe Ave Propriedades Nº Asas 2 Propriedades Cor Branco Voa Verd Nº Asas 2 Actividade Desc Voa Falso Actividade Desc 42
  • 43. Definição de Instância As instâncias podem ser definidas: • no programa • em execução (através de acções) Definição no programa instance <nome_da_instancia> [ is a | is an | is a kind of | is an instance of <nome_do_frame> ] [;] [ [ <slot> is|is a|are <valor> ] [ and <outro_slot> is|is a|are <outro_valor> [and … ] ] [;] [ inherit <slot> from <nome_do_frame_herda> [ and do not inherit <slot> [ and …] ] ] ]. Exemplo instance Tweety is a passaro; Cada vez que se tenha de criar uma movimento are {voa, nada}; nova instância é necessário: cor is branco&preto. • acrescentar a instância ao programa • reinicia-lo  ineficiente ! 43
  • 44. Questões e Respostas Permitem a comunicação entre o LPA Flex e o utilizador Tipos de questões • Questões de menu question <nome_da questão> <Texto a apresentar pela questão> ; choose {one | some} of <grupo_de_escolha>. • Questões de introdução question <nome_da questão> <Texto a apresentar pela questão> ; input {number | name | set}. 44
  • 45. Questões e Respostas - Exemplos Questão de Menu group tipos_hobbies estudar, ler, praticar_desporto. question tempos_livres O que faz nos seus tempos livres ? ; choose some of tipos_hobbies. Questão de introdução question int_numero Introduza um numero ; input number. 45
  • 46. Acções • São uma colecção de directivas para execução • correspondem aos predicados em PROLOG (sintaxe diferente) • só existe uma definição possível para cada acção • uma acção pode ter um número arbitrário de argumentos • são úteis para aceder ou mostrar valores de slots, criar instâncias Sintaxe action <nome_da_acção> do <directiva_1> [ and <directiva_2> [ and … ] ]. 46
  • 47. Acções % Grupos group animais mamifero, passaro, felino, pinguim. % Questões Acção para criar uma instância em execução de Question escolher_animal qualquer tipo de animal Escolha o animal; choose some of animais. action cria_animal (TipoAnimal , NomeAnimal ) question introduzir_nome do ask escolher_animal Introduza o nome; and check that TipoAnimal is escolher_animal input name and ask introduzir_nome and check that NomeAnimal is introduzir_nome and NomeAnimal is a new TipoAnimal. 47
  • 48. Programação gerida por dados Associados aos Frames existem procedimentos que são activados sempre que são realizadas operações de actualização, acesso ou criação de uma instância do Frame. Tipos de procedimentos geridos por dados: • Launches • Constraints • Demons • Watchdogs 48
  • 49. Programação gerida por dados procedimentos geridos por dados frames slots acesso actualização antes depois launches watchdogs constraints demons 49
  • 50. Launch Procedimento gerido por dados invocado sempre que uma nova instância de um qualquer frame é criada. Quando uma nova instância é criada, todas as launches existentes são verificadas e aquelas cujas condições se verifiquem são executadas. É composto por três partes distintas: • Contexto: teste para verificação de uma condição (qual o frame de que foi criada a instância) • Teste: um teste de condições para verificar se o launch deve actuar • Acção: uma série de comandos a serem executados se todas as condições forem satisfeitas. 50
  • 51. Launch Sintaxe launch <nome_da_launch> when [the] <{valor | variável}> is a new < nome_do_frame > [ and <condiçao> [and …] ] then <acção_1> [ and <acção_2> [ and … ] ]. Exemplo frame empregado default sexo is masculino. launch novo_empregado when Pessoa is a new empregado and sexo of Pessoa is masculino then questoes_sexo_masculino( Pessoa ). instance pedro is an empregado. 51
  • 52. Constraint • Uma restrição é algo que afecta um slot individualmente • é implementada de forma a que restrinja a alteração ao conteúdo do slot da forma desejada • é activada sempre que um determinado slot esteja prestes a ser alterado, sendo invocada imediatamente antes do conteúdo do slot ser realmente alterado, para validar a alteração É composto por três partes distintas: • Contexto: teste para verificação de uma condição (qual o slot a ser restringido) • Teste: um teste de condições para verificar se a restrição deve actuar • Erro: uma série de comandos a serem executados se as restrições não forem satisfeitas. 52
  • 53. Constraint Sintaxe constraint <nome_da_restrição> when [the] <slot > [ of < nome_do_frame> ] changes to <{valor|variável}> [ and <condiçao> [and …] ] then check [that] <verificação_1> [ and < verificação _2> [ and … ] ] [ otherwise <acção_1> [ and <acção_2> [ and … ] ] ]. Exemplo frame empregado default sexo is masculino. constraint tipo_sexo when the sexo of Pessoa changes to S and Pessoa is some empregado then check that S is included in {masculino, feminino} otherwise nl and write(' Nao e'' possivel' ) and nl. instance pedro is an empregado. 53
  • 54. Demon • é invocada sempre que existe alteração a um determinado valor de um qualquer atributo, • É executada imediatamente depois da alteração ter acontecido • não restringe a alteração, existe apenas para invocar uma acção depois da alteração ocorrer É composta por três partes distintas: • Contexto: teste para verificação de uma condição (qual o slot a provocar acções ) • Teste: um teste de condições • Acção: uma série de comandos a serem executados se as restrições não forem satisfeitas. 54
  • 55. Demon Sintaxe demon <nome_da_demon> when [the] <slot> [ of < nome_do_frame> ] [changes from <{valor|variável}> ] to {valor|variável}> [ and <condiçao> [and …] ] then <acção_1> [ and <acção_2> [ and … ] ] ]. Exemplo frame empregado default sexo is masculino. demon qual_sexo when the sexo of Pessoa changes from S1 to S2 and Pessoa is some empregado and S1 is different from S2 then write(' A mudanca de sexo e'' pouco habitual!' ) and nl. 55
  • 56. Watchdog • implementam restrições de acesso aos valores dos atributos • sempre que um valor de um determinado atributo é pedido, e imediatamente antes deste ser fornecido, verificam automaticamente as condições de acesso • baseiam o seu funcionamento em condições que permitem ou não a disponibilização de informação. É composto por três partes distintas: • Contexto: teste para verificação de uma condição (qual o slot a ter restrições de acesso ) • Teste: um teste de condições para verificar se a restrição deve actuar • Erro: uma série de comandos a serem executados se restrições não forem satisfeitas. 56
  • 57. Watchdog Sintaxe watchdog <nome_do_watchdog> when [the] <slot > [ of < nome_do_frame> ] is requested [ and <condiçao> [and …] ] then check [that] <verificação_1> [ and < verificação _2> [ and … ] ] [ otherwise <acção_1> [ and <acção_2> [ and … ] ] ]. Exemplo frame conta default saldo is 0. frame utilizador default nome is '' and default acesso is 0. watchdog seguranca_de_conta when the saldo of the Conta is requested and Conta is some conta then check that the acesso of utilizador is above 99 otherwise nl and write( 'Acesso negado ao utilizador ' ) and write( utilizador`s nome ). 57
  • 58. Frames • facilitam o processamento orientado pelas expectativas, através do uso de procedimentos geridos por dados, ficam num estado de espera até serem realmente necessários • permitem uma boa organização do conhecimento • são auto-guiáveis, ou seja, eles são capazes, por si só, de determinar quando devem ser aplicados, se não forem aplicáveis podem sugerir outros Enquadramentos que o sejam. • permitem guardar valores dinâmicos Desvantagens • são pouco adequados a novas situações • a explicitação de conhecimento heurístico, comum em regras, é complexa 58
  • 59. Guiões (Scripts) Especificam uma sequência estereotipada de acontecimentos que normalmente acontecem e que se seguem para representar conhecimento procedimental. Contêm um conjunto de “slots” dos seguintes tipos: – Condições de entrada – que devem ser atendidas para que os eventos descritos no guião possam ocorrer – Resultados – que irão ser verdadeiros após a ocorrência dos eventos descritos no guião – Objectos – representando objectos envolvidos nos eventos do guião – Participantes – representando entidades que estão envolvidas nos eventos do guião – Cenas – sequências de eventos que ocorrem São adequados: – para os casos em que temos sequências tipificadas (por exemplo, as fases da análise de um incidente) – para descrever planos que devem ser seguidos (por exemplo, os tratamentos a seguir para a cura de uma doença). 59
  • 60. Guiões (Scripts) Participantes: cliente, empregado, dono,... Objectos: mesa, cadeira, refeição, .... Condições de entrada: cliente com apetite e dinheiro, mesa/vaga disponível,... Condições de saída: cliente satisfeito, cliente com menos dinheiro, dono com mais dinheiro,... Cena 1: cliente entra no restaurante, aguarda por lugar, senta-se Cena 2: cliente chama empregado, pede menu, escolhe,... .... Cena N: cliente chama empregado, pede conta, paga, sai. 60
  • 61. Regras Modelo psicológico do comportamento humano (regras de produção): Estímulos Acções É uma forma de conhecimento procedimental  associa informação dada com alguma acção Neste modelo, um processador cognitivo tenta disparar as regras activadas pelos estímulos adequados  É o papel do motor de inferência 61
  • 62. Forma Geral Se Antecedente Então Consequente1 Senão Consequente2 Ou Se Condição1 E ... E CondiçãoN Então Conclusão11 E ... E Conclusão 1M Senão Conclusão21 E ... E Conclusão 2M As condições do antecedente podem também estar ligadas por OU: Condição1 E ... E CondiçãoN OU CondiçãoN1 E .... 62
  • 63. Forma Geral Regra1 Se SensorA tem valor > 50 Então temperatura da água é muito alta Senão temperatura da água é normal Alternativa (de mais fácil validação): Regra 1a: Se SensorA tem valor > 50 Então temperatura da água é muito alta Regra 1b: Se SensorA tem valor <= 50 Senão temperatura da água é normal 63
  • 64. Antecedentes Disjuntivos Se A = x OU B = y Então C = k Pode converter-se em Se A = x Então C = k Se B = y Então C = k Vantagem Mais fácil o acompanhamento da inferência 64
  • 65. Forma Geral Formato das regras regra Identificador : se LHS então RHS1 Exemplo Regra r1: SE Bot_1=actuado E Bot_2=actuado ENTÃO Sistema_A=activado LHS RHS 65
  • 66. Regras LHS (Left-Handed Side) • contempla as condições que terão que ser atendidas para que a regra seja aplicável • pode envolver a conjunção, disjunção e negação de termos • os termos podem ser factos básicos ou termos gerados pelas conclusões de outras regras - hipóteses ou conclusões intermédias 66
  • 67. Regras RHS (Right-Handed Side) • corresponde às conclusões ou acções que se podem obter caso as condições sejam verdadeiras • alguns sistemas só permitem uma conclusão por regra (Cláusulas de Horn) • outros permitem mais do que uma conclusão • as conclusões podem ser intermédias, se entrarem no LHS de outras regras (também recebendo o nome de hipóteses) ou conclusões definitivas 67
  • 68. Regras vs. Triplos OAV Regra 1a:Se SensorA tem valor > 50 Então temperatura da água é muito alta Se Então Objecto Sensor A Água Atributo tem valor temperatura Valor > 50 muito alta 68
  • 69. Regras vs. Triplos OAV • As condições e as conclusões serão genericamente designadas por átomos • Os átomos podem ser: • Triplos Objecto|Atributo|Valor • Pares Atributo/Valor (objectos implícitos) 69
  • 70. Pares Atributo/Valor vs. Triplos OAV Se classificação > 14 Objectos implícitos Então admitir ao Mestrado Se Então Objecto Classificação Admissão Mestrado Valor > 14 Sim • Melhor Se classificação do aluno > 14 Objectos explícitos Então Aluno Estado de Admissão Mestrado = Sim Se Então Objecto Aluno Aluno Atributo Classificação Admissão Mestrado Valor > 14 Sim 70
  • 71. Tipos de Regras Relação Recomendação Se bateria descarregada Se o automóvel não arranca Então o automóvel não arrancará Então arranjar cabos Orientação Heurística Se o automóvel não arranca Se o automóvel não arranca E sistema de alimentação = Ok E carro modelo Ford, 1975 Então verificar sistema eléctrico Então Verificar Circuito de Alimentação Estratégia Se o automóvel não arranca Então 1º verificar sistema de alimentação em seguida o sistema eléctrico 71
  • 72. Classificação das Regras quanto à Incerteza Regras de Validade absoluta Regra da implicação usada na Lógica Ex: mortal (X) SE humano (X) má (ideia) SE mau-humor (patrão) AND pedir (patrão, aumento) Regras de Validade Incerta Regras com grau de certeza Ex: Se Inflação Elevada Então Taxas de Juro Elevadas FC=0,8 Regras com probabilidades associadas 72
  • 73. Regras Variáveis Se ?X é Empregado E ?X Idade > 65 Então ?X pode reformar-se. O motor de inferência processa a memória de trabalho de modo a encontrar factos que verifiquem ambas as condições João é Empregado. João Idade = 75. Maria é Empregado. Maria Idade = 35. João pode reformar-se. 73
  • 74. Regras Causais vs. Regras de Diagnóstico Uma regra de Produção numa Base de Conhecimento pode estar em uma das seguintes formas: • Causas influenciam a verosimilhança de sintomas (efeitos), ou • Sintomas observados afectam a verosimilhança de todas as suas causas Regras Causais R1 SE torniquete funcionou ENTÃO relva húmida (FC) R2 SE choveu ENTÃO relva húmida (FC) Regra Tipo Diagnóstico R3 SE relva húmida ENTÃO choveu (FC) 74
  • 75. Regras Causais vs. Regras de Diagnóstico • A mistura numa mesma Base de Conhecimentos dos dois tipos de Regras (que aliás representam conhecimento verdadeiro) pode ser desastrosa. No exemplo anterior: A aplicação da Regra R1 seguida de R3  levaria a concluir que choveu porque o torniquete funcionou • As Bases de Conhecimento devem ser consistentes e incorporar regras apenas um dos tipos de regras • São preferíveis Regras do tipo Causal porque assim representa-se o modelo teórico de causa a efeito. • Bases de Conhecimento com Regras Causais são ditas Baseadas em Modelos 75
  • 76. Principais Propriedades da Representação de Conhecimento com Regras Modularidade Cada regra define uma pequena parte do conhecimento relativamente independente das outras regras Incrementalidade Novas regras podem ser acrescentadas à Base de Conhecimento de maneira relativamente independente Possibilidade de Modificação Regras podem ser modificadas de maneira relativamente independnte Transparência Permite explicações de raciocínio (questões Como ? E Porquê ?) 76
  • 77. Problemas das Representações por Regras Ave (X)  Deslocação ( X, Voar) Não está correctamente correcta porque existem excepções Uma possível solução é a introdução de excepções e o uso da negação por falha Ave (X) E ¬pinguim(X) E ¬avestruz(X)  Deslocação( X, Voar)  Isto torna difícil gerir todas as excepções Tratamento de excepções através de regras: • tem a desvantagem de implicar não só acrescentar novas regras (ex. sobre aves que não voam) como também modificar outras regras (regras gerais que descrevem as aves) 77
  • 78. Representação de Conhecimento com Regras Exemplo Base de Conhecimento para análise de um problema de inundação num andar Conceptualização • Sintomas possíveis cozinha Ok / Com água, hall Ok / Com água, WC Ok / Com água • Outros parâmetros janela aberta/fechada, choveu/não choveu janela • Causas (diagnósticos) possíveis cozinha choveu fuga de água na cozinha / no WC WC hall 78
  • 79. Relacionamento dos sintomas com as causas R1: Se hall com água E cozinha Ok Então fuga de água no WC R2: Se hall com água E WC Ok Então problema na cozinha R3: Se janela da cozinha fechada ou não choveu Então não entrou água de fora R4: Se não entrou água de fora E problema na cozinha Então fuga de água na cozinha 79
  • 80. Lógica Lógica - forma de representação de conhecimento mais usada ao nível de computação. Exemplo Na compreensão de texto em Língua Natural é usual transformar frases em representações em lógica Lógicas mais usuais: Lógica Proposicional Lógica de Predicados (ou Cálculo de Predicados) Outras Lógicas: Lógica Modal Lógica Temporal 80
  • 81. Lógica Em Lógica os símbolos representam conhecimento e os operadores são aplicados aos símbolos para dar origem a raciocínios lógicos Operador Símbolos Conjunção (AND) ∧, &, ∩, . Disjunção (OR) ∨, ∪ , + Negação (NOT) ¬,∼ Implicação →, ⊃ Equivalência ≡ 81
  • 82. Lógica Proposicional Usa proposições para a representação do conhecimento e raciocínio sobre esse mesmo conhecimento. Exemplo Representar através de A a proposição que indica: hoje está a chover → A = hoje está a chover. Se quisermos provar a verdade da proposição hoje está a chover É necessário provar a verdade da variável A. 82
  • 83. Lógica Proposicional Tabela de Verdade da Conjunção Tabela de Verdade da Negação A B C=A∧ B A C=¬A F F F F V F V F V F V F F V V V Tabela de Verdade da Disjunção Tabela de Verdade da Equivalência A B C=A∨ B A B A≡ B F F F F F V F V V F V F V F V V F F V V V V V V 83
  • 84. Lógica Proposicional Tabela de Verdade da Implicação AB ≡ ¬ A ∨ B A B C=A→B F F V F V V V F F V V V Exemplo SE a bateria está em baixo ENTÃO o carro não vai arrancar 84
  • 85. Algumas Equivalências na Lógica Proposicional Nome da Propriedade Equivalência Idempotência A→B ≡ ¬A ∨ B A ∧ ¬A ≡ F A ∨ ¬A ≡ V Propriedade Comutativa A∧B≡B∧A A∨B≡B∨A Propriedade Distributiva A ∧ (B ∨ C) ≡ (A ∧ B) ∨ (A ∧ C) A ∨ (B ∧ C) ≡ (A ∨ B) ∧ (A ∨ C) Propriedade Associativa A ∧ (B ∧ C) ≡ (A ∧ B) ∧ C A ∨ (B ∨ C) ≡ (A ∨ B) ∨ C Absorção A ∨ (A ∧ B) ≡ A A ∧ (A ∨ B) ≡ A DeMorgan ¬ (A ∧ B) ≡ ¬A ∨ ¬B ¬ (A ∨ B) ≡ ¬A ∧ ¬B 85
  • 86. Limitação da Lógica Proposicional Dificuldade em expressar conhecimento que necessite de quantificadores (todos, alguns). Exemplo “todos os seres humanos são mortais” e sabendo que “alguém é um ser humano” inferir que esse “alguém é mortal” ∀C [ser_humano(C) → mortal(C)] 86
  • 87. Lógica de Predicados • Baseada no trabalho de Gottfried Frege • Opera com predicados e argumentos • As frases estabelecem relações entre objectos - pessoas, entidades físicas, conceitos • Os predicados têm a ver com as relações • Os argumentos têm a ver com os objectos • Inclui os quantificadores: universal (∀ - qualquer) e existencial (∃ - existe) Exemplo Em vez de representar uma proposição através de um simbolo P = Portugal é um país europeu fica(portugal, europa) → predicado 87
  • 88. Símbolos da Lógica de Predicados Constantes - usadas para designar objectos ou propriedades dos predicados Ex. temperatura, maria, ... Predicados - dividem-se em duas partes: o predicado (asserção acerca do objecto) e o argumento (representa o(s) objectos(s) da proposição) Ex: gosta (joão, maria) Variáveis – usadas para representar classes gerais de objectos ou propriedades Ex: gosta (X, Y) Funções - permitem relacionar entidades de um conjunto com um elemento único de um outro conjunto. Ex: pai (joão) = antónio mãe (joana) = maria amigos(pai (joão), mãe (joana)) = amigos (antónio, maria) Estes símbolos são manipulados usando os operadores da Lógica Proposicional 88
  • 89. Representação de Frases em Lógica de Predicados Todas as crianças gostam de gelados ∀C [criança(C) → gosta(C, gelado)] Há um oceano que banha Portugal ∃O [oceano(O) → banha(O,portugal)] Algumas aves migram ∃A [ave(A) → migra(A)] 89
  • 90. Raciocínio usando a Lógica de Predicados • Requer a capacidade de inferir conclusões a partir dos factos disponíveis  Através do uso dos operadores do Cálculo de Predicados Inferência SE p é verdadeiro E ( p → q) também é verdadeiro ENTÃO q é verdadeiro Nova informação é inferida com base em informação conhecida usando regras e/ou implicações “modus ponens” 90
  • 91. Exemplo D C A E B Mesa Objectos cubo(a) cubo(b) cubo(d) triângulo(c) esfera(e) pega(pega) mesa(mesa) Relações em_cima(a, mesa) em_cima(b, mesa) em_cima(e, mesa) em_cima(d, a) em_cima(c, b) estado(pega,livre) Escrever as implicações que permitam – colocar um bloco em cima do outro – verificar se um bloco está livre – verificar que blocos estão por debaixo 91
  • 92. Exemplo - Blocos Colocar um bloco em cima do outro Condições: Pega tem de segurar bloco a colocar em cima Tem de haver pelo menos um bloco livre para se colocar bloco em cima ∀X ∃Y [ pega_segura(X) ∧ livre(Y) → coloca_em_cima(X, Y) ] verificar se um bloco está livre ∀X ( ¬ ∃Y em_cima(Y,X) → livre(X) ) verificar que blocos estão por debaixo ∀X ∀Y ( em_cima(Y,X) → em_baixo (X,Y) ) 92
  • 93. Raciocínio Capacidade humana em trabalhar com conhecimento, factos e estratégias de resolução de problemas por forma a obter conclusões Entender – como os humanos raciocínam – como trabalham com a informação relativa a um dado problema Permite delinear o processo de inferência num Sistema Pericial 93
  • 94. Mecanismos de Raciocínio Indução (do particular para o geral) Dados Hipóteses Dedução (do geral para o particular) Abdução (gerando explicações) Evidências 94
  • 95. Raciocínio Dedutivo • Modo de raciocinar através do qual se parte de um princípio conhecido em direcção a um princípio desconhecido • Do geral para o específico • De uma premissa para uma conclusão lógica Exemplo SE objecto A maior que objecto B E objecto B é maior que objecto C ENTÃO objecto A também é maior que objecto C Lógica de Predicados ∀A ∀B ∀C [maior(A,B) ∧ maior(B,C) → maior(A,C)] 95
  • 96. Raciocínio Indutivo A Indução é definida como o modo de raciocinar a partir de factos particulares na direcção de uma conclusão geral. Exemplo P(a) é verdadeiro P(b) é verdadeiro Então, por indução, concluímos que ∀X P(X) é verdadeiro O Raciocínio Indutivo está na base das Técnicas de Aprendizagem usadas em Descoberta de Conhecimento a partir de grandes Bases de dados, Ex: Traçar o perfil de clientes 96
  • 97. Raciocínio Abdutivo • Observamos algo como sendo verdadeiro e conjecturamos sobre o que pode ter levado a essa observação • Tipo de raciocínio usado geralmente na produção de explicações • Não garante que se chegue a conclusões verdadeiras se A→ B é verdadeiro e B é verdadeiro então A também será possivelmente verdadeiro Tal conclusão será sustentada no histórico anterior ou apenas no senso comum. Exemplo ∀X [nada(X) → molhado(X)] Com base neste conhecimento e usando raciocínio abdutivo se nos aparecer alguém molhado vamos admitir que esse alguém esteve a nadar 97
  • 98. Modus Ponens É a base do raciocínio dedutivo Se p é verdadeiro e ( p → q) também é verdadeiro então q é verdadeiro Exemplo “se alguém está a nadar então está molhado”. ∀X [nada(X) → molhado(X)] p = nada(X) e q = molhado(X) Se soubermos que X está a nadar e sabendo que quem nada se molha então podemos, pelo “modus ponens”, concluir que X está molhado. 98
  • 99. Modus Ponens Exemplo 1. Se temperatura > 38.2º então paciente tem febre E1 → E2 2. Se paciente tem febre então prescrever 1 aspirina E2 → E3 Provar E3 assumindo que o paciente tem temperatura > 38.2º Estado-0 Estado-1 Estado-2 1. E1→E 2 1. E1→E 2 1. E1→E 2 • E → E 2 3 2. E → E 2 3 2. E → E 2 3 1. E1 3. E1 3. E1 4. E2 4. E2 5. E3 99
  • 100. Modus Tollens Se a declaração se (p → q) é verdadeiro e q é falso então podemos inferir que p é falsa. O “modus tollens” é a base do raciocínio baseado em regras. Exemplo “se alguém está a nadar então está molhado”. ∀X [nada(X) → molhado(X)] p = nada(X) e q = molhado(X) Se soubermos que X não está molhado então podemos inferir que X não está a nadar. 100
  • 101. Princípio da Resolução Estratégia de inferência com a qual se tenta provar que a negação do objectivo ¬O não é Verdadeiro – Prova por Refutação. Prova Automática de Teoremas baseada no Princípio da Resolução: Para provar A 1. transformam-se os axiomas garantidamente verdadeiros na forma clausal, usando os princípios da idempotência: A→B ≡ ¬A ∨ B, A ∧¬A ≡ F, A ∨¬A ≡ V 2. de seguida junta-se ¬A 3. se por aplicação da regra de resolução a situação na prova falha 4. conclui-se que ¬A é falso e portanto A é verdadeiro 101
  • 102. Princípio da Resolução – Exercício Exemplo 1. Se temperatura > 38.2º então paciente tem febre E1 → E2 ≡ ¬ E1 ∨ E2 2. Se paciente tem febre então prescrever 1 aspirina E2 → E3 ≡ ¬ E2 ∨ E3 Pretende-se provar E3, (ou seja, prescrever 1 aspirina) de acordo com o Princípio da Resolução assumimos ¬ E3 e acrescentamos este facto à lista de axiomas. 102
  • 103. Resolução – Exercício Estado-0 1.¬ E1 ∨ E2 ¬ E1 ∨ E2 2.¬ E2 ∨ E3 ¬ E2 ∨ E3 3. E1 ¬ E1 ∨ E3 4.¬ E3 Estado-1 Estado-2 ..... ...... 1. E1 E1 3. E1 2.¬ E3 ¬ E1 ∨ E3 4. ¬ E3 3. ¬ E1 ∨ E3 E3 5. ¬ E1 ∨ E3 6. E3 Axiomas 4 e 6 revelam uma contradição, pelo que, ¬ E3 é falso e portanto E3 é verdadeiro 103
  • 104. Resolução – Exercício Dados os axiomas 1. p 2. ( p ∧ q ) → r 3. ( s ∨ t ) → q 4. t Provar → r 1º Converter para a Forma Clausal e acrescentar ¬ r 1. p 2. ¬ p ∨ ¬ q ∨ r 3. ¬ s ∨ q 4. ¬ t ∨ q 5. t 6. ¬ r 104
  • 105. Resolução – Exercício ¬ p ∨ ¬ q ∨ r ¬ r ¬ p ∨ ¬ q p ¬ q ¬ t ∨ q ¬ t t 105
  • 106. Unificação Na Lógica Proposicional é simples verificar se dois literais não podem ser verdadeiros simultaneamente, pois L e ¬L são contraditórios Na Lógica de Predicados este processo de “matching” dos axiomas é mais complicado uma vez que podem conter variáveis. Por exemplo homem(João) ∧ ¬ homem (João) são contraditórios enquanto que homem(João) ∧ ¬ homem ( Spot ) não são É então necessário um mecanismo de identificação (matching) ou de unificação que irá tentar instanciar possíveis valores para as variáveis com base nos axiomas existentes. Por exemplo homem (X) ∧ ¬ homem (Spot ) são contraditórios pois homem (X) e homem ( Spot ) podem ser unificados 106
  • 107. Representação de Conhecimento Exprima as seguintes frases usando a Lógica de Predicados de 1ª ordem • Os gatos são mamíferos • Todo o mamífero tem um progenitor • O filho de um gato é um gato • Teco é um gato • Teco é progenitor do Navalha Prove que Navalha é um gato, pela regra de: • Modus ponens • Princípio da Resolução 107
  • 108. Definição doa Axiomas através da Lógica de Predicados de 1ª ordem • Os gatos são mamíferos ∀g [ gato(g) → mamifero(g) ] • Todo o mamífero tem um progenitor ∀g ∃p [ mamifero(g) → progenitor(p,g) ] • O filho de um gato é um gato ∀g [ gato(g) ∧ progenitor( g, f ) → gato(f) ] • Teco é um gato gato (Teco) • Teco é progenitor do Navalha progenitor ( Teco, Navalha) 108
  • 109. Modus Ponens Provar → gato(Navalha) Estado-0 1. gato(g) → mamifero(g) 2. mamifero(g) → progenitor(p,g) 3. gato(g) ∧ progenitor( g, f ) → gato(f) 4. gato ( Teco) 5. progenitor ( Teco, Navalha) Pelos Axiomas 3,4,5 e Teco/g, Navalha/ f gato ( Teco) ∧ progenitor ( Teco, Navalha) → gato ( Navalha) 6. gato ( Navalha) 109
  • 110. Resolução Provar → gato(Navalha) Estado-0 1. ¬ gato(g) ∨ mamifero (g) 2. ¬ mamifero (g) ∨ progenitor( p, g) 3. ¬ gato(g) ∨ ¬ progenitor( g, f) ∨ gato(f) 4. gato ( Teco) 5. progenitor ( Teco, Navalha) 6. ¬gato(Navalha) 110
  • 111. Resolução ¬gato( Navalha ) ¬ gato(g) ∨ ¬ progenitor( g, f ) ∨ gato(f) Navalha / f ¬ gato(g) ∨ ¬ progenitor( g, Navalha ) gato ( Teco) Teco / g ¬ progenitor ( Teco, Navalha) progenitor ( Teco, Navalha) 111
  • 112. Representação de Conhecimento Considere o seguinte texto: “ Os gatos gostam de peixe. Os gatos comem tudo do que gostam. Teco é um gato” – Exprima as frases em Lógica de Predicados de 1ª ordem. – Usando a regra de resolução prove por refutação, com base no conhecimento anterior que “o Teco come peixe” 112
  • 113. Resolução Os gatos gostam de peixe ∀g [ gato(g) → gosta (g, peixe) ] Os gatos comem tudo do que gostam ∀g [ gosta (g, c) → come (g, c) ] Teco é um gato gato ( Teco) Provar → come (Teco, peixe) 113
  • 114. Resolução Provar → come (Teco, peixe) Resolução Estado-0 1. ¬ gato(g) ∨ gosta (g, peixe) 2. ¬ gosta (g, c) ∨ come (g, c) 3. gato ( Teco) 4. ¬come (Teco, peixe) 114
  • 115. Resolução Provar → come (Teco, peixe) Resolução ¬come (Teco, peixe) ¬ gosta (g, c) ∨ come (g, c) ¬ gosta (Teco, peixe) ¬ gato(g) ∨ gosta (g, peixe) ¬ gato ( Teco) gato (Teco) 115
  • 116. Representação de Conhecimento Represente as afirmações seguintes usando lógica de predicados de 1ª ordem – Um animal pesado come muito – Os elefantes são animais grandes – Todos os elefantes têm um alimento preferido – Dumbo é um elefante – Todos os animais grandes são pesados – O amendoim é um alimento Provar → Dumbo come muito 116
  • 117. Definição doa Axiomas através da Lógica de Predicados de 1ª ordem – ∀a [ animal (a, pesado) → come(a,muito) ] – ∀a [ elefante(a) → animal (a, grande) ] – ∀a ∃c [elefante(a) → alimento (c, preferido) ] – elefante (Dumbo) – ∀a [ animal (a, grande) → animal (a, pesado) ] – alimento (amendoim) 117
  • 118. Resolução Provar → Dumbo come muito come(Dumbo, muito) Estado-0 1. ¬ animal (a,pesado) ∨ come (a, muito) 2. ¬ elefante (a) ∨ animal (a, grande) 3. ¬ elefante (a) ∨ alimento (c, preferido) 4. elefante (Dumbo) 5. ¬ animal (a, grande) ∨ animal (a, pesado) 6. Alimento (amendoim) 7. ¬come (Dumbo, muito) 118
  • 119. Resolução Provar → come(Dumbo, muito) 8 1 ¬come (Dumbo, muito) ¬ animal (a,pesado) ∨ come (a, muito) 5 ¬ animal(Dumbo, pesado) ¬ animal (a, grande) ∨ animal (a, pesado) 2 ¬ animal (Dumbo, grande) ¬ elefante (a) ∨ animal (a, grande) 4 ¬ elefante (Dumbo) elefante (Dumbo) 119