Sistemas Expertos. consulta

¿Qué es un sistema experto?

Sistema experto se refiere a un software que imita el comportamiento de un experto humano, en la solución de un determinado problema. Un sistema experto puede almacenar conocimiento, el cuales proporcionado por expertos, empleando para ello la deducción lógica de conclusiones.

El objetivo de todo sistema experto es el de imitar el comportamiento de los seres humanos, en determinadas disciplinas, es decir el poder de tomar decisiones en un entorno riesgoso.

El conocimiento que los sistemas expertos tienen es gracias a los “ingenieros de conocimiento”, el cual establece las reglas del sistema y los caminos a seguir, todo ello se genera gracias a: la base del conocimiento, y la máquina de inferencia.

Componentes de un Sistema Experto

 

Los componentes de un sistema experto son:

La Base del Conocimiento.

La base del conocimiento de los sistemas expertos contiene el conocimiento efectivo y heurístico. El conocimiento efectivo es el conocimiento del dominio de la tarea que se comparte  ampliamente, encontrado típicamente en libros de textos.

El conocimiento heurístico es el conocimiento menos riguroso, más experimental, más crítico del funcionamiento. En contraste con el conocimiento efectivo, el conocimiento heurístico raramente se discute y es en gran parte individualista. Es el conocimiento de la buena práctica, del buen juicio y del razonamiento admisible en el campo. Es el conocimiento que es la base del ” arte de buen inferir”.[1]

Para representar estos tipos de conocimientos en la base de conocimiento, se utilizan tres métodos:

  • Reglas: Son una serie de declaraciones estructuradas en forma de oraciones condicionales y están expresadas a través de las estructuras condicionales IF-THEN-ELSE.

 

  • Estructuras: Las estructuras contienen una jerarquía de componentes y de atributos de objetos que pueden ser asignados o heredados de otras estructuras.

La diferencia entre una estructura y una regla es que una estructura puede representar valores iniciales, apuntadores a otras estructuras para los cuales no han sido especificado valores que necesite ser tomada.

 

  • Lógica: Las expresiones lógicas cuentas con predicados, valores y átomos para evaluar hechos del mundo real.

Motor de Inferencia.

Manipulan y utilizan el conocimiento de la base de conocimiento para formar una línea del razonamiento.

El Motor de Inferencias realiza dos tareas principales:

  • Examina los hechos y las reglas, y si es posible, añade nuevos hechos.
  • Decide el orden en que se hacen las inferencias.

Para realizar estas tareas utiliza estrategias de inferencia y estrategias de control. Las estrategias de inferencia que más se emplean en sistemas expertos están basadas en la aplicación de las reglas lógicas denominadas “modus ponens” y modus tollens”.

El “Modus ponens”: Si existe una regla “SI A ENTONCES B”, y A es verdadero, se puede concluir que B es verdadero.

El “Modus tollens”: Si existe una regla “SI A ENTONCES B”, y B es falso, se puede concluir que A es falso.

 

EJEMPLOS PRÁCTICOS DE SISTEMAS EXPERTOS

Algunos ejemplos de sistemas expertos que se utilizan en el mundo podrían ser:

 * DENDRAL: Es capaz de calcular o descubrir hechos relativos a las estructuras moleculares a partir de unos datos químicos sin elaborar.

 * MYCIN: El más famoso de todos, que diagnostica infecciones en la sangre y meningitis y además sugiere el tratamiento que se debe seguir en cada caso.

 * PUFF: El hermano menor de MYCIN, que diagnostica y trata enfermedades del pulmón.

 * MOLGEN0: “Molecular Genéticas” ayuda a los biólogos que trabajan en el campo del DNA y la ingeniería genética.

 * PROGRAMMER’S APPRENTICE: Como su propio nombre lo indica, se trata de un sistema que ayuda a la escritura de programas.

 * EURISKO: Un sistema experto capaz de aprender a medida que funciona, que crea circuitos micro eléctricos tridimensionales.

 * GENESIS: Permite a los científicos planificar y simular experimentos en el campo de la unión de genes.

 * EXPERT SYSTEMS TO COMBAT INTERNATIONAL TERRORISM: Para ayudar a expertos a entender la totalidad de la misión en que trabajan y asistirlos en la toma de decisiones.

 * LEGAL DECISIONMAKING

 * TATR: Tactical Air Targeting.

 * TWIRL: Tactical Warfare. Simulaciones de guerras completas y guía de mejores acciones posibles a realizar, en casi todas las situaciones.

 * R1: Programa utilizado para el descubrimiento de yacimientos petrolíferos bajo aguas marinas.

 

TIPOS DE SISTEMAS EXPERTOS

Interpretación: Infieren la descripción de situaciones por medio de sensores de datos. Estos S.E. usan datos reales, con errores, con ruidos, incompletos etc. Ejemplos: medición de temperatura, reconocimiento de voz, análisis de señales etc.

Predicción: Infieren probables consecuencias de situaciones dadas. Algunas veces usan modelos de simulación para generar situaciones que puedan ocurrir. Ejemplos: Predecir daños a cosechas por algún tipo de insecto.

Diagnostico: Infieren las fallas de un sistema en base a los síntomas. Utilizan las características de comportamiento, descripción de situaciones o conocimiento sobre el diseño de un componente para inferir las causas de la falla. Ejemplos: diagnóstico de enfermedades en base a síntomas, encontrar componentes defectuosos o fallas en circuitos.

Diseño: Configuración de objetos. Utilizan un conjunto de limitaciones y restricciones para configurar objetos. Utilizan un proceso de análisis para construir un diseño parcial y una simulación para verificar o probar las ideas. Ejemplos: configuración de equipos de oficina, de equipos de computo.

Planeación: Diseñan un curso completo de acción, se descompone la tarea en un subconjunto de tareas. Ejemplo: transferir material de un lugar a otro, comunicaciones, ruteo, planificación financiera.

Monitoreo: Comparan observaciones del comportamiento del sistema con el comportamiento estándar, se compara lo actual con lo esperado. Ejemplo: asistir a un paciente de cuidados intensivos, tráfico aéreo, uso fraudulento de tarjetas de créditos.

Depuración: (debugging) Sugieren remedios o correcciones de una falla. Ejemplo: sugerir el tipo de mantenimiento a cables dañados, la prescripción medica a un paciente.

Reparación: Sigue un plan para administrar un remedio prescrito. Poco se ha hecho, requiere planeación, revisión y diagnostico.

Instrucción: Diagnostican, revisan y reparan el comportamiento de un estudiante. Ejemplo: educar a un estudiante de medicina, usa un modelo del estudiante y planea la corrección de deficiencias.

Control: Gobierna el comportamiento del sistema. Requieren interpretar una situación actual, predecir el futuro, diagnosticar las causas de los problemas que se pueden anticipar, formular un plan para remediar estas fallas y monitorear la ejecución de este.

 

EL DISEÑO DE UN SISTEMA EXPERTO

El diseño de un sistema cualquiera consiste en la evaluación de las alternativas y la especificación de una solución detallada. El diseño especifica como logrará el sistema los objetivos para los cuales se creará.

 

Para un sistema experto, el concepto anterior también es válido. Una vez se tiene el problema a resolver se debe analizar y evaluar las soluciones dentro del área de conocimiento respectivo. Aclarando que el diseño de un sistema experto variará en relación a lo sistemas tradicionales.

En todo desarrollo de un sistema, juega un papel importante el equipo de trabajo. Para el desarrollo de un sistema experto, se consideran las siguientes clases de personas que interactúan en su creación:

 

  1. El experto: La función del experto es la de poner sus conocimientos especializados a disposición del Sistema Experto.

 

  1. El ingeniero del conocimiento: Es el encargado de realizar las preguntas al experto, estructura sus conocimientos y los implementa en la base de conocimientos.

 

  1. El usuario: Aporta sus deseos y sus ideas, determina especialmente el escenario en el que debe aplicarse el Sistema Experto.

 

ETAPAS DEL DESARROLLO DE UN SISTEMA EXPERTO

Definición del Problema.

Precisamente en la primera fase del proyecto es de vital importancia determinar correctamente el ámbito estrechamente delimitado de trabajo. Por lo que, el ingeniero del conocimiento y el experto trabajan muy unidos para elaborar el problema que debe ser resuelto por el sistema.

Adquisición del conocimiento.

Una vez delimitado el dominio, nuestro sistema se debe ampliar con los conocimientos del experto. El experto debe comprobar constantemente si su conocimiento ha sido transmitido de la forma más conveniente. El ingeniero del conocimiento es responsable de una implementación correcta, pero no de la exactitud del conocimiento. La responsabilidad de esta exactitud recae en el experto.

 

Desarrollo de prototipos.

Existen dos importantes riesgos en el desarrollo de Sistemas Expertos:

  • No existen implementaciones similares que puedan servir de orientación al encargado del desarrollo en la casi totalidad de los casos.

 

  • En muchos puntos, los requisitos necesarios están esbozados con muy poca precisión.

Un método efectivo para la disminución de los problemas anteriores, es la implementación de un prototipo de Sistema Experto que permita llevar a cabo las funciones más importantes de éste.

Para Sistemas Expertos, la implementación de prototipos es el procedimiento más adecuado, pues posibilita una rápida reacción a los deseos en constante cambio, tanto por parte de los expertos como parte del usuario.

 

Integración de ingeniería de sistemas.

Una vez definidas y estructuradas las bases del sistema experto se procede a la integración de la parte cognoscitiva y tradicional del sistema, incluyendo las aprobaciones del experto, usuario e ingeniero del conocimiento.

Verificación y pruebas.

Por ultimo es necesaria la implementación del sistema elaborado. Para ello se realizan diversas clases de pruebas. Dichas pruebas ayudan al mejoramiento y a la depuración final del sistema, para obtener un producto que cubra las necesidades del usuario.   

ELECCIÓN DEL PROBLEMA ADECUADO

¿Qué hace el ser humano o los programas para resolver problemas?   

El ser humano utiliza una serie de métodos para resolver problemas, el más sencillo de ellos es el método algorítmico. Todas las personas poseen algoritmos para resolver problemas tales como amarrar las cintas de lo zapatos, multiplicar números, planear unas vacaciones, etc. Algunos de los algoritmos son sencillos otros son mas complejos, sin embargo todos ellos estas conformado por secuencia de acciones que deben descubrirse o aprenderse.

Estos algoritmos son bastantes rutinarios. Pero los problemas realmente interesantes a menudo no poseen soluciones algorítmicas; sin embargo son necesarios resolverlos. Pero ¿Cómo?. Cuando no se conoce una solución se recurre a la exploración de prueba y error. Es decir, que puede conducir a que se hagan algunos intentos al azar para llegar a la solución. Este método es más conocido como Generación y Prueba.

La idea principal de generación y prueba es simple; generar soluciones factibles para el problema y se prueba la aceptabilidad. Una de las desventajas es que se pueden generar demasiadas propuestas y poco recurso para implementarlas. Para no caer en la dificultad planteada anteriormente se propone evaluar cada alternativa y buscar la más factibletécnicas basadas en el conocimiento. Estas técnicas comprenden las siguientes capacidades:

–          Utilización de normas u otras estructuras que contengan conocimiento y experiencia de expertos especializados.

–          Deducción lógica de conclusiones.         

–          Interpretación de datos ambiguos.

–          Manipulación de conocimientos vagos, es decir, conocimientos afectados por valores de probabilidad.

 

Otros puntos a considerar  son los siguientes:

–        Pedirle al experto de campo que hable sobre el conocimiento involucrado

–        Tomar nota de los conceptos utilizados con más frecuencia

–        Parametrizar los conceptos involucrados

–        Establecer relaciones de causalidad entre los conceptos según sus parámetros

–        Verificar la aceptabilidad de las reglas con el experto de campo

 

Los métodos de solución de problemas más utilizados que existen son:

–          Encadenamiento hacia delante: este método parte del conjunto de datos conocidos y se analizan todas la hipótesis en las que dicha información desempeña un papel.

 

–          Encadenamiento hacia atrás: en este se plantean hipótesis y se intentan demostrar con información conocida.

 

Referencias bibliográficas:

Moreno José Luis. Sistemas Expertos [sede web]. Edición 19/05/2004. [acceso 30 de marzo del 2012]. Disponible en: http://catarina.udlap.mx/u_dl_a/tales/documentos/lis/moreno_a_jl/capitulo3.pdf

http://www.dei.uc.edu.py/tai97/sexperto/tipos.htm

http://www.cruzagr3.com/sistemasexpertos2004/files/Investigacion/RESUMEN_GRUPO_6.doc

Ejemplos de Sistemas Expertos [sede Web]. Disponible en: http://sistemasexpertos2006.galeon.com/enlaces1463710.html

 


 

 

Anuncios

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s