Agentes Lógicos Mg. Samuel Oporto Díaz Lima, 25 de Junio 2005 INTELIGENCIA ARTIFICIAL
Jan 07, 2016
Agentes Lógicos
Mg. Samuel Oporto Díaz Lima, 25 de Junio 2005
INTELIGENCIA ARTIFICIAL
22 /42/42
Tabla de Contenido
1. Agentes Basados en Conocimiento.
2. Representación del Conocimiento.
3. Sintaxis y Semántica de un Lenguaje
4. Inferencia
5. Resumen
6. Bibliografía
33 /42/42
Objetivo• Presentar a los agentes basados en conocimiento.• Exponer los conceptos acerca de la representación del
conocimiento y el proceso de razonamiento.• Exponer las técnicas para el diseño de agentes capaces
de elaborar representaciones del mundo.
44 /42/42
AGENTES BASADOS EN CONOCIMIENTO
55 /42/42
Agentes Basado en Conocimiento• Un agente basado en conocimiento (ABC) es aquel
sistema que posee conocimiento de su mundo y que es capaz de razonar sobre las posibles acciones que puede tomar para cambiar el estado de su mundo.
• El agente es un conjunto de sentencias, representado mediante un lenguaje de representación de conocimiento.
66 /42/42
Agentes Basado en Conocimiento
Sensores
Efectores
Base de Conocimiento
Motor de Inferencia
Percepciones Acciones
mundo
77 /42/42
Elementos• Lenguaje de representación de conocimiento.
– Lenguaje formal de representación, se usará la lógica proposicional y más adelante la lógica de predicados.
– El conocimiento se representa mediante sentencias.
• Inferencia.– Es la derivación de nuevas sentencias a partir de las sentencias
almacenadas y nuevas percepciones.– Adición de nuevo conocimiento (TELL)– Consultas a la BC (ASK)
88 /42/42
Base de Conocimiento (KB)• Es la representación de un conjunto de hechos acerca
del mundo.• Cada hecho está representado por una sentencia u
oración.• LA BC tiene conocimiento previo, que corresponde al
conocimiento no aprendido.• Siempre que se ejecuta el programa del ABC, sucede
dos cosas:– El programa informa a la BC lo que percibe.– El programa pregunta a la BC qué hacer, luego graba la
respuesta.
99 /42/42
Agente BC genéricofunción AGENTE-BC(percepción) responde con una acción estático: BC, una base de conocimiento
t, un contador, al inicio=0, mide el tiempo
TELL(BC, HACER-PERCEPCIÓN-SENTENCIA(percepción, t))acción ASK(BC, HACER-ACCIÖN-CONSULTA(t))TELL(BC, HACER-ACCIÓN-SENTENCIA(acción, t))t t + 1
responde con acción.
1010 /42/42
Niveles de un ABC• Nivel de conocimiento o epistemológico.
– Es el nivel abstracto, describe qué es lo que el agente sabe. Corresponde al dominio del conocimiento (objeto de conocimiento).
• Nivel lógico.– Es donde el conocimiento se codifica mediante oraciones o
sentencias.
• Nivel de implementación.– Es el que opera la arquitectura del sistema.– Es donde se encuentra las representaciones físicas de las
oraciones correspondientes al nivel lógico
1111 /42/42
REPRESENTACION DEL CONOCIMIENTO
1212 /42/42
Representación del Conocimiento• Expresar el conocimiento de forma que sea manejable
por el computador, de modo que pueda ser utilizado como auxiliar para el desempeño de los agentes.
Tarea.• Identifique al menos 6 formas de representar el conocimiento,
exponga el dominio de conocimiento, aplicaciones, ejemplifique con un caso.
1313 /42/42
( X)(persona(X)) ∀ mortal(X)
( X)(perro(X)) ∀ mortal(X)
persona(Sócrates)
persona(Eva)
perro(Lassie)
Representación Declarativa• Cálculo de Predicados,
Reglas de Producción, y Redes Semánticas
• Fragmentos de conocimiento interdependientes unos de otros
• Facilidad de modificación.• Los conocimientos se
combinan, mediante un mecanismo general de razonamiento y deducción.
• Flexible y modular.
1414 /42/42
Representación Procedural• Algoritmos.• Autómatas Finitos.• Difícilmente modificable
(Reglas y Estructuras de control).
• Facilitan el uso del meta-conocimiento.
• Se puede descomponer explícitamente el problema.
• Operación Eficiente.
function persona(X)
IF (X=Sócrates) or (X=Eva) THEN return true
ELSE return false
function erro(X)
IF (X=Lassie) THEN return true
ELSE return false
function mortal(X)
IF persona(X) or perro(X) THEN return true
ELSE return false
1515 /42/42
Representación del conocimiento
1616 /42/42
Representación del Conocimiento
El lenguaje consta de dos aspectos:• Sintaxis.
– Explica las posibles configuraciones mediante las cuales se forma las oraciones o sentencias (lenguaje).
• La semántica.– Determina los hechos del mundo a los que se hace alusión en
las oraciones o sentencias.
• Si la semántica y la sintaxis están definidas de manera precisa, se dice que el lenguaje es una lógica.
1717 /42/42
• La conexión entre oraciones y hechos es algo que se establece mediante la semántica del lenguaje.
• La propiedad de que un hecho es decir la consecuencia de otros hechos, se refleja en la propiedad de que una oración es consecuencia de otras oraciones.
• La inferencia lógica genera nuevas oraciones que son consecuencia de oraciones ya existentes.
Representación del Conocimiento
Hechos Hechosproducen
Oracionesimplican
OracionesRepresentación
Mundo
Semántica
Semántica
1818 /42/42
SINTAXIS Y SEMANTICA DE UN LENGUAJE
1919 /42/42
Sintaxis• Un buen lenguaje de representación de conocimiento
debe de combinar las ventajas de los lenguajes naturales y lenguajes formales:– Debe ser lo suficiente expresivo y conciso para que nos
permita expresar de manera sucinta todo lo que hay que decir.
– Debe ser inequívoco (no ambiguo) e independiente del contexto para su interpretación.
– Debe ser eficiente en el sentido de que debe existir un procedimiento de inferencia que permita obtener nuevas inferencias a partir de oraciones en nuestro idioma.
2020 /42/42
Ejemplos de Lenguajes• Lenguajes de programación (C, Pascal, Lisp, etc.)
– Son idóneos para representar algoritmos y estructuras de datos concretas: Mundo[2,2] precipicio.
– El problema es que están diseñados para describir cabalmente el estado de la computadora y de cómo cambiar ésta conforme el programa se va ejecutando
– ¿Qué pasa cuando la información es incompleta o hay incertidumbre? En estos casos estos lenguajes no son lo suficientemente expresivos.
• Lenguajes naturales (español, inglés, francés, quechua….)– Son expresivos– El significado de una oración depende tanto de la oración como
del contexto en que se produce.– Son ambiguos : “pequeños perros y gatos” vs. “-d + c”.
2121 /42/42
Semántica• En lógica, el significado de una oración es aquello que se
afirma del mundo, que el mundo sea de una forma.• Para entender una oración, quien la escriba tiene que
proporcionar su respectiva interpretación. Ninguna oración tiene significado por sí misma.
• mensajes en código enviados de un espía a otro.
• Los lenguajes que nos interesan son todos compositivos o de composición: el significado de una oración es función del significado de sus partes.
• El significado de “x2+y2” está relacionado con los significados de x2 y y2
• Una vez que mediante la semántica se interpreta una oración, ésta puede ser cierta o falsa.
• Una oración es cierta dentro de una interpretación deter-minada si el estado de asuntos que representa es cierta.
2222 /42/42
EjercicioMundo de Bloques.Considere un Mundo de Bloques consistente de bloques y una mesa. Los bloques pueden estar apoyados sobre la mesa o sobre otro bloque y se dice que un bloque está “libre“ si no tiene ningún otro bloque apoyado sobre él.
Las relaciones que se definen entre los objetos pertenecientes a este mundo son:libre(B): es verdadera si el bloque B está “libre".sobre(A;B): es verdadera si el bloque A está sobre el bloque B.enMesa(A): es verdadera si el bloque A está apoyado sobre la mesa.
Las acciones permitidas son:apilar(A;B): apila un bloque A sobre un bloque B. Esta acción puede llevarse a cabo solo si ambos bloques están “libres”.desapilar(A;B): desapila sobre la mesa el bloque A que está sobre el bloque B. Esta acción solo puede realizarse si el bloque A está libre.
2323 /42/42
EjercicioEl estado inicial del mundo que se considera es el siguiente:
Preguntas:1. Identifique las clases de este mundo y enumere los objetos.
2. Enumere los hechos que representan el estado inicial del Mundo de Bloques.
3. Defina las acciones apilar y desapilar
4. Describa el mundo resultante luego de llevar a cabo la siguiente secuencia de acciones a partir del estado inicial.desapilar(A,L); apilar(L,O); apilar(A,L)
5. Por cada acción realizada, indique claramente cuales son los estados intermedios que se van obteniendo.
2424 /42/42
1. bloque: A, L, O, H mesa: M
2. libre(A), sobre(A, L), libre(O), libre(H), enMesa(L) , enMesa(O) , enMesa(H)
3. apilar(x, y) condición: enMesa(x), libre(x), libre(y)
efecto: ¬enMesa(x), sobre(x,y), ¬libre(y)
desapilar(x,y) condición: sobre(x, y), libre(x)
efecto: ¬sobre(x,y), libre(y), enMesa(x)
4. libre(A), sobre(A, L), sobre(L,O), enMesa(O) , enMesa(H)
5.
Solución
desapilar(A,L)
A
OL H AOL H AO
L
H
A
O
L
H
apilar(L,O) apilar(A,L)
A
O
L
H
2525 /42/42
INFERENCIA
2626 /42/42
Inferencia• Inferencia lógica.
– Es un proceso mediante el cual se implementa la relación que existe entre las oraciones o sentencias.
• Deducción.– Equivalente a inferencia lógica.
• Equivalencia.– Dos sentencias α y β son equivalentes lógicamente si es que
son verdaderas con el mismo conjunto de hechos.– P Λ Q y Q Λ P– Se expresan como α ↔ β
2727 /42/42
Inferencia• Validez.
– Una oración es valida si está verdadera.– La oración es validada si y solo si es verdadera en todas las
posibles interpretaciones del mundo.– Se denominan oraciones analíticas o tautologías.
• Juan está estudiando o Juan no está estudiando.
• Contradicción.– Es una oración que es falsa en todas las interpretaciones del
mundo.• Juan es mortal y Juan no es mortal.
2828 /42/42
Inferencia• Satisfabilidad.
– Se considera que una oración es satisfactible si y solo si existe una interpretación en algún mundo para el cual es validad.• Un alumno no rindió su práctica el día lunes.• (A V B) Λ C, para A = FALSE , B = TRUE, C = TRUE.
– Las oraciones contradictorias son insatisfactibles• Juan salió a caminar y Juan no salió a caminar.• A Λ –A, para todo A.
2929 /42/42
RESUMEN
3030 /42/42
Resumen• La lógica es un sistema formal para describir la realidad,
que consta de:– Sintaxis del lenguaje, que explica cómo construir oraciones,– Semántica del lenguaje, que especifica las restricciones
sistemáticas sobre cómo se relacionan las oraciones con la realidad
• La teoría de la demostración, un conjunto de reglas para deducir las implicaciones de un conjunto de oraciones.
3131 /42/42
Lógicas Clásicas• Lógica propositiva
– En ella los símbolos representan proposiciones completas (hechos), los cuales se pueden combinar con conectivos booleanos, por ejemplo:
• D = “el wumpus está muerto”, que puede ser V o F.• F = “Toledo es el presidente del Perú”
• Lógica de primer orden– Se preocupa por la representación de los mundos en términos
de objetos y predicados sobre objetos (propiedades de y relaciones entre objetos), así como del uso de conectivos y cuantificadores.
3232 /42/42
Lógicas no clásicas• Lógica temporal
– Tiene en cuenta la conducta cambiante en el tiempo de las entidades en un dominio determinado.
– Una misma proposición puede tener diferentes valores de verdad según distintos intervalos temporales.
– Se incluyen conectores ("antes", "después", "durante", "hasta", "desde") a fin de desarrollar un modelo capaz de simular mejor el lenguaje natural.
• Lógica difusa– Expande la teoría de conjuntos.– Los objetos pueden pertenecer simultáneamente a más de una
categoría, presentando un cierto "grado de pertenencia“– El aire parece cálido en un 40%– El aire parece no cálido en un 60%.– Trabaja con expresiones lingüísticas como "muy", "grande",
"poco", "más o menos", "aproximadamente igual a", etc.
3333 /42/42
Lógicas Clásicas y No Clasicas
Lenguaje Preocupación
Ontológica(naturaleza de la realidad)
Preocupación
Epistemológica(posibles estados del conocimiento)
Lógica propositiva Hechos Verdadero/falso/desconocido
Lógica de primer orden
(predicados)
Hechos, objetos, relaciones
Verdadero/falso/desconocido
Lógica temporal Hechos, objetos, relaciones, veces
Verdadero/falso/desconocido
Lógica difusa Grado de verdad Grado de certeza 0…1
Lenguajes formales y sus preocupaciones ontológicas y epistemológicas de las lógicas clásicas y 2 no clásicas.
3434 /42/42
Tarea• Investigar los siguientes tipos de lógicas no clásicas.
– La lógica multivaluada.– La lógica temporal.– La lógica modal.– La lógica no monotónica.– La lógica difusa.– La lógica multidimensional.
3535 /42/42
Bibliografía• AIMA. Capítulo 6, primera edición.• AIMA. Chapter 7, second edition.
3636 /42/42
PREGUNTAS