sistemas expertos y sus aplicaciones

Upload: rouss-maya

Post on 12-Oct-2015

82 views

Category:

Documents


0 download

TRANSCRIPT

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    1/99

    UNIVERSIDAD AUTNOMA

    DEL ESTADO DE HIDALGO

    INSTITUTO DE CIENCIAS BSICAS E INGENIERA

    SISTEMAS EXPERTOS Y SUS APLICACIONES

    M O N O G R A F A:

    QUE PARA OBTENER EL TTULO DE LICENCIADO

    EN COMPUTACIN

    P R E S E N T A:

    TOMS LEN QUINTANAR

    ASESOR: LIC. EN COMP. LUIS ISLAS HERNNDEZ

    PACHUCA DE SOTO, HGO. 2007

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    2/99

    NDICEIntroduccin. I

    Justificacin. III

    Objetivo General. IV

    Objetivos Particulares. V

    Dedicatoria VI

    CAPTULO 1: ANTECEDENTES Y CONCEPTOS BSICOS.

    1.1 Introduccin. 2

    1.2 Concepto de Inteligencia Artificial. 2

    1.3 Historia de la Inteligencia Artificial. 3

    1.4 Campos de la Inteligencia Artificial. 5

    1.5 Los Sistemas Expertos. 7

    1.6 Tipos de Sistemas Expertos. 8

    1.7 Desarrollo histrico de los Sistemas Expertos. 11

    CAPTULO 2: GENERALIDADES DE LOS SISTEMAS EXPERTOS.

    2.1 Introduccin. 15

    2.2 Definicin de Sistema Experto. 15

    2.3 Los expertos humanos. 162.4 Diferencias entre un experto y un no experto humano. 17

    2.5 Diferencias entre un Sistema Experto y un programa tradicional. 17

    2.6 Diferencias entre un Sistema Experto y un experto humano. 18

    2.7 Ventajas de los Sistemas Expertos. 18

    2.8 Forma en que los usuarios interactan con los Sistemas Expertos. 18

    2.9 Sistema Experto vs sistema clsico. 19

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    3/99

    CAPTULO 3: REPRESENTACIN DEL CONOCIMIENTO.

    3.1 Introduccin. 213.2 Definicin de conocimiento 21

    3.3 Lgica Proposicional. 23

    3.4 Lgica de predicados. 24

    3.5 Reglas de produccin. 25

    3.6 Redes asociativas. 25

    3.7 Estructuras frame. 26

    3.8 Representacin orientada a objetos. 28

    CAPTULO 4: COMPONENTES DE UN SISTEMA EXPERTO.

    4.1 Introduccin. 31

    4.2 Base de conocimiento. 31

    4.3 Motor de inferencia. 32

    4.4 Componentes detallados de un Sistema Experto. 32

    4.5 Arquitectura de un Sistema Experto. 33

    4.6. Requerimientos para un Sistema Experto. 36

    4.7 Metodologas para la construccin de Sistemas Expertos. 38

    4.8 Lenguajes utilizados para la construccin de Sistemas Expertos. 40

    4.9 Herramientas y shells utilizados en la construccin de

    Sistemas Expertos. 44

    CAPTULO 5: TAREAS QUE REALIZAN LOS SISTEMAS EXPERTOS.

    5.1 Introduccin. 48

    5.2 Interpretacin, diagnstico y monitoreo. 48

    5.3 Diseo y seleccin. 49

    5.4 Planificacin. 50

    5.5 Control. 50

    5.6 Reparacin, correccin o terapia. 50

    5.7 Simulacin, pronstico o prediccin. 51

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    4/99

    5.8 Instruccin. 51

    5.9 Recuperacin de Informacin. 51

    CAPTULO 6: INTRODUCCIN DE LOS SISTEMAS EXPERTOS EN LA

    EMPRESA.

    6.1 Introduccin. 55

    6.2 Consideraciones. 56

    6.3 Posibilidad de un Sistema Experto. 58

    6.4 Justificacin. 59

    6.5 Costo-Beneficio. 60

    CAPTULO 7: CAMPOS DE APLICACIN DE LOS SISTEMAS EXPERTOS.

    7.1 Introduccin. 64

    7.2 Medicina. 64

    7.3 Contabilidad. 64

    7.4 Planificacin financiera. 65

    7.5 Auditoria. 66

    7.6 Militar. 68

    7.7 Industria. 69

    7.8 Electrnica, Informtica y Telecomunicaciones. 69

    7.9 Robtica. 69

    7.10 Aeronutica. 70

    CAPTULO 8: EJEMPLOS DE SISTEMAS EXPERTOS EN EMPRESAS.

    8.1 Introduccin. 72

    8.2 Sistema Experto DENDRAL. 72

    8.3 Sistema Experto MYCIN. 72

    8.4 Sistema Experto XCON. 73

    8.5 Sistema Experto DIAVAL. 73

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    5/99

    8.6 Sistema Experto ACE. 74

    8.7 Sistema Experto KIWI. 74

    8.8 Sistema Experto AIDE. 74

    8.9 Sistema Experto AFIN. 74

    8.10 Sistema Experto ALFEX. 74

    8.11 Sistema Experto ANALISYS. 75

    CAPTULO 9 FUTURO Y TENDENCIAS DE LOS SISTEMAS EXPERTOS.

    9.1 Introduccin. 779.2 Inteligencia Artificial Distribuida. 77

    9.3 Sistemas Expertos ms grandes. 77

    9.4 Reconocimiento del lenguaje natural. 77

    9.5 Sistemas Expertos con redes neuronales. 78

    9.6 Interfaces Inteligentes. 79

    9.7 Visin Artificial. 79

    9.8 Sistemas Expertos Evolutivos. 80

    9.9 Consecuencias. 82

    9.10 Visin critica. 83

    CONCLUSIONES. 85

    BIBLIOGRAFIA. 86

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    6/99

    I

    INTRODUCCIN

    Antes de la aparicin de la computadora, el hombre ya se preguntaba si se learrebatara el privilegio de razonar y pensar. En la actualidad existe un campo dentro de lainteligencia artificial al que se le atribuye esa facultad: el de los Sistemas Expertos. Estossistemas permiten la creacin de mquinas que razonan como el hombre, restringindose aun espacio de conocimientos limitado. En teora pueden razonar siguiendo los pasos queseguira un experto humano (mdico, analista, empresario, etc.) para resolver un problemaconcreto. Este tipo de modelos de conocimiento por ordenador ofrece un extenso campo deposibilidades en resolucin de problemas y en aprendizaje. Su uso se extender

    ampliamente en el futuro, debido a su importante impacto sobre los negocios y la industria.

    A partir de la aparicin de las computadoras hasta nuestros das, la gente hainvertido grandes esfuerzos por tratar de dar una cierta capacidad de decisin a estasmquinas, incluso un cierto grado de inteligencia.

    Estos esfuerzos se han visto reflejados en los Sistemas Expertos, los cuales, en s notienen verdadera Inteligencia Artificial; ms bien, es un sistema basado en el conocimientoque, mediante el buen diseo de su base de informacin y un adecuado motor de inferenciaspara manipular dichos datos proporciona una manera de determinar resoluciones finalesdados ciertos criterios.

    Los Sistemas Expertos son una herramienta poderosa en el apoyo o gua de losusuarios en los procesos que tienen una secuencia pasos definida, pero que puede serconfigurable.

    El presente trabajo aborda el tema de Sistemas Expertos, debido a que son unaherramienta cuya utilidad ya est comprobada, y que sin embargo, muchas personasdesconocen y otras ms no las aceptan todava. Se desean presentar los aspectos generalesde un Sistema Experto (en adelante SE), sus orgenes, componentes, construccin yutilizacin primordialmente, con el fin de crear conciencia en las empresas de que los SErepresentan una oportunidad innegable de modernizacin y mejoramiento de sus procesos.

    A continuacin se presenta de manera general el contenido de la presentemonografa.

    En el Captulo 1, Antecedentes y Conceptos Bsicos, se detallan los conceptosbsicos de Inteligencia Artificial y Sistemas Expertos. Asimismo, se presenta con detalle lahistoria de la Inteligencia Artificial, desde la propuesta inicial de Turing sobre lainteligencia de las mquinas y la propuesta del modelo de la neurona del cerebro humanopor Mc Culloch y Pitts hasta los primeros Sistemas Expertos, que fueron los primerosresultados de la Inteligencia Artificial con aplicacin en problemas ms cotidianos.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    7/99

    II

    En el Captulo 2, Generalidades de los Sistemas Expertos, se presenta unadescripcin de los Sistemas Expertos, as como tambin se presentan comparaciones entrediferentes tipos de expertos. El captulo concluye con la mencin de las ventajas ydesventajas de estos tipos de expertos.

    En el Captulo 3,Representacin del Conocimiento, se trata de dar una visin de lasdiferentes maneras en las que se puede adquirir el conocimiento, y su representacin, comolo son la lgica preposicional, lgica de predicados, reglas de produccin, redes asociativas,estructuras frame, representacin orientada a objetos, as como sus ventajas y desventajas.

    En el Captulo 4, Componentes de un Sistema Experto, se da una idea de loscomponentes que integran un Sistema Experto, as como una descripcin de cada uno deestos componentes.

    El Captulo 5, Tareas que realizan los Sistemas Expertos,es una descripcin de losprocesos en los cuales se utilizan los SE, tales como la interpretacin, el diagnstico, eldiseo, la planificacin, el control, la correccin y la simulacin entre otros.

    En el Captulo 6, Introduccin de los Sistemas Expertos en la Empresa, seabordarn las consideraciones que deben tomarse en cuenta antes de intentar arrancar unproyecto de implementacin de un Sistema Expertos en el negocio. Muestra un bosquejogeneral de las preguntas que los profesionales de Tecnologas de Informacin (TI) debenhacerse para evaluar la situacin del negocio respecto a este paradigma de solucin deproblemas.

    En el Captulo 7, Campos de Aplicacin de los Sistemas Expertos,se muestran unaserie reas en las que los Sistemas Expertos tienen presencia debido a las caractersticas ynecesidades inherentes a ellas.

    Por ltimo en el Captulo 8, Ejemplos de Sistemas Expertos en empresas, se haceuna recopilacin de ejemplos de sistemas expertos los cuales han sido desarrollados en lasempresas para agilizar sus procesos y en general aumentar su productividad.

    En el capitulo 9, El futuro y la tendencia de los Sistemas Experto, se muestra unavisin general de los sistemas expertos en un futuro, as como las nuevas tcnicas deInteligencia Artificial que harn posible estos nuevos proyectos.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    8/99

    III

    JUSTIFICACINEn todo Mxico, el uso de Sistemas Expertos en empresas es muy pobre. Las

    empresas siguen utilizando el viejo paradigma de atencin a los usuarios de manerapresencial (personal, telefnica) o semipresencial (listas de correo). Estos modos deoperacin restringen seriamente la labor analtica del profesional de Tecnologas deInformacin.

    Es por ello, que ste proyecto de investigacin recopila la informacin necesariasobre estos sistemas y sus aplicaciones, para incrementar su grado de difusin y una mayoraceptacin de dentro del sector empresarial.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    9/99

    IV

    OBJETIVO GENERALDesarrollar un proyecto de investigacin sobre Sistemas Expertos y sus

    aplicaciones, tal que permita apoyar la toma de decisiones en la empresa, al momento deevaluar la factibilidad para la implementacin de un sistema.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    10/99

    V

    OBJETIVOSPARTICULARES

    Incrementar la difusin de los Sistemas Expertos en el sector empresarial.

    Proporcionar una herramienta de investigacin sobre Sistemas Expertos yaplicaciones al personal de tecnologa de informacin.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    11/99

    VI

    DEDICATORIAA Dios.

    Gracias Padre Dios por tu sublime fuerza que me ha mantenido firme ante las ms hostilesadversidades, gracias por estar siempre cerca de m, gracias por permitirme alcanzar mis metas, yesta, no fue la excepcin, gracias Dios.

    A mi Padre.

    Gracias Pap por tu incondicional apoyo, gracias por todo lo que me has enseado a lo largo de mivida, gracias por el enorme esfuerzo que hiciste por darme una carrera, carrera que hoy se ve al fincoronada con este trabajo, el cual es por ti y para ti. Gracias por convertirme en un hombre de bien,porque lo que ahora soy, te lo debo a ti. Gracias Pap.

    A mi Madre.

    Gracias Mam por tu enorme cario y apoyo, muchas veces tuve miedo de fallarte, pero tu enormeconfianza depositada siempre en m, me dio la fortaleza y la tenacidad para lograr lo que mepropuse, y aqu est lo que an faltaba. Gracias Mam.

    A mi esposa.

    Gracias nena, por tanto amor, por tanto apoyo, por tu inquebrantable confianza en m, gracias porllegar en el momento ms crucial de mi vida, gracias por tu enorme ayuda en la realizacin de stetrabajo, y ms an por hacer legibles mis pensamientos, gracias por convertirte en coautora de esteproyecto. Gracias nena por todo.

    A mi hijo.

    Como soslayar un momento tan importante, para expresar tanta gratitud, en este momento an eresmuy pequeo hijo, pero se que despus de unos aos podrs tomar este trabajo y leer estas palabras:Gracias enano porque al mirar tus ojos, al contemplar tu sonrisa y ver como creces da con da,entiendo que no puedo ni debo fallarte, gracias por inspirarme para realizar este trabajo, gracias porllegar a mi vida Alex.

    A mi asesor.

    No hay palabras, gesto u expresin para darte mi enorme gratitud amigo, penosamente escribo esto:

    ms vale tarde que nunca, creme que sin tu apoyo, sin tu confianza y sobre todo, sin tupaciencia, este trabajo no habra sido posible, gracias por tantos consejos, gracias por compartir tuconocimiento conmigo y con muchos estudiantes. Gracias por tu comprensin en cada situacin yms an, gracias por tu incondicional amistad.

    A mis profesores.

    En mi experiencia de vida me he percatado que hay muy pocas oportunidades en la vida deconvertirse en inmortal, y una de esas pocas oportunidades que existen es, siendo profesor, es laforma en que los inmortalizamos, yo an recuerdo de forma lucida cada uno de mis profesores, ydonde quiera que estn, reciban un testimonio de gratitud por tanta enseanza, por tanto apoyo, porsus consejos de vida, gracias por contribuir en nuestra formacin, en especial, gracias a usted Lic.Laura Salazar Viveros.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    12/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________1

    CCAAPPTTUULLOO11

    ANTECEDENTES Y CONCEPTOS BSICOS.

    En este capitulo se abordan los antecedentes y conceptos bsicos sobre InteligenciaArtificial y Sistemas Expertos, as mismo se presenta la historia de la Inteligencia Artificialdesde Turing hasta la creacin de sistemas Expertos.

    El objetivo de este capitulo es mostrar un panorama general sobre la InteligenciaArtificial y los Sistemas Expertos para abordar con mayor claridad los siguientes captulos.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    13/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________2

    1.1Introduccin.Se sabe que una de las caractersticas de los seres vivos es la inteligencia, que todos

    tienen una capacidad o grado distinto de inteligencia, que depende de factores biolgicos,psicolgicos y de desarrollo mental, pero; que se entiende realmente por Inteligencia.

    A continuacin se revisarn algunos conceptos generales sobre inteligencia:

    Inteligencia es la aptitud de crear relaciones. Esta creacin puede darse demanera puramente sensorial, como en la inteligencia animal; tambin puede darsede manera intelectual, como en el ser humano, que pone en juego el lenguaje y losconceptos.

    Inteligencia, tambin se la puede conceptuar como la habilidad para adquirir,comprender y aplicar conocimiento; o como la aptitud para recordar, pensar y

    razonar. Inteligencia,podemos tambin decir que es la capacidad para solucionar problemas

    lo cual requiere de conocimiento y relaciones.

    Como se pude observar, los conceptos de inteligencia son relativos y variables pero engeneral estn relacionados a la capacidad de crear relaciones y generar conocimiento paraaplicarlos en la solucin de problemas; est tcitamente demostrado que inteligencia yconocimiento son conceptos ntimamente ligados.

    Finalmente se puede decir que el concepto de inteligencia es variable dependiendo deltipo de investigador; es decir los conceptos de inteligencia de un psiclogo, un antroplogo,un abogado u otro profesional pueden ser distintos y vlidos para sus respectivas reas.

    1.2 Concepto de Inteligencia Artificial.

    No existe una definicin concreta de Inteligencia Artificial, pero la mayora de losautores coinciden en que es, en esencia, lograr que una mquina tenga inteligencia propia,es decir: La inteligencia artificial es una de las reas ms fascinantes y con ms retos delas ciencias de la Computacin ya que ha tomado a la inteligencia como la caractersticauniversalmente aceptada para diferenciar a los humanos de otras criaturas ya sean vivas oinanimadas, para construir programas o computadoras inteligentes.1

    Esta es una definicin es muy completa e interesante, pero no es la nica, para

    algunos otros autores, la Inteligencia Artificial es el estudio de cmo hacer que lascomputadoras hagan cosas que, en estos momentos, hace mejor el hombre2. Para otros, laInteligencia Artificial (IA) es una ciencia que intenta la creacin de programas paramquinas que imiten el comportamiento y la compresin humana, que sea capaz deaprender, reconocer y pensar3.

    11 DE VILA Ramos, Jorge. Sistemas Expertos.URL(http://www.lafacu.com/apuntes/informatica/sist_expe/)De Avila Ramos, Jorge. Sistemas Expertos.

    2CRIADO Briz, Jos Mario. Introduccin a los Sistemas Expertos.URL(www.ingenieroseninformatica.org/recursos/tutoriales/sist_exp/index.php)3actual3 HURTADO Vega, Jos de Jess. Inteligencia Artificial.URL(http://www.itlp.edu.mx/publica/boletines /inteligencia.html)

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    14/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________3

    Pero sea cual sea el concepto, la inteligencia artificial est orientada a conseguir quelas mquinas realicen trabajos donde se aplique la inteligencia, el razonamiento y elconocimiento de un ser humano.

    1.3 Historia de la Inteligencia Artificial.

    Desde tiempos muy remotos en la historia el hombre ha soado con crear mquinascon inteligencia propia, muestra de esto pueden ser: el mito del coloso de Rodas entre losgriegos, las estatuas "parlantes" del medioevo, el androide de Von Kempel en que jug alajedrez con Napolen, y el "motor analtico" de Charles Babbage que calculabalogaritmos4; sin embargo estos intentos resultaron infructuosos, hasta 1943 cuando la basede la Inteligencia Artificial fue asentada, gracias a Warren Mc Culloch y Walter Pitts,quienes propusieron un modelo de neurona de cerebro humano y animal. Estas neuronasnerviosas informticas proporcionaron una representacin simblica de la actividad

    cerebral. Un tiempo despus, Nobert Wiener tom estas y otras ideas y las elabor dentrode un mismo campo que se llam Ciberntica, a partir de cual nacera, la InteligenciaArtificial5.

    Un evento que marc en forma definitiva el ingreso de la Inteligencia Artificial enlas Ciencias, fue el congreso en Darthmouth en 1956 en la cual se lleg a la definicin delas presuposiciones bsicas del ncleo terico de la Inteligencia Artificial: El reconocimiento de que el pensamiento puede ocurrir fuera del cerebro, es decir, enmquinas.

    La presuposicin de que el pensamiento puede ser comprendido de manera formal y

    cientfica.

    La presuposicin de que la mejor forma de entenderlo es a travs de computadorasdigitales6.

    En la dcada de los 50's, hubo dos corrientes de investigacin tras la propuesta deAlan Turing sobre la inteligencia de las mquinas en su artculo MaquinariaComputacional e inteligencia: la primera corriente fue fundada por John Von Neuman,quien trat de hacer analogas del cerebro humano y construy a partir de esto lascomputadoras. As, construy varias mquinas que tomaban como base los conocimientosque hasta ese entonces existan sobre el cerebro humano, y dise los primeros programasque se almacenaban en la memoria de una computadora7.

    La otra corriente fue la que inici Mc Culloch, quien deca que las leyes quegobiernan al pensamiento deben buscarse entre las reglas que gobiernan a la informacin yno entre las que gobiernan a la materia. Es decir, que a diferencia de Von Neuman, quientrataba de imitar las condiciones fsico-qumicas del cerebro, Mc Culloch se centr ms enla forma en que el cerebro procesa la informacin.

    4ELGUEA, Javier. Inteligencia artificial y psicologa: la concepcin contempornea de lamente humana.URL(http://www.hemerodigital.unam.mx/ANUIES/itam/estudio/estudio10/sec_16.html)5 HURTADO Vega, Jos de Jess. Op. cit.6ELGUEA, Javier. Op. cit.7Ibid.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    15/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________4

    El trabajo realizado por Mc Culloch, quien se uni a Walter Pitts fue el primertrabajo de IA, y aport conocimientos sobre la fisiologa bsica y funcionamiento de lasneuronas en el cerebro, el anlisis formal de la lgica proposicional de Russell y Whiteheady la teora de computacin de Turing. Ambos propusieron un modelo constituido porneuronas artificiales, en el que cada una de ellas se caracterizaba por estar encendida oapagada; el encendido se daba como respuesta a la estimulacin producida por unacantidad suficiente de neuronas vecinas.

    Una vez que se sentaron las bases de la IA, los investigadores de dicha ciencia semostraron optimistas sobre el futuro de la nueva ciencia que acababa de nacer; algunos deellos expresaron diversas predicciones acerca de lo que poda desarrollarse dentro de la IA.Por ejemplo, Herbert Simon en 1958 predijo que en un lapso de 10 aos una computadorallegara a ser campeona de ajedrez, y que sera posible realizar mediante la maquina lademostracin de un nuevo e importante teorema matemtico. Sin embargo, el obstculo que

    enfrent la mayora de los proyectos de investigacin en IA consisti en que aquellosmtodos que demostraban funcionar en uno o dos ejemplos sencillos, fallabanrotundamente cuando se utilizaban en problemas mas variados o de mayor dificultad 8.

    Los primeros programas de IA fallan debido a que contaban con poco o ningnconocimiento de la materia objeto de estudio, un ejemplo de esto es el programa ELIZA deWeizenbaum, el cual aparentemente poda entablar una conversacin seria sobre cualquiertema, sin embargo, lo nico que haca este programa era tomar prestadas y manipular lasoraciones que mediante un teclado proporcionaba un ser humano.

    Otro problema muy comn en los primeros programas que intentaban simular el

    pensamiento humano era la intratabilidad de muchos de los problemas que se estabanintentando resolver mediante IA. La mayora de los primeros programas de IA se basabanen la presentacin de las caractersticas bsicas de un problema y se sometan a pruebadiversos pasos, hasta que se llegara a encontrar aquella combinacin de estos queprodujeran la solucin esperada. Sin embargo, si una combinacin sencilla no llegaba a lasolucin del problema a resolver, los primeros programas de IA no eran capaces de probarcon combinaciones ms complejas, por lo que se limitaban a mostrar un mensaje indicandoque el problema no se poda resolver, cuando lo que en verdad suceda era que el programano estaba dotado con la suficiente inteligencia para resolver dicho problema.

    La naturaleza de la resolucin de problemas durante la primera dcada de la

    investigacin de IA resida en un mecanismo de bsqueda de propsito general en el que seentrelazaban pasos de razonamiento elementales para encontrar as soluciones completas. Aestos procedimientos se les han denominado mtodos dbiles, debido a que la informacinsobre el dominio con que cuenta es dbil.

    El programa DENDRAL de Buchann constituye uno de los primeros ejemplos deeste enfoque. Fue diseado en Stanford, donde Ed Feigenbaum, Bruce Buchanan y JoshuaLederberg colaboraron en la solucin del problema de inferir una estructura molecular apartir de la informacin proporcionada por un espectrmetro de masas.

    8RUSSELL, Stuart y Peter Norving. Inteligencia Artificial: Un enfoque moderno.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    16/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________5

    El programa se alimentaba con la frmula elemental de la molcula (C6H13NO2).La primera versin del programa generaba todas las posibles estructuras quecorrespondieran a la formula, luego predeca el espectro de masa que se observara en cadacaso, y comparaba estos con el espectro real. As fue como comenzaron los primerosdesarrollos e investigaciones sobre la Inteligencia Artificial.

    1.4. Campos de la Inteligencia Artificial.

    La Inteligencia Artificial se divide en campos de estudio los cuales se resumen en lasiguiente figura:

    Figura 1.1reas de estudio e investigacin de la Inteligencia Artificial

    Simulacin Sensorial.

    rea de la IA que a travs de las computadoras persigue la imitacin de las

    capacidades o habilidades sensoriales humanas tales como vista, odo, habla y tacto. Loanterior incluye visin computacional, procesamiento de imgenes y reconocimiento deescenas.

    Robtica.

    Estudia la imitacin del movimiento humano a travs de robots, los cuales soncreados con el fin de apoyar procesos mecnicos repetitivos que requieren gran precisin.Algunos procesos pueden ser: pintura y acabados, movimiento de materiales,reconocimiento de defectos, etc.

    SIMULACION SENSORIAL

    Odo, vista, tacto, gusto, olfato, etc.

    ROBTICA

    Apoyo a trabajos mecnicos yrepetitivos

    LENGUAJES NATURALES

    Comunicacin con computador

    SISTEMAS EXPERTOS

    Apoyo a decisiones

    Inteligencia

    Artificial

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    17/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________6

    Lenguajes Naturales.

    Se enfoca en el diseo y desarrollo de software capaz de aceptar, interpretar yejecutar instrucciones dadas por los usuarios en su lenguaje nativo.

    Sistemas Expertos, Sistemas basados en conocimientos o Sistemas con base deconocimientos.

    Permiten cargar bases de conocimientos integradas por una serie de reglas desentido comn o conocimiento heurstico; es decir conocimiento basados u obtenidos atravs de la experiencia de un especialista o experto dentro de un dominio especfico delsaber. Una vez cargada esta base de conocimientos mltiples usuarios la pueden usar paraconsulta, apoyo a la toma de decisiones, capacitacin, etc.

    Redes Neuronales.

    rea de la Inteligencia Artificial que trata de simular el comportamiento biloggicode las neuronas del cerebro humano en la resolucin de problemas. Principalmente, se usaen el campo de los pronsticos.

    Algoritmos genticos.

    Algoritmos basados en principios de GENETICA como herencia, mejoramiento deespecies los cuales tratan de encontrar soluciones mejores a los problemas.

    Con todo lo anterior, los campos diversos de la IA pueden comprender:

    Aprendizaje:

    Captacin automtica de conocimientos.

    Razonamiento:

    Sistemas basados en conocimientos o sistemas expertos. Bases de datos inteligentes. Prueba de teoremas y juegos.

    Redes Neuronales. Algoritmos Genticos.

    Percepcin:

    Comprensin de lenguaje natural. Interpretacin de escenas visuales (Visin por computadora).

    Locomocin y Manipulacin:

    Realizar procesos mecnicos y tareas manuales (Robtica).

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    18/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________7

    Algunas de las tareasque estos sistemas realizan en el campo de la IA son:

    Tareas generales:

    Percepcin: Visin, Fonemas. Lenguaje Natural: Comprensin, generacin y traduccin. Razonamiento de sentido comn. Control de robots.

    Tareas formales:

    Juegos: Ajedrez, Damas. Matemticas: Geometra, Lgica, Clculo Integral.

    Tareas expertas:

    Ingeniera: Diseo, Localizacin de fallas, Planeamiento. Anlisis Cientfico. Diagnstico Mdico. Anlisis Financiero.

    1.5 Los Sistemas Expertos:

    Se puede decir que los Sistemas Expertos son el primer resultado operacional de laInteligencia artificial, pues logran resolver problemas a travs del conocimiento yraciocinio de igual forma que lo hace el experto humano.

    Un Sistema Experto (SE), es bsicamente un programa de computadora basado enconocimientos y raciocinio que lleva a cabo tareas que generalmente slo realiza un expertohumano9; es decir, es un programa que imita el comportamiento humano en el sentido deque utiliza la informacin que le es proporcionada para poder dar una opinin sobre untema en especial. Otros autores lo definen como sigue: un Sistema Experto es un programade computadora interactivo que contiene la experiencia, conocimiento y habilidad propiosde una persona o grupos de personas especialistas en un rea particular del conocimientohumano, de manera que permitan resolver problemas especficos de se rea de manerainteligente y satisfactoria10. La tarea principal de un SE es tratar de aconsejar al usuario11.

    Los usuarios que introducen la informacin al SE son en realidad los expertoshumanos, y tratan a su vez de estructurar los conocimientos que poseen para ponerlosentonces a disposicin del sistema12. Los SE son tiles para resolver problemas que sebasan en conocimiento.

    9PARSAYE, Kamran, Mark Chignell, Setrag Khoshafian y Harry Wong. Intelligent Databases.10DE MIGUEL Gonzlez, Luis Javier. Tcnicas de mantenimiento predictivo industrial basadasen Sistemas Expertos. URL(http://www.cartif.es/mantenimiento/expertos.html)11 SCHILDT Herbert, Utilizacin de C en Inteligencia Artificial.12 CRIADO Briz, Jos Mario. Sistemas Expertos. URL(http://home.worldonline.es/mariocr/)

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    19/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________8

    Las caractersticas principales de este tipo de problemas, segn algunos autores, son:

    Utilizan normas o estructuras que contengan conocimientos y experiencias deexpertos especializados.

    Se obtienen conclusiones a travs de deducciones lgicas. Contienen datos ambiguos. Contienen datos afectados por factores de probabilidad13.

    Con base en lo anterior, algunos investigadores de IA sealan que un SE debe cumplircon las siguientes caractersticas:

    Tener un amplio conocimiento especfico del rea de especializacin. Aplicar tcnicas de bsqueda.

    Tener soporte para Anlisis Heurstico. Poseer habilidad para inferir nuevos conocimientos ya existentes. Tener la capacidad de procesar smbolos. Tener la capacidad para explicar su propio razonamiento14.

    1.6 Tipos de Sistemas Expertos.

    Hay muchos puntos de vista desde los cuales se pueden clasificar los SistemasExpertos. Algunos de ellos son:

    Por la forma de almacenar conocimiento: se pueden distinguir sistemas basadosen reglas y sistemas basados en probabilidad. As en el primer caso, elconocimiento se almacena en forma de hechos y reglas, mientras que el segundo, labase de conocimientos est constituida por hechos y sus dependenciasprobabilsticas; en el primer caso el motor de inferencia opera medianteencadenamiento de reglas hacia atrs y adelante, mientras que el segundo casoopera mediante la evaluacin de probabilidades condicionales. Finalmente tambinhay diferencias en la adquisicin del conocimiento y el mtodo de explicacin. Unacomparacin de ambos casos puede verse en la tabla 1.1

    En cuanto a las ventajas e inconvenientes de uno y otro puede mencionarse que en el

    caso de los Sistemas Probabilsticos, el motor de inferencia es muy rpido, ya que todas lasimplicaciones estn presentes y solo se ha de determinar con que probabilidad se da unadeterminada implicacin. En cuanto a los Sistemas basados en Reglas, la principal ventajaes el hecho de que el mecanismo de explicacin es sencillo, al tener presente el sistema lasreglas que han sido disparadas. Otra ventaja es que nicamente se emplean las reglasnecesarias en cada caso, sin necesidad de evaluar toda una estructura probabilstica.

    13CRIADO Briz, Jos Mario. Sistemas Expertos. Op. cit.14ROLSTON, David W. Principios de inteligencia artificial.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    20/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________9

    Elementos Modelo probabilistico Modelo basado en reglas

    Base de conocimiento. Abstracto: Estructuraprobabilstica (sucesosdependientes).Concreto: Hechos.

    Abstracto: reglas

    Motor de inferencia.Evaluacin deprobabilidadescondicionales (Teoremas deBayes).

    Encadenamiento hacia atrsy hacia delante.

    Subsistema de explicacin Basado en probabilidadescondicionales.

    Basado en reglas activas.

    Adquisicin deconocimiento

    Espacio probabilsticoParmetros.

    Reglas.Factores de certeza.

    Subsistema de aprendizaje Cambio en la estructura delespacio probabilstico.Cambio en los parmetros.

    Nuevas reglas.Cambio en los factores decerteza.

    Tabla 1.1 Comparacin entre sistemas basados en reglas y sistemas basados en

    probabilidad.

    Por la naturaleza de la tarea a realizar: as se tiene cuatro posibilidades:

    o Diagnostico o Clasificacin: se conocen soluciones y se tratan declasificarlas o diagnosticarlas en funcin de una serie de datos. Por ejemplo:sistema de diagnstico medico.

    o Monitorizacin: anlisis del comportamiento de un sistema buscandoposibles fallos, en este caso es importante contemplar la evolucin delsistema pues no siempre los mismos datos dan lugar a idnticas soluciones.

    o Diseo: se busca la construccin de la solucin a un problema, que enprincipio es desconocida, a partir de datos y restricciones a satisfacer.

    o Prediccin: se estudia el comportamiento de un sistema.

    Por la interaccin del usuario:

    o Apoyo: el sistema aconseja el usuario, que mantiene la capacidad de unaltima decisin. Por ejemplo, el diagnostico mdico.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    21/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________10

    o Control: el sistema acta directamente sin intervencin humana.

    o Critica: Su misin es analizar y criticar decisiones tomadas por el usuario.

    Por la limitacin de tiempo para tomar decisiones:

    o Tiempo ilimitado: por ejemplo, aquellos que emplean conocimiento casual,que busca orgenes de un problema que ha ocurrido y cuyo anlisis nonecesita ser inmediato.

    o Tiempo limitado (tiempo real): sistemas que necesitan actuar controlando omonitorizando dispositivos y que han de tomar decisiones inmediatas frentea los problemas que surjan. Por ejemplo el control de una red decomunicaciones.

    Por la variabilidad temporal del conocimiento:

    o Estticos: la base del conocimiento no se altera durante el proceso dedecisin.

    o Dinmicos: ocurren cambios en la base de conocimiento durante la toma dedecisiones. Estos cambios pueden ser predecibles o impredecibles y ademspueden, bien aadir informacin, bien modificar la informacin ya existente.

    Por la naturaleza del conocimiento almacenado:

    o Basado en experiencia: el conocimiento se basa en experiencias o hechosocasionados conocidos por el experto, pero sin que existe una causa clarapara los efectos que se observan.

    o Basado en relaciones causa-efecto.

    Por la certeza de la informacin:

    o Completa o perfecta:se conocen todos los datos y reglas necesarios para ladecisin.

    o Imperfecta: que puede ser incompleta (falta informacin para tomardecisiones), Datos inciertos (o no confirmados), Conocimientos incierto(reglas no siempre validas), Terminologa ambigua (dobles sentidos, etc.).

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    22/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________11

    1.7 Desarrollo histrico de los Sistemas Expertos.

    Los Sistemas Expertos como tales, surgen a mediados de los aos sesenta; en esostiempos, se crea que bastaban unas pocas leyes de razonamiento junto con potentescomputadoras para producir resultados brillantes15. Los primeros investigadores quedesarrollaron programas basados en leyes de razonamiento fueron Alan Newell y HerbertSimon, quienes desarrollaron el GPS (General Problem Solver).

    Este sistema era capaz de resolver problemas como el de las torres de Hanoi y otrossimilares, a travs de la criptoaritmtica. Sin embargo, este programa no poda resolverproblemas ms cotidianos y reales, como, por ejemplo, dar un diagnstico mdico.

    Entonces algunos investigadores cambiaron el enfoque del problema: ahora sededicaban a resolver problemas sobre un rea especfica intentando simular el

    razonamiento humano. En vez de dedicarse a computarizar la inteligencia general, secentraron en dominios de conocimiento muy concretos16. De esta manera nacieron losSistemas Expertos.

    El primer SE que se aplic a problemas ms reales fue desarrollado en 1965 con elfin de identificar estructuras qumicas: el programa se llam DENDRAL. Lo que esteSistema Experto haca, al igual que lo hacan los expertos de entonces, era tomar unashiptesis relevantes como soluciones posibles, y someterlas a prueba comparndolas conlos datos17. El nombre DENDRAL significa rbol en griego. Debido a esto, el programa fuebautizado as porque su principal tarea era buscar en un rbol de posibilidades la estructuradel compuesto.

    El siguiente SE que caus gran impacto fue el Mycin, en 1972, pues su aplicacinera detectar trastornos en la sangre y recetar los medicamentos requeridos. Fue tal el xitode Mycin que incluso se lleg a utilizar en algunos hospitales18. Para 1973, se creTieresias, cuya funcin era la de servir de intrprete o interfaz entre los especialistas quemanejaban el Mycin cuando introducan nuevos conocimientos19. Tieresias entraba enaccin cuando Mycin cometa un error en un diagnstico, por la falta de informacin o poralguna falla en el rbol de desarrollo de teoras, corrigiendo la regla que generaba elresultado o bien destruyndola.

    Para 1980 se implant en la Digital Equipment Corporation (DEC) el primer

    Sistema Experto: el XCON. Para esto se tuvieron que dedicar dos aos al desarrollo de esteSE. Y vali la pena para la compaa, pues an cuando en su primer intento al implantarseen 1979 consigui slo el 20% del 95% de la resolucin de las configuraciones de todas lascomputadoras que salieron de DEC, volvi al laboratorio de desarrollo otro ao ms, y a suregreso le result en un ahorro de 40 millones de dlares a dicha compaa.

    15SAMPER Mrquez, Juan Jos. Sistemas Expertos: El conocimiento al poder.URL(http://www.psycologia.com/articulos/ar-jsamper01.htm).16Ibid.17ROOS, Rita. Historia de los Sistemas Expertos.URL(http://www.monografias.com/trabajos10/exper/exper.shtml).1818HURTADO Vega, Jos de Jess. Op. cit.1919ROOS, Rita. Op. cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    23/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________12

    Para los aos comprendidos entre 1980 y 1985 se crearon diversos sistemasexpertos, tales como el DELTA de la General Electric Company, el cual se encargaba dereparar locomotoras diesel y elctricas, o como Aldo en Disco, que reparaba calderashidrostticas giratorias usadas para la eliminacin de bacterias.

    En esa misma poca surgen empresas dedicadas a desarrollar Sistemas Expertos, lascuales que supusieron en conjunto una inversin total de ms de 300 millones de dlares.Los productos ms importantes que creaban estas nuevas compaas eran las "mquinasLISP", las cuales consistan en unas computadoras que ejecutaban programas LISP con lamisma rapidez que en una computadora central.

    Desgraciadamente para DEC, el SE que antes fuera un gran ahorro dej de ser rentable en1987, debido a que al actualizarlo llegaron a gastar ms de dos millones de dlares al aopara darle mantenimiento, por lo que su benefici qued en duda, y por lo tanto fue

    descontinuado; algo similar ocurri con DELTA20.

    A continuacin la Tabla 1.2 presenta de manera resumida los primeros SistemasExpertos y sus aplicaciones21.

    Sistema Fecha Autor Aplicacin

    DENDRAL 1965 StanfordDeduce informacin sobreestructuras qumicas.

    Macsyma 1965 MITAnlisis matemticocomplejo.

    HearSay 1965 Carnegie - Mellon Interpreta en lenguajenatural un subconjunto delidioma.

    Mycin 1972 StanfordDiagnstico deenfermedades de la sangre.

    Tieresias 1972 StanfordHerramienta para latransformacin deconocimientos.

    Prospector 1972 StanfordExploracin mineral yherramientas deidentificacin.

    Age 1973 Stanford Herramienta para generarSistemas Expertos.

    OPS5 1974 Carnegie - MellonHerramientas paradesarrollo de SistemasExpertos.

    20ROOS, Rita. Op. cit.2121ROLSTON, David. Op. cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    24/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________13

    Continuacin de la tabla 1.2

    Tabla 1.2Primeros Sistemas Expertos y sus aplicaciones.

    Sistema Fecha Autor Aplicacin

    Caduceus 1975University ofPittsburg

    Herramienta dediagnstico para medicinainterna.

    Rosie 1978 RandHerramienta de desarrollode Sistemas Expertos.

    R1 1978 Carnegie - MellonConfigurador de equipos dcomputacin para DEC.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    25/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________14

    CCAAPPTTUULLOO22

    GENERALIDADES DE LOS SISTEMASEXPERTOS.

    En este capitulo se presenta las generalidades de los Sistemas Expertos as comoalgunas comparaciones entre diferentes expertos, as como la interaccin de los humanoscon los Sistemas Expertos.

    El objetivo de este capitulo es mostrar el grado de desercin entre un sistemaartificial y un sistema natural.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    26/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________15

    2.1 Introduccin.

    Desde su aparicin, a mediados de 1960, los Sistemas Expertos se han definidocomo aquellos programas que se basan en el conocimiento y tratan de imitar elrazonamiento de un experto para resolver un problema de un tpico definido. Sucomportamiento se basa generalmente en reglas, es decir, se basa en conocimientospreviamente definidos, y mediante estos conocimientos, los SE son capaces de tomardecisiones. Sera ilgico pensar que solo existe una definicin de Sistemas Expertos, ya quetanto los SE como la propia IA han ido evolucionando a la par a travs de los aos 22.

    2.2 Definicin de Sistema Experto.

    En el Congreso Mundial de IA Feigenbaum se defini a los SE como:

    Un programa de computador inteligente que usa el conocimiento yprocedimientos de inferencia para resolver problemas que son losuficientemente difciles como para requerir la intervencin de un expertohumano para su resolucin.

    Sin embargo con los avances conseguidos hasta ahora esta definicin ha cambiado,actualmente un SE define de la siguiente manera:

    Un SE es un sistema informtico que simula los procesos de aprendizaje,memorizacin, razonamiento, comunicacin y accin de un experto humanoen una determinada rama de la ciencia, suministrando, de esta forma, unconsultor que puede sustituirle con unas ciertas garantas de xito23.

    Podemos agregar otro concepto actual, dado por la Asociacin Argentina deInteligencia Artificial:

    Los Sistemas Expertos permiten el desarrollo de otros sistemas querepresentan el conocimiento como una serie de reglas. Las distintasrelaciones, conexiones y afinidades sobre un tema pueden ser compiladas enun Sistema Experto pudiendo incluir relaciones altamente complejas y conmltiples interacciones24.

    Las caractersticas mencionadas en las definiciones anteriores le permiten a unSistema Experto almacenar datos y conocimiento, sacar conclusiones lgicas, ser capacesde tomar decisiones, aprender, comunicarse con expertos humanos o con otros SistemasExpertos, explicar el razonamiento de su decisin y realizar acciones como consecuencia detodo lo anterior25.

    22DE VILA Ramos, Jorge. Op. cit.23Ibid.24ASOCIACIN ARGENTINA DE LA INTELIGENCIA ARTIFICIAL. Glosario.URL(http://www.lafacu.com/apuntes/ingenieria/asocoacion_argentina_de_inteligencia_artificial/asocoacion_argentina_de_inteligencia_artificial.html)25DE VILA Ramos, Jorge. Op. Cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    27/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________16

    Un problema se presta a ser resuelto usando un Sistema Experto cuando:

    Una solucin del problema tiene una rentabilidad tan alta que justifica eldesarrollo de un sistema, pues las soluciones son necesidades del rea y nose ha trabajado en otros mtodos para obtenerla.

    El problema puede resolverse slo por un conocimiento experto que puededar forma a los conocimientos necesarios para resolver el problema, y laintervencin de experto dar al sistema la experiencia que necesita.

    El problema puede resolverse solamente por un conocimiento experto en vezde usar algoritmos particulares.

    Se tiene acceso a un experto que puede dar forma a los conocimientosnecesarios para resolver el problema. La intervencin de este experto dar alsistema la experiencia que necesita.

    El problema puede o no tener una solucin nica. Los Sistemas Expertosfuncionan mejor con problemas que tienen un cierto nmero de solucionesaceptables.

    El problema cambia rpidamente, o bien el conocimiento es el que cambiarpidamente, o sus soluciones son las que cambian constantemente.

    El desarrollo de un Sistema Experto no se considera que est acabado unavez que funciona este, sino que continan desarrollando y actualizando tantoel conocimiento del sistema como los mtodos de procesamiento, quedandoreflejados los progresos o modificaciones en el campo, rea o sistema26.

    2.3 Los expertos humanos.

    Un experto humano es una persona que es competente en un rea determinada delconocimiento o del saber. Un experto humano es alguien que sabe mucho sobre un temadeterminado y que puede dar un consejo adecuado. Esta experiencia slo se adquiere tras

    un largo aprendizaje y a base de mucha experiencia

    27

    . Los expertos humanos tienen lassiguientes caractersticas generales:

    Son personas raras, tanto por su escaso nmero como su comportamientopoco ortodoxo y e incomprensible frente a los problemas con los que seenfrentan.

    Son caros por dos motivos: por su escaso nmero y por necesitar un largoperiodo de aprendizaje.

    26 GONZLEZ Ayala, Luis Enrique. Sistemas Expertos.URL(http://www.prodigyweb.net.mx/enrayala/Sistemas.htm)27BRIAN Keith y Steven Brain, Inteligencia artificial en el dragn.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    28/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________17

    No estn siempre disponibles, pues son humanos y cuando se jubilan omueren se llevan con ellos todos sus conocimientos. Es por eso quetradicionalmente estn acompaados de un aprendiz.

    Hay expertos que tienen mal carcter, son informales o poco comunicativos,lo que a veces les hace antipticos.

    La forma ms rpida de formar a un experto es mediante el aprendizaje formal oacadmico (conocimiento profundo) en un principio, y posteriormente un aprendizajeinformal o prctico (conocimiento informal).28

    2.4 Diferencias entre un experto y un no experto humano.

    Experto No expertoTiempo de Resolucin Pequeo GrandeEficacia Resolutiva Alta BajaOrganizacin Alta BajaEstrategias y Tcticas S NoBsqueda de Soluciones Heurstica No HeursticaClculos Aproximados S No

    Tabla 2.1Diferencias entre un experto y un no experto humano.

    El uso de heursticas contribuye grandemente a la potencia y flexibilidad de los SE

    y tiende a distinguirlos an mas del software tradicional.29

    2.5 Diferencias entre un Sistema Experto y un programa tradicional.

    Sistema Experto Programa TradicionalConocimiento En programa e independiente En programa y circuitosTipo de datos Simblicos NumricosResolucin Heurstica CombinatoriaDef. problema Declarativa ProcedimentalControl Independiente. No secuencial Dependiente. Secuencial

    Conocimientos Imprecisos PrecisosModificaciones Frecuentes RarasExplicaciones S NoSolucin Satisfactoria OptimaJustificacin S NoResolucin rea limitada EspecficoComunicacin Independiente En programaTabla 2.2Diferencias entre un Sistema Experto y un Programa Tradicional.

    28SNCHEZ y Beltrn, Juan Pablo. Sistemas expertos: Una metodologa de programacin.29ROLSTON, David W. Op. cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    29/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________18

    2.6 Diferencias entre un sistema experto y un experto humano.

    Sistema experto Experto humanoConocimiento Adquirido Adquirido + InnatoAdquisicin del conocimiento Terico Terico + PrcticoCampo nico MltiplesExplicacin Siempre A vecesLimitacin de capacidad S S, no valuableReproducible S, idntico NoVida Infinita FinitaTabla 2.3Diferencias entre un Sistema Experto y un Experto Humano.

    2.7 Ventajas de los Sistemas Expertos.

    Las ventajas que se presentan a continuacin son en comparacin con los expertoshumanos:

    Estn siempre disponibles a cualquier hora del da y de la noche, y de formainterrumpida.

    Mantiene el humor. Pueden duplicarse (lo que permite tener tantos SE como se necesiten). Pueden situarse en el mismo lugar donde sean necesarios. Permiten tener decisiones homogneas efectuadas segn las directrices que se les

    fijen. Son fciles de reprogramar. Pueden perdurar y crecer en el tiempo de forma indefinida. Pueden ser consultados por personas u otros sistemas informticos.30

    2.8 Forma en que los usuarios interactan con los Sistemas Expertos.

    El usuario de un Sistema Experto puede estar operando en cualquiera de lossiguientes modos:

    Verificador.El usuario intenta comprobar la validez del desempeo del sistema.

    Tutor.El usuario da informacin adicional al sistema o modifica el conocimiento que yaest presente en el sistema.

    Alumno.El usuario busca rpidamente desarrollar pericia personal relacionada con el reaespecfica mediante la recuperacin de conocimientos organizados y condensados delsistema.

    30SNCHEZ y Beltrn, Juan Pablo. Op. cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    30/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________19

    Cliente.El usuario aplica la pericia del sistema a tareas especficas reales.

    El reconocimiento de las caracterizaciones anteriores contrasta con la percepcin deun simple papel (el cliente) de los sistemas tradicionales de software.31

    2.9 Sistema Experto vs. Sistema Clsico.

    La siguiente tabla compara las caractersticas de ambos tipos de sistemas.32

    Sistema Clsico Sistema ExpertoConocimiento y procesamientocombinados en un programa

    Base de conocimiento separada delmecanismo de procesamiento

    No contiene errores Puede contener erroresNo da explicaciones, los datos slo se usano escriben

    Una parte del sistema experto consiste enel mdulo de explicacin

    Los cambios son tediosos Los cambios en las reglas son fciles

    El sistema slo opera completoEl sistema puede funcionar con pocasreglas

    Se ejecuta paso a paso La ejecucin usa heursticas y lgicaNecesita informacin completa para operar Puede operar con informacin incompletaRepresenta y usa datos Representa y usa conocimientoTabla 2.4Comparativa entre un Sistema Clsico y un Sistema Experto

    31ROLSTON, David W. Op. cit.32DE VILA Ramos, Jorge. Op. cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    31/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________20

    CCAAPPTTUULLOO33

    REPRESENTACIN DEL CONOCIMIENTO.

    Este capitulo aborda un panorama de las distintas formas mediante las cuales sepuede adquirir el conocimiento as como sus representacin, ya que esto es sumamente

    importante en la programacin de Sistemas Expertos.

    El objetivo del presente capitulo es presentar las formar probadas y que han dadoresultados en la fase de adquisicin de conocimiento, ya que es importante mencionar queesta es una de las fases ms complejas en la fabricacin de estos sistemas.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    32/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________21

    3.1 Introduccin.

    En Ciencias de la Informacin, se acostumbra a definir un continuoprogresivamente complejo, integrado por los datos, la informacin, el conocimiento y lasabidura. As, se define al conocimiento como el conjunto organizado de datos einformacin destinados a resolver un determinado problema.

    La ciencia obtiene conocimiento siguiendo un mtodo denominado mtodocientfico o mtodo experimental, y al conocimiento as obtenido se lo denominaconocimiento cientfico.

    Sin embargo, el concepto de conocimiento es ms general que el de conocimientocientfico. Es as que las creencias religiosas constituyen un tipo especial de conocimiento,diferente del cientfico, aunque s es fuente de conocimiento. Segn Platn, el conocimientose caracteriza por ser necesariamente verdadero (episteme). De otro modo, la mera creenciay opinin (ignorante de la realidad de las cosas) quedan relegadas al mbito de lo probabley lo aparente.

    Una certeza que el da de maana probara ser falsa, en verdad nunca habra sidoconocimiento. Y en efecto, esta vinculacin entre conocimiento-verdad-necesidad formaparte de toda pretensin de conocimiento ora filosfico, ora cientfico, en el pensamientooccidental.

    En general, para que una creencia constituya conocimiento cientfico no basta conque sea vlida y consistente lgicamente, pues ello no implica de suyo su verdad. As por

    ejemplo, tngase un sistema lgico deductivo consistente y vlido. Niguese la totalidad delas premisas del sistema, y se obtendr un sistema igualmente consistente y vlido, slo quecontradictorio al sistema previo. De tal manera, validez no garantiza verdad. Para que unateora deba ser considerada como verdadera, deben existir, desde el punto de vista de laciencia, pruebas que la apoyen. Es decir, debe poder demostrarse su verosimilitudempleando el mtodo cientfico, tambin conocido como mtodo experimental.

    Ello sin embargo se ve seriamente complicado si se introducen interrogantesrelativas a la suficiencia de dicho mtodo, como por ejemplo, la transparencia de los hechos(existen los hechos puros o ms bien interpretaciones?), la factibilidad de la pretensin deobjetividad y neutralidad valrica (es posible la comprensin de la realidad desde un punto

    de vista neutro, tal como fuera el de un dios, o estamos condenados a perspectivas?), etc.

    3.2 Definicin de conocimiento.

    El conocimiento es la comprensin adquirida, implica aprendizaje, concienciacin yfamiliaridad con una o ms materias; el conocimiento se compone de ideas, conceptos,hechos y figuras, teoras, procedimientos y relaciones entre ellos, y formas de aplicar losprocedimientos a la resolucin prctica de problemas.33

    33DE MIGUEL Gonzlez, Luis Javier. Op. cit

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    33/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________22

    El conocimiento que ha de funcionar en un SE es el conocimiento heurstico; elconocimiento heurstico es aquel conocimiento que ayuda a las personas o computadoras aaprender, es el uso de los conocimientos empricos. Las reglas de pensamiento, los trucos,los procedimientos o cualquier tipo de informacin que nos ayuda en la resolucin deproblemas.

    La representacin del conocimiento es un esquema o dispositivo utilizado paracapturar los elementos esenciales del dominio de un problema. Una representacinmanipulable es aquella que facilita la computacin. En representaciones manipulables, lainformacin es accesible a otras entidades que usan la representacin como parte de uncmputo.

    Debido a la variedad de formas que el conocimiento puede asumir, los problemasinvolucrados en el desarrollo de una representacin del conocimiento son complejos,

    interrelacionados y dependientes del objetivo. En trminos generales, el conocimiento debeestar representado de tal forma que:

    Capture generalizaciones.

    Pueda ser comprendido por todas las personas que vayan a proporcionarlo yprocesarlo.

    Pueda ser fcilmente modificado.

    Pueda ser utilizado en diversas situaciones an cuando no sea totalmente exacto ocompleto.

    Pueda ser utilizado para reducir el rango de posibilidades que usualmente deberaconsiderarse para buscar soluciones.

    El conocimiento declarativo puede ser representado con modelos relacionales yesquemas basados en lgica. Los modelos relacionales pueden representar el conocimientoen forma de rboles, grafos o redes semnticas. Los esquemas de representacin lgicaincluyen el uso de lgica proposicional y lgica de predicados.

    Los modelos procedimentales y sus esquemas de representacin almacenanconocimiento en la forma de cmo hacer las cosas. Pueden estar caracterizados porgramticas formales, usualmente implantadas por sistemas o lenguajes procedimentales ysistemas basados en reglas (sistemas de produccin).34

    En forma natural, el ser humano representa el conocimiento simblicamente: imgenes,lenguaje hablado y lenguaje escrito. Adicionalmente, ha desarrollado otros sistemas derepresentacin del conocimiento: literal, numrico, estadstico, estocstico, lgico.

    34ARTEAGA, Ren y Juan Carlos Armijos. Tutorial de programacin Heurstica.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    34/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________23

    La ingeniera cognoscitiva ha adaptado diversos sistemas de representacin delconocimiento que, implantados en un computador, se aproximan mucho a los modeloselaborados por la psicologa cognoscitiva para el cerebro humano. Tradicionalmente larepresentacin del conocimiento conlleva el uso de marcos (frames), redes semnticas,clculo de predicados o sistemas de produccin35. Sin embargo, existen otros sistemas parala representacin del conocimiento. Entre los principales sistemas se tienen:

    Lgica Simblica Formal:

    Lgica proposicional.

    Lgica de predicados.

    Reglas de produccin.

    Formas Estructuradas:

    Redes asociativas.

    Estructuras frame.

    Representacin orientada a objetos.

    3.3 Lgica Proposicional.

    La lgica proposicional es la ms antigua y simple de las formas de lgica.Utilizando una representacin primitiva del lenguaje, permite representar y manipularaserciones sobre el mundo que nos rodea. La lgica proposicional permite el razonamientoa travs de un mecanismo que primero evala sentencias simples y luego sentenciascomplejas, formadas mediante el uso de conectivos proposicionales, por ejemplo Y (AND),O (OR).

    Este mecanismo determina la veracidad de una sentencia compleja, analizando los

    valores de veracidad asignados a las sentencias simples que la conforman.La lgica proposicional permite la asignacin de un valor verdadero o falso para la

    sentencia completa, pero no tiene la facilidad de analizar las palabras individuales quecomponen la sentencia.

    La principal debilidad de la lgica proposicional es su limitada habilidad paraexpresar conocimiento.36

    35DE ALBORNOZ Bueno, lvaro. Laboratorio de procesamiento de imgenes.36Ibid.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    35/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________24

    3.4 Lgica de Predicados.Existen varias sentencias complejas que pierden mucho de su significado cuando se

    les representa en lgica proposicional. Por esto se desarroll una forma lgica ms general,capaz de representar todos los detalles expresados en las sentencias, esta es la lgica depredicados.

    La lgica de predicados est basada en la idea de que las sentencias realmenteexpresan relaciones entre objetos, as como tambin cualidades y atributos de tales objetos.Los objetos pueden ser personas, objetos fsicos, o conceptos. Tales cualidades, relacioneso atributos, se denominan predicados. Los objetos se conocen como argumentos o trminosdel predicado.

    Al igual que las proposiciones, los predicados tienen un valor de veracidad, pero adiferencia de las proposiciones, su valor de veracidad, depende de sus trminos. Es decir,

    un predicado puede ser verdadero para un conjunto de trminos, pero falso para otro.37

    3.4.1. Ventajas y desventajas de la lgica de predicados.A continuacin se presentan algunos aspectos caractersticos de la lgica de predicados

    y su implementacin computacional, el lenguaje de programacin PROLOG:

    Manejo de incertidumbre. Una de las mayores desventajas de la lgica depredicados es que slo dispone de dos niveles de veracidad: verdadero y falso. Estose debe a que la deduccin siempre garantiza que la inferencia es absolutamenteverdadera. Sin embargo, en la vida real no todo es blanco y negro. En cierta formael PROLOG ha logrado mitigar esta desventaja, permitiendo la inclusin de factores

    de certeza.

    Razonamiento monotnico. La lgica de predicados al ser un formalismo derazonamiento montono, no resulta muy adecuada para ciertos dominios del mundoreal, en los cuales las verdades pueden cambiar con el paso del tiempo. PROLOGcompensa esta deficiencia proporcionando un mecanismo para remover los hechosde la base de datos. Por ejemplo, en TURBO PROLOG se tiene la clusulaRETRACTALL.

    Programacin declarativa. La lgica de predicados, tal como est diseada enPROLOG, es un lenguaje de programacin declarativo, en donde el programadorslo necesita preocuparse del conocimiento expresado en trminos del operador deimplicacin y los axiomas. El mecanismo deductivo de la lgica de predicados llegaa una respuesta (si esto es factible), utilizando un proceso exhaustivo de unificaciny bsqueda. A pesar de que la bsqueda exhaustiva puede ser apropiada en muchosproblemas, tambin puede introducir ineficiencias durante la ejecucin. Para lograrun cierto control en el proceso de bsqueda, PROLOG ofrece la operacin de corte,CUT. Cuando no se utiliza el CUT, PROLOG se convierte en un lenguajepuramente declarativo.38

    37Ibid.38Ibid.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    36/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________25

    3.5 Reglas de Produccin.

    La Representacin del conocimiento en forma de reglas de produccin fuepropuesta por Post en 1943. La regla es la forma ms comn de representar elconocimiento, debido a su gran sencillez y a que es la formulacin ms inmediata delprincipio de causalidad. Una regla consta de un conjunto de acciones o efectos (una o ms)que son ciertas cuando se cumplen un conjunto de condiciones o causas. La potencia de unaregla est en funcin de la lgica que admita en las expresiones de las condiciones y de lasconclusiones.

    La conclusin se suele referir a la creacin de un nuevo hecho vlido, o laincorporacin de una nueva caracterstica a un hecho, mientras que la accin suele referirsea la transformacin de un hecho.39

    3.5.1. Ventajas y desventajas de las reglas de produccin.

    Las ventajas que representan las reglas de produccin son su carcter declarativo, susencillez, su uniformidad - que permite la representacin de conocimiento como de meta-conocimiento -, su independencia - que permite la supresin o inclusin sin que se veaafectado el resto de la base de conocimientos - y su modularidad al ser fcilmenteagrupables.

    La principal desventaja que presentan las reglas de produccin, es la dificultad deestablecer relaciones, para lo cual hay que recurrir al uso de meta reglas, lo que produce elcrecimiento muy rpido del nmero de reglas, lo que hace lento el proceso de inferencia y

    conduce a la introduccin repeticiones y lo que es peor, contradicciones.40

    3.6 Redes Asociativas.Las redes semnticas o redes asociativas, fueron originalmente desarrolladas para

    representar el significado o semntica de oraciones en ingls, en trminos de objetos yrelaciones. Actualmente, el trmino redes asociativas ya no slo se usa para representarrelaciones semnticas, sino tambin para representar asociaciones fsicas o causales entrevarios conceptos u objetos.

    Las redes asociativas se caracterizan por representar el conocimiento en forma grfica.Agrupan una porcin de conocimiento en dos partes: objetos y relaciones entre objetos. Los

    objetos se denominan tambin nodos (elementos del conocimiento) y las relaciones entrenodos se denominan enlaces o arcos. Cada nodo y cada enlace en una red semntica, debenestar asociados con objetos descriptivos.

    Estas redes son muy apropiadas para representar conocimiento de naturalezajerrquica. Su concepcin se basa en la asociacin de conocimientos que realiza la memoriahumana. Las principales aplicaciones son: comprensin de lenguaje natural, bases de datosdeductivas, visin por computadora y sistemas de aprendizaje.41

    39RICH, Elaine y Kevin Knight. Artificial Inteligence.40BRATKO Ivan. Prolog programming for Articial Intelligence.41ANGULO Usategui, Jos Mara y Anselmo del Moral Bueno. Gua fcil de la inteligencia.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    37/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________26

    3.6.1. Ventajas y desventajas de las Redes Asociativas.

    Las redes asociativas tienen dos ventajas sobre los sistemas basados en reglas y sobrelos sistemas basados en lgica:

    Permiten la declaracin de importantes asociaciones, en forma explcita.

    Debido a que los nodos relacionados estn directamente conectados, y no seexpresan las relaciones en una gran base de datos, el tiempo que toma el proceso debsqueda por hechos particulares puede ser significativamente reducido.

    Entre las desventajas de las redes asociativas, se pueden mencionar:

    No existe una interpretacin normalizada para el conocimiento expresado por la red.La interpretacin de la red depende exclusivamente de los programas quemanipulan la misma.

    La dificultad de interpretacin a menudo puede derivar en inferencias invlidas delconocimiento contenido en la red.

    La exploracin de una red asociativa puede derivar en una explosin combinatoria delnmero de relaciones que deben ser examinadas para comprobar una relacin.42

    3.7 Estructuras frame.

    Una plantilla (frame) es una estructura de datos apropiada para representar unasituacin estereotpica. Las plantillas organizan el conocimiento en objetos y eventos queresultan apropiados para situaciones especficas. La evidencia psicolgica sugiere que lagente utiliza grandes plantillas para codificar el conocimiento de experiencias pasadas, oconocimiento acerca de cosas que se encuentran comnmente, para analizar y explicar unasituacin nueva en su cotidiana actividad cognoscitiva.

    Una plantilla representa un objeto o situacin describiendo la coleccin de atributos queposee. Cada plantilla est formada por un nombre y por una serie de campos deinformacin o ranuras (slots). Cada ranura puede contener uno o ms enlaces (facets). Cadaenlace tiene un valor asociado. Varios enlaces pueden ser definidos para cada ranura, porejemplo:

    Rango.El conjunto de posibles valores para la ranura.

    Valor.El valor de la ranura.

    Default.El valor a ser asumido si no se especifica alguno.Adems los enlaces pueden ser procedimientos que residen en la base de datos y estn

    aguardando para ser utilizados cuando se les necesite. Entre los ms comunes se puedenmencionar:

    42ARTEAGA, Ren y Juan Carlos Armijos. Op. cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    38/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________27

    Si-Necesitado. Procedimiento(s) para determinar el valor actual de una ranura.

    Si-Agregado. Procedimiento(s) a ejecutarse cuando un valor es especificado parauna ranura.

    Si-Modificado. Procedimiento(s) a ejecutarse si el valor de una ranura es cambiado.

    A estos procedimientos tambin se los denomina demons y representan un conceptopoderoso en las plantillas, esto es, la habilidad de combinar conocimiento procedimentaldentro de la estructura de conocimiento declarativo de la plantilla. Esto sugiere que unaplantilla puede ser un medio poderoso de representacin del conocimiento, especialmente sise la incorpora en una red de plantillas.43

    3.7.1. Ventajas y desventajas de los frames.

    Las ventajas que se pueden establecer para los sistemas basados en plantillas son lassiguientes:

    Facilidad de proceso guiado por las expectativas. Un sistema basado enplantillas, mediante los demons es capaz de especificar acciones que debentener lugar cuando ciertas condiciones se han cumplido durante elprocesamiento de la informacin.

    El conocimiento que posee un sistema basado en plantillas essignificativamente ms estructurado y organizado que el conocimientodentro de una red asociativa.

    Las plantillas pueden ser estructuradas de tal forma que sean capaces dedeterminar su propia aplicabilidad en determinadas situaciones. En el casode que una plantilla en particular no sea aplicable, puede sugerir otrasplantillas que pueden ser apropiadas para la situacin.

    Se puede fcilmente almacenar en las ranuras valores dinmicos devariables, durante la ejecucin de un sistema basado en conocimiento. Estopuede ser particularmente til para aplicaciones de simulacin,

    planeamiento, diagnstico de problemas o interfaces para bases de datos.Las principales desventajas que se pueden establecer para la representacin del

    conocimiento mediante plantillas, son:

    Dificultad de representar objetos que se alejen considerablemente de estereotipos.

    No tiene la posibilidad de acomodarse a situaciones u objetos nuevos.

    43BENCHIMOL, Guy, Pierre Levine y Jean Charles Promerol. Los sistemas expertos en laempresa.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    39/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________28

    Dificultad para describir conocimiento heurstico que es mucho ms fcilmenterepresentado mediante reglas.44

    3.8 Representacin orientada a objetos.

    Los objetos, son similares a las plantillas. Ambos sirven para agrupar conocimientoasociado, soportan herencia, abstraccin y el concepto de procedimientos agregados. Ladiferencia radica en lo siguiente:

    1. En las plantillas, a los programas y a los datos se los trata como dos entidadesrelacionadas separadas. En cambio en los objetos se crea una fuerte unidad entre losprocedimientos (mtodos) y los datos.

    2. Los demons de las plantillas sirven slo para computar valores para las diversas ranuraso para mantener la integridad de la base de conocimientos cada vez que una accin dealguna plantilla, afecta a otra. En cambio, los mtodos utilizados por los objetos sonms universales ya que proporcionan cualquier tipo general de computacin requerida yadems soportan encapsulamiento y polimorfismo.

    Un objeto es definido como una coleccin de informacin que representa una entidaddel mundo real y una descripcin de cmo debe ser manipulada esta informacin, esto es,los mtodos. Es decir, un objeto tiene un nombre, una caracterizacin de clase, variosatributos distintivos y un conjunto de operaciones. La relacin entre los objetos vienedefinida por los mensajes. Cuando un objeto recibe un mensaje vlido, responde con una

    accin apropiada, retornando un resultado.45

    3.8.1 Ventajas y desventajas de la representacin orientada a objetos.

    Los objetos, como forma de representacin del conocimiento ofrecen las siguientesventajas:

    Poder de abstraccin.

    Encapsulamiento o capacidad de esconder informacin.

    Herencia, es decir pueden recibir caractersticas de sus ancestros.

    Polimorfismo, que permite crear una interfaz comn para todos los diversos objetosutilizados dentro del dominio.

    Posibilidad de reutilizacin del cdigo.

    Mayor facilidad para poder trabajar eficientemente con sistemas grandes.

    44ARTEAGA, Ren y Juan Carlos Armijos. Op cit.45Ibid.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    40/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________29

    Las desventajas son similares a las que se indicaron para las plantillas:

    Dificultades para manejar objetos que se alejan demasiado de la norma.

    Dificultades para manejar situaciones que han sido encontradas previamente.46

    46Ibid

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    41/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________30

    CCAAPPTTUULLOO44

    COMPONENTES DE UN SISTEMA EXPERTO.

    Este capitulo muestra una idea de los componentes que constituyen un Sistema

    Experto, una explicacin de cada uno de estos componentes as como algunas de lasmetodologas utilizadas para la creacin de Sistemas Expertos.

    Este capitulo tiene como objetivo principal dar a conocer los componentes de unSistema Experto, destacando el grado de importancia que tiene seguir una metodologa parael proceso de desarrollo de Sistemas Expertos.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    42/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________31

    4.1 Introduccin.

    Los Sistemas Expertos, como ya se ha mencionado, son sistemas diferentes a los

    tradicionales, ya que estos son basados en conocimiento y por tal razn la arquitectura yfuncionalidad es diferente, incluso la fabricacin de estos es mucho ms complicada ylaboriosa que los sistemas algortmicos tradicionales.

    La arquitectura de un Sistema Experto est constituida por dos componentesprincipales de cualquier Sistema Experto son una Base de conocimientosy un Programade inferencia,o tambin llamado Motor de inferencias.47

    4.2 Base de conocimiento.

    1. La base de conocimientos del Sistema Experto con respecto a un tema especfico

    para el que se disea el sistema. Este conocimiento se codifica segn una notacinespecfica que incluye reglas, predicados, redes semnticas y objetos.

    2. Las bases de conocimiento (KB: Knowledge Base) pertenecen a una etapa muyposterior. Surgieron a partir de la investigacin en IA como respuesta a lasnecesidades que las aplicaciones de esta disciplina planteaban. Las bases deconocimiento son la evolucin lgica de los sistemas de bases de datostradicionales, en un intento de plasmar no ya cantidades ingentes de datos, sinoelementos de conocimiento (normalmente en forma de hechos y reglas) as como lamanera en que estos elementos han de ser utilizados. 48

    Tambin se les trata de dotar de conocimiento sobre s mismas, es decir, una KB ha de"saber lo que sabe". Por ejemplo, ante una consulta determinada, una base de datosacceder a los datos almacenados en ella y dar una respuesta afirmativa o negativa,independientemente de que tenga o no la informacin relevante; en cambio, una KBrespondera "s", "no" o "no lo s", en el caso de carecer de todos los datos pertinentes a laconsulta.

    Se dice que una base de datos almacena nicamente hechos, que son un reflejo deuniverso, llamado Universo de Discurso (UoD) determinado. Las funciones que el gestor debase de datos se limita a facilitar son, fundamentalmente, las de edicin y consulta de losdatos. Una base de conocimiento, por otra parte, puede almacenar, adems de hechos, unconjunto de reglas que se sirven de esos hechos para obtener informacin que no seencuentra almacenada de forma explcita. El tipo de base de conocimiento al que se dota deuna considerable capacidad de deduccin a partir de la informacin que contiene sedenomina sistema experto.

    Ambos sistemas de informacin cuentan con sus correspondientes gestores parasimplificar al administrador las tareas comunes de mantenimiento: el sistema gestor debases de datos (DBMS: Database Management System) y el sistema gestor de bases deconocimiento (KBMS: Knowledge Base Management System).

    47DE MIGUEL Gonzlez, Luis Javier. Op. cit48CRIADO Briz, Jos Mario. Sistemas Expertos. Op. cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    43/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________32

    Tambin encontramos diferencias sustanciales en este aspecto. Bsicamente los DBMSsactuales se encuentran perfectamente estandarizados, ofreciendo un nmero decaractersticas y metodologas comunes que posibilitan la comunicacin entre diversostipos y productos comerciales. La comercializacin de los KBMSs es prcticamenteanecdtica, y los esfuerzos en cuanto a su estandarizacin se estn produciendo en estosmomentos, en lo que se ha dado en denominar KIF (Knowledge Interchange Format)(Genesereth & Fikes 1992).

    4.3 Motor de inferencia.

    El motor de inferencia, que es el que combina los hechos y las preguntasparticulares, utilizando la base de conocimiento, seleccionando los datos y pasosapropiados para presentar los resultados.

    4.4 Componentes detallados de un Sistema Experto.

    Esta definicin de las partes de un Sistema Experto es muy general, ahora sepresenta una serie de componentes ms detallados de un SE:

    4.4.1 Subsistema de control de coherencia.

    Este componente previene la entrada de informacin incoherente en la base deconocimiento. Es un componente muy necesario, a pesar de ser un componente reciente.

    4.4.2 Subsistema de adquisicin de conocimiento.

    Se encarga de controlar si el flujo de nuevo conocimiento a la base de datos esredundante. Slo almacena la informacin que es nueva para la base de datos.

    4.4.3 Motor de inferencia.

    Este componente es bsico para un Sistema Experto; se encarga de obtenerconclusiones comenzando desde el conocimiento abstracto hasta el conocimiento concreto.Si el conocimiento inicial es muy poco, y el sistema no puede obtener ninguna conclusin,se utilizar el subsistema de demanda de informacin.

    4.4.4. Subsistema de demanda de informacin.

    Completa el conocimiento necesario y reanuda el proceso de inferencia hastaobtener alguna conclusin vlida. El usuario puede indicar la informacin necesaria en esteproceso ayudado de una interfase de usuario (la cual facilita la comunicacin entre elSistema Experto y el usuario).

    4.4.5. Subsistema de incertidumbre.

    Se encarga de almacenar la informacin de tipo incierto y propaga la incertidumbreasociada a esta informacin.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    44/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________33

    4.4.6 Subsistema de ejecucin de tareas.

    Permite realizar acciones al Sistema Experto basadas en el motor de inferencia.

    4.4.7 Subsistema de explicacin.

    Este componente entra en ejecucin cuando el usuario solicita una explicacin delas conclusiones obtenidas por el SE. Esto se facilita mediante el uso de una interfase. 49

    4.5. Arquitectura de un Sistema Experto.

    No existe una estructura de sistema experto comn. Sin embargo, la mayora de lossistemas expertos tienen unos componentes bsicos: base de conocimientos, motor deinferencia, base de datos e interfaz con el usuario. Muchos tienen, adems, un mdulo de

    explicacin y un mdulo de adquisicin del conocimiento. La figura 4.1 muestra laestructura de un sistema experto ideal.

    Figura 4.1 Estructura de un Sistema Experto.

    La base de conocimientos contiene el conocimiento especializado extrado delexperto en el dominio. Es decir, contiene conocimiento general sobre el dominio en el que

    se trabaja. El mtodo ms comn para representar el conocimiento es mediante reglas deproduccin. El dominio de conocimiento representado se divide, pues, en pequeasfracciones de conocimiento o reglas.

    Una caracterstica muy importante es que la base de conocimientos es independientedel mecanismo de inferencia que se utiliza para resolver los problemas. De esta forma,cuando los conocimientos almacenados se han quedado obsoletos, o cuando se dispone denuevos conocimientos, es relativamente fcil aadir reglas nuevas, eliminar las antiguas ocorregir errores en las existentes. No es necesario reprogramar todo el Sistema Experto.

    49SELL, Peter. Sistemas Expertos para principiantes.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    45/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________34

    Las reglas suelen almacenarse en alguna secuencia jerrquica lgica, pero esto no esestrictamente necesario. Se pueden tener en cualquier secuencia y el motor de inferencia lasusar en el orden adecuado que necesite para resolver un problema.50

    La base de datos o base de hechos es una parte de la memoria la computadora que seutiliza para almacenar los datos recibidos inicialmente para la resolucin de un problema.Contiene conocimiento sobre el caso concreto en que se trabaja. Tambin se registrarn enella las conclusiones intermedias y los datos generados en el proceso de inferencia. Almemorizar todos los resultados intermedios, conserva el vestigio de los razonamientosefectuados; por lo tanto, se puede utilizar explicar las deducciones y el comportamiento delsistema.

    El motor de inferencias es un programa que controla el proceso de razonamiento queseguir el Sistema Experto. Utilizando los datos que se le suministran, recorre la base de

    conocimientos para alcanzar una solucin. La estrategia de control puede ser deencadenamiento progresivo o de encadenamiento regresivo. En el primer caso se comienzacon los hechos disponibles en la base de datos, y se buscan reglas que satisfagan esos datos,es decir, reglas que verifiquen la parte SI. Normalmente, el sistema sigue los siguientespasos:

    Evaluar las condiciones de todas las reglas respecto a la base de datos, identificandoel conjunto de reglas que se pueden aplicar (aquellas que satisfacen su partecondicin).

    Si no se puede aplicar ninguna regla, se termina sin xito; en caso contrario se eligecualquiera de las reglas aplicables y se ejecuta su parte accin (esto ltimo generanuevos hechos que se aaden a la base de datos).

    Si se llega al objetivo, se ha resuelto el problema; en caso contrario, se vuelve alpaso 1

    A este enfoque se le llama tambin guiado por datos, porque es el estado de la base dedatos el que identifica las reglas que se pueden aplicar. Cuando se utiliza este mtodo, elusuario comenzar introduciendo datos del problema en la base de datos del sistema.

    Al encadenamiento regresivo se le suele llamar guiado por objetivos, ya que, el sistemacomenzar por el objetivo (parte accin de las reglas) y operar retrocediendo para vercmo se deduce ese objetivo partiendo de los datos. Esto se produce directamente o a travsde conclusiones intermedias o subobjetivos. Lo que se intenta es probar una hiptesis apartir de los hechos contenidos en la base de datos y de los obtenidos en el proceso deinferencia.

    En la mayora de los Sistemas Expertos se utiliza el encadenamiento regresivo. Esteenfoque tiene la ventaja de que el sistema va a considerar nicamente las reglas queinteresan al problema en cuestin. El usuario comenzar declarando una expresin E y elobjetivo del sistema ser establecer la verdad de esa expresin.

    50SAMPER Mrquez, Juan Jos. Op. cit.

  • 5/21/2018 Sistemas Expertos y Sus Aplicaciones

    46/99

    SE y sus aplicaciones________________________________________________________________________

    _________________________________________________________________________35

    Para ello se pueden seguir los siguientes pasos:1. Obtener las reglas relevantes, buscando la expresin E en la parte accin (stas

    sern las que puedan establecer la verdad de E)

    2. Si no se encuentran reglas para aplicar, entonces no se tienen datos suficientes pararesolver el problema; se termina sin xito o se piden al usuario ms datos.

    3. Si hay reglas para aplicar, se elige una y se verifica su parte condicin C conrespecto a la base de datos.

    4. Si C es verdadera en la base de datos, se establece la veracidad de la expresin E yse resuelve el problema.

    5. Si C es falsa, se descarta la regla en curso y se selecciona otra regla.

    6. Si C es desconocida en la base de datos (es decir, no es verdadera ni falsa), se leconsidera como sub-objetivo y se vuelve al paso 1 (C ser ahora la expresin E).

    Existen tambin enfoques mixtos en los que se combinan los mtodos guiados por datoscon los guiados por objetivos.

    La interfaz de usuario permite que el usuario pueda describir el problema al SistemaExperto. Interpreta sus preguntas, los comandos y la informacin ofrecida. A la inversa,formula la informacin generada por el sistema incluyendo respuestas a las preguntas,explicaciones y justificaciones. Es decir, posibilita que la respuesta proporcionada por el

    sistema sea inteligible para el interesado. Tambin puede solicitar ms informacin al SE sile es necesaria. En algunos sistemas se utilizan tcnicas de tratamiento del lenguaje naturalpara mejorar la comunicacin entre el usuario y el SE.

    La mayora de los sistemas expertos contienen un mdulo de explicacin, diseadopara aclarar al usuario la lnea de razonamiento seguida en el proceso de inferencia. Si elusuario pregunta al sistema cmo ha alcanzado una conclusin, ste le presentar lasecuencia completa de reglas usada. Esta posibilidad de explicacin es especialmentevaliosa cuando se tiene la necesidad de tomar decisiones importantes amparndose en elconsejo del SE. Adems, de esta forma, y con el tiempo suficiente, los usuarios puedenconvertirse en especialistas en la materia, al asimilar el proceso de razonamiento seguido

    por el sistema. El subsistema de explicacin tambin puede usarse para depurar el SEdurante su desarrollo.

    El mdulo de adquisicin del conocimiento permite que se puedan