Representación del Conocimiento
Otros formalismos
Introducción a la Inteligencia Artificial.
Licenciatura en Ciencias de la Computación.
Conocimiento – Definición
El conocimiento es una mezcla de experiencia, información y “saber hacer” que actúa como marco para la incorporación de nuevas experiencias y guia la acción.
Se utiliza para alcanzar una meta
Genera nuevo conocimiento
Resulta en gran medida dependiente de la tarea
y del dominio de aplicación.
PREMISA FUNDAMENTAL DE IA:
Para que un sistema informático demuestre un comportamiento “inteligente” en la solución de problemas, debe poseer :
•gran cantidad de conocimientos
•un potente mecanismo de razonamiento.
IMPORTANCIA DE UNA ADECUADA
REPRESENTACION DEL CONOCIMIENTO
Niveles de representación:
• La representación elegida influye directamente en la
eficacia y eficiencia de la solución lograda
�Nivel del conocimiento
�Nivel simbólico
Hechos, comportamiento y
objetivos de los agentes.
Símbolos manipulables
por un sistema
Debe existir
correspondencia
Adecuación representacional
Adecuación inferencial
Representación:Modelado de un sistema
Adquisición del conocimiento
Conceptos y relaciones
Métodos deresolución
Modelo Conceptual
Modelo Formal
No computable
Semicomputable
�Representa simbólicamente
y organiza el conocimiento.
�Determina el mecanismo
de inferencia adecuado.
Representación: Modelado de un sistema
Modelo Computable
Operacional
� Bases de Conocimiento
� Mecanismos de inferencia
� Mecanismos de control
Las tareas de adquisición y modelado son difíciles y costosas.
Existen esquemas de representación útiles en dominios variados.
Los Sistemas Basados en Conocimiento los combinan.
ELEMENTOS BASICOS QUE INTERVIENEN EN EL DISEÑO DE UN SISTEMA BASADO EN EL CONOCIMIENTO (KBS)� Lenguaje formal para expresar conocimiento� Forma de efectuar razonamientos
COMPONENTE MEDULAR DE UN KBS (Agente)
BASE DE CONOCIMIENTOS (KB)
Es un conjunto de representaciones de hechos
acerca del mundo
Conjunto de sentencias del lenguaje para la
representación del conocimiento
DISTINTOS FORMALISMOS
�FORMALISMOS LOGICOS�SISTEMAS DE PRODUCCION�FORMALISMOS
ESTRUCTURADOS:• REDES SEMANTICAS
• FRAMES
• OBJETOS
OTROS FORMALISMOS
Sistemas de producción
�Utilizan elementos de la lógica
�Salen del marco estrictamente formal�más flexibles�más eficientes
�Pierden propiedades fundamentales como la consistencia y completitud.
Newell & Simon - 1973
Sistemas de producción�Los procesos del dominio se representan como acciones
independientes que son integradas por el mecanismo de
inferencias para resolver una tarea más general.
Motor deInferencias
BASE DE CONOCIMIENTO
Base deHechos
Base deReglas
ARQUITECTURA
Sistemas de producción�Se utilizan Reglas de Producción para
representar el conocimiento�IF <premisa> THEN <conclusión y/o acción>
�Son los elementos de deducción básicos
�El proceso de inferencia se basa fundamentalmente en la Regla de Inferencia de la lógica denominada MP �A →B, A / ∴B
Reglas de producción�Es el modelo formal para representar un
elemento mínimo de conocimientoIF <premisa> THEN <conclusión y/o acción>
ConclusiónPuede especificar Acción
Estrategia�La premisa puede tener conectivos lógicos<premisa> = <cláusula1 AND/OR...AND/OR
cláusulak>
Reglas de producción- Ejemplos
� Si un animal come carne entonces es carnívoro.
� Si un animal tiene dientes agudos y garras entonces es carnívoro.
� Si un animal es carnívoro y es de color marrón-claro y tiene el pelaje franjas negras, entonces es un tigre.
Reglas de producción- Ejemplos
Sintaxis Reglas en KAPPA-PC
MakeRule( Rtigre, [],animal:grupo #= carnívoro Andanimal:color #= leonado And
animal:pelaje #= franjas_negras,animal:especie = tigre );
Reglas de producción- EjemplosSintaxis Reglas en JESS
(defrule apagarLuces(and(vivienda vacia)(luz encendida))=>(printout t "La vivienda esta vacia. Las luces deben estar apagadas." crlf)(retract-string "(luz encendida)")(assert (luz apagada)))
Sistemas de producción
�Cada regla es independiente del resto de las reglas en la BC.
�Las reglas no tienen porque estar ordenadas en la BC.
�Las reglas se pueden agrupar por nociones semánticas en “módulos” o “grupos”.
�El metaconocimiento puede ser expresadomediante reglas: metareglas
Sistemas de producción Como razonamos???
� Utilizando un
MECANISMO DE INFERENCIA
(MOTOR DE INFERENCIA)
El cual determina de que forma utilizar las reglas para alcanzar el objetivo planteado
Sistemas de producción Motor de Inferencia
Direcciones de búsqueda:
� Hacia delante, Forward Chaining o guiada por los hechos.
� Hacia atrás, Backward Chaining o guiada por los objetivos.
Implementa alguna estrategia de búsqueda dónde los operadores a aplicar son las reglas de producción.
Para seleccionar las reglas candidatas en cada estado utiliza elEMPAREJAMIENTO, FILTRADO o MATCHING.
Sistemas de producción Motor de Inferencia
Qué dirección de encadenamiento utilizar ???
Cantidad de estados iniciales vs. objetivos
Factor de ramificación
Necesidad de justificar el razonamientoDirección
natural para el
problema
A veces es conveniente encarar partes del problema con cada una
El menor
�Factores a tener en cuenta
Sistemas de producción
� Flexibles.
� Sencillos de modificar y extender.
� A los expertos les resulta simple “pensar en reglas”.
� Completitud y consistencia.
� El conocimiento se separa en pequeños “gránulos”.
VENTAJAS
PROBLEMAS Es común que se los combine con otros
formalismos.
Sistemas estructurados
� ESTRUCTURAS DE RANURA Y RELLENO (slot and filler) � REDES SEMANTICAS (Quillan 67/68)� FRAMES (Minsky, 75)
� OBJETOS ( Década 80)� ONTOLOGIAS
Redes semánticas� Idea: el significado de un concepto
depende del modo en que se encuentre conectado a otros conceptos
� Representación: mediante un grafo dirigido donde
� los nodos representan objetos y
� los arcos relaciones entre los conceptos
REX PERRO MAMIFERO
INSTANCIA ES-UN
Redes semánticas - Ejemplo
ES-UN
ES-UNES-UN
TIENEEstudiante -FCEIA
Estudiante -UNR
Estudiante -LCC Estudiante -IEca
Juan PerezPedro García Legajo P-1233/5
Legajo
Prom1 Prom2
Promedio
TIENE
INSTANCIA
INSTANCIAINSTANCIA
TIENETIENE
INSTANCIAINSTANCIA
Redes semánticas - Arcos
Etiquetas de los arcos
� “es-un” relación subclase-clase�“instancia” relación objeto-clase� “parte-de” relación componente-objeto
� definidas por el usuario
Dominio de aplicación
Generalización
Instanciación
Agregación
Descripción
Sistemas basados en Redes semánticas
Base de conocimiento
� En esta representación una BC es una
colección de estos grafos
� Las modificaciones se refieren a inserción
o eliminación de nodos y sus relaciones.
Redes semánticas Como razonamos???
�Búsqueda de intersección
Encontrando relaciones entre objetos
�Cual es la conexión (arco) entre Rex y mamífero?
�Es Juan Pérez un estudiante de la UNR?
�Cuál es el promedio de Pedro García?
� Utiliza fundamentalmente la estructura jerárquica
Marcos (frames)�Una red semántica representa conexiones entre
entidadesProblemas más complejos
�Asignar más estructura a los nodos y a las conexiones
Marcos
�No existe una distinción clara entre una Red semántica y un sistema de Marcos
Marcos (frames)
� Idea: Estructura para atender la representación del conocimiento asociado a situaciones estereotípicas (Minsky)
� Representación: Es una colección de atributos (ranuras - slots) con valores asociados (y posibles restricciones entre valores, llamados facetas)
Marcos - Estructura
NOMBRE
ENCABEZADO ES-UN
INSTANCIA
ATRIBUTO1 VALOR1
ATRIBUTOn VALORn
•valores por
defecto
•procedimientos
•relación con
otros marcos
(slots)
Marcos - EjemploEstudiante FCEIA
ES-UN Estudiante UNR
TIENE Legajo (letra/numerodigito)
TIENE Promedio (procedimiento)
Estudiante Ing.Eca.
ES-UN ESTUDIANTE FCEIA
Juan Perez
INSTANCIA Estudiante Ing.Eca.
TIENE Promedio = 6,80
DIRECCION ...... (Defecto Rosario)
TEL .....
TRABAJA NO (Defecto No)
Sistemas de Marcos
Marcos Clase
Marcos Instancia
Representan conceptos, o situaciones genéricas
descriptos por propiedades comunes
Elementos específicos. Sus propiedades se
asocian con información de cada individuo
Propiedades
De Clase: Atributos genéricos de un concepto,
con valores comunes a todas sus ocurrencias.
De Instancia: Atributos con valores particulares
para cada ocurrencia del concepto.
Slots definidos enlos marcos Clase
Sistemas de Marcos
Consideraciones al definir los Slots:
Evitar redundancias aprovechando la herencia.
Poseer información suficiente para identificar el marco clase.
En un marco clase se puede definir un slot de instancia en
base a otro marco clase.
Los slots de instancia pueden tener uno o varios valores.
En los marcos clase se pueden redefinir slots heredados
para representar excepciones a la herencia.
Sistemas de Marcos
BASE DE CONOCIMIENTO
�Conjunto de marcos relacionados mediante los valores de los slots (atributos)
INFERENCIA
�Utilizar la estructura jerárquica para heredar propiedades (valores de slots).
�Tener procedimientos (reglas) para hallar valores de los slots.
Tienen mucha tradicion en IA y son antecesores de los objetos
Los sistemas de marcos agregan expresividad a las redes semánticas y permiten representar conocimiento declarativo y procedimental.
Marcos se utilizan para estructurar el conocimiento en Kappa-PC (shell-herramienta constructora de SE)
Sistemas de Marcos
Redes Semánticas
Sistemas de MarcosLógica de predicados
PODER EXPRESIVO
MAS CLAROS (GRAFICA)
UTILIZAN HERENCIA
PRUEBAS DE
COMPLETITUD Y
CONSISTENCIA
Expresividad Sistemas de Marcos - Redes
Objetos
Los vemos más como una forma de representar el
mundo que como un paradigma de programación
IIA
Los encontramos en muchas herramientas dentrodel área.
Tienen ciertas características en común con los agentes.
Objetos OBJETO: Es una entidad que tiene un comportamiento.
ESTADO INTERNO MENSAJES que es capaz de responder.
INTERFAZ
Un PROGRAMA OO es una red de objetos cooperantes, que interactúan entre sí, enviándose mensajes.
ENCAPSULAMIENTO
Permite la utilización de clases con implementaciones intercambiables.
Cómo elegir la mejor
representación???
No hay receta establecida !!!
�Analizar las características del
conocimiento involucrado.
�Recurrir a la combinación de formalismos.
Frente a cada problema a resolver:
Top Related