Inteligencia Artificial y Sistemas Expertos
I. A. Clsica Sistemas Expertos
Introduccin y definicin Etapas en el proceso de creacin Herramientas de desarrollo Ejemplos
MYCIN G2
Sistemas Expertos
Vidal Moreno. USAL. 2005
Introduccin I
Introduccin
Actitudes inteligentes Resolucin de problemas (Problemas de bsqueda) Capacidad de almacenamiento de informacin (Problema de representacin) Explotacin del conocimiento (Utilizacin de conocimiento expert o) Se plantea la necesidad de desarrollar sistemas optimizados de bsqueda de informacin Bases de datos inteligentes Sistemas expertos Definicin de sistema experto Aplicacin informtica que es capaz de aplicar conocimiento substancial en reas especficas de experiencia con objeto de resolver problemas.
Sistemas Expertos Vidal Moreno. USAL. 2005 2
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Introduccin II
Caractersticas de un sistema experto
Ser capaz de aprender de los expertos humanos Mantener y actualizar los conocimientos a travs de la lectura, planteamiento de cuestiones e incluso de la experiencia adquirida Presentar sus conclusiones a los usuarios humanos de igual manera que un experto: Justificar, clarificar y explicar su modo de razonamiento e incluso instruir al interlocutor Deber utilizar todas o algunas de esta herramientas Usar reglas experimentales heursticas para evitar la bsqueda ciega Manipulado de smbolos complejos Interactuar con el usuario
Sistemas Expertos
Vidal Moreno. USAL. 2005
Ejemplos I
Aplicaciones (por campos)
Medicina MYCIN
Enfermedades infecciosas
INTERNIST
Diagnstico en medicina interna
Geologa Prospector
Evaluacin de recursos geolgicos
Control Industrial G2
Control en tiempo real
COPMA
Ejecucin de Procedimientos de Operacin de emergencia
Sistemas Expertos
Vidal Moreno. USAL. 2005
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Ejemplos II
Ejemplo 1: SUMMERS.
Sistemas Expertos
Vidal Moreno. USAL. 2005
Ejemplos III: G2
Sistemas Expertos
Vidal Moreno. USAL. 2005
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Aplicaciones I
Control mdico. Monitorizar y actuar
Caractersticas: Capacidad de prediccin y planificacin Ej: VM (Medicina en UVI)
Diseo. Dadas unas restricciones definir la configuracin y caractersticas de un sistema
Caractersticas: Mantenimiento de todas las restricciones a lo largo del proceso de resolucin. Razonamiento No-Monotnico Ej: PEACE, XCON (DEC)
Diagnstico. Dados unos sntomas (observaciones) deducir las causas (fallos) que los provocaron
Caractersticas: Sistemas de razonamiento hacia atrs. Sistemas basados en modelos Ej: NEAT (1989). Resolver problemas equipos de procesamiento y transmisin de datos
Sistemas Expertos
Vidal Moreno. USAL. 2005
Aplicaciones II
Tareas
Instruccin. Guiado en la educacin utilizando conocimiento experto. Caractersticas. Utilizan un modelo ideal de estudiante y plantean la deteccin y diagnstico de los fallos que presenta Ejemplos: COPMA, GUIDON Interpretacin. Extraccin de informacin (simblica) a partir de datos disponibles Caractersticas. Utilizan un volumen importante de datos numricos y han de traducirlo a informacin simblica de alto nivel Ejemplo: FXAA (Anlisis de datos bancarios) Monitorizacin. Deteccin de estados cruciales Caractersticas. Utilizan mtodos de clasificacin. Ejemplo: NAVEX (1984). Monitoriza transbordador espacial
Sistemas Expertos
Vidal Moreno. USAL. 2005
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Aplicaciones (y III)
Tareas
Planificacin. Generacin de planes para conseguir un ptimo bajo unas restricciones. Caractersticas: Mantenimiento de restricciones. Razonamiento nomonotnico. Ejemplo: PLANPOWER (1987) Planes financieros Prediccin. Deduccin de consecuencias a partir de situaciones. Caractersticas: Razonamiento temporal. Simulacin inteligente Ejemplo: PLANT (1983) Simulacin del efecto de plagas Otros: Prescripcin Seleccin Simulacin
Sistemas Expertos
Vidal Moreno. USAL. 2005
Caracterizacin I
Solucin algortmica vs. Solucin experta
Sistemas Expertos
Vidal Moreno. USAL. 2005
10
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Caracterizacin (y II)
Experto humano vs sistema experto
EXPERTO HUMANO
SISTEMA EXPERTO
Memoria Largo Plazo Conocimiento del dominio Razonamiento Memoria Corto Plazo Hechos conocidos/deducidos Conclusiones
Base de Conocimientos Conocimiento del dominio Motor de Inferencia
Memoria de trabajo Hechos conocidos/deducidos Conclusiones
Sistemas Expertos
Vidal Moreno. USAL. 2005
11
Herramientas IV
Shells. Caractersticas (I)
Potencia en la representacin del conocimiento Todos los entornos avanzados de hoy en da cuentan con representaciones hbridas, basadas en marcos y en reglas Es deseable que la herramienta admita una red jerrquica de marcos e instancias, demonios, facetas, control de la herencia, programacin orientada a objeto Para la gestin de reglas debe disponer de prioridades, factores de certeza, tipos de dependencia, acceso a las agendas, etc. Flexibilidad para modificar el funcionamiento original del programa y aadirle capacidades definidas por el diseador del sistema experto. Comodidad y sencillez en el manejo del programa En este sentido es de gran ayuda contar con un entorno grfico en el que haya editores y visualizadores para las reglas y los marcos, etc.
Sistemas Expertos Vidal Moreno. USAL. 2005 12
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Herramientas V
Shells. Caractersticas (II)
Eficiencia En sistemas de cierto tamao es especialmente importante que el sistema responda con rapidez, pues de otro modo difcilmente ser aceptado por el usuario final. Robustez En algunas herramientas los errores de implementacin, adems de que hacen perder gran cantidad de tiempo al diseador del sistema experto, impiden su utilizacin en entornos industriales, donde la fiabilidad es un requisito primordial. Traza y depuracin. Ahorran tiempo y le permiten mantener la consistencia de la base de conocimiento.
Sistemas Expertos Vidal Moreno. USAL. 2005 13
Herramientas VI
Shells. Caractersticas (III)
Explicacin del razonamiento Sera deseable que adems de mostrar el encadenamiento de las reglas, diera al usuario la posibilidad de definir sus propios mtodos de explicacin. Interfaces: Con el usuario Con bases de datos Con lenguajes de programacin, ya que en prcticamente todas las aplicaciones reales se hace necesario realizar cierta programacin algortmica, sobre todo por motivos de eficiencia. Con el entorno: acceso al sistema operativo, intercambio de datos con otras aplicaciones, control del entorno de ventanas, etc.
Sistemas Expertos Vidal Moreno. USAL. 2005 14
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Herramientas (VII)
Shells. Caractersticas (IV)
Sistemas Expertos
Vidal Moreno. USAL. 2005
15
Encadenamiento hacia delante vs Encadenamiento hacia atrs
Encadenamiento hacia delante
Estrategia de inferencia que a partir de un conjunto de hechos, deriva nuevos hechos utilizando reglas cuyas premisa coinciden con los hechos conocidos Finalizacin del proceso Alcanzado el objetivo No existen reglas
Relacionado con los Sist. Prod. dirigidos por datos (Data-driven) Requiere un mecanismo de resolucin de conflictos
Seleccin de la regla que se ha de disparar
Sistemas Expertos
Vidal Moreno. USAL. 2005
16
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Encadenamiento hacia delante vs Encadenamiento hacia atrs
Ejemplo de reglas
Sistemas Expertos
Vidal Moreno. USAL. 2005
17
Encadenamiento hacia delante
Sistemas Expertos
Vidal Moreno. USAL. 2005
18
Departamento de Informtica y Automtica
Inteligencia Artificial y Sistemas Expertos
Encadenamiento hacia delante
Problemas
Disparo de reglas innecesarias Resolucin de conflictos La primera regla que satisface la memoria de trabajo Regla de mayor prioridad Regla ms especfica
Aquella que contiene ms elementos en sus premisas
Aquella regla que se refiere al elemento ms recientemente aadido Discriminar aquella regla que ya ha sido disparada Disparo de reglas que origina diferentes lneas de razonamiento (Campo Viewpoint)
Sistemas Expertos
Vidal Moreno. USAL. 2005
19
Encadenamiento hacia atrs
Estrategia de inferencia que intenta probar una hiptesis a partir de sus premisas
Desencadena la bsqueda que tienen en sus conclusiones las premisas necesarias (Sub-goals) Las premisas que no aparecen en ninguna regla: PRIMITIVAS Son solicitadas al usuario
Sistemas Expertos
Vidal Moreno. USAL. 2005
20
Departamento de Informtica y Automtica
10
Inteligencia Artificial y Sistemas Expertos
Comparacin Enc. Adelante/Atrs
EH Adelante Ventajas
Proporcionan mucha informacin a partir de una pequea cantidad de informacin Buen enfoque (Resolucin de problemas) Planificacin, control, monitorizacin, interpretacin (Sistemas SCADA)
Inconvenientes
Posibilidad de hacer cuestiones intiles, sin relacin
EH Atrs Ventajas
Problemas que comienzan con el planteamiento de hiptesis Mantienen preguntas con temas relacionados Buen enfoque Tareas de diagnstico, depurado de errores
Inconvenientes
Puede tardar mucho en detectar objetivos que no se pueden conseguir
Sistemas Expertos
Vidal Moreno. USAL. 2005
21
Bsqueda en profundidad vs Bsqueda en anchura
Considerar las reglas
Sistemas Expertos
Vidal Moreno. USAL. 2005
22
Departamento de Informtica y Automtica
11
Inteligencia Artificial y Sistemas Expertos
Bsqueda en profundidad vs Bsqueda en anchura
Primero Profundidad - Primero anchura
Sistemas Expertos
Vidal Moreno. USAL. 2005
23
EMYCIN I
Origen. MYCIN.
Aplicacin Enfermedades infecciosas (Bacterimia, Meningitis) Necesidad de reaccin rpida ante la presencia de enfermedades Test sanguneos: 2 dias => Necesitaba conocimiento experto Tratamiento adecuado (un 66% resultaba inadecuado) Desarrollo 20 personas-ao 500 reglas Caractersticas Implementado en LISP (Interlisp) Sistema experto basado en reglas Encadenamiento hacia atrs Utiliza grados de certidumbre
Sistemas Expertos
Vidal Moreno. USAL. 2005
24
Departamento de Informtica y Automtica
12
Inteligencia Artificial y Sistemas Expertos
EMYCIN II
Ejemplo de regla
Lenguaje natural
IF AND AND El tipo de organismo es gram-negativo La morfologia del organismo es redondeado La aerobicidad del organismo es anaerobia
LISP
THEN Existe una fuerte evidencia (0.8) de que la clase de organismo sea Enterobacteriae IF (AND (SAME CNTEXT GRAM GRAMNEG) (SAME CNTEXT MORPH REDOND) (SAME CNTEXT AIR ANAEROBIC))
THEN (CONCLUDE CNTEXT CLASS ENTEROBACTERIAE TALLY .8)
Sistemas Expertos
Vidal Moreno. USAL. 2005
25
EMYCIN III
Principios de funcionamiento
Separacin del conocimiento del control Conocimiento
Conjunto de reglas sobre el dominio
Control
Encadenamiento hacia atrs Bsqueda primero-profundidad Incorpora metaconocimiento Manejo de reglas por otras
IF AND THEN
Infeccin es plvica Hay reglas que mencionan las enterobacterias Hay evidencia de que las reglas que mencionan las enterobacterias deben ser mencionadas
Sistemas Expertos
Vidal Moreno. USAL. 2005
26
Departamento de Informtica y Automtica
13
Inteligencia Artificial y Sistemas Expertos
EMYCIN IV
Propiedades
Empleo del razonamiento inexacto Factores de incertidumbre
-1 Falso <-> 1 Verdadero Ejemplo: Evidencia puede ser verdadera (Evidencia 0.7)
Recuerda la sesin anterior Interaccin en lenguaje natural "Spelling checker"
MYCIN: What is the infection User: Enddduritis FATAL ERROR 6B4A PROGRAM ABORTED INVALID RESPONSE, RETYPE MYCIN: Do you mean to type Endartitis User: Yes
INCORRECTO
Sistemas Expertos
Vidal Moreno. USAL. 2005
27
EMYCIN V
Propiedades
Proporciona explicaciones: WHY, HOW
MYCIN: How old is the car's battery? User: Why? MYCIN:This will aid in determining the battery' condition RULE 037 IF The car abttery's age is over 5 years AND The car battery's voltage is below 10 volts THEN The battery's condition is probably bad MYCIN:I Recommend you to replace the battery User: How? MYCIN:I used the rule 044 to conclude that the recommendation is to replace the batery RULE 044: IF The battery's condition is probably bad THEN Recommend replacing the battery I used the rule 037 to conclude the condition of the battery RULE 037 IF The car battery's age is over five years AND The car battery's voltage is below 10 volts THEN The battery's condition is probably bad You told me
Sistemas Expertos
Vidal Moreno. USAL. 2005
28
Departamento de Informtica y Automtica
14
Inteligencia Artificial y Sistemas Expertos
EMYCIN (y VI)
Ejemplo. TMYCIN = Tiny EMYCIN-like Expert System Tool Base de conocimientos
Contexto Estructura de datos donde se reflejan los datos acerca de un objeto (enfermedad, roca, avera). Se describen en "context definition" o Clase (defcontext <context-name> <parameters> <initial-data> <goals>)
<context-name> es el nombre del contexto (la clase de objeto a identificar o diagnsticar) <parameters> es la lista de parmetros/caractersticas que lo describen <initial-data> es la lista de parmetros iniciales que se comienzan en cada consulta <goals> es la lista de valores cuyos valores son buscados como resultado de la consulta
Sistemas Expertos
Vidal Moreno. USAL. 2005
29
EMYCIN. Ej: Tmycin I
Base de conocimientos
Contexto. Parmetros (<parameter-name> <type> <prompt >) <parameter-name> es siempre un smbolo simple (COLOR) <type> puede ser
POSNUMB (positive number). No se chequea y se muestra al usuario su valor Una lista de valores BROWN BLACK WHITE). Igual NIL, induca una respuesta (YES/NO) Se examina de forma que se convierte en NO to (YES -1.0)
<prompt > (optional) Sirve para indicar la cuestin o comentario que se incluye al hacer la pregunta
Sistemas Expertos
Vidal Moreno. USAL. 2005
30
Departamento de Informtica y Automtica
15
Inteligencia Artificial y Sistemas Expertos
EMYCIN. Ej: Tmycin II
Base de conocimientos
Contexto
Sistemas Expertos
Vidal Moreno. USAL. 2005
31
EMYCIN. Ej: Tmycin III
Base de conocimientos
Reglas (<rulename> <premises> <conclusion>) <premises> es una conjuncin de condiciones agrupadas dentro de una llamada a la funcin $AND. <conclusin> es una llamada a la funcin CONCLUDE (puede ser un DO-ALL para varias acciones)
(rule101 ($and (same cntxt color black) (notsame cntxt pretty yes) ($or (between* (val1 cntxt hardness) 3 5) (same cntxt environment sedimentary))) (conclude cntxt identity coal tally 400)
Sistemas Expertos
Vidal Moreno. USAL. 2005
32
Departamento de Informtica y Automtica
16
Inteligencia Artificial y Sistemas Expertos
EMYCIN. Ej: Tmycin IV
Base de conocimientos
Reglas. Premisas Combinaciones $AND and $OR
$AND. Si cualquier clausula devuelve NIL o un CF<.2 devuelve NIL. Hace un preanlisis. En caso contrario devuelve el minimo de los CF $OR devuelve el mximo de los CF de los elementos a los que afecta.
Operandos
(SAME CNTXT <parameter> <value>) chequea si un parmetro toma un valor <value> con un CF>.2 devolviendo este CF. El valor es el CF si el chequeo es (SAME CNTXT < parameter> YES). (NOTSAME CNTXT <parameter> <value>) chequea si el parmetro toma el valor con un CF<=.2. Devuelve verdadero cuando el valor es "unknown"
Sistemas Expertos
Vidal Moreno. USAL. 2005
33
EMYCIN. Ej: Tmycin V
Reglas. Definicin de las premisas
Operandos (THOUGHTNOT CNTXT <parameter> <value>) chequea si el valor del parmetro tiene un CF<-.2. En ese caso devuelve el valor negado. (KNOWN CNTXT <parameter>) chequea si el CF para el parmetro es >.2 (Para Yes/No CF<-.2) El valor devuelto es la unidad. (NOTKNOWN CNTXT <parameter>) chequea si el CF para el parmetro NO es >.2 (Para Yes/No CF<-.2) El valor devuelto es la unidad. Exploracin de las reglas hacia atras con estrategia primeroprofundidad. MOTOR DE INFERENCIA
Sistemas Expertos
Vidal Moreno. USAL. 2005
34
Departamento de Informtica y Automtica
17
Inteligencia Artificial y Sistemas Expertos
EMYCIN. Ej: Tmycin VI
Ejemplo
Sistemas Expertos
Vidal Moreno. USAL. 2005
35
EMYCIN. Ej: Tmycin VII
Utilizacin
Primeros pasos (load "[Link]") (doconsult ) Respuestas de usuario BLUE => ((BLUE 1.0)). YES/NO (YES 0.6) => ((YES 0.6)). ((RED 0.5)(ORANGE 0.5)). No hay anlisis de consistencia UNK / UNKNOWN ?. El sistema coloca la "Ayuda" WHY
Sistemas Expertos
Vidal Moreno. USAL. 2005
36
Departamento de Informtica y Automtica
18
Inteligencia Artificial y Sistemas Expertos
EMYCIN. Ej: Tmycin (y VIII)
Ejemplo de ejecucin
Sistemas Expertos
Vidal Moreno. USAL. 2005
37
Desarrollo de un Sistema Experto
Problema propuesto
Diagnstico de enfermedades hematolgicas Definir la causa de un cuadro de hemorragias Seal de alarma: Bajo nivel de hemoglobina Se considera el modelo de produccin de cogulos Modelo causal Secuencia de test Test de Rumpell-Leede (fragilidad vascular) Recuento de plaquetas
Diferentes posibilidades
Sistemas Expertos
Vidal Moreno. USAL. 2005
38
Departamento de Informtica y Automtica
19
Inteligencia Artificial y Sistemas Expertos
Desarrollo de un Sistema Experto
Diagnstico de enfermedades hematolgicas
Sistemas Expertos
Vidal Moreno. USAL. 2005
39
Desarrollo de un Sistema Experto
Diseo e implementacin (solucin lineal)
Arbol de pruebas -> slots de un solo objeto de pruebas Reglas Tantas como posibilidades de Hiptesis de diagnstico Hiptesis de reglas ( Hiptesis de diagnstico) Antecedentes
Premisas en el orden en que se recorre el rbol de la descripcin de diagnosis El conjunto se comporta siguiendo un recorrido sistemtico.
Sistemas Expertos Vidal Moreno. USAL. 2005 40
Departamento de Informtica y Automtica
20
Inteligencia Artificial y Sistemas Expertos
Desarrollo de un Sistema Experto
Definicin de reglas
Sistemas Expertos
Vidal Moreno. USAL. 2005
41
Departamento de Informtica y Automtica
21