Está en la página 1de 32

Sistemas Expertos

Adquisición del conocimiento


Fases de desarrollo

Ingeniería del Conocimiento

Ingeniería Electrónica
¿Quiénes participan en la construcción
de un SE ?

Constructor Experto del


Extiende
del SHELL Dominio
Prueba
Construye
Entrevista

Ingeniero del Sistema Usuario final


SHELL
Conocimiento Experto

Usa
Agregan
Construye
Personal de datos
Refina
Prueba Apoyo
Participantes fundamentales en el desarrollo.
Especialista. Conoce los hechos importantes y
Experto del dominio comprende el significado de las relaciones entre ellos.
Posee conocimiento, juicio, metodología y sabe
aplicarlas en el dominio de trabajo.

Posee el conocimiento técnico para adquirir,


Ing. del conocimiento representar y utilizar apropiadamente el conocimiento
para estructurar y explicar líneas de razonamiento. Es
muchas veces el constructor del sistema.

Quien usará el sistema. Sus necesidades deben quedar


Usuario final claramente definidas: objetivos, características de la
interacción, tipo de vocabulario, calidad de ayuda y
explicaciones.
Ingeniero del conocimiento
 Debe poseer la lógica y las cualidades de un
informático.
 Debe ser un especialista en la tecnología de los
sistemas expertos.
 Debe poseer la capacidad de aprendizaje
interdisciplinario.
 Debe ser competente para reconocer y tratar con lo
expertos del dominio.
 Debe ser hábil para educir el conocimiento en
diferentes circunstancias.
 Debe tener la destreza interpersonal y directiva
para liderar el proyecto.
Usuario Final
El equipo de desarrollo de un sistema
experto se completa con el concurso del
usuario final que contribuye a definir los
aspectos operativos y las características de
la interfaz.
Requerimientos para desarrollar un SE.

Existen verdaderos expertos

Los expertos acuerdan soluciones

Los expertos pueden articular sus métodos

Se dispone de casos de prueba


Y
La tarea está bien estructurada y se entiende bien
Desarrollo
La tarea no requiere sentido común
Posible
La tarea requiere sólo habilidades
cognitivas.
Cuando es apropiado implementar un SE.

Se requiere manipular símbolos


Naturaleza
Se requieren soluciones heurísticas

La tarea no es demasiado fácil


Complejidad Y
La tarea tiene valor práctico

Alcance La tarea es de un tamaño manejable

Desarrollo
Apropiado
Justificación del desarrollo de un SE.

Experiencia humana escasa

Pérdida de experiencia humana

Experiencia necesaria en entornos hostiles


O
No existen soluciones alternativas

Alta tasa de recuperación de la inversión


Desarrollo
Justificado
SE aplicados a tareas de:
Interpretación Infiere la descripción de situaciones a partir de los datos

Diagnóstico Infiere mal funcionamiento del sistema a partir de observaciones

Debugging Prescribe acciones correctivas ante un mal funcionamiento

Predicción Pronóstico. Infiere las consecuencias de la situación actual

Monitoreo Compara lo observado con lo deseado

Control Gobierna la conducta del sistema

Planificación Diseña planes y acciones para alcanzar un objetivo

Diseño Configura objetos bajo ciertas restricciones

Asist.Inteligente Provee apoyo a decisiones

Consultor Indica el “cómo hacerlo”

Tutor Ayuda en el aprendizaje


Problemas y limitaciones de los SE
 El proceso de adquisición del conocimiento es dificultoso.

 Los dominios deben estar bien acotados.

 La validación del sistema puede ser cuestionable, si no existen


expertos independientes que verifiquen los resultados.

 El desarrollo es caro.

 El sentido común no es representable.

 Si se los saca de contexto exhiben un comportamiento poco


razonable.

 La incorporación automática de nuevo conocimiento (aprendizaje)


es complicada.
Problemas y limitaciones de los SE
 El proceso de adquisición del conocimiento es dificultoso.

 Los dominios deben estar bien acotados.

 La validación del sistema puede ser cuestionable, si no existen


expertos independientes que verifiquen los resultados.

 El desarrollo es caro.

 El sentido común no es representable.

 Si se los saca de contexto exhiben un comportamiento poco


razonable.

 La incorporación automática de nuevo conocimiento (aprendizaje)


es complicada.
Adquisición del conocimiento
Proceso de extraer, estructurar y
organizar conocimiento de una
o varias fuentes.

Dificultades: Es el “cuello de botella”


del desarrollo.
Es costoso

Los expertos suelen disponer de poco tiempo


Deben existir acuerdos y se debe trabajar en equipo
Es fundamental estructurar el conocimiento y explicitar métodos
Métodos de adquisición del conocimiento.
Se estructuran alrededor de algún tipo de entrevista
Manuales con el/los expertos donde además se trabaja con toda
la documentación disponible.

Lentos y caros
Aún los más usados

Programas interactivos que “entrevistan a los expertos”.


Semiautomáticos Se minimiza el rol del ing. del conocimiento.
Apoyos computarizados para colaborar con los
ing. del conocimiento.

Automáticos Se minimizan los roles del experto e ing. del conocimiento.

Métodos inductivos
Métodos manuales de adquisición del conocimiento
Entrevistas: distintos tipos
El experto “enseña” tratando de explicar y
justificar su conocimiento del dominio.
Informales o no El experto instruye sobre como leer e interpretar
estructuradas el material disponible.

El experto explica como aborda un caso


Dificultades particular

Los expertos tienen dificultad en identificar los


principales elementos de su conocimiento en
dominios complejos. Dificultad para:

Los datos adquiridos no se relacionan o tienen  interpretarlos


distinto nivel de complejidad.  integrarlos
 estructurarlos
Métodos manuales de adquisición del conocimiento.
Entrevistas: distintos tipos
Tienen un objetivo específico. Organizan la
Estructuradas comunicación y reducen los problemas de
interpretación.

Agenda con áreas de interés


Exigen un análisis previo de
la información disponible
hasta el momento. Cuestionario específico

Exigen un análisis cuidadoso de la información


obtenida para validarla, debiéndose volver sobre
ella en entrevistas posteriores.
Adquisición del conocimiento
• La tarea de educción comprende tres
aspectos fundamentales:

• La motivación del experto del dominio.


• El estilo y el conocimiento que posee el
ingeniero del conocimiento.
• Un método adecuado.
Métodos manuales de adquisición del conocimiento.
Análisis de protocolo Se propone al experto la realización de una tarea real. Se
planifica la actividad previamente y se prepara el escenario.
El experto debe explicar detalladamente su proceder,
justificar sus decisiones y caracterizar las distintas
Análisis de casos alternativas con sus valores específicos.

Se analiza el comportamiento del experto en campo. Se


Observación puede analizar con quienes interactúa y de que forma, a
de campo que eventos dirige su atención.

Se reúne a varios expertos para que den su opinión sobre


Brainstorming distintos aspectos del problema. Es útil para generar ideas.

Aunque sean parciales, estimulan la crítica por parte de


Prototipos los expertos y ayudan a orientar el desarrollo.
Soporte para el Ingeniero del conocimiento
TRACE
Debugging Habitualmente disponibles.
BREAK

Testeo automático Raramente disponible

Almacena gran cantidad de casos de prueba con sus


EXPERT soluciones correctas. Los utiliza para testear las reglas en
la KB. Muy útil para analizar modificaciones.

Desarrollo basado en CASNET - 70s


Soporte para el Ingeniero del conocimento
La mayoría de los SE pueden explicar de que
forma alcanzan sus conclusiones. Puede
Facilidades de explicación proveerlo la herramienta o depender del
programador
Razonamiento retrospectivo Traza de las reglas disparadas.

Explica las diferencias si cierto hecho o regla


Razonamiento hipotético
hubiera sido distinto.

Razonamiento sobre Explica porque no se alcanzó una


conclusiones conclusión esperada.

Explicación incluida. Más elaborada que la


EMYCIN Muy complejos
simple traza de las reglas.
Métodos automáticos: Inducción de reglas.
Las reglas se obtienen a partir de ejemplos. El programa genera una matriz
de atributos, valores y elecciones y sobre ella operan algoritmos de distinto
tipo para lograr las reglas (desde métodos estadísticos a redes neuronales).

Ventajas Desventajas

Al experto le resulta más fácil Pueden generar reglas difíciles de


dar ejemplos. comprender.
 El constructor no necesita ser  El nº de atributos debe ser pequeño.
Ingeniero del conocimiento.
 Se limita a situaciones de total certeza.
 Al revisar las reglas el experto
Se debe tener idea de la solución pues
organiza su pensamiento
no se sabe de antemano el nº de ejemplos
necesarios para que la solución sea
razonable.

Se utilizan como aproximaciones y se complementan luego con otros métodos


Adquisición a partir de múltiples expertos

Dominios complejos que


requieren más de una opinión
Necesidad de varios
expertos
Tareas multidisciplinarias

Beneficios Dificultades

 En promedio menos errores Opiniones encontradas


 El dominio puede ser más amplio  Expertos dominantes
 Síntesis de experiencias Competencia mal entendida
particulares
Temor frente a profesionales de
 Aumenta la calidad por la distinta jerarquía.
interacción
Adquisición del conocimiento: Experiencias
Experto principal que fijó las estrategias básicas
Malezas consenso
Grupo de botánicos asesores

Los expertos no estaban disponibles

Capas reservorio Interacción

Experto intermediario: La mayor interacción


se realizó con él.

Se inicia el trabajo con un grupo de expertos


sensibilizados a través de cursos. Este grupo
Encendido de
inicial se desgrana quedando un experto principal
una caldera que da las pautas fundamentales y culmina el
desarrollo.
Herramientas para el desarrollo de SE.
Pascal
Fortran
Orientados al problema C
Lenguajes de Java
programación
Manipulación de símbolos Lisp
Prolog

PC - PLUS
Lenguajes de Ingeniería Herramientas KAPPA – PC
del conocimiento (SHELL) CLIPS
JESS
Construcción de un SE: Fases del desarrollo

Identificación
Caracterizar los aspectos
Reformulación importantes del problema
Requerimientos

Conceptualización
Encontrar los conceptos para
Reformulación representar el conocimiento
Conceptos

formalización

Rediseño Diseñar las estructuras para


Estructura representar el conocimiento

Implementación
Desarrollo del sistema
Refinamiento Reglas

Validación del sistema


Testeo
Construcción de un SE: Fases del desarrollo

Identificación Estudio de factibilidad de la aplicación

Naturaleza del problema (scheduling, diagnóstico,


control etc.)
 Tarea a cumplir
Alcance del problema ( Es manejable? Tiene interés
práctico?)
 Expertos del dominio
Esta fase requiere un gran esfuerzo para
 Usuarios finales compatibilizar ideas, ya que el equipo de
trabajo recién se constituye y las
perspectivas de cada integrante suelen ser
 Objetivos del sistema bastante diferentes.

 Recursos y fuentes de información


Construcción de un SE: Fases del desarrollo

Conceptualización Razonamiento del experto

 Se deben determinar los conceptos claves, las relaciones y las


características del flujo de información necesario para el proceso
de solución del problema.

 Se considera la posibilidad de descomposición del problema.

 Se presta atención a los distintos tipos de conocimiento involucrados

Se comienza a perfilar la representación del conocimiento del dominio.


Construcción de un SE: Fases del desarrollo

Formalización Se deben representar los conceptos claves y sus relaciones.

 Se definen los formalismos de representación del conocimiento.

 Se determina la herramienta constructora de SE que se usará.

Se tiene en cuenta: Técnicas de representación.


 Tipos de conocimiento.
 Estrategias de búsqueda.
Construcción de un SE: Fases del desarrollo
Se construye un prototipo con capacidad de resolver
un conjunto de casos seleccionados, con los que se
pone en evidencia las grandes líneas de razonamiento
inherentes a la solución del problema.
Implementación
El desarrollo es incremental, puede involucrar la
prueba de distintos enfoques o partir de un modelo
simplificado e incluso parcial del problema.

 Contribuye a una mayor comprensión del problema por parte de los agentes
intervinientes.

 Prueba la calidad de las etapas de desarrollo.

Permite un ciclo iterativo de corrección y refinamiento de las fases de desarrollo.


Construcción de un SE: Fases del desarrollo
Testeo Se evalúa la perfomance y utilidad del sistema, realizando las
correcciones necesarias.
Perfomance
Las reglas son correctas y consistentes?
Casos de prueba
Las decisiones del SE son apropiadas?
El control considera los ítems en orden natural?

Posibles problemas: Los casos de prueba cubren adecuadamente el


dominio, consideran situaciones difíciles?
Pérdida de conceptos y/o relaciones.
Nivel de detalle insuficiente. Utilidad

Estructura de control. Es significativa la ayuda del sistema?


Las conclusiones están ordenadas y tienen buen
nivel de detalle?
Es suficientemente rápido el sistema?
Revisar fases
Es satisfactoria la interface?
Construcción de un Sistema Experto
La complejidad inherente de la tarea no permite el establecimiento
de pasos o fases bien definidas que deben seguir los diseñadores
durante el desarrollo.

Desarrollo incremental Realimentación permanente

Se avanza desde tareas simples a otras más complejas.

De su análisis se obtienen
El sistema apoya el esfuerzo del desarrollo pautas para reenfocar el
diseño
Construcción de un SE: Modelo en Espiral
ES UN MODELO PROGRESIVO O INCREMENTAL. CADA CIRCUITO DE
LA ESPIRAL AGREGA ALGUNA CAPACIDAD FUNCIONAL AL SISTEMA.
Medidas de calidad de software para SE
 SATISFACCIÓN DE NECESIDADES Y REQUERIMIENTOS.
RESPUESTA CORRECTA PARA ENTRADA CORRECTA.
 RESPUESTA COMPLETA PARA ENTRADA CORRECTA.
 RESPUESTA REPETITIVA PARA ENTRADA CORRECTA.
 CONFIABLE (ERRORES Y FALLAS).
 AMIGABLE CON EL USUARIO.
 TRANSPORTABLE.
DEGRADACIÓN SUAVE DE SUS LÍMITES DE CONOCIMIENTO.
 INTERACCIÓN CON OTROS PAQUETES DE SOFTWARE.
 EXPLICACIONES.
 MEJORABLE.
 REDITUABLE

También podría gustarte