INGENIERÍA DEL CONOCIMIENTO

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:
 

  1. Separación del conocimiento y del modo en que es usado
  2. Naturaleza del conocimiento empleado más heurística que algorítmica
  3. Uso de conocimiento sobre campos altamente específico

Características de los sistemas basados en el conocimiento

Ventajas de un SBC:

  1. Amplia difusión del conocimiento (K)
  2. Fácil modificación
  3. Respuestas coherentes
  4. Disponibilidad: (casi completa: 24 horas del día, los 7 días de la semana...)
  5. Conservación del K
  6. Capaz de resolver problemas disponiendo de información incompleta
  7. Capaz de explicar los resultados y su obtención

Inconvenientes de un SBC:

  1. Las soluciones no siempre son correctas
  2. Conocimiento limitado al dominio del experto
  3. Carecen de sentido común (SBC º Experto - sentido común)
  4. Es difícil extraer el K del experto: este es el cuello de botella

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:

  1. Emparejamiento
  2. Resolución del conflicto
  3. Ejecución o aplicación de esa regla
  4. Condición de terminación

 

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:

  1. Poner objetivo en la PILA
  2. Identificar reglas capaces de alcanzar el objetivo de la cima de la PILA. Obtenemos un conjunto de reglas R.
  3. Si hay una regla r del conjunto R aplicable, aplicar r:

Para cada r perteneciente al conjunto R:

    1. Si premisa insatisfecha, pero hay reglas que pueden derivar esta, meter en la PILA (este es el nuevo subobjetivo), iniciar todo el proceso recursivamente. (i.e.: volver al 2)
    2. Si premisa insatisfecha, y no hay ninguna regla que la pueda derivar, entonces preguntar al usuario por el valor de la premisa.
    3. Continuar procesando la regla actual por la premisa insatisfecha.
    4. En el momento en que una regla r perteneciente a R llegue a ser aplicable, aplicar r y extraer el objetivo de la PILA.

 

ARQUITECTURAS QUE REPRESENTAN SISTEMAS BASADOS EN REGLAS

Existen 5 características típicas de los sistemas de emparejamiento de patrones:

    1. Conectivas lógicas: AND y OR.
    2. Comodines: ? y *
    3. Restricciones de campos: ~ (negación), | (disyunción)
    4. Operadores matemáticos:
    5. Operadores de prueba lógicos:

 

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
bargold1.gif

Capítulo anterior Capítulo siguiente