Sistemas Basados En Logica

21
SISTEMAS SISTEMAS BASADOS EN BASADOS EN LÓGICA FORMAL LÓGICA FORMAL

description

Introduccion de los Sistemas Basados en Logica

Transcript of Sistemas Basados En Logica

Page 1: Sistemas Basados En Logica

SISTEMAS SISTEMAS BASADOS EN BASADOS EN

LÓGICA FORMALLÓGICA FORMAL

Page 2: Sistemas Basados En Logica

Inferencia y RazonamientoInferencia y Razonamiento• InferirInferir es sacar una consecuencia categórica, es sacar una consecuencia categórica,

indiscutible, a partir de hechos conocidos o asumidos indiscutible, a partir de hechos conocidos o asumidos como verdaderos.como verdaderos.

• Realizar Realizar inferenciasinferencias significa derivar nuevos hechos significa derivar nuevos hechos inobjetablesinobjetables, a partir de un conjunto de hechos dados , a partir de un conjunto de hechos dados como verdaderos.como verdaderos.

• RazonarRazonar es discurrir, dando razones, para llegar a es discurrir, dando razones, para llegar a conclusiones o probar algo.conclusiones o probar algo.

• El proceso de El proceso de razonamientorazonamiento permite llegar a permite llegar a conclusiones que conclusiones que pueden o no ser correctaspueden o no ser correctas, a partir , a partir de un conjunto de hechos conocidos como de un conjunto de hechos conocidos como verdaderos.verdaderos.

Page 3: Sistemas Basados En Logica

Reglas de Inferencia LógicaReglas de Inferencia Lógica

• Modus PonensModus Ponens– Si Si pp y ( y (p p →→ q q) son verdaderas, entonces ) son verdaderas, entonces qq tiene tiene

que ser verdadera.que ser verdadera.

• Modus TolensModus Tolens– Si (Si (p p →→ q q) es verdadera y ) es verdadera y qq es falsa, entonces es falsa, entonces pp

tiene que ser falsa.tiene que ser falsa.

• ResoluciónResolución– Si (Si (p p ∨∨ q q) es verdadera y ) es verdadera y (~q (~q ∨∨ r r) es verdadera, ) es verdadera,

entonces (entonces (pp ∨∨ rr) tiene que ser verdadera.) tiene que ser verdadera.

Page 4: Sistemas Basados En Logica

Métodos de Razonamiento LógicoMétodos de Razonamiento Lógico• DeductivoDeductivo: Sus conclusiones son siempre correctas. Forma : Sus conclusiones son siempre correctas. Forma

monotónica de realizar inferencias.monotónica de realizar inferencias.– Para todo Para todo pp, , qq, , rr; si ; si pp mayor que mayor que qq y y qq mayor que mayor que rr, entonces , entonces pp

mayor que mayor que rr..

• AbductivoAbductivo: Sus conclusiones pueden o no ser correctas. Es : Sus conclusiones pueden o no ser correctas. Es un método para generar explicaciones. un método para generar explicaciones. – Si (Si (pp →→ qq) es verdadera y ) es verdadera y qq es verdadera, entonces es verdadera, entonces pp podría ser podría ser

verdadera.verdadera.

• InductivoInductivo: Sus conclusiones pueden o no ser correctas. Es la : Sus conclusiones pueden o no ser correctas. Es la base de la investigación científica.base de la investigación científica.– Si Si P(a), P(b), ... P(n)P(a), P(b), ... P(n) son verdaderos, entonces se puede concluir que son verdaderos, entonces se puede concluir que

para todo para todo xx, , P(x)P(x) puede ser verdadero. puede ser verdadero.

Page 5: Sistemas Basados En Logica

Definición de PredicadoDefinición de Predicado• Una sentencia expresa Una sentencia expresa relacionesrelaciones entre entre entre entre

objetosobjetos, así como también , así como también cualidadescualidades y y atributosatributos de tales objetos. de tales objetos.

• Los Los objetosobjetos pueden ser personas, objetos pueden ser personas, objetos físicos o conceptos. Se representan mediante físicos o conceptos. Se representan mediante una Constante ( Letras minúsculas) , una Constante ( Letras minúsculas) , Variable( La primer letra es mayúscula) Variable( La primer letra es mayúscula)

• Las Las cualidadescualidades, , relacionesrelaciones o o atributosatributos, se , se denominan denominan predicadospredicados..

• Los Los objetosobjetos se conocen como se conocen como argumentosargumentos o o términostérminos del del predicadopredicado. .

Page 6: Sistemas Basados En Logica

Características de los PredicadosCaracterísticas de los Predicados

• Los Los predicadospredicados tienen asociado un valor de veracidad tienen asociado un valor de veracidad que resuelve a que resuelve a verdaderoverdadero o o falsofalso, dependiendo de sus , dependiendo de sus términostérminos o o argumentosargumentos. Es un mapeo de objetos al . Es un mapeo de objetos al conjunto {0,1}conjunto {0,1}

• Los Los predicadospredicados pueden ser usados para asignar una pueden ser usados para asignar una cualidad abstractacualidad abstracta a sus términos o para representar a sus términos o para representar accionesacciones o o relaciones de acciónrelaciones de acción entre dos objetos. entre dos objetos.

• Al construir un Al construir un predicadopredicado se asume que su veracidad se asume que su veracidad está basada en su relación con el mundo real. está basada en su relación con el mundo real.

Page 7: Sistemas Basados En Logica

Ejemplo

Pedro XJosé Y

X

X= { pedro, jose, X, Y}

Relación José es el padre de Pedro

Predicado padre( jose, pedro) es V o F depende del dominio del problema

Mapeo padre: X x X ->{0,1}

Page 8: Sistemas Basados En Logica

Predicados, Axiomas y PatronesPredicados, Axiomas y Patrones

• A los A los predicadospredicados cuyos cuyos argumentosargumentos representen a un representen a un objeto específicoobjeto específico ( (términostérminos constantesconstantes), que sean establecidos y asumidos ), que sean establecidos y asumidos como lógicamente verdaderos, se los denomina como lógicamente verdaderos, se los denomina axiomasaxiomas. .

• A los A los predicadospredicados que tienen que tienen variablesvariables como como argumentosargumentos, se los denomina , se los denomina patronespatrones..

Page 9: Sistemas Basados En Logica

Átomo: Es la aplicación de un predicado a una lista de argumentos:

Lista de argumentos: constante, variable, predicados, funciones

padre ( jose, pedro)

ama (jose, perro_de (jose))Operadores: Λ ,V ,~, -->Cuántificadores: ∀ , ∃

Expresión: Una expresión puede ser un atomo o una combinacion de atomos por medio de operadores o cuantificadores

Page 10: Sistemas Basados En Logica

Escribir las siguientes expresiones:Tomas es mas pequeño que Karen

Jose es mas alto que Tomas

Tanto Karen como Jaime son mas altos que Tomas

Nadie es mas alto que Jaime

Jose ama a su perro

Pedro ama a todos sus perros

Tomas golpeo a alguien que tenia un martillo

Tomas golpeo a alguien y utilizo un martillo

Page 11: Sistemas Basados En Logica

SkolenizaciónElimina los cuantificadores Existenciales.

a) ∃x∀yQ(x,y) ∃x ∀y1,y2,..ynQ(x,y1,y2, ..yn)

∀y1,y2,..ynQ(x0,y1,y2, ..yn)

x0 es la constante de Skolen

b) ∀y∃x Q(x,y) ∀y1,y2,..yn ∃x Q(x,y1,y2, ...yn)

∀y1,y2,..ynQ(f(y1,y2, ..yn), y1,y2, ...yn)

f es la función de Skolen

Page 12: Sistemas Basados En Logica

Ejemplo

a) Existe al menos una casa que pertenece a todos

b) Todos Tienen por lo menos una casa

Page 13: Sistemas Basados En Logica

Lógica de Predicados: La Lógica de Predicados: La UnificaciónUnificación

• Para determinar la veracidad de sentencias Para determinar la veracidad de sentencias compuestas por predicados y conectivos lógicos, es compuestas por predicados y conectivos lógicos, es necesario evaluar la veracidad de cada uno de sus necesario evaluar la veracidad de cada uno de sus componentes y luego aplicar los operadores lógicos a componentes y luego aplicar los operadores lógicos a los resultados. los resultados.

• Un predicado componente resuelve a verdadero si se Un predicado componente resuelve a verdadero si se identifica con un identifica con un axiomaaxioma de la base de conocimiento. de la base de conocimiento.

• La La unificaciónunificación es un proceso que computa las es un proceso que computa las sustituciones apropiadas para determinar si dos sustituciones apropiadas para determinar si dos predicados coinciden o se identifican.predicados coinciden o se identifican.

Page 14: Sistemas Basados En Logica

Lógica de Predicados: Lógica de Predicados: El Proceso de Unificación (1)El Proceso de Unificación (1)

Todo predicado que no contenga variables en sus Todo predicado que no contenga variables en sus argumentos, debe tener un axioma que se identifique argumentos, debe tener un axioma que se identifique totalmente, para considerarlo como verdadero.totalmente, para considerarlo como verdadero.

Si un Si un predicadopredicado tiene una tiene una variablevariable, ésta debe ser , ésta debe ser asociada a un valor determinado. Se seleccionan asociada a un valor determinado. Se seleccionan todos los todos los axiomasaxiomas de la base que se identifiquen con de la base que se identifiquen con el el patrónpatrón en todo excepto por la en todo excepto por la variablevariable. La . La variablevariablees asociada con el es asociada con el valorvalor del del argumentoargumento de la posición de la posición correspondiente del correspondiente del axiomaaxioma..

Page 15: Sistemas Basados En Logica

Lógica de Predicados:Lógica de Predicados:El Proceso de Unificación (2)El Proceso de Unificación (2)

Si más de un Si más de un axiomaaxioma se identifica con el se identifica con el predicadopredicadodado, todos los dado, todos los valores asociadosvalores asociados son considerados y son considerados y tratados tratados separadamenteseparadamente..

El proceso de identificación continúa asumiendo que El proceso de identificación continúa asumiendo que el valor de la el valor de la variablevariable es el es el valor asociadovalor asociado, en , en cualquier lugar que ésta aparezca.cualquier lugar que ésta aparezca.

Los conectivos lógicos son aplicados a todos los Los conectivos lógicos son aplicados a todos los predicados, para determinar la veracidad de la predicados, para determinar la veracidad de la sentencia dada.sentencia dada.

Page 16: Sistemas Basados En Logica

Elementos a considerar para UnificarVariable ligada: (v, exp)

v: Variable

exp: Cualquier Expresión: Constante, variable, predicado, función, conjunciones, disyunciones.

Lista de variables ligadas: {(v, exp)}No debe haber variables ligadas repetidas

Instanciación: p | σ

p: exp y σ: lista de variables ligadas

abogado (X) | σ ={(X, jose)} ≅ abogado(jose)

Page 17: Sistemas Basados En Logica

Unificador mas general de 2 expresiones: p, q

umg (p, q)

Cuando al menos una de las 2 Ninguna de las 2 expresionesexpresiones es una constante o variable es constante o variablea._Si al menos una de las expresiones Puede ser función, predicado es una variable, se liga la variable conjunciones, disyunciones a la otra expresión Deben ser mismo tipo, nombre σ ={(p, q)} y longitud (m) b. Si las dos expresiones son constantes k=1 σ =Φ idénticas mientras k<= m σ =Φ vacío σ’ <- umg(pk | qk)

c. Si las 2 expresiones son constantes distintas el proceso fallo σ <- σ’ union σ fin mientras

Page 18: Sistemas Basados En Logica

Ejemplos

1) p: x

q: jose

2) p: x

q: casa_de( jose)

3) p: abogado (x)

q: abogado (jose)

4) p: f (x, y)

q: f (y, a)

Page 19: Sistemas Basados En Logica

La Normalización de una ExpresiónAlgoritmo

• Eliminar • Introducir las negaciones a nivel atómico

~(a ^ b) ≡ ~a v ~b • Variables con alcances diferentes deben tener nombres

diferentes• Eliminar los cuantificadores existenciales y mover los

cuantificadores Universales a la izquierda• Borrar prefijos• Manipular hasta dejar conjunciones de disyunciones• Separar los factores de las conjunciones• Agrupar las negaciones• Insertar el

Page 20: Sistemas Basados En Logica

Ejemplo

∀c(grande(c)->mantenimiento(c) v [~∃ jjardin(j, c) ^ ∃plimpiar (p,c)])

Page 21: Sistemas Basados En Logica

Problema#2

1. A Jhon le gusta toda clase de comida2. Las manzanas son comida3. El pollo es comida4. Cualquier cosa que uno coma y no le mate es comida5. Bill come cacahuates y aún esta vivo6. Sue come todo lo que come Bill.

¿ A Jhon le gustan los cacahuates ?

Usando la resolución, determine si la consulta es Verdadera