Inteligencia artificial-y-sistemas-expertos-1195485415209453-4
58179085 Tutorial de Inteligencia Artificial y Sistemas Expertos
Transcript of 58179085 Tutorial de Inteligencia Artificial y Sistemas Expertos
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
INDICE
1. INTELIGENCIA ARTIFICIAL
1.1. INTELIGENCIA
1.2. INTELIGENCIA ARTIFICIAL
1.3. HISTORIA DE LA INTELIGENCIA ARTIFICIAL
1.4. CAMPOS DE LA INTELIGENCIA ARTIFICIAL
1.5. AREAS DE APLICACION
2. SISTEMAS EXPERTOS, SISTEMAS BASADOS EN CONOCIMIENTO, SISTEMAS
CON BASE DE CONOCIMIENTO O SISTEMAS INTELIGENTES
2.1. DATO, INFORMACION Y CONOCIMIENTO
2.2. DEFINICIONES
2.3. HISTORIA DE LOS SISTEMAS EXPERTOS
2.4. SISTEMAS EXPERTOS ACTUALES
2.5. ¿PORQUE CONSTRUIR UN SISTEMA EXPERTO?
2.6. ESTRUCTURA DE UN SISTEMA EXPERTO
2.7. CARACTERISTICAS DE LOS SISTEMAS EXPERTOS
2.8. PARTICIPANTES EN EL DESARROLLO DE UN SISTEMA EXPERTO
2.9. CLASIFICACION DE SISTEMAS EXPERTOS
2.10. METODOLOGIAS DE DESARROLLO
2.11. HERRAMIENTAS DE DESARROLLO
2.11.1. LENGUAJES DE INTELIGENCIA ARTIFICIAL
2.11.2. SHELLS: EXSYS, WEBLS, JESS……..ETC
3. DESARROLLO DE SISTEMAS EXPERTOS BASADOS EN REGLAS DE
PRODUCCION
3.1. SISTEMAS DE PRODUCCION
3.2. SISTEMAS EXPERTOS BASADOS EN REGLAS DE PRODUCCION
3.3. VENTAJAS Y DESVENTAJAS DE LOS SISTEMAS EXPERTOS BASADOS EN
REGLAS DE PRODUCCION
4. INGENIERIA DEL CONOCIMIENTO DE JHON DURKIN
5. HERRAMIENTA DE DESARROLLO: EXSYS PROFESSIONAL
6. PROYECTO DE DESARROLLO
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 2
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
CAPITULO I:CAPITULO I:
INTELIGENCIA ARTIFICIALINTELIGENCIA ARTIFICIAL
1.- INTELIGENCIA ARTIFICIAL
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 3
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
1.1 INTELIGENCIA
Sabemos que una de las características de los seres vivos es la inteligencia, y sabemos
que todos tienen una capacidad o grado distinto de inteligencia, que depende de factores
biológicos, psicológicos y de desarrollo mental……….Todos sabemos esto, pero; que
entendemos realmente por ¿INTELIGENCIA?:
A continuación revisemos algunos conceptos generales sobre inteligencia:
Inteligencia es la aptitud de crear relaciones. Esta creación puede darse de
manera puramente sensorial, como en la inteligencia animal; también puede darse
de manera intelectual, como en el ser humano, que pone en juego el lenguaje y los
conceptos.
Inteligencia, también se la puede conceptuar como la habilidad para adquirir,
comprender y aplicar conocimiento; o como la aptitud para recordar, pensar y
razonar.
Inteligencia, podemos también decir que es la capacidad para solucionar problemas
lo cual requiere de conocimiento y relaciones.
Como podemos observar, los conceptos de inteligencia son relativos y variables pero en
general están relacionados a la capacidad de crear relaciones y generar conocimiento
para aplicarlos en la solución de problemas; está tácitamente demostrado que
inteligencia y conocimiento son conceptos íntimamente ligados.
Finalmente podemos decir que el concepto de inteligencia es variable dependiendo del tipo
de investigador; es decir los conceptos de inteligencia de un psicólogo, un antropólogo, un
abogado u otro profesional pueden ser distintos y válidos para sus respectivas áreas.
1.2 INTELIGENCIA ARTIFICIAL(IA)
Como revisamos previamente, tenemos varios conceptos de inteligencia; a partir de eso
que entendemos por inteligencia artificial o inteligencia creada:
Una buena definición de IA es algo elusiva y controversial, fundamentalmente porque la
inteligencia humana no está completamente entendida. Cada libro de texto en IA propone
una definición que enfatiza las diferentes perspectivas que, cada autor cree, encierra el
campo. A continuación se transcriben algunas de ellas:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 4
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Según Jhon Durkin:”Es un campo de estudio en la ciencia computacional que busca
el propósito de hacer que una computadora razone de una manera similar a los humanos”
[01]*
Para Daniel Cohen la Inteligencia Artificial se define como:”Ciencia que estudia de
manera sistemática el comportamiento inteligente, con el fin de imitar o simular las
actividades humanas mediante la creación y utilización de máquinas y computadoras. Estas
actividades humanas podrán incluir: razonamiento, aprendizaje, capacidades mecánicas,
capacidades sensoriales, etc.” [02]
Según el autor Juan Pablo Sánchez la Inteligencia Artificial es la “Ciencia que trata de la
comprensión de la inteligencia y diseño de máquinas inteligentes; es decir el estudio y
simulación de las actividades intelectuales del hombre.” [03]
Para el Dr. Peruano Nicolás Kemper Valverde del Laboratorio de Sistemas Inteligentes de la
UNAM(Universidad Autónoma de México) la IA: “ Es una Rama de las Ciencias
Computacionales que estudia la conducta o también llamado Comportamiento Inteligente,
con el fin de emularlo o simularlo a través de una computadora”
Otras definiciones variadas se describen a continuación:
La IA es una rama de la ciencia de computación que comprende el estudio y creación
de sistemas computarizados que manifiestan cierta forma de inteligencia: sistemas que
aprenden nuevos conceptos y tareas, sistemas que pueden razonar y derivar
conclusiones útiles acerca del mundo que nos rodea, sistemas que pueden comprender
un lenguaje natural o percibir y comprender una escena visual, y sistemas que realizan
otro tipo de actividades que requieren de inteligencia humana.
La IA es una ciencia que trata de la comprensión de la inteligencia y del diseño de
máquinas inteligentes, es decir, el estudio y la simulación de las actividades
intelectuales del hombre (manipulación, razonamiento, percepción, aprendizaje,
creación).
La IA es el estudio de las computaciones que permiten percibir, razonar y actuar.
La IA es un campo de estudio que busca explicar y emular el comportamiento
inteligente en términos de procesos computacionales.
La IA estudia las representaciones y procedimientos que automáticamente resuelven
problemas usualmente resueltos por humanos
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 5
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Disciplina dedicada a desarrollar y aplicar enfoques computacionales al comportamiento
inteligente.
A pesar de la diversidad de conceptos propuestos para la IA, en general todos coinciden en
que la IA trata de alcanzar inteligencia a través de la computación. Nosotros podemos
resumir que:
“Inteligencia Artificial es el estudio de la inteligencia humana para comprenderla y
crear maquinas que puedan simular/ imitar de manera real las habilidades y
capacidades del ser humano”
Es importante culminar esta parte mencionando los dos propósitos que tiene la IA y
que resume claramente Jhon Durkin: “El propósito de la IA es hacer a las computadoras
mas útiles para los humanos. Esto puede lograrse produciendo programas de
computadora que asistan a los humanos en sus decisiones, búsqueda inteligente de
información o simplemente interfaces de comunicación el lenguaje natural. Un segundo
propósito de la IA, pero de igual importancia que el anterior, es mejorar el entendimiento
de la inteligencia humana. Construir una computadora inteligente requiere que
entendamos como los humanos capturan, organizan y usan el conocimiento durante la
solución de sus problemas”. [01]*
Analizando el párrafo también podemos nosotros afirmar que la IA cumple:
-Como ingeniería, el objetivo de la IA es resolver problemas reales, actuando como un
conjunto de ideas acerca de cómo representar y utilizar el conocimiento, y de cómo
desarrollar sistemas informáticos.
-Como ciencia, el objetivo de la IA es buscar la explicación de diversas clases de
inteligencia, a través de la representación del conocimiento y de la aplicación que se da a
éste en los sistemas informáticos desarrollados.
Para usar la IA se requiere una comprensión básica de la forma en que se puede
representar el conocimiento y de los métodos que pueden utilizar o manipular ese
conocimiento.
1.3 HISTORIA DE LA INTELIGENCIA ARTIFICIAL
La inteligencia artificial no tiene un inicio claro pero el más aceptado es que comenzó en el
año 1956 luego de la conferencia “Summer Research Project” efectuada en el Darmouth
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 6
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Collage en U.S y auspiciado por IBM en la cual el científico John Mccarty estableció el
término INTELIGENCIA ARTIFICIAL.
De acuerdo a los investigadores se considera que la IA ha atravesado por 5 etapas desde
su aparición hasta la actualidad:
1. ETAPA DE INICIO(1956-1965)
Juegos de ajedrez y programas que ayudaron a
entendimiento de cómo introducir dentro de una computadora la capacidad de
razonamiento.
Newell y Simmon desarrollaron la “Logic Theorist”: sistema
capaz de probar teoremas de lógica matemática.
General Problem Solver(GPS); desarrollado para solucionar
una variedad de problemas desde juegos hasta integración de símbolos.
2. ETAPA OSCURA(1965-1970)
3. ETAPA DE RENACIMIENTO(1970-1975)
4. ETAPA DE LAS SOCIEDADES(1975-1980)
5. ETAPA DE LA COMERCIALIZACION DE LA IA
1.4 CAMPOS DE LA IA
La Inteligencia Artificial se divide en campos de estudio los cuales Cohen resume en el
siguiente esquema:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 7
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 8
Figura 2. Áreas de estudio e investigación de la Inteligencia Artificial
SIMULACION SENSORIAL
Oído, vista, tacto, gusto, olfato, etc
LENGUAJES NATURALES
Comunicación con computador
INTELIGENCIA ARTIFICIAL
ROBÓTICA
Apoyo a trabajos mecánicos y repetitivos
SISTEMAS EXPERTOS
Apoyo a decisiones
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
SIMULACION SENSORIAL
Área de la IA que a través de las computadoras persigue la imitación de las capacidades o
habilidades sensoriales humanas tales como vista, oído, habla y tacto. Lo anterior incluye
visión computacional, procesamiento de imágenes y reconocimiento de escenas.
ROBOTICA
Estudia la imitación del movimiento humano a través de robots, los cuales son creados con
el fin de apoyar procesos mecánicos repetitivos que requieren gran precisión. Algunos
procesos pueden ser: pintura y acabados, movimiento de materiales, reconocimiento de
defectos, etc.
LENGUAJES NATURALES
Se enfoca en el diseño y desarrollo de software capaz de aceptar, interpretar y ejecutar
instrucciones dadas por los usuarios en su lenguaje nativo.
SISTEMAS EXPERTOS, SISTEMAS BASADOS EN CONOCIMIENTO O SISTEMAS CON
BASE DE CONOCIMIENTOS.
Permiten cargar bases de conocimientos integradas por una serie de reglas de sentido
común o conocimiento heurístico; es decir conocimiento basados u obtenidos a través de la
experiencia de un especialista o experto dentro de un dominio específico del saber. Una vez
cargada esta base de conocimientos múltiples usuarios la pueden usar para consulta, apoyo
a la toma de decisiones, capacitación, etc.
REDES NEURONALES
Área de la Inteligencia Artificial que trata de simular el comportamiento bilogógico de las
neuronas del cerebro humano en la resolución de problemas. Principalmente, se usa en el
campo de los pronósticos.
ALGORITMOS GENETICOS
Algoritmos basados en principios de GENETICA como herencia, mejoramiento de especies
los cuales tratan de encontrar soluciones mejores a los problemas.
Con todo lo anterior, los campos diversos de la IA pueden comprender:
Aprendizaje:
Captación automática de conocimientos.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 9
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Razonamiento:
Sistemas basados en conocimientos o sistemas expertos.
Bases de datos inteligentes.
Prueba de teoremas y juegos.
Redes Neuronales.
Algoritmos Genéticos.
Percepción:
Comprensión de lenguaje natural.
Interpretación de escenas visuales (Visión por computadora).
Locomoción y Manipulación:
Realizar procesos mecánicos y tareas manuales (Robótica).
Algunas de las tareas que estos sistemas realizan en el campo de la IA son:
Tareas generales
Percepción: Visión, Fonemas.
Lenguaje Natural: Comprensión, generación y traducción.
Razonamiento de sentido común.
Control de robots.
Tareas formales
Juegos: Ajedrez, Damas.
Matemáticas: Geometría, Lógica, Cálculo Integral.
Tareas expertas
Ingeniería: Diseño, Localización de fallas, Planeamiento.
Análisis Científico.
Diagnóstico Médico.
Análisis Financiero.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 10
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
1.5 AREAS DE APLICACIÓN
En general se puede considerar que las áreas de aplicación son múltiples y en casi
cualquier área del saber humano se puede utilizar la IA. Además las ramas de la IA se
pueden utilizar simultáneamente para resolver problemas específicos. Por ejm a un robot se
le puede insertar un sistema experto para exploración de pozos petrolíferos y reducir el
riesgo de pérdidas humanas
En la agricultura, controlar plagas y manejar cultivos en forma más eficiente.
En las fábricas, realizar montajes peligrosos y actividades tediosas (labores
de inspección y mantenimiento).
En la medicina, ayudar a los médicos a hacer diagnósticos, supervisar la
condición de los pacientes, administrar tratamientos y preparar estudios estadísticos.
En el trabajo doméstico, brindar asesoría acerca de dietas, compras,
supervisión y gestión de consumo energético y seguridad del hogar.
En las escuelas, apoyar la formación de los estudiantes, especialmente en
aquellas materias consideradas complejas.
Ayudar a los expertos a resolver difíciles problemas de análisis o a diseñar
nuevos dispositivos.
Aprender de los ejemplos para explorar bases de datos en busca de
regularidades explotables.
Proporcionar respuestas a preguntas en lenguaje natural usando datos
estructurados y texto libre
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 11
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
CAPITULO II:CAPITULO II:
SISTEMAS EXPERTOS, SISTEMAS BASADOSSISTEMAS EXPERTOS, SISTEMAS BASADOS
EN CONOCIMIENTO, SISTEMAS CON BASE DEEN CONOCIMIENTO, SISTEMAS CON BASE DE
CONOCIMIENTOS O SISTEMAS INTELIGENTESCONOCIMIENTOS O SISTEMAS INTELIGENTES
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 12
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
2.- SISTEMAS EXPERTOS (SE)
2.1 DATO, INFORMACION, CONOCIMIENTO
Antes de definir el término SISTEMA EXPERTO es necesario recordar que en capítulo
anterior identificamos que la inteligencia artificial ligaba íntimamente los términos
inteligencia y conocimiento; también mencionamos que la cantidad de conocimientos es lo
que otorgaba, en gran parte, el nivel de inteligencia de los seres vivos. Entonces es
necesario e indispensable reconocer…….¿QUE ES EL CONOCIMIENTO?
Existen corrientes filosóficas, ciencias como la gnoseología y muchos científicos que se
encarga de estudiar las fuentes, tipos y formas de adquirir conocimiento. Nosotros no
entraremos a descubrir ni tratar estos temas a fondo, nos concentraremos en aspectos
prácticos que nos ayuden a comprender términos muy relacionados como: DATO,
INFORMACION, CONOCIMIENTO para ver su aplicación en la vida diaria. DATO
2.1.1 DATO
Piense en una fecha, un número, un nombre cualquiera…….¿Ud. cree que es un
dato?..Efectivamente, de la forma más simple podemos decir que un dato es un hecho, que
individualmente carece de valor para una persona. Por ejemplo el número 7 carece de valor
individualmente, la fecha de cumpleaños del Presidente de la República del Perú; carecen
de valor porque individualmente no significa nada para un tomador de decisiones frente a un
problema, pues no generan acciones concretas.
2.1.2 INFORMACIÒN
El concepto de información nace cuando u dato o conjunto de datos es de utilidad para un
tomador de decisiones, es decir cuando los datos son interpretados y útiles para una
persona. Por ejemplo, el color rojo en un semáforo constituye una información ya que tiene
una interpretación objetiva y universal para un grupo de personas-los automovilistas- y les
sirve como apoyo para tomar una decisión: en este caso detener el automóvil. Otro ejemplo
sería la fecha de cumpleaños de un familiar ya que llevaría a una persona a tomar una
acción como comprarle un regalo, darle una serenata, etc., es claro que un dato se convierte
en información cuando le es útil a una persona o tomador de decisiones. En el caso de una
empresa, las utilidades, ganancias o pérdidas de una empresa serían información para los
ejecutivos o la alta dirección para tomar decisiones y generar cursos de acción.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 13
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
2.1.3 CONOCIMIENTO
El conocimiento, en contraste con los conceptos de datos e información, sugiere alternativas
de acción o guías de actuación específicas asociadas a la información. Aquí podemos definir
al conocimiento como el conjunto de reglas, hechos, verdades, razones y los datos
heurísticos recopilados por expertos, que han resultado y resultan útiles en la
resolución de problemas Por ejemplo, el sueldo mensual de un cliente del Banco de
Crédito le permitirá al analista de créditos de dicho banco determinar el monto hasta el cual
se le puede dar un préstamo al cliente y un curso de acción correspondiente como el
siguiente:
Si el sueldo mensual de un cliente es menor o igual a s/. 1000.00 entonces el monto del
préstamo puede ser hasta s/. 3500.00 a una tasa de interés del 3% efectiva mensual.
Como se puede apreciar en el ejemplo anterior la información sirve para el tomador de
decisiones, en este caso el analista de créditos, el curso o acción a seguir de acuerdo al
conocimiento del experto, políticas y reglas de la empresa. Cabe señalar que las acciones
dependen exclusivamente del conocimiento de los expertos que se adquieren por la
experiencia y por reglas de “sentido común”.
Para finalizar esta parte vamos a representar todo lo aquí mencionado para que se vea las
relaciones existentes en la llamada PIRAMIDE DEL CONOCIMIENTO:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 14
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
2.2 DEFINICIONES
Sabemos que el campo de Sistemas Expertos es un área de la Inteligencia Artificial y a
menudo también se le llaman Sistemas Basados en Conocimiento, Sistemas con Base de
Conocimientos o Sistemas Inteligentes. Existen varias definiciones sobre Sistemas Expertos
los cuales se mencionan a continuación:
La primera definición fue la de Edward Feingenbaum, considerado como el padre de los
Sistemas Expertos y mencionaba que eran: “Un programa de computador inteligente que
usa el conocimiento y procedimientos de inferencia para resolver problemas que son lo
suficientemente difíciles como para requerir la intervención de un experto humano para su
resolución.” [INTER 03]
Para Jhon Durkin un Sistema Experto es “un programa de computadora diseñado para
modelar la habilidad de resolver problemas de un humano experto”. [01]
Daniel Cohen afirma que “es un sistema computacional interactivo que permite la
creación de bases de conocimiento, las cuales una vez cargadas responden a preguntas,
despejan dudas y sugieren cursos de acción emulando/simulando el proceso de
razonamiento de un experto para resolver problemas en un área específica del conocimiento
humano”. [02]
Según Juan Pablo Sánchez un sistema experto “es un conjunto de programas de
ordenador que son capaces, mediante la aplicación de conocimientos, de resolver
problemas en un área determinada del conocimiento o saber y que ordinariamente requerían
de la inteligencia humana, lo que reemplaza a un experto humano”. [03]
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 15
SISTEMAS SISTEMAS TRANSACCIONALESTRANSACCIONALES DATOS
INFORMACION
CONOCIMIENTO
SABIDURIA
DSSDSS
NIVEL DE ABSTRACCION
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Para el Dr. Nicolás Kemper Valverde un Sistema Inteligente (como el llama a un sistema
experto): “Es una herramienta informática con pericia y habilidad en la solución de
problemas. Esto es un sistema que posee (1) conocimientos y experticia humana suficientes
acerca de un dominio particular que le permite comprender los problemas que ocurran
dentro de dicho dominio y (2) estrategias de análisis: métodos de razonamiento y/o
aprendizaje para manipular este conocimiento y resolver tales problemas en la misma forma
en que lo haría el experto humano (gerente, ingeniero, operador, etc)”
Otra concepción los define como “un sistema computarizado capaz de resolver
problemas en el dominio en el cual posee conocimiento específico” [INTER 01]
Una fuente especialista en Sistemas Expertos es la British Computer Society que los
conceptualiza como “la incorporación en un ordenador de un componente basado en el
conocimiento que se obtiene a partir de la habilidad de un experto, de forma tal que el
sistema pueda dar consejos inteligentes o tomar decisiones inteligentes. Una característica
adicional, es que el sistema sea capaz, bajo demanda, de justificar su propia línea de
razonamiento de una forma inmediatamente inteligible para el que los usa” [INTER 02]
Como se puede notar las principales fuentes coinciden en las definiciones lo que se
puede resumir en que “Un sistema experto es un programa de computadora que tiene
la capacidad de resolver problemas, simulando el razonamiento y el conocimiento de
un experto humano, dentro del dominio de un área específica del conocimiento
humano y que puede proporcionar respuestas justificadas sobre el curso de sus
acciones”
2.3 HISTORIA DE LOS SISTEMAS EXPERTOS
No vamos a describir toda su historia ni todos los sistemas expertos existentes porque no
terminaríamos de nombrarlos, solo vamos a describir los principales que dieron inicio a esta
tecnología que apareció en el siglo XX y que en este siglo se ha convertido en una de las
tendencias con mayor futuro:
DENDRAL
Muchos lo consideran el primer Sistema Experto.
Desarrollado en la Universidad de Stanford a mediados de los años setenta.
Su propósito consiste en ayudar a los profesionales en química a identificar la
estructura molecular de las sustancias desconocidas.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 16
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Empleando los datos que se obtiene con un espectrómetro de masas, las
mediciones de resonancia magnética nuclear y los datos de laboratorio DENDRAL
puede identificar con rapidez y seguridad la estructura de un compuesto[1]*
MYCIN
Desarrollado en la Universidad de Stanford en 1972, inicialmente por Edward
Feingembaum y posteriormente culminado por sus colaboradores.
Su objetivo consiste en el diagnóstico y tratamiento de enfermedades infecciosas de
la sangre.
Emplea reglas de producción y métodos de inferencia con encadenamiento
regresivo.
Introduce el concepto de factor de certeza, permitiendo el razonamiento con
incertidumbre.
Este sistema introdujo nuevas características: utilización de conocimiento impreciso
para razonar y posibilidad de explicar el proceso de razonamiento. Lo más
importante es que funcionaba de manera correcta, dando conclusiones análogas a
las que un ser humano daría tras largos años de experiencia. En MYCIN aparecen
claramente diferenciados motor de inferencia y base de conocimientos. Al separar
esas dos partes, se puede considerar el motor de inferencias aisladamente. Esto da
como resultado un sistema vacío o shell (caparazón). Así surgió EMYCIN (MYCIN
Esencial) con el que se construyó SACON, utilizado para estructuras de ingeniería,
PUFF para estudiar la función pulmonar y GUIDON para elegir tratamientos
terapéuticos [INTER 03]
El sistema MYCIN, al ser consultado por el médico, solicita primero datos generales
sobre el paciente: nombre, edad, síntomas, etc. Una vez conocida esta información
por parte del sistema, el Sistema Experto plantea unas hipótesis. Para poder
verificarlas comprueba primero la exactitud de las premisas de la regla. Esto se
realiza mediante una búsqueda de enunciados correspondientes en la base de
conocimientos. Estos enunciados pueden a su vez estar de nuevo en la parte de
consulta de otra regla. También lo realiza mediante determinadas preguntas al
usuario. Aquí se hacen preguntas del tipo: ¿Se ha practicado en el paciente algún
tipo de intervención quirúrgica? Con las respuestas que recibe, el MYCIN verifica o
rechaza las hipótesis planteadas. Una serie de tests han demostrado que MYCIN
trabaja igual de bien que un médico [INTER 02]
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 17
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
PROSPECTOR
Construido sobre la tecnología de MYCIN.
Es uno de los sistemas expertos más estudiados debido a su gran éxito.
Especialmente conocido desde que con su ayuda se descubrió un importante
depósito de molibdeno, valorado en más de 100 millones de dólares, en el estado
de Washington.
Es un sistema experto diseñado para ayudar a los geólogos a encontrar yacimientos
importantes. Ingresando datos acerca de un área en particular, PROSPECTOR
puede estimar las probabilidades de encontrar distintos tipos de depósitos de
minerales.De este sistema experto derivó el shell KAS (Knowledge Adquisition
System).[INTER 03]
XCON
Desarrollado en la Universidad de Carnegie-Mellon a finales de los años setenta y
revisado en DEC a principios de los ochenta.
Es un sistema experto diseñado para ayudar a los técnicos de Digital Equipment
Corporation (DEC) a configurar sistemas de miniordenadores. XCON genera
automáticamente la configuración deseada a partir de los requisitos del cliente
seleccionando entre la amplia gama de la popular serie de los VAX de DEC.[1]*
2.4 SISTEMAS EXPERTOS ACTUALES
SEGE(SISTEMA EXPERTO EN GESTION DE EXPORTACIONES)
SEGE es básicamente un prototipo de Sistema Experto cuyo propósito es
brindar asistencia experta a las autoridades de las empresas en la gestión de
exportación de un producto, dadas las características de la legislación, y normativa
vigente.
El SE deberá analizar la situación en que debería encontrarse el producto para
estar en condiciones de ser exportado. Este análisis abarca: la situación de la
empresa, los regímenes vigentes de exportación de los países involucrados en el
proceso de exportación, la documentación necesaria y los organismos oficiales de
gestión.
Este prototipo ha sido desarrollado por investigadores del Programa de
Investigación y Desarrollo en Inteligencia Artificial de la Universidad Nacional de
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 18
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Lujan y doctorandos de la carrera de doctorado en Derecho de la Facultad de
Derecho de la Universidad Nacional de La Plata.
GIDEON
Es un programa de computadora para el diagnóstico y que establezca
referencias en el campo enfermedades tropicales y contagiosas,
epidemiología, microbiología y quimioterapia antimicrobiana.
Fue diseñado para diagnosticar las enfermedades contagiosas de todo el
mundo, basado en los síntomas, señales, pruebas de laboratorio y perfil
dermatológico. La red de enfermedades contagiosas de Gideon presta atención
especial para el país de origen del usuario. La base de datos incorpora 327
enfermedades, 205 países y 185 agentes antibacteriales.
Ha sido desarrollado hace 10 años por especialistas en enfermedades
contagiosas y ciencias de la computación en Escuelas Médicas de
universidades de Estados Unidos e Israel. http://www.cyinfo.com/index
DELTA/CATS
Ayuda a los mecánicos en el diagnóstico y reparación de locomotoras diesel-
eléctricas.
Desarrollado por General Electric a principios de los 80´s
DELTA: Diesel Electric Locomotive Troubleshooting
CATS: Computer Aided Troubleshooting System
Consiste de una base de conocimientos por medio deentrevistas con David
Smith (que trabajó 40 años en GE y es un experto reconocido en
mantenimiento de estas máquinas)
De 1981 a 1983 se incrementaron las reglas de 45 a 1200.
DELTA no solo da consejos expertos, sino que también presenta informaciones
por medio de un reproductor de vídeo. De hecho se podría encasillar a DELTA
más en el área de la instrucción que en reparación, dado que además
proporciona ayudas al trabajo que permiten al estudiante determinar si existe o
no un determinado problema, proporcionando también formación específica
sobre el modo de realizar ciertas reparaciones.
PROYECTO EOLO CN-235
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 19
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
En este caso, el problema está en el hecho de que pilotar un avión que cuesta
cientos de millones de dólares es un asunto muy serio a la vez que peligroso, lo
que exige mucho tiempo de entrenamiento, tanto para pilotos como mecánicos,
suponiendo para las compañías aéreas un gran problema, dado el elevado
coste de los cursos y la escasez de instructores. El proyecto surgió de la
voluntad de Construcciones Aeronáuticas S. A. de ofrecer un curso específico
para pilotos y técnicos de mantenimiento, a todos los compradores del avión
CN- 235. Eolo CN-235 es un sistema de enseñanza interactivo que integra
gráficos, texto y vídeo.
CITEX
Sistema experto que se compone de cuatro subsistemas: Valoración de un
terreno, Esquema de Irrigación, Esquema de Fertilización, Diagnóstico de
enfermedades y Tratamiento de enfermedades en el cultivo de cítricos
(especialmente de naranjas). http://www.claes.sci.eg/home/welcome.html
Fue desarrollado por investigadores egipcios y existen varias versiones de
este sistema experto. En la web mencionada se puede encontrar mas
información sobre este sistema experto y varios más desarrollados por la
organización CLAES(The Central Laboratory for Agricultural Expert Systems)
Estos son solo algunos de los muchos sistemas expertos en diferentes áreas que se utilizan
actualmente, existen muchos mas en otras áreas del conocimiento humano, las cuales
ayudan actualmente en producción, supervisión, instrucción, diagnóstico, planificación, etc.
2.5 ¿PORQUE CONSTRUIR UN SISTEMA EXPERTO?
Todos sabemos que mientras mas conocimiento tenemos de un área específica, en mas
indispensables y expertos nos convertimos, para solucionar los problemas diarios que se
nos presenten. Sabemos que eso significa que los profesionales cada vez eleven más sus
honorarios por la experiencia y conocimiento que tienen y demuestran.
Pero también sabemos que hay pocas personas que se les puede considerar expertos y
sería necesario que el conocimiento que poseen se distribuya y generalice hacia otras
sociedades o localidades geográficas de las organizaciones para que sirvan de apoyo
a los demás persiguiendo un fin solidario o mejorar la productividad de una organización en
donde el experto no pueda actuar, cuando envejezca o cuando muera.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 20
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Por otro lado, sabemos que todas las personas sufrimos de cansancio, stress,
enfermedades, desconcentración, etc.; que merman considerablemente nuestro rendimiento
laboral cuando nos afectan los problemas mencionados; lo cual no sucede con los
computadores.
Entonces para nosotros existe dos razones principales de porque construir un sistema
experto:
1º Para capturar el conocimiento de un experto y extenderlo a las demás personas de
una organización o sociedad y poder utilizarlo cuando el experto ya no esté, deje de
trabajar, o las condiciones no lo permitan (riesgos).
2º El poder de procesamiento, falta de sentimientos, emociones y factores
psicológicos y físicos de los computadores nos ayudan a aprovechar el conocimiento
de un experto de la manera más óptima.
Finalicemos este apartado comparando algunos factores entre un experto humano y un
sistema experto para poder definir nuestra opción de crear sistemas expertos:
FACTOR A EVALUAR EXPERTO HUMANO SISTEMA EXPERTODisponibilidad de tiempo Día laborable SiempreDisponibilidad geográfica Local En cualquier lugarPerecible Si NoRendimiento Variable ConsistenteVelocidad Variable Consistente(usualmente
rápido)Costo Alto Económico
2.6 ESTRUCTURA DE UN SISTEMA EXPERTO
Para conocer la estructura de un sistema experto primero vamos a entender como una
persona experta soluciona un problema específico. Antes de continuar es necesario aclarar
a que persona se define como experto. Podemos decir que experto es aquella persona
que posee habilidades y capacidades para resolver un problema mejor que otros
dentro de un área del conocimiento específica. Y como dijimos anteriormente los
sistemas expertos se dedican a un área del conocimiento específica que nosotros
llamaremos dominio del problema. Podemos definir entonces que dominio del problema
es aquella parte del conocimiento en el cual se ha identificado un problema y/o
problemas y que el experto tiene la capacidad de resolver.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 21
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Partiremos de un ejemplo simple para ver la actuación de un experto humano en la
solución de un problema. Suponga que Ud., tiene un auto último modelo y tiene alguna falla
que ud. no conoce. Ud., sabe poco de mecánica por lo cual tiene que llevarlo a un experto,
que para este caso sería un mecánico para que le resuelva el problema. A través de años
de experiencia el mecánico ha adquirido gran cantidad de conocimientos en la solución de
problemas con automóviles. Llamaremos Memoria de Largo Plazo (MLP) al espacio en el
cerebro del mecánico en el cual se encuentran almacenados esa gran cantidad de
conocimientos adquiridos a través de la experiencia. Luego de llevarlo al mecánico asuma
que Ud., le dice que el problema de su carro es que “no enciende”. El mecánico almacena
este hecho en una parte de su cerebro que llamaremos Memoria de Corto Plazo (MCP).
Usando la información proporcionada por Ud., el mecánico podría deducir que el
problema puede estar en el sistema eléctrico por conocimientos que tiene almacenados en
la MLP y que están relacionada con la información que le brindo Ud. Entonces esta creencia
la agrega el mecánico a su MCP y continúa razonando acerca del problema con otros
hechos que pueda ir deduciendo o información proporcionada por Ud..
De acuerdo a su conocimiento y la relación entre datos de su MCP Y MLP el
mecánico podría hacer las pruebas respectivas a las baterías lo que lo llevaría a concluir
que la falla es una batería mala. Luego de esto el mecánico no solo resuelve el problema
sino también puede explicar el razonamiento que utilizó para solucionar el problema de
acuerdo a los datos proporcionados……..Esta sería la forma en que un experto humano
soluciona un problema que podríamos esquematizar en la siguiente figura:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 22
Memoria de Largo Plazo (MLP)Dominio del conocimiento
RAZONAMIENTOMemoria de Corto Plazo (MCP)Hechos del problema, Conclusiones
ACONSEJAConclusiones, Acciones
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Del ejemplo anterior y la figura mostrada podemos rescatar lo siguiente:
1º Un experto almacena el dominio del conocimiento en su Memoria de Largo Plazo (MLP).
2º Cuando el experto soluciona un problema, obtiene hechos sobre el problema (hechos del
caso) y los almacena en su Memoria de Corto Plazo (MCP).
3º El experto luego razona sobre el problema combinando los hechos de su MCP con el
conocimiento de su MLP. Usando este proceso, el experto infiere nueva información sobre
el problema y llega a conclusiones.
Regresando a nuestro tema decimos que los sistemas expertos resuelven problemas
que usan un proceso que es muy similar al de los humanos. Usando la figura anterior
podemos esquematizar lo siguiente:
A continuación describamos brevemente los componentes de los sistemas expertos,
según la arquitectura básica mostrada anteriormente:
BASE DE CONOCIMIENTOS
Contiene el conocimiento del dominio en el cual el programa es competente. Durkin lo
define como: “Parte de un sistema experto que contiene el dominio del conocimiento”. [1]*.
El tema primordial para este componente es obtener el conocimiento del experto y
codificarlo en la base de conocimientos usando diferentes técnicas de representación del
conocimiento que posteriormente discutiremos. Una de las mas usadas es representar el
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 23
Base de ConocimientosDominio del conocimiento
Motor de Inferencia
Memoria de TrabajoHechos del problema, Conclusiones
USUARIOHechos,Conclusiones
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
conocimiento en forma de reglas de. Una regla es una estructura de tipo IF/THEN
(SI/ENTONCES) en donde existe una premisa o antecedente y una conclusión o acción. Por
ejemplo:
REGLA 1: IF el automóvil no enciende THEN el problema puede estar en el sistema
eléctrico.
REGLA 2: IF el sueldo mensual de un cliente es menor o igual que s/. 1000.00 THEN el
tope de crédito es de s/. 3500.00
REGLA 3: SI su temperatura corporal es de 39 ºC ENTONCES tiene fiebre.
De las reglas mostradas podemos identificar que la base de conocimientos esta
integrada por conceptos, hechos o variables que varían de estados (valores) y que
relacionadas conforman las reglas. Por ejemplo:
En la regla 1 tenemos dos hechos y dos valores:
automóvil =enciende; automóvil = no enciende y
problema es = el sistema eléctrico o pueden existir otros valores.
El conocimiento tiene que estar representado en la forma que resulte más adecuada
para el dominio de su competencia. Adicionalmente hay que tratar que esa representación
sea:
Sencilla.
Independiente.
Fácil de modificar.
Transparente: justificación de soluciones y explicación de los procesos.
Relacional.
Potente: poder expresivo y eficiencia de cálculo.
La parte fundamental de todo Sistema Experto es la Base de Conocimientos y como
vimos su función consiste en almacenar los conocimientos expresados en conceptos,
hechos, relaciones, etc. relativos al área del sistema experto y por lo tanto, depende del
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 24
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
modelo de representación del conocimiento que se utilice. Entre los modelos mas conocidos
de representación del conocimiento tenemos:
Representación basada en Reglas de Producción.
Representación basada en Lógica de Predicados
Representación basada en Redes Semánticas
Representación basada en Frames o Marcos
Representación basada en Restricciones
De acuerdo al tipo de representación de conocimiento se genera una clasificación
típica de sistemas expertos. Así tenemos los más comunes:
Sistemas Expertos Basados en Reglas
Sistemas Expertos basados en Frames , etc.
“El diseño de este esquema de representación del conocimiento afecta al diseño del motor
de inferencia, al proceso de actualización del conocimiento, al proceso de explicación y a la
eficacia global del sistema.” [INTER 02]
MEMORIA DE TRABAJO O BASE DE HECHOS
Llamada también workspace. Contiene los hechos que se descubren acerca de un
problema durante una consulta. “Parte de un sistema experto que contiene los hechos del
problema que se descubren durante la sesión”. [1]*
Los hechos que el sistema experto reciba del usuario y los que vaya infiriendo se
almacenan en la memoria de trabajo y pueden ser hechos, hipótesis, conclusiones parciales,
etc; es decir lo que infiera “emparejando” los datos proporcionados con la base de
conocimiento. También es necesario mencionar que los hechos de la memoria de trabajo
también los puede obtener de fuentes externas como base de datos, hojas de cálculo, etc.;
que los puede cargar al inicio de la sesión u obtenerlos de acuerdo a su necesidad.
Algunos autores también la llaman Tablero, Pizarra o Pizarrón (Blackboard), pero este
término más se usa cuando el sistema experto se compone de varios módulos siendo cada
uno un sistema experto especialista en determinada parte de un problema. En estos casos
se habla de Arquitecturas con Tablero y cada sistema experto se denomina Fuente de
Conocimiento (Knowledge Source).
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 25
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
MOTOR O MECANISMO DE INFERENCIA
También conocido como estructura de control o interpretador de reglas. Durkin lo define
como: “Es el procesador en un sistema experto que empareja los hechos contenidos en la
memoria de trabajo con el dominio del conocimiento contenido en la base de
conocimiento, para deducir o llegar a la conclusión sobre el problema”. [1]*
Selecciona, decide, interpreta y aplica el conocimiento de la base de conocimientos sobre la
base de hechos con el fin de obtener la solución buscada. El motor de inferencia busca un
emparejamiento entre los hechos contenidos en la memoria de trabajo y las premisas de las
reglas contenidas en la base de conocimiento (cuando se utiliza las reglas como forma para
la representación del conocimiento). Cuando encuentra el emparejamiento, agrega la(s)
conclusión de las reglas a la memoria de trabajo y continúa examinando las reglas buscando
nuevos emparejamientos. El mecanismo de inferencia debe ser independiente del
conocimiento y de los hechos (característica esencial de los sistemas expertos que separan
el conocimiento del mecanismo de control que posteriormente analizaremos. Está
caracterizado por:
El lenguaje en que ha sido escrito.
La velocidad de trabajo: Inferencias/segundo.
Las estrategias de búsqueda de soluciones:
No Ordenada: aleatoria, heurística.
Ordenada: Encadenamiento hacia adelante (guiado por los datos, deductivo),
encadenamiento hacia atrás (guiado por los objetivos, inductivo).
La forma en que elige el conocimiento.
La posibilidad de incorporar metaconocimiento.
El método que utiliza para la evaluación del conocimiento incompleto o incierto.
Existen muchos esquemas de razonamiento al buscar la solución a un problema; sin
embargo los más utilizados son:
ENCADENAMIENTO HACIA ADELANTE (FORWARD
CHAINING)
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 26
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
A este esquema también se le llama guiado por los datos o razonamiento ascendente.
Este método de inferencia realiza comparaciones entre las reglas y los hechos disponibles
de manera que se establezcan nuevos hechos hasta llegar al objetivo deseado. Un sistema
experto típico que aplicó este tipo de inferencia fue el R1/XCON.
Ejm:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 27
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
ENCADENAMIENTO HACIA ATRÁS (BACKWARD CHAINING)
A este esquema se le llama también guiado por los objetivos o razonamiento
descendente. Método de inferencia que inicia con la conclusión u objetivo que se desea
demostrar y procura establecer la certeza de los hechos que conducen a ella.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 28
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 29
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Algunos autores consideran un tercer esquema de razonamiento “oportunístico”,
en la cual se aplican los dos esquemas de razonamiento antes descritos en el momento más
oportuno; pero este se utiliza generalmente en los sistemas con tablero o en arquitecturas
con tablero.
Estos son los componentes principales y que todo sistema experto debe poseer, sin
embargo existen componentes adicionales que le brindan potencialidad y facilidad de uso
tanto al experto, ingeniero del conocimiento, como al usuario para su desarrollo, como se
muestran en el esquema extendido siguiente:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 30
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
2.7 CARACTERISTICAS PRINCIPALES DE LOS SISTEMAS EXPERTOS
SEPARA EL CONOCIMIENTO DEL CONTROL
Imagine un sistema experto que se construya como un programa convencional como
podría ser así:
Begin
Nombre:= preguntar (Nombre?)
Edad:= preguntar (Edad?)
……………….
Síntoma1:= preguntar (Síntoma1?)
Síntoma2:= preguntar (Síntoma 2?)
……………………………
Si Síntoma1:= “xxxx” entonces
HACER WWWW
Si Síntoma1:=”yyyyy” entonces
HACER ZZZZZ
………………..
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 31
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
End……..
Así sería la forma de un sistema experto como un programa convencional. Sin
embargo, a pesar que se puede programar, tendría las siguientes desventajas:
o Es demasiado rígido y complicado realizar cambios en el sistema por la
cantidad de código escrito.
o Es difícil saber el conocimiento que tiene el sistema porque están mezclados
en conocimiento con la estructura de control.
o En los problemas que abarcan los sistemas expertos un factor importante es
la incertidumbre e información imprecisa con la que se maneja y en la
programación convencional es difícil manejar este aspecto.
Frente a estos inconvenientes de mostrar el conocimiento y el control en un
programa convencional, la idea es que se separen el conocimiento (en la base de
conocimientos) y el mecanismo de control (en el motor de inferencia) para tener un
mejor funcionamiento de un sistema experto. De tal manera que por ejm el
conocimiento se exprese en reglas de producción y el motor de inferencia tendrá una
forma de controlar la ejecución de reglas (Backward Chaining o Forward Chaining) lo
cual eliminaría los problemas de la programación convencional.
Separando el conocimiento de la estructura de control la tarea de modificar y
mantener el sistema es más fácil. Se puede localizar y agregar nuevo conocimiento
en alguna parte en particular del sistema experto. Si se necesitan hacer cambios en
el motor de inferencia igual se puede cambiar de estrategia o los ajustes necesarios
al algoritmo de inferencia.
POSEE CONOCIMIENTO EXPERTO Y BASADO EN LA EXPERIENCIA
Desde la definición de los sistemas expertos sabemos que el conocimiento que se
captura de una persona deber ser de un experto que incluye el basto conocimiento
que posea así como las habilidades adquiridas a través de la experiencia y que lo
distinguen de las demás personas en la solución de problemas dentro de un área de
conocimiento. Mas adelante nos detendremos en profundidad en como considerar a
una persona como experto.
RAZONA CON SIMBOLOS
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 32
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Ya explicamos anteriormente que el conocimiento es expresado en forma simbólica
ya sea en forma de reglas, frames, lógica de predicados, etc. Podemos decir que los
programas convencionales procesan datos y los sistemas expertos procesan
conocimiento. Podemos expresar a través de símbolos hechos, conceptos, reglas,
etc., de tal manera que se manipulen más fácilmente. La forma de cómo representar
el conocimiento se conoce formalmente como Representación de Conocimiento (de
la cual hablamos anteriormente) y abarca otros conceptos que no tocaremos por
ahora.
RAZONA HEURISTICAMENTE
El término heurística o reglas a dedo son estrategias adquiridas a través de la
experiencia y que son aplicadas por los expertos para solucionar o acortar “caminos”
en la solución de los problemas. Como dijimos anteriormente en los sistemas
expertos esa forma de conocimiento también es capturado. Por ejm un médico
experimentado puede escoger, obviar o concluir pasos que un médico principiante no
lo haría lo cual reduce el tiempo en la solución de problemas. Los sistemas expertos
se diferencian claramente de la programación convencional porque no son rígidos en
sus algoritmos de razonamiento. En los programas convencionales se siguen
algoritmos rígidos y que siempre deben hacerse; en cambio en los sistemas expertos
los pasos innecesarios se pueden obviar y concluir llegando a resultados mas
rápidamente.
PERMITE RAZONAMIENTO INEXACTO
Los sistemas expertos son capaces de trabajar incluso con información incierta o
imprecisa y proveer una solución razonable. Todos sabemos que cuando nos
enfrentamos a un problema muchas veces no tenemos toda la información disponible
por diversos factores. En estos casos, nos guiamos por las posibilidades o en las
creencias y experiencias que nosotros tenemos para tratar de resolver un problema
en particular; eso es justamente también lo que hace un sistema experto. Los
sistemas expertos trabajan con diversas teorías y corrientes del conocimiento
humano para manejar la incertidumbre. Se puede utilizar factores de certeza, teoría
de la probabilidad, lógica difusa y otras áreas para manejar los problemas con
incertidumbre para encontrar la solución mas aceptable.
Ejemplos de información imprecisa
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 33
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
1.- Probablemente si los resultados del paciente son XX entonces tendrá la
enfermedad YY.
2.- Si Pedro apuesta s/. 1000.00 al jinete ZZ probablemente podría ganar la
carrera.
3.- Voy al cine, siempre y cuando vaya la chica de la esquina.
ESTA LIMITADO A PROBLEMAS SOLUCIONABLES
Es claro que para que un problema se adapte a una solución de sistemas expertos
deba existir el conocimiento y el razonamiento para la solución de dicho problema. El
sistema experto tendrá éxito mientras exista la solución y el experto.
Por ejemplo: No podemos tratar de solucionar con un sistema experto la cura del
SIDA porque aún ni siquiera existe la forma de realizarlo. Esto demuestra claramente
qué problema es posible para adecuarlo a un sistema experto.
No vaya a creer Ud., que un sistema experto puede solucionar todos los problemas-
aún los desconocidos y sin solución- porque como podemos modelar el
razonamiento y capturar el conocimiento de un problema que no es solucionable…?.
En conclusión: los sistemas expertos solo se pueden aplicar a problemas
solucionables por humanos.
SE ENFOCA A COMPLEJIDADES RAZONABLES
Los problemas para solucionarlos con un sistema experto no deben ser muy
complejos porque a mayor cantidad de conocimiento el sistema utilizará más tiempo;
y podría demorar o tener más errores al razonar. Si el tiempo que demora a un
experto solucionar un problema es varias horas, probablemente no sea un problema
para un sistema experto. Jhon Durkin recomienda:”Un problema que requiere
resolver por un experto en alrededor de 15 minutos es un problema razonable para
un sistema experto. Si el problema es más complejo, intente dividirlo en sub-temas
cada uno de los cuales los podría resolver con un simple sistema experto distinto
para cada sub-tema”.
COMETE ERRORES
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 34
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Si los expertos humanos tienen errores, es lógico pensar que los sistemas expertos
no son perfectos y cometen errores….Pero Ud., podría pensar ¿pero los programas
de computador bien realizados no se equivocan?...Es correcto, pero acuérdese Ud.,
que los sistemas expertos no trabajan con datos sino con CONOCIMIENTO;
entonces si el conocimiento del experto es erróneo lógicamente que también el
sistema experto cometerá errores. Cuando Ud., va a un experto de cualquier área
para que le solucione su problema sabe que puede cometer errores, sin embargo
confía en el por la experiencia y conocimiento que posee; lo mismo sucede con los
sistemas expertos.
Estas son algunas características de los sistemas expertos. Para finalizar esta parte
comparemos un sistema experto con un programa convencional para ver sus
diferencias y resumir lo mencionado hasta ahora:
PROGRAMA CONVENCIONAL SISTEMA EXPERTONumérico SimbólicoAlgoritmo HeurísticoInformación y control integrados Conocimiento separado de controlDifícil de modificar Fácil de modificarInformación precisa Información inciertaInterfaz de órdenes Diálogo natural con explicacionesResultado final dado Recomendaciones con explicacionesSolución óptima Solución aceptable
2.8 PARTICIPANTES EN EL DESARROLLO DE UN SISTEMA EXPERTO
En un proyecto de sistemas expertos los acorres principales son:
EXPERTO DEL DOMINIO
Aquella persona primordial en el proyecto de la cual obtenemos su conocimiento para
solucionar un problema planteado y codificarlo en un programa de computador. Como
definimos con anterioridad Experto del Dominio es una persona que posee habilidades y
conocimiento para resolver un problema específico de una manera superior a otros.
La diferencia principal entre un experto y un no experto es el CONOCIMIENTO.
Es necesario aclarar que erróneamente pensamos que un experto es aquella persona que
tiene un rango de PhD, MsSC….Esto no siempre es cierto, por ejemplo un asistente de
contabilidad puede ser un experto dentro de la solución de un problema determinado y no
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 35
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
ser experto por el rango profesional que tenga. En conclusión una persona que solucione
un problema mejor que otras se le pude considerar como experto del dominio para un
problema de sistemas expertos.
El experto del dominio debe tener ciertas cualidades para que el proyecto tenga éxito las
que se resumen al final de esta parte, no basta con tener almacenado el conocimiento.
INGENIERO DEL CONOCIMIENTO
Aquella persona capaz de capturar el conocimiento, representarlo de manera adecuada,
escoger las herramientas de desarrollo y finalmente programarlo en una computadora.
El trabajo del Ingeniero del Conocimiento comienza desde evaluar la factibilidad del
problema para crear un sistema experto, hasta la documentación y retroalimentación del
producto; esto significa todo un proceso en el cual también al igual que el experto debe tener
ciertas cualidades.
USUARIO FINAL
Aquel o aquellos que van a ser beneficiados con el producto final. Es necesario siempre
estar comunicado durante el desarrollo de un proyecto de sistemas expertos con el usuario
final. La razón es que se puede desarrollar un sistema experto fantástico pero si al usuario
no le gustan las interfaces seguro no lo usará; es como construir un edificio y que el dueño
no la quiere habitar porque no le gustan el color, forma o modelo de las habitaciones.
El usuario final es el cliente, el nos va a brindar la forma de las interfaces, botones,
esquema de preguntas, explicaciones y todo los detalles de cómo le gustaría el producto
final.
Resumimos las cualidades de los participantes en un proyecto de sistemas expertos en el
siguiente cuadro:
EXPERTO DEL DOMINIO
Posee conocimiento expertoTiene habilidades eficaces para resolver el
problemaPuede comunicar el conocimientoPuede dedicar tiempoEs amigable y no hostil
INGENIERO DEL
CONOCIMIENTO
Tiene habilidades de Ingeniería de
ConocimientoTiene habilidades de buena comunicaciónConoce de las herramientas de desarrolloTiene habilidades para programar sistemas
de información
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 36
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
USUARIO FINAL
Ayuda a definir las especificaciones de las
interfacesPuede ayudar en la adquisición del
conocimientoPuede apoyar en el desarrollo del sistema
2.9 CLASIFICACION DE SISTEMAS EXPERTOS
Los sistemas expertos se pueden clasificar de varias maneras. Nosotros mencionaremos
algunas de ellas:
a) Por el propósito que se persiga para la creación de un SE:
REEMPLAZAR A UN EXPERTO HUMANO.
APOYAR LA TOMA DE DECISIONES.
b) Por el tipo de trabajo que realizan:
DIAGNOSTICO
PLANIFICACION
INSTRUCCIÓN
PREDICCION
TRATAMIENTO
CONTROL….etc.
Es necesario mencionar que en este tipo de clasificación un sistema experto puede
abarcar uno o más tipos. Por ejm un sistema experto puede diagnosticar y tratamiento
de una enfermedad específica.
c) Por el área en que se desarrollan:
MEDICINA
AGRICULTURA
QUIMICA
ELECTRONICA
GEOLOGIA
METEREOLOGIA
COMUNICACIONES
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 37
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
EDUCACION
ECONOMIA Y FINANZAS
COMPUTACION E INFORMATICA…etc.
2.10 METODOLOGIAS DE DESARROLLO
Al igual que para desarrollar un sistema de información convencional existen
varias metodologías de desarrollo como la Ingeniería de la Información, RUP,
tendencias estructuradas y orientadas a objetos, así existen varias metodologías
para desarrollar un sistema experto. Desde mi punto de vista es posible, también,
basarse en una metodología de desarrollo de sistemas de información clásico para
construir un sistema experto; sin embargo es prioritario darle pequeños ajustes o
cambios de procesos y agregarle otros pasos para construir uno; recordando siempre
que trabajamos con conocimiento y no con datos. Como ya sabemos el área de
sistemas expertos es relativamente joven por lo cual no se dispone de una única
metodología sino que cada autor propone una de acuerdo a su forma de desarrollo.
Sin embargo existen algunas que han tenido éxito mas que otras lo cual ha llevado a
su mayor difusión.
Aquí solo mencionaremos algunas y mostraremos un esquema general de la
metodología con la cual trabajaremos nosotros.
Metodología de Buchanan
Metodología de Grover
Metodología de Brule
Metodología de Blanque y García Martínez
Metodología KADS
Ingeniería del Software,….. etc.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 38
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Estas son solo algunas encontradas en la bibliografía revisada. Para nuestro caso
nosotros trabajaremos con la Metodología de Ingeniería del Conocimiento de Jhon
Durkin, de la cual se muestra una breve descripción a continuación:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 39
Requerimientos
Conocimiento
Estructura
Evaluación
Producto
Fase 1Evaluación
Fase 2Adquisición del conocimiento
Fase 3Diseño
Fase 4Prueba
Fase 5Documentación
Fase 6Mantenimiento
Reformulación
Exploraciones
Requerimientos
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
FASE 1: EVALUACIÓN
1.1 Motivación para el Esfuerzo.
1.2 Identificar problemas candidatos.
1.3 Estudio de viabilidad.
1.4 Análisis de Costo/Beneficio.
1.5 Seleccionar el mejor proyecto.
1.6 Escribir el proyecto propuesto.
FASE 2: ADQUISICIÓN DEL CONOCIMIENTO
2.1 Recolección del conocimiento.
2.2 Interpretación.
2.3 Análisis.
2.4 Diseño de métodos para recolectar conocimiento adicional.
FASE 3: DISEÑO
3.1 Seleccionar Técnica de Representación del Conocimiento.
3.2 Seleccionar Técnica de Control.
3.3 Seleccionar Software de Desarrollo de Sistema Experto.
3.4 Desarrollo de Prototipo.
3.5 Desarrollo de Interfase.
3.6 Desarrollo del Producto.
FASE 4: PRUEBAS
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 40
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
4.1 Validación del Sistema.
4.2 Evaluación de la Prueba/Evaluación.
FASE 5: DOCUMENTACIÓN
5.1 Relación de temas que deben ser documentados.
5.2 Organización de la documentación.
5.3 Documentación Impresa.
5.4 Documentación en hipertexto.
5.5 Reporte Final
FASE 6: MANTENIMIENTO
6.1Modificaciones probables del sistema.
6.2Responsables de mantenimiento.
6.3Interfaces de documentación del mantenimiento
2.11 HERRAMIENTAS DE DESARROLLO
Para pasar desde el diseño abstracto hasta un sistema implementado y listo para ser
ejecutado en una computadora, se debe expresar en una forma que el sistema
computacional entienda. Para ello se puede utilizar un lenguaje programación o un
sistema especialmente diseñado para desarrollar sistemas expertos. La pregunta
inmediata es ¿Cuál de ellos utilizar? Para el desarrollo de sistemas expertos existen
dos categorías definidas de herramientas de desarrollo:
a. LENGUAJES DE PROGRAMACIÓN
En principio, cualquier lenguaje de programación puede ser utilizado. Siendo
así de amplio el espectro del cual se puede escoger un lenguaje para programar un
sistema experto, se debe considerar como factor importante de decisión, la extensión
en la cual el lenguaje cubre o se adecua a los requerimientos de diseño. Atendiendo
a la forma de estructurar sus instrucciones, se los puede dividir en:
IMPERATIVOS: PASCAL, C/C++.
FUNCIONALES: LISP.
DECLARATIVOS: PROLOG, CHIP, OPS5.
ORIENTADOS A OBJETOS: SmallTalk, Hypercard, CLOS.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 41
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Tradicionalmente LISP y PROLOG han sido los lenguajes que se han
utilizado para la programación de sistemas expertos. Estos lenguajes ofrecen
características especialmente diseñadas para manejar problemas generalmente
encontrados en inteligencia artificial. Por este motivo se los conoce como lenguajes
de Inteligencia Artificial.
Una de las principales características que comparten los lenguajes LISP y
PROLOG, como consecuencia de su respectiva estructura, es que pueden ser
utilizados para escribir programas capaces de examinar a otros programas,
incluyendo a ellos mismos. Esta capacidad se requiere, por ejemplo, para hacer que
el programa explique sus conclusiones. Esto sólo puede hacerse si el programa tiene
la capacidad de examinar su propio modo de operación.
LISP
Su nombre se deriva de LISt Processor. LISP fue el primer lenguaje para
procesamiento simbólico. John McCarthy lo desarrolló en 1958, en el Instituto de
Tecnología de Massachusetts (MIT), inicialmente como un lenguaje de programación
con el cual los investigadores pudieran implementar eficientemente programas de
computadora capaces de razonar. Rápidamente LISP se hizo popular por su
capacidad de manipular símbolos y fue escogido para el desarrollo de muchos
sistemas de IA.
PROLOG
PROgramming in LOGic (PROLOG), es otro de los lenguajes de
programación ampliamente utilizados en Inteligencia Artificial. PROLOG fue
desarrollado en Francia, en 1973 por Alain Colmenauer y su equipo de investigación
en la Universidad de Marseilles. Inicialmente fue utilizado para el procesamiento de
lenguaje natural, pero posteriormente se popularizó entre los desarrolladores de
aplicaciones de Inteligencia Artificial por su capacidad de manipulación simbólica. A
partir de 1981 tuvo una importante difusión en todo el mundo, especialmente porque
los japoneses decidieron utilizar PROLOG para el desarrollo de sus sistemas de
computación de quinta generación. Actualmente existen varios dialectos del
PROLOG para diferentes plataformas.
OPS5
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 42
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Official Production System 5 (OPS5), es un lenguaje para ingeniería
cognoscitiva que soporta el método de representación del conocimiento en forma de
reglas. Incorpora un módulo unificador, un intérprete que incluye un .mecanismo de
encadenamiento progresivo, y herramientas para edición y depuración de los
programas. OPS5 es un miembro de la familia de lenguajes de programación
desarrollados en la Universidad Carnegie - Mellon. Varias compañías han
desarrollado implementaciones comerciales de OPS5, para diferentes plataformas.
b. SISTEMAS DE DESARROLLO
Históricamente, los primeros sistemas expertos fueron desarrollados
utilizando lenguajes de programación como el LISP y el PROLOG. A medida que el
desarrollo de sistemas expertos iba aumentado en cantidad y complejidad, la
comunidad científica comenzó a buscar formas de desarrollar los sistemas en menor
tiempo y con menor esfuerzo.
Esto dio lugar al aparecimiento, en primer lugar a sistemas vacíos como el
EMYCIN, a los que se denominó shells, ya que ofrecen toda la arquitectura de un
sistema experto a la que hay que incorporar la base de conocimientos.
Los SHELL se pueden definir como “sistemas que incorporan las
características básicas de los SE: base de conocimiento, motor de inferencia y
módulo de explicación, pero que se proporciona sin ningún tipo de conocimiento”.
[INTER 02]
Posteriormente ingresaron al mercado otras herramientas que incorporaron,
además de opciones de representación del conocimiento, esquemas de inferencia y
control. Estas herramientas tomaron el nombre de Entornos de Desarrollo de
Sistemas Expertos
A continuación se dan algunos ejemplos de sistemas comerciales:
Sistemas Vacíos (shells): EMYCIN, Crystal, Leonardo, XiPlus, EXSYS
Professional, VP-Expert, Intelligence Compiler.,Expert, Exsys Corvid,
Jess, Expertise2go, WebLS.
Entornos híbridos de desarrollo: CLIPS, KEE, ART, EGERIA, Kappa,
Nexpert Object, Goldworks, LOOPS, Flavors.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 43
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
PLATAFORMAS DE COMPUTACIÓN
Íntimamente asociado a los sistemas expertos, están los sistemas computacionales
(Hardware). Actualmente el software disponible para el desarrollo de Sistemas
Expertos, cubre todo el rango de computadoras y sistemas operativos, desde PC’s
hasta máquinas especialmente dedicadas para procesamiento simbólico:
Computadoras Personales (DOS, OS, Mac, WINDOWS, UNIX, LINUX).
Estaciones de trabajo (VMS, UNIX).
Máquinas simbólicas (LISP, PROLOG).
Máquinas de arquitectura paralelo.
CAPITULO IV:CAPITULO IV:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 44
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
INGENIERIA DEL CONOCIMIENTO SEGÚNINGENIERIA DEL CONOCIMIENTO SEGÚN
JHON DURKINJHON DURKIN
FASE 1: DETERMINACIÓN DEL PROBLEMA
El esquema general de esta primera etapa gráficamente es como sigue:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 45
Determinar Motivación
Motivación
Estudio de Viabilidad
Análisis Costo/Beneficio
Selección del Proyecto
Proposición de Proyecto
Identificar posibles problemas (PRE-determinación)
La solución Conducida a
Problema Conducido a
Proyectos viables
Proyecto costoso
Mejor Proyecto
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
TAREA 1: Determinar Motivación para el Esfuerzo
Consiste en determinar ¿Por qué está la organización motivada para seguir Sistemas
Expertos?. Algunas organizaciones están mirando resolver un problema particular
mientras que otras están interesadas en encontrar que puede hacer la tecnología por
ellos.
De acuerdo a lo antes mencionado existen dos posiciones que puede asumir una
organización al incursionar en la tecnología de Sistemas Expertos
Conducida por el Problema
Ocurre cuando la organización trata de resolver un problema que ya se ha
identificado.
Conducida por la Solución
En algunos casos una organización es motivada para explorar una tecnología nueva
por un interés general o curiosidad.
TAREA 2: Identificar problemas candidatos
Esta tarea solo ocurre cuando la organización es conducida por la solución. Este
paso es hecho antes que la viabilidad formal y estudios costo/beneficio y es llamado
PRE-DETERMINACION.
Formando la Lista
Cuando se forma la lista de problemas candidatos se debería buscar la ayuda de
individuos dentro de la organización. Un buen lugar para observar dentro de la
organización es el nivel medio. Estos individuos tienen una visión global de
operaciones y conocimiento acerca de problemas de cada día. Su visión es valiosa
porque se descubre áreas donde la aplicación de un sistema experto tiene el
potencial para proporcionar valor real a la organización.
Demostración de la Tecnología
Si la organización está explorando la aplicación de Sistemas Expertos, entonces se
debería ver al proyecto como una demostración de la tecnología. Por lo tanto, un
problema pequeño y relativamente simple es más preferible que un complejo. Por
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 46
Figura 6:Figura 6: Procedimiento de Determinación del Problema Procedimiento de Determinación del Problema
Fuente: [01]*
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
pequeño, quiere decir que el alcance del problema no cubre un gran número de
problemas complejos. Por simple, quiere decir que el problema parece a primera
vista de ser solucionable. Como guía para solucionar el problema considerar lo que
otros han hecho en el pasado.
Sugerencias para escoger un buen problema
Para las organizaciones buscando explorar la tecnología considere los siguientes
puntos:
Toma de decisión humana.
Conocimiento heurístico.
Pequeño.
Simple.
Éxito probable.
Algún valor.
TAREA 3: Estudio de Viabilidad
Gráficamente el esquema de viabilidad se representa así:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 47
Viabilidad del Proyecto
Recursos
Origen del Conocimiento
Gente
Dominio
Conocimiento
Resolución del problema
Problema
Motivación
Capacidad
Gente
MantenimientoDespliegue
Diseño
Riesgo
Requerimientos
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
En esta tarea lo primordial es tratar de determinar si el proyecto tendrá éxito. Se
consideran dos puntos a evaluar
Primero: Una lista de ítems que debería reunir el proyecto es verificado. Estos ítems
incluyen los recursos propios, un recurso de conocimiento y personal del proyecto.
La siguiente lista de requerimientos debería ser verificada primero cuando se considera
un problema para una aplicación de Sistema Experto:
Disponibilidad de conocimiento para la solución del problema(experto)
Disponibilidad de un Ingeniero del Conocimiento.
La solución del problema puede ser validada.
Disponibilidad de fondos.
Disponibilidad de software de desarrollo de sistema.
Disponibilidad de facilidades de computador.
Segundo: Considerar asuntos que son importantes para el éxito del proyecto, pero los
cuales son subjetivos de naturaleza y requieren algún juicio para determinar. Ellos
incluyen características del problema, características de la gente involucrada del
proyecto y asuntos de despliegue. Aún cuando un proyecto reúne los requerimientos
verificados hay otros asuntos que pueden prevenir el completo éxito del proyecto. Un
proyecto de sistema experto puede fallar por razones que caen dentro de las tres
categorías: problema, gente y despliegue.
Viabilidad del Problema
Los asuntos de viabilidad incluyen características de dominio, conocimiento y tareas de
solución del problema.
Comprende:
Conocimiento experto necesitado.
Los pasos de solución son definibles.
Conocimiento simbólico usado.
Heurísticas usadas.
El problema es solucionable.
Existen problemas exitosos.
El problema es bien enfocado.
El problema es estable
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 48
Figura 7:Figura 7: Estudio de Viabilidad del Sistema Experto Estudio de Viabilidad del Sistema Experto
Fuente:Fuente: [1]* [1]*
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Conocimiento incompleto o incierto utilizado.
Solución mas una recomendación.
Asuntos de viabilidad de la gente
La capacidad y la motivación de la gente involucrada en el proyecto son asuntos
importantes para considerar cuando se juzga la viabilidad del proyecto .Los principales
actores de un proyecto de sistema experto son: experto de dominio, ingeniero de
conocimiento, usuario final, y administración .Determinar su impacto en la viabilidad del
proyecto es un desafió debido a las complejidades de naturaleza humana. Se necesita
considerar sus deseos, miedos, y emociones para juzgar si ellos efectivamente
contribuirán el proyecto. Las características principales que deben tener cada persona
involucrada en un proyecto de sistema experto son:
Experto
Puede comunicar el conocimiento.
El experto puede dedicar tiempo.
El experto es cooperativo, no hostil o escéptico del proyecto.
Ingeniero de conocimiento
El ingeniero de conocimiento tiene buenas habilidades de comunicación.
El ingeniero del conocimiento puede relacionar el problema al software.
El ingeniero de conocimiento tiene destrezas de programación de sistema
experto.
El ingeniero del conocimiento puede dedicar el tiempo.
Usuario final
El usuario final puede dedicar tiempo.
El usuario final es receptivo al cambio.
El usuario final es cooperativo.
Gerencia
La gerencia apoya al proyecto.
La gerencia es receptiva al cambio.
La gerencia no es escéptica.
La gerencia tiene expectativas razonables.
La gerencia entiende objetivos.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 49
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Asuntos de viabilidad de Despliegue
Se debe considerar:
El sistema puede ser introducido fácilmente.
El sistema puede ser mantenido.
El sistema puede ser integrado con recursos existentes.
Entrenamiento disponible.
El sistema no tiene una ruta crítica.
Determinación de viabilidad
Un esfuerzo por determinar la viabilidad de un sistema experto fue proporcionado por
Beckman (1991) el cual formo una lista de temas para considerar, luego asignó a cada
uno un número que reflejaba su importancia relativa. Esta lista de verificación de peso
es luego comparada a algún problema candidato, y si el problema encuentra un tema,
recibe los puntos predescritos del tema. La suma de todos los puntos es luego usada
para atribuir un porcentaje de la viabilidad del proyecto. Un ejemplo de esta forma de
determinar la viabilidad de muestra a continuación:
Asuntos de viabilidad del problema
Peso Asunto Puntaje
1
2
1
1
2
2
2
1
1
1
1
Conocimiento experto necesitado
Los pasos de solución de problema son definibles
Conocimiento simbólico usado
Heurísticas usadas
El problema es solucionable
Existen sistemas exitosos
El problema es bien enfocado
El problema es razonablemente complejo
El problema es estable
Conocimiento incompleto o incierto utilizado
No determinístico
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 50
Tabla N° 5:Tabla N° 5: Asuntos de viabilidad del problema
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
1 Solución mas una recomendación
16 Puntos Totales Puntaje Total
Viabilidad = Puntaje total/Puntos totales
Una deficiencia con este método es que muchos temas son subjetivos y son difíciles
para responder de un modo si o no. Considere por ejemplo el tema del ámbito del
problema. Para un problema dado nosotros podríamos ser capaces de comentar sobre
este tema, pero puede ser demasiado limitante para ser restringido a una respuesta de si
o no. Esta limitación puede también guiar a responder errores que produce una falsa
figura de determinación de viabilidad.
Un diferente tipo de estrategia fue desarrollado que corrige este problema. Como la
técnica anterior, empieza por formar una lista de temas importantes para considerar.
Cada tema es luego asignado un peso (entre 0 y 10) que refleja la importancia de cada
tema durante la evaluación de un proyecto dado, los números (entre 0 y 10) son
atribuidos a cada tema que refleja el grado de creencia en el tema. Este valor es luego
multiplicado por el valor del tema para establecer un puntaje por el tema. Todos los
puntajes son luego añadidos y divididos por la suma de los pesos del tema. Este número
es limitados entre 0 y 10, y proporciona una estimación de determinación de viabilidad
del proyecto.
Los valores de “peso” son resultados de la experiencia de consulta de Durkin sobre
los esfuerzos de determinación de proyectos anteriores.
Un ejemplo de lo anterior mencionado se muestra a continuación:
ASUNTOS DE VIABILIDAD DEL PROBLEMA
PUNTAJE = PESO * VALOR ASUNTO
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 51
Fuente:Fuente: [1]* [1]*
Tabla N° 6 :Tabla N° 6 : F Formulario de determinación de viabilidad del problema
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
7
9
7
8
10
8
9
6
7
9
5
6
Conocimiento experto necesitado
Los pasos de solución de problema son definibles
Conocimiento simbólico usado
Heurísticas usadas
El problema es solucionable
Existen sistemas exitosos
El problema es bien enfocado
El problema es razonablemente complejo
El problema es estable
Conocimiento incompleto o incierto utilizado
No determinístico
Solución mas de una recomendación
91
PUNTAJE PESO VIABILIDAD DEL PROBLEMA = PUNTAJE TOTAL
TOTAL TOTAL PESO TOTAL
.
ASUNTOS DE VIABILIDAD DE PERSONAL
PUNTAJE = PESO * VALOR ASUNTO
7
9
7
EXPERTO DE DOMINIO
El experto puede comunicar el conocimiento
El experto puede dedicar tiempo
El experto es cooperativo
23
PUNTAJE PESO VIABILIDAD DEL EXPERTO = PUNTAJE TOTAL
TOTAL TOTAL PESO TOTAL
8
8
9
9
INGENIERO DEL CONOCIMIENTO
Buenas habilidades de comunicación
Puede relacionar el problema al software
Tiene destrezas de programación de sistema
experto
Puede dedicar tiempo
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 52
Fuente:Fuente: [1]* [1]*
Tabla N° 7:Tabla N° 7: F Formulario de determinación de viabilidad de personal.
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
34
PUNTAJE PESO VIABILIDAD DEL INGENIERO
DEL CONOCIMIENTO = PUNTAJE TOTAL
TOTAL TOTAL PESO TOTAL
6
7
7
USUARIO FINAL
El usuario final puede dedicar tiempo
El usuario final es receptivo al cambio
El usuario final es cooperativo
20
PUNTAJE PESO VIABILIDAD DEL
USUARIO FINAL = PUNTAJE TOTAL
TOTAL TOTAL PESO TOTAL
9
7
7
6
8
GERENCIA
La gerencia apoya al proyecto
La gerencia es receptiva al cambio
La gerencia no es escéptica
La gerencia tiene expectativas razonables
La gerencia entiende objetivos
37
PUNTAJE PESO VIABILIDAD LA GERENCIA = PUNTAJE TOTAL
TOTAL TOTAL PESO TOTAL
ASUNTOS DE VIABILIDAD DEL DESPLIEGUE
PUNTAJE = PESO * VALOR ASUNTO
7 El sistema puede ser introducido fácilmente
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 53
Fuente:Fuente: [1]* [1]*
Tabla N° 8:Tabla N° 8: F Formulario de determinación de viabilidad de despliegue
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
9
7
9
7
El sistema puede ser mantenido
El sistema no tiene una ruta critica
El sistema puede ser integrado con recursos
existentes
Entrenamiento disponible
39
PUNTAJE PESO VIABILIDAD DEL DESPLIEGUE = PUNTAJE TOTAL
TOTAL TOTAL PESO TOTAL
Para ilustrar, asumir que se evaluó un proyecto candidato que resulto en los siguientes
puntajes para cada categoría
CATEGORIA PUNTAJE TOTAL PESO TOTAL
Problema 800 91
Gente 900 114
Despliegue 300 39
2000 244
VIABILIDAD DEL PROYECTO = 2000/244 = 8.19
Se puede usar estas formas para establecer los valores de viabilidad para los
proyectos candidatos, y escoger esos con valores más altos para considerarlos después.
Para los proyectos con bajos valores globales, este método también proporciona una
visión dentro de que área es deficiente, como asuntos de problema, asuntos de gente,
etc.
TAREA 4: Análisis Costo/ Beneficio
El próximo paso es determinar el esperado pago-justificación para el proyecto.
Para la mayoría de los proyectos este es usualmente es medido en un análisis costo
beneficio. La organización desea evidencia tangible que muestre que la inversión de
tiempo y dinero es justificado. Bajo las mejores condiciones este puede ser una tarea
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 54
Fuente:Fuente: [1]* [1]*
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
difícil. Cuando el proyecto involucra una tecnología nueva como sistemas expertos, la
tarea encuentra incertidumbre adicional.
Costo del Proyecto
Los costos principales del proyecto son establecidos por los gastos de trabajo y
software. La cuenta de gastos de trabajo para el tiempo gastado en el proyecto son por
el ingeniero del conocimiento, el experto de dominio y el usuario final.
La opción del software de desarrollo del sistema experto está basada en la naturaleza
del problema y las facilidades del computador de la organización.
Los asuntos de beneficio
El beneficio de desarrollar un sistema experto puede ser medido en una de las cuatro
maneras: productividad mejorada, costos bajos, calidad mejorada o un asunto muy
tangible pero importante—imagen mejorada.
1. Productividad mejorada
Mejores Decisiones
Decisiones más rápidas
Propaga especialización
2. Costos mas bajos
Reduce costos de trabajo
Mejora uso de material
3. Calidad mejorada
Producto Superior
Servicios superiores
Proporciona entrenamiento
4. Imagen mejorada
Innovador
La encuesta conducida por Pepper (1991) sobre las aplicaciones del sistema experto en
la industria de servicio mostró que la mayoría de las organizaciones justificó el esfuerzo
sobre beneficios intangibles de estrategias, como ganar un margen competitivo (50%) o
capturar y preservar especialización escasa (44%). Pocas organizaciones buscaron
beneficiarse de ahorros de costo. Esta encuesta indica que la mayoría de las
organizaciones están buscando explorar la tecnología, esto es, ellas están conducidas
por la solución.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 55
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
TAREA 5: Seleccionar el mejor proyecto
Para cada problema inicialmente seleccionado para el esfuerzo de determinación,
ahora se tiene la información sobre su viabilidad y su conveniencia. La próxima tarea es
seleccionar uno para seguir un proyecto de sistema experto.
El cuadro que usted ahora tiene de cada posible proyecto es ambos cualitativo y
cuantitativo. El estudio de viabilidad proporcionó un número que refleja la estimación del
proyecto de viabilidad global. Este número es principalmente el valor de comparar varios
proyectos. El estudio de costo/beneficio también proporcionó números. El costo del
proyecto es usualmente fácil de estimar, y en algunos casos, usted puede aproximar los
ahorros esperados o ganancias de la organización. Usted debería también tener un
sentido del impacto que el proyecto puede tener en establecer sistemas expertos dentro
de la organización.
Conociendo la motivación de la organización es de ayuda sobre esta tarea. Si ellos
son conducidos por el problema, usted debería mostrar que el proyecto es viable y que
los beneficios esperados excedieron al costo del proyecto. Aun cuando la organización
está explorando la tecnología (conducida por la solución) – aparentemente una situación
cómoda. —usted debería aún proporcionar alguna justificación para el esfuerzo. Estas
organizaciones son usualmente más tolerantes de los beneficios de corto plazo, pero
ellos esperan que el proyecto engendre beneficios a largo plazo.
TAREA 6: Escribir el proyecto propuesto
Siguiendo la selección de un buen problema, se puede necesitar escribir un proyecto
propuesto que documente los esfuerzos esperados. Esta propuesta debería documentar
que es para ser hecho, porque el proyecto es importante, y como se ejecutará el
esfuerzo. En la discusión de cada uno de esto puntos, el propuesto debería ser breve y
al punto.
A continuación se describen las partes que debería contener la propuesta del proyecto:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 56
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
PROYECTO PERSONAL
OBJETIVO
1. Declaración de que será logrado.
2. Una oración por problema
VISTA GLOBAL
1. Vista de alto nivel del proyecto
2. Discusión general del problema y su solución
3. Referencias de trabajos pasados.
4. Explicar en general que se logrará.
5. Discutir por que el proyecto tiene valor.
PROBLEMA
1. Descripción detallada del problema.
2. Discutir los problemas y operaciones comunes.
3. Describir los esfuerzos de evaluación.
SOLUCION
1. Discutir que realizará el sistema experto.
2. Describir como el sistema experto conseguirá los objetivos.
3. Listar los recursos necesarios del proyecto.
PLAN
1. Listar y discutir las principales fases del proyecto.
TIEMPOS ESTABLECIDOS
1. Calcular los periodos de tiempo para las principales fases del proyecto.
RESULTADOS (ENTREGABLES)
1. Lista los resultados del proyecto.(entregables)
PERSONAL
1. Lista el personal del proyecto.
COSTOS
1. Lista los costos del proyecto de diverso tipo.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 57
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
FASE 2: ADQUISICION DEL CONOCIMIENTO
Siguiendo las fases, la siguiente tarea es la adquisición del conocimiento. Esta tarea es
el desafío más difícil en el desarrollo de un sistema experto.
Procesos de Adquisición de Conocimiento
La adquisición del conocimiento es inherentemente un proceso cíclico. Sigue las tareas
de recolección del conocimiento, su interpretación y análisis, y el diseño de métodos
para recolectar conocimiento adicional.
La recolección es la tarea de adquirir conocimiento del experto. Este esfuerzo
requiere entrenamiento en técnicas de entrevistas. Además requiere buenas
habilidades de comunicación interpersonal y la habilidad para obtener la
cooperación del experto.
La interpretación de la información recolectada envuelve la identificación de
piezas clave de conocimiento, como conceptos, reglas, estrategias, etc.
El análisis envuelve el estudio de las piezas clave del conocimiento destapado
durante la tarea de interpretación. Este esfuerzo proporciona la visión de formar las
teorías en la organización del conocimiento y estrategias de solución de problemas.
El diseño es la tarea de preparación para el siguiente encuentro con el experto.
Siguiendo la realización de las tareas anteriores, se forma una nueva comprensión
del problema. Este esfuerzo puede haber expuesto nuevos conceptos que
necesitan exploración extensa. Las técnicas de extracción del conocimiento son
entonces escogidas para obtener esta información durante la próxima reunión.
Problemas con adquisición de Conocimiento
Existen muchos problemas con la adquisición del conocimiento que hacen de esta una
tarea difícil. Muchos de estos problemas puede remontarse a la dificultad en extraer
conocimiento del experto.
Sin premeditación de conocimiento.- A través de la experiencia resolviendo un
problema, un experto a menudo compila el conocimiento de la solución del
problema en una forma compacta, la cual permite una solución eficiente del
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 58
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
problema. Si el experto es preguntado para describir su método de solución de
problemas, él a menudo hará saltos mentales sobre problemas importantes.
Incapacidad para verbalizar el conocimiento.- Muchas tareas son difíciles de
verbalizar debido a que ellas fueron aprendidas mirando a otros individuos
ejecutando estas tareas. Los esfuerzos de la labor manual representan este tipo de
tareas.
Proveer conocimiento irrelevante .- Muchas sesiones de extracción pueden ser
sostenidas con el experto durante el proyecto. Después de un tiempo, la cantidad
de información recolectada puede estar agobiando. Para hacer la materia mucho
peor, mucha de esta información puede ser irrelevante para el proyecto. La tarea es
filtrar a través de toda esta información y escoger sólo los problemas importantes.
Proveer conocimiento incompleto.- Un experto a menudo puede proporcionar
una descripción incompleta de sus procesos mentales. Si el problema es una
simple omisión, la situación puede ser fácilmente corregida. Sin embargo, si ocurre
porque el experto es inconsciente del conocimiento usado, (problema de
compilación) el desafío puede ser mayor.
Proveer conocimiento incorrecto.- Un experto puede proporcionar conocimiento
incorrecto porque él no está informado o debido a un simple error durante la
introspección. En cualquier caso, esto lleva a un cuerpo incompleto del
conocimiento en sistemas expertos.
Proveer conocimiento inconsistente.- El conocimiento proporcionado por el
experto puede ser inconsistente con cualquier declaración. Este problema ocurre
frecuentemente cuando el experto proporciona una explicación de sus estrategias
de resolución de problemas.
Esfuerzo del equipo cooperativo
El éxito del proceso de extracción del conocimiento dependerá grandemente de formar
un equipo de individuos que son hábiles y cooperativos. Cada miembro del equipo es
responsable de tareas que solapan tareas de otros. Una interacción considerable puede
esperarse y esto es importante para nutrir el a veces frágil espíritu de cooperación.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 59
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Técnica de entrevista
La técnica de obtención del conocimiento más común utilizada hoy en día en el diseño
de sistemas expertos es el método de la entrevista. Esta técnica envuelve una
interacción directa entre el experto y el ingeniero del conocimiento, donde las preguntas
son dadas para destapar el conocimiento. Para hacer este productivo esfuerzo, la
entrevista debe ser efectivamente manejada.
El manejo de la entrevista propiamente requiere que varios puntos sean dirigidos.
Algunos de los básicos relacionan a los artículos como preparar la agenda, horario de la
sesión, y preparar una lista de materiales. Otros problemas son más intangibles, pero
importantes para el esfuerzo. Saber cómo empezar, conducir y terminar efectivamente la
entrevista son consideraciones importantes para adquirir la información deseada y para
mantener la cooperación de los miembros del equipo. También es importante saber
cómo hacer las preguntas de una manera que proporcionará la información deseada.
Existen diferentes técnicas de entrevistas para ganar tipos ciertos de conocimiento y
para evitar algunos problemas típicos asociados con la extracción del conocimiento.
Análisis de Conocimiento
Siguiendo la entrevista, la información recolectada necesita ser analizada. Los objetivos
de este esfuerzo son determinar qué fue aprendido y que problemas adicionales debe
seguirse.
Normalmente una trascripción es primero hecha de una grabación de la sesión. Esta
trascripción es luego revisada para identificar las piezas clave del conocimiento,
conceptos, reglas, etc. Estas piezas de conocimiento son luego analizadas para formar
teorías en su organización y cómo ellas relacionan a lo que ya es conocido sobre el
problema. También se agregan estas piezas de conocimiento a la documentación del
proyecto de una manera discutida después en este capítulo.
Un alcance que puede ayudar a analizar el conocimiento recolectado es grabar la
información recolectada gráficamente. Las representaciones gráficas en la forma de
mapas de concepto, redes de inferencia, diagramas de flujo y árboles de decisión
pueden ser de valor particular.
FASE 3: DISEÑO
Esta tarea comienza con la selección de la técnica de representación del conocimiento y
la estrategia de control. Es seguida con la selección de una herramienta de software que
reúne mejor las necesidades del problema. Un sistema prototipo pequeño es luego
construido para validar el proyecto y para proporcionar una guía para el trabajo futuro. El
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 60
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
sistema es entonces extensamente desarrollado y refinado para encontrar los objetivos
del proyecto. Este proceso es estructurado de acuerdo a las siguientes tareas:
Tarea 1: Seleccionar Técnica de Representación del Conocimiento
Tarea 2: Seleccionar Técnica de Control
Tarea 3: Seleccionar Software de Desarrollo de Sistema Experto
Tarea 4: Desarrollo de Prototipo
Tarea 5: Desarrollo de Interfase
Tarea 6: Desarrollo del Producto
TAREA 1: Seleccionar Técnica de Representación del Conocimiento
Se debe escoger una técnica de representación del conocimiento que mejor muestre la
manera en que el experto modela el conocimiento del problema mentalmente. Sin
embargo, para razones prácticas, se debe además considerar los recursos y
capacidades de la organización.
Un método basado en frames es apropiado si el experto describe el problema
referenciando los objetos importantes y sus relaciones, particularmente si el estado de
un objeto afecta a otro objeto. Esta situación es encontrada en problemas tipo simulación
o algunas donde las relaciones causales son importantes.
Otra señal que un método basado en frame puede ser bien escogido es que el experto
considere varios objetos similares cuando resuelve el problema. Un sistema basado en
frame puede razonar sobre objetos similares usando solo unas pocas reglas del modelo
de emparejamiento que trabajan a través una clase de objetos. Esto proporciona un
método eficaz al codificar los objetos y las reglas.
Un método basado en reglas es conveniente si el experto discute el problema
principalmente usando declaraciones tipo IF/THEN.
El método de la inducción es de valor si existen ejemplos pasados del problema. La
inducción también es apropiada si no existe ningún experto real en el problema, pero
una historia de información del problema esta disponible que puede usarse para derivar
los procedimientos de toma de decisión automáticamente.
TAREA 2: Seleccionar Técnicas de Control
El encadenamiento hacia adelante es apropiado si el experto primero recolecta
información sobre el problema y luego ve qué puede ser concluido.
El encadenamiento hacia atrás es una buena opción si el experto primero considera
alguna conclusión o meta, luego intenta demostrarlo buscando la información de apoyo.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 61
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
En este caso, el experto está principalmente interesado en demostrar alguna hipótesis o
recomendación. También, si el número de metas es mucho menor que la cantidad de
posible data, entonces considera un alcance de encadenamiento hacia atrás.
Paradigmas de Resolución de Problemas
Otra manera para que usted pueda ganar la visión en escoger ambos, la técnica de
representación de conocimiento y la estrategia de inferencia es revisar lo que otras han
hecho en el pasado en esfuerzos similares.
Siguiendo estas mismas ideas, los diseñadores del sistema experto escogen a menudo
representación del conocimiento y técnicas de control sobre la base del problema que
resuelve el paradigma. Estas opciones confían en los éxitos del pasado.
Se han hecho los esfuerzos pasados para relacionar cada paradigma a varios
caracteristicas que pueden ser deseables en el diseño del sistema experto (Gevarter
1987, Martin y Ley 1988.Lo siguiente muestra una aproximación del análisis hecho de
los proyectos de sistemas expertos anteriormente listados en el Apéndice C en un
esfuerzo al elaborar cada proyecto que resuelve el problema, inspección a la
representación de conocimiento y las técnicas de control que se emplearon. El resultado
de este esfuerzo se muestra en el siguiente esquema:
TIPO DE PROBLEMA VERSUS INFERENCIA Y REPRESENTACIÓN
DE CONOCIMIENTO
TIPO DE
PROBLEMA
INFERENCIAREPRESENTACIÓN DEL
CONOCIMIENTO
HACIA HACIA
ATRÁS
ADELANTE
REGLAS FRAMES
INDUCCIÓN
CONT
ROL
BAJO ALTO ALTO AVG. BAJO
DISEÑO
BAJO
ALTO
ALTO
BAJO BAJO
DIAGNÓSTICO
ALTO
BAJO
ALTO
MEDIO
MEDIO
TIPO DE
INFERENCIA REPRESENTACIÓN DEL
CONOCIMIENTO
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 62
Tabla N° 9:Tabla N° 9: . Tipo de problema versus inferencia y Representación de Conocimiento
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
PROBLEMA HACIA HACIA
ATRÁS ADELANTE
REGLAS FRAMES
INDUCCIÓN
INSTRUCCIÓN
ALTO
MEDI
O ALTO
MEDIO
BAJO
INTERPRETACIÓN MEDIO ALTO ALTO BAJO ALTO
SEGUIMIENTO
BAJO
ALTO
ALTO MEDIO
BAJO
PLANIFICACIÓN
BAJO
ALTO
ALTO MEDIO
BAJO
PREDICCION
MEDIO
ALTO
ALTO
BAJO
ALTO
PRESCRIPCIÓN
MEDIOMEDIO
ALTO
BAJO
BAJO
SELECCIÓN
ALTO
BAJO
ALTO BAJO
MEDIO.
TAREA 3: Seleccionar Software para el desarrollo del sistema experto
Hay una gran variedad de herramientas de software disponibles para el desarrollo de
un sistema experto. Ellos van desde los lenguajes de programación básicos hasta los de
desarrollo de alto nivel (SHELLS).
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 63
Fuente:Fuente: [1]* [1]*
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Categorías de software
Importancia de características de software
Las características a considerar en la elección de una herramienta de desarrollo son:
General
Costo
El Hardware de la computadora
Licencia
Apoyo en la capacitación
Desarrollador de Interfaz
Codificando el conocimiento.
Razonamiento inexacto.
Establecer reglas
Acceso externo al programa:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 64
SOFTWARE PARA SISTEMA EXPERTO
LENGUAJES SHELLS
BASADO EN REGLAS
BASADO EN OBJETOS
BASADO EN REGLAS
BASADO EN FRAMES
INDUCCION HYBRIDO
Figura N° 8:Figura N° 8: Categorías de SoftwareCategorías de Software
Fuente:Fuente: [1]* [1]*
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Utilidades de depuración.
Interfaz de usuario
Preguntas
Explicaciones
Gráficos
Hipertexto
TAREA 4: Desarrollo del Prototipo
Seleccionado el software de acuerdo a los requerimientos del proyecto, el desarrollo
del sistema se empieza. La mayoría de proyectos de sistemas expertos empiezan el
desarrollo construyendo un prototipo de sistema pequeño. Un prototipo es un modelo
del sistema final. Su estructura básica, que representa y procesa el conocimiento del
problema, es igual al esperado en el sistema final. Aunque el prototipo es sólo una
pequeña versión del sistema final limita la habilidad propiamente si el diseñó envía
los propósitos siguientes al servidor.
Validación de aproximación del sistema experto.
Confirma opción de técnica de representación de conocimiento y estrategias de
control.
Proporciona una vía de adquisición de conocimiento.
Definir una estrategia global
Para iniciar el diseño del prototipo es necesario definir una estrategia global. Esta
búsqueda es una serie de tareas de nivel alto que el sistema necesitará realizar.
Definir Estructura de Conocimiento
Durante el desarrollo del prototipo usted debe crear un esquema de trabajo que se
acomode los cambios futuros.
Dar validez al Proyecto
En la primera fase, se hacen los esfuerzos para probar la base de conocimiento
completa para la lógica y consistencia. La naturaleza exhaustiva de esta prueba sólo es
posible al inicio del proyecto cuando la base de conocimiento es pequeña. Esta
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 65
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
comprobación destapa las deficiencias en el conocimiento y búsqueda de razonamiento,
y valida la opción de la técnica de representación de conocimiento y de desarrollo de
software.
La segunda fase es probar es más de una demostración el sistema. Su propósito es
quitar algún posible escepticismo por el proyecto que podría sostenerse por los
individuos dentro de la organización. Aunque el sistema habrá limitado la capacidad en
su formulario del prototipo, una demostración exitosa en algún problema pequeño nutrirá
el apoyo por el proyecto.
En el futuro el prototipo madurará al punto dónde puede atacar los problemas reales que
formen el dominio. En esta fase de probar, se compara los resultados del sistema con
aquellos del experto.
¿Lanzar el Prototipo?
Una dificultad típica que puede descubrirse al seguir la comprobación del prototipo es
que la opción original de la herramienta de desarrollo de software era pobre. Por
ejemplo, puede encontrarse que la técnica de representación de conocimiento o el
método de la inferencia es impropia.
Vía para la Adquisición de Conocimiento
Es también fructífero usar el sistema del prototipo como una vía para adquirir el
conocimiento.
Por su naturaleza, un prototipo del sistema es sólo una rendición pequeña del sistema
final. Los límites de su conocimiento en el problema son rápidamente puestos en claro
durante la prueba, dónde los fracasos son las reglas. Con la cooperación del experto,
un estudio después de este fracaso abre la puerta al conocimiento adicional. El experto
puede determinar por qué el resultado dado por el sistema está equivocado, y puede
proporcionar la visión en qué conocimiento está extrañando en el sistema que le impidió
alcanzar el resultado correcto. De esta forma, el prototipo actúa como otra herramienta
que el ingeniero de conocimiento puede usar para sondear el conocimiento adicional.
TAREA 5: Desarrollo de la Interfaz
Deben definirse las características técnicas de la interfaz al principio del proyecto con
la cooperación del usuario. El desarrollo de la interfaz debe empezar con el desarrollo
del prototipo del sistema experto.
Las claves para un diseño eficaz de la interfaz son:
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 66
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Consistencia
Claridad
Control
Colores de la pantalla
TAREA 6: Desarrollo del Producto
Durante el desarrollo del prototipo, se sostienen las sesiones de extracción de
conocimiento y se corren las pruebas. Con cada refinamiento, la capacidad del sistema
se mejora. En un modo evolutivo, el prototipo del sistema empieza a asumir la forma
del sistema final. No hay un punto fijo dónde esta transición ocurre; el prototipo
evoluciona gradualmente hasta que el sistema sea completado.
Refinamiento del conocimiento
Una característica básica de un sistema experto es que gana su forma de poder de
conocimiento. Esta tarea implica ensanchar y profundizar el conocimiento.
El conocimiento es hecho más ancho agregando nuevos conceptos. En los sistemas
basados en reglas cuando se agregan las reglas se agrega a este nuevo conocimiento.
En los sistemas basados en frames, el nuevo concepto se agrega generando un nuevo
frame de la clase.
Ahondando el conocimiento involucra información adicional que apoya el conocimiento
existente. En los sistemas basados en reglas, este tipo de desarrollo se ha realizado
agregando reglas que apoyan las reglas existentes. En los sistemas basados en frames,
se agregan los nuevos rasgos al marco existente.
Refinamiento del Control
Una versión temprana de un sistema experto normalmente incluye las estrategias de
control simples. Una opción de encadenamiento dirigido hacia atrás o adelante podría
hacerse, junto con un juego pequeño de metas. Ésta es una manera buena de empezar
el diseño, desde que al principio usted quiere determinar si usted está entrando la
dirección correcta. Con los beneficios del proyecto, se verá maneras buenas de
introducir las estrategias de control más complejas.
Una área dónde pueden esperarse refinamientos en el control del sistema está en la
agenda de la meta. La agenda de la meta proporciona una lista de metas que el sistema
sigue en alguna sucesión del juego. Durante el proyecto, usted puede encontrar una
necesidad para agregar las metas a la agenda o refinar existentes en tareas más finas.
Usted también puede descubrir que la sucesión estricta de una agenda de la meta
también está reprimiendo la aplicación. En este evento, se puede querer hacer las
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 67
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
metas sensibles al contexto de la sesión. Esto puede lograrse a través del uso de meta-
regla. Una meta-regla puede escribirse y establecer las nuevas metas o cargar otras
bases de conocimiento sobre la base de la información descubierta.
Aunque usted puede empezar con una sola opción de encadenamiento dirigido hacia
atrás o adelante, usted puede encontrar una necesidad de cambiar entre ellos. Esta
situación normalmente ocurre si el problema involucra varias tareas algunos de los
cuales pueden manejarse bien por una de las técnicas de la inferencia. Cuando esto
ocurre, usted debe estructurar varias bases de conocimiento, cada uno con su propia
técnica de inferencia.
El Refinamiento de la interfaz
Algunos de los puntos típicos que el usuario final puede proporcionar como guía son:
La facilidad de uso.
Las direcciones de la pantalla.
Las preguntas.
Las clarificaciones.
Los resultados.
Las técnicas interactivas (el ratón, el lightpen, etc.)
El Razonamiento inexacto.
Algunos sistemas expertos necesitan usar una técnica de razonamiento inexacta. Sin
embargo, en las fases tempranas del proyecto, se verifica el conocimiento obtenido del
experto en un sentido exacto. Es decir, deben codificarse hechos, reglas, o frames en el
sistema de una manera exacta. El resultado del razonamiento del sistema puede
verificarse más fácilmente si un acercamiento lógico se toma en la codificación del
conocimiento. Siguiendo este paso de la comprobación, pueden usarse los métodos del
razonamiento inexacto para refinar la performance del sistema.
FASE 4: PRUEBA
Conforme prosigue el proyecto el sistema experto necesitará ser probado y evaluado
periódicamente para asegurar que su performance está convergiendo hacia las metas
establecidas. Deben tomarse las decisiones en que se probará, cómo y cuándo las
pruebas se dirigirán, y quién será involucrado en las pruebas. Es importante que estas
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 68
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
decisiones se tomen temprano, en un momento cuando las metas del proyecto originales
se establecen.
El proceso de la evaluación se preocupa más por la aprobación del sistema y aceptación
del usuario.
Validación del sistema
Un sistema experto modela la decisión de un experto humano. Si se diseñó
correctamente, el sistema deriva los mismos resultados que el experto y razona de una
manera similar al experto. Por consiguiente, el esfuerzo de aprobación debe dirigirse a
lo siguiente:
Valide los resultados del sistema.
Valide que proceso razona el sistema.
Validar los Resultados
Durante la prueba, la información del problema se da al sistema experto y la
recomendación del sistema se compara con resultados cedidos por un individuo llamado
el "evaluador."
Hay tres consideraciones mayores al diseñar una prueba para validar los resultados de
un sistema experto:
La selección del criterio de la prueba.
La selección de los casos de la prueba.
La selección del evaluador.
Seleccionar el Criterio de Prueba
Cada proyecto tiene alguna meta para lograr. Para juzgar si el proyecto ha encontrado
su meta con éxito, el criterio normalmente se establece cuando el proyecto se evalúa.
Si la organización está usando la tecnología para dirigirse a un problema específico
(conducida por el problema), establecer un criterio de prueba entonces es normalmente
directo. Es decir, el sistema debe demostrar que logra algún valor medible en tales
factores como: economías del costo, mejora de productividad, la mejora de calidad del
producto etc. Son problemas muy tangibles, pero ellos son a menudo difíciles de medir
hasta que el sistema se haya especializado en el campo.
Un acercamiento diferente confía en comparar la relativa performance del sistema con
aquella del experto en el campo.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 69
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Comparación relativa
Establezca Metas Razonables
La evaluación Requiere Juicio
Seleccionando los Casos de la Prueba
Al trabajar en una aplicación con demandas, es importante que usted pruebe el sistema
primero para los problemas típicos antes de probar los más difíciles.
Selección de Evaluadores
Si el sistema experto será usado por otros expertos se recomienda que estos sean parte
del equipo de “evaluadores”y que no estén asociados al proyecto.
Si el sistema será usado por los no expertos, entonces ellos deben ser parte del equipo
de la evaluación. Ellos pueden proporcionar comentarios adelante si el sistema
proporciona resultados buenos, los resultados más rápidos, etc.
Además debe considerar los siguientes puntos:
Evite el Prejuicio Potencial
Valide el Razonamiento
Aprendiendo de los Errores
La Aceptación del usuario: Dado por:
- Facilidad de uso.
- Claridad de las preguntas.
- Claridad de las explicaciones.
- Presentación de resultados.
- Utilidades del sistema.
- Encuesta al usuario.
Evolución de la Prueba / Evaluación
Paso 1: La Comprobación preliminar
Paso 2: Examinando la demostración
Paso 3: Probando Validación Informal
Paso 4: Prueba de refinamiento
Paso 5: Prueba Formal
Paso 6: Comprobación del campo
FASE 5: DOCUMENTACIÓN
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 70
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Como un proyecto de sistema experto maduro, la cantidad de conocimiento recolectado
del experto crece. Después de un tiempo, debe encontrar la cantidad de información
abrumadora. Para manejar esta situación, tendrá que decidir temprano sobre algún
método para documentar efectivamente esta información.
Si está propiamente diseñado, esto también servirá para las siguientes tareas de
mantener el sistema y escribir el reporte final del proyecto.
¿Qué necesita ser documentado?
Durante un proyecto de sistema experto, la información que usted necesita para retener
y grabar en la documentación sirve para tres propósitos primarios:
Referencias para desarrollar el sistema experto.
Referencias para redactar el informe final.
Referencias para mantener el sistema experto.
Durante el esfuerzo de desarrollo, se necesitará volver a menudo a esta
documentación para grabar la nueva información o estudiar previamente la información
descubierta. Desde que muchos proyectos requieren un reporte final de proyecto, la
información grabada en la documentación sirve como una fuente valiosa para este
esfuerzo. Siguiendo el despliegue del sistema experto, el sistema necesitará ser
mantenido. Para acomodar cada uno de estos esfuerzos, debe documentar lo siguiente:
Conocimiento
Gráficos de conocimiento
Código fuente
Pruebas
Transcripciones
Glosario de términos específicos del dominio
Reportes.
¿Cómo organizar la Documentación?
Además de contener la información listada en la sección anterior, la documentación debe
ser organizada para facilitar el desarrollo del sistema, la escritura de los reportes y el
mantenimiento del sistema. Para lograr esto, la documentación debe reunir las
siguientes especificaciones:
Fácil entrada de nuevo conocimiento
Fácil acceso y modificación del antiguo conocimiento.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 71
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Fácil acceso para la información relacionada.
Fácil repetición del material para redactar el reporte.
Hipertexto
Para facilitar la hojeada de la información relacionada en un documento que ha sido
puesto en la forma electrónica, algunos diseñadores de hoy adoptan la técnica de
hipertexto.
Se puede usar una estructura de hipertexto para leer información sobre algún asunto,
luego navegar a través de otros nodos para aprender sobre la información relacionada.
Para ilustrar, considerar el siguiente ejemplo.
Reporte Final
Para muchos proyectos de sistema expertos necesita escribir un reporte final. Hay
variaciones de que será presentado en este reporte que depende de la organización
para quien el trabajo fue hecho. El contenido del reporte final del proyecto debe incluir lo
siguiente:
Página del título
Tabla de contenidos.
Resumen ejecutivo
Visión global del proyecto
Descripción del programa
Resultados de las pruebas
Resumen
Referencias
Bibliografías
Apéndices.
FASE 6: MANTENIMIENTO
Muchos sistemas expertos contienen conocimiento que está evolucionando con el
tiempo. La organización que usa el sistema puede adquirir nuevos productos y equipos,
o cambiar procedimientos para trabajar con los recursos existentes. Este cambio declara
modificaciones apropiadas requeridas al sistema.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 72
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
Conforme es usado el sistema experto, las deficiencias pueden también ser
descubiertas. Los usuarios pueden encontrar dificultad para usar el sistema, o pueden
descubrir omisiones. Mantener cualquier tipo de software puede ser costoso.
Dada la probabilidad de que necesita cambios el sistema y sus costos asociados,
necesita ser establecido un programa de mantenimiento efectivo para cada proyecto de
sistema experto. Los usuarios necesitan un camino para reportar problemas que ellos
encuentran, y los individuos con habilidades de ingeniero de conocimiento deben estar
disponibles para hacer los cambios. Debe además haber una manera para manejar el
esfuerzo del mantenimiento para asegurar que la tarea se logre efectivamente.
Los mayores temas a considerar al reunir un programa de mantenimiento de sistema
experto son:
Documentación
Pensar en el mantenimiento durante el diseño
Estructura Modular
Separar el conocimiento de la información
Meta Reglas
Problemas del Software
Habilidades de programación
Portabilidad del sistema
Utilidades de modificación
Acuerdo de mantenimiento
¿Quién mantiene el sistema?
Cambios del documento.
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 73
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
BIBLIOGRAFÍA
LIBROS
[01]* Durkin, J. “EXPERT SYSTEMS: DESIGN AND DEVELOPMENT”. New
York. Maxwell Macmilan. 1994
[02] Cohen, D. “SISTEMAS DE INFORMACIÓN PARA LA TOMA DE
DECISIONES”. McGrawHill.
[03] Sánchez, J. “SISTEMAS EXPERTOS: UNA METOLOGIA DE
PROGRAMACION”.Prentice Hall. México. 1991
* Traducido del original por el autor.
INTERNET
[INTER 01] www.uc3m.es
[INTER 02] www.monografias.com
[INTER 03] www.uakron.edu
[INTER 04] www.pucp.edu.pe
[INTER 05] www.inei.gob.pe
[INTER 06] www.itnuevolaredo.edu.mx/takeyas
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 74
INTELIGENCIA ARTIFICIAL & SISTEMAS EXPERTOS __________________
_______________________________________________________Autor: Heyner H. Ninaquispe Castro Pág. 75