Download IA - Tema 4B - Sistemas Expertos v1.1

Document related concepts

Representación del conocimiento wikipedia , lookup

Cyc wikipedia , lookup

Lógica epistémica wikipedia , lookup

Grupo de Ingeniería del Conocimiento y Aprendizaje Automático wikipedia , lookup

Lógica difusa wikipedia , lookup

Transcript
Datos de la Asignatura
Temarío
2º Cuatrimestre
Sistemas basados en el conocimiento
(Cap. 8-12)
Inteligencia Artificial e Ingenieria del Conocimiento
– Mediante lógica de predicados.
– Mediante Sistemas de producción.
Tratamiento de la incertidumbre (Cap. 13-15)
– Redes Bayesianas.
– Razonamiento aproximado (lógica difusa).
Septiembre de 2007
1 de 110
Universidad de Castilla-La Mancha
Inteligencia Artificial e Ingeniería del Conocimiento
Tema4: Sistemas basados en el
conocimiento (Agentes Lógicos)
Profesores:
Luis Jiménez Linares.
Luis Enrique Sánchez Crespo.
Inteligencia Artificial e Ingenieria del Conocimiento
Índice
6.1 Un agente conocimiento-intensivo.
6.2 El ambiente del mundo de wumpus
6.3 Representación, Razonamiento y Lógica
6.4 Lógica propositiva
6.5 Un agente para el mundo de wumpus
6.6 Resumen
Septiembre de 2007
3 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Búsqueda informada
Agente conocimiento-intensivo
Septiembre de 2007
4 de 110
Agentes basados en conocimiento
Inteligencia Artificial e Ingenieria del Conocimiento
Introducción
Se introduce el diseño de un agente basado en el
conocimiento
Se presenta un lenguaje lógico sencillo pero insuficiente, el
de la lógica propositiva,
Se ejemplifica con un agente capaz de desempeñarse bien
en el mundo de Wumpus, siendo Wumpus un juego que
provoca adicción.
En este capítulo se aprende a diseñar agentes que
– construyen representaciones del mundo,
– derivan nuevas representaciones del mundo por inferencia y
– usan esas nuevas representaciones para saber qué hacer
Septiembre de 2007
5 de 110
Agentes basados en conocimiento
Representación del conocimiento
Inteligencia Artificial e Ingenieria del Conocimiento
El papel pretendido de la representación del conocimiento
en IA es reducir problemas de acción inteligente en meros
problemas de BÚSQUEDA
Grinsberg
Analogía entre Programación y Problemas de IA
Programación
11.Crear
.Crearun
unalgoritmo
algoritmopara
pararesolver
resolver
elel problema
problema
2.2.Seleccionar
Seleccionarun
unlenguaje
lenguajede
de
programación
para
codificar
programación para codificarlalatarea
tarea
3.3.Capturar
Capturarelelalgoritmo
algoritmocomo
como
programa
programa
4.4.Ejecutar
Ejecutarelelprograma
programa
Inteligencia Artificial
1.1.Identificar
Identificarelelconocimiento
conocimientonecesario
necesariopara
para
resolver
el
problema
resolver el problema
2.2.Seleccionar
Seleccionarelellenguaje
lenguajecon
conelelcual
cualdicho
dicho
conocimiento
pueda
ser
representado
conocimiento pueda ser representado
3.3.Escribir
Escribirelelconocimiento
conocimientodentro
dentrode
deese
ese
lenguaje
lenguaje
4.4.Usar
Usarlas
lasconsecuencias
consecuenciasdel
delconocimiento
conocimiento
para
resolver
el
problema
para resolver el problema
La BÚSQUEDA aparece en el punto 4
Foundations of Artificial Intelligence
Septiembre de 2007
20
6 de 110
Agentes basados en conocimiento
La meta consiste en que …
– el conocimiento aparezca explícitamente en una base
– se logren conclusiones del conocimiento declarado en la base
Inteligencia Artificial e Ingenieria del Conocimiento
Para ello es indispensable la LÓGICA
– Una dada lógica es una notación ( o un lenguaje) matemático
para gestionar el conocimiento
– La principal alternativa que hay para la lógica es el lenguaje
natural (español, inglés,...).
– Tanto en el lenguaje natural como en la lógica la unidad es la
oración ( “sentence”)
– Sintaxis y Semántica
– Inferencia Lógica
– Lógica sana y completa
Septiembre de 2007
7 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes Lógicos
Agentes basados en conocimiento
Septiembre de 2007
8 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes basados en conocimiento
Función [Fig 6.1]  a
aclarar en temas
siguientes
base de conocimiento
– declarada (dicha)
– aprendida
- motor de inferencias
Septiembre de 2007
9 de 110
Agentes basados en conocimiento
Inteligencia Artificial e Ingenieria del Conocimiento
Función
– Un agente conocimiento-intensivo tiene como
componente seminal una base de conocimientos.
– Una base de conocimientos es un conjunto de
representaciones de hechos del mundo.
– Cada una de esas representaciones se llama una
“oración”.
– Las oraciones se expresan en un lenguaje
representacional del conocimiento.
Septiembre de 2007
10 de 110
Agentes basados en conocimiento
El agente opera como sigue (TELL and ASK)
1. Le dice a la base su PERCEPCIÓN
– (añade oraciones a la base)
Inteligencia Artificial e Ingenieria del Conocimiento
2. Le pregunta a la base qué ACCIÓN encarar
– (contesta preguntas de la base)
– (mientras, opera un MOTOR DE INFERENCIAS)
3. Ejecuta la ACCIÓN
Septiembre de 2007
11 de 110
Agentes basados en conocimiento
Arquitectura de dos agentes
Inteligencia Artificial e Ingenieria del Conocimiento
las dos primeras menciones se refieren a un agente reflejo
simple y las otras dos a un agente conocimiento-intensivo .
ESTE
ESTEAGENTE
AGENTEsigue
siguelala
pista
pistadel
delestado
estadodel
del
mundo
mundoexterno
externo
mediante
mediantesu
sufunción
función
“actualizar”.(Update)
“actualizar”.(Update)
loop
loopforever
forever
Input
Inputpercepts
percepts
KB
KB
tell(KB,
tell(KB,make-sentence(percept))
make-sentence(percept))
action

ask(KB,
action  ask(KB,action-query)
action-query)
Output
Outputaction
action
KB
KB
tell(KB,
tell(KB,make-sentence(action))
make-sentence(action))
end
end
Foundations of Artificial Intelligence
Septiembre de 2007
loop
loopforever
forever
Input
Inputpercepts
percepts
state

state Update-State(state,
Update-State(state,percept)
percept)
rule

Rule-Match(state,
rule  Rule-Match(state,rules)
rules)
action
action
Rule-Action[rule]
Rule-Action[rule]
Output
action
Output action
state
state
Update-State(state,
Update-State(state,action)
action)
end
end
ESTE
ESTEOTRO
OTROAGENTE,
AGENTE,aa
cada
cadainstante,
instante,
cualesquiera
cualesquierasean
seansus
sus
percepciones,
percepciones,lolohace
haceen
en
forma
formade
deoración.
oración.P.ej.
P.ej.
“estoy
“estoyhambriento”
hambriento”
22
12 de 110
Agentes basados en conocimiento
Inteligencia Artificial e Ingenieria del Conocimiento
Arq. de un agente con base de conocimiento
Septiembre de 2007
Nivel de conocimiento
– es el nivel más abstracto - describimos al agente indicando qué
conoce
– ejemplo - un taximetrero automático podría saber que desde la
playa Bristol a la playa La Perla hay una ruta costanera rápida
Nivel lógico
– es el nivel en el cual el conocimiento queda codificado en
oraciones
– p.ej.: enlaces (Bristol, La Perla, ruta costanera rápida)
Nivel de implementación
– es el nivel en el cual hay una representación física de las oraciones
en el nivel lógico
– p.ej.:”enlaces (Bristol, La Perla, ruta costanera rápida)”
– conexión{B,P,rcr} = 1
– (un 1 en una tabla tridimensional)
13 de 110
– (un conjunto de apuntadores dirigidos a los símbolos)
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes Lógicos
El mundo de Wumpus
Septiembre de 2007
14 de 110
El mundo de Wumpus
Inteligencia Artificial e Ingenieria del Conocimiento
El ambiente del mundo de Wumpus
Percepción = [Hedor, Brisa, Resplandor, Golpe, Grito]
El agente no puede percibir su propia ubicación
Acciones = [avanzar, girarizquierda, girarderecha, capturar,
dispararflecha, trepar]
Agente muere al entrar a un habitáculo con pozo o con wumpus vivo.
Meta del agente es encontrar oro, volver al habitáculo [1,1] y trepar
muro.
Razonamiento
– ejemplos de inferencias: ubicación de
•
•
•
•
Septiembre de 2007
pozos,
wumpus
habitáculos sin riesgo
habitáculo 1-1 al volver
15 de 110
El mundo de Wumpus
El ambiente del mundo de Wumpus
Inteligencia Artificial e Ingenieria del Conocimiento
Detalles del ambiente
–
–
–
–
mundos de wumpus elegidos al azar
agentes múltiples, en comunicación
wumpi móviles
múltiples piezas de oro
Detalles de disponibilidades
–
–
–
–
Septiembre de 2007
lenguaje natural
aprendizaje
visión
habla
16 de 110
El mundo de Wumpus
Ayudas en el mundo de Wumpus
Inteligencia Artificial e Ingenieria del Conocimiento
[Hedor, Brisa,
Resplandor, Golpe,
Grito]
[Hedor, Brisa,
Resplandor, Golpe,
Grito]
[Hedor, Brisa,
Resplandor, Golpe,
Grito]
Septiembre de 2007
17 de 110
El mundo de Wumpus
El mundo de Wumpus
El agente arranca de (1,1)
Inteligencia Artificial e Ingenieria del Conocimiento
La meta es encontrar oro, volver a (1,1) y trepar la
pared
No viene mal matar al wumpus con la única
flecha, son más bonificaciones y hay un nuevo
camino por transitar
Septiembre de 2007
18 de 110
El mundo de Wumpus
Percepciones
Las percepciones forman una vector fila de 1x5 del
tipo
Inteligencia Artificial e Ingenieria del Conocimiento
(Hedor,Brisa,Nada,Nada,Nada)
El primer Nada es resplandor
El segundo es Golpe (contra la pared)
El tercero es Grito
Septiembre de 2007
19 de 110
El mundo de Wumpus
PaMA
Percepciones
Inteligencia Artificial e Ingenieria del Conocimiento
acciones ..avanzar,girarizq, etc.
Meta - Capturar el oro y volver
Ambiente – mundo de wumpus
Septiembre de 2007
20 de 110
El mundo de Wumpus
Inteligencia Artificial e Ingenieria del Conocimiento
Primer Paso
Septiembre de 2007
21 de 110
El mundo de Wumpus
Inteligencia Artificial e Ingenieria del Conocimiento
Segundo Paso
Septiembre de 2007
22 de 110
El mundo de Wumpus
¿Por qué (x,y) está bien?
Inteligencia Artificial e Ingenieria del Conocimiento
(1,1)` Porque el agente está vivo
(1,2) `”No hedor en (1,1)” + “No brisa en
(1,1)” + “(1,1) y (1,2) son vecinos””
(2,1) `”no hedor en (1,1)”, + “no brisa en
(1,1)” + “(1,1) y (2,1) son vecinos”
Septiembre de 2007
23 de 110
El mundo de Wumpus
Inteligencia Artificial e Ingenieria del Conocimiento
Tercer Paso
Septiembre de 2007
24 de 110
El mundo de Wumpus
Inteligencia Artificial e Ingenieria del Conocimiento
Cuarto Paso
Septiembre de 2007
25 de 110
El mundo de Wumpus
¿Por qué (1,3) = wumpus?
Inteligencia Artificial e Ingenieria del Conocimiento
Hedor en (1,2) implica que el wumpus está ya sea
en (1,1), ya sea en (2,2), ya sea en (1,3)
(1,1) fue visitado, lo visitado está bien  el
wumpus no está en (1,1)
(2,1) sin hedor fue visitado  el wumpus no está
en (2,1)
 El wumpus está en (1,3)
Septiembre de 2007
26 de 110
El mundo de Wumpus
¿Por qué (3,1) = pozo?
Inteligencia Artificial e Ingenieria del Conocimiento
Brisa en (2,1) implica que hay un pozo ya sea en
(1,1), ya sea en (2,2), o ya sea en (3,1)
(1,1) fue visitado, el agente está vivo  el pozo no
está en (1,1)
(2,1) sin brisa al ser visitado  el pozo no está en
(2,2)
 El pozo está en (3,1)
Septiembre de 2007
27 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes Lógicos
Representación, razonamiento y
lógica
Septiembre de 2007
28 de 110
Representación, razonamiento
y Lógica
Inteligencia Artificial e Ingenieria del Conocimiento
Representar: lograr que lo representado sea entendible para
una computadora; y que así el agente pueda operar y
merecer el nombre de agente
– Sintaxis, forma usada para representar oraciones- cómo están
representadas las oraciones
– Semántica, mapeo desde oraciones hacia hechos del mundo,
determina los hechos del mundo a los que hacen alusión las
oraciones.
– Razonamiento: Simulador del mundo de wumpus
• Hechos ”son consecuencia" de hechos
• Oraciones ”son consecuencia” de oraciones
• Conjuntos de oraciones “son consecuencia” de conjuntos de oraciones.
Septiembre de 2007
29 de 110
Representación, razonamiento
y Lógica
Inteligencia Artificial e Ingenieria del Conocimiento
Razonamiento,
– Es el proceso de construir nuevas representaciones, bajo la
forma de oraciones, a partir de representaciones anteriores.
– La existencia de una base de conocimientos - seminal para el
agente - le permite la creación de razonamientos, con la ayuda
del motor de inferencia.
Requisitos de la Lógica: opera bien si la sintaxis y la
semántica están definidas de manera precisa (sin
ambigüedades).
– Aquí una lógica es una buena notación o un lenguaje
matemático útil para el logro de demostraciones acomodadas a
las posibilidades de la computadora.
Septiembre de 2007
30 de 110
Representación
Inteligencia Artificial e Ingenieria del Conocimiento
Los lenguajes de programación como el C o el Pascal son idóneos para
representar algoritmos y estructuras de datos concretas. Los lenguajes de
programación están diseñados para describir cabalmente el estado de la
computadora y de cómo cambia ésta conforme al programa que se está
ejecutando.
Sin embargo, sería deseable poder contar con otro lenguaje para representar el
conocimiento que sirva para el caso cuando no se cuenta con información
completa: cuando no hay total certeza de cómo son las cosas, y lo único que se
sabe son algunas posibilidades de cómo son. Un lenguaje que no satisface lo
anterior tiene el defecto de no ser suficientemente expresivo.
Septiembre de 2007

El objetivo de un lenguaje para la representación del conocimiento es el de
expresar los conocimientos en una base manejable por el agente, permitiéndole
a éste un buen desempeño, p.ej. en el mundo de wumpus.

El lenguaje representando conocimiento interno de un agente es distinto del
lenguaje externo empleado para comunicarse con otros agentes (JiVE, etc.). En
el ej. se usa sólo interno.
31 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Representación
Los lenguajes naturales como el inglés o el español indudablemente
son expresivos. Sin embargo, han experimentado una evolución que
tiende más a satisfacer las necesidades de la comunicación que las de la
representación.
En un buen lenguaje para representar el conocimiento se combinan las
ventajas de los lenguajes naturales y las de los lenguajes formales.
Entonces, tratemos de combinar las ventajas de los lenguajes naturales
y las de los lenguajes formales:
» a) lo suficientemente expresivo como para representar el conocimiento
aún cuando no se cuenta con información completa y no hay total certeza
de cómo son las cosas.
» b) lo suficientemente conciso como para evitar ambigüedades, siendo
independiente del contexto para su interpretación.
» c) apto para un procedimiento de inferencia con el cual obtener nuevas
representaciones a partir de las existentes en la base.
Septiembre de 2007
32 de 110
Representación
Cualquier lenguaje representacional del conocimiento
tiene:
Inteligencia Artificial e Ingenieria del Conocimiento
– Su sintaxis - define todas las posibles configuraciones
(secuencias) de símbolos que constituyen oraciones del
lenguaje.
• Ejemplos:
– oraciones del texto
– bits de la memoria de la computadora
– Su semántica - determina los hechos del mundo a los cuales
se están refieiendo las oraciones. Cada oración argumenta
algo del mundo.
• Un agente CREE en las oraciones referidas al mundo.
Septiembre de 2007
33 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Semántica - Lenguajes
composicionales
Se llama lenguaje composicional a aquél en que el
significado de una oración es la suma de los
significados de cada parte. Casi todos los lenguajes
tienen una relación sistemática entre las oraciones
y los hechos.
Ejemplo de la matemática:
– a^2 + b^2
– Su significado es la suma del significado de a^2 más la
de b^2
Septiembre de 2007
34 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Inferencia
RAZONAMIENTO e INFERENCIA: Son los nombres del
proceso por el cual se obtienen conclusiones.
INFERENCIA LÓGICA y DEDUCCIÓN: Son los nombres
de todo razonamiento o inferencia válidos y confiables.
Implantan las relaciones de implicación que existe entre
oraciones.
– Inferencia:
• Verificar la validez de oraciones que se toman como verdaderas
pese a desconocerse su real interpretación.
– Verdad :
• Depende del estado del mundo y de la interpretación.
– Validez :
• Una oración es válida si es verdadera independientemente del
mundo o de la interpretación.
Septiembre de 2007
35 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Razonamiento
Consecuencias o implicaciones generan nuevas oraciones a partir de otras previas, todas
fidedignas.
Teoría de la demostración - conjunto de reglas para deducir las implicaciones de un
conjunto de oraciones - dentro de un lenguaje - ella estudia los pasos confiables de un
razonamiento – motor de inferencia
Semántica - en lógica el SIGNIFICADO de una oración es aquello que ella afirma del
mundo. Restringe a que el mundo sea de la forma expresada y no de otra forma
alternativa. Para poder entender lo que SIGNIFICA una oración, quien la compuso
debería proporcionar su respectiva INTERPRETACIÓN. Ninguna oración tiene
significado por sí misma ni es autoevidente.
Hay inferencias inválidas
– ¿Caso de “Hay una brisa en (3,2) o no hay una brisa en (3,2)”?
– ¿Caso de A = A?
Hay inferencias insatisfactibles si no existe un mundo donde puedan suceder.
– ¿Caso de “hay varios wumpi”?
– ¿Caso de “hay un wumpus en (1,1)”?
– ¿Caso de “hay un wumpus en (1,1) y no hay un wumpus en (1,1)”?
Septiembre de 2007
36 de 110
Lógica
Compromiso ontológico
Inteligencia Artificial e Ingenieria del Conocimiento
• para el agente, qué existe en el mundo
– en el caso de la lógica propositiva, para el agente existen
hechos que serán verdaderos o falsos.
Compromiso epistemológico
• para el agente, cuál es la actitud con respecto a los hechos
– en el caso de la lógica propositiva, el agente cree que una
oración es verdadera o falsa, o no ha llegado a conclusión
alguna
Septiembre de 2007
37 de 110
Tipos de lógicas y sus
preocupaciones
Lenguaje
Ontología
(lo que existe)
Epistemología
(qué cree de los hechos)
Inteligencia Artificial e Ingenieria del Conocimiento
----------------------------------------------------------------------------------Lógica Propositiva
hechos
Lógica de primer
hechos, objetos, enlaces
orden
Lógica temporal
verdadero/falso/no sabe
verdadero/falso/no sabe
hechos, objetos,
enlaces, tiempos
verdadero/falso/no sabe
Teoría de la
probabilidad hechos
Lógica difusa
Septiembre de 2007
grado de certidumbre
grado de verdad
grado de certidumbre
38 de 110
Lógica
La meta del agente racional consiste en que:
Inteligencia Artificial e Ingenieria del Conocimiento
–
–
–
–
El conocimiento aparezca explícitamente
Se logren conclusiones del conocimiento incorporado
Para ello es indispensable la LÓGICA
Una dada lógica es una notación matemática (un lenguaje
matemático) para declarar el conocimiento
– La principal alternativa que hay para la lógica es el lenguaje natural
(español, inglés,...).
– Tanto en el lenguaje natural como en la lógica la principal unidad
es la oración
• Sintaxis y Semántica
• Inferencia Lógica
• Lógica sana y completa
Septiembre de 2007
39 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes Lógicos
Lógica propositiva
Septiembre de 2007
40 de 110
Lógica proposita
Lógicas y símbolos
Inteligencia Artificial e Ingenieria del Conocimiento
Breve detalle de lógica propositiva
Conceptos asociados
Profundización en la Lógica Propositiva
Septiembre de 2007
41 de 110
Lógica proposita
Inteligencia Artificial e Ingenieria del Conocimiento
Proposición es una afirmación que puede ser
verdadera o falsa
Conceptos relacionados
– Oración atómica
– Literal
– Oración molecular
Una proposición es verdadera
– si está de acuerdo con los hechos del mundo real
– si está de acuerdo con otro mundo supuesto con algún
motivo, siendo falsa en el otro caso
Septiembre de 2007
42 de 110
Lógica y símbolos
LPC =LCP Lógica basada en el cálculo propositivo
LI Þ Lógica de primer orden
Inteligencia Artificial e Ingenieria del Conocimiento
– con dos signos adicionales = cuantificadores
LI I ÞLógica de segundo orden
LIPML Þ Lógica propositiva modal
– con dos signos más
Lógica temporal o lógica tiempo lineal temporal
– con cuatro signos más
Septiembre de 2007
43 de 110
Breve concepto de Lógica
prepositiva
El ALFABETO consiste de
Inteligencia Artificial e Ingenieria del Conocimiento
– VARIABLES PROPOSITIVAS P, Q
– CONECTIVOS FUNCIONALES
GRAMÁTICA -sin cuantificadores - con oraciones
atómicas y moleculares
SEMANTICA basada en tablas de verdad exhaustivas
TEORIA DE LA DEMOSTRACIÓN con modus ponens y
otras reglas familiares
Septiembre de 2007
44 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Sintaxis en lógica propositiva
Septiembre de 2007
La sintaxis de la lógica propositiva es sencilla. Los
símbolos utilizados en la lógica propositiva son las
constantes lógicas Verdadero y Falso, símbolos de
proposiciones tales como P y Q, los conectivos lógicos /\,
\/, , => y ¬ y paréntesis ( ). Todas las oraciones se
forman combinando los signos anteriores mediante las
siguientes reglas:
Las constantes lógicas Verdadero y Falso constituyen
oraciones en sí mismas.
Un símbolo propositivo tal como P y Q es una oración en
sí mismo.
Encerrar entre paréntesis una oración produce también una
oración, por ejemplo (P /\ Q).
Una oración molecular se forma combinando oraciones
más sencillas o atómicas con uno de los cinco conectores
lógicos antes mencionados.
45 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Gramática BNF
Septiembre de 2007
46 de 110
Ejemplos de oraciones
moleculares
P  (Q  R)
Inteligencia Artificial e Ingenieria del Conocimiento
P  (Q  Q)  (R  P)
( P  Q)  (Q  P)
( P  Q)  ( P  Q)
Septiembre de 2007
47 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Sintaxis y semántica:
Oraciones atómicas
Las oraciones atómicas afirman hechos. Una oración atómica está
formada por un símbolo de predicado seguido de una lista entre
paréntesis de términos.
Ejemplo:
Hermano(Ricardo,Juan)
Afirma que para alguna interpretación Ricardo Corazón de León es
hermano del Rey Juan.
Es válido que una oración atómica tenga términos complejos como
argumentos:
Casado(PadreDe(Ricardo), MadreDe(Juan))
Afirma que el padre de Ricardo Corazón de León está casado con la
madre del Rey Juan (dentro de una adecuada interpretación).
Una oración atómica es verdad si la relación expresada por el símbolo
de predicado Casado es verdad para los objetos anotados en los
argumentos. La verdad de una oración atómica depende tanto del
MUNDO como de la INTERPRETACIÓN.
Septiembre de 2007
48 de 110
Oraciones
Oración Atómica - Es una proposición
–
sin cuantificadores
•
•
–
universal---para todo,
existencial--existe
ni conectivos booleanos
•
•
\/ unión o suma de dos conjuntos
/\ intersección o parte común de dos conjuntos
Inteligencia Artificial e Ingenieria del Conocimiento
Una Literal:
–
–
Es una oración atómica P
o su negación ¬P
Oración Molecular - representada por símbolos propositivos (e.g., P, Q, R, S, etc.)
–
–
constantes lógicas: Verdadero,Falso
Conectivos
, , , , 
• Se usan mucho
–
Mediante los conectores lógicos se pueden construir oraciones más complicadas. Ejemplos:
–
–
–
–
Septiembre de 2007
, , 
Hermano(Ricardo,Juan) /\ Hermano(Juan,Ricardo)
Mayor(Juan,30) \/ Menor(Juan, 30)
Mayor(Juan,30) Þ ¬Menor(Juan, 30)
¬Hermano(Robin, Juan)
49 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Modelo
Disponemos de una oración bajo una cierta interpretación.
Entonces cualquier mundo desde esa misma interpretación,
será un modelo para dicha oración.
Modelos: mundos en los cuales una oración dada es verdad
– En lógica propositiva es un renglón en la tabla de
verdad
Septiembre de 2007
50 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Modelos analizados con un
diagrama de Venn
EJEMPLO:
P
Septiembre de 2007
Q
PQ
(todo excepto
)
51 de 110
Definición semántica
Inteligencia Artificial e Ingenieria del Conocimiento
Sean F y G dos fórmulas propositivas y sea M una
interpretación cualquiera.
– F  G será verdad en M si tanto F como G son
verdaderas en M
– F  G será verdad en M si por lo menos uno de F o G
es verdad en M
 F será verdad en M si tanto F como G son falsos en
M.
– F  G será verdad en M si ya sea F es falso en M o G
es verdad en M
– F  G será verdad en M si ambos, F y G, son verdad
en M o ambos, F y G son falsos en M
Septiembre de 2007
52 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Verdad
Depende del estado del mundo y de la
interpretación de quien construyó las oraciones
Una oración es válida independientemente del
mundo o de la semántica
Una oración es insatisfactible si el mundo nunca es
igual a lo que ella describe
Septiembre de 2007
53 de 110
Lógica Propositiva: Semántica
Inteligencia Artificial e Ingenieria del Conocimiento
En lógica propositiva, la semántica de los conectivos se especifica mediante
tablas de verdad:
P
Q
P
P Q
P Q
F
F
T
T
F
T
F
T
T
T
F
F
F
F
F
T
F
T
T
T
P Q P  Q
T
T
F
T
T
F
F
T
Las tablas de verdad también se pueden usar para determinar la validez de las
oraciones:
Septiembre de 2007
P
Q
F
F
T
T
F
T
F
T
P
 P Q
P Q (P Q) (  P Q)
54 de 110
Inferencia propositiva
Método de la enumeración
Sea   A  B
KB  ( A  C)  ( B  C)
¿La base de conocimiento garante a a?
– Verificar todos los modelos posibles – en todos ellos a debe ser verdadera
y
Inteligencia Artificial e Ingenieria del Conocimiento
siempre que la BC sea verdadera.
– Se puede argumentar que para cualquier modelo M de la BC, M también
es modelo de a
Septiembre de 2007
55 de 110
Reglas de Inferencia
Modus Ponens

Y--Eliminación
a1 & a2 & a3 & a4  an (n = 1..4)
Y--introducción
Inteligencia Artificial e Ingenieria del Conocimiento
a1, a2, a3, a4  a1 & a2 & a3 & a4
O--Introducción
a1 a1 V an
Doble-negación eliminación
- (- 
Resolución Unitaria
V
Resolución (difícil)
VVV
- 
Septiembre de 2007
56 de 110
Reglas de Inferencia (lógica
propositiva)
(MP) Modus Ponens (Implicación-eliminación)
  , 

Inteligencia Artificial e Ingenieria del Conocimiento
(AI) =(YI) Y-introducción
 1 , 2 ,, n
 1   2  n
(AE)=(YE) Y-eliminación
(OI) O-introducción
i
 1   2  n
 1   2  n
i
(NE) Negación-eliminación


Septiembre de 2007
57 de 110
Reglas de Inferencia (lógica
propositiva)
(UR)Resolución Unitaria    ,


(R) Resolución General    ,
Inteligencia Artificial e Ingenieria del Conocimiento
  
 
Notas:
– Resolución es completa en lógica propositiva
– Modus Ponens (en su forma general)
 1 , 2 ,, n ,  1   2  n  

– es completa para bases de conocimiento de Horn y puede ser usada en
encadenamientos hacia atrás y hacia adelante.
Septiembre de 2007
58 de 110
Ejemplo: Base de
Conocimiento
Ejemplo: construir una base de conocimiento
para el mundo Wumpus.
Inteligencia Artificial e Ingenieria del Conocimiento
– Vocabulario de símbolos proposicionales:
• Hi,j es verdadero si hay un hoyo en la casilla [i,j].
• Bi,j es verdadero si hay brisa en la casilla [i,j].
– Contenido inicial de la BC:
• No hay ningún hoyo en la casilla [1,1]:
– R1:  H1,1
• En una casilla se siente brisa si y solo si hay un hoyo en una
casilla vecina:
– R2: B1,1  (H1,2  H2,1 )
– R3: B2,1 (H1,1  H2,2  H3,1)
 , , , , 
Septiembre de 2007
59 de 110
Ejemplo: Base de
Conocimiento
– Nuevas reglas al recorrer las 2 primeras casillas:
• Percepciones de brisas
– R4:  B1,1
– R5: B2,1
Inteligencia Artificial e Ingenieria del Conocimiento
• La BC actual estará formada por R1  R2  R3  R4  R5
RAZONAMIENTO e INFERENCIA: Son los nombres del proceso por
el cual se obtienen conclusiones.
INFERENCIA LÓGICA y DEDUCCIÓN: Son los nombres de todo
razonamiento o inferencia válidos y confiables. Implantan las relaciones de
implicación que existe entre oraciones.
– Inferencia: Verificar la validez de oraciones que se toman como
verdaderas pese a desconocerse su real interpretación.
– Verdad : Depende del estado del mundo y de la interpretación.
– Validez : Una oración es válida si es verdadera independientemente
del mundo o de la interpretación.
Septiembre de 2007
60 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Reglas de Inferencia
Reglas explícitas para producir un teorema cuando
se proveen dos o más teoremas.
Funciones para secuencias de teoremas hacia
teoremas
En sistemas formales tienen que operar
independientemente del significado semántico de
las cadenas manipuladas
Sinónimo: Reglas de producción
Septiembre de 2007
61 de 110
Equivalencia, validez,
satisfacibilidad
Inteligencia Artificial e Ingenieria del Conocimiento
Equivalencia: dos sentencias son equivalente
lógicamente cuando si tienen los mismos valores
de verdad en el mismo conjunto de modelos.
Septiembre de 2007
62 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Equivalencia, validez,
satisfacibilidad
Validez: una sentencia es válida si es verdadera en
todos los modelos. Las sentencias validas se
conocen como tautologías.
Satisfacibilidad: Una sentencia es satisfactoria si
es verdadera para algún modelo.
Septiembre de 2007
63 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes Lógicos
Patrones de razonamiento en
lógica proposicional
Septiembre de 2007
64 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Patrones de razonamiento
Resolución: nos lleva a un algoritmo de inferencia completo cuando se
empareja a un algoritmo de búsqueda completo.
Forma normal conjuntiva (FNC): es una sentencia representada
mediante una conjunción de disyunciones de literales.
Algoritmos de resolución: Los procedimientos de inferencia basados
en la resolución trabajan mediante el principio de pruebas mediante
contradicción. Para demostrar BC |=  demostraremos que (BC   
es insatisfacible.
Completitud de la resolución: A partir del teorema fundamental de la
resolución, determinamos que si un conjunto de cláusulas es
insatisfacible, entonces el cierre de la resolución de esas cláusulas
contiene la cláusula vacía.
Septiembre de 2007
65 de 110
Patrones de razonamiento
Encadenamiento hacia delante y hacia atrás:
Inteligencia Artificial e Ingenieria del Conocimiento
– Cláusulas de Horn: disyunción de literales de los
cuales, como mucho uno es positivo.
•
•
•
•
Cabeza: literal positivo.
Cuerpo: disyunción de literales negativos.
Hecho: cláusula sin literales negativos.
Restricción de integridad: una cláusula de Horn con solo
literales negativos.
• La inferencia de este tipo de cláusulas se realiza mediante
algoritmos de encadenamiento hacia delante y hacia atrás.
• Averiguar si hay o no implicación con las cláusulas de Horn
se puede realizar en un tiempo que es lineal respecto al tamaño
de la base de conocimiento.
Septiembre de 2007
66 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes Lógicos
Inferencia proposicional efectiva
Septiembre de 2007
67 de 110
Patrones de razonamiento
DPLL - Algoritmo de David y Putnam (basado en
Backtracking): Determina si una sentencia de entrada
con lógica proposicional es satisfacible.
Inteligencia Artificial e Ingenieria del Conocimiento
–
Terminación anticipada:
Una cláusula es verdadera si cualquier literal es verdadero.
Una cláusula es falsa si algún literal es falso.
–
Heurística de símbolo puro:
Un símbolo es puro si aparece siempre con el mismo signo en todas las
cláusulas.
Ej., En las 3 cláusulas (A  B), (B  C), (C  A), A y B son puros, C
es impuro.
–
Heurística de cláusula unitaria:
Son aquellas que tienen un solo literal.
Si solo hay un literal en una cláusula unitaria, tiene que ser verdadero.
Septiembre de 2007
68 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Patrones de razonamiento
Septiembre de 2007
69 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Patrones de razonamiento
WalkSAT - Algoritmo de búsqueda: Determina
si una sentencia de entrada con lógica
proposicional es satisfacible. Nuestro objetivo es
encontrar una asignación que satisfaga todas las
cláusulas.
–
–
–
Septiembre de 2007
Algoritmo de búsqueda local incompleto.
Función de evaluación: Que cuente el número de
cláusulas insatisfacibles.
Debemos encontrar un equilibrio entre el gradiente y
la aleatoriedad.
70 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Patrones de razonamiento
Septiembre de 2007
71 de 110
Patrones de razonamiento
Problemas duros de satisfacibilidad:
Inteligencia Artificial e Ingenieria del Conocimiento
–
Considerando 3-CNF sentencias. Ej:
(D  B  C)  (B  A  C)  (C  B 
E)  (E  D  B)  (B  E  C)
m = número de cláusulas.
n = número de símbolos.
– Los problemas duros tienen una relación m/n = 4.3
(punto crítico).
Septiembre de 2007
72 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Patrones de razonamiento
a) Gráfico que muestra la probabilidad de que una sentencia en FNC-3 con n =
50 símbolos sea satisfacible, en función del ratio cláusula/símbolo m/n.
b) Gráfico del tiempo de ejecución promedio del DPLL y del SAT sobre 100
sentencias en FNC-3 aleatorias con n=50 para un rango reducido de valores de
m/n alrededor del punto crítico.
Septiembre de 2007
73 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes Lógicos
Agentes basados en lógica
proposicional
Septiembre de 2007
74 de 110
Conclusiones
Inteligencia Artificial e Ingenieria del Conocimiento
Un agente del mundo de Wumpus usando lógica
proposicional:
–
–
–
–
–
–
–
–
–
P1,1
W1,1
Bx,y  (Px,y+1  Px,y-1  Px+1,y  Px-1,y)
Sx,y  (Wx,y+1  Wx,y-1  Wx+1,y  Wx-1,y)
W1,1  W1,2  …  W4,4
W1,1  W1,2
W1,1  W1,3
…
 64 distintos simbolos proposicionales, 155 sentencias.
Septiembre de 2007
75 de 110
Conclusiones
Inteligencia Artificial e Ingenieria del Conocimiento
Encontrar hoyos y wumpus utilizando la inferencia lógica.
Septiembre de 2007
76 de 110
Guardar la pista acerca de la localización y orientación del agente.
Conclusiones
Agente basado en circuitos:
Inteligencia Artificial e Ingenieria del Conocimiento
–
–
–
Circuito secuencial.
Puertas.
Registros.
Comparación: Los agentes basados en inferencia y los
basados en circuitos representan los extremos declarativo
y procesal en el diseño de agentes. Se pueden comparar
según diversas dimensiones:
–
–
–
–
Septiembre de 2007
Precisión.
Eficiencia computacional.
Completitud.
Facilidad de construcción.
77 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Agentes Lógicos
Conclusiones
Septiembre de 2007
78 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Conclusiones
Los agentes inteligentes necesitan el conocimiento acerca del mundo
para tomar las decisiones acertadas.
Los agentes contienen el conocimiento en forma de sentencias
mediante un lenguaje de representación del conocimiento, las cuales
quedan almacenadas en una base de conocimiento.
Un agente basado en conocimiento se compone de una base de
conocimiento y un mecanismo de inferencia.
El agente opera almacenando las sentencias acerca del mundo en su
base de conocimiento, utilizando el mecanismo de inferencia para
inferir sentencias nuevas, y utilizando estas sentencias nuevas para
decidir qué acción debe tomar.
Un lenguaje de representación del conocimiento se define por su
sintaxis, que especifica la estructura de las sentencias, y su semántica,
que define el valor de verdad de cada sentencia en cada mundo
posible, o modelo.
Septiembre de 2007
79 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Conclusiones
La relación de implicación entre las sentencias es crucial para
nuestro entendimiento acerca del razonamiento. Una sentencia 
implica otra sentencia  si  es verdadera en todos los mundos
donde  lo es. Las definiciones familiares a este concepto son: la
validez de la sentencia , y la insatisfacibilidad de la sentencia

La inferencia es el proceso que consiste en derivar nuevas
sentencias a partir de las ya existentes. Los algoritmos de inferencia
sólidos sólo derivan aquellas sentencias que son implicadas; los
algoritmos completos derivan todas las sentencias implicadas.
La lógica proposicional es un lenguaje muy sencillo compuesto por
los símbolos proposicionales y las conectivas lógicas. De esta
manera se pueden manejar proposiciones que se sabe que son
ciertas, falsas, o completamente desconocidas.
Septiembre de 2007
80 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Conclusiones
El conjunto de modelos posibles, dado un vocabulario
proposicional fijado, es finito, y así se puede comprobar la
implicación tan sólo enumerando los modelos. Los algoritmos de
inferencia basados en la comprobación de modelos más eficientes
para la lógica proposicional, entre los que se encuentran los
métodos de búsqueda local y backtracking, a menudo pueden
resolver problemas complejos muy rápidamente.
Las reglas de inferencia son patrones de inferencia sólidos que se
pueden utilizar para encontrar demostraciones. De la regla de
resolución obtenemos un algoritmo de inferencia completo para
bases de conocimiento que están expresadas en forma normal
conjuntiva. El encadenamiento hacia delante y el encadenamiento
hacia atrás son algoritmos de razonamiento muy adecuados para
bases de conocimiento expresadas en cláusulas de Horn.
Septiembre de 2007
81 de 110
Inteligencia Artificial e Ingenieria del Conocimiento
Conclusiones
Se pueden diseñar dos tipos de agentes que utilizan la lógica
proposicional: los agentes basados en inferencia utilizan algoritmos
de inferencia para guardar la pista del mundo y deducir propiedades
ocultas, mientras que los agentes basados en circuitos representas
proposiciones mediante bits en registros, y los actualizan utilizando
la propagación de señal de los circuitos lógicos.
La lógica proposicional es razonablemente efectiva para ciertas
tareas de un agente, pero no se puede escalar para entornos de
tamaño ilimitado, a causa de su falta de poder expresivo para
manejar el tiempo de forma precisa, el espacio, o patrones
genéricos de relaciones entre objetos.
Septiembre de 2007
82 de 110
Ejercicios
Ejercicio1: Dado el juego del buscaminas con una matriz de 4x4 y
3 minas situadas de forma aleatoria, establecer:
Inteligencia Artificial e Ingenieria del Conocimiento
–
–
–
El modelo REAS del buscaminas.
Las reglas que componen la BC inicialmente.
Y una simulación del juego que acabe en éxito, mostrando las reglas
que componen la BC final.
Ejercicio2: Dado el párrafo “Si el unicornio es un animal
mitológico, entonces es inmortal, pero si no es mitológico, entonces
es un mamífero mortal. Si el unicornio es inmortal o mamífero,
entonces tiene cuernos. El unicornio es mágico si tiene cuernos”.
Demostrar:
–
–
–
Septiembre de 2007
El unicornio es un animal mitológico.
El unicornio es un animal mágico.
El unicornio tiene cuernos.
83 de 110
Universidad de Castilla-La Mancha
Luis Jiménez Linares
[email protected]
Luis Enrique Sánchez Crespo
[email protected]