inteligencia artificial 3.2 lógica de primer orden

50
Inteligencia Inteligencia Artificial Artificial 3.2 Lógica de Primer 3.2 Lógica de Primer Orden Orden

Upload: prospero-muzquiz

Post on 11-Apr-2015

111 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Inteligencia Artificial 3.2 Lógica de Primer Orden

Inteligencia ArtificialInteligencia Artificial

3.2 Lógica de Primer Orden3.2 Lógica de Primer Orden

Page 2: Inteligencia Artificial 3.2 Lógica de Primer Orden

ObjetivoObjetivo

Presentar una lógica suficiente para Presentar una lógica suficiente para construir agentes basados en el construir agentes basados en el conocimiento.conocimiento.

Page 3: Inteligencia Artificial 3.2 Lógica de Primer Orden

IntroducciónIntroducción

La lógica proposicional es uno de los La lógica proposicional es uno de los lenguajes de representación más sencillos, lenguajes de representación más sencillos, que permite mostrar las cuestiones que permite mostrar las cuestiones fundamentales.fundamentales.

Sin embargo, su ontología es muy limitada, y Sin embargo, su ontología es muy limitada, y abarca sólo aquellos mundos constituidos por abarca sólo aquellos mundos constituidos por hechos. hechos.

La La lógica de primer ordenlógica de primer orden tiene alcances tiene alcances ontológicos más amplios. Considera el mundo ontológicos más amplios. Considera el mundo constituido por constituido por objetosobjetos y y propiedadespropiedades que que los distingan.los distingan.

Page 4: Inteligencia Artificial 3.2 Lógica de Primer Orden

IntroducciónIntroducción

Entre estos objetos hay varios tipos de Entre estos objetos hay varios tipos de relacionesrelaciones, algunas de las cuales son las , algunas de las cuales son las funcionesfunciones..

EjemplosEjemplos Objetos: gente, casas, números, teorías, Ronald Objetos: gente, casas, números, teorías, Ronald

McDonald, colores, juegos de béisbol, guerras, siglos, …McDonald, colores, juegos de béisbol, guerras, siglos, … Relaciones: hermano de, mayor que, dentro de, parte Relaciones: hermano de, mayor que, dentro de, parte

de, de color, sucedió luego de, es el dueño de, …de, de color, sucedió luego de, es el dueño de, … Propiedades: rojo, redondo, de varios pisos, falso, lo Propiedades: rojo, redondo, de varios pisos, falso, lo

mejor, …mejor, … Funciones: padre de, mejor amigo de, tercer tiempo de, Funciones: padre de, mejor amigo de, tercer tiempo de,

uno más que, …uno más que, …

Page 5: Inteligencia Artificial 3.2 Lógica de Primer Orden

IntroducciónIntroducción

““Uno más dos es igual a tres”Uno más dos es igual a tres” Objetos: uno, dos, tres, uno más dos.Objetos: uno, dos, tres, uno más dos. Relación: es igual aRelación: es igual a Función: másFunción: más

““Los cuadros cercanos al wumpus apestan”Los cuadros cercanos al wumpus apestan” Objetos: cuadros, wumpusObjetos: cuadros, wumpus Propiedad: apestososPropiedad: apestosos Relación: cercaníaRelación: cercanía

““El malvado rey Juan gobernó Inglaterra en 1200”El malvado rey Juan gobernó Inglaterra en 1200” Objetos: Juan, Inglaterra, 1200Objetos: Juan, Inglaterra, 1200 Relación: gobernóRelación: gobernó Propiedades: malvado, reyPropiedades: malvado, rey

Page 6: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

En la lógica proposicional, cada expresión es En la lógica proposicional, cada expresión es una una oraciónoración, que representa un hecho. En , que representa un hecho. En la lógica de primer orden hay oraciones, la lógica de primer orden hay oraciones, pero también pero también términostérminos que representan que representan objetos. objetos.

Los signos que representan constantes, las Los signos que representan constantes, las variables y los signos de funciones sirven variables y los signos de funciones sirven todos para construir términos; los todos para construir términos; los cuantificadores y los signos de predicados cuantificadores y los signos de predicados sirven para construir oraciones.sirven para construir oraciones.

Page 7: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

ElementosElementos Signos de constantesSignos de constantes:: A, B, C, Juan A, B, C, Juan…… Signos de predicadoSignos de predicado:: Redondo, Redondo,

Hermano…Hermano… Ejemplo, Ejemplo, HermanoHermano hace referencia al conjunto de hace referencia al conjunto de

tuplas {<Rey Juan, Ricardo Corazón de León> tuplas {<Rey Juan, Ricardo Corazón de León> <Ricardo Corazón de León, rey Juan>}<Ricardo Corazón de León, rey Juan>}

Signos de funcionesSignos de funciones:: Coseno, PadreDe, Coseno, PadreDe, PiernaIzquierdaDe…PiernaIzquierdaDe…

Son relaciones de en las que un objeto está Son relaciones de en las que un objeto está relacionado justamente con otro objeto. relacionado justamente con otro objeto.

Page 8: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

TérminosTérminos Un Un términotérmino es una expresión lógica que es una expresión lógica que

se refiere un objeto. Los signos de se refiere un objeto. Los signos de constante son términos.constante son términos.

A veces es más práctico utilizar una A veces es más práctico utilizar una expresión para referirse a un objeto, por expresión para referirse a un objeto, por ejemplo, en vez de ejemplo, en vez de LaPiernaIzquierdaDeJuanLaPiernaIzquierdaDeJuan es más es más práctico usar práctico usar PiernaIzquierdaDePiernaIzquierdaDe((JuanJuan))

Page 9: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Oraciones atómicasOraciones atómicas Los términos y signos de predicado se Los términos y signos de predicado se

combinan para formar combinan para formar oraciones atómicasoraciones atómicas, , mediante las que se afirman hechos.mediante las que se afirman hechos.

Una oración atómica está formada por un signo Una oración atómica está formada por un signo de predicado y por una lista de términos entre de predicado y por una lista de términos entre paréntesis, ejemploparéntesis, ejemplo

Hermano Hermano ((Ricardo, JuanRicardo, Juan)) Casado Casado ((PadreDe PadreDe ((RicardoRicardo), ), MadreDeMadreDe ( (JuanJuan))))

Se dice que una oración Se dice que una oración atómicaatómica es verdadera es verdadera si la relación a la que alude el signo de si la relación a la que alude el signo de predicado es válida para los objetos a los que predicado es válida para los objetos a los que aluden los argumentos.aluden los argumentos.

Page 10: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Oraciones complejasOraciones complejas Mediante los Mediante los conectores lógicosconectores lógicos se se

pueden construir oraciones más pueden construir oraciones más complicadas, como en cálculo complicadas, como en cálculo proposicional, ejemplo:proposicional, ejemplo:

Hermano Hermano ((RicardoRicardo, , JuanJuan) ) HermanoHermano ( (JuanJuan, , RicardoRicardo))

MayorMayor ( (JuanJuan, 30) , 30) MenorMenor ( (JuanJuan, 30), 30) MayorMayor ( (JuanJuan, 30) , 30) MenorMenor ( (JuanJuan, 30), 30) HermanoHermano ( (RobinRobin, , JuanJuan))

Page 11: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

CuantificadoresCuantificadores Los Los cuantificadores cuantificadores permiten expresar permiten expresar

propiedades de grupos completos de propiedades de grupos completos de objetos en vez de enumerarlos por sus objetos en vez de enumerarlos por sus nombres.nombres.

La lógica de primer orden contiene dos La lógica de primer orden contiene dos cuantificadores estándar, denominados cuantificadores estándar, denominados universalesuniversales y y existencialesexistenciales..

Page 12: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Cuantificación universal (Cuantificación universal ()) Facilita la expresión de reglas generales, Facilita la expresión de reglas generales,

ejemplo: en vez de decir “Mancha es un ejemplo: en vez de decir “Mancha es un gato” y “Mancha es un mamífero” se usa:gato” y “Mancha es un mamífero” se usa:

xx Gato Gato ((xx) ) Mamífero Mamífero ((xx) ) Lo cual equivale aLo cual equivale a

Gato Gato ((ManchaMancha) ) Mamífero Mamífero ((ManchaMancha) ) Gato Gato ((RebecaRebeca) ) Mamífero Mamífero ((RebecaRebeca) ) Gato Gato ((FélixFélix) ) Mamífero Mamífero ((FélixFélix) ) Gato Gato ((JuanJuan) ) Mamífero Mamífero ((JuanJuan) ) … …

Page 13: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Cuantificación universal (Cuantificación universal ()) Por lo tanto la primera expresión será Por lo tanto la primera expresión será

valida si y sólo si todas estas últimas valida si y sólo si todas estas últimas son también verdaderas, es decir, si son también verdaderas, es decir, si PP es verdadera para todos los objetos es verdadera para todos los objetos xx del universo. Por lo tanto, a del universo. Por lo tanto, a se le se le conoce como cuantificador conoce como cuantificador universaluniversal..

Cuando un término no tiene variables se Cuando un término no tiene variables se le conoce como le conoce como término de basetérmino de base..

Page 14: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Cuantificación existencial (Cuantificación existencial ()) Con ella podemos hacer afirmaciones Con ella podemos hacer afirmaciones

sobre cualquier objeto del universo sin sobre cualquier objeto del universo sin tener que nombrarlo, ejemplo, si tener que nombrarlo, ejemplo, si queremos decir que Mancha tiene un queremos decir que Mancha tiene un hermano que es un gato:hermano que es un gato:

xx Hermano Hermano ((xx, , ManchaMancha) ) GatoGato ( (xx)) En general, En general, xx P P es verdadero si es verdadero si PP es es

verdadero para verdadero para ciertocierto objeto del universo. objeto del universo.

Page 15: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Cuantificación existencial (Cuantificación existencial ()) xx Hermano Hermano ((xx, , ManchaMancha) ) GatoGato ( (xx) )

equivale a las oraciones:equivale a las oraciones: ((Hermano Hermano ((ManchaMancha, , ManchaMancha) ) GatoGato ( (ManchaMancha)) ))

( (Hermano Hermano ((RebecaRebeca, , ManchaMancha) ) GatoGato ((RebecaRebeca)) )) ( (Hermano Hermano ((FélixFélix, , ManchaMancha) ) GatoGato ((FélixFélix)) )) ( (Hermano Hermano ((RicardoRicardo, , ManchaMancha) ) GatoGato ((RicardoRicardo)) )) ……

Así como Así como es el conector natural para es el conector natural para , , es el conector natural para es el conector natural para ..

Page 16: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Cuantificadores anidadosCuantificadores anidados ““Para toda Para toda xx y toda y toda yy, si , si xx es el padre de es el padre de yy, ,

entonces entonces yy es el hijo de es el hijo de xx”” x,yx,y Padre Padre ((x,yx,y) ) Hijo Hijo ((y,xy,x))

““Para toda Para toda xx y toda y toda yy, si , si xx es hermano de es hermano de yy, , entonces entonces yy es hermano de es hermano de x”x”

x,yx,y Hermano Hermano ((x,yx,y) ) Hermano Hermano ((y,xy,x)) ““Todas las personas aman a alguien”Todas las personas aman a alguien”

x x y Aman y Aman ((xx,,yy)) ““Siempre hay alguien a quien todos aman”Siempre hay alguien a quien todos aman”

y y x Aman x Aman ((xx,,yy))

Page 17: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Una oración como Una oración como xx P P ((yy), en la que ), en la que yy carece de cuantificador, es carece de cuantificador, es incorrecta.incorrecta.

El tEl término érmino fórmula bien fórmula bien configuradaconfigurada o o fbcfbc se emplea para se emplea para calificar oraciones en las que todas calificar oraciones en las que todas sus variables se han introducido sus variables se han introducido adecuadamente.adecuadamente.

Page 18: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Relaciones entre Relaciones entre y y Ambos cuantificadores están estrechamente Ambos cuantificadores están estrechamente

relacionados entre sí mediante la negación. relacionados entre sí mediante la negación. ““A todos les desagradan las espinacas” A todos les desagradan las espinacas” “No “No

hay alguien a quien le gusten las espinacas”hay alguien a quien le gusten las espinacas” xx LeGustanLeGustan((xx, , espinacasespinacas) ) xx LeGustanLeGustan ( (xx, ,

espinacasespinacas)) ““A todos les gusta el helado” A todos les gusta el helado” “No hay “No hay

alguien a quien no le guste el helado”alguien a quien no le guste el helado” xx LeGustaLeGusta((xx, , heladohelado) ) xx LeGustaLeGusta ( (xx, , heladohelado))

Page 19: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

Relaciones entre Relaciones entre y y Puesto que Puesto que es una conjunción de objetos del es una conjunción de objetos del

universo y universo y es su disyunción, es natural que es su disyunción, es natural que obedezcan las leyes de De Morgan:obedezcan las leyes de De Morgan:

xx PP xx PP

xx PP xx PP

xx PP xx PP

xx PP xx PP

PP QQ ((PP QQ))

((PP Q)Q) PP QQ

PP QQ ( (PP QQ))

PP QQ ( (PP QQ))

Page 20: Inteligencia Artificial 3.2 Lógica de Primer Orden

Sintaxis y semánticaSintaxis y semántica

IgualdadIgualdad Para formular aseveraciones en las que los dos Para formular aseveraciones en las que los dos

términos se refieren a un mismo objeto se términos se refieren a un mismo objeto se utiliza el utiliza el símbolo de igualdadsímbolo de igualdad::

PadrePadre((JuanJuan) = ) = EnriqueEnrique El signo de igualdad sirve para describir las El signo de igualdad sirve para describir las

propiedades de una función determinada o se propiedades de una función determinada o se puede emplear en la negación para insistir en puede emplear en la negación para insistir en que dos términos no son el mismo objeto:que dos términos no son el mismo objeto:

xx,,yy HermanoHermano((ManchaMancha, , xx) ) HermanoHermano((ManchaMancha, , yy) ) ((xx==yy))

Page 21: Inteligencia Artificial 3.2 Lógica de Primer Orden

Extensiones en la NotaciónExtensiones en la Notación

Lógica de orden superiorLógica de orden superior El nombre lógica de primer orden se basa en el El nombre lógica de primer orden se basa en el

hecho de que con ella se cuantifican objetos hecho de que con ella se cuantifican objetos (las entidades de primer orden que en realidad (las entidades de primer orden que en realidad existen en el mundo), aunque no permiten existen en el mundo), aunque no permiten cuantificar las relaciones o funciones que cuantificar las relaciones o funciones que existen entre dichos objetos.existen entre dichos objetos.

Mediante la Mediante la lógica de orden superiorlógica de orden superior es es posible cuantificar relaciones y funciones al posible cuantificar relaciones y funciones al igual que objetos.igual que objetos.

x,yx,y ( (xx==yy) ) ( (pp pp((xx) ) pp((yy)))) f,gf,g ( (ff==gg) ) ( (xx ff((xx) ) gg((xx))))

Page 22: Inteligencia Artificial 3.2 Lógica de Primer Orden

Extensiones en la NotaciónExtensiones en la Notación

Expresiones funcionales y de predicado Expresiones funcionales y de predicado usando el operador usando el operador .. El operador El operador se usa para convertir términos se usa para convertir términos

en funciones, especificando sus argumentos:en funciones, especificando sus argumentos: x,yx,y xx22 - y - y22

Esta expresión se aplica a los argumentos Esta expresión se aplica a los argumentos para producir un término lógico de la misma para producir un término lógico de la misma manera que lo haría una función común:manera que lo haría una función común:

((x,yx,y xx22 - y - y22) (25,24) = 25) (25,24) = 2522 – 24 – 2422 = 49 = 49

Page 23: Inteligencia Artificial 3.2 Lógica de Primer Orden

Extensiones en la NotaciónExtensiones en la Notación

El cuantificador de unicidad El cuantificador de unicidad !! Se utiliza para afirmar la existencia de Se utiliza para afirmar la existencia de

un objeto un objeto específicoespecífico que satisface que satisface determinado predicado.determinado predicado.

““Existe un solo rey”Existe un solo rey” ! ! ReyRey((xx))

““Todo país tiene exactamente un Todo país tiene exactamente un gobernante””gobernante””

cc PaísPaís((cc) ) ! ! rr GobernanteGobernante((rr, , cc))

Page 24: Inteligencia Artificial 3.2 Lógica de Primer Orden

Extensiones en la NotaciónExtensiones en la Notación

El operador de unicidad El operador de unicidad Se utiliza para representar directamente Se utiliza para representar directamente

el objeto específico, ejemplo:el objeto específico, ejemplo: ““El único gobernante de Libertania está El único gobernante de Libertania está

muerto”muerto” MuertoMuerto ( ( rr GobernanteGobernante((rr, , LibertaniaLibertania)) ))

Que es una abreviatura de Que es una abreviatura de ! ! rr Gobernante Gobernante ((rr,, Libertania Libertania) ) Muerto Muerto ((rr))

Page 25: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

En la representación del En la representación del conocimiento, un conocimiento, un dominiodominio es un es un fragmento del mundo acerca del que fragmento del mundo acerca del que deseamos expresar un determinado deseamos expresar un determinado conocimiento.conocimiento.

Page 26: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

El dominio del parentescoEl dominio del parentesco En este dominio están presentes hechos tales como En este dominio están presentes hechos tales como

“Isabel es la madre de Carlos” y “Carlos s el padre de “Isabel es la madre de Carlos” y “Carlos s el padre de Guillermo” y reglas como “Si Guillermo” y reglas como “Si xx es la madre de es la madre de yy y y yy es es padre de padre de zz, entonces , entonces xx es la abuela de es la abuela de zz””

Los objetos de este dominio son personas. Entre las Los objetos de este dominio son personas. Entre las propiedades que poseen están el género y las relaciones propiedades que poseen están el género y las relaciones que guardan entre sí son las de padres, hermanos, que guardan entre sí son las de padres, hermanos, esposos, etc. Por lo tanto, hay dos predicados unarios: esposos, etc. Por lo tanto, hay dos predicados unarios: HombreHombre y y MujerMujer. La mayoría de las relaciones de . La mayoría de las relaciones de parentesco serán predicados binarios: parentesco serán predicados binarios: Progenitor, Hijo, Progenitor, Hijo, Hermano, Hermana, Progenie, Hijo, Hija, Esposo, Esposa, Hermano, Hermana, Progenie, Hijo, Hija, Esposo, Esposa, Cónyuge, Abuelo, Nieto, Primo, Tía, Tío.Cónyuge, Abuelo, Nieto, Primo, Tía, Tío.

Para Para Madre Madre y y PadrePadre se usarán funciones, puesto que se usarán funciones, puesto que todo mundo cuenta con ellos desde un punto de vista todo mundo cuenta con ellos desde un punto de vista biológico.biológico.

Page 27: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

El dominio del parentescoEl dominio del parentesco La madre de alguien es su progenitor La madre de alguien es su progenitor

femenino:femenino: m,cm,c MadreMadre((m,cm,c) ) MujerMujer((mm) ) ProgenitorProgenitor((m,cm,c))

El esposo de alguien es su cónyuge El esposo de alguien es su cónyuge masculinomasculino

w,hw,h EsposoEsposo((h,wh,w) ) HombreHombre((hh) ) CónyugeCónyuge((h,wh,w)) Masculino y femenino son categorías Masculino y femenino son categorías

disyuntas:disyuntas: x Hombrex Hombre((xx) ) MujerMujer((xx))

Page 28: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

El dominio del parentescoEl dominio del parentesco Progenitor y progenie son relaciones inversas:Progenitor y progenie son relaciones inversas:

p,cp,c ProgenitorProgenitor((pp,,cc) ) ProgenieProgenie((c,pc,p) ) Un(a) abuelo(a) es progenitor del progenitor de Un(a) abuelo(a) es progenitor del progenitor de

alguien:alguien: g,cg,c Abuelo_aAbuelo_a((g,cg,c) ) p Progenitorp Progenitor((g,pg,p) )

ProgenitorProgenitor((p,cp,c)) Un hermano es otro de los hijos de los Un hermano es otro de los hijos de los

progenitores de alguien:progenitores de alguien: x,y Hermanosx,y Hermanos((x,yx,y) ) x x y y p Progenitorp Progenitor((p,xp,x) )

ProgenitorProgenitor((p,yp,y))

Page 29: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

Axiomas, definiciones y teoremasAxiomas, definiciones y teoremas Los matemáticos crean Los matemáticos crean axiomasaxiomas para capturar los para capturar los

hechos básicos acerca de un dominio, para definir otros hechos básicos acerca de un dominio, para definir otros conceptos en función de tales hechos básicos y para conceptos en función de tales hechos básicos y para utilizar los axiomas y las definiciones para demostrar utilizar los axiomas y las definiciones para demostrar teoremasteoremas..

¿Cómo saber si se han postulado una cantidad suficiente ¿Cómo saber si se han postulado una cantidad suficiente de axiomas de tal manera que un dominio quede de axiomas de tal manera que un dominio quede completamente especificado? Postulando un conjunto de completamente especificado? Postulando un conjunto de predicados básicos en función de los cuales se pueden predicados básicos en función de los cuales se pueden definir los demás.definir los demás.

¿Y si tenemos demasiadas oraciones? Revisar cuáles ¿Y si tenemos demasiadas oraciones? Revisar cuáles oraciones no son necesarias y se pueden inferir con oraciones no son necesarias y se pueden inferir con otras oraciones.otras oraciones.

Page 30: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

Axiomas, definiciones y teoremasAxiomas, definiciones y teoremas Sin embargo, hay Sin embargo, hay axiomas axiomas

independientes,independientes, que son aquellos que que son aquellos que no se pueden obtener a partir de otros no se pueden obtener a partir de otros axiomas.axiomas.

Un axioma como Un axioma como x,yx,y PP((x,yx,y) ) … se … se conoce como conoce como definicióndefinición de de PP, porque , porque sirve para definir exactamente para qué sirve para definir exactamente para qué objetos objetos PP se cumple y para cuáles no. se cumple y para cuáles no.

Page 31: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

El dominio de los conjuntosEl dominio de los conjuntos En este dominio, En este dominio, ConjuntoVacíoConjuntoVacío es una es una

constante, constante, MiembroMiembro y y SubconjuntoSubconjunto son son predicados; predicados; IntersecciónIntersección, , UniónUnión y y AdyunciónAdyunción o o IncorporaciónIncorporación son funciones. son funciones. ConjuntoConjunto es un es un predicado únicamente válido en los conjuntos.predicado únicamente válido en los conjuntos.

Los ocho axiomas siguientes estipulan que:Los ocho axiomas siguientes estipulan que: Los únicos conjuntos son el conjunto vacío y aquellos Los únicos conjuntos son el conjunto vacío y aquellos

que resultan de incorporar algo a un conjuntoque resultan de incorporar algo a un conjunto ss ConjuntoConjunto((ss) ) ( (ss = = ConjuntoVacioConjuntoVacio) ) ( (xx,,ss22

ConjuntoConjunto((ss22) ) ss==AdyuntoAdyunto((xx, , ss22))))

Page 32: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

El conjunto vacío es aquel que no tiene El conjunto vacío es aquel que no tiene incorporado ningún elemento.incorporado ningún elemento.

x,sx,s AdyuntoAdyunto((xx, , ss) = ) = ConjuntoVacíoConjuntoVacío La adyunción de un elemento que ya esté en La adyunción de un elemento que ya esté en

el conjunto no produce efecto alguno.el conjunto no produce efecto alguno. x,sx,s MiembroMiembro((x,sx,s) ) ss = = AdyuntoAdyunto((x,sx,s))

Los únicos miembros de un conjunto son los Los únicos miembros de un conjunto son los elementos que ya fueron incorporados a elementos que ya fueron incorporados a dicho conjunto.dicho conjunto.

x,sx,s MiembroMiembro((xx) ) yy,,ss22 ( (ss==AdjuntoAdjunto((yy, , ss22) ) ( (xx==yy MiembroMiembro((xx,,ss22))))))

Page 33: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

Un conjunto es subconjunto de otro si y sólo Un conjunto es subconjunto de otro si y sólo si todos los miembros del primer conjunto si todos los miembros del primer conjunto son miembros del segundo conjunto.son miembros del segundo conjunto.

ss11,,ss22 SubconjuntoSubconjunto((ss11,,ss22) ) ( (xx MiembroMiembro((xx, , ss11) ) MiembroMiembro((xx, , ss22))))))

Dos conjuntos son iguales si y sólo si cada Dos conjuntos son iguales si y sólo si cada uno de ellos es subconjunto del otro.uno de ellos es subconjunto del otro.

ss11,,ss2 2 ((ss1 1 = = ss22) ) (Subconjunto(s(Subconjunto(s11,,ss22) ) MiembroMiembro((ss22, , ss11))))))

Page 34: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

Un objeto es miembro de la intersección de Un objeto es miembro de la intersección de dos conjuntos si y sólo si es también dos conjuntos si y sólo si es también miembro de cada uno de los conjuntos. miembro de cada uno de los conjuntos.

xx,,ss11,,ss22 Miembro Miembro ((x, Intersecciónx, Intersección((ss11,,ss22)) )) Miembro Miembro ((xx,,ss11) ) Miembro Miembro ((xx,,ss22) )

Un objeto es miembro de la unión de dos Un objeto es miembro de la unión de dos conjuntos si y sólo si es también miembro conjuntos si y sólo si es también miembro de uno de los dos conjuntosde uno de los dos conjuntos

xx,,ss11,,ss22 Miembro Miembro ((x, Uniónx, Unión((ss11,,ss22)) )) Miembro Miembro ((xx,,ss11) ) Miembro Miembro ((xx,,ss22))

Page 35: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

Notaciones especiales para conjuntos, Notaciones especiales para conjuntos, listas y aritméticalistas y aritmética = = Conjunto vacíoConjunto vacío

{{xx} = } = AdjuntoAdjunto((xx, , Conjunto vacíoConjunto vacío))

{{x,yx,y} = } = AdjuntoAdjunto((xx, , AdjuntoAdjunto((yy, , Conjunto Conjunto vacíovacío))

{{x,yx,y||ss} =} =AdjuntoAdjunto ( (xx, , AdjuntoAdjunto((yy,,ss))))

r r ss = = UniónUnión((rr,,ss))

r r s s = = Intersección Intersección ((rr,,ss))

xx ss = = MiembroMiembro((xx,,ss))

rr ss = = SubconjuntoSubconjunto((rr,,ss))

[] = [] = NadaNada

[[xx] = ] = ConsCons((xx, , NadaNada))

[[x,yx,y] =] =ConsCons((xx, , ConsCons((yy, , NadaNada))))

[[x,yx,y||l]l] = =ConsCons((xx, , ConsCons((yy, , ll))))

Page 36: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

Cómo formular preguntas y obtener Cómo formular preguntas y obtener respuestasrespuestas Para añadirle oraciones a la base de Para añadirle oraciones a la base de

conocimientos BC, diríamos:conocimientos BC, diríamos: Decir(Decir(BCBC, (, (m,cm,c MadreMadre((m,cm,c) ) MujerMujer((mm) )

ProgenitorProgenitor((m,cm,c)))))) Decir(Decir(BCBC, (, (MujerMujer((MaxiMaxi) ) ProgenitorProgenitor((Maxi,ManchaMaxi,Mancha) )

ProgenitorProgenitor((Mancha,BotasMancha,Botas)))))) Y luego podríamos preguntarY luego podríamos preguntar

Preguntar(Preguntar(BCBC, , Abuelo_aAbuelo_a((MaxiMaxi, , BotasBotas))))

Page 37: Inteligencia Artificial 3.2 Lógica de Primer Orden

Uso de una lógica de primer Uso de una lógica de primer ordenorden

Cómo formular preguntas y obtener respuestasCómo formular preguntas y obtener respuestas Las oraciones añadidas al utilizar DECIR se llaman Las oraciones añadidas al utilizar DECIR se llaman

aseveracionesaseveraciones.. A las preguntas formuladas mediante PREGUNTAR A las preguntas formuladas mediante PREGUNTAR

se les conoce como se les conoce como consultasconsultas u u objetivosobjetivos.. También se pueden hacer preguntas básicamente También se pueden hacer preguntas básicamente

cuantificadas como:cuantificadas como: Preguntar(Preguntar(BCBC,,xx HijoHijo((xx,,ManchaMancha))))

Las preguntas del tipo “¿Existe una Las preguntas del tipo “¿Existe una xx tal que…?” se tal que…?” se resuelve proporcionando esa resuelve proporcionando esa xx, mediante una , mediante una sustitución sustitución o o lista de enlacelista de enlace..

Page 38: Inteligencia Artificial 3.2 Lógica de Primer Orden

Agentes lógicos para el mundo Agentes lógicos para el mundo de wumpusde wumpus

Se consideran tres arquitecturas:Se consideran tres arquitecturas: AgentesAgentes reflejosreflejos Agentes basados en modelosAgentes basados en modelos Agentes basados en metasAgentes basados en metas

Lo primero que se debe hacer es definir la Lo primero que se debe hacer es definir la interfaz entre el agente y el ambiente.interfaz entre el agente y el ambiente. PercepciónPercepción([([HedorHedor, , BrisaBrisa, , ResplandorResplandor, , NadaNada],5)],5)

La acción del agente debe ser una de las La acción del agente debe ser una de las siguientes:siguientes: VueltaVuelta((DerechaDerecha), ), VueltaVuelta((IzquierdaIzquierda), ), AdelanteAdelante, ,

DispararDisparar, , TomarTomar, , SoltarSoltar, , SaltarSaltar

Page 39: Inteligencia Artificial 3.2 Lógica de Primer Orden

Agentes lógicos para el mundo Agentes lógicos para el mundo de wumpusde wumpus

Para decidir cuál es la mejor, la Para decidir cuál es la mejor, la función HACER-CONSULTA-SOBRE-función HACER-CONSULTA-SOBRE-ACCION crea una consulta tal comoACCION crea una consulta tal como aa AcciónAcción((aa,5),5)

Page 40: Inteligencia Artificial 3.2 Lógica de Primer Orden

Un agente reflejo simpleUn agente reflejo simple

El más sencillo de los agentes funciona mediante El más sencillo de los agentes funciona mediante reglas que conectan directamente percepciones y reglas que conectan directamente percepciones y acciones. Tales reglas se parecen a los reflejos o a los acciones. Tales reglas se parecen a los reflejos o a los instintos, ejemplo:instintos, ejemplo: s,b,u,c,ts,b,u,c,t PercepciónPercepción([([s,b,Resplandor,u,cs,b,Resplandor,u,c],],tt) )

AcciónAcción((Tomar,tTomar,t)) La relación entre percepción y acción puede estar La relación entre percepción y acción puede estar

regulada por reglas de percepción, mediante las regulada por reglas de percepción, mediante las cuales se elabora una abstracción de la entrada cuales se elabora una abstracción de la entrada perceptual inmediata y se le convierte en formas más perceptual inmediata y se le convierte en formas más útiles.útiles. b,g,u,c,tb,g,u,c,t PercepciónPercepción([([Hedor,b,g,u,cHedor,b,g,u,c],],tt) ) HedorHedor((tt)) s,g,u,c,ts,g,u,c,t PercepciónPercepción([([s,Brisa,g,u,cs,Brisa,g,u,c],],tt) ) BrisaBrisa((tt)) s,b,u,c,ts,b,u,c,t PercepciónPercepción([([s,b,Resplandor,u,cs,b,Resplandor,u,c],],tt) ) EnOroEnOro((tt)) ……

Page 41: Inteligencia Artificial 3.2 Lógica de Primer Orden

Un agente reflejo simpleUn agente reflejo simple

De esta forma, se puede establecer De esta forma, se puede establecer una conexión entre los predicados una conexión entre los predicados anteriores y las posibles acciones:anteriores y las posibles acciones: tt , , EnOroEnOro((tt) ) Acción(Tomar, tAcción(Tomar, t))

Page 42: Inteligencia Artificial 3.2 Lógica de Primer Orden

Un agente reflejo simpleUn agente reflejo simple

Limitaciones de los agentes reflejos simplesLimitaciones de los agentes reflejos simples El mundo del wumpus es difícil para los simples El mundo del wumpus es difícil para los simples

agentes reflejos.agentes reflejos. La acción La acción SaltarSaltar permite ver el porqué. Un agente permite ver el porqué. Un agente

reflejo puro no sabe con seguridad cuándo saltar, reflejo puro no sabe con seguridad cuándo saltar, puesto que ni tener el oro ni estar en el cuadro puesto que ni tener el oro ni estar en el cuadro inicial son parte de su percepción.inicial son parte de su percepción.

También son incapaces de evitar los ciclos También son incapaces de evitar los ciclos infinitos.infinitos.

Page 43: Inteligencia Artificial 3.2 Lógica de Primer Orden

Cómo representar los cambios Cómo representar los cambios en el mundoen el mundo

Cualquier sistema que tome sus decisiones Cualquier sistema que tome sus decisiones basándose en percepciones anteriores basándose en percepciones anteriores puede ser reelaborado para que en vez de puede ser reelaborado para que en vez de tales percepciones utilice un conjunto de tales percepciones utilice un conjunto de oraciones que se refieran al estado actual oraciones que se refieran al estado actual del mundo.del mundo.

Las reglas que describen la manera como Las reglas que describen la manera como cambia (o no cambia) el mundo se conocen cambia (o no cambia) el mundo se conocen como reglas como reglas diacrónicasdiacrónicas, del griego “a , del griego “a través del tiempo”.través del tiempo”.

Page 44: Inteligencia Artificial 3.2 Lógica de Primer Orden

Cómo representar los cambios Cómo representar los cambios en el mundoen el mundo

Una manera de manejar el cambio es sustituir Una manera de manejar el cambio es sustituir oraciones en la BC. La inconveniencia es que oraciones en la BC. La inconveniencia es que pierde todo conocimiento acerca del pasado.pierde todo conocimiento acerca del pasado.

Otra es que el agente pueda explorar estados Otra es que el agente pueda explorar estados del pasado y posibles estados del futuro, del pasado y posibles estados del futuro, donde cada uno se representa mediante una donde cada uno se representa mediante una BC diferenteBC diferente

En principio, representar situaciones y En principio, representar situaciones y acciones no es distinto que representar acciones no es distinto que representar objetos más concretos como los gatos y los objetos más concretos como los gatos y los reyes, o relaciones concretas como el reyes, o relaciones concretas como el hermanazgo.hermanazgo.

Page 45: Inteligencia Artificial 3.2 Lógica de Primer Orden

Cómo representar los cambios Cómo representar los cambios en el mundoen el mundo

Cálculo de situacionesCálculo de situaciones Es el nombre dado para una manera Es el nombre dado para una manera

particular de describir el cambio en la particular de describir el cambio en la lógica de primer orden.lógica de primer orden.

Concibe al mundo como una secuencia Concibe al mundo como una secuencia de de situacionessituaciones, cada una de las cuales , cada una de las cuales es como una “instantánea” del estado es como una “instantánea” del estado del mundo.del mundo.

Las situaciones se generan mediante Las situaciones se generan mediante acciones desde situaciones anteriores.acciones desde situaciones anteriores.

Page 46: Inteligencia Artificial 3.2 Lógica de Primer Orden

Cómo representar los cambios Cómo representar los cambios en el mundoen el mundo

Cálculo de situacionesCálculo de situaciones Para hacer esto, se proporciona al Para hacer esto, se proporciona al

predicado correspondiente un predicado correspondiente un argumento de situación adicional. Por argumento de situación adicional. Por ejemplo, en vez de usar ejemplo, en vez de usar EnEn((Agente, Agente, ubicaciónubicación), tendríamos), tendríamos

EnEn((Agente, Agente, [1,1],[1,1],SS00 Agente, Agente, [1,2],[1,2],SS11))

Page 47: Inteligencia Artificial 3.2 Lógica de Primer Orden

Cómo representar los cambios Cómo representar los cambios en el mundoen el mundo

Cálculo de situacionesCálculo de situaciones Para representar cómo cambia el mundo Para representar cómo cambia el mundo

de una situación a otra se emplea la de una situación a otra se emplea la función resultado:función resultado:

Resultado Resultado ((HaciaAdelanteHaciaAdelante,,SS00) =) =SS11

Resultado Resultado ((DarVueltaDarVuelta((ALaDerechaALaDerecha, , SS11) =) =SS22

Resultado Resultado ((HaciaAdelanteHaciaAdelante,,SS22) =) =SS33

Page 48: Inteligencia Artificial 3.2 Lógica de Primer Orden

Cómo representar los cambios Cómo representar los cambios en el mundoen el mundo

Cálculo de situacionesCálculo de situaciones También se cuenta con:También se cuenta con:

Axiomas de efectoAxiomas de efecto, para definir el efecto , para definir el efecto que produce el realizar alguna acción.que produce el realizar alguna acción.

Axiomas de cuadroAxiomas de cuadro, para describir cómo el , para describir cómo el mundo permanece igualmundo permanece igual

Axiomas de estado sucesorAxiomas de estado sucesor, para definir , para definir cuando un predicado es válido después de cuando un predicado es válido después de una acción siempre y cuando sea verdadero una acción siempre y cuando sea verdadero o lo siga siendo, y falso en cualquier otro o lo siga siendo, y falso en cualquier otro caso.caso.

Page 49: Inteligencia Artificial 3.2 Lógica de Primer Orden

Hacia un agente basado en Hacia un agente basado en metasmetas

Una vez encontrado el oro, las Una vez encontrado el oro, las políticas deben modificarse políticas deben modificarse radicalmente. El objetivo ahora es radicalmente. El objetivo ahora es regresar al cuadro de partida a la regresar al cuadro de partida a la brevedad posible. Lo que ahora brevedad posible. Lo que ahora desearíamos es inferir que el agente desearíamos es inferir que el agente tiene como tiene como metameta encontrarse en la encontrarse en la ubicación [1,1].ubicación [1,1].

Page 50: Inteligencia Artificial 3.2 Lógica de Primer Orden

Hacia un agente basado en Hacia un agente basado en metasmetas

Lo anterior se puede lograr de tres Lo anterior se puede lograr de tres maneras por lo menos:maneras por lo menos: InferenciaInferencia BúsquedaBúsqueda PlanificaciónPlanificación