Sistemas Basados en el Conocimiento Departamento de Informática e Ingeniería de Sistemas C.P.S.

Download Report

Transcript Sistemas Basados en el Conocimiento Departamento de Informática e Ingeniería de Sistemas C.P.S.

Sistemas Basados en el Conocimiento
Departamento de Informática e Ingeniería de Sistemas
C.P.S. Universidad de Zaragoza
Copyright © 1999 José Angel Bañares
Última revisión: Nov. 2009
ISBC
 1. Introducción
 Breve Historia de la IA
 Componentes de un SE
 2. Desarrollo de SBC
2.1 Niveles para describir SBC
2.2 Clasificación de tareas
2.3 Técnicas de resolución de problemas
Búsquedas
Razonamiento basado en el conocimiento
Sistemas de Mantenimiento de la verdad
Razonamiento bajo incertidumbre
Técnicas avanzadas de razonamiento
 3. Proceso de desarrollo
 4. Herramientas
 5. Revisión histórica de los SEs
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
2
ISBC
Introducción
 Breve Historia de la IA
 El periodo Clásico
 Desde los 50 hasta los 60 la IA se centró en resolutores de
Problemas Genéricos
 Búsqueda en el espacio de estados
 El periodo Romántico
 Desde mediados de los 60 hasta mediados de los 70 se centran
en modelar el comportamiento humano al resolver problemas
 Exploración de diferentes formas de representar hechos y
principios sobre el mundo para emplearse en un computador
Reglas, redes semánticas, objetos/frames, fórmulas lógicas.
 En la actualidad
 Representar explícitamente el conocimiento relevante
- Técnicas para representar el conocimiento en módulos que se
activan por patrones.
- No se piensa en mecanismos de inferencia sofisticados ni en
complejas funciones de evaluación.
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
3
ISBC
IA en el Futuro
“Proyectando las tendencias actuales en el futuro, pienso que
habrá un nuevo énfasis sobre sistemas autónomos- robots y
softbots. Softbots son angentes software que navegan por
Internet, buscando información que pueda ser interesante para
sus usuarios. La presión para mejorar las capacidades de los
robots y los agentes software motivarán y guiarán la investigación
en IA durante los próximos años.”
(Artificial Intelligence, A new Synthesis. Nilsson 1998)
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
4
ISBC
Sistemas Basados en el Conocimiento
 Sistema Experto Basado en el Conocimiento
 Programa que se comporta como un experto en un dominio
de aplicación

Un experto reduce rápidamente la búsqueda al reconocer
situaciones (patrones) y utilizar los métodos y reglas
adecuados para descubrir la solución.
 El conocimiento heurístico no representa un análisis en
profundidad del problema, sino una solución “aceptable”
 El número de posibilidades a analizar es grande
 La función algorítmica de evaluación de cada posibilidad es
demasiado compleja o desconocida.
 El conocimiento heurístico en los sistemas expertos
 No se refiere a conocimiento general para guiar la búsqueda
 Es el conocimiento específico aplicable a cada situación
específica del dominio.
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
5
ISBC
Solución heurística / algorítmica
 Diferencias entre la solución algorítmica y heurística
 El constructor determina el precio de una casa mediante una
análisis detallado
 suma materiales, llamada a proveedores para obtener precios,
evaluación de precios de subcontratistas, estimar contingencias
razonables, etc.
 Ventajas: El presupuesto es correcto
 Desventaja: El posible comprador quiere el presupuesto HOY
 El constructor tiene gran experiencia en presupuestos y
estima el precio comparando la construcción con otras
realizadas
 Recuerda el precio de una casa de los mismo metros cuadrados
 Busca diferencias que podrían reducir o bajar el precio
• Añade una piscina => un 1000000 mas
• Los muebles de la cocina de pino en vez de roble => 150000 menos
• Un baño menos => 800000 menos
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
6
ISBC
2. Componentes de SBC
Hechos
Interfaz
usuario
usuario
Base de
conocimiento
Reglas
Explicación
Intérprete
Plan
pizarra Agenda
Planificador
Solucion
IA. José Angel BañaresII-99.
Mantenimiento
consistencia
Sistemas Basados en el Conocimiento.ppt
11/1/1998
7
ISBC
Explicación componentes
 Interfaz de usuario: El usuario interactúa con el SE en un lenguaje
propio del tipo de problema
 Pizarra: almacena hipótesis y decisiones intermedios que manipula
el SE
 Plan: Plan general de solución del problema.
 Agenda : Reglas relevantes para la situación en curso.
 Solución: Hipótesis candidatas y decisiones generadas hasta el
momento
 Planificador: Determina cual es la acción pendiente que se ejecutará
a continuación. El intérprete: Ejecuta la regla escogida.
 Mantenimiento de la consistencia: Mantiene una representación
consistente de la solución mediante:
 Revisión de la probabilidad de una solución cuando se introducen nuevos
hechos.
 Sistemas de mantenimiento de la verdad cuando las soluciones son
deducciones lógicas
 El modulo de explicación: Explica el porqué de las acciones del
sistema
 Reglas y hechos: Registran reglas, hecho e información del dominio
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
8
ISBC
Componente de Explicación
 Un SE debe contar con una componente de explicación
 La respuesta puede ser potencialmente dañina
 Es una forma comprensible de chequear el comportamiento
 Tutores
SE
 Una componente de SE debe idealmente
 Poder responder a preguntas como las siguiente
• ¿Cómo se tomó o no cierta decisión? ¿Cuando, cómo y porqué
se utiliza una información determinada? ¿Qué decisión se tomo
ante un subproblema?
 Ser fácil de usar
 Dar respuestas comprensibles y completas
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
9
ISBC
Programas convencionales y SBC
 Programas: Sentencias sobre datos que se realizan en un
orden predeterminado.
 Solución única
 Para el usuario el programa es una caja negra
Programas = Estructuras de Datos + Algoritmos
 SBC: Se distingue el conocimiento del dominio de la
estrategia de control
 Esto permite la incorporación de más conocimiento sin
manipular la estructura global del sistema
 Se pueden obtener varias soluciones
 El programa puede explicar como llega a su solución.
SBC = Conocimiento + Control
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
10
ISBC
2. Desarrollo de un SBC
 ¿Se pueden clasificar las aplicaciones de SEs sobre la base
de características de las tareas o del dominio?
 ¿Se pueden identificar métodos de resolución de problemas
bien diferenciados que sean útiles para ciertas clases de
aplicaciones de SEs?
 ¿Podemos identificar estilos de representación e inferencia
más adecuados para un método de resolución de problemas
dado?
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
11
2.1 Niveles de descripción
ISBC
Especificación
Especificación
Solución
Tarea
Configuración
...
Diagnóstico
Definición del
Problema
Clasificación
Método de resolución
Objetivos
y datos
Abstracciones
Simulación
cualitativa
Seleccionar
tipo de problema
Seleccionar
método
...
Seleccionar
Representación
Base de conocimiento
Heurísticas
Relaciones
causales
Cuantitativa
Seleccionar
paradigma
Herramienta
Orientada
a Objeto
IA. José Angel BañaresII-99.
..
Basada en
reglas
Sistemas Basados en el Conocimiento.ppt
11/1/1998
12
ISBC
Niveles de descripción
 El desarrollo de un SBC puede verse como un proceso de
transformación desde el nivel de especificación al de
herramienta
 Nivel de Especificación: Se describe el problema, las
restricciones sobre el problema y la solución.
 Nivel de Tarea: Se describe los tipos de problemas, como
diagnóstico, planificación, etc.
 Nivel de resolución del Problema: Estrategias de resolución
que se utilizan para resolver las diferentes tareas
 Nivel de Base de conocimiento: Heurísticas, asociaciones
causales, relaciones matemáticas describiendo fenómenos
físicos.
 Nivel de Herramienta: Implementación del SBC
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
13
ISBC
2.2 Clasificación de las tareas
 Clasificación de Hayes-Roth y col (1983)
 Interpretación: Análisis de datos para determinar su significado.
Con frecuencia la información lleva asociada incertidumbre
 Predicción: Inferir el futuro a partir de situaciones o eventos. Por
ejemplo, predicción del tiempo o predicción financiera.
 Diagnóstico: Deduce fallos a partir de síntomas. Incluye un amplio
espectro de aplicaciones médicas, mecánicas, y electrónicas.
 Diseño: Desarrolla configuraciones de objetos que satisfacen ciertas
restricciones. Por ejemplo, diseño de circuitos, o disposición de
maquinaria en un espacio reducido.
 Planificación: Genera secuencias de acciones para lograr
objetivos.
 Monitorización: Observación del comportamiento del sistema.
 Depuración y Reparación: Generar remedios para fallos de
sistemas.
 Instrucción: Sistemas tutores
 Control: Se anticipa a problemas, planifica soluciones y monitoriza.
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
14
ISBC
Clasificación por operaciones genéricas
 Clancey (1985) Propone un análisis alternativo en término de
operaciones genéricas sobre el sistema:
 Operaciones sintéticas que construyen un sistema
 Operaciones analíticas que interpretan un sistema
Diagnóstico
Planificación
Interpretación
Monitorización
Diseño
Control
Educación
Simulación
analíticas
IA. José Angel BañaresII-99.
Constructivas
Sistemas Basados en el Conocimiento.ppt
11/1/1998
15
ISBC
Clasificación
•Clasificación: Proceso que selecciona soluciones, entre un conjunto de soluciones
preestablecidas, a partir de datos reconocidos.
• Se utiliza en gran cantidad de tareas como diagnóstico de enfermedades o
evaluación prospectiva de depósistos de minales.
Emparejamiento
Datos
Abstraidos
Soluciones
Abstraidas
Abstracción
Datos
Datos
IA. José Angel BañaresII-99.
Refinamiento
Solución
Soluciones
Sistemas Basados en el Conocimiento.ppt
11/1/1998
16
ISBC
Configuración
•Configuración:Selecciona partes y los junta.
• Se utiliza para construir planes de fabricación o recomendaciones de terápias
Emparejamiento
especificación/estructura
Especificaciones
Soluciones
Abstraidas y parciales
Especificaciones
Adicionales
Submodelo
funcionalidades
Soluciones
Refinadas y Expandidas
Submodelo
de Partes
Especificaciones
IA. José Angel BañaresII-99.
Espacio de configuración
Sistemas Basados en el Conocimiento.ppt
Submodelo
de configuración
11/1/1998
17
ISBC
2.3 Nivel de resolución de Problemas
Técnicas de resolución
y arquitecturas
Basadas en
Búsqueda
Simple
Basadas en
el Conocimiento
*Profundidad
*Anchura
*Genete-and-Test
*Satisfacción
restricciones
*Aleatoria
*Forward Chainig
*Backward Chainig
*Prueba Teoremas
*GPS (MEA + OS)
No Estocática
*Escalada
*Primero el mejor
* A*
Evaluación
Estocática
*Simulated Annealing
*Algo. Genéticos
Juegos
IA. José Angel BañaresII-99.
*FC
*Bayes
*Fuzzy
*Dempster-Shaper
Objetivos
y datos
*TMS
*Manejo
restricciones
Mantenimiento
consistencia
*Refinamiento
Jerárquico
*Heuristic-incgenerate&test
Abstracciones
Inexacto
Sistemas Basados en el Conocimiento.ppt
Otros
11/1/1998
18
ISBC
Nivel de resolución de Problemas
f(n) = d(n) + h(n)
 Búsquedas
 Búsquedas ciega
 Dirección:
 Dirigida por objetivo, Dirigida por datos, Bidireccional
 Orden sistemático de visita de nodos: Profundidad y Anchura
 Búsqueda heurística
 Información específica del dominio que guía la búsqueda

Función de evaluación que da una estimación del esfuerzo que
supone
seguir un camino.
.
 Las funciones de evaluación deben caracterizar el espacio de
estados adecuadamente

Es engañoso pensar que una simple función aritmética como estilo
de representación del conocimiento es suficiente. Los sistemas
expertos utilizan grandes cantidades de conocimiento simbólico
.
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
19
ISBC
Razonamiento Basado en el
Conocimiento
 Razonamiento basado en el conocimiento
 El razonamiento basado en el conocimiento
monótono
suele ser no
 Requiere razonar con conocimiento impreciso
 Considerar Justificaciones y hacer tentativas sobre creencias
 Este razonamiento dinámico requiere gran cantidad de
conocimiento
comida
queso
Emmental
Bola
IA. José Angel BañaresII-99.
regla 101
Si huele a queso por aqui y
no veo trampas
entonces merodear cerca
regla 103
Si ya he pasado por aqui
entonces intentar otra alternativa
Sistemas Basados en el Conocimiento.ppt
11/1/1998
20
ISBC
Razonamiento BC (cont.)
 Suposiciones y compromisos
 Los expertos actúan con recursos de tiempo y conocimiento
limitado
 El sentido común permite extraer conclusiones a partir de
informaciones parciales, y la gente acepta conclusiones
aceptables para las cuales no tiene prueba.
 El sentido común requiere que el sistema sea capaz de revisar
sus creencias a la luz de nueva información
=> Razonamiento No monoto
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
21
ISBC
Sistema de razonamiento no
monótono
 Dependencias y Justificaciones
 Para revisar sus creencias frente a nuevas informaciones, el
resolutor debe razonar sobre dependencias entre sus
creencias.
 Estas técnicas son una extensión del backtraking en búsqueda
• Un fallo en la búsqueda da lugar a backtracking:
• Eliminación de todas las acciones e inferencias desde el punto de
elección más reciente y continuar con la siguiente alternativa.
• Debido al orden LIFO del backtraking la memoria de las creencias
activas se puede implementar como una pila.
• Backtraking cronológico es ineficiente porque la razón del fallo se
olvidan cuando se abandona el camino
Ejemplo del robot Robie
El robot tiene como objetivo coger un bloque. Levanta la mano
derecha. Se mueve hasta donde está el bloque. Coge el bloque con
su mano derecha, pero está muy calienta y se quema la mano. Deja
el bloque, baja la mano y retrocede. Levanta la mano izquierda, se
mueve hasta donde está el bloque. Coge el bloque con su mano
izquierda, pero ...
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
22
ISBC
Sistema de razonamiento no
monótono
 Desafortunadamente, en muchos dominios de problemas no
es posible crear modelos completos, consistentes e
inalterables
 La historia del asesino ABC ilustra con claridad muchos
aspectos fundamentales que estas técnicas deben
proporciona [The Web of Belief de Quine y Ullian 1978]:
Sean Abbott, Babbitt y Cabot los sospechosos en un caso de
asesinato. Abbott tiene una coartada en el registro de un
respetable hotel de Albany. Babbitt también tiene una coartada,
la de su cuñado, al cual estaba viendo en Brooklyn en el
momento del crimen. Cabbott defiende también su coartada,
asegurando que se encontraba viendo un campeonato de esquí
en Catskills, pero sólo puede aportar su propio testimonio. Por lo
tanto, creemos:
(1) Que Abbot no cometió el crimen
(2) Que Babbit no lo hizo
(3) Que o Abbott o Babbitt o Cabot lo hizo
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
23
ISBC
Sistema de razonamiento no
monótono
 En principio el sospechoso principal es Cabot, pero ...

... Cabot puede posteriormente presentar pruebas de su
coartada. Tuvo muy buena suerte y fue captado por las cámaras
de TV en las gradas de la pista. De esta forma aparece una
nueva creencia que es:
 (4) Cabot no lo hizo.
 Las creencias (1) a (4) son inconsistentes, por lo que una
debe desestimarse. ¿Cuál es la evidencia más débil?
 La base de (1) en un hotel es buena, ya que se trata de un hotel
prestigioso.
 La base (2) es más débil, ya que puede ser que el cuñado de Babbitt
esté mintiendo.
 La base de (3) es doble: No existen signos de robo y sólo Abbott,
Babbitt y Cabot parecen salir beneficiados con el asesinato.
 La base de (4) es concluyente
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
24
ISBC
Dependencias y Justificaciones
 Se debe seguir la pista de los pasos de inferencia que dieron
lugar a errores e inconsistencias
 Registro de los paso inferenciales => Registros de dependencia

Un método de búsqueda que analice dependencias y decide qué
invalidar se llama no cronológica o dirigida por dependencias.
 Elementos de los registros de dependencia: Creencias, reglas
de inferencia y justificaciones
 Si se encuentra que q es falso el sistema permitirá eliminar p o
(¬ p v q)
verdad
q
verdad
v
¬p v q
justificación
v
justificación
regla
¬pvq
IA. José Angel BañaresII-99.
v
p
v
q
v
Sistemas Basados en el Conocimiento.ppt
verdad
p
v
justificación
11/1/1998
25
ISBC
Razonamiento Bajo incertidumbre
 Razonamiento bajo incertidumbre
 Los tipos de incertidumbre que pueden ocurrir en un SBC son
 Los datos necesarios no están disponibles
 Hay datos poco fiables o ambiguos debido a errores en las
medidas o distintas medidas en conflicto
 La representación de los datos no es precisa
 Los datos son adivinados por el usuario o por el experto a partir
de valores razonable o estadísticos
 Los datos don valores por defecto y puede haber excepciones.
 Normalmente se debe razonar con datos sobre los que existe
cierto grado de incertidumbre
 ¿Cómo se representa la incertidumbre de los datos?
 ¿Cómo se combina la incertidumbre de dos o más datos?
 ¿Como se razona con datos con incertidumbre?
 Se han propuesto diferentes métodos numéricos
 Modelos Bayesianos, Factores de certidumbre, Lógica Fuzzy,
Teoría de la Evidencia de Dempster-Shafer
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
26
ISBC
Incertidumbre (cont.)
 Modelo de Bayes => Teoría clásica de la probabilidad
 Teorema de Bayes: P(H | E) = P (E | H) * P(H) / P(E)
 Ejemplo: ¿Qué podemos decir si observamos que el paciente
estornuda?
SI el paciente tiene un catarro ENTONCES estornudará (0.75)
* Supongamos que conocemos que
P(H)=P(paciente este acatarrado) = 0.2
P(E | H)= P(Paciente estornude | paciente tiene catarro) = 0.75
P(E | ~H)= P(Paciente estornude | paciente no tiene catarro) = 0.2
*ENTONCES
podemos deducir
P(E) = P(paciente estornude) =
P(E | H) * P(H) +P(E | ~H ) * P(~H) = 0.75*0.2 + 0.2*0.8= 0.31
P(H | E) =P(Paciente está acatarrado | paciente estornuda) =
0.75 * 0.2 / 0.31 = 0.48387
P(H | ~E) =P(Paciente está acatarrado | paciente no estornuda) =
P (H | ~E) * P(H) / P(~E) = (1 - 0.75) * 0.2 / (1 - 0.31) = 0.07246
Estornudar multiplica la probabilidad de estar acatarrado por 2.5
No estornudar divide la probabilidad de estar acatarrado por 3
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
27
ISBC
Incertidumbre, Modelos probabilisticos
 Problemas de los métodos Bayesianos
 Requieren una gran cantidad de datos para construir una base
de conocimiento =>
Las redes Bayesianas reducen el número de probabilidades
requeridas. Una red Bayesiana es un grafo que muestra las
dependencias entre las variables.
 ¿En que se basan las probabilidades a priori y condicionadas?
Muestra estadística grande
Valor suministrado por un experto
 No son capaces de explicar el proceso de razonamiento
Los sistemas de diagnóstico médico basados en Bayes no son
aceptados porque no explican como llegan a las conclusiones.
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
28
ISBC
Técnicas de razonamiento Avanzadas
 Razonamiento basado en el modelo
 Representan los sistmas físicos mediante su estructura y
funcionalidad. Razona utilizando principios básicos de ingeniería
y ciencias
 Tipos de modelos: Ecuaciones, Estocásticos, y modelos
causales (Centrados en dispositivos).
 Conocimiento profundo en lugar de conocimiento superficial
sobre el comportamiento del sistema.
 EJEMPLO Aplicación típica: Diagnóstico de circuitos digitales.
Un técnico de reparación de televisores expertimentado utiliza:
*Unas pocas medidas en los dispositivos
* Con su conocimiento de dispositivos puede mirar un esquema de la
televisión e identificar el componente que falla
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
29
ISBC
Técnicas de razonamiento Avanzadas
 Razonamiento Cualitativo
 Simulación cuantitativa: Modelado del comportamiento exacto
mediante la descripción completa y determinista de sus
parámetros.
 Simulación cualitativa de un sistema: Determina sólo sus
posibles estados generales basándose en algunas restricciones.
 Razonamiento basado en casos
 Objetivo: Reemplazar el conocimiento de un experto con una
base de datos de casos
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
30
ISBC
3. Proceso de desarrollo
 Adecuación de una aproximación basada en el conocimiento
 No hay una solución algorítmica
 La tarea del dominio la realizan expertos
 Los expertos no son simples aficionados
 La tarea no debe ser ni muy difícil ni muy complicada para el
experto
 El problema no debe requerir “sentido común”
 La utilización del SBC reportará beneficios
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
31
ISBC
Proceso de desarrollo
IDENTIFICACIÓN
¿Cuáles son las características del dominio?
¿Cuál es su ámbito?
¿Quienes participarán y con que recursos?
CONCEPTUALIZACIÓN
¿Qué información y técnicas utiliza el experto?
FORMALIZACIÓN
¿Cómo encajan estas técnicas en las estructuras
y estrategias de los sistemas expertos?
IMPLEMENTACIÓN
Acquiere y comprueba iterativamente
las habilidades del sistema
CHEQUEO
Test de comprobación final
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
32
ISBC
Proceso de desarrollo
 Pasos principales:
 Identificación: Caracterización de los aspectos más importantes del
dominio del problema
 Conceptualización: Se extraen los conceptos, subtareas y
restricciones necesarias para resolver el problema.
• Ingeniero del Conocimiento: Persona que traslada el
conocimiento de un experto a algún formalismo.
• Es útil un modelo conceptual (mental) entre el experto y el
implementador.
Modelo
Conceptual
Programación
Adquisición del
conocimiento
Sistema
Implementado
if p(x) ^ q(x, y)
then r(y)
Conocimiento
del
Experto
IA. José Angel BañaresII-99.
motor de inferencia
if u(x) ^ v(x, y)
then s(y)
if r(x) ^ sq(x, y)
then t(y)
Sistemas Basados en el Conocimiento.ppt
11/1/1998
33
ISBC
Proceso de desarrollo
 Formalización: Los conceptos de la etapa de conceptualización se
representan con las herramientas y esquemas de representación
disponibles.
• ¿Herramienta de adquisición?, ¿chequeos de la base de datos?,
¿Reglas? ¿Redes semánticas?, ¿Frames?, ¿Esquema de
razonamiento?, ¿Módulo de explicación? ...
 Implementación:
• Desarrollo de una herramienta de propósito específico
• Utilización de algún shell para el desarrollo de SEs.
 Verificación y refinamiento:
• El prototipo es comprobado con el experto.
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
34
ISBC
Proceso de desarrollo
 Dos aproximaciones
 Prototipado:
 Es el método más popular para el desarrollo de SBC
- Depende mucho más de la involucración de los usuarios
- Necesidad de comprobar el comportamiento del sistema según se
desarrolla
- Adquisición del conocimiento y desarrollo del software se pueden
combinar en el prototipado
 Problemas: Desarrollo ad hoc e indisciplinado
 Estructurado:
 KADS (Knowledge Acquisition and Design process):
- Metodología de modelado, con una fase rigurosa de análisis antes
del diseño
- El prototipado se utiliza para experimentar, no como metodogía
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
35
ISBC
Lisp
C
Ada
Lenguajes
tradicionales
4. Herramientas
Reglas
OPS5
Lógica:
PROLOG
Objetos:
Smalltalk-80
C++
Java
Un paradigma de
programación
LOOPS
CLIPS
K-CRAFT
ART
NEXPERT
KAPPA
CLOS
Integran distintos
paradigmas
Cómo hacer una tarea
IA. José Angel BañaresII-99.
KEE
VPEXPERT
PC+
Shells
Qué tarea hacer
Sistemas Basados en el Conocimiento.ppt
11/1/1998
36
ISBC
5. Revisión histórica de los SEs
 GPS (Newell 1963)
•
•
Búsqueda secuencia de operadores que eliminan la diferencia entre
un estado inicial y un estado objetivo
Separación entre el conocimiento y como utilizarlo
 DENDRAL (Universidad de Standford, finales 60-70)
• Utilización de conocimiento específico del dominio
• Infiere la estructura molecular a partir del análisis de espectográfico
de masas mediante resonancia magnética.
• Variación de la estrategia generate&test.
 SAINT, MACSYMA (MIT, 1961-1971)
• Matemáticas simbólicas, cálculo diferencial e integral.
• Incorporación de cientos de reglas utilizadas por expertos
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
37
ISBC
Revisión histórica de los SEs
 MYCIN (Univ Standford, 1976)
 Diagnóstico y tratamiento de desordenes de la sangre
 Alrededor de 400 reglas que relaciones condiciones a posibles
interpretaciones
 Razonamiento bajo incertidumbre
 Separa base de conocimiento del motor de inferencia.
• EMYCIN: Empty MYCIN
• TERESIAS: UN programa que asiste en la construcción de grandes bases
de conocimiento.
 PROSPECTOR (SRI, 1979-1981)
 Ayuda a la exploración geológica. Proceso de clasificación dirigido
por los datos.
 Razonamiento bajo incertidumbre
 HERSAY II (Carnegie-Mellon, 1980)
 Comprensión del lenguaje hablado.
 Arquitectura de pizarra.
 OTROS:
 Medicina CASNET, INTERNIST, PUFF
 Fabricación: XCON
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
38
ISBC
Tiempos empleados
50
Dendral
Años-Persona
40
Macsyma
30
Internist
Mycin
20
Harpy
Prospector
Casnet
10
Puff
0
1965
Año de comienzo
IA. José Angel BañaresII-99.
1970
1975
Sistemas Basados en el Conocimiento.ppt
Xcon
1980
11/1/1998
39
ISBC
Bibliografía
- Building Expert Systems. Frederick Hayes-Roth, Donald A. Waterman,
Douglas B. Lenant. Addison-Wesley 1983
- Intelligent Systems for Engineering. Ram D. Sriram. Springer-Verlag
1997.
- Introduction to Expert Systems. 2nd Edition. Peter Jackson. AddisonWesley 1990
- The Engineering of Knowledge-Based Systems. Theory and Practice.
Avelino J. Gonzalez and Douglas D. Dankel. Prentice-Hall 1993
- Introduction to Knowledge Systems. Stefik, M. Morgan Kaufmann, 1995.
IA. José Angel BañaresII-99.
Sistemas Basados en el Conocimiento.ppt
11/1/1998
40