Está en la página 1de 94

Sistemas Expertos

Introducción
Arquitectura - Motor de Inferencias

Ingeniería Electrónica
Ingeniería del Conocimiento
Inicio de los Sistemas Expertos

60´s Se buscaban soluciones generales

70´s Los sistemas son más eficientes en dominios


acotados

La calidad y cantidad de conocimiento son


esenciales para una buena performance

Es importante independizar el conocimiento


del dominio, del mecanismo de inferencia.
Sistemas basados en conocimiento (SBC-KBS)
Definiciones.

 Sistemas que resuelven problemas aplicando una


representación simbólica de la experiencia humana.
Jackson.

 Sistemas que representan el conocimiento sobre el


dominio en forma explícita y separada del resto del
sistema.
Waterman.
Sistemas basados en conocimiento (SBC-KBS)
Definiciones.

 Sistemas de software capaz de soportar la


representación explícita del conocimiento de un
dominio específico y de explotarlo a través de
mecanismos apropiados de razonamiento para
proporcionar un comportamiento de alto nivel en la
resolución de problemas.
Guida y Taso
Sistemas Expertos: Definición.
Es un sistema de cómputo capaz de simular la conducta
inteligente de un experto humano en un dominio
específico y especializado, con el objeto de resolver
problemas.

Hardware + software
Sistema de computación

Simulación

Conducta inteligente

Experto Fuente de pericia humana en el dominio

Dominio limitado Específico y especializado


Experiencia humana vs. SE.
PERICIA ARTIFICIAL PERICIA HUMANA
Permanente Perecedera
Siempre accesible No siempre accesible
Fácil de documentar No documentable
Estable, confiable Variable, flexible 
Costo manejable Costosa
Fragilidad de las máquinas Fragilidad humana
Sin inspiración Creativa 
Conocimiento técnico Sentido común 
Estática - Dinámica Dinámica (aprendizaje) 
Dominios estrechos Dominios más extensos

 Los humanos son imprescindibles!!!


SE/SBC: Tareas
Síntesis: Clasificación, diagnóstico

Tareas abordadas
Análisis: Planificación, diseño o modelado

Las áreas de aplicación son muy variadas !!!

 Los SBC abordan problemas complejos en dominios específicos


en los que el peso de las heurísticas para acotar el espacio de
búsqueda es importante.
Primeros Sistemas Expertos
Stanford (Buchanan - Shortliffe 1976):
MYCIN Diagnóstico y tratamiento de enfermedades
infecciosas (aprox. 500 reglas). Introduce
factores de certeza. Conocimiento
Stanford-US Geological Survey (Duda-Gashning- inexacto
PROSPECTOR Hart, 1979): Evaluación de yacimientos minerales
y petrolíferos. (aprox 1600 reglas). Probabilidades
condicionales y Teorema de Bayes.
Pittsburg (Pople-Myers, 1977): Diagnóstico
INTERNIST en Medicina interna. CADUCEUS: Analiza
relaciones causales. Razonamiento experto
Rutgens (Kulikowsky-Weiss-Safir, 1977): Modelos causales
CASNET Oftalmología. Aplica un modelo causal para el
diagnóstico de glaucoma.

Carnegie Mellon (Mc Dermott): Configuración de


R1 ordenadores VAX (aprox 500 reglas). Descompone
el diseño en distintos niveles de abstracción. Reducción espacio
de búsqueda
Stanford (Stefik): Diseño de experimentos
MOLGEN
genéticos. Utiliza abstracción.
Habilidades que se esperan de un SE

 Manipular con fluidez descripciones simbólicas.

 Buena perfomance, comparable al menos a la de los especialistas.

 Interfaz amigable, adecuada a las necesidades de la aplicación.

 Habilidad para manipular conocimiento incompleto e impreciso.

 Capacidad de explicar sus decisiones a los usuarios.

 Posibilidad de justificar sus conclusiones.


Periodo industrial de la IA

Década de Importante apoyo económico a los esfuerzos de I+D.


los 80 Gran cantidad de SE en distintos dominios.

Problemas con la metodología de desarrollo

Limitaciones propias del tipo de sistema.

Comparable a la Crisis CRISI


de los SI pero posterior S
Ingeniería del Conocimiento (IC)
Crisis
SI Desarrollo de la Ingeniería del Software

Crisis
Desarrollo de la Ingeniería del Conocimiento
SBC

La Ingeniería del Software consiste en la aplicación de una


aproximación sistemática, disciplinada y cuantificable al desarrollo,
funcionamiento y mantenimiento del software. (IEEE, 1999)

La IC tiene los mismos objetivos respecto de los SBC


SBC: Ventajas
 El conocimiento no se pierde.

 Reducción del espacio de búsqueda con heurísticas para que


el problema sea tratable en un tiempo razonable.

 Manejo de conocimiento incierto e incompleto.

 Posibilidad de justificar el razonamiento seguido.

 Hacer el conocimiento disponible en ambientes hostiles o con


carencia de especialistas.

 Aumento de fiabilidad, evitando que prevalezcan las últimas


experiencias.

 Modificación sencilla de la BC por su característica modular.


SBC: Inconvenientes
 La adquisición del conocimiento es difícil y cara.
 La reutilización del conocimiento en contextos diferentes
no es simple.
 Falta de creatividad y sentido común.
 Obstáculos para el aprendizaje y la adaptación.

Quedan inmersos en el campo de los Sistemas Inteligentes.

Se trabaja sobre metodología de desarrollo


Se los combina con otras tecnologías
Estructura básica de un SE/SBC.

I
Ingeniero del K n
conocimiento
Base de U
A t
Conocimientos s
T e u
r a
Motor de f r
a i
Inferencias o
Experto del
dominio
c
e
Estructura básica de un SE/SBC

Su estructura de datos queda definida en


Base de términos del esquema de representación
Conocimientos elegido para incorporar el conocimiento
del dominio de trabajo.

Separados entre sí

Es la estructura de control de un SE,


Motor de contiene el programa que gestiona la BC y
Inferencias otros mecanismos necesarios para
administrar un sistema de naturaleza
interactiva.
REPRESENTACION DEL
CONOCIMIENTO
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 y
un potente mecanismo de razonamiento.

IMPORTANCIA DE UNA ADECUADA


REPRESENTACION DEL CONOCIMIENTO
•CONOCIMIENTO DEL MUNDO : (en IA)
Es la habilidad para construir un modelo de
los objetos, sus vinculaciones y de las
acciones que pueden realizar.

•REPRESENTACION DEL CONOCIMIENTO


Es la expresión mediante algún lenguaje, de un
modelo que exprese el conocimiento sobre el
mundo.
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.
Niveles de representación:
Nivel del conocimiento
Debe existir
Hechos, comportamiento y
correspondencia
objetivos de los agentes.

Nivel simbólico
Símbolos manipulables
Adecuación representacional
por un sistema
Adecuación inferencial

La representación elegida influye directamente en la


eficacia y eficiencia de la solución lograda
Representación:Modelado de un sistema
Adquisición del conocimiento
Modelo
Conceptual
Conceptos y Métodos de
relaciones inferencia
No computable

Modelo Representa simbólicamente


Formal y organiza el
conocimiento.
Determina el mecanismo
de inferencia adecuado.
Semicomputable
Representación: Modelado de un sistema
Modelo
Computable  Bases de Conocimiento
 Mecanismos de inferencia
 Mecanismos de control
Operacional

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
UNA KB DEBE PERMITIR CON EFICIENCIA:
AÑADIR YMODIFICAR
SENTENCIAS

BC

PREGUNTAS RESPUESTAS
MECANISMO DE INFERENCIAS
PROPIEDADES DE UN BUEN
FORMALISMO DE REPRESENTACION:

• ADECUACION REPRESENTACIONAL
• ADECUACION INFERENCIAL
• EFICIENCIA INFERENCIAL
• EFICIENCIA EN LA ADQUISICION-
MODIFICACION

Rich & Knight


DISTINTOS PARADIGMAS:

• DECLARATIVO
Descripción del estado del mundo
• PROCEDIMENTAL
Expresión de las transformaciones de estados
• ORIENTADO A OBJETOS
Descripción de los objetos existentes
DISTINTOS FORMALISMOS

 FORMALISMOS LOGICOS
 SISTEMAS DE PRODUCCION
 FORMALISMOS ESTRUCTURADOS:
• REDES SEMANTICAS
• FRAMES
• OBJETOS
• ONTOLOGÍAS
FORMALISMOS LOGICOS
Constituyen sistemas formales en los cuales:

 SINTAXIS Y SEMANTICA ESTA BIEN DEFINIDA


 HAY UNA TEORIA DE LA DEMOSTRACION
•Completa y Consistente

LA LOGICA DE 1er ORDEN


Es la base de la mayoría de los esquemas de
representación
FORMALISMOS LOGICOS

• Conocimiento es representado mediante un


conjunto de fórmulas bien formadas (fbfs)
en algún sistema lógico (proposicional -
predicados - multivaluada...)

• Los mecanismos de inferencia son los


métodos deductivos del sistema lógico
(Resolución en predicados)
DISTINTOS SISTEMAS LOGICOS:

LOGICA PROPOSICIONAL
LOGICA DE PREDICADOS
LOGICAS NO-CLASICAS
– MULTIVALUADAS (Fuzzy Logic)
– MODALES

OBJETIVO: ESTABLECER LA VALIDEZ DE


DISTINTOS RAZONAMIENTOS -
OBTENER CONCLUSIONES DE UN CONJUNTO
DE FORMULAS
Sintaxis
Alfabeto PROPOSICIONAL

PROP que consiste de:


i) variables proposicionales p0, p1,p2,...
ii) conectivos , , , ,
iii) símbolos auxiliares: (, )
Introducción Informal
• Proposición: Una oración afirmativa de la
cual podemos decir que es verdadera o
falsa (pero no ambas!!)
• Ejemplos de Proposiciones:
– Ayer llovió en Rosario.
– El sol gira alrededor de la tierra.
–2.3=3+3
– 3 es primo.
– El auto no arranca.
más proposiciones...
– Si ayer llovió en Rosario, entonces el intendente
se mojó.
– El sol gira alrededor de la tierra o la tierra gira
alrededor del sol.
– 2 . 3 = 6 y 6 es impar
– El auto no arranca y las luces encienden.
Traducción al lenguaje Lógico
• Las oraciones compuestas se traducen usando los
conectivos
– Ejemplos:
• El auto no arranca y las luces encienden 
(p0  p1).
• Si las luces encienden, entonces la batería
está ok  (p1  p2) .
• 2 . 3 = 6 o 6 es impar  (p3  p4).
Todo perro es un mamífero y Rex es un perro,
luego Rex es un mamífero..

x (Perro(x)Mamífero (x) x. P(x)


Perro (Rex) P(Rex)
Mamífero (Rex)

• La corrección de este razonamiento depende de


la relación entre los sujetos de las proposiciones.

• Lógica proposicional NO es suficientemente expresiva


para captar esta relación
Por qué lógica de predicados ?

• Lógica proposicional : bajo poder expresivo


• Muchas expresiones usuales no son
representables En proposicional:
p (una prop. atómica)
• « Rex es un perro »
En predicados:
Sujeto: Rex
Propiedad: Ser Perro
Perro(Rex)
Lenguaje de lógica de predicados
• símbolos para denotar objetos
- sb. de constante (ej. Rex, 2, 
- sb. de variable (ej. x, y, z)
- sb. de función (ej. +, *, Padre) etc que
permiten crear nuevos nombres de objetos
• símbolos de propiedades y de relaciones
(Es-perro)
• conectivos
• cuantificadores
Ejemplos de traducción
• Si algunos perros son mamíferos, luego todos
son mamíferos
(x) (P(x)  M(x)) x (P(x) m(x))

• Todo número es par o impar


(x) (N(x) P(x) I(x))

• Ningún número es a la vez par e impar


x) (P(x) I(x))
PROLOG: Una implementación de
programación lógica

LOGICA DE PREDICADOS
+ DEDUCCIÓN AUTOMÁTICA
(RESOLUCION)
• Dada la BC y una fórmula  podemos probar
que
» BC - 
Podemos contestar perro (Rex) ?
preguntas como X / perro (X)?
LOGICA DE PREDICADOS COMO
FORMALISMO DE REPRESENTACION
 VENTAJAS:
 Es un formalismo bien establecido con una sintaxis y
semántica bien definida y que maneja fácilmente aspectos
cuantificación.
 Automatización de la deducción

 LIMITACIONES:
 Existen límites en el poder expresivo:
• posibilidades, incertidumbre,
 Problemas en la implementación de otros tipos de
razonamientos (aproximados, no-monótonos).
Representación del Conocimiento
Otros formalismos
DISTINTOS FORMALISMOS

 FORMALISMOS LOGICOS
 SISTEMAS DE PRODUCCION
 FORMALISMOS
ESTRUCTURADOS:
• REDES SEMANTICAS
• FRAMES
• OBJETOS
OTROS FORMALISMOS
Sistemas de producción
Newell & Simon - 1973

 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.
SE basados en reglas de producción
Newell y Simon (1972): Al resolver problemas, las
Sistemas de personas utilizan su memoria a largo plazo
producción (permanente) que aplican a situaciones actuales
contenidas en su memoria a corto plazo (transitoria).
Esto puede generar modificaciones en la última.

Mundo Exterior
BC Memoria de
(Reglas) trabajo (Hechos)

Motor de Inferencias
Los sistemas de producción
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.

ARQUITECTURA

BASE DE CONOCIMIENTO
Motor de
Base de Base de Inferencias
Hechos Reglas
SE basados en reglas de producción

Reglas de IF < CONDICION > THEN < ACCION>


producción

 Son “gránulos” de conocimiento.

Reúnen información relativa a las condiciones de


disparo y a los efectos resultantes del disparo.

 Son estructuras bidireccionales.

SI ?X ES MAMIFERO Y ?X COME CARNE


ENTONCES ?X ES CARNIVORO.
SE basados en reglas de producción
Ventajas:
Naturaleza modular: El conocimiento es fácil de
encapsular y expandir.
 Explicaciones sencillas: El registro de reglas disparadas
permite presentar la cadena de razonamiento asociada.
 Semejanza con el proceso cognitivo humano: modelo
natural del razonamiento humano.
Dificultades:
 Completitud y consistencia como responsabilidad del desarrollador.

 Se necesitan otras estructuras para lograr una visión global del


conocimiento del dominio.

Se las combina con otros formalismos


de representación.
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 conocimiento
IF <premisa> THEN <conclusión y/o acción>
Conclusión
Puede 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 And
animal:color #= leonado And
animal:pelaje #= franjas_negras,
animal:especie = tigre );
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 expresado
mediante reglas: metareglas
Sistemas de producción.
Un ejemplo de regla

Un especialista que participa en el desarrollo de un


sistema basado en conocimiento relativo al
diagnóstico de una falla en un auto, podrá
expresar:
“ si el motor no arranca y las luces no encienden,
entonces la falla está en la batería ”.
Sistemas de producción.
Un ejemplo de regla

A partir de esta expresión, se puede definir la


regla de producción asociada a las proposiciones
como:
If el motor no arranca
And las luces no encienden,
Then la falla está en la batería .
Sistemas de producción.
Un ejemplo
Sistemas de producción.
Un conjunto de reglas
If el motor no arranca
And las luces no encienden
Then falla la batería.
 
If el motor no arranca
And las luces encienden
And llega combustible
Then falla el sistema de ignición.
 
If el motor no arranca
And las luces encienden
And no llega combustible
Then falla el sistema de combustible.
El desarrollo de las reglas de
producción para construir la KB.

• Debe observarse
que las reglas no
están identificadas,
por ejemplo: con
una numeración
correlativa.
El desarrollo de las reglas de
producción para construir la KB.
• Cada una de estas re-glas
aparece como un gránulo
de conoci-miento que es
inde-pendiente de las res-
tantes reglas, con lo cual, la
ampliación de la KB puede
realizarse sin mayor
problema.
El desarrollo de las reglas de
producción para construir la KB.
• Sin embargo, desde el
punto de vista del motor
de inferencia, estas reglas
deben estar relacionadas
para que puedan ser
interpretadas
adecuadamente durante el
proceso de inferencia.
• Por ejemplo; la premisa
“el motor no arranca”
El desarrollo de las reglas de
producción para construir la KB.
• Lo mismo ocurre con
“las luces no en-
cienden”, en la se-
gunda y tercera re-
glas.
• Por consiguiente, este
es el único requisito
que requiere el agre-
gado de nuevas re-
glas.
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
La ejecución del proceso de
inferencia en los KBS
Supóngase que se observa una falla en motor del auto y se
constata que: “no arranca el motor, ni encienden las
luces, y llega combustible”.

Desde el enfoque del KBS, es necesario ingresar esta


información en la memoria de trabajo, para obtener una
solución o respuesta al problema.

Entonces, la interfaz de este KBS, deberá proveer unos


cuadros de un diálogo orientado, que permita ingresar las
observaciones del caso.
La ejecución del proceso de
inferencia en los KBS
La ejecución del proceso de
inferencia en los KBS
• La respuesta
seleccionada en el
primer cuadro de
diálogo, origina la
plantilla “el motor no
arranca”, que ingresará
a la memoria de trabajo
del KBS.
La ejecución del proceso de
inferencia en los KBS
• Continuando con el
diálogo orientado,
ingresarán otras dos
plantillas a la memoria
de trabajo: “las luces no
encienden” y “llega
combustible”.
La ejecución del proceso de inferencia en
los KBS

• El proceso de ejecución que


realiza el motor de inferen-cia,
consiste en tomar cada una de
estas plantillas, y explorar la
KB buscando coincidencias en
las premisas de cada una de
las reglas.
• Con la primera plantilla, “el
motor no arranca”, en-
cuentra que hay una con-
cordancia en las tres reglas.
La ejecución del proceso de
inferencia en los KBS

• Con la segunda plantilla “las


luces no encienden”, solo hay
concordan-cia en la primera
regla, y la segunda y tercera
reglas quedan descartadas.
• La primera regla se desen-
cadena, y produce entonces la
conclusión: “falla la ba-
tería”, y el problema queda
resuelto.
La ejecución del proceso de
inferencia en los KBS

Por último cabe observar que este proceso de


comparación que explora cada una de las reglas, es
prácticamente independiente del orden en que se
encuentren dispuestas las mismas en la KB.

Este proceso de inferencia en los KBS, es


denominado: sistema de inferencia por filtrado
(pattern maching inference system), o simplemente,
filtrado.
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.

Para seleccionar las reglas candidatas en cada estado utiliza el


EMPAREJAMIENTO, FILTRADO o MATCHING.
Sistemas de producción
VENTAJAS

 Flexibles.
 Sencillos de modificar y extender.
 A los expertos les resulta simple “pensar en reglas”.

PROBLEMAS
Es común que se los
 Completitud y consistencia. combine con otros
formalismos.
 El conocimiento se separa
en pequeños “gránulos”.
Sistemas estructurados

 ESTRUCTURAS DE RANURA Y
RELLENO (slot and filler)
 REDES SEMANTICAS (Quillan 67/68)
 FRAMES (Minsky, 75)

 OBJETOS ( Década 80)


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
Estudiante -UNR
ES-UN
TIENE
Estudiante -FCEIA Legajo
ES-UN
ES-UN
Estudiante -LCC Estudiante -IEca INSTANCIA

INSTANCIA
INSTANCIA
TIENE
Pedro García Juan Perez Legajo P-1233/5
TIENE TIENE
Prom1 Prom2
INSTANCIA INSTANCIA
Promedio
Redes semánticas - Arcos
Etiquetas de los arcos
Generalización

 “es-un” relación subclase-clase


“instancia” relación objeto-clase Instanciación
 “parte-de” relación componente-objeto
Agregación

 definidas por el usuario Descripción

Dominio de
aplicació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 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
entidades
Problemas 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 estereotipadas (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
•valores por
(slots) defecto
•procedimientos
•relación con
ATRIBUTOn VALORn otros marcos
Marcos - Ejemplo
Estudiante FCEIA
ES-UNEstudiante UNR
TIENE Legajo (letra/numerodigito)
TIENE Promedio (procedimiento)
Estudiante Ing.Eca.
ES-UNESTUDIANTE FCEIA
Juan Perez
INSTANCIA Estudiante Ing.Eca.
TIENE Promedio = 6,80
DIRECCION ...... (Defecto Rosario)
TEL .....
TRABAJA NO (Defecto No)
Sistemas de Marcos
MC Actores MC Fecha
Interpreta: Si (*)Dia: (1..31)
(*)Nombre: Conj Caracteres (*)Mes: (0..120)
(*)Peliculas: (0..100) (*)Año: 1900..2005
(*)Fecha1aPelicula:
Instancia Instancia
MC Actriz MC Actor
Sexo: F Sexo: M
(*)ParejaMiticaCon: (*)ParejaMiticaCon: Instancia
Instancia Instancia MI - 2232
MI - 8832 MI - 7543 Dia: 27
Nombre:L.Bacall Nombre: H.Bogart Mes: 3
Peliculas: 42 Fecha1aPelicula: Año: 1944
ParejaMiticaCon: ParejaMiticaCon:
Sistemas de Marcos
Representan conceptos, o situaciones genéricas
Marcos Clase
descriptos por propiedades comunes

Elementos específicos. Sus propiedades se


Marcos Instancia asocian con información de cada individuo

De Clase: Atributos genéricos de un concepto,


con valores comunes a todas sus ocurrencias.
Propiedades
De Instancia: Atributos con valores particulares
para cada ocurrencia del concepto (*).
Slots definidos en
los 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
Facetas Modelan características de slots y relaciones

Algunas facetas declarativas usuales:

Tipo de Slot: Tipo de datos de los valores, puede apuntar a otro marco.

Cardinalidad: Cantidad de valores posibles.

Valores permitidos: tipo de datos, rango o puntero a otro marco.

Valores por defecto: Para slots de instancia si quedan sin definir.


Marcos – Facetas/Métodos
Hay facetas ligadas a métodos de uso frecuente, asociados
a cambios o utilización de los valores de las ranuras:

 When_needed: Formas de conseguir el valor cuando


se lo necesita y no está disponible.
 Before_changed: Restricciones propias del dominio.
 After_changed: Acciones pertinentes asociadas a los
cambios de valor de la ranura.
 When_accessed: Acciones pertinentes cuando la
ranura es accedida de alguna forma.
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.
Sistemas de Marcos
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


Objetos

Los vemos más como una forma de representar el


mundo que como un paradigma de programación

Los encontramos en muchas herramientas dentro del área.

Tienen ciertas características en común con los agentes.


Objetos
Década del 80

Pensados como gran BALA DE


aporte para el Reuso PLATA

Actualmente se apunta a relaciones Patrones


arquitecturales entre clases para lograr de diseño
Evolución y Mantenibilidad
Objetos
OBJETO: Es una entidad que tiene un comportamiento.

ESTADO INTERNO MENSAJES que es


capaz de responder.

ENCAPSULAMIENTO

INTERFAZ
Permite la utilización de clases con
implementaciones intercambiables.

Un PROGRAMA OO es una red de objetos cooperantes,


que interactúan entre sí, enviándose mensajes.
Objetos
Una CLASE es una definición de las características
comunes de un conjunto de objetos semejantes.

 ESTRUCTURA: Conjunto de
variables de clase e instancia.
CLASE  INTERFAZ: conjunto de
métodos. Los objetos concretos
buscan en su clase la definición
cuando reciben un mensaje.
Objetos
Las CLASES se Esquema de colaboración
organizan en jerarquías entre objetos (explícito en
modelizando el dominio el código)

De Estructura: Más estática.

HERENCIA
De Comportamiento: Ocurre en ejecución.

Cuando un objeto recibe un mensaje, busca el


código en su clase, y si no lo encuentra recorre la
jerarquía.
Cómo elegir la mejor
representación???
No hay receta establecida !!!

Frente a cada problema a resolver:

Analizar las características del


conocimiento involucrado.

Recurrir a la combinación de formalismos.

También podría gustarte