INTRODUCCIÓN A LOS SISTEMAS BASADOS EN CONOCIMIENTO
Sistema basado en el conocimiento (SBC): sistema informatizado que usa el conocimiento sobre algún campo específico para hallar la solución de un problema de ese campo. La solución encontrada debe ser la mísma que la extraída por parte de una persona, con conocimiento sobre el campo del problema, enfrentada a ese mismo problema.
Tres diferencias
básicas de los sistemas basados en el conocimiento que los distinguen de los
programas algorítmicos convencionales y de los programas generales basados en
búsqueda:
Características de los sistemas basados en el
conocimiento
Ventajas de un SBC:
Inconvenientes de un SBC:
Ciclo de vida del desarrollo de SBCs:
Varias fases:
Ingeniería del conocimiento: adquisición de conocimiento de un dominio específico y de fuentes no explícitas para convertirlo en operativo (susceptible de tratamiento automático) con el fin de resolver problemas (que solo pueden resolver personas con experiencia en ese dominio). Además incluye el desarrollo de herramientas de apoyo.
ESTRUCTURA DE LOS SISTEMAS BASADOS EN CONOCIMIENTO
PUNTO DE
VISTA DEL...
USUARIO
FINAL:
INGENIERO DEL
CONOCIMIENTO:
DESARROLLADOR DE HERRAMIENTAS:
Percibe el sistema de modo similar a como lo ve el ingeniero del conocimiento. Se preocupa sobre que problemas va a intentar resolver el ingeniero del conocimiento usando este sistema. Esto requiere conocer que esquema de representación del conocimiento va a dotar al ingeniero del conocimiento de la mayor flexibilidad en la representación del conocimiento en el dominio en cuestión.
REPRESENTACIÓN DEL CONOCIMIENTO Y RAZONAMIENTO CON REGLAS:
PROLOG
INTRODUCCIÓN:
PROLOG (PROgramming in LOGic) es un lenguaje declarativo desarrollado a finales de los años 70.
PROLOG está basado en la lógica de predicados. Hace suposición de un mundo cerrado (CWA, del inglés "Closed World Assumption"). Existen 3 conceptos básicos necesarios para entender PROLOG:
HECHOS:
Los hechos en PROLOG son axiomas. Ejemplos:
día
noche
sucio(Pedro)
quiere(María, Pedro)
hombre(Federico)
La introducción de estos hechos se debe realizar escribiendo un punto después del hecho:
Hombre(Federico).
El punto al final del hecho representa el final de la cláusula.
REGLAS:
Las implicaciones se llaman reglas en PROLOG y el operador de implicación se representa :- .
Ejemplo:
(A® B) (i.e., A implica B) se representa B:-A (i.e., B dado A)
La conjunción (operador AND) se representa mediante una coma entre premisas.
La disyunción (operador OR) se representa mediante un punto y coma separando las premisas.
La negación de un predicado se representa gracias a la función 'not':
b:- a, c, d, not(e).
(representa la conjunción de las premisas a, c, d y la negación de e)
b:- a; c; d; not(e)
(representa la disyunción)
Esta puede ser representado como un conjunto de reglas separadas:
b :- a.
b :- c.
b :- d.
b :- not(e).
BACKTRACKING Y EL PROCESO DE INFERENCIA EN PROLOG:
Prolog emplea unificación como método de emparejamiento de patrones.
Las preguntas en PROLOG se hacen del siguiente modo:
?- hermanos(Pedro, Marcos)
Todas los hechos que usan un predicado han de estar por escritos encima de las reglas que usan ese predicado. Ejemplo:
hermanos(Pedro, Marcos)
hermanos(X, Z) :- hijo-de(X,Y), hijo-de(Z,Y), varón(X), varón(Z).
¿Cómo saber todos los casos favorables posibles?:
?- hermanos(A, B).
¿Cómo responde a la pregunta anterior?:
Si ha encontrado un caso posible responde por ejemplo:
A = Pedro
B = Marcos
EJEMPLOS:
append( [X | Xs], Ys, [X | Zs] ) :- append( Xs, Ys, Zs ).
append( [1 2 3], [4 5], Z ) daría [1 2 3 4 5]
Solución:
pertenece( X, [X | Ys] ).
pertenece( X, [Y | Ys] ) :- pertenece( X, Ys ).
Ej.:
?- pertenece( 4, [1 2 3 4] )
pertenece( 4, [1 | 2 3 4] )
pertenece( 4, [2 3 4] )
pertenece( 4, [2 | 3 4] )
pertenece( 4, [3 4] )
pertenece( 4, [3 | 4] )
pertenece( 4, [4] )
TRUE
Solución:
primeroYultimo( X, Ys ) :- primero( X, Ys ), ultimo( X, Ys ).
primero( X, [X | Ys] ).
ultimo( X, [X] ).
ultimo( X, [Y | Ys] ) :- ultimo( X, Ys).
P( X, [X | Ys] ).
P( X, [Y | Ys] ) :- P( X, Ys ).
Solución:
Hace lo mísmo que el ejercicio 1.
P( [ ], Ys ).
P( [X | Xs], [X | Ys] ) :- P( Xs, Ys ).
Solución:
- Acepta la lista vacía.
- Ejemplo:
?- p( [1 2 3], [1 2 3 4 5] )
p( [1 | 2 3], [1 | 2 3 4 5] )
p( [2 3], [2 3 4 5] )
p( [2 | 3], [2 | 3 4 5] )
p( [3], [3 4 5] )
p( [3 | [ ] ], [3 | 4 5] )
p( [ ], [4 5] )
TRUE
RAZONAMIENTO HACIA DELANTE
(razonamiento dirigido por los datos)
Partimos de los hechos y vamos a la conclusión.
ESQUEMA GENERAL DE RAZONAMIENTO HACIA DELANTE:
RAZONAMIENTO HACIA DETRÁS
(razonamiento dirigido por objetivos)
Comienza con una conclusión deseada y decide si los hechos existentes permiten la derivación de un valor para esa conclusión.
ESQUEMA GENERAL DE RAZONAMIENTO HACIA DETRÁS:
Para cada r perteneciente al conjunto R:
ARQUITECTURAS QUE REPRESENTAN SISTEMAS BASADOS EN
REGLAS
Existen 5 características típicas de los sistemas de emparejamiento de patrones:
PELIGROS (GRANDES INCONVENIENTES) DE LOS SISTEMAS
BASADOS EN REGLAS
OTROS INCONVENIENTES
VENTAJAS
ALGORITMO RETE
Involucra el desarrollo de dos redes:
OTRAS FORMAS DE REPRESENTACIÓN DE CONOCIMIENTO:
REDES SEMÁNTICAS (ASOCIATIVAS)
(Quillian, 1968) Son grafos dirigidos y etiquetados. Los nodos en la red representan varios conceptos u objetos, y los arcos (enlaces entre nodos) representan las diversas asociaciones o relaciones que existen entre los conceptos.
VENTAJAS:
DESVENTAJAS:
MARCOS
(Minsky, 1975) Objetivos:
Ejemplo:
MARCO GENÉRICO: AUTOMÓVIL
Especialización-de: VEHÍCULO
Generalización-de: (COCHE-FAMILIAR COUPÉ DEPORTIVO)
Fabricante:
Rango: (FORD
MAZDA BMW SAAB)
Valor-por-defecto: MAZDA
País de orígen:
Rango: (EEUU JAPÓN ALEMANIA SUECIA)
Valor-por-defecto: JAPÓN
Modelo:
Rango: ( )
Color:
Rango: (NEGRO BLANCO AZUL VERDE)
Si-necesario: (CONSULTAR-VENDEDOR o MIRAR-AUTOMÓVIL)
Rendimiento:
Rango: (ALTA MEDIA BAJA)
Consumo-a-los-100:
Rango: (0 - 8)
Si-necesario: ( / Consumo ( * Kilometraje 0,01 ) )
Año-de-fabricación:
Rango: (1940 - 1990)
Si-cambiada: ( ERROR: "El valor no puede ser modificado")
Propietario:
Rango: Nombre-de-persona
Si-introducido: (SOLICITAR-MATRICULA y PAGAR-IMPUESTOS)
VENTAJAS:
DESVENTAJAS:
ARQUITECTURA DE PIZARRA
(Allen Newell, 1962)
Una implementación del método de razonamiento oportunista. Esta compuesta de tres componentes principales:
VENTAJAS:
DESVENTAJAS:
TÉCNICAS AVANZADAS DE RAZONAMIENTO
TMS: (Truth Maintenance Systems) técnicas diseñadas para mantener la integridad en los sistemas lógicos no monotónicos.
ADQUISICIÓN AUTOMÁTICA DE CONOCIMIENTO
ARBOLES DE DECISIÓN
ALGORITMOS GENÉTICOS
Simulan la naturaleza:
Web: http://www.oocities.org/syscom_sac - © Rodrigo Anccasi