Está en la página 1de 199

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo Alejandro Pea Ayala

INSTITUTO POLITCNICO NACIONAL

Alejandro Pea Ayala

Curs la licenciatura en Informtica en la UPIICSA del IPN. Posteriormente obtuvo el Diplomado en Java y Aplicaciones Web en el ITAM, la Especialidad y la Maestra en Inteligencia Artificial en la Fundacin Arturo Rosenblueth. Actualmente es candidato al grado de Doctor en Ciencias de la Computacin por el Centro de Investigacin en Computacin del IPN, contando para ello del respaldo del CONACYT y del IPN a travs de una beca. Entre sus distinciones acadmicas estn: El haberse titulado por la opcin de escolaridad en 1981, conforme al reglamento del IPN. El reconocimiento hecho por el CONCACYT y el Diario de Mxico en el evento: Los mejores estudiantes de Mxico generacin 1981, como el mejor estudiante en la Licenciatura en Informtica del IPN. Adems de haber obtenido el grado de de Maestra en Inteligencia Artificial con mencin honorfica. A la par de su desarrollo acadmico, Alejandro Pea ha ejercido la carrera magisterial, profesional, de investigacin y ministerial. En 1981 ingres a la planta docente de la UPIICSA, donde actualmente es profesor titular C e investigador. Durante el lapso 1989-1994 ofreci ctedra en la Maestra en Sistemas Computacionales del ITESM-CEM. Adems de haber hecho lo propio en las Maestras en Sistemas de Informacin y Ciencias de la Computacin en la Fundacin Arturo Rosenblueth. En el mbito profesional de la Informtica, desde 1978 se ha desenvuelto en los sectores privado, pblico, bancario y empresarial, desempeando cargos como: Programador, analista y lder de proyecto en la entonces Secretara de Comercio. Jefe de Soporte Tcnico en el (desaparecido) Instituto Mexicano de Comercio Exterior. Subdirector de Sistemas en la Secretara de Salud. Subgerente de Proyectos Especiales en el Banco Nacional de Comercio Exterior. Coordinador de Sistemas en Banamex. Fue fundador y Director General de la empresa Neuralware, dedicada a las Tecnologas de la Informacin. Como resultado de sus estudios doctorales orientados al mbito de la Educacin basada en Web, ha publicado: varios Reportes Tcnicos, y presentado diversos trabajos en congresos nacionales e internacionales celebrados en ciudades de cuatro continentes, como por ejemplo: Washington-USA., Vancouver Canda, Melbourne Australia, Bensaon Francia, Grindelwald Suiza, y Bali Indonesia. Las memorias de sus artculos han sido editadas por organizaciones como IEEE y Springer. As mismo es autor de una coleccin de libros relacionados con la Informtica y la Inteligencia Artificial. Actualmente, Alejandro Pea es Apstol y Director General del World Outreach Light to the Nations Ministries (WOLNM), cuya visin es la formacin de discpulos, mediante el uso de las Tecnologas de la Informacin y del Conocimiento, a nivel mundial dedicados a predicar el Evangelio. Por sus ocupaciones acadmicas, profesionales y ministeriales, Alejandro Pea ha tenido la oportunidad de visitar diversos pases y regiones del mundo, amn de haber arribado a sitios extremos del planeta como: La Antrtida, el ocano glaciar rtico, y el centro del desierto de Australia. Tambin ha explorado islas exticas como Hawai, Tahit, y Rarotonga; y otras remotas como Spitsbergen y Baffin. A raz de tales experiencias, Alejandro Pea ofrece el testimonio de las maravillas naturales que Dios ha hecho en el mundo para deleite del ser humano, y en particular de sus hijos que son salvos a travs de Jesucristo y llenos de su Espritu Santo, quien les anima a clamar: Abba, Padre!

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Alejandro Pea Ayala

INSTITUTO POLITCNICO NACIONAL

- Mxico -

PRIMERA EDICIN 2006.

D.R. 2006, Alejandro Pea Ayala INSTITUTO POLITCNICO NACIONAL Direccin de Publicaciones Revillagigedo 83, Centro Histrico, 06070, Mxico, D.F. ISBN: 970-94797-4-1 Impreso en: Mxico / Printed in Mxico

El autor reconoce que esta obra ha sido inspirada de manera especial por su Padre, Hermano Jess y Consolador como parte de los proyectos de investigacin de World Outreach Light to the Nations Ministries (WOLNM). As mismo, el trabajo es el resultado de su experiencia profesional, como investigador y docente en la Unidad Profesional Interdisciplinaria de Ingeniera y Ciencias Sociales y Administrativas (UPIICSA) del Instituto Politcnico Nacional (IPN) y fruto del desarrollo de su tesis doctoral en el Centro de Investigacin en Computacin del Instituto Politcnico Nacional.

PRLOGO

Los Sistemas basados en Conocimiento representan un paso delante de los sistemas de informacin convencionales al pretender representar funciones cognitivas del ser humano como el aprendizaje y el razonamiento. Esta clase de aplicaciones descansan en las contribuciones de la Inteligencia Artificial en lo general y en la Ingeniera del Conocimiento en lo particular. Su orientacin es la automatizacin del anlisis de problemas, la bsqueda de soluciones, la toma de decisiones y el empleo de conocimiento especializado en un campo especfico de aplicacin. Entre los productos ms significativos de los Sistemas basados en Conocimiento se encuentran los Sistemas Expertos, los cuales estn encargados de representar el conocimiento de los especialistas de una rama en la procura de su aprovechamiento para tareas de diagnstico, enseanza y control. La composicin de los Sistemas basados en Conocimiento consta de: Un mecanismo de aprendizaje, una base de conocimientos, un motor de razonamiento, y medios de comunicacin hombre-mquina. Por tal motivo, en este ejemplar se dedica un captulo para tratar cada uno de esos temas, en los que se expone los procedimientos que se realizan para la confeccin de los componentes y se describe las estructuras de representacin de conocimiento apropiadas para su organizacin.

XII

TABLA DE CONTENIDO
INTRODUCCIN ..................................................................................................................................................................... 3 1. SISTEMAS BASADOS EN CONOCIMIENTO ................................................................................................................. 7 1.1 1.2 1.3 1.4 ALCANCES DE LOS SISTEMAS DE INFORMACIN ........................................................................................... 7 EXTENSIN A LOS SISTEMAS BASADOS EN CONOCIMIENTO ...................................................................... 7 PROPIEDADES DE LOS SISTEMAS BASADOS EN CONOCIMIENTO ............................................................... 7 TIPOS DE APLICACIONES DE LOS SISTEMAS BASADOS EN CONOCIMIENTO ........................................... 8

2. SISTEMAS EXPERTOS..................................................................................................................................................... 11 2.1 LA ELITE DE LOS SISTEMAS BASADOS EN CONOCIMIENTO ....................................................................... 11 2.2 DESCRIPCIN DE LOS SISTEMAS EXPERTOS ........................................................................................................ 11 2.2.1 DEFINICIN........................................................................................................................................................... 11 2.2.2 CUALIDADES .......................................................................................................................................................... 12 2.2.3 NIVELES DE APLICACIN..................................................................................................................................... 12 2.2.4 REAS DE DESARROLLO....................................................................................................................................... 13 2.3 ARQUITECTURA........................................................................................................................................................... 14 2.4 PERFIL GENERAL DEL FUNCIONAMIENTO DE UN SISTEMA EXPERTO .......................................................... 16 2.5 EJEMPLOS DE SISTEMAS EXPERTOS ....................................................................................................................... 16 2.6 OPERACIN DE PROTOTIPOS.................................................................................................................................... 18 3. CONSTRUCCIN DE SISTEMAS ................................................................................................................................... 21 3.1 LA INGENIERA DE CONOCIMIENTO....................................................................................................................... 21 3.2 METODOLOGA PARA LA CONSTRUCCIN DE SISTEMAS EXPERTOS ............................................................ 23 3.3 RECURSOS INVOLUCRADOS..................................................................................................................................... 28 34 TIPO DE SOFTWARE APROPIADO A LA CREACIN DE SISTEMAS EXPERTOS................................................ 29 3.5 RECOMENDACIONES .................................................................................................................................................. 35 4. APLICACIN DE SHELLS ............................................................................................................................................. 39 4.1 DESCRIPCIN DEL SHELL M1 ............................................................................................................................. 39 4.2 COMPONENTES DE M1.......................................................................................................................................... 39 4.3 OPERACIN DE M1 ................................................................................................................................................ 40 4.3.1 DESCRIPCIN GENERAL ............................................................................................................................... 40 4.3.2 EJECUCIN DE PROTOTIPOS ....................................................................................................................... 40 4.4 REPRESENTACIN DE CONOCIMIENTO ........................................................................................................... 42 4.5 INFERENCIA Y BSQUEDA.................................................................................................................................. 43 4.6 MANEJO DE COMANDOS...................................................................................................................................... 48 4.7 MANIPULACIN DE LA BASE DE CONOCIMIENTOS Y EL CACH .............................................................. 49 4.8 INTERACCIN CON EL USUARIO ....................................................................................................................... 50 4.9 RASTREO Y MONITOREO ..................................................................................................................................... 52 5. MECANISMO DE APRENDIZAJE.................................................................................................................................. 55 5.1 DESCRIPCIN DE UN MECANISMO DE APRENDIZAJE ........................................................................................ 55 52 INTEGRACIN DE UN MDULO DE APRENDIZAJE ............................................................................................... 56 5.2.1 CICLO DE ADQUISICIN INICIAL DEL CONOCIMIENTO ANTES DE LA IMPLEMENTACIN .................... 56 5.2.2 COMPONENTES DE UN SISTEMA DE APRENDIZAJE........................................................................................ 57 5.2.3 MECANISMO DE APRENDIZAJE........................................................................................................................... 58 5.2.4 CICLO DE ADQUISICIN DEL CONOCIMIENTO DESPUS DE QUE LA IMPLEMENTACIN HA COMENZADO ................................................................................................................................................................... 58 5.3 MTODOS DE APRENDIZAJE ..................................................................................................................................... 60 5.4 TCNICAS DE APRENDIZAJE..................................................................................................................................... 61 5.4.1 CONCEPTOS............................................................................................................................................................ 61

5.4.2 GENERALIZACIN.................................................................................................................................................. 66 5.4.3 ANALOGA ............................................................................................................................................................... 72 5.4.4 DESCUBRIMIENTO................................................................................................................................................. 74 5.5 HERRAMIENTAS QUE FACILITAN EL APRENDIZAJE........................................................................................... 76 5.6 APLICACIONES ORIENTADAS AL APRENDIZAJE ................................................................................................. 78 5.7 CONSTRUCCIN DEL MECANISMO DE APRENDIZAJE....................................................................................... 80 5.8 EVALUACIN DEL MDELO DE APRENDIZAJE.................................................................................................... 83 6. BASE DE CONOCIMIENTOS ...................................................................................................................................... 93 6.1 DESCRIPCIN DE UNA BASE DE CONOCIMIENTOS ....................................................................................... 93 6.1.1 ROL DEL MDULO ............................................................................................................................................... 93 6.1.2 CONSIDERACIONES............................................................................................................................................... 94 6.2 FUNCIONAMIENTO DEL ADMINISTRADOR DE LA BASE DE CONOCIMIENTOS...................................... 95 6.3 EVALUACIN DE LAS TCNICAS DE REPRESENTACIN DE CONOCIMIENTOS ..................................... 95 6.3.2 CLCULO DE PREDICADOS................................................................................................................................. 95 6.3.3REGLAS DE PRODUCCIN .................................................................................................................................... 98 6.3.4 SUPOSICIONES ..................................................................................................................................................... 100 6.3.5 CONOCIMIENTO DIFUSO FUZZY SETS ........................................................................................................ 101 6.3.6 REDES SEMNTICAS............................................................................................................................................ 105 6.3.7 FRAMES ................................................................................................................................................................. 108 6.3.8 DEPENDENCIA CONCEPTUAL........................................................................................................................... 111 6.3.9 SCRIPTS ................................................................................................................................................................ 113 6.4 SELECCIN DE LA REPRESENTACIN APROPIADA .................................................................................... 115 6.4.1 DECLARATIVO ...................................................................................................................................................... 115 6.4.2 PROCEDURAL....................................................................................................................................................... 115 6.4.3 CLCULO DE PREDICADOS............................................................................................................................... 115 6.4.4 REGLAS DE PRODUCCIN ................................................................................................................................. 115 6.4.6 PROBABILIDAD ................................................................................................................................................... 116 6.4.7 FUZZY SETS.......................................................................................................................................................... 116 6.4.8 REDES SEMNTICAS............................................................................................................................................ 116 6.4.9 FRAMES ................................................................................................................................................................. 117 6.4.10 DEPENDENCIA CONCEPTUAL......................................................................................................................... 117 6.4.11 SCRIPTS ............................................................................................................................................................... 117 6.5 CONSTRUCCIN DE UNA BASE DE CONOCIMIENTOS ................................................................................ 117 6.5.1 HERRAMIENTAS ................................................................................................................................................... 117 6.5.2 METODOLOGA ................................................................................................................................................... 118 7.5.3 CYCL....................................................................................................................................................................... 121 7.5.4 EXIS ....................................................................................................................................................................... 123 7. MOTOR DE INFERENCIA ............................................................................................................................................. 131 7.1. NATURALEZA DEL MOTOR DE INFERENCIA...................................................................................................... 131 7.1.1. DESCRIPCIN...................................................................................................................................................... 131 7.1.2. PROPSITO .......................................................................................................................................................... 131 7.1.3. ELEMENTOS........................................................................................................................................................ 131 7.2. EVALUACIN DE MTODOS DE INFERENCIA.................................................................................................... 131 7.2.1. LGICA ................................................................................................................................................................. 131 7.2.2. SISTEMAS DE PRODUCCIN............................................................................................................................. 134 7.2.3. FACTORES DE CERTIDUMBRE (CF) ............................................................................................................ 135 7.2.4. RAZONAMIENTO EN OBJETOS ESTRUCTURADOS......................................................................................... 136 7.2.5. RAZONAMIENTO CONCEPTUAL ....................................................................................................................... 137 7.2.6. RAZONAMIENTO NO MONOTNICO................................................................................................................ 138 7.2.7. FUZZY LOGIC....................................................................................................................................................... 141 7.3. COMPARACIN DE MTODOS ............................................................................................................................... 143 7.4. INTEGRACIN DE LA INFERENCIA Y BSQUEDAS .......................................................................................... 146 7.4.1. ANLISIS DEL TIPO DE PROBLEMAS A RESOLVER ....................................................................................... 146 7.4.2. PROGRAMACIN LGICA ................................................................................................................................. 146 XIV

7.4.3. SISTEMAS DE PRODUCCIN............................................................................................................................. 147 7.4.4. RAZONAMIENTO NO MONOTNICO................................................................................................................ 148 7.5 CONSTRUCCIN DEL MOTOR DE INFERENCIA .................................................................................................. 155 Mantenimiento de Memoria en Fuzzy Expert System Flops........................................................................................ 156 8. INTERFASE HOMBRE - MQUINA ............................................................................................................................ 163 8.1 PROPSITO DEL MDULO ....................................................................................................................................... 163 8.2 CONSIDERACIONES .................................................................................................................................................. 163 8.2.1 TIPO DE USUARIO ............................................................................................................................................... 163 8.2.2 TEMA DE LA COMUNICACIN........................................................................................................................... 163 8.2.3 RECURSOS............................................................................................................................................................. 163 8.2.4 ARISTAS DE LA COMUNICACIN ...................................................................................................................... 163 8.3. MODELO...................................................................................................................................................................... 163 8.4. CICLO DE COMUNICACIN .................................................................................................................................... 165 8.4.1 DESCRIPCIN....................................................................................................................................................... 165 8.4.2 FLUJO .................................................................................................................................................................... 165 8.4.3 CONCLUSIN........................................................................................................................................................ 165 8.4.4 JUSTIFICACIN.................................................................................................................................................... 166 8.5 FORMAS DE IMPLEMENTACIN............................................................................................................................. 166 8.6 METACONOCIMIENTO.............................................................................................................................................. 166 8.7 ASPECTOS A EVALUAR ............................................................................................................................................ 167 8.7 RECOMENDACIONES ................................................................................................................................................ 168 8.8 CRITERIOS DE XITO ................................................................................................................................................ 169 CONCLUSIONES.................................................................................................................................................................. 173 REFERENCIAS..................................................................................................................................................................... 177

XVI

TABLA DE FIGURAS
Fig. 1. Arquitectura general de los componentes de un Sistema Experto .................................................................................. 14 Fig. 2. Ambiente de la Ingeniera de Conocimiento .................................................................................................................. 21 Fig. 3. Tipos de conocimiento que se quieren representar......................................................................................................... 22 Fig. 4. Modelo del ciclo de vida para el desarrollo de un Sistema Experto ............................................................................... 24 Fig. 5. Proceso de identificacin del problema ......................................................................................................................... 24 Fig. 6. Proceso de formalizacin del Sistema Experto............................................................................................................... 27 Fig. 7. Ciclo para la adquisicin inicial de conocimiento .......................................................................................................... 56 Fig. 8. Componentes de un sistema de aprendizaje ................................................................................................................... 58 Fig. 9. Ciclo para la actualizacin de conocimiento .................................................................................................................. 59 Fig.10. Aprendizaje de los conceptos CASA, TIENDA y ARCO............................................................................................. 63 Fig. 11. Descripcin estructural ................................................................................................................................................. 63 Fig. 12. Descripcin de un arco de acuerdo con el primer ejemplo........................................................................................... 64 FIig. 13. Descripcin del arco de acuerdo con el segundo ejemplo........................................................................................... 65 FIig. 14. Descripcin de arco despus de integrar dos ejemplos ............................................................................................... 65 Fig. 15. Descripcin de arco despus del ejemplo casi - equivocado ........................................................................................ 66 Fig. 16. Ejemplos para conocer un arco..................................................................................................................................... 67 Fig. 17 Reglas de generacin de enlace necesario ..................................................................................................................... 67 Fig..18 Regla de generalizacin de prohibicin de enlace......................................................................................................... 68 Fig. 19. Heurstica de Ascenso de rbol.................................................................................................................................... 69 Fig. 20. Red de similitud........................................................................................................................................................... 72 Fig. 21. Analoga Transformacional ......................................................................................................................................... 73 Fig. 22. Muestra un ejemplo de Analoga Transformacional..................................................................................................... 73 Fig. 23. Analoga Derivacional .................................................................................................................................................. 74 Fig. 24. Proceso del KBL........................................................................................................................................................... 80 Fig. 25. rbol de pruebas parcial determinado por el RSI......................................................................................................... 82 Fig. 26 Esquema general para la Multiestrategia de aprendizaje ............................................................................................... 89 Fig. 27. Relacin entre base de conocimientos y otros mdulos del Sistema Experto .............................................................. 93 Fig. 28. Evolucin del conocimiento ......................................................................................................................................... 93 Fig. 29. Diferentes niveles de detalle de la expresin El nio corre rpido ........................................................................... 94 Fig. 30. Elementos fundamentales del Clculo de predicados ................................................................................................... 96 Fig. 31. Elementos de un sistema de produccin ....................................................................................................................... 98 Fig. 32. Enlace de las declaraciones en la BC.......................................................................................................................... 100 Fig. 33. Representacin con Fuzzy sets del ejemplo El Williams es un auto ms rpido que el Ferrari.............................. 101 Fig. 34.. Variables Lingsticas ............................................................................................................................................... 102 Fig. 35. Grado de membresa ................................................................................................................................................... 102 Fig. 36. Representacin mediante redes semnticas ................................................................................................................ 106 Fig. 37. El perro mordi al cartero........................................................................................................................................... 107 Fig. 38. Todos los perros han mordido a algn cartero............................................................................................................ 107 Fig. 39. Todos los perros han mordido a todos los carteros..................................................................................................... 108 Fig. 40. Represetacin de un arco mediante frames................................................................................................................. 109 Fig. 41. Representacin de una sala......................................................................................................................................... 109 Fig. 42. Descripcin de los elementos de una oracin............................................................................................................. 110 Fig. 43. Representacin de una accin y los elementos involucrados ..................................................................................... 110 Fig. 44. Instanciacin de un evento ......................................................................................................................................... 111 Fig. 41. Representacin del conocimiento mediante dependencia conceptual ........................................................................ 111 Fig. 42. Consideraciones para la seleccin de tcnica de representacin del conocimiento.................................................... 119 Fig. 43. Relacin Ontologa - Representacin del conocimiento............................................................................................. 120 Fig. 44. Estructura de CYC...................................................................................................................................................... 121 Fig. 45. Representacin "A Mara le gusta nicamente la gente que programa en LISP....................................................... 122 Fig. 46. Arquitectura de EXIS ................................................................................................................................................. 123 Fig. 47. Elementos en la representacin de EXIS.................................................................................................................... 124 Fig. 48. Aprendizaje................................................................................................................................................................. 126

Fig. 49. Ejemplos de representacin ........................................................................................................................................ 127 Fig. 50. Esquema del motor de inferencia................................................................................................................................ 131 Fig. 51. Interrelacin del Motor de Inferencia con los componentes de un S.E. ..................................................................... 131 Fig. 52. Sistema de produccin................................................................................................................................................ 134 Fig. 53. Clculo del CF de una conclusin derivada por varios caminos ................................................................................ 135 Fig. 54. Razonamiento en objetos estructurados...................................................................................................................... 136 Fig. 55. Propiedades de las clases inherentes al objeto............................................................................................................ 136 Fig.57. Propiedades vlidas de una clase de objetos y sus instancias no vlidas..................................................................... 136 Fig. 58. Conflicto de inherencia............................................................................................................................................... 137 Fig. 59. Razonamiento conceptual........................................................................................................................................... 138 Fig. 60. Representacin de Frmulas y Modelos de Creencias ............................................................................................... 139 Fig. 61. Consistencia de teoremas............................................................................................................................................ 139 Fig. 62. Representacin mediante Fuzzy Logic ....................................................................................................................... 141 Fig. 63. Marco de referencia .................................................................................................................................................... 143 Fig. 64. Tabla de evaluacin .................................................................................................................................................... 145 Fig. 65. Programacin lgica ................................................................................................................................................... 146 Fig. 66. Implementacin del razonamiento no monotnico..................................................................................................... 149 Fig. 67. Ilustracin del retroceso dirigido sin dependencia ..................................................................................................... 150 Fig. 68. Ilustracin del retroceso dirigido sin dependencia ..................................................................................................... 151 Fig. 69. Ejemplificacin del retroceso dirigido por dependencia ............................................................................................ 152 Fig. 70. Ejemplificacin del retroceso dirigido por dependencia ........................................................................................... 153 Fig. 71. Ejemplificacin de suposicones................................................................................................................................. 153 Fig. 72. Desarrollo de un caso por medio de un sistema de mantenimiento de verdad ........................................................... 154 Fig. 73. Desarrollo de un caso por medio de un sistema de mantenimiento de verdad ........................................................... 155 Fig. 74. Polimorfismo .............................................................................................................................................................. 156 Fig. 7.5. Arquitectura ............................................................................................................................................................... 157 Fig. 76. Algoritmo del sistema de mantenimiento de memoria ............................................................................................... 158

XVIII

LISTA DE TABLAS
Tabla 1. Ventajas que poseen los expertos sobre los que no lo son.......................................................................................... 12 Tabla 2.a Ventajas que poseen los expertos sobre los que no lo son. ........................................................................................ 16 Tabla 2.b Descripcin de Sistemas Expertos. ............................................................................................................................ 17 Tabla 2.c Descripcin de Sistemas Expertos. ............................................................................................................................ 18 Tabla 3. Caractersticas de las Mquinas LISP.......................................................................................................................... 30 Tabla 4. Caractersticas de algunas Herramientas Hbridas. ...................................................................................................... 31 Tabla 5. Caractersticas de algunas Herramientas de Adquisicin de Conocimiento. ............................................................... 32 Tabla 6.a Cuadro de Herramientas de Sistemas Expertos.......................................................................................................... 32 Tabla 6.b Cuadro de Herramientas de Sistemas Expertos. ........................................................................................................ 33 Tabla 6.c Cuadro de Herramientas de Sistemas Expertos.......................................................................................................... 34 Tabla 6.d Cuadro de Herramientas de Sistemas Expertos. ........................................................................................................ 35

XX

INTRODUCCIN

INTRODUCCIN
El conocimiento es un activo cada vez mas apreciado por la sociedad contempornea, sus instituciones acadmicas, de investigacin y produccin se esfuerzan en adquirir mas conceptos, desarrollar modernas tecnologas, formular nuevas teoras y aportar significativos descubrimientos e invenciones en los todos los campos de las ciencias con el propsito de proveer un mayor bienestar a la poblacin. El conocimiento acumulado a lo largo de la historia, evoluciona y se actualiza permanentemente en forma cada vez mas acelerada, expandiendo su alcance y repercusin social en cada mbito de la actividad humana. Constituye el motor de transformacin y desarrollo de una nacin dentro del concierto mundial cada vez mas competido, donde los pases que alcanzan un primer plano de crecimiento industrial, tecnolgico y econmico, repercutiendo sus beneficios entre los habitantes. Ellos se caracterizan por la gran inversin que realizan en la adquisicin, desarrollo y explotacin de conocimiento especializado. Las organizaciones reconocen que su principal recurso es el humano, entre las razones que justifican la afirmacin destaca, el atributo de la persona como un ser dotado de habilidades y capacidades adecuadas en el ejercicio de funciones especficas gracias al nivel de preparacin que ha adquirido a lo largo de su vida; donde a travs del estudio, prctica y experiencias acumula un alto nivel de conocimientos. Por tal motivo, el individuo, la familia, las empresas y el gobierno reconocen como una prioridad el fomento de la educacin, la investigacin y el desarrollo tecnolgico. Ya que este medio constituye la esperanza de un mejor futuro, puesto que es un instrumento que contribuye a colocar en una posicin ventajosa a la persona, la organizacin y al pas mismo dentro del mbito donde se desenvuelven. La informtica como un campo de la actividad, est dedicada a eficientar el ejercicio de diversas labores, por medio de la representacin y empleo de conocimiento especfico para la sistematizacin de las tareas, de tal forma que se realicen con un mayor grado de rapidez, exactitud y simplicidad, contribuyendo a elevar el bienestar de los usuarios. Para ello aplica un enfoque interdisciplinario, procura mejorar sus instrumentos y metodologas de trabajo, aspira a optimizar cada vez mas sus aplicaciones y extender su marco de accin. Entre sus pretensiones destaca la creacin de sistemas basados en conocimiento dedicados a una aplicacin especfica. Para ello, utiliza las aportaciones de la inteligencia artificial en las reas de aprendizaje, razonamiento, representacin de conocimiento y comunicacin. Con estos elementos, procura crear una aplicacin mecanizada que almacene, explote y actualice los conocimientos que los especialistas en un campo pueden aportar para la solucin de problemas especficos, dando vida a los sistemas expertos. El profesional de la informtica debe adquirir los conocimientos y habilidades que le permitan encarar proyectos con un alto nivel de desarrollo tecnolgico, entre ellos la creacin de sistemas expertos que procuren explotar el acervo de los especialistas en forma sistematizada, destinndolos a campos especficos como el diagnstico mdico, control de procesos, evaluacin de condiciones meteorolgicas, entre otros. Dicha formacin se obtiene por medio de cursos, herramientas y acervos pertenecientes a la ingeniera del conocimiento. Con ese propsito se ha compilado este material a lo largo de estudios, investigacin y enseanza en el campo de los sistemas expertos, que al ser redactados en formato de apuntes respaldan la ctedra del profesor y el estudio de los alumnos. En ellos se ofrece las argumentaciones necesarias para comprender los temas conforme al programa de la asignatura. Su contenido incluye un perfil de los sistemas basados en conocimiento; los alcances y elementos de los sistemas expertos. Explica la metodologa y programacin de un shell para construir sistemas. Brinda los conceptos y tcnicas apropiadas en la creacin del mecanismo de aprendizaje, base de conocimientos, motor de inferencia e interface hombre mquina. Finaliza con la descripcin del metaconocimiento. Expreso mi gratitud a la U.P.I.I.C.S.A. por incentivar la redaccin de este material. Tambin a los alumnos que participaron en su edicin. De manera especial a Dios que como muestra de su amor cre al hombre a su imagen y semejanza (Gnesis 1.27), como un ser pensante capaz de adquirir y explotar conocimiento.

CAPTULO 1. SISTEMAS BASADOS EN CONOCIMIENTO

1. SISTEMAS BASADOS EN CONOCIMIENTO


1.1 ALCANCES DE LOS SISTEMAS DE INFORMACIN
Los sistemas de informacin mecanizados son concebidos e implementados como instrumentos que procesan informacin con el propsito de: Apoyar la toma de decisiones. Contener conocimiento tcnico. Reducir a un grado mnimo el error humano. Automatizar las operaciones repetitivas. Transmitir informacin dentro de la organizacin. Reducir el tiempo de realizacin de las operaciones. Bajar costos. Facilitar la tarea del usuario. Ofrecer informacin: completa, eficiente, veraz, oportuna. Manipular grandes volmenes de informacin. Satisfacer las necesidades del usuario.

1.2

EXTENSIN A LOS SISTEMAS BASADOS EN CONOCIMIENTO

Los sistemas basados en conocimiento se consideran una extensin - un paso tecnolgico - de los sistemas de informacin cuyos alcances y complejidad son mayores. Entre sus propsitos destacan: Aprender. Evolucionar. Adaptar. Razonar. Tomar decisiones. Contener conocimiento emprico, mundano y del lenguaje. Analizar problemas. Generar alternativas de solucin. Emular al experto humano. Generar conocimiento a partir del que ya se posee.

1.3

PROPIEDADES DE LOS SISTEMAS BASADOS EN CONOCIMIENTO


Procedimientos no algoritmicos. Manejo de incertidumbre. 0 , 1 mltiples soluciones. Conocimiento tcnico y cientfico. Busca generar la solucin ptima. Manipulacin de conocimiento no monotnico. Procesos interactivos. Aprendizaje de los fracasos. Empleo de mtodos para la representacin del conocimiento. Capacidad para explicar su propio razonamiento, cuestionamiento y emisin de conclusiones. Uso de bsquedas heursticas. Representacin de conocimiento especializado del campo de aplicacin. Pueden utilizar razonamiento con base en probabilidades, creencias, pertenencias y suposiciones. Procesamiento simblico. Utilizan sistema de mantenimiento de la verdad para afirmaciones y negaciones cambiantes. Datos cualitativos ms que cuantitativos.

Entre las caractersticas ms relevantes de los sistemas basados en conocimiento estn:

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

1.4

TIPOS DE APLICACIONES DE LOS SISTEMAS BASADOS EN CONOCIMIENTO


Lenguaje natural. Realidad virtual. Redes neuronales. Juegos. Sistemas expertos. Robtica. Sistemas de planeacin. Reconocimiento de imgenes. Traductores. Solucin de problemas. Sistemas evolutivos. CAM Manufactura. Llevado a mquinas de control numrico. Aprendizaje. Sistemas Tutoriales.

El mbito de aplicacin de los sistemas basados en conocimiento incluye:

CAPTULO 2. SISTEMAS EXPERTOS

10

2. SISTEMAS EXPERTOS
2.1 LA ELITE DE LOS SISTEMAS BASADOS EN CONOCIMIENTO
La tecnologa representada por los Sistemas Expertos actuales, surge de las tcnicas de Inteligencia Artificial que han sido objeto de amplias e intensivas investigaciones desde finales de los 50s. Las investigaciones referidas comenzaron en las matemticas para apoyar el razonamiento simblico. mediante el uso de IPL, el primer lenguaje simblico orientado al procesamiento de listas. Ms tarde surgi LISP, reconocido como lenguaje artificial. La investigacin en el campo los Sistemas Expertos comenz a mediados de los aos sesenta con un alcance limitado y se orientaron hacia juegos o temas altamente acadmicos e idealizados. Posteriormente se iniciaron desarrollos en los campos de la medicina, qumica, industria y la administracin. Los Sistemas Expertos se emplean para ejecutar una variedad de tareas que en el pasado solamente podan llevarse a cabo por un nmero limitado de personas expertas. A travs de la aplicacin de las tcnicas de Inteligencia Artificial (IA), los Sistemas Expertos captan el conocimiento bsico que permite a una persona desempearse como un experto frente a problemas complicados. Entre las caractersticas ms relevantes de los Sistemas Expertos, que los distingue de la mayora de las aplicaciones tradicionales de la computacin, es su capacidad para enfrentar problemas que constituyen un reto del mundo real, por medio de la aplicacin de procesos que reflejan el discernimiento y la intuicin humanas. En el futuro, a medida que se produzcan nuevas arquitecturas de equipos que soporten de una manera directa la ejecucin de Sistemas Expertos y se perfeccione la tecnologa de Inteligencia Artificial, es razonable esperar un desarrollo de sistemas que se aproximen asintticamente al comportamiento humano en muchas reas. El desarrollo de tales sistemas nos permitir ofrecer soluciones tcnicas ms completas y alimentar nuestro conocimiento del proceso del pensamiento humano. Por esta razn, los Sistemas Expertos constituyen el nivel especializado en la representacin y explotacin de aplicaciones basadas en conocimiento.

2.2 DESCRIPCIN DE LOS SISTEMAS EXPERTOS 2.2.1 DEFINICIN

Un Sistema Experto es un sistema computacional que adquiere conocimiento especializado en un campo especfico para explotarlo mediante mtodos de razonamiento que emulan el desempeo del experto humano en la solucin de problemas. Generalmente un Sistema Experto puede comprender: Amplio conocimiento especfico a partir del campo de inters. Aplicacin de tcnicas de bsqueda y heursticas. Habilidad para inferir nuevos conocimientos a partir de los actuales y de las experiencias obtenidas durante su operacin. Procesamiento simblico. Capacidad para explicar su propio razonamiento. Empleo de diversas tcnicas de solucin de problemas.

Para destacar la naturaleza de un Sistema Experto, se debe apreciar los rasgos del experto humano: l es una persona competente en un rea determinada del conocimiento que cuenta con un largo periodo de preparacin y prctica, la cual al aprovecharse se traduce al siguiente desempeo en comparacin con otra persona no especializada como se aprecia en la Tabla 1:

12

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Actividad Tiempo de resolucin de problemas de su rea Eficacia Organizacin Posee estrategias y tcticas Bsqueda de soluciones Clculos aproximados

Experto Grande Alta Alta Si Heurstica Si

No experto Pequeo Baja Baja No No heurstica No

Tabla 1. Ventajas que poseen los expertos sobre los que no lo son. En su desempeo los Sistemas Expertos, deben resolver los problemas como lo hacen sus smiles humanos, es decir en menor tiempo, con mayor eficacia y precisin.

2.2.2 CUALIDADES

Entre los rasgos ms relevantes de los Sistemas Expertos destacan: El proceso de buscar los conocimientos apropiados y a partir de stos deducir nuevos conocimientos constituye un elemento clave del procesamiento de un Sistema Experto. Capacidad de representacin simblica del conocimiento y razonamiento. Referencia a un dominio de conocimiento tcnico y altamente especializado. Capacidad de proceder heursticamente ms que algortmicamente en la bsqueda de soluciones. Est obligado a explicar sus razonamientos, preguntas y conclusiones. Alto grado de efectividad en la resolucin de problemas. Genera mltiples soluciones por contemplar varias hiptesis. Puede usar datos errneos, reglas inciertas, manejo de incertidumbre. Emplea generalmente interfaz de lenguaje natural. Interaccin con el humano o con el medio que controlan.

2.2.3 NIVELES DE APLICACIN

Se puede concebir una escala creciente de alcance y complejidad entre los diversos niveles de aplicacin, en donde de acuerdo a la naturaleza del sistema un nivel sirve de soporte a otro (es decir forma parte) o bien es una alternativa. Los principales niveles son: Los sistemas de interpretacin. Realizan el anlisis de datos observables para determinar su significado e inferir descripciones de situaciones del sistema medido por los datos. Un ejemplo de este tipo de sistemas es la interpretacin de los datos obtenidos por un espectrmetro de masas de los fragmentos moleculares. La interpretacin revela la determinacin de una o ms estructuras qumicas. Estos sistemas deben encontrar interpretaciones correctas y consistentes con los datos, considerando sistemticamente las posibles interpretaciones y descartando slo aqullas para las que hay suficiente evidencia para desecharlas. Esta categora incluye los sistemas de vigilancia, entendimiento de voces, anlisis de la imagen e interpretacin de seales. Los sistemas de prediccin. Prevn el curso futuro a partir de un modelo del pasado y presente. Por ejemplo la predeccin del clima con base al estado actual del tiempo. Los sistemas de diagnosis. Se orientan a la identificacin de estados o fallas en un sistema basado en datos observables, por ejemplo, el diagnstico de enfermedades infecciosas. Estos sistemas describen irregularidades observadas en el comportamiento del sistema, con sus causas subyacentes, para ello pueden usar una tabla de asociaciones entre comportamientos y diagnosis.

12

Sistemas Expertos

13

Los sistemas de diseo. Desarrollan configuraciones de objetos que satisfacen requerimientos o descripciones particulares, intentan minimizar una funcin objetivo que mide cortes y otras propiedades indeseables de diseos potenciales. Esta categora incluye el diseo de circuitos, edificios, presupuestos, etc. Los sistemas de planificacin. Se especializan en la creacin de planes, concebidos como un programa de acciones que pueden ejecutarse para alcanzar metas. Un planificador debe construir un plan que alcance metas sin consumir excesivos recursos o violar restricciones. Si existen conflictos entre metas, el planificador establecer prioridades y si los requerimientos de la planificacin o los datos para la decisin no son completamente conocidos o cambian con el tiempo, entonces el planificador actuar tentativamente. Tambin debe explicar planes posibles ya que en principio no puede saber las consecuencias de sus acciones. Estos sistemas incluyen programacin automtica, planes de robots, proyectos, rutas, comunicaciones, experimentos y planes militares. Los sistemas de monitorizacin. Interpretan seales continuamente y ponen en funcionamiento medidas de respuesta, como por ejemplo alarmas cuando se necesita una intervencin. En un sistema de este tipo el reconocimiento de las seales de alarma se debe llevar a cabo en tiempo real y evitar falsas alarmas a efectos de credibilidad. Existen sistemas de monitorizacin para plantas nucleares, trfico areo y enfermedades. Los sistemas de depuracin. Prescriben remedios para mal funcionamiento de un sistema. Estas aplicaciones confan en las capacidades de planificacin, diseo y prediccin para crear especificaciones o recomendaciones para corregir un problema de diagnosticado. Entre sus aplicaciones destacan, la robtica, el mantenimiento industrial y el de plantas nucleares. Los sistemas de reparacin. Desarrollan y ejecutan planes para administrar un remedio a algunos problemas diagnosticados. Tales sistemas incorporan capacidades de depuracin, planificacin y ejecucin. Se aplican en dominios como redes, aeronutica, mantenimiento de la computadora, etc. Los sistemas de instruccin. Para diagnstico y mejoramiento del aprendizaje de los estudiantes. Tpicamente este sistema empieza construyendo una descripcin hipottica del conocimiento del estudiante para interpretar el comportamiento del mismo, entonces diagnostican la eficiencia y determina un remedio adecuado. Finalmente se planifica una tutora interactiva para adquirir el conocimiento adecuado. Los sistemas de control. Gobierna adaptativamente el comportamiento global de un sistema, para lo cual debe interpretar repetidamente la situacin actual, predecir el futuro, diagnosticar causas de problemas, formular un plan para remediarlos y monitorear su ejecucin para asegurar el xito. En este tipo de sistemas se incluye el control del trfico areo, el manejo de negocios y el manejo de direccin virtual de una batalla,.

2.2.4 REAS DE DESARROLLO

Entre los campos donde se aplican los Sistemas Expertos destacan: Medicina. Gran parte de los Sistemas Expertos que se han desarrollado se aplican en el rea de la medicina, donde su funcin es realizar diagnsticos de enfermedades basados en el clculo de probabilidades. Finanzas. Es un campo importante debido a las grandes inversiones realizadas por entidades financieras, bancarias y aseguradoras. Industria: El reto de los Sistemas Expertos industriales se centra en la necesidad de que se comuniquen con dispositivos sensores, bases de datos, dispositivos de mando y accionamiento en tiempo real. Electrnica. Se orientan al diseo, diagnstico y reparacin. El uso de Sistemas Expertos se debe a la creciente complejidad de los circuitos y al gran nmero de parmetros a considera en los mismos. Militar. En actividades de monitoreo, diseo, planeacin, educacin y control. Aeronutica. Orientado al control de la posicin de los satlites y la interpretacin de sus imgenes.

14

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Agricultura. Diagnstico y tratamiento de tierras, control de plagas y creacin de nuevos herbicidas. Arqueologa. Para determinar la antigedad de los restos arqueolgicos, composicin de las piedras. Geologa. Se emplea en la exploracin de suelos, bsqueda de recursos, etc. Meteorologa. Se aplica en la previsin meteorolgica, control y administracin de recursos hidrogrficos. Qumica. Estudio de las propiedades de compuestos, interpretacin de los resultados obtenidos en los anlisis, planificacin de los procesos de sntesis.

2.3 ARQUITECTURA
Los Sistemas Expertos emplean una amplia variedad de arquitecturas especficas a las aplicaciones, sin embargo se puede generalizar un mdulo de componentes que normalmente se deben integrar en cualquier mbito, cuyos elementos se ilustran en la siguiente Figura 1:

Mecanismo de Aprendizaje

Usuario

Administrador Base de Conocimientos

Interfaz HombreMquina

Mquina de Inferencia

Memoria de Trabajo

Administrador Base de Datos

Fig. 1. Arquitectura general de los componentes de un Sistema Experto

El usuario El usuario de un Sistema Experto puede operar la aplicacin en cualquiera de las siguientes modalidades: Verificador: Intenta comprobar la validez del desempeo del sistema. Tutor: Brinda informacin adicional al sistema o modifica el conocimiento que ya est presente en el sistema. Alumno: Busca rpidamente desarrollar pericia personal relacionada con el rea especfica mediante la recuperacin de conocimientos organizados y condensados del sistema. Cliente: Aprovecha la pericia del sistema en el desempeo de tareas especficas.

14

Sistemas Expertos

15

El reconocimiento de las caracterizaciones anteriores contrasta con la percepcin de un simple papel (el cliente) de los sistemas de informacin tradicionales. Interfaz Hombre-Mquina Es el subsistema responsable de: Interactuar con el usuario: Inicia, desarrolla, suspende, reanuda y concluye la sesin. Establecer el protocolo de dilogo: Mediante parmetros, menues, conos, lenguaje natural o cualquier otro medio de expansin, como el reconocimiento de voz y sensores y servomecanismos que operan en tiempo real. Explicar el comportamiento del sistema: Debe ser capaz de argumentar las razones por las que formula cierta pregunta, hace un razonamiento y llega a una conclusin especfica. Este componente puede ser un sistema completo en s mismo, con sus propias base de conocimiento, motores de inferencias y reas de trabajo. Mquina de inferencia Conocida como Motor, se encarga de: Representar los mecanismos de solucin: Son los procedimientos que identifican y resuelven el problema, adems de evaluar las alternativas de solucin. Implementar los criterios de bsqueda: Conforme a la naturaleza del problema, disea bsqueda ciegas, heursticas o aplica mtodos ms ad-hoc, como agenda, alfa-beta y pizarrn. Fundamentar la inferencia: Congruente al tipo de conocimiento representado en la base de conocimientos establece el mtodo de inferencia correspondiente; por ejemplo; al emplear reglas de predicados entonces har uso de la resolucin unificacin. El motor es considerado el ncleo del Sistema Experto donde descansa la parte procedural. Base de Conocimientos Constituye el acervo de conocimiento especializado del Sistema Experto, consta de: El formalismo para representar conocimiento: Emplea una o varias tcnicas que permiten caracterizar y organizar conocimiento especfico; por ejemplo; frames, redes semnticas y scripts. Un administrador: Responsable del almacenamiento, recuperacin y actualizacin en las estructuras de representacin correspondientes. Servicio: Es el mecanismo encargado de responder a las demandas de acceso a elementos especficos de conocimiento (reglas, hechos, objetos, etc.) efectuados por el motor de inferencia y el mdulo de aprendizaje. Mecanismo de Aprendizaje Es el mdulo responsable de adquirir nuevo conocimiento y actualizar el existente, alterando a los subsistemas: Base de conocimientos: Modifica las declaraciones de conocimiento, agrega nuevas, verifica la consistencia entre ellas, resolviendo los conflictos. Mquina de Inferencia: Puede cambiar los mecanismos de inferencia, depurar las heursticas y mtodos de bsqueda, en aras de hacer ms eficiente la solucin de problemas, aprovechando la experiencia en la solucin de problemas semejantes. Interfase Hombre-Mquina: Entre ms refinado sea el conocimiento y los mecanismos de inferencia, ms eficiente deber ser la comunicacin con el usuario. Tambin sufrirn alteracin los argumentos de explicacin. Inclusive, se puede personalizar el lenguaje en funcin al usuario y problema, como fruto de las sesiones previas. Base de Datos Es el depsito de conocimiento complementario a la base de conocimientos que por su naturaleza, representacin y manipulacin se concibe como dato o informacin. El empleo que se deriva de este mdulo es:

16

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Almacenamiento de datos. Todos aquellos elementos del dominio de conocimiento del Sistema Experto, los especficos al problema y los particulares del usuario pueden registrarse en archivos o tablas convencionales. Administracin: Ofrece los servicios de insercin, acceso, actualizacin y borrado de datos, seguridad, integridad, confiabilidad, respaldo y restauracin y monitoreo de la informacin. Normalmente el Sistema Experto debe tener una interfaz con el software especializado en la administracin de archivos o bases de datos, tales como los engine de las RDBMS (Sistemas Manejadores de Bases de Datos Relacionales). Memoria de Trabajo Es el depsito de almacenamiento del cdigo, conocimiento y resultado de las inferencias que se genera a lo largo de la sesin, donde se desarrolla la solucin del problema. En esta rea se realiza: La representacin del espacion de estados: Que corresponda a la bsqueda de la solucin. La administracin de la red o estructura de conocimientos: Que se emple para representar a los estados iniciales, intermedios y finales del problema. Normalmente la memoria de trabajo se implementa en la memoria principal del ordenador con el posible respaldo del almacenamiento secundario.

2.4 PERFIL GENERAL DEL FUNCIONAMIENTO DE UN SISTEMA EXPERTO


La interfase Hombre-Mquina es el mdulo responsable de controlar la operacin del Sistema Experto, activa el inicio de la sesin, su desarrollo y conclusin. De acuerdo al procedimiento que define el problema la Interfase expresa las preguntas al usuario o se encarga de extraer los parmetros del ambiente que controla. Tambin valida las respuestas y brinda las explicaciones pertinentes que permitan aclarar y justificar la interrogacin. Durante la bsqueda de soluciones, establecer la comunicacin a que haya lugar entre el motor de inferencia y el mecanismo de aprendizaje con el usuario. Al final, expone las conclusiones con las justificaciones correspondientes que amplan la respuesta y sus razones.

2.5 EJEMPLOS DE SISTEMAS EXPERTOS


A continuacin se presenta la Tabla 2 con la relacin de Sistemas Expertos aplicados en el laboratorio o en el mbito comercial acompaada por una descripcin de su naturaleza: Airplan AL1, AL5 Arches Argos-2 Cards Casnet. Cat Csa DAA. Planificacin de lanzamientos y despegues, recuperacin de aviones sobre una base o un portaavion Expertos en ajedrez. Experto en arqueologa. Simulacin de la toma de decisin de un robot. Experto en jugar al bridge. Diagnstico y tratamiento del glucoma. Evaluacin de una amenaza de abordo de un avin. Manejo de centrales nucleares. Diseo de circuitos con alto grado de integracin. Tabla 2.a Ventajas que poseen los expertos sobre los que no lo son.

16

Sistemas Expertos

17

Dart. Delta Director Ideal.

Sistema inteligente de autodiagnstico contenido. Experto en reparacin de locomotoras elctricas y diesel. Del banco Santander. Valoracin de la situacin financiera de una empresa o cliente. Es un sistema que determina la estructura molecular de los compuestos qumicos a partir de una informacin primaria, procedente de ensayos. Enseanza asistida por ordenador. Es una versin independiente del dominio de Mycin, que contiene todo lo de este ltimo, excepto su conocimiento sobre enfermedades infecciosas de la sangre, facilitando el desarrollo de aplicaciones de diagnsticos de otros tipo, como es el caso de Puff para enfermedades pulmonares. Es un lenguaje de construccin de sistemas expertos que evoluciona a partir de Casnet. Se ha utilizado principalmente, para construir modelos e consulta en oftalmologa, endocrinologa y reumatologa. Concesin de crditos y prstamos. Planeacin estratgica y de misiones de sensores. Interpretacin del lenguaje hablado. Diagnsticos de control de calidad. Desarrollado en el MIT para la realizacin de clculos matemticos clsicos (integracin de funciones, ecuaciones diferenciales y clculo matricial. Aade conocimiento de anlisis a Drendal, para proponer y seleccionar reglas de fragmentacin de estructuras orgnicas. Diagnstico y terapia de enfermedades infecciosas bacterianas. Basado en Mycin, para la enseanza en medicina. Neurologa. Manejo de vehculos y proyectiles semiautomticamente. Planes de inversin. Estrategia a utilizar en las conversaciones de desarme.

Drendal

Eao Guidon Emycin

Expert

Expert Edge. Fresh. Hearsay II IGC. Macsyma

Metadrendal Mycin. Neomycin. Neurologist. Pilots Associates. Planpower. Politics

Tabla 2.b Descripcin de Sistemas Expertos.

18

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Prilling Advisor Prospector R1 Reactor. Rosie

Sistema Experto desarrollado para asesorar sobre la interpretacin y operacin de sondeos. Explorador de yacimientos minerales partiendo de informacin descriptiva de una zona. Desarrollado en Digital para configurar automticamente equipos VAX. Deteccin y actuacin en caso de alarmas y emergencias. Desarrollado en Rand Corporation, proporciona un sistema de programacin de propsito general para construccin de sistemas expertos. Aplicacin de impuestos y tasas. Programa que ayuda a la construccin de grandes bases de conocimiento, facilitando la transferencia de la experiencia de los humanos a la base de conocimientos mediante un dilogo basado en un subconjunto del lenguaje natural. Anlisis de riesgos y diseo de seguros. Tabla 2.c Descripcin de Sistemas Expertos.

Tax Genus. Teiresias

Underwriting Advisor.

2.6 OPERACIN DE PROTOTIPOS


Para ejemplificar la operacin de un Sistema Experto consideraremos una descripcin del funcionamiento de MYCIN, aplicacin reconocida como un modelo tpico de Sistema Experto: Es un Sistema Experto para la realizacin de diagnsticos, iniciado por De Feigenbaum y posteriormente desarrollado por E. Shortliffe y sus colaboradores. Su funcin es la de aconsejar a los mdicos en la investigacin y determinacin de diagnsticos en el campo de las enfermedades infecciosas. El sistema MYCIN, al ser consultado por el mdico, solicita primero datos generales sobre el paciente: nombre, edad, sntomas, etc. Una vez conocida esta informacin, el Sistema Experto plantea una hiptesis de la enfermedad. Para poder verificar comprueba primero la exactitud de las premisas de la regla. Esto se realiza mediante: Bsqueda de enunciados correspondientes en la base de conocimientos: Estos enunciados pueden a su vez estar de nuevo en la parte de consulta de otra regla, Preguntas al usuario. Aqu se trata de preguntas del tipo Se ha practicado en el paciente algn tipo de intervencin quirrgica o de otro tipo en el tracto biliar? Con las respuestas que recibe, MYCIN verifica o rechaza las hiptesis planteadas.

18

CAPTULO 3. CONSTRUCCIN DE SISTEMAS

20

3. CONSTRUCCIN DE SISTEMAS
3.1 LA INGENIERA DE CONOCIMIENTO
La Ingeniera de Conocimiento es la disciplina orientada a la creacin de sistemas basados en conocimiento para el anlisis y solucin de problemas de un dominio especfico como la visin, el lenguaje y el aprendizaje, tal como se muestra en la Figura 2.

rea del experto

Sistema Experto

FUENTE DE CONOCIMIENTOS

INGENIERA DE CONOCIMIENTO

SISTEMA BASADO EN CONOCIMIENTOS

Transformacin de representaciones

Fig. 2. Ambiente de la Ingeniera de Conocimiento

Aunque los conocimientos pueden conseguirse de una variedad de fuentes, incluyendo la documentacin y los sistemas de informacin existentes, la mayor parte se obtiene de personas expertas. El conocimiento suministrado por el experto, tiene un alto grado de especializacin orientada hacia un tema especfico. El Ingeniero de Conocimientos. Es la persona que obtiene los conocimientos del experto y los representa en el sistema basado en conocimientos. El ingeniero plantea las preguntas al experto, estructura sus conocimientos y los implementa en el sistema. En la creacin de la aplicacin, el ingeniero y el experto trabajan muy unidos. El primer paso consiste en identificar los problemas que deben ser resueltos por el sistema, es decir, se precisa el mbito de trabajo. Aqu se incluye ya al usuario, sus requerimientos tcnicos y operacionales. Una vez delimitado el dominio, hay que extraer y representar los conocimientos del experto. l debe comprobar constantemente si su conocimiento ha sido transmitido de la forma ms conveniente. El ingeniero del conocimiento es responsable de una implementacin correcta, pero no de la exactitud del conocimiento. La responsabilidad de esa precisin recae en el experto. La estricta separacin entre usuarios, experto e ingeniero del conocimiento no deber estar siempre presente. Pueden surgir situaciones en las que el experto es tambin el usuario. Este es el caso cuando existe un tema muy complejo cuyas relaciones e interacciones deben ser determinadas una y otra vez con un gran consumo de tiempo. De esta manera el experto puede ahorrarse trabajos repetitivos. La separacin entre experto e ingeniero del conocimiento permanece, generalmente, aunque hay ocasiones en que una persona juega ms de un rol. La funcin de adquisicin de conocimientos es comnmente, el aspecto de mayor dificultad en la construccin de Sistemas Expertos. Esto se debe principalmente al hecho de que el proceso requiere comunicacin estrecha, entre el experto del rea y el ingeniero de conocimientos y en consecuencia enfrenta los problemas asociados con las barreras tcnicas.

22

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

La Representacin del Conocimiento. Es una combinacin de estructuras y procedimientos interpretativos que se usan de forma adecuada por un programa, para emular un comportamiento inteligente. Involucra tanto al diseo de varias clases de estructuras para almacenar conocimiento en programas, como el desarrollo del procedimiento que permitan su manipulacin inteligente para hacer inferencias. El conocimiento representa la piedra angular de la capacidad de un Sistema Experto, entre los tipos de conocimiento que se pueden representar estn los mostrados en la Figura 3:

Objetos: nieve blanca

Sucesos: maana llover

Ejecucin: probar teoremas

Metaconocimiento : conocimiento del conocimiento

Fig. 3. Tipos de conocimiento que se quieren representar Objetos. Representan clases y describen objetos: Por ejemplo Los pjaros tienen alas, la nieve es blanca. Sucesos. Son las acciones y eventos del mundo, por ejemplo: El sol se eclipsar maana. De manera que es necesaria la representacin de una secuencia de sucesos y sus relaciones causa-efecto. Ejecucin. Es el conocimiento de cmo hacer las cosas, envolviendo objetos y sucesos. Por ejemplo: componer sentencias o probar teoremas involucra un conocimiento de ejecucin. Metaconocimiento. Es el conocimiento acerca de lo que nosotros conocemos. Por ejemplo: a menudo sabemos la extensin y origen de nuestro conocimiento sobre un objeto particular, el grado de confianza de cierta informacin, o la importancia relativa de hechos especficos del mundo.

La consideracin ms importante en la representacin del conocimiento es el uso que se va a dar al mismo. Su empleo est relacionado con: Adquisicin de ms conocimientos: No slo tiene que ver con la adquisicin de conocimientos sobre algo desconocido, sino tambin con la ampliacin de lo que ya conoce, ya que, cuando se sabe de un tema, ms fcilmente se aprenden cosas adicionales del mismo, lo que produce un proceso incremental. Recuperacin de conocimiento: Para resolver un problema determinado, es necesario identificar el conocimiento til para resolver el problema. Razonamiento: Para generar soluciones a partir de conceptos establecidos confiables es necesario producir nuevos elementos de conocimiento.

Por ejemplo , si tenemos un sistema cuyo conocimiento es: Toda mujer liberada es una persona moderna. Toda persona moderna es una persona. Podr responder directamente a preguntas como: Es una mujer liberada una persona moderna? SI Es una persona moderna una persona? SI 22

Construccin de Sistemas

23

Pero si le preguntamos: Es una mujer liberada una persona? El sistema tiene que razonar para responder a la pregunta. Existen diversos tipos de razonamiento como los siguientes: Razonamiento Formal: Implica la manipulacin sintctica de estructuras de datos para deducir otras nuevas siguiendo reglas de inferencias especficas de la lgica matemtica. Razonamiento Procedural: Ejecuta clculos para responder cuestiones y resolver problemas. Razonamiento por Analoga: Establece una analoga entre objetos para responder cuestiones sobre uno basndose en el conocimiento que se tiene del otro. Razonamiento por Generalizacin y Abstraccin. Por ejemplo, si se sabe que:

Los colibres tienen alas Las garzas tienen alas Las grullas tienen alas Se puede llegar a inferir que todos los pjaros tienen alas por una generalizacin. Conocimiento Declarativo: El conocimiento se representa como una coleccin esttica de hechos, acompaada por un conjunto de procedimientos generales para manipularlos. Los esquemas declarativos destacan el concepto de un enunciado simple que establece un elemento de verdad. Sus ventajas son: Cada hecho slo necesita almacenarse una vez con independencia del nmero de formas distintas en que puede usarse. Es fcil aadir nuevos hechos al sistema sin cambiar los conocidos. Esto proporcionar a los sistemas de este tipo ms flexibilidad y economa de recursos y medios, certidumbre en las deducciones y modificabilidad. Transparencia: El conocimiento representado se almacena en forma explcita y sin ambigedades. Es relativamente fcil revisar los conocimientos debido a su transparencia. Inferencia directa: La naturaleza esttica y directa de la representacin posibilita la inferencia explcita y directa, en forma parecida a la inferencia matemtica. Todas estas estructuras comparten la nocin de que entidades complejas pueden ser escritas como una coleccin de atributos y sus valores asociados.

Ejemplos de esta clase de representacin son: el clculo de predicados, las redes semnticas, marcos y guiones. Conocimiento procedural: El conocimiento se representa por procedimientos para el uso del mismo. Entre sus principales ventajas estn: La facilidad de representar el conocimiento de cmo hacer las cosas. La capacidad de representar el conocimiento que no se ajusta bien en muchos esquemas declarativos simples, tal como sucede con el conocimiento incierto o probabilstico. Las tcnicas de representacin de este tipo de conocimiento son: scripts, esquemas, programacin por eventos.

3.2 METODOLOGA PARA LA CONSTRUCCIN DE SISTEMAS EXPERTOS


La metodologa para la creacin de un Sistema Experto se representa como un modelo de ciclo de vida, donde se reconoce la naturaleza evolutiva del desarrollo del sistema. El ciclo de vida se divide a su vez en varios ms pequeos que pretenden alcanzar metas muy concretas sujetas a revisin y correccin, como se muestra en la Figuras 4 y 5:

24

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Seleccin del problema

R d e e v l i s i n

p r o b l e m a

Construccin de Prototipo
R d e e v i s i n f o r m a l i s m o s

Formalizacin

Construccin

Implementacin

Evaluacin

Evolucin a largo plazo

R e v i s i n

e v o l u t i v a

Fig. 4. Modelo del ciclo de vida para el desarrollo de un Sistema Experto Seleccin del problema El proceso de seleccin del problema, se puede descomponer en los pasos siguientes:

Investigacin del problema

Aplicabilidad del dominio

Seleccin del candidato


Identificacin del problema

Disponibilidad del experto Alcance del problema

Anlisis del candidato

Seleccin final del candidato

Anlisis de costo/beneficios

Fig. 5. Proceso de identificacin del problema 24

Construccin de Sistemas

25

Investigacin del problema: Mediante la investigacin de campo, anlisis documental, observacin, entrevistas y sesiones de Lluvia de ideas se procede a identificar los tipos de problema a resolver. Seleccin de candidatos: Reduce la lista de las aplicaciones que recibirn consideracin seria. Para seleccionar aquellos candidatos, cada uno de los elementos en la lista original se evala con relacin a un conjunto de criterios de filtracin. Aplicabilidad del dominio: Este paso consiste en un anlisis detallado de lo adecuado que resulta el dominio para la aplicacin de un Sistema Experto. Los criterios para este anlisis incluyen: La tarea demanda razonamiento experto. Los problemas del dominio se solucionan usando principalmente conocimiento simblico. La tarea primariamente debe ser cognoscitiva y no debe requerir manejo fsico extenso.

Disponibilidad experta: Es imperativo que un experto apropiado est disponible: Debe existir un experto que est posibilitado para resolver problemas del dominio del tema. El experto debe ser capaz de describir el conocimiento del dominio y cmo se aplica. El experto debe disfrutar de buena reputacin entre los potenciales usuarios del sistema. Mltiples expertos deben estar de acuerdo sobre las tcnicas de solucin de problemas.

Alcance del problema: Se deben dimensionar los alcances del proyecto sobre un tema especfico. Anlisis de costo/beneficio: Es necesario hacer un anlisis del costo de construir el sistema comparando con el benfico esperado. Cada costo incluye la contratacin del experto y del ingeniero de conocimientos, adems del costo del equipo requerido y software. Construccin de prototipos Una vez que se haya seleccionado un problema, la prxima tarea es construir un prototipo que represente una pequea parte del sistema final. Tpicamente emprende 5 a 10 casos de prueba y requerir desde unas semanas hasta unos pocos meses para completarlo, dependiendo del alcance y dificultad del problema. Los pasos en este proceso son: Adquisicin del conocimiento inicial Modelo de consulta general Seleccin del mecanismo de inferencia Determinacin del modelo de la representacin de conocimientos Seleccin de herramientas Implementacin del prototipo Prueba del prototipo Demostracin del prototipo Revisin del proyecto

El proceso de construccin de un prototipo es anlogo a la produccin por un artista de un esquema a carboncillo de una pintura. Antes de que un artista comience a aplicar el leo a un retrato, el artista comnmente hace un esbozo del retrato completo con un lpiz. El prototipo, como el carboncillo puede ser visto como un agente activo en el proceso de diseo y planeacin. Los propsitos especficos del prototipo son: Ganar un entendimiento ms profundo de la naturaleza y alcance del problema y de las tcnicas asociadas en la solucin de problemas. Demostrar la funcionalidad general del sistema. Probar las decisiones de diseo iniciales

26

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

La actividad de construccin del prototipo involucra normalmente al ingeniero de conocimientos y al experto en el dominio. Comienza con la adquisicin inicial de conocimientos en la cual el ingeniero de conocimiento hace una investigacin global intensiva del dominio mientras busca aprender tanto sea posible acerca de los aspectos crticos del tema. Despus de haber adquirido el conocimiento fundamental disponible, el ingeniero de conocimientos se rene con el experto para comenzar a discutir los estudios de casos especficos y clarificar el entendimiento del conocimientos obtenido. Una vez alcanzado un buen entendimiento del dominio, se inicia el proceso de desarrollar un enfoque del problema bsico, el modelo de consulta general, el paradigma de inferencia y la representacin del conocimiento. A continuacin se selecciona una herramienta que operar con eficiencia el paradigma seleccionado y se escoge la representacin del conocimiento adecuada para ejemplificar la implementacin del prototipo. El prototipo luego es analizado para determinar la validez tanto del problema elegido como la de las tcnicas de implementacin. Finalmente se procede a realizar los ajustes necesarios.

Formalizacin Los propsitos principales de la fase de formalizacin son: Captar y registrar la comprensin clave que se desarroll durante a fase de prototipo. Forzar a que la planeacin se haga, antes de comenzar la implementacin completa. Registrar las decisiones respecto a las estrategias de implementacin. Ofrecer visibilidad a todo tipo de pensamiento corriente para posibilitar que ms gente contribuya al proyecto. Ofrecer visibilidad de los puntos de verificacin para posibilitar a la administracin del proyecto y al usuario, a involucrarse en el proyecto. Posibilitar el desarrollo concurrente de pruebas, el despliegue y el soporte de medios a largo plazo.

Las etapas que integran al proceso de formalizacin se muestran en la Figura 6. Definicin detallada del problema: Se desarrolla una descripcin funcional que defina claramente el problema que se va a resolver, los objetivos a lograr y lo ms importante cualquiera de las restricciones que sirvan para limitar el alcance del proyecto y las experiencias del usuario. Planeacin del producto: Describe las caractersticas fsicas, operativas, aplicativas y comerciales del producto que se desea crear. Diseo: Produce el esquema conceptual detallado de los componentes del Sistema Experto, estructuras de conocimiento, mecanismos de bsqueda, inferencia y aprendizaje, as como los medios de comunicacin con el usuario. Planeacin del proyecto: Presenta un estimado de los recursos que se requerirn para completar el proyecto junto con un presupuesto que describe la forma como se asignarn los recursos. Tambin incluye una declaracin de la propuesta de programacin del proyecto que muestra las tareas y su interdependencia. Cada una de estas tareas se asigna a un miembro del equipo del proyecto propuesto. Planeacin de la prueba: Define los elementos requeridos para verificar la validez del sistema despus de que ste se haya desarrollado. Esto incluye la identificacin de los casos de prueba y los procedimientos para ejecutarlos. Los casos de prueba deben centrarse en la identificacin de un conjunto de ejemplos nominables que fuercen al sistema a trabajar en condiciones lmites. Planeacin de la implementacin: Identifica las actividades y recursos involucrados en la liberacin y puesta en marcha del producto. 26

Construccin de Sistemas

27

Planeacin del soporte: Determina los recursos, polticas y procedimientos para brindar el soporte tcnico a usuarios y el mantenimiento del sistema.

SISTEMA EXPERTO

DEFINICION DETALLADA DEL PROBLEMA * Descripcin del problema * Declaracin de objetivos * Restricciones

Descripcin funcional

PLANEACION DEL PRODUCTO * Sistema de entrega * Presentacin inicial * Presentacin beta * Exposicin limitada * Uso general * Evaluacin del producto

DISEO * Caractersticas esenciales del conocimiento * Arquitectura del sistema * Seleccin de herramientas * Descripcin de la representacin del conocimiento * Paradigma de inferencia * Modelo de consulta

PLANEACION DE LA PRUEBA * Procedimientos de prueba * Identificacin de casos de de prueba * Requerimientos de montaje

Plan de introduccin del producto

Plan de evaluacin del producto

Descripcin del diseo

Plan de prueba

PLANEACION DEL PROYECTO * Estimacin de recursos * Programacin del proyecto * Asignacin de tareas * Presupuesto * Definicin del control

PLANEACION DE LA IMPLEMENTACION * Determinacin del sistema de desarrollo * Adquisicin de conocimientos * Control de versiones * Anlisis de subconjuntos

PLANEACION DEL SOPORTE

* Soporte a largo plazo * Evaluacin a largo plazo * Control de versin * Pruebas regresivas * Mantenimiento de la pericia experta

Plan de introduccin del producto

Descripcin de la implementacin

Plan del soporte

Fig. 6. Proceso de formalizacin del Sistema Experto Construccin El ingeniero de conocimiento y el grupo de desarrolladores interpretan las especificacions funcionales y del diseo del producto establecidas en la formalizacin para crear los programas y editar las bases de conocimiento y de datos necesarias en el funcionamiento del Sistema Experto. De acuerdo con las polticas, estndares y tcnicas de programacin, se codifican y prueban cada uno de los mdulos, depurando las fallas y errores que se detecten gracias a los casos de prueba considerados en el plan.

28

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Es responsabilidad del grupo de trabajo entregar un producto que cumpla eficazmente con las especificaciones del producto y que procure aprovechar eficientemente los recursos. Implementacin Una vez creado el Sistema Experto y habiendo realizado las pruebas pertinentes, se procede a integrar el cuerpo completo de conocimiento y datos a las bases respectivas.Tambin se realizan las pruebas piloto del sistema completo bajo condiciones reales de trabajo, procediendo a los ajustes finales. Se elabora la documentacin tcnica, operativa y promocional del producto y se hace su presentacin ante los usuarios e interesados. Evaluacin Generalmente el sistema se evala comparando las respuestas que brinda a problemas especficos con las ofrecidas por el experto humano. Tambin es posible evaluar la estructura en vez de la funcin del sistema, esta clase de prueba se centra en la verificacin de la completitud y consistencia del sistema por medio de la evaluacin de la implementacin interna. Finalmente las crticas del usuario son consideradas en cuanto a la facilidad de operacin, claridad de la comunicacin y credibilidad de sus respuestas. Evolucin a largo plazo Como con cualquier sistema, un Sistema Experto evoluciona a lo largo de su vida motivado por las siguientes razones: Incremento de la funcionalidad. Correcciones. Adiciones a la base de conocimientos para hacer una base ms completa. Expansin del dominio del sistema. Revisiones requeridas por los expertos.

El aspecto ms significativo de la evolucin a largo plazo resulta del efecto que tiene sobre un experto el desarrollo de un Sistema Experto. El beneficio indirecto es que un Sistema Experto obliga al experto a articular y estructurar conocimientos. En casi todos los casos la presencia de este gran cuerpo estructurado de conocimientos posibilitar al experto la revisin de su propio pensamiento para producir mejores soluciones. El proceso de evolucin a largo plazo viene luego a ser un crecimiento combinado del experto y del sistema.

3.3 RECURSOS INVOLUCRADOS


La construccin de un Sistema Experto requiere la concurrencia de diversos recursos, entre los que destacan: Humanos.- Existen cuatro roles: Patrocinadores: Son aquellos interesados en la creacin del sistema, que brindarn el respaldo financiero, legal y de recursos necesario. Experto: Son los especialistas en el dominio del problema a resolver con el sistema. Ingenieros del Conocimiento: Lo constituyen los especialistas en Inteligencia Artificial responsables de la construccin. Usuarios: Son las personas beneficiadas con la operacin del sistema. Computacionales.- Integrados por: Ordenador: En funcin de la complejidad del sistema y volumen del conocimiento y datos a manipular puede exigir el uso de main frames a computadores de proceso paralelo. Software: Son las herramientas disponibles para crear, implementar y mantener el sistema; como los lenguajes de programacin de la Inteligencia Artificial y shells. Logsticos.- Est compuesto por: El acervo de conocimiento: Son las fuentes de informacin a las que corresponde el dominio de los problemas que resuelve el sistema.

28

Construccin de Sistemas

29

Ingeniera del Conocimiento: La disciplina para la construccin del sistema. Administracin de Proyectos: Son las tcnicas y procedimientos necesarios para la planeacin, organizacin, direccin y control de un proyecto de esta naturaleza.

Materiales.- Se integran de: Instalaciones. Mobiliario. Equipo de comunicacin. Papelera y accesorios Financieros.- Brindan el sustento para la contratacin de personal y la adquisicin de los recursos necesarios.

34 TIPO DE SOFTWARE APROPIADO A LA CREACIN DE SISTEMAS EXPERTOS


Existen varias clases de herramientas para crear Sistemas Expertos, con opciones de funcionalidad y requerimientos de equipo. En general, las herramientas para Sistemas Expertos se pueden pensar como cubriendo un espectro. Este espectro se mueve desde el nivel ms inferior de los lenguajes de programacin de propsito general hasta niveles ms grandes de desarrollo, como se describe a continuacin: Paradigmas Pueden desarrollarse Sistemas Expertos en diferentes lenguajes de programacin, sin embargo hay algunos que son especialmente adecuados en funcin al paradigma de programacin al que pertenecen. Entre los principales enfoques de programacin estn: Procedimiento: Esta definicin cubre la programacin algortmica. Declarativos: Se especifica la naturaleza del problema y sus caractersticas, dejando la eleccin del procedimiento de solucin a los mecanismos de operacin contenidos en la propia herramienta, que interpreta las especificaciones y genera la solucin o genera un programa ad-hoc responsable de producirla. Lgica: Es la descripcin de un problema con hechos y reglas. Funcional: La solucin de un problema se consigue con la aplicacin de funciones. Orientada al objeto: Las entidades del problema se definen como objetos y su funcionamiento se especifica como mtodos. Estos mtodos producen resultados especficos.

Lenguajes de programacin Si bien se pudiera considerar el empleo de lenguajes convencionales como C, Pascal o Fortran en la creacin de un Sistema Experto, es mucho ms recomendable emplear aquellos pertenecientes al campo de la Inteligencia Artificial, como es el caso de: LISP Es el lenguaje ms popular de la Inteligencia Artificial, orientado al proceso simblico de conocimiento mediante el empleo de funciones y listas; a partir de una coleccin mnima el usuario construye sus propias funciones para crear aplicaciones complejas que usan la recursividad y el macroproceso. Prolog Presenta el conocimiento en forma de predicados que aparecen en forma de hechos, reglas y preguntas. Los hechos y reglas definen la base de conocimientos. Las preguntas son tratadas por el demostrador de teoremas que comprueba si el predicado a demostrar puede deducirse de la base de conocimientos. Este mecanismo de control usa la unificacin y backtrack. INTERLISP-D El Interlisp-D es un sistema de programacin LISP interactivo desarrollado para terminales de trabajo con capacidad de realizacin de grficos, abarca funciones predefinidas y un entorno de programacin, dispone de un intrprete y un compilador de gran ayuda en la programacin de procesos paralelos y en la conexin de terminales de trabajo a una red de ordenadores. La interfase de usuario usa ventanas y mens.

30

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

El sistema ofrece ayudas adicionales en el desarrollo y control de programas con los mtodos auxiliares siguientes: Editor orientado a la estructura: Con el editor pueden elaborarse estructuras LISP, es decir funciones y datos. Break Package (Debugger): El usuario puede analizar el estado del sistema. Inspector: Ofrece apoyo al anlisis de estructuras complejas de datos y se modifican datos determinados en estas estructuras. DWIM: Corrige las erratas del usuario. Pretty-printer: Visualiza funciones de forma claramente legibles. Masterscope: Analiza el funcionamiento del programa. Record/Datatype Package: Permite al usuario definir records y estructuras propias de datos. Performance Analysis: Ejecuta anlisis estadsticos de ejecuciones de programas.

Shells Un shell es un Sistema Experto que contiene una base de conocimientos vaca, contiene el mecanismo de inferencia, el componente explicativo y a la interfase de usuario. Ya que el mecanismo de inferencia depende del problema, no existe ningn shell para todas las aplicaciones, sino que hay que buscar un shell apropiado para cada aplicacin. Tambin es posible que haya que desarrollar adicionalmente partes del mecanismo de inferencia. Segn el tamao de esta parte tendr que pensar si la aplicacin de un shell determinado sigue siendo apropiada. Cuando el ingeniero del conocimiento conoce bien el shell, es decir, sabe exactamente cmo son procesadas las reglas, entonces slo tendr que concentrarse en la creacin de la base de conocimientos. Mquinas LISP - Prolog Como entornos de hardware para el desarrollo de sistemas expertos se utilizan a menudo mquinas dedicadas. Su microcdigo est orientado al lenguaje de programacin al que representan. A mediados de 1970 se desarroll en el laboratorio de inteligencia artificial del MIT una mquina especializada en la ejecucin de Lisp. Varios sistemas comerciales han resultado de este esfuerzo, incluyendo aquellos obtenibles del LMI, Symbolics y Texas Instrument. Por el mismo tiempo, se desarroll en forma independiente en el Centro de Investigaciones de la Xerox, en Palo Alto (PARC) , un sistema similar, e inclusive durante los 80s en el IIMAS de la UNAM en Mxico se construy tambin una mquina similar. Los sistemas expertos ms grandes y sofisticados tradicionalmente se han desarrollado en mquinas especializadas Lisp por la potencia y capacidad del equipo bsico y adems por los ambientes de software que corren en ellas. Algunas mquinas Lisp y caractersticas relevantes de ellas, se muestran en la Tabla 3:
Parmetro Symbolics 3600 LMI Lambda TI Explorer Xerox 1100

Tamao de la palabra Memoria principal Tiempo de acceso cache Tiempo de acceso memoria Espacio direccionable Mximo almacenamiento (disco) Comunicaciones Software Bsico Principal

36 bits M-30MB * 200 ns 1 GB 3.5 GB Ethernet Zetalisp Common lisp Interlisp Prolog

40 bits 4-32MB 100 ns 300 ns 128 MB 515 MB Ethernet Zetalisp Common lisp Interlisp Prolog Unix

32 bits 2-16MB * 300 ns 128 MB 528 MB Ethernet Zetalisp Common lisp Interlisp Prolog

16 bits 2-18MB 70 ns 480 ns 332 MB 315 MB Ethernet Zetalisp Interlisp Interlisp Smalltalk Prolog

Tabla 3. Caractersticas de las Mquinas LISP. Todas las mquinas populares Lisp, tienen en comn: Alta velocidad para el procesamiento de Lisp.

30

Construccin de Sistemas

31

Alta resolucin, despliegue de pantalla por mapa binario. Enlace de comunicaciones. Soporte para ambientes de desarrollo de sistemas expertos.

Las mquinas PROLOG se estn desarrollando en el Japn y en Inglaterra sobre todo en el marco del programa de la Quinta Generacin. En la actualidad, todava no estn disponibles en el mercado comercial. Herramientas hbridas Una herramienta hbrida brinda un ambiente para resolver problemas complejos cuando diversas partes del problema requieren diferentes clases de soporte. Son usadas tpicamente en estaciones de trabajo de inteligencia artificial. Hacen uso de grficas de alta resolucin de mapa binario, ventanera y ratn para proporcionar una interfaz con el usuario amable. Esta interfaz ayuda al desarrollador del sistema a construir el sistema precisa y rpidamente. Algunos ejemplos y caractersticas de esta clase de herramientas se ilustran en la Tabla 4:
S1 Inferencia Encadenamiento hacia adelante Encadenamiento hacia atrs Herencia Representacin Reglas Marcos Lgica Valores activos Incertidumbre incorporada Factores de certidumbre Rastreo con dependencia Interfaz con el usuario Editor grfico Mens Ventanas mltiples Seguimiento Explicaciones incorporadas * * * KEE * * * ART * * * LOOPS * * * SRL + * * *

* * No No

* * * *

* * * No

* * No *

* * * *

* No

No No

* *

No No

No No

No * * * *

* * * * *

* * * * *

* * * * No

* * * * *

Tabla 4. Caractersticas de algunas Herramientas Hbridas.

Herramientas para adquisicin de conocimientos Debido a que la adquisicin de conocimientos es una tarea difcil que consume tiempo, resulta til auxiliar al ingeniero de conocimientos una herramienta que le permita junto con el experto construir el sistema conjuntamente. Tal herramienta posibilita que un experto que no est familiarizado con las complejidades del diseo de un Sistema Experto construya un sistema casi en la misma forma en que la introduccin del Fortran permiti a la comunidad cientfica escribir programas sin entender a los equipos de cmputo o lenguaje de mquina. Un ejemplo de estas herramientas se ilustra en la Tabla 5:

32

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Sistema ETS

Clase de dominio Clasificacin

Mtodo Simulacin psicolgica

Lenguaje Objetivo OPS5

Referencia Boose, 184

More

Clasificacin

Revisin de la base OPS5 de conocimientos existentes Revisin de los Emycin modelos de ejemplos Identificacin conocimientos papeles Identificacin conocimientos papales de OPS5 de

Kahn, 1985

Roget

Clasificacin

Bennett, 1985

Salt

Clasificacin

Marcus, 1985

Salt

Construccin

de OPS5 de

Marcus,1985

Tabla 5. Caractersticas de algunas Herramientas de Adquisicin de Conocimiento. Finalmente, a manera de ilustracin se presenta una relacin de herramientas para construir Sistemas Expertos con caractersticas, mbito de aplicacin e institucin involucrada, conforme a la muestra presentada en la serie de Tablas 6. Nombre de la Herramienta
ACTOR

Representacin del conocimiento

Aplicacin especial

Empresa/ Institucin
MIT

Observaciones

Objetos son actors que Investigacin de pueden comunicarse con la manipulacin de datos con otros actors paso de mensajes Frameworks: ej. backward blackboard Desarrollo de para chaining, marcos mecanismos de control

Lenguaje programacin inteligencia artificial

de de

AGE

SU

Entorno de desarrollo de programacin

AIMDS

Lenguaje representacin conocimiento Diagnstico de fallos al evaluar sistemas expertos Anlisis de proyectos, estimacin de costes y tiempo (planificacin) Universidad de Edinburgo Shell

de del

AL/X

ANALYSEN PLUS

Business Informacin Techniques

Sistema de desarrollo de programacin

Tabla 6.a Cuadro de Herramientas de Sistemas Expertos.

32

Construccin de Sistemas

33

Nombre de la Herramienta
KS-300 LM

Representacin del conocimiento

Aplicacin especial

Empresa/ Institucin
TEKNOWLEDGE

Observaciones
Shell Lenguaje programacin inteligencia artificial de de

Frames

Programacin de robots industriales Syracuse University

LOGLIPS

Listas de objetos

Lenguaje de programacin de inteligencia artificial. Dialecto LISP con caractersticas del PROLOG Entorno de desarrollo de programas Lenguaje programacin inteligencia artificial de de

LOOPS

Xerox PARC

LISP (COMMON LISP, ELISP, FRNAZLISP, INTERLISP, TLC-LISP,UCI-LISP VLIPS, ZETALISP MBASE Sistemas expertos para mecnica, estadstica, problemas de medio ambiente Diagnstico mdico

MIT

Universidad de Edinburgo

Shell implementado en PROLOG

MECS-AI

Toshiba R&D Center/Univ. De Tokyo Hosp. CSIC-Blanes Barcelona Delphia Sp. A

Entorno de desarrollo de programas

MILORD

Reglas semnticas

redes Diagnsticos mdicos

Shell

OMEGA

Sistema de representacin del saber para Symbolics, T.I y LMI, mquinas LISP VAX Lenguaje de programacin de inteligencia artificial en Franz-LISP Lenguaje programacin inteligencia artificial Lenguaje programacin inteligencia artificial de de

OPS (OPS4, OPS5, OPS7 OPS-83)

Sistemas de produccin

reglas de Sistemas reglas produccin

de de

CMU

OWL

MIT

PLANNER

MIT

de de

Tabla 6.b Cuadro de Herramientas de Sistemas Expertos.

34

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Nombre de la Herramienta
POP-2

Representacin del conocimiento

Aplicacin especial

Empresa/ Institucin
Universidad de Edimburgo

Observaciones
Lenguaje programacin inteligencia artificial Lenguaje programacin inteligencia artificial de de

POP-11

Universidad de Sussex

de de

POPLOG

Universidad de Sussex

Entorno de desarrollo de programas Entorno: VAX Lenguaje programacin inteligencia artificial de de

PROLOG (C-PROLOG, M-PROLOG) PS I Sntesis programas Slots mecanismos herencia Activacin de reglas Modelado disparadas por datos o situaciones complejas acontecimientos, jerarquas de conceptos, mecanismos de herencia de

Universidad de Marsella

SU

Entorno de desarrollo de programas Es un Sistema Experto para el desarrollo de sistemas expertos

RLL

y de

SU

ROSIE

de RAND Corp. Santa Shell en Interlisp Monica

ROSS

Clasificacin jerrquica de Simulacin de clases de objetos batallas areas

RAND Corp.

Lenguaje de inteligencia artificial orientado al objeto Shell, reglas de produccin escritas en PASCAL, backward chaining Entorno: VAX/VMS Lenguaje programacin inteligencia artificial Lenguaje programacin inteligencia artificial Shell de de

SAGE

SPL Research Centre, England

SAIL

Reconocimiento patrones

de

SU

SCHEME

MIT

de de

S.1

Teknowledge

SMALL TALK

Objetos que envan y Desarrollos reciben informacin dinmicos y no secuenciales (passing messages)

XEROX PARC

Lenguaje programacin inteligencia artificial

de de

Tabla 6.c Cuadro de Herramientas de Sistemas Expertos.

34

Construccin de Sistemas

35

Nombre de la Herramienta
TWAICE

Representacin del conocimiento


Reglas de produccin, relacin jerrquica entre objetos por rbol de objetos, tro objetoatributo-valor para la representacin de hechos Reglas, frames

Aplicacin especial

Empresa/ Institucin

Observaciones

en PROLOG Campos de Nixddorf Paderborn Shell Entorno: Nixdorf8832 conocimiento (Unix) 8890 (VM) asesor o diagnstico

UNITS

SU

Lenguaje representacin conocimiento

de del

Tabla 6.d Cuadro de Herramientas de Sistemas Expertos.

3.5 RECOMENDACIONES
Tradicionalmente se considera la creacin de un Sistema Experto como un proyecto de investigacin o acadmico, sin embargo cada vez aparecen aplicaciones orientadas al ambiente comercial, sobre todo aquel donde existe gran inversin informtica y se reconoce el lmite de los sistemas en cuanto a la evaluacin de grandes cantidades de informacin y la toma de decisiones. Por ejemplo, en el mbito financiero existe el bur de crdito que se alimenta de los crditos y cobros que las instituciones otorgan a los clientes, estas aplicaciones evalan cada compromiso del usuario, su comportamiento en el pago de sus obligaciones en comparacin a los trminos de plazo e inters. Con base al registro de cada operacin se determina el nivel de cumplimiento del interesado y sirve como antecedente para otorgar un nuevo prstamo. Ante el empleo de recursos computacionales ms poderosos, el acceso a diversos bancos de informacin en cualquier parte del mundo, se hace evidente la falta de asimilacin de tanto conocimiento que est disponible a las empresas y personas usuarias. Es por ello, que se requieren sistemas sofisticados capaces de aprovechar ese cmulo de informacin, haciendo la interpretacin y uso adecuados, conforme al mbito de aplicacin al cual estn orientados. Se considera que los Sistemas Expertos representan una alternativa para atender esta clase de demandas.

36

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

36

CAPTULO 4. APLICACIN DE SHELLS

38

4. APLICACIN DE SHELLS
4.1 DESCRIPCIN DEL SHELL M1
A continuacin se presenta un perfil del shell M1: Naturaleza: SHELL. Orientacin: Sistemas Expertos. Objetivo: Ofrecer un medio para implementar Sistemas Expertos. Ambiente: PC IBM y compatible. Usuario :Ingeniero del Conocimiento. Estructura.- Se compone de: Interfase hombre-mquina en Lenguaje Natural. Administrador de la Base de Conocimiento representado por reglas. Motor de inferencias capaz de calcular incertidumbre. Representacin de Conocimiento.- Ofrece dos opciones: Absoluto, mediante reglas. Impreciso, a travs de factores de certidumbre con rango [-100,100]. Bsqueda: Direccin inicial: Haca atrs. Desarrollo : Profundidad. Orientacin: ciega. Inferencia: Direccin : Haca atrs con oposicin haca adelante. Fundamento : Resolucin con empleo de criterios de certidumbre. Veracidad: A partir de 20 como factor de certidumbre.

4.2

COMPONENTES DE M1

Los principales elementos de M1 son: Archivos de soporte: Ejecutable: M1. Configuracin: m1cfg. m1.cfg. Ejemplos: Bases de Conocimiento. Utilerias para interfaces. Tipos de archivos: Formato: ASCII. Fast-Load. Operacin: Base de Conocimiento. Cach. Ambiente: Sistema Operativo: M.1> Top level: Ambiente de Desarrollo. Ambiente de Consulta. Integrantes: Intrprete M.1. Base de Conocimiento. Cach.

40

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

4.3 OPERACIN DE M1 4.3.1 DESCRIPCIN GENERAL


Operacin del Shell Carga Directa:
M1 base

Por medio del intrprete:


M1 > load base load a load z

Inicio de la consulta go: comn para expresiones en "goal", "initialdata" find expression: debug restart: reanudar Respuestas del usuario Contestacin normal: completa parcial, inicial, # Pedir lista de respuestas Pedir ayuda "Desconocido": "unknown" Pedir la justificacin: "Why" Asociacin de factores de certidumbre Por un comando: list Interrupcin: abort, <ctrl-break> Terminacin: exit, quit Ambiente Top level-intrprete: M.1> comando Sesin de consulta Generacin de la respuesta built-in exp (funciones) Aritmtica exp Conclusin almacenada en el "Cach" Consulta en la Base de Conocimiento Pregunta al usuario Sin xito "was sought, but not value was concluded" Teminacin de la bsqueda Normal, (por alguna de las opciones anteriores) Single-value intoff Metafact : presuposition

4.3.2 EJECUCIN DE PROTOTIPOS


Sesin del Sistema Experto Wine Advisor Carga c:> M1 wine M.1 > go Sesin simple >> question ? F9 corrida del shell y carga de la Base de Conocimiento "wine" pasar al ambiente de "desarrollo" iniciar la ejecucin

40

Descripcin de Shells

41

answer complete y si parcial answer why list conclussion expression word1 and word2 wine = .. . show

palabra completa yes equivocacin, emisin de respuestas vlidas y correccin las primeras letras de la palabra pedir aclaracin lista todas las reglas de la BC que concluyen esa expresin respuesta hacer comentarios a las conclusiones ofrecidas mostrar todas las conclusiones

Segunda sesin M.1> go >> question ? unknown word cf CF word1 cf CF and word2 cf CF

respuesta desconocida con CF asociado con 2 palabras conjunta y sus CF asociada

Modificando la Base de Conocimiento M.1> go corrida donde se espera beber "Retsina" por comer "Comida griega" >> meat >> no >> yes la ensalada contiene "olive oil" >> unknown >> strong >>medium M.1> list wine=retsina Veamos si hay conclusiones que recomienden al vino "Retsina" M.1> add if feature=greek \ entonces agregaremos una then wine=retsina. Responde con la etiqueta de la regla M.1> go volver a ejecutar el "SE", ofrecer las mismas respuestas, para concluir "Retsina" wine = No lo proporcion! . . . M.1> list kb-28 Hay que rastrear el error, verificar la conclusin de retsina M.1> show feature Hubo conclusiones para feature?, es decir, se cumpli? M.1> list feature veamos la representacin de feature en la BC La regla no concluye feature = greek A corregir : M.1> add if has-sauce=yes and \ Primero agregar otra regla sauce = olive-oil and \ la etiqueta en el 29 has-lamb = yes \ then feature = greek. M.1> list sauce Revisemos la definicin de sauce M.1> add kb-22 Agregar : olive-oil M.1> add kb-23 M.1> list wine = retsina Verificar las modificaciones M.1> list feature

42

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

M.1> list sauce M.1>go What is the value of has-lamb ? wine = retsina . . .

Vuelva a ejecutar el "SE" Responde Yes? Por fin!

4.4

REPRESENTACIN DE CONOCIMIENTO
label : EXPRESION = VALUE of INTEGER

M1 representa conocimiento por medio de las siguientes estructuras: Hechos :

goal = computadora_adhoc. Computadora_presentacion = [escritorio, torre, portatil, bolsillo]. If computadora_presentacion = Opciones then computadora_adhoc = Opciones.

Metahechos :
goal = computadora_adhoc.

goal = EXPRESION

If prefiere_calidad = si and prefiere_marca = si then computadora_adhoc = IBM. If prefiere_marca = si or prefiere_economia = si then computadora_adhoc = ACER.

Reglas :
goal = computadora_adhoc.

if PREMISE then CONCLUSION

If prefiere_bajo_precio = si then computadora_adhoc = LANIX cf 90. If prefiere_marca_nacional = si then computadora_adhoc = LANIX cf 80. If prefiere_marca_extranjera = si then computadora_adhoc = LANIX cf -90. If prefiere_pagar_mucho = si then computadora_adhoc = LANIX cf -80.

42

Descripcin de Shells

43

Premisa :

1 varias proposiciones ligadas con AND, OR, NOT

goal = computadora_adhoc. If prefiere_bajo_precio = si then computadora_adhoc = ACER cf 90. If prefiere_marca_nacional = si cf 70 then computadora_adhoc = LANIX cf 80. If prefiere_marca_extranjera = si cf N and N>60 then computadora_adhoc = H.P. cf 85.

Conclusin : 1 varias proposiciones conjuntas "AND" y para la misma EXPRESSION


goal = computadora_adhoc. If prefiere_calidad = si and prefiere_marca = si then computadora_adhoc = IBM. If prefiere_marca = si or prefiere_economa = si then computadora_adhoc = ACER. If not prefiere_calidad = si then computadora_adhoc = PRINTAFORM and computadora_adhoc = ACER cf 70.

Expresiones : Variables:

Anlogas a las variables convencionales Reservan espacio para sustituirse por trminos

4.5

INFERENCIA Y BSQUEDA

La bsqueda e inferencia de soluciones en M1 se compone de varios elementos, cuyas caractersticas son: Manejo de las premisas En conjunciones Todas deben ser vlidas y con CF de cuando menos 20. En disyunciones Se genera una respuesta con CF asociado por cada premisa vlida y con CF de 20 o ms. Al final se conjugan todos los CF de las respuestas, para obtener el CF definitivo,
if ( a = 1 or b = 2 ) and c = 5 then d = 4 CF 50

1ra. respuesta 2da. entonces: conclusin

d = 4 , CF 50 d = 4, CF 50 d = 4, CF 75

ya que a = 1 and c = 5 ya que a = 2 and c = 5 ya que CF = CF1 + CF2 %(100-CF1) = 50+50%(100-50) = 50+505%(50) = 50+25 = 75

44

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

goal = computadora_adhoc. If prefiere_calidad = si and prefiere_marca = si then computadora_adhoc = IBM. If prefiere_marca = si or prefiere_economia = si then computadora_adhoc = ACER.

Clculo de CF Cuando las conclusiones tienen CF explcitamente


if a = 1 then z = 9 CF 50 if b = 2 then z = 8 CF 60 if c = -3 then z = 7 CF -40 if d = -4 then z = 6 CF -50

Cuando son positivos : CF = CF1 + CF2 %(100-CF1) = 50+60%(100-50) = 50+60%(50) = 50+30 = 80 Cuando son negativos : CF = - (|CF1| + |CF2| %(100-|CF1|)) = - (|-40| + |-50| %(100-|-40|)) = - (40+50%(100-40)) = - (40+50%(60)) = - (40+30) = -70 Cuando son mixtos : Menor = min CF = - (|CF1| , |CF2|) = min (|50| , |-40|) = min (50,40) = 40 CF = (CF1 + CF2) * 100 / (100-Menor) = (50 + (-40)) * 100 / (100-40) =10*100/60 = 1000/60 = 16.6
goal = computadora_adhoc. If prefiere_bajo_precio = si then computadora_adhoc = ACER cf 90. If prefiere_marca_nacional = si then computadora_adhoc = ACER cf 80. If prefiere_marca_extranjera = si then computadora_adhoc = ACER cf -90. If prefiere_pagar_mucho = si then computadora_adhoc = ACER cf -80.

En respuestas para las premisas CF = (CFconclusin * Cfpremisa)/100


if a = 1 then z = 9 CF 80 Si al contestar afirmativamente a = 1 se asocia un CF = 50 entonces el CF de la conclusin ser = (80*50)/100 = 4000/100 = 40

44

Descripcin de Shells

45

goal = computadora_adhoc. If prefiere_bajo_precio = si then computadora_adhoc = ACER cf 90. If prefiere_marca_nacional = si cf 70 then computadora_adhoc = LANIX cf 80. If prefiere_marca_extranjera = si cf N and N>60 then computadora_adhoc = H.P. cf 85.

Definidos explcitamente en las premisas exacto :


if a = alto CF 30 then b = apaga CF = 80

1ra. respuesta 2da respuesta 3ra. respuesta con variables :

b = apaga, CF = 80, ya que a = alto con CF = 30 falso , ya que a = alto con CF = 50 falso , ya que a = alto con CF = 29

if a = alto CF N and N 30 then b = apaga CF = 80

1ra. respuesta 2da respuesta 3ra. respuesta

b = apaga, CF = 80, ya que a = alto con CF = 30 b = apaga, CF = 80, ya que a = alto con CF = 50 falso , ya que a = alto con CF = 29

En premisas conjuntas CF = min (|CFP1 , CFP2 ,, CFPP ) En premisas disyuntas CF = CF1 + CF2 % (100 - CF1) En negaciones No tienen valores intermedios. Son -100 falso +100 verdad
if a = 5 and b = 8 then z = 9 if c = 8 and d = 9 then x = 10 if not e = 10 then y = 11 Si se contesta a = 5 con CF = 90 b = 8 con CF = 70, c = 8 con CF = 60, d = 9 con CF = 40, e = 10 con CF = 90, la conclusin tendr un valor para z = 9, con CF = min(50,70) = 50 x = 10, con CF = 60+40%(100-60) = 76 y = 11, con CF = -100

46

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

goal = computadora_adhoc. If prefiere_calidad = si and prefiere_marca = si then computadora_adhoc = IBM. If prefiere_marca = si or prefiere_economa = si then computadora_adhoc = ACER. If not prefiere_calidad = si then computadora_adhoc = Compaq cf 95.

Empleo de las variables En reglas


kb-1 if b-c = y then r= y kb-2 b-c= hola r= hola

goal = computadora_adhoc. Computadora-barata = PRINTAFORM. computadora-POPULAR = ACER CF 80. If computadora-demandada = Marca then computadora_adhoc = Marca. Question(computadora.V) = (proporciona una marca ,V, de computador).

En hechos
kb-30 costo-r = 30 kb-31 costo-cerveza = 50 costo-lager = 50 costo-victoria = 50

En metafacts
question(quiere-B)= ('Quiere tomar',B, '?') y la expresin es quiere-refresco Quiere tomar refresco ?

Restricciones para la instalacin No puede buscar el valor de una expresin que contiene variables no instanciadas
k3 : if x-nombre = juan then action = reprobado

No puede almacenar hechos en el "Cach" que no estn instanciadas


if ana = alumna then calificacin = W

goal = computadora_adhoc. Computadora_presentacion = [escritorio, torre, portatil] cf 70. If computadora_presentacion = Opcion then computadora_adhoc = Opcion. If computadora_presentacion = Opcion then computadora_adhoc = Opcion.

46

Descripcin de Shells

47

En control de la bsqueda
if falla = F and examina(F) is sought then prueba goal = computadora_procesador. Computadora(PP) = Pentium_pro. Computadora(PII) = Pentium_II. If tipo_computadora 0 Tipo and computadora(Tipo) is sought and do(show computadora(_)) then computadora_procesador.

Alterando el proceso de inferencia


goal = computadora_adhoc. If prefiere_calidad = si and prefiere_marca = si then computadora_adhoc = IBM. If prefiere_marca = si or prefiere_economa = si then computadora_adhoc = ACER. Initialdata = [prefiere_economa, prefiere_marca].

Valores iniciales
initialdata =[exp1, exp2, . . ., expn]

Presuposicin
presupposition(expression) = proposition presupposition(bending on nodo) = nodo = a

si es verdad la proposition con CF >=20 , hace la bsqueda, si no la interrumpe


goal = compuptadora_adhoc. If prefiere_calidad 0 si then computadora_adhoc = IBM. If prefiere_economa = si Then computadora_adhoc = ACER. Presupposition(prefiere_economia) = (prefiere_marca = si). Presupposition(prefiere_calidad) = (prefiere_marca = si).

Cuando se encuentra un valor para la expresin


whencached(expression) [ = VALUE cf CF]) = LIST whenfound(exp ) = LIST

Evalan la lista, despus de almacenar un valor en el cach y de encontrar uno para cierta expresin, respectivamente.

48

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

goal = computadora_procesador. Computadora(PP) = Pentium_pro. Computadora(PII) = Pentium_II. If tipo_computadora = Tipo and computadora(Tipo) is sought then computadora_procesador. Whencached(computadora(Tipo) = Procesador) = display(tipo de computador: ,Tipo, Intel: , Procesador). Whenfound(computadora(Tipo) = Procesador) = display(El Intel: ,Procesador, es el procesador de la: , Tipo). nocache

Borra el valor encontrado para la expresin, de la memoria cach.

4.6

MANEJO DE COMANDOS

M1 dispone de diversos comandos para manipular las expresiones como son los que se presentan a continuacin: Base de Conocimientos
goal = computadora_procesador. Computadora(PP) = Pentium_pro. Computadora(PII) = Pentium_II. If tipo_computadora 0 Tipo and computadora(Tipo) is sought and do(show computadora(_)) then computadora_procesador.

Carga de la base de conocimientos


load FILE load {a z } FILE

limpia y carga carga al inicio o al final

Modificacin de la Base de Conocimientos Agregar o reemplazar add {a z } KBCENTRY Remover expresiones


remove LABEL resetkb KBCENTRY {LABEL}

FACT METAFACT RULE

Editar expresiones
edit edit LABEL

Salvar En fast-load
fsave FILE

la BC original la BC original los cambios en la BC

En ASCII
save FILE

Los cambios
savechanges FILE

48

Descripcin de Shells

49

Listar

list show

{ {

expresion expresion = value user EXPRESSION EXPRESSION

4.7
Cache

MANIPULACIN DE LA BASE DE CONOCIMIENTOS Y EL CACH

Sintaxis
EXPRESSION = VALUE cf CF because REASON

Insercin de ENTRIES reglas: conclusin hechos: provenientes de la base de conocimientos respuestas: del usuario Salvar

texto: savecache FILE fast-load: fsavecache FILE Carga de FILE Cache


loadcache FILE

Borrado

reset

Modificacin
set fact fact because REASON EXPRESSION is unknown

{ {

b EXPRESSION EXPRESSION = VALUE EXPRESSION = VALUE cf CF

50

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

4.8

INTERACCIN CON EL USUARIO


make FILE

Creacin de un archivo para el usuario final

Trminos predefinidos

goal = computadora_adhoc. Multivalued(computadora_adhoc). Question(marca_favorita) = nombre de tu marca favorita de computadora. Legalvals(marca_favorita) = [ibm,hp,acer, compaq]. Automaticmenu(marca_favorita). Enumeratedanswers(marca_favorita). Explanation(marca_favorita) = me interesa tomar en cuenta tus preferencias. Initialdata = marca_favorita. If quieres_una_computadora = si and marca_favorita = Nombre then computadora_adhoc = Nombre.

Metafacts Bsqueda
goal = {EXPRESSION [exp1,, exPP]}

Definicin de una EXPRESSION # valores


multivalued {EXPRESSION LIST}

Pregunta
question (EXPRESSION) = text

Men

automaticmenu

all EXPRESSION

enumeratedanswers {EXPRESSION}

Valores legales
legalvals(EXPRESSION)

metafacts integer LIST of TERMS number real (LOW, HIGH)

Explicacin
explanation {EXPRESSION LABEL} = text

Valor inicial
initialdata {EXPRESSION LIST}

Boleanas and or not

50

Descripcin de Shells

51

goal = factorial. Initialdata = factor. Factoraje(1) = 1. If N>1 and N-1 = M and factoraje(M) = X and N*X = Resultado then factoraje(N) = Resultado. If factor = Numero and factoraje(Numero) = Resultado then factorial = Resultado.

Aritmticas Operadores : Funciones : Comparacin : Asignacin : + - * / fix(N), float(N), sqrt(N),truncate(N) < > =< >=

if N> 1 and N-1= M then display (M)

Recursin :
kb: 2 kb: 3 fac(1)=1 if N>1 and N-1 = M and fac(M) = X and N*X = Y then fac(N) = Y

Metapreposiciones Bsqueda en el cach


cached(EXPRESSION)

Desplegado
display(TEXT) goal = computadora_procesador. Computadora(PP) = Pentium_pro. Computadora(PII) = Pentium_II.. If tipo_computadora = Tipo and computadora(Tipo) is sought then computadora_procesador. Whencached(computadora(Tipo) = Procesador) = display(tipo de computador: ,Tipo, Intel: , Procesador). Whenfound(computadora(Tipo) = Procesador) = display(El Intel: ,Procesador, es el procesador de la: , Tipo).

Ejecucin de comandos como premisas


do(command EXPRESSION) goal = computadora_procesador. Computadora(PP) = Pentium_pro. Computadora(PII) = Pentium_II. If tipo_computadora 0 Tipo and computadora(Tipo) is sought and do(show computadora(_)) then computadora_procesador.

52

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Revisar el status

EXPRESSION is

Listas

definite unique unknown sought

any value 1 value no value CF < 20 busca value

length(LIST) = LENGTH listof(EXPRESSION) = LIST

Strings
substring(POSITION,LENGTH,STRING)= SUBSTRING

4.9

RASTREO Y MONITOREO

Trace y logging Rastreo Activa:


Trace on Trace el Trace EXPRESSION

Desactiva:
Untrace

Direccionamiento

Archivo: log FILE Impresora: log printer Desactiva: log off

52

CAPTULO 5. MECANISMO DE APRENDIZAJE

54

5. MECANISMO DE APRENDIZAJE
5.1 DESCRIPCIN DE UN MECANISMO DE APRENDIZAJE
Mquinas inteligentes Una de las crticas ms severas que suelen hacrsele a la Inteligencia Artificial es que las mquinas no podrn llamarse inteligentes hasta que sean capaces de hacer cosas nuevas y adaptarse a nuevas situaciones, en vez de hacer las tareas simplemente como se les ha dicho que las hiciesen. Ada Augusta, uno de los primeros filsofos sobre computacin escribi que: La mquina Analtica no tiene pretensiones de originar nada. Puede hacer cualquier cosa que nosotros sepamos como ordenarle realizar. Esta observacin ha sido interpretada por varios crticos como que las computadoras no pueden aprender. De hecho nada nos impide decir a una computadora cmo interpretar sus entradas de tal manera que su rendimiento mejore gradualmente. En vez de polemizar si es posible que las computadoras aprendan, es mucho ms relevante describir que significa aprendizaje y que mecanismos deberan usarse para permitirnos realizar dicha actividad. Intentemos responder en primer lugar a la pregunta Qu es el aprendizaje?. Aprendizaje El aprendizaje es el proceso por el cual las personas son capaces de aumentar su conocimiento acerca de las cosas, gracias a su experiencia o prctica producen un cambio relativo en su conducta. El aprendizaje denota la obtencin de conocimiento, habilidades y entendimiento desde instrucciones, experiencia o reflexin. Tambin se refiere al cambio de conducta de un sujeto frente a una situacin dada, ocasionada por sus experiencias repetidas ante dicha circunstancia, al margen de que el cambio de conducta pueda explicarse con base a sus tendencias de respuestas innatas, maduracin o estados temporales anmicos y fsicos del sujeto (por ejemplo fatiga, drogas, etc.). Etapas de investigacin La dcada de 1960 fue la primera y ms optimista, se centra en el estudio de sistemas capaces de cambiar su propia organizacin, es decir, sistemas que ante una serie de estmulos y teniendo suficientes grados de libertad seran capaces de modificarse a s mismos mejorando su comportamiento. El optimismo inicial en esta etapa fue rpidamente opacado al descubrirse limitaciones tericas. Los que siguen estudiando este tipo de sistemas, llamados sistemas adaptativos, los aplican en percepcin visual y reconocimiento de formas. La segunda etapa (durante 1970) viene marcada por el hecho de aceptar que el aprendizaje es un proceso muy complejo y hasta cierto punto desconocido. Esto condujo a los investigadores, de un lado, a centrarse en el aprendizaje de conceptos muy simples y por el otro, a incorporar en los sistemas de aprendizaje gran cantidad de conocimiento de tipo contextual que les permite descubrir conceptos de ms alto nivel. La etapa iniciada en 1980 seala las lneas de investigacin actuales, partiendo de la necesidad de adquirir nuevo conocimiento por medio de los Sistemas Expertos y el empleo de redes neuronales. Perspectivas Herbert Simon define el aprendizaje como cualquier proceso por el cual un sistema es capaz de evaluar su propio aprendizaje. Se asume que el sistema tiene una tarea que desarrollar y que puede evaluar su rendimiento aplicando mtodos definidos con objeto de hacer su trabajo ms preciso o ms rpido. Una lnea de investigacin se orienta a desarrollar sistemas que sean capaces de mejorar las estadsticas de su rendimiento.

56

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

La adquisicin de conocimiento explcito representa una lnea de investigacin donde los Sistemas Expertos representan su conocimiento como grandes colecciones que han sido previamente adquiridas y organizadas. Los investigadores trabajan actualmente en el desarrollo de subsistemas de adquisicin del conocimiento capaces de descubrir nuevos conceptos a partir de ejemplos o bien a partir de los expertos directamente aprendiendo con el maestro, integra en forma coherente en la base de conocimiento del sistema. Una tercera opcin es considerar el aprendizaje como adquisicin de pericia. Las personas adquieren habilidad para hacer tareas con la prctica. La forma como ellas aprenden con la prctica representa una lnea de investigacin muy interesante. Los trabajos sobre formacin de teoras atienden cmo los cientficos las construyen para describir y explicar fenmenos complejos. Una parte de la formacin de una teora es la hiptesis es hallar una o ms hiptesis para explicar un conjunto de hechos en el contexto de una teora ms general. Otro aspecto de la formacin de una teora es la inferencia inductiva, proceso por el cual se infieren leyes generales de ejemplos particulares.

52 INTEGRACIN DE UN MDULO DE APRENDIZAJE 5.2.1 CICLO DE ADQUISICIN INICIAL DEL CONOCIMIENTO ANTES DE LA IMPLEMENTACIN
Una tcnica efectiva para la adquisicin del conocimiento consta de las etapas de la Figura 7: Extraer Conocimiento de Expertos

Documentacin

Simulacin Manual en casos de Prueba

Anlisis de Expertos en Casos de Prueba

Comparacin

Fig. 7. Ciclo para la adquisicin inicial de conocimiento Extraer conocimiento: Recupera informacin de documentos y comentarios de los expertos sobre el mbito de aplicacin. Documentacin: Representa formalmente el conocimiento adquirido y el mecanismo para su obtencin y actualizacin. Simulacin: Prueba el conocimiento a travs de: Tomar el anlisis realizado por el experto en una nueva situacin (un nuevo conjunto de datos), o utilizando los resultados de un anlisis previo. 56

Mecanismo de Aprendizaje

57

Analizar la misma situacin utilizando la simulacin manual del conocimiento documentado. Por ejemplo , si todo el conocimiento se encuentra en forma de regla, se decide cul se ejecutara en primera instancia, cul ser la siguiente y as sucesivamente hasta que el anlisis se complete. Comparar los resultados del anlisis por parte del experto contra los resultados generados por la simulacin manual. Si los resultados difieren, encontrar las reglas o procedimientos que producen la discrepancia, esto consiste en unir tanto al equipo de expertos como el de adquisicin del conocimiento y seguir el razonamiento de la simulacin manual paso por paso hasta que una diferencia por parte del razonamiento experto sea encontrado. Regresar al primer paso y encontrar nuevo conocimiento del experto acerca de la forma de modificar las reglas y procedimientos que causaron la discrepancia de forma tal que exista una congruencia con el anlisis por parte de los expertos. El proceso de adquisicin del conocimiento contina en un ciclo a travs de estos pasos, revisando y expandiendo el conocimiento documentado, hasta que una estructura slida de conocimiento sea encontrada e implementada. Esta tcnica es til cuando no se ha integrado suficiente conocimiento acerca de una subtarea de inters , para garantizar la implementacin en forma transparente, adems es til en aquellos casos en los que el conocimiento se encuentra en constante cambio y cuando la implementacin del conocimiento esta siendo desarrollada pero los responsables no llegan a captar completamente el conocimiento adquirido. En todos estos casos, ninguna implementacin de forma computacional es lo suficientemente dinmica para aadir conocimiento. Tradicionalmente el diseo de Sistemas Expertos ha involucrado un proceso de interaccin entre el dominio del experto y el ingeniero del conocimiento. Durante esta relacin llamada adquisicin de conocimiento, el ingeniero formaliza el conocimiento del experto por medio de diversos modelos que representan e infieren conocimiento, sin embargo, hay varios problemas con esta aproximacin: El desarrollo de un sistema experto puede requerir un enorme esfuerzo, un sistema puede fallar al ejecutarse en el dominio de la aplicacin y requerir modificaciones adicionales. Tpicamente esto involucra continuas interacciones entre el experto y el ingeniero, durante el cual el sistema es gradualmente modificado en la medida en que las fallas se vayan originando. La contribucin del experto no garantiza que pueda expresar adecuadamente sus propios conocimientos. Dificultad para determinar cuando la base de conocimientos es correcta, consistente y completa. Para confrontar estos problemas la mquina de aprendizaje intenta facilitar la adquisicin de conocimientos para integrar la base de conocimientos requerida por el Sistema Experto, a travs de las siguientes iniciativas a cargo del sistema de aprendizaje: Contribuir a una inicial construccin de una base de conocimientos, esto es: la colocacin de reglas, frames, y redes iniciales. Refinar la base de conocimientos existente. Ayudar en la adaptacin del sistema basado en conocimiento, por ejemplo; acomodar el estilo del usuario experto. Proveer un mtodo para construir Sistemas Expertos basados en conocimiento, remplazando el proceso de interaccin de la adquisicin del conocimiento entre el ingeniero, el conocimiento y el experto.

5.2.2 COMPONENTES DE UN SISTEMA DE APRENDIZAJE


En particular, consideramos un sistema que usa un modelo de representacin especfico llamado ER. Este esquema de representacin denota todas las posibles opciones que el sistema puede construir usando ER especficamente. Vemos las tareas de aprendizaje como la bsqueda para una aceptable representacin en el dominio de la aplicacin. Durante esta bsqueda el sistema es sujeto a una secuencia de experiencias desde el dominio de la aplicacin llamndose a esta secuencia la trayectoria de experiencias. El procedimiento de aprendizaje requiere una funcin que vala tpicamente esta funcin informa al algoritmo de aprendizaje que ha encontrado una representacin satisfactoria.

58

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Un sistema de aprendizaje opera como: { D, ER, E, V }; donde D es el dominio de la aplicacin, ER un esquema de representacin, E las experiencias y V los valores de representacin evaluados. Un sistema de aprendizaje interacta con el ambiente, buscando a travs de las representaciones que describe el dominio de la aplicacin. El dominio afecta a los otros componentes del sistema de aprendizaje ( ER, E, V ). Como se muestra en la Figura 8

ER

E Experiencias V Evaluaciones Fig. 8. Componentes de un sistema de aprendizaje

Dominio

5.2.3 MECANISMO DE APRENDIZAJE

El mecanismo de aprendizaje es el sistema que va a ser capaz de adquirir nuevos conocimientos por medio de un proceso que le permita evaluar su propio aprendizaje. Integra diversas tcnicas y algoritmos de aprendizaje que interactan con el experto para obtener nuevos elementos de conocimiento, modificaciones al existente y sobre todo revisar y corregir la consistencia. Este mdulo debe observar una conducta inteligente capaz de advertir elementos relevantes de conocimiento y desechar aquellos intiles o poco importantes, adems de resolver los conflictos generados por las contradicciones.

5.2.4 CICLO DE ADQUISICIN DEL CONOCIMIENTO DESPUS DE QUE LA IMPLEMENTACIN HA COMENZADO


Una tcnica muy efectiva para la adquisicin del conocimiento, despus de que la implementacin ha comenzado consiste en seguir el ciclo descrito en la figura 6.3 que consiste en: Actualizar conocimiento: Actualiza el conocimiento existente utilizando la tcnica de simulacin manual o los resultados de prueba (paso 4). Integracin del conocimiento: Mantiene la consistencia con la base de conocimientos actualmente disponible. Implementacin del conocimiento: Incorpora el nuevo conocimiento con los ajustes correspondientes de la base. Prueba: Explota el nuevo conocimiento en conjunto con el adquirido anteriormente sometindolo a los casos de prueba que verifiquen su consistencia. 58

Mecanismo de Aprendizaje

59

Comparacin: Analiza los resultados obtenidos por el experto y el sistema a travs de los pasos de la Figura 9:

Actualizar Conocimiento

Integracin del conocimiento

Implementacin de Conocimiento

Prueba

Evaluacin

Comparacin

Fig. 9. Ciclo para la actualizacin de conocimiento Comparar los resultados generados por el experto contra las conclusiones obtenidas por el sistema. El programa puede producir conclusiones errneas o puede no correr hasta el final. Cualquiera de estos casos indica una incompleta o incorrecta heurstica o fallas en la implementacin. Donde los resultados difieran, encontrar las reglas o procedimientos que producen la discrepancia. Los expertos y el equipo de adquisicin del conocimiento pueden examinar en el conocimiento documentado el conjunto de reglas y procedimientos relacionados a esas discrepancias y crear una simulacin manual en ciertas partes del anlisis para ver si las reglas y procedimientos estn escritas en base al conocimiento experto. Para aadir este proceso, la implementacin en computadora puede ser usada para producir una ruta del razonamiento del sistema o proveer de resultados intermedios. Si la simulacin manual del conocimiento documentado concuerda con el experto, buscar un error de implementacin en el programa. Si no, regresa al primer paso y determina como el nuevo conocimiento modific las reglas y procedimientos que causaron la discrepancia. Evaluacin Los expertos revisan los resultados arrojados por las pruebas y correcciones aplicadas al sistema, determinan la confiabilidad de sus respuestas y la eficiencia en su operacin. Al final emiten un dictamen de aprobacin o rechaza el contenido y manejo de la base de conocimientos. Este proceso contina en un ciclo que para que Sistema Experto y el conocimiento documentado estn en continua revisin y expansin.

60

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

5.3 MTODOS DE APRENDIZAJE


Aprendizaje conductista El punto de vista conductista basa sus conclusiones de la conducta abierta y externa de los organismos, estudindolas a travs de tres teoras: Condicionamiento clsico. Su principal representante fue Ivan Pavlov, como parte de su investigacin prepar una situacin controlada en la cual sonaba una campana precisamente antes de que a un perro se le presentara una pequea cantidad de alimento, todo esto con el fin de medir el grado en que los perros salivaban al comer. Despus de varios apareamientos de la campana y provisin de la comida, la campana slo excit la salivacin. En este caso la comida es un estimulo condicionado y la salivacin una respuesta no condicionada, mientras que la respuesta a la campana se design condicionada. La asociacin entre el estimulo condicionado y el estmulo no condicionado se estableci porque presentar la comida precisamente despus de hacer sonar la campana reforzaba la respuesta de la salivacin. Si no se reabasteca la comida de vez en cuando, la respuesta empezara a desaparecer o extinguirse. Cuando el perro condicionado para salivar, al escuchar sonidos similares al de una campana emite una respuesta, se presenta una generalizacin del estmulo, esto se puede evitar si se proporciona reforzamiento despus de que suene la campana, pero no despus de que suene un silbato, con lo que se tena una discriminacin. Condicionamiento operante. Skinner formul una teora que combina muchas ideas diferentes y sirve para una gran variedad de aplicaciones de la conducta humana. La teora de Skinner pone de relieve el condicionamiento operante, el cual supone un aparato ingenioso inventado por el mismo, este consiste de un pequeo espacio cerrado que contiene una sola barra y una bandeja. Fuera de la caja hay una tolva que contiene bolitas de alimentos que caen en la bandeja cuando se oprime la barra en determinadas condiciones. Se coloca una rata hambrienta dentro de la caja, y cuando, en el curso de exploracin de su nuevo ambiente, se acerca y luego toca la barra, entonces se le recompensa con una bolita de comida. Se le llama condicionamiento operante para poner de relieve que un organismo opera en el ambiente cuando aprende. En este tipo de condicionamiento los organismos emiten la conducta de manera esencialmente espontnea. Aprendizaje basado en la observacin. Albert Bandura detect ciertas limitaciones del punto de vista del condicionamiento operante, principalmente cuando observ la conducta de nios y adultos, Bandura lleg a la conclusin de que muy a menudo el aprendizaje tiene lugar cuando una persona observa y luego imita la conducta de los dems y no necesariamente aprende cuando da la respuesta y es reforzado. Para comprobar su teora realiz varios experimentos entre los cuales estn: Se sent a un nio en una mesa y se le estimul a divertirse con juguetes que se le proporcion, mientras tanto en otra mesa cercana otro nio jug tranquilamente con los juguetes durante diez minutos y luego jug agresivamente. Despus de efectuar una u otra de estas conductas modeladas, se permiti acaparar a cada nio un juguete atractivo y luego se le dijo que no poda jugar con l (una condicin que producira cierta frustracin). Posteriormente se condujo a los nios a un cuarto donde estaban los juguetes con los que haba jugado antes. Los nios observaban un modelo agresivo mostraban una conducta ms agresiva en respuesta a los juguetes. Con este experimento se trato de determinar el efecto que tendra el recompensar al modelo por una conducta agresiva, sobre la conducta imitativa de los nios. En general, los nios eran ms agresivos si haban visto a un modelo agresivo reforzado positivamente que cuando el modelo era castigado. 60

Mecanismo de Aprendizaje

61

Aprendizaje por ensayo y error. Pocos aos despus de que Pavlov iniciara un Rusia su investigacin sobre los reflejos condicionados, Edward l. Thorndike hizo en Estados Unidos los primeros estudios de lo que a la larga se llamara condicionamiento operante. En su tesis de doctorado, critic la gran cantidad de pruebas anecdticas sobre inteligencia animal presentadas por muchos naturistas, incluyendo a Charles Darwin. Las historias de que los animales razonaban de manera similar al hombre al resolver problemas no convencan a Thorndike. Su estudio de como los gatos escapaban de diferentes cajas enigmticas sugera algo parecido a aprendizaje por ensayo y error. Aprendizaje por castigo. Los reforzadores cognoscitivos como los choques o un ruido muy intenso, en un condicionamiento clsico con frecuencia se denominan estmulos aversivos. En el condicionamiento operante, la representacin de un reforzador negativo se emplea como castigo. Aprendizaje por escape. El comportamiento emocional primitivo y la conducta de escape provocados inicialmente por el castigo, pueden modificarse merced al condicionamiento de una respuesta de escape especifica. Aprendizaje por evitacin. Es una variacin del aprendizaje de escape, en este caso el animal puede responder a un estmulo presentado antes del castigo y por lo tanto evitarlo. Insigth. Los psiclogos del movimiento Gestalt fueron los primeros en criticar vigorosamente los primeros estudios sobre el condicionamiento. Argumentaban que el aprendizaje observado por Pavlov y Thorndike slo parecan un mecanismo ciego, porque las situaciones experimentales utilizadas en esos estudios ofrecan pocas oportunidades al animal de demostrar un comportamiento verdaderamente creativo y flexivo. Aprendizaje latente. Cuando no hay un razonamiento aparente ni demostracin inmediata de lo aprendido a esto se le llama aprendizaje latente. Fenmeno punta de la lengua. Sugiere que el recordar es un proceso activo que requiere tanto tiempo como concentracin. Algunas veces cuando se presenta ste uno se da por vencido y minutos despus el hecho que deseaba recordar surge sin ningn otro esfuerzo considerado. Por ejemplo, para controlar con ms precisin la cantidad de tiempo que se dedica a memorizar cada palabra de una lista, con frecuencia los experimentadores las presentan una a una para que sean observadas durante el mismo tiempo cada una. Con este tipo de presentacin, es ms probable que se recuerden las palabras que se encuentran al principio de la lista debido al efecto primaca; pero si recuerda las ltimas se debe al efecto de recencia.

5.4 TCNICAS DE APRENDIZAJE 5.4.1 CONCEPTOS

El aprendizaje por conceptos se apoya en un proceso de clasificacin donde para una entrada concreta se asigna el nombre a la clase a la que pertenece. Las clases entre las que puede elegir el procedimiento de clasificacin puede describirse de diversas formas, su definicin depende del uso para el que se destinen. La clasificacin es un componente importante de muchas tareas de reconocimiento directo, como por ejemplo, cuando se pregunta Qu letra es esta?, con frecuencia, la clasificacin est incluida dentro de otra operacin. Para apreciar las dos formas en las que puede suceder, consideremos un sistema de resolucin de problemas que contenga la siguiente regla de produccin:

62

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

SI: La meta actual es ir del lugar A al B y existe un MURO que los separa ENTONCES: Busca una PUERTA en el MURO y atravisala Para usar esta regla con xito, la rutina de emparejamiento del sistema debe poder identificar un objeto como un muro. Sin esto, nunca podr usarse la regla. A continuacin, para aplicar la regla, el sistema deber ser capaz de reconocer una puerta. Antes de poder realizar la clasificacin, deber definirse las clases que se van a usar, pudiendo efectuarse de la siguiente forma: Por medio de representar funciones de tanteo Aislar un conjunto de caractersticas relevantes del dominio de la tarea. Definir cada clase mediante una suma ponderada de los valores de estas caractersticas. Cada clase se define mediante una funcin de tanteo muy similar a las funciones que se suele usar en otras situaciones como los juegos. Tal funcin tiene la forma: c1t1 + c2t2 + c3t3 +..... Cada t corresponde a un valor de un parmetro relevante. Cada c representa el peso asignado a la t correspondiente. Los pesos negativos pueden usarse para indicar aquellas caractersticas cuya presencia constituye usualmente una evidencia negativa para una clase dada. Como un ejemplo de este enfoque, consideremos el problema de clasificar modelos de entrada como letras del alfabeto. Supongamos, que cada entrada se describir mediante una matriz de 0s y 1s con los 1s correspondientes a los lugares donde hay tinta de entrada. Su valor entre -1 y 1. El valor 1 contenido en dicho segmento corresponde a la clase que se est describiendo. Un valor de -1 significa que la tinta es una evidencia de la clase. Un valor de 0 indica que no tiene importancia. A travs de estructuras compuestas Aislar un conjunto de caractersticas que sean relevantes para el dominio de la tarea. Definir cada clase como una estructura compuesta de dichas caractersticas. Por ejemplo, consideremos de nuevo la tarea de clasificacin de las clases, usando este enfoque, se tiene a la letra G como: e a ARCO (a,b) ENCIMA(a,b) LINEASEGMENTO (b,c) IZQUIERDA(c,b) (NADA (LINEASEGMENTO (b;d) DEBAJO d,b)) (NADA (LINEASEGMENTO (a,e) ENCIMA (e,a))

b d

El enfoque estadstico tomado por el primero de los esquemas presentados aqu suele ser ms eficiente que el enfoque estructurado del segmento del segundo. Pero el segundo es ms flexible y extensible. Esta tarea de construir definiciones de clase se llama aprendizaje por conceptos. La tcnica usada para esa tarea debe depender de la forma en que se describen esas clases (conceptos). Si las clases se describen mediante funciones de tanteo, el aprendizaje de conceptos debe realizarse usando la tcnica de ajuste de coeficientes. Por otra parte, si queremos definir las clases estructuralmente, es necesaria una nueva tcnica para aprender las definiciones de las clases. En el resto de esta seccin presentemos una tcnica como la indicada. Un ejemplo de un programa de aprendizaje estructural de conceptos es el que opera en un sencillo dominio del mundo de bloques. Su meta es construir representaciones de las definiciones de los conceptos en ese mbito. Por ejemplo, aprendi los conceptos CASA, TIENDA y ARCO mostrados en la Figura 10.

62

Mecanismo de Aprendizaje

63

Concepto CASA

Casi Equivocado

TIENDA

ARCO

Fig.10. Aprendizaje de los conceptos CASA, TIENDA y ARCO La figura muestra tambin un ejemplo del tipo casi-equivocado para cada concepto. Un casi-equivocado es un objeto que no es un ejemplo del concepto en cuestin pero es muy similar. El programa empieza por interpretar un dibujo con lneas de la estructura del mundo de bloques, usa procedimientos de resolucin de problemas perceptuales con el algoritmo de Waltz para analizar el dibujo y construir una representacin por red semntica de la descripcin estructural del objeto.Esta definicin estructural se proporciona a continuacin como entrada para el programa de aprendizaje. Un ejemplo de una descripcin estructural para la CASA de la figura 6.4 se muestra en la figura 6.5 . El nodo A representa la estructura entera que se compone de dos partes: el nodo B, una CUA y el nodo C, un LADRILLO. Las dos estructuras en ARCO de la figura 6.14, son idnticas excepto por la clase de objetos de la parte superior. Uno es un LADRILLO mientras que el otro es una CUA. Obsrvese que los dos objetos inferiores se relacionan, no solamente un enlace NOCAZAN, que dice que los dos objetos no CAZAN. Dos objetos CAZAN si sus caras se estn tocando y tienen un borde comn. La relacin CAZAN es critica en la estructura de un arco casi-equivocado mostrada en la figura 11:

Aguantado - por

Esun

Esun Ladrillo

Cua

Fig. 11. Descripcin estructural El enfoque bsico que toma el programa de Winston para el problema de formacin de conceptos realiza las siguientes acciones:

64

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Empezar con una descripcin estructural de una ocurrencia conocida del concepto. Llamar a dicha descripcin la definicin del concepto. Examinar las descripciones de otras ocurrencias conocidas del concepto. Generalizar la definicin para incluirlas. Examinar descripciones de casi-equivocado del concepto. Restringir la definicin para excluirlas. Los ltimos dos pasos de este procedimiento deben intercarlarse y se basan principalmente en un proceso de comparacin mediante el cual puede detectarse las similitudes y diferencias entre las estructuras. Este proceso debe funcionar de la misma manera que lo hace otro de emparejamiento, tal como el de determinar si una regla de produccin puede o no aplicarse a un estado concreto del problema. Puesto que deben encontrarse tanto las diferencias como las similitudes, el procedimiento debe realizar no slo un emparejamiento literal sino tambin uno aproximado. La salida del procedimiento de comparacin es un esqueleto de la estructura que describe las partes comunes de las dos estructuras de entrada. Se anota mediante un conjunto de notas de comparacin que describe las similitudes y diferencias especficas entre las entradas. Para ejemplificar este enfoque, lo haremos a travs del proceso de aprendizaje de lo que es un arco: Supongamos que se presenta en primer lugar la descripcin de un arco que se convierte en la definicin del concepto ARCO, entonces se presenta la descripcin de arco (ver figuras 6.6 y 6.7). Cuando se integran los ejemplos la rutina de comparacin devolver una estructura similar a las dos entradas (ver figura 6.8) excepto que notar que los objetos representados mediante los nodos etiquetados C no son idnticos. El enlace NOTA-C que surge nodo C describe la diferencia encontrada por la rutina de separacin. Esta nota que la diferencia ocurri en un enlace ESUN, que en la primera estructura del enlace ESUN apuntaba a LADRILLO, es la segunda a CUA, y que si furamos a seguir los enlaces ESUN puede generarse una nueva descripcin del concepto ARCO. Esta descripcin puede decir simplemente que el nodo C puede ser o un LADRILLO o una CUA. Pero ya que esta disyuncin concreta no tiene un significado previamente conocido se establece el concepto OBJETO de las Figuras 12, 13, y 14:

B Ladrillo Izquierda de Esun Ladrillo Derecha de No cazan

Esun Ladrillo

Fig. 12. Descripcin de un arco de acuerdo con el primer ejemplo

64

Mecanismo de Aprendizaje

65

B Cua Esun Ladrillo Izquierda de Derecha de No cazan

Esun Ladrillo

FIig. 13. Descripcin del arco de acuerdo con el segundo ejemplo

B Objeto Esu Ladrillo Izquierda de Derecha de No cazan

Esun Ladrillo

FIig. 14. Descripcin de arco despus de integrar dos ejemplos Supongamos que a continuacin se presenta el ejemplo casi-equivocado mostrado en la figura 6.14. Esta vez la rutina de comparacin notar que hay una diferencia entre la definicin actual y el casi-equivocado, pero no queremos ampliar nuestra definicin para incluirlo. En vez de ello, queremos restringir la definicin de forma que lo excluya especficamente. Para hacer esto, modificamos el enlace NOCAZA, que puede estar recordando simplemente que por casualidad NOCAZA ha sido cierto en el pequeo nmero de ejemplos que se le han presentado. Debe decir NODEBENCAZAR. La descripcin de ARCO en este punto. En realidad, NODEBENCAZAR no debera ser un enlace completamente nuevo debera ser una estructura entre tipo de enlace para reflejar la relacin entre CAZAN, NOCAZAN y NODEBENCAZAR, como se aprecia en la Figura 15:

66

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

B Ladrillo Esu Ladrillo Izquierda de Derecha de No deben cazar

Esun Ladrillo

Fig. 15. Descripcin de arco despus del ejemplo casi - equivocado El enfoque del aprendizaje de conceptos que acabamos de discutir se ha usado en diversos programas de aprendizaje. Aunque dichos programas no son todos idnticos, comparten una caracterstica importante. Se basan en alguna entrada del entorno que le proporcione ejemplos del concepto a aprender. Pero puede diferir en varios aspectos importantes. Algunos programas dependen de una secuencia de entrenamiento minuciosamente elegida presentada por un maestro, mientras que otro no son sensibles al orden en el que se encuentran los ejemplos. Aunque se han construido programas de aprendizaje exitosos que no usan casi-equivocado, se arriesgan a no poder detectar y corregir su error si alguna vez sobre generalizan. El aprendizaje por conceptos emplea diversas tcnicas para: Representacin del Conocimiento.- Por medio de: Redes semnticas para describir estructuras. Jerarquas ESUN para describir relaciones entre objetos ya conocidos. Resolucin de Problemas.- A travs de: Emparejamiento, para detectar similitudes y diferencias entre estructuras. Ascensin de colinas, para hacer evolucionar hacia una definicin de conceptos cada vez ms precisa. Aprendizaje es un trmino ambicioso y extenso, que denota la accin de ganar conocimiento y destreza, implica el entendimiento de instrucciones, asimilacin de experiencias y generacin de reflexiones. No obstante la grandeza y el alcance de la naturaleza de estas ideas, la nocin del concepto de aprendizaje usado en la Inteligencia Artificial es mucho ms limitado y especfico.

5.4.2 GENERALIZACIN

Esta es una de las cualidades mas importantes en los sistemas de aprendizaje memorstico, la cual se orienta a los mbitos en donde el nmero de objetos distintos a representar es muy elevado, para mantener el nmero de objetivos almacenados en un nivel flexible, se necesita cierta clase de generalizacin. La tcnica de aprendizaje por generalizacin consiste en que un grupo de objetos, que representan ejemplos y contraejemplos de un concepto, intenta inducir una descripcin generalizada que abarque todos los ejemplos positivos y ninguno de los contraejemplos. Ediciones interesantes incluyen condiciones por las cuales los procedimientos convergen una nica descripcin de los ejemplos. Otro aspecto que es importante hacer notar, es que conforme aumenta la complejidad del proceso de aprendizaje, aumenta la necesidad de generalizacin. Retomando el ejemplo del conocimiento de un arco, la generalizacin necesita empezar con un miembro normal de la clase que se va a aprender como se muestra en la Figura 16: 66

Mecanismo de Aprendizaje

67

ARCO CASI BUENO

CASI BUENO ARCO

Fig. 16. Ejemplos para conocer un arco A partir de este ejemplo, la generalizacin construye una descripcin inicial, la cual se refina mediante la aplicacin de nuevos casos buenos y casi buenos. La descripcin aumentada se conoce como modelo en evolucin. Un ejemplo casi bueno es un caso negativo que por un nmero reducido de razones no es ejemplar de la clase que se est enseando. La descripcin que se muestra en la figura 6.11 inciso b no es una descripcin de un arco, pero es un poco diferente de la descripcin de arco de la figura en el inciso a, es un ejemplo casi bueno, su propsito es ensear la importancia de los enlaces de apoyo mostrados en la Figura 17: a) Arco Apoyo Apoyo

a la izquierda

b) Ejemplo Casi Bueno

a la izquierda de

c) Arco

debe apoyar

debe apoyar

a la izquierda de

Fig. 17 Reglas de generacin de enlace necesario

68

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Si se compara con la descripcin de arco a, la descripcin del ejemplo aproximado de b carece de apoyo. De esto se concluye que los enlaces de apoyo son esenciales, de modo que como se muestra en c), tales enlaces en el modelo del arco son alterados para indicar que se requieren en todos los arcos. El enlace a la izquierda de se muestra para resaltar la necesidad de evidencia de que es suficiente establecer la correcta entre las partes del arco y las del ejemplo aproximado. Como los enlaces de apoyo no se encuentran al comparar las dos descripciones, el procedimiento de generalizacin llega a la conclusin de que los arcos requieren enlaces de apoyo, por lo tanto el procedimiento sintetiza las dos descripciones en una nueva descripcin refinada, en la que los enlaces de apoyo son sustituidos por la forma enftica debe apoyar, de la anterior figura del inciso c, utilizando de esta manera, se dice que el ejemplo casi bueno proporciona informacin para la heurstica de enlace necesario. Despus de que la generalizacin utiliza esta heurstica, ningn grupo de bloques es identificado como arco. En la siguiente comparacin, entre el modelo de evolucin de la Fig. 6.12 inciso a y el ejemplo casi bueno del inciso b, implica tambin dos diferencias establecidas, pues se tiene dos nuevos enlaces de contacto entre los lados del arco. No obstante, ahora el ejemplo aproximado no consigue ser un arco por que los enlaces se encuentran presentes y no ausentes. El procedimiento concluye que los nuevos enlaces deben estar prohibidos y convierte cada enlace de contacto en el enlace enftico negativo no deben de tocarse, como se muestra en el inciso c. Al hacer esto se dice que la generalizacin usa la heurstica de prohibicin de enlace. Es importante observar que las heursticas de requisito de enlace y de prohibicin de enlace funcionan porque las descripciones contienen informacin esencial y la comparacin de descripciones proporciona una forma de apuntar hacia las conclusiones apropiadas. Estos puntos deben elevarse a la categora de principios: No es posible aprender si no es posible conocer; y No es posible aprender sino se puede aislar lo ms importante, como se aprecia en la Figura 18. a) Arco

debe apoyar a

debe apoyar a

a la izquierda de b) Ejemplo casi bueno

debe apoyar a a la izquierda de se tocan se tocan c) Arco

debe apoyar a

debe apoyar a

debe apoyar a

a la izquierda de No deben tocarse

Fig..18 Regla de generalizacin de prohibicin de enlace

68

Mecanismo de Aprendizaje

69

Comparada con la descripcin de arco de la parte a, la descripcin del ejemplo aproximado de b es diferente por que tiene enlace de contacto. La conclusin es que los enlaces de contacto no deben estar, de modo que como se muestra en el inciso c, se agregan enlaces no deben tocar a la descripcin del arco. Responder a ejemplos mejora el modelo Hasta ahora se han descrito ejemplos casi buenos los cuales restringen el modelo, limitando lo que puede ser un arco. Los ejemplos positivos relajan el modelo, extendiendo el concepto de los que puede ser un arco. Vamos a considerar el caso de la siguiente figura. Compara el modelo del inciso a con el de b que tiene un prisma triangular en la cima, en lugar de un ladrillo. Si el modelo va a ser un arco, el procedimiento debe hacer un cambio en el modelo que refleje una restriccin relajada. Como mnimo, el procedimiento deber contar la conexin entre la cima del arco y tabique y sustituirla por un enlace. Debe ser con una clase ms general, como se muestra en c. Se dice que en este caso se usa la heurstica de ascenso de rbol de la Figura 19:
bloque

a) Arco
debe apoyar a a la izquierda de no deben tocarse no deben tocarse

ladrillo debe apoyar a

b) Arco
prisma debe apoyar a debe apoyar a

bloque

a la izquierda de no deben tocarse no deben tocarse

c) Arco
bloque debe ser prisma debe apoyar a debe apoyar a

a la izquierda de no deben tocarse no deben tocarse

Fig. 19. Heurstica de Ascenso de rbol

70

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

La cima de la descripcin de Arco de la parte a es un tabique, mientras que el objeto correspondiente en la descripcin del ejemplo de la parte b es un prisma triangular. Evidentemente, la diferencia no es importante. El enlace es de la descripcin de arco cambia a un enlace debe ser y se modifica su direccin, de tabique a bloque, parte c, que es la generalizacin comn ms especfica de tabique y prisma triangular. Cabe sealar que se omitieron muchos enlaces del dibujo para evitar distracciones. Sin embargo, el uso de la clase comn ms especifica es slo una alternativa. En el ejemplo, sustituir ladrillo por bloque representa una postura conservadora en lo que respeta al grado de generalizacin que debe llevar a cabo, ya que los ladrillos y los prismas triangulares son tambin poliedros, objetos fsicos y cosas. El nuevo blanco para el enlace debe ser la cima, que podra ser cualquier cosa que este en la cadena de enlaces tipo clase de, dependiendo de cun agresivo sea el procedimiento. Sin embargo, en ciertas ocasiones no existe un rbol de clasificaciones que ascender. Por ejemplo, si no se supiera que los ladrillos y los prismas triangulares son miembros de una clase comn, la heurstica de ascenso de rbol no sera de utilidad. En tal caso el procedimiento forma una nueva clase, la clase tabique-o-prisma triangular, y une la parte superior del arco con esta nueva clase mediante un debe ser, recurriendo, por tanto, a la heurstica de ampliar conjunto. Si no existen tantos objetos aparte de tabique y prismas triangulares, el procedimiento se deshace por completo del enlace debe ser y se dice que usa la heurstica de eliminacin de enlace. El procedimiento tambin utiliza la heurstica de eliminacin de enlace cuando un enlace del modelo en evolucin no se encuentra en el ejemplo. Si el ejemplo inicial tiene informacin sobre el color de algunos bloques y los otros ejemplos no, si ignora el color, eliminando todas sus referencias al color que haya en el modelo en evolucin. Finalmente, usa otra heurstica si una diferencia implica nmeros. Si un ejemplo muestra un tabique de 10 cm. de longitud y otro muestra uno de 15 cm, entonces se supondr que cualquier tabique entre 10 y 15 cm de longitud ser adecuado y de esa forma estar usado la heurstica de intervalo cerrado. Las heursticas de ejemplo casi bueno, especifican; las heursticas de ejemplo, generalizan Hay que hacer notar que las heursticas de ejemplo casi bueno (de requisito de enlace y de prohibicin de enlace) especializan el modo hacindolo ms restrictivo. Las heursticas de ejemplo positivo generaliza el modelo y lo hacen ms tolerante. A continuacin se muestra los procedimientos que utilizan estas heursticas: Para usar especializar con fin de que un modelo resulte ms especfico: Para el modelo en evaluacin con el ejemplo se establecen correspondencias entre sus partes; Determinar si existe una sola diferencia que sea fundamental entre el modelo en evaluacin y el ejemplo casi bueno; Si existe una sola diferencia fundamental: - Y si el modelo en evolucin tiene un enlace que no est en el bueno, use la heurstica de enlace necesario; - Y si el ejemplo es casi bueno tiene un enlace que no est en la heurstica de prohibicin de enlace, use la heurstica de prohibicin. De otro modo, ignore el ejemplo. Para usar generalizar con el fin de que un modelo resulte ms tolerante: Para el modelo en evolucin con el ejemplo establecer correspondencias entre sus partes; Para cada diferencia, determinen tipo de diferencias: Si el enlace apunta hacia una clase del modelo en evolucin diferente de la clase a la cual apunta el enlace en el ejemplo: - Y si las clases son parte de un rbol de clasificacin, use la heurstica de ascenso de rbol; - Y si las clases forman un conjunto exhaustivo, use la heurstica de eliminacin de enlace; - En cualquier otro caso, use la heurstica de ampliar conjunto; Si el enlace no esta en el ejemplo, use la heurstica de eliminacin de enlace; Si la diferencia es tal que en ella intervienen nmeros distintos o un intervalo y un nmero fuera de ste, use la heurstica de intervalo cerrado; 70

Mecanismo de Aprendizaje

71

De otro modo, ignore la diferencia. Note que especializar no hace nada si no puede hallar diferencias fundamentales. Una manera de identificar tal diferencia es mediante un procedimiento que clasifica todas las diferencias por tipo de diferencia y por enlace. Tambin especializar y generalizar implican un apareamiento. Puede parecer conservador rehusarse a actuar por que ninguna accin es absolutamente segura. Sin embargo, existe un punto en el que correr riesgo se convierte en un despliegue de temeridad. Por el hecho de tomar en cuenta el principio espera y vers, la persona que aprende no est condenada a la estupidez eterna; simplemente est a la espera de encontrarse de nuevo con situaciones difciles, pero ms tarde, cuando est mejor preparado. El procedimiento toma en cuenta este principio cuando ignore los ejemplos negativos para los que no puede identificar una sola diferencia bien aquella que resulte la ms importante. El principio espera y vers dice que hay que evitar construir un modelo que ser errneo, y el principio de no alteracin dice que se debe evitar cambiar un modelo, incluso si est mal, de nuevo porque el hecho de corregir un modelo general de alguna forma puede estropearlo. Los enlaces debe y no debe dominar el apareamiento Una forma de determinar si un objeto desconocido se aparea con otro de manera adecuada es ver si tal objeto es compatible con los enlaces enfticos del modelo. Cualquier enlace cuyo nombre contenga Debe, debe aparecer en el objeto desconocido; y los enlaces con No debe, no deben estar en l. Una evaluacin de apareamiento ms flexible requiere un procedimiento que pueda determinar el grado de similitud entre un objeto desconocido y el modelo. Para instrumentar tal procedimiento, se tiene que traducir el concepto abstracto de similitud entre un objeto desconocido y un modelo, s(U,M), a una medida concreta. Una forma sencilla de hacer esto es mediante un conteo ponderado de los enlaces correspondientes, en conexin con un procedimiento de analoga geomtrica. Sin embargo, observe que cualquier esquema de conteo para combinar evidencias es limitado, ya que toda la informacin est comprendida en un nmero singularmente inexpresivo. Los modelos pueden clasificarse en redes Se concibe como un conjunto de modelos organizados en una red en la que los enlaces conectan parejas de modelos que son muy parecidos, en donde se va a identificar un objeto desconocido. Qu se debe hacer cuando la primera comparacin con un modelo particular de la red fracasa, como normalmente suceder?. Si el apareamiento no falla mucho, es decir, si el objeto se asemeja al modelo en muchos aspectos, entonces con seguridad otros modelos parecidos deben insertarse enseguida. Estos nuevos modelos son precisamente los que estn unidos mediante enlaces de similitud con el modelo recin comparado. En lo que significa una mejora evidente, los enlaces de similitud entre modelos pueden no slo expresar la similitud, sino tambin describir la diferencia, como se estipula en la siguiente especificacin en donde una red de similitud es una representacin de una red semntica en la que Los nodos representan modelos. Los enlaces conectan modelos similares. Los enlaces estn unidos a descripciones de diferencia. En la figura 6.14 se ilustra una red de similitud. Si un objeto desconocido difiere de un modelo de prueba de la misma manera en que un vecino del modelo de prueba difiere de ste, entonces el vecino es un modelo particularmente bueno para probar enseguida. As pues, la atencin no slo se desplaza hacia una familia de candidatos probables, sino tambin hacia el miembro particular de esa familia que es el que ms probabilidades tiene de conducir al xito. En consecuencia, el apareamiento inicial no es tanto una falla sino ms bien, es una enriquecedora prueba de conocimiento como se muestra en la Figura 20:

72

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

d(M12,M80) d(U,M80) Desconocido M80 d(M33,M80)

M12

M88

M33

M92

Fig. 20. Red de similitud Ntese que el procedimiento para moverse a travs de una red de similitud es un procedimiento de ascenso de colina, ya que el movimiento se hace hacia el vecino inmediato que parezca tener ms posibilidades de producir un apareamiento mejor con el objeto desconocido.

5.4.3 ANALOGA
La analoga es una poderosa herramienta de inferencia aprovechada por el lenguaje y el razonamiento. Como se considera en las siguientes sentencias: El mes pasado la bolsa era una montaa rusa Bill es como un coche de bomberos Los problemas en electromagnetismo son como los problemas en el movimiento de fluidos Lo que subyace en todos estos ejemplos es una complicada correspondencia entre dos conceptos aparentemente no similares. Por ejemplo, para entender la primera de las anteriores sentencias, es necesario hacer dos cosas: Escoger una propiedad clave de una montaa rusa, como sube y baja rpidamente Darse cuenta de que el viaje fsico es en s mismo una analoga para fluctuaciones numricas (en la bolsa). Esto es un caso fcil, en un amplio espacio de las posibles analogas, como la posibilidad de que la bolsa es como una montaa rusa porque est hecha de metal. Lkoff y Johnson se dieron cuenta de que el lenguaje habitual est lleno de analogas y metforas como estas. Ser muy difcil poder hablar con un programa que sea incapaz de comprender analogas y consecuentemente, difcil ensearle. Por tanto, el razonamiento basado en analogas es un importante factor en el aprendizaje a travs de consejos. Tambin es importante aprender durante la resolucin del problema. Los humanos resuelven a menudo problemas haciendo analogas con cosas que ya saben hacer. Este proceso es ms complejo que el de ir almacenando macro procesos porque el problema primitivo debe ser bastante diferente del nuevo problema en la superficie. La dificultad aparece en la determinacin de las cosas que son similares y las que no lo son. Ahora presentaremos los mtodos de resolucin de problemas por analoga denominados transformaciones y derivacional.

Analoga transformacional Supngase que se plantea probar un teorema de geometra plana, por lo que se tendra que buscar un teorema previo que fuera muy similar y copiar su demostracin, haciendo sustituciones cuando sea necesario. La idea es transformar la solucin de un problema previo en una solucin para el problema que nos ocupa, como se ilustra en la figura 21 y 22:

72

Mecanismo de Aprendizaje

73

Problema nuevo

Problema resuelto previamente

Solucin al problema nuevo

Solucin al problema antiguo

Fig. 21. Analoga Transformacional

Y B N C D E O R A
Demostracin antigua: RO----NY (DADO) Demostracin nueva: BAC DAE

Fig. 22. Muestra un ejemplo de Analoga Transformacional En la figura 23 el programa ha visto demostraciones acerca de punto y segmentos lineales; por ejemplo, conoce una prueba de que el segmento lineal RN es exactamente tan largo como el segmento lineal OY, dado que RO es tan largo como NY. Ahora el programa tiene que probar un teorema sobre ngulos, concretamente que el ngulo BD es equivalente al ngulo CE, dado que los ngulos BC y DE son equivalentes. La comprobacin acerca de los elementos lineales se recupera y se transforma en una comprobacin para ngulos sin ms que sustituir las nociones de lnea por la de punto, ngulo por segmento lineal, AB por R, AC por O, AD por N, y AN por Y. Carbonell describe un mtodo para transformar viejas soluciones en otras nuevas, en donde todas las soluciones se toman como estados en un espacio del problema llamado espacio T (T space). Los operadores (T Operators) sugieren los mtodos para transformar soluciones (estados) en otras soluciones. El razonamiento por analoga se convierte en una bsqueda en el espacio T; partiendo de una solucin antigua, utiliza un anlisis de medios y fines o algn otro mtodo para buscar una solucin para el problema actual.

74

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Analoga derivacional Ntese que la analoga transformacional no mostraba cmo se resolva el problema primitivo, slo enseaba la solucin final. A menudo las peculiaridades involucradas en la resolucin de un problema antiguo son relevantes para resolver el nuevo, por lo que se hace necesario considerar el historial detallado del episodio de resolucin del problema llamado derivacin. Al razonamiento por anloga que toma este historial para resolver el nuevo problema se le llama analoga de derivacin. Problema nuevo Problema Resucito previamente

Derivacin nueva

Derivacin antigua

Solucin al problema nuevo

Solucin al problema antiguo

Fig. 23. Analoga Derivacional Carbonell reivindica que la analoga derivacional es un componente necesario en la transferencia de habilidades en dominios complejos. Por ejemplo, al codificar en C una eficiente rutina de clasificacin que se puede recodificar la misma rutina en Lisp. Una traduccin lnea por lnea no es apropiada, en cambio se debern reutilizar las principales decisiones estructurales y de control que se tomaron al construir el programa original. Una manera de modelar este comportamiento es tener un resolutor de problemas que se repita la derivacin previa y que la modifique cuando sea necesario. Si las razones y suposiciones originales para la existencia de un paso permanecen todava en el nuevo problema, el paso se copia encima. Si alguna suposicin no es vlida a la larga, se debe buscar otra. Sino se puede buscar ninguna, se puede intentar buscar una justificacin para alguna de las alternativas almacenadas en la derivacin del problema original. O puede intentar algn paso sealando como el que conduzca a un fallo en la derivacin original, si las razones para las condiciones de fallo no son vlidas en la derivacin actual. La analoga en la resolucin de problemas supone un rea extensa para investigar. Vase Hall (1989) para examinar trabajos recientes.

5.4.4 DESCUBRIMIENTO
El descubrimiento es una forma restringida de aprendizaje en la que una entidad adquiere conocimiento sin la ayuda de un instructor. Sin embargo, algunas veces, no existe nada en el mundo que posea el conocimiento que se busca. En este caso, el tipo de accin que se debe llevar a cabo se llama descubrimiento cientfico. Para comprender mejor lo que es el aprendizaje por descubrimiento, vamos a mostrar el siguiente ejemplo de un tipo de sistema automtico de descubrimiento: AM: Descubrimiento conducido por teoras Lenat en 1977 escribi un programa que llam AM, el cual usa conceptos bsicos de la teora de conjuntos para descubrir una gran cantidad de cosas sobre la teora estndar de nmeros. AM utiliz una variedad de tcnicas de la Inteligencia Artificial de propsito general. Emple un sistema de marcos para representar los conceptos matemticos. Una de las actividades ms importantes de AM es crear nuevos conceptos y rellenar sus ranuras. AM tambin utiliza la bsqueda heurstica guiada por un conjunto de 250 reglas heursticas que representan indicaciones acerca de actividades que probablemente servirn de guas para alcanzar descubrimientos interesantes. Algunas de las heursticas de AM se presentan a continuacin: 74

Mecanismo de Aprendizaje

75

Si f es una funcin de A en B, y B est ordenado, entonces considerar los elementos de A que se corresponden con los elementos extremos de B. Crear un nuevo concepto que represente este subconjunto de A. Si algunos (pero no la mayora) de los ejemplos de algn concepto X tambin son ejemplos de otro concepto Y, crear un nuevo concepto que represente la interseccin entre X e Y. Si se encuentran muy pocos ejemplos de un concepto X, entonces aadir a la agenda la tarea de encontrar una generalizacin de X. Utiliza generacin-y-prueba para formar hiptesis basadas en un pequeo nmero de ejemplos y entonces probar la hiptesis con un conjunto ms amplio para ver si todava parecen buenas. Finalmente, una agenda controla el proceso global de descubrimientos. Cuando las heursticas sugieren una tarea, sta se sita en una agenda central, junto con la razn que la ha sugerido, y la fuerza con que ocurre AM funciona cclicamente, cada vez elige de la agenda la tarea ms prometedora y la ejecuta. En una ejecucin, AM descubri el concepto de los nmeros primos. Cmo lo hizo? Al encontrarse con los nmeros naturales, AM explor operaciones como la suma, la multiplicacin y sus inversas. Cre el concepto de divisibilidad y se dio cuenta de que algunos nmeros tenan muy pocos divisores. AM tiene una heurstica interna que le dice que explore los casos extremos. Intenta listar todos los nmeros que no son divisibles por nadie (no encuentra ninguno), con un divisor (encuentra uno: 1) y con dos. A AM se le dio como instruccin que llamara al ltimo concepto primos. Antes de seguir la pista a este concepto, AM procedi a listar los nmeros con tres divisores, como el 49. AM intent relacionar esta propiedad con otras del 49, como la de ser impar y cuadrado perfecto. AM gener otros nmeros impares y otros cuadrados perfectos para probar sus hiptesis. Un efecto lateral en la determinacin de la equivalencia de los cuadrados perfectos con los nmeros con tres divisores fue la elevacin de inters del concepto de divisor. Esto hizo que AM investigara maneras en las que un nmero se puede descomponer en factores. AM vio que slo haba una manera descomponer un nmero en factores primos (conocido como el Teorema de Factorizacin nica). Como la descomposicin de los nmeros en componentes multiplicativos resultaba ser interesante, AM decidi, por analoga, intentar lo mismo con los componentes aditivos. Hizo varias conjeturas sin inters, como la de que cada nmero se poda expresar como suma de 1s. Pero tambin encontr fenmenos interesantes, como el de que muchos nmeros de podan expresar como suma de dos primos. A base de listar casos, AM determin que todos los nmeros mayores o iguales a 2 tenan esta propiedad. Esta conjetura, conocida como la Conjetura de Goldbach, se cree que es cierta, aunque no se ha encontrado todava una prueba matemtica de ello. AM contiene gran cantidad de heursticas de propsito general como las que se han utilizado en este ejemplo. A menudo, distintas heursticas apuntan al mismo sitio. Por ejemplo, mientras que AM descubri los nmeros primos usando una heurstica que implicaba contemplar casos extremos, otro modo de derivar los nmeros primos es utilizar las dos reglas siguientes: Si hay una fuerte analoga entre A y B, pero hay una conjetura acerca de A que no se encuentra en ninguno de los elementos de B, se define un nuevo concepto que incluya a los elementos de B para los que s se d. Si hay un conjunto cuyo complemento es mucho menos comn que l mismo, entonces se crea un nuevo concepto que represente a ese complemento. Hay una fuerte analoga entre la suma y la multiplicacin de nmeros naturales. Pero la analoga se echa a perder cuando se observa que todos los nmeros naturales mayores que 1 se pueden expresar como la suma de dos nmeros naturales ms pequeos (excluyendo a la identidad). Esto no es cierto para la multiplicacin. Entonces, la primera heurstica descrita anteriormente sugiere la creacin de un nuevo concepto que represente el conjunto de los nmeros compuestos. Mientras que, la segunda heurstica sugiere crear un concepto que represente el complemento de aqullos, a saber, el conjunto de los nmeros primos. Hay dos preguntas primordiales que surgen sobre el funcionamiento de AM. Una es: Por qu AM siempre se desconectaba? Esto es, por qu AM no descubra nuevos hechos acerca de nmeros, hechos posiblemente desconocidos para las matemticas humanas?. Lenat (1983) sostiene que el funcionamiento de AM estaba limitado por la naturaleza esttica de sus heursticas.

76

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Como el programa progresaba, los conceptos con los que trabajaba evolucionaban partiendo de los conceptos iniciales, mientras que las heursticas con las que se poda trabajar sobre estos conceptos permanecan iguales. Para remediar este problema, se sugiri que se trataran las heursticas como conceptos en toda regla que se podan crear y modificar por parte de las mismas clases de procesos (como la generalizacin, especializacin y analoga) como si fueran conceptos del dominio de la tarea. En otras palabras, AM funcionara en modo descubrimiento en el dominio de las heursticas, es decir, en el estudio de las heursticas en s mismas, al igual que lo hace en el dominio de la teora de nmeros. Con esta idea en mente, se diseo una extensin de AM llamada EURISKO (Lenat 1983). Otra pregunta era: Por qu AM trabaja tan bien como lo haca?. Una causa de la potencia de AM era su amplia coleccin de heursticas con las que se consideraban cosas interesantes. Pero AM tena otra causa menos obvia, la relacin natural entre conceptos tericos de los nmeros y sus representaciones compactas en AM. El sistema trabaja sintcticamente variando viejas definiciones de conceptos esencialmente almacenados como cortos programas en LISP- con la esperanza de encontrar nuevos e interesantes conceptos. Resulta que una variacin o mutacin en un pequeo programa de LISP muy probablemente da lugar a otro programa de LISP bien formado y justificado. Esto da cuenta de la importante habilidad de AM para generar algunos conceptos nuevos. Pero mientras que los humanos interpretan a AM como un explorador de la teora de nmeros, en realidad estaba explorando el espacio de los pequeos problemas de LISP. AM tuvo xito debido en gran parte a esta ntima relacin entre la teora de nmeros y los programas de LISP. Los problemas aparecieron cuando se aplicaron AM y EURISKO a otros dominios, incluyendo el del estudio de las heursticas en s mismas. En estos dominios, los conceptos eran ms grandes y complejos que los de la teora de nmeros y la sintaxis del lenguaje de representacin no era una imagen tan cercana a la semntica del dominio. Como resultado, la mutacin sintctica de la definicin de un concepto casi siempre daba lugar a un concepto mal formado o intil perjudicando de forma importante el procedimiento de descubrimientos. Puede que la moraleja de AM sea que el aprendizaje es un asunto complicado. Se debe ser cuidadoso a la hora de interpretar lo que estn haciendo nuestros programas. AM tiene implcita una predisposicin para el aprendizaje de conceptos en la teora de nmeros. Slo despus de haber reconocido explcitamente esta predisposicin fue posible entender por qu AM funcionaba tan bien en un dominio y tan mal en otros.

5.5 HERRAMIENTAS QUE FACILITAN EL APRENDIZAJE


Ayudas para la adquisicin de conocimiento La adquisicin de conocimiento para un Sistema Experto consiste de tres etapas: Ingresar datos o conocimiento al sistema. Evitar errores en los datos o conocimiento. Depurar el conocimiento para lograr un buen desempeo del sistema. Experiencias con estas tareas han guiado el desarrollo de tcnicas y ayudas computarizadas como asistentes en el proceso de adquisicin de conocimiento. Estas herramientas para la adquisicin del conocimiento pueden ser divididas dentro de tres categoras: Editores e interfaces de la base de conocimientos, facilidades de explicacin, y Revisin de la base de conocimientos. Editores e interfaces de la base de conocimientos Un editor de conocimientos es una herramienta para la adquisicin de conocimiento, pues facilita la tarea de ingresar conocimiento al sistema y disminuye la posibilidad de tener errores. Algunos editores han sido creados para evitar las fallas que pueden ocurrir cuando se construye o modifica una base de conocimientos. Se han creado editores sofisticados con funciones especficas para la deteccin de errores, como el ayudar al usuario a darse cuenta de errores de mquina y errores sintcticos, adems de checar la consistencia e inconsistencia semntica entre el nuevo elemento introducido y la informacin contenida en base de conocimiento. 76

Mecanismo de Aprendizaje

77

Un buen editor puede hacer la diferencia entre sucesos correctos o incorrectos durante la adquisicin de conocimiento. Los mejores editores de bases de conocimientos proveen al usuario interfaces que facilitan la introduccin y el despliegue de informacin convenientemente. Editores en sistemas tal como: EMYCIN e INTERLISP tienen importantes funciones como identificar el punto de la edicin incorrecta o notificar cambios permanentes en la base de conocimientos y que requiera informacin relevante para ello. Cuando una regla es creada o modificada en EMYCIN la hora, la fecha y el usuario son recordados y almacenados junto con la nueva regla, haciendo eso posible para determinar despus quien es el usuario del sistema que est respondiendo X dato en la base de conocimientos. En general estos sistemas ayudan al usuario a detectar errores de mquina y sintcticos; adems de que son capaces de entender la sintaxis del lenguaje del Sistema Experto que se est utilizando. Facilidades de explicacin Los Sistemas Expertos necesitan la habilidad para explicar el razonamiento que gua las soluciones de problemas para ayudar al experto e ingeniero de conocimientos a perfeccionar y mejorar los sistemas. Tal explicacin sugiere cambios apropiados en la base de conocimientos para clarificar los pasos en la solucin de problemas que gua a una respuesta incorrecta y los elementos en la base de conocimientos que produce los resultados incorrectos. Varios sistemas de explicacin especializada han sido construidos como herramientas para Sistemas Expertos entre ellos KAS, EXPERT y EMYCIN. En EMYCIN este tipo de explicacin facilita, junto con un editor la revisin y adicin de reglas, que produce un sistema interactivo para anlisis y refinamiento de la base de conocimientos. Revisin de la base de conocimiento Al introducir nuevo conocimiento y alterar el existente se pueden crear contradicciones en la base de conocimientos por lo que se deben identificar las inconsistencias generadas. Para realizar esta funcin existen programas orientados a la verificacin de la consistencia semntica y a la comprobacin automtica que ayudan a detectar inconsistencias entre las nuevas versiones de la base de conocimientos. Por ejemplo, para ayudar a corregir errores, TEIRESIAS primero sugiere que tipo de regla ser correcta para el problema percibido y despus ofrece escribir una forma especfica de la regla, en la suposicin de que la nueva regla tenga que aplicarse para el caso en el cual el problema fue notificado. As seguir el chequeo con el usuario para ver si la regla especificada es la ideal y ofrece la usuario una oportunidad para hacer el cambio. Si el usuario edita la regla TEIRESIAS une la nueva regla con la anterior y es derivado internamente un nuevo modelo con otras reglas similares para checar la consistencia y complementos, finalmente recomienda la nueva regla en la sintaxis correcta y con valores asociados con todos los parmetros necesarios. Comprobacin semntica es otro mtodo para elegir una apropiada revisin de la base de conocimientos como la comprobacin del sistema ante un gran nmero de problemas para determinar un impacto general de la revisin. La revisin resultante valida el rendimiento total que quiz despus sea implementado. EXPERT y EMYCIN proveen tales facilidades. TEIRESIAS permite traer habilidades para referirse a algunos ejemplos de problemas que producirn el conocimientos requerido. Dada una regla inicial establecida, representando un prototipo de Sistema Experto, TEIRESIAS corre las reglas archivadas en problemas e invita a los expertos a criticar el resultado. Nuevas reglas o reglas modificadas, propuestas por el experto son controladas para la consistencia y coherencia, usando modelos de reglas. Esto es esencialmente generalizando acerca de los tipos de reglas que son encontradas en la ejecucin. TEIRESIAS tiene metareglas, las cuales se refieren a los atributos de niveles de objeto de las reglas, en lugar de referirse a otras reglas directamente. Tales reglas pueden proponer que en algunas circunstancias es mejor investigar ciertos parmetros difciles y despus tratar otros. Tambin existen facilidades para ayudar a un experto a agregar una nueva instancia de un tipo de datos, errores que comnmente ocurren con esta tarea es que dan a la estructura una nueva instancia. Una abstraccin de datos usada para guiar la creacin de instancias es llamada un esquema. Los esquemas son descripciones de tipos de datos, ellos pueden estar organizados dentro de una jerarqua, donde cada esquema hereda los atributos asociados con sus superiores y tiene atributos propios. TEIRESIAS distingue entre tres niveles de generalidad que son:

78

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Dominio - especfico: Conocimiento acerca de objetos de datos; Representacin - especfica: Conocimiento acerca de tipos de datos; Representacin - independiente: Conocimiento acerca de las declaraciones. Usa un nmero de facilidades para controlar la conducta de una regla establecida, suministradas por el shell EMYCIN: EXPLICAR (EXPLAIN): Despus de cada consulta una explicacin concisa es suministrada, la cual dice la usuario cmo se lleg a la conclusin. PRUEBA (TEST): El experto puede comparar la respuesta de la ltima corrida del programa con los resultados correctos archivados y explorar las diferencias. EXAMEN (REVIEW): El experto puede examinar las conclusiones del sistema en una librera de los objetos archivados. OPAL intenta suministrar la adquisicin de estrategias, las cuales son guiadas por el dominio del conocimiento, intenta encubrir para el usuario mucho de los detalles de cmo el conocimiento es representado y desplegado. OPAL no es un programa de propsito general, sin embargo, usa conocimiento acerca de un dominio particular de aplicacin para provocar planes de tratamientos para lo cual las reglas de decisin pueden ser generadas. OPAL facilita la adquisicin de conocimiento brindada al Sistema Experto ONCOCIN, el cual construye planes de tratamiento para pacientes con cncer. En esta situacin se hace uso de un modelo de dominio para adquirir conocimiento directamente de un experto va una interfase grfica. Este tambin usa conocimiento de dominio para traducir la informacin adquirida a la terminal dentro del cdigo ejecutable, tal como producir reglas y declarar tablas finitas. ONCOCIN emplea tres diferentes formas de representacin de conocimiento: Una jerarqua de objetos.- Representa protocolos y sus componentes, as como medicamentos. Produccin de reglas.- Unidas a estructuras que concluyen los valores de parmetros mdicos durante el plan refinado. Declaracin de tablas finitas.- Representan secuencias de terapias a ser administradas sobre tiempo. Los modelos de dominio de OPAL tienen cuatro aspectos principales que fueron derivados usando anlisis ontolgico: Entidades y Relaciones Accin del dominio Predicados del dominio Conocimiento procedural. OPAL usa un modelo de dominio para permitir y desplegar conocimiento acerca de planes de tratamiento va una variedad de representaciones visuales, tales como iconos que se colocan para los elementos de los planes, formas grficas para ser llenadas con informacin acerca de medicamentos y un lenguaje visual para representar el procedimiento de aspectos del tratamiento. No requiere usar o tratar con detalles la implementacin, tales parmetros mdicos son referenciados por acciones en el trabajo interno de ONCOCIN. La adquisicin de conocimiento procedural se facilita por un lenguaje de programacin visual. La interfase grfica permite al usuario el crear iconos permanentes para elementos del plan, arreglar estos en una estructura grfica para posicionar estos elementos y dibujar conexiones entre ellos. El usuario puede crear cuadros con los que simula el control de flujo de lenguaje de programacin convencional.

5.6 APLICACIONES ORIENTADAS AL APRENDIZAJE


Escenario para la adquisicin de conocimiento El siguiente escenario idealizado presenta algunos importantes pasos de la ingeniera de conocimiento tpicamente desarrollados durante la evolucin y desarrollo de un Sistema Experto.

78

Mecanismo de Aprendizaje

79

Se presenta la solucin de un problema. Ejemplo la identificacin de derrames qumicos y sus fuentes de origen de la ORNL (Laboratorio Nacional del Centro de Roble). El director de la ORNL estudia el problema, las cantidades descargadas de aceite y otros qumicos en el agua de los E.U. con estas descargas se violan los estndares establecidos de calidad. ORNL tiene aproximadamente 200 instalaciones de gobierno, con 93 descargas en diferentes sitios. El problema es detectar con un monitor el contenido de los derrames de esos materiales. El editor de la ORNL trata con la cabecera de la divisin qumica, son estos los que deciden que es necesario un sistema de cmputo, elaborado por gente experta familiarizada con la deteccin de derrames y contaminantes. Se elige a una persona que tiene experiencia en la construccin de sistemas de este tipo, quien es fundador de la divisin de ciencias computacionales y la construccin de Sistemas Expertos para tratar con derrames qumicos y aceites, es asignado como el ingeniero de conocimiento encargado de solucionar el problema. El primer paso del ingeniero de conocimiento es familiarizarse con el problema y dominio, esto incluye la localizacin de la fuente de informacin experta a travs de visitas a sitios, y leer lo ms posible del problema. Platica con la gente familiarizada en derrames de aceite, para obtener reportes y artculos tambin relacionados. Finalmente el ingeniero de conocimientos busca en la divisin de qumicos a un experto para colaborar en la construccin del sistema definido. Cuando el problema ha sido adecuadamente definido, el ingeniero comienza a determinar los principales conceptos de dominio, estos sern requeridos durante las tareas de construccin. El ingeniero adquiere numerosos conceptos y mtodos de los expertos, por lo que al final del periodo tiene los principales conceptos, las relaciones y las definiciones necesarias del problema y sus soluciones. Despus de buscar el conocimiento el ingeniero hace una lista de las estrategias bsicas que los expertos usan cuando ejecutan la tarea, tales como los factores que usan los expertos para hacer una conjetura inicial acerca de algunas bases de informacin tentativa; como hacen los expertos para determinar que respuesta se usa para definir las conjeturas, en que orden los expertos persiguen cada importante subtarea y si ese orden varia de acuerdo al caso. Cuando estas dos formas de conocimiento son acopladas, constituyen la llamada estructura de inferencia del sistema experto. Esta estructura de conocimiento seala: Que tareas y trminos de consulta estn determinados y las indicaciones de conocimiento estratgico. Como y cuando el Sistema Experto es establecido con ello. En resumen el ingeniero de conocimiento hace las listas para las justificaciones de la asociacin de trminos y los mtodos estratgicos que el experto utiliza cuando resuelve un problema. Estos apuntes son importantes no solo para l, sino para clasificar y mantener una adecuada documentacin del sistema. Durante la conceptualizacin se formaliza el conocimiento, empezando a escogerlo y eligiendo la mejor arquitectura para organizar el conocimiento. En los elementos se incluye el modelo, las herramientas y el medio ambiente de programacin particular para tal aplicacin. Con estos componentes el ingeniero tiene que determinar las estructuras y los procesos de decisin involucrados. Estas y otras caractersticas del problema son sugeridas al utilizar un lenguaje basado en reglas, donde se determinan los rboles de bsqueda y las entradas y salidas asncronas que son parte esencial del sistema. Los shells que se pueden utilizar son el EMYCIN, KAS, ROSIE y el OPS5 o un experto de reglas externas, estas pueden restringir las estructuras de control que son insuficientes para las preguntas. Protos: una base de ejemplares aprendiz aprendiendo El sistema Protos es una aplicacin de aprendizaje para la clasificacin heurstica. Aprovecha el aprendizaje inductivo y deductivo para la solucin de problemas. Adems, el mtodo de inferencia cuenta con un amplio estudio en aprendizaje de la mquina, mediante el soporte de retencin, indexacin y equivalencia de ejemplos. Aprendiendo y razonando ejemplos es una alternativa, que implica recordar e indexar instrucciones especficas del caso. En contraste, el aprendizaje inductivo generaliza instrucciones especficas del caso razonando una descripcin abstracta y al deducir un nuevo caso es sometido por la descripcin abstracta.

80

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

La principal meta de Protos es desarrollar un mecanismo general para adquirir la clasificacin del conocimiento mientras provee una asistencia interactiva al usuario.

5.7 CONSTRUCCIN DEL MECANISMO DE APRENDIZAJE


Los sistemas de aprendizaje inductivos sirven para construir un mecanismo de aprendizaje que nos responda las siguientes preguntas: Qu es lo que se debe aprender ? Cules ejemplos son ms tiles ? Qu atributos del problema son los ms relevantes ? El aprendizaje por induccin basado en conocimiento debe ejecutar las siguientes funciones: Seleccionar los ejemplos para la induccin sin intervencin del usuario. Determinar donde el conocimiento hace falta, es decir, es incompleto e inducir las consecuencias de ambos y los antecedentes de las nuevas reglas. La participacin de eventos de clase para evitar la sobregeneralizacin de nuevas reglas. Existen salidas que los sistemas combinan y tcnicas empricas que debe aprender durante el aprendizaje: Que conocimiento ser usado para identificar donde hace falta el conocimiento. Cuales son los ejemplos mas relevantes para el problema. Cuales son los atributos del problema que son mas relevantes. Aprendizaje inductivo basado en conocimiento En la adquisicin del conocimiento manual, el experto evala los resultados del motor de inferencia para depurar la base de conocimientos. El motor de inferencia genera un evento para el sistema de aprendizaje con el problema que no puede ser resuelto. KBL es un sistema que usa ejemplos proporcionados por el experto y el conocimiento lo representa en forma de reglas. Las reglas de conocimiento pueden ser obtenidas por trminos de adquisicin de conocimiento manual o por consultas del experto con el sistema de adquisicin de conocimiento de la Figura 24:

Reglas Motor de inferencia Conocimiento

Reglas Problema sin resolver Ejemplo Ejemplo Experto Regla inducida KBL Reglas

Ejemplo Ejemplos

Fig. 24. Proceso del KBL

80

Mecanismo de Aprendizaje

81

El proceso de KBL comienza con un problema, donde el motor de inferencia no puede resolverlo usando el conocimiento disponible. El problema es un conjunto de hechos y una meta no instanciada. KBL primero construye un rbol de pruebas parciales para guiar el proceso de aprendizaje. El proceso de la induccin puede reparar una regla existente o inducir una nueva para que el motor de inferencia sea capaz de resolver el problema que previamente no haba podido resolver. El KBL requiere los siguientes elementos de entrada: Conocimiento de dominio incompleto. Un conjunto de ejemplos sin solucin. Un lenguaje que identifique el nmero de argumentos para cada predicado y el tipo de argumentos validos. Un problema que no puede ser resuelto con el conocimiento incompleto del dominio. La induccin es guiada por el rbol de prueba parcial en la mayora de las partes de KBL, pero los problemas resueltos requieren tener varias pruebas parciales. La induccin de reglas estructuradas es una tcnica heurstica para guiar la induccin y con ello generar las pruebas parciales. El proceso de induccin usa heursticas seleccionadas del rbol que prueba para seleccionar los ejemplos relevantes apropiados para las reglas de induccin. Induccin por reglas estructuradas La induccin por reglas estructuradas (RSI) nos permite determinar donde el conocimiento hace falta desde la teora de dominio y as construir un rbol de prueba parciales. Libera a la base de conocimiento para determinar la localizacin ms adecuada para aprender de la regla estructurada. La meta es generalizar la base de conocimientos mientras que el problema es resuelto. Las reglas seleccionadas para la generalizacin, tienen la mayora subtemas a satisfacer y requieren de una pequea induccin para permitir cumplir las submetas que componen el problema. La induccin de reglas estructuradas es guiada por las siguientes metas: Para usar el contexto del problema: El contexto es un aspecto importante de los problemas que norma la construccin de nuevas reglas o modifica las actuales. Para generar la base de conocimientos tan pronto como sea posible resolver el problema actual. Aprovechar el conocimiento existente en las reglas para generalizar o especializar las existentes antes de agregar una nueva. Asignando valores de bondad heursticos Para ejecutar una regla de induccin estructurada, se debe asignar un valor numrico a cada regla indicando la cantidad de generalizacin requerida para cada problema dado. La generalizacin es una superclase, que se crea a partir de una serie de eventos y que de lo particular logra una generalizacin (induccin). Los cuatro factores para calcular el valor numrico que se le asigne a la regla son los siguientes: Nmeros de subtemas integrantes del problema actual: Si varios antecedentes de las reglas son iguales con los atributos del problema actual. Nmeros de predicados de los subtemas no son iguales con los argumentos: En este caso los atributos en las reglas son presentados en el problema, pero sus valores no son iguales a los valores en los antecedentes. Por ejemplo el trmino del antecedente puede ser (peso 5) pero la descripcin del problema tiene (peso 3). Nmero de subtemas de predicados no son iguales. Un predicado que no puede ser encadenado con otro predicado o predicado primitivo (el predicado primitivo es un conocimiento base con lo que se parte cuando el Sistema Experto es creado). Cuando el predicado primitivo no puede ser ligado a cualquiera del problema actual, la tcnica de generalizacin permite que la regla pueda desechar las reglas que le antecedieron. Para esta situacin existen dos opciones: Crear una nueva regla para la meta, y Generalizar una regla en la estructura para est meta. Las reglas estructuradas pueden ser aplicadas a una submeta, para determinar si uno de los niveles de las reglas necesita o no ser modificado. El sistema investiga, en lo ms interno dentro de la estructura para hacer una generalizacin apropiada.

82

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Preferencia para generalizar reglas grandes. Las reglas con muchas submetas son ms especificas que aquellas con pocas submetas. Para minimizar el impacto de la generalizacin el sistema de aprendizaje debe trabajar con reglas que no san semejantes para no encontrar inconsistencias en el conocimiento que se esta suministrando. Consideraciones globales para la generalizacin El sistema debe considerar como van a cambiar las reglas en un nivel, de tal forma que no afecte el rendimiento de las reglas en el sistema, para ayudar a evitar este problema el sistema busca el posible cambio y determina la mejor alternativa. Est es una bsqueda hacia un rbol AND/OR, para la ruta que satisfaga el nivel alto de la meta pero que requiera el menor nmero de modificaciones a la base de conocimientos. Las reglas pueden ser utilizadas para probar las metas, dnde solamente una de las cuales es requerida, cada regla consiste en un nmero de antecedentes, cada uno de los cuales debe ser probado por la regla de la meta. El sistema identifica donde el conocimiento hace falta, busca las reglas en la base de conocimiento para encontrar la prueba que complete la regla. El sistema escoge las reglas para generalizar, basndose en parmetros provistos por el usuario. Estos valores determinan la preferencia por los diferentes mtodos de extensin de la base de conocimientos, cuando el encadenamiento falla, ocurre que el sistema aplica el aprendizaje para la submeta errnea. Si los valores para las reglas de las submetas estn por debajo de 0.75 entonces el sistema no debe intentar modificar a las reglas existentes. Los valores de lo parmetros indican que ninguna de las actuales podrn solucionar el problema. Proceso de induccin Con el sistema de aprendizaje emprico, el usuario debe remplazar los ejemplos de atributos relevantes del sistema, en el mdulo de induccin de KBL se seleccionan los ejemplos relevantes basados en un rbol de prueba parcial determinados por las reglas estructuradas y la base de conocimientos para enfocar a los atributos ms que a la importancia del problema. Tambin debido a la representacin, el sistema debe descubrir las consecuencias de las reglas para inducir los antecedentes, las reglas indicadas por KBL tiene la siguiente forma. (PRED1 ? X ? Y) TESTS (= ? Y VALUE) El modelo encuentra PRED1, y el modulo de induccin debe determinar VALUE. La razn del cambio en PRED1 es para colocar el ?Y a VALUE. El algoritmo de induccin descubre la consecuencia de la regla al colocar VALUE a un valor de una constante o a una formula usando otra variable de liga. La porcin TESTS de la regla define la condicin que debe ser verdadera en el actual contexto para aplicar la regla de la Figura 25:

(Foo ? x)

(a1 ?y)

(b ?z)

(c ?x)

(a1 ?y)

(a2 ?y)

(b1 ?w)

(b2 ?z)

(a1 5)

(a2 5)

(b1 10)

???

Fig. 25. rbol de pruebas parcial determinado por el RSI Coleccin de atributos relevantes Los problemas en el mundo real pueden tener muchos atributos, el sistema debe aprovechar los ms relevantes para alcanzar la meta. En el aprendizaje emprico tradicional, los sistemas utilizan todos los atributos, el enfocarse en los atributos relevantes ayuda al sistema a producir resultados sensibles, tambin reduce el espacio del problema. 82

Mecanismo de Aprendizaje

83

Como muchos atributos son utilizados en la induccin para una nueva regla, ms ejemplos necesitan ser usados para identificar el rea hacia afuera de la nueva regla. Los atributos relevantes pueden ser identificados de la siguiente manera, por el conocimiento que puede ser suministrado indicando que atributos son ms semejantes, los cuales sean tiles para inducir las reglas para un predicado. El sistema KBL investiga para otras reglas con el mismo predicado y sus consecuencias como una submeta. Ahora el sistema se enfoca en los atributos usados por estas para analizar si los atributos de la nueva reglas son tomados o no en cuenta para guardarse en la base de conocimientos. Reglas de consecuencia Despus de que el sistema calcula las soluciones de las metas de cada ejemplo, ahora ya las consecuencias de las regla pueden ser determinadas. Si una variable no est ligada con algn valor, podr este valor ser asignado con una constante para que la tarea sea ms sencilla. Los eventos son particionados en clase para cada valor visto, esto crea reglas especficas. El mdulo de induccin debe descubrir la relacin entre el valor faltante y las otras variables. El sistema busca la propiedad de la expresin que ser colocada en la consecuencia de la regla: constante, variable o frmula matemtica. Un conjunto de ejemplos son construidos en base a diferentes expresiones. Los ejemplos para cada participacin pueden actuar como el elemento faltante para las clases durante la induccin. Induccin de nuevas reglas Con los ejemplos particionados y las consecuencias conocidas para las reglas de cada particin, el sistema est listo para inducir los antecedentes. Un aprendizaje emprico tradicional a partir de un sistema de ejemplos puede ser usado para inducir las condiciones apropiadas para disparar las nuevas reglas. El sistema de induccin podr producir reglas especficas en lugar de generales. El sistema puede detectar que son reglas especficas cuando construyen el rbol de prueba parciales y despus generaliza estas reglas. Para detectar que hay demasiadas reglas generales, debe indicarse un resultado incorrecto o el sistema buscar las contradicciones entre las reglas existentes y los ejemplos proporcionados.

5.8 EVALUACIN DEL MDELO DE APRENDIZAJE


Principios bsicos de la teora de aprendizaje El aprendizaje tradicionalmente ha sido caracterizado como un mejoramiento en la conducta gracias a la experiencia. Para construir un sistema de aprendizaje se necesita entender en trminos computacionales, cual es el comportamiento para poder obtener una respuesta en base a una experiencia dada. La teora de la inferencia del aprendizaje asume que el aprendizaje es un proceso basado en metas que mejoran el conocimiento de aprendiz, explorando la experiencia de aprendiz y el conocimiento anterior que tiene este. La bsqueda puede emplear cualquier tipo de inferencia, deductiva, inductiva o por analoga. Esto envuelve al conocimiento de fondo. En cada acto de aprendizaje el aprendiz, analiza la entrada de informacin en trminos de su conocimiento de fondo y sus metas, esto es llevado acabo mediante varias inferencias. Para generar el nuevo conocimiento el aprendizaje determina si el nuevo conocimiento satisface la meta. Las metas de aprendizaje (sistema de metas) son definidas por el funcionamiento del sistema, en el cual opera. El nuevo conocimiento puede construirse por deduccin del conocimiento anterior del aprendiz. El nuevo conocimiento es llamado intrnseco si no es deducido del anterior del aprendiz y la entrada de informacin puede ser derivada por una fuente externa, un maestro u observacin, o generado por induccin, analoga o deduccin del contingente. Un concepto pragmtico nuevo es aquel que no puede ser obtenido por deduccin del conocimiento anterior, usando los recursos computacionales disponibles en tiempo y espacio. Este conocimiento pragmtico nuevo del derivado depende de la validez del conocimiento de fondo. El conocimiento derivado es verdadero si las premisas son verdaderas. La teora asume que cualquier segmento o modulo del conocimiento del aprendiz tiene tres aspectos: Contenido: Es el que liga la representacin del conocimiento, es declarativo en base a oraciones, las cuales representan el segmento de conocimiento y son utilizadas en el calculo de predicados.

84

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Organizacin: Es reflejada por la estructura de la representacin del conocimiento y determina la manera en la cual el segmento de conocimiento es usado (el orden en el cual los componentes de las expresiones lgicas son evaluadas). Certeza: Es el grado en que el aprendiz cre que este particular segmento es verdadero, es una medida subjetiva de la validez del conocimiento, es de hacer notar que la organizacin diferente del conocimiento puede facilitar la realizacin de las diferentes tareas sin cambiar la capacidad potencial y el funcionamiento de ellas. La totalidad de cambios en el conocimiento del aprendiz queda determinada por los cambios realizados en el contenido, su organizacin y la certeza del conocimiento. Un agente tiene que poseer la habilidad de ejecutar la inferencia y de memorizar el conocimiento. La habilidad de memorizar el conocimiento sirve para reemplazar el conocimiento y el otro para grabar los resultados tiles de la inferencia, si no existieran estos dos componentes relacionados con la habilidad para almacenar y recuperar el conocimiento de la memoria, el aprendizaje no podra llevarse a cabo. La ecuacin de aprendizaje est determinada de la siguiente manera: APRENDIZAJE = INFERIR + MEMORIZAR El doble rol de la memoria, uno como almacn del conocimiento de fondo y otra como deposito de resultados, es a menudo reflejada en la organizacin de los sistemas de aprendizaje, por ejemplo, en una red neural el conocimiento de fondo es determinado por la estructura de la red (nmero y tipo de unidades) y sus interconexiones por el peso inicial de las conexiones. El proceso de aprendizaje involucra la modificacin a las reglas anteriores, as como la creacin de nuevas. El espacio de conocimiento es definido por el lenguaje de representacin del conocimiento y la disponibilidad de operadores de bsqueda. Los operadores de bsqueda son instanciaciones de la transmutacin de conocimiento que un aprendizaje es capaz de ejecutar, las transmutaciones cambian varios aspectos del conocimiento, algunas de ellas generan nuevo conocimiento y otras solamente lo manipulan. Por lo tanto la transmutacin puede emplear cualquier tipo de inferencia. Dada una entrada y un conocimiento de fondo el aprendiz debe generar inferencias, la meta del aprendizaje determina que parte del conocimiento anterior es relevante, cual tiene que ser adquirido y en que manera debe ser evaluado y cuando detener su aprendizaje. Existen dos metas de aprendizaje diferente: Dominios independientes: Son llamadas as tipo genrico de certeza en la actividad del aprendizaje independiente del tema a tratar. Un ejemplo de una meta con dominio independiente es aquella que generalice una observacin, para descubrir una correccin de hechos, encontrar una explicacin a los hechos dados, adquirir un control del conocimiento para llevar a cabo algunas actividades, y formular conocimiento ms eficientemente. Dominios dependientes: Responden a la adquisicin de conocimiento especfico acerca del dominio. La importancia de las metas especficas es que elevan la multiestrategia de los sistemas de aprendizaje, las cuales pueden aprender diferentes tipos de conocimientos a partir de diferentes entradas. En resumen el aprendizaje es un proceso de conocimiento derivado de metas dependientes, usando informacin de fondo, tal proceso puede ser visto como una bsqueda de espacios usando transmutaciones. Tipos de inferencia Cualquier tipo de inferencia puede generar una parte de conocimiento que puede ser til para ciertos propsitos. Una teora completa de aprendizaje incluye una completa teora de inferencias. La primera clasificacin divide a la inferencia en dos tipos fundamentalmente: Deductiva e Inductiva. En la definicin de estos tipos de inferencia, en un sentido convencional (como la lgica formal) no hay distincin entre la informacin que entra y el conocimiento de fondo. Pero si existe una distincin cuando se caracteriza para el proceso de aprendizaje. Desde el punto de vista del aprendiz, hay una diferencia entre el conocimiento que el aprendiz ya posee y la informacin que recibe de sus sentidos. Esta distincin es til para los aspectos cognoscitivos del razonamiento y aprendizaje que conducen a una adecuada descripcin del proceso de aprendizaje. 84

Mecanismo de Aprendizaje

85

Para definir estos tipos de inferencia se toma la siguiente descripcin P U BK = C Donde P es un subconjunto de oraciones llamadas premisas y BK es el conocimiento de fondo = denota el vinculo lgico y C son las oraciones llamadas consecuencias, con base en lo anterior se asume que P es lgicamente consistente en C. Lo anterior se puede interpretar como que P y BK son lgicamente vinculados a C, alternativamente C es una consecuencia lgica de P y BK. La inferencia deductiva de la consecuencia de C dado P y BK. La inferencia inductiva es una hiptesis de la premisa P dado C y BK. La deduccin puede ser vista como una relacin orientada hacia adelante y la induccin como desarrollo hacia atrs. La deduccin es un proceso que determina la consecuencia lgica de un conocimiento dado, y su forma bsica es preservar la falsedad (si C no es verdadera, entonces P no es verdadera). A su vez la inferencia inductiva se divide en generalizacin y abductiva, ambas inferencias difieren en el tipo de premisas que generan y el tipo de BK que emplean. La generalizacin inductiva produce una premisa P que es una generalizacin de C. P se caracteriza por un conjunto grande de entradas, las cuales son discretas por C. La generalizacin inductiva puede ser vista como una implicacin tautolgica con una traza haba atrs. Por ejemplo la regla de especializacin universal: x P(x) P(a) La derivacin abductiva produce una descripcin que se caracteriza por una implicacin con una traza hacia atrs que representa al conocimiento del dominio. Si el conocimiento del dominio representa una dependencia causal, entonces la derivacin abductiva produce una explicacin causal. La inferencia tambin puede ser concluyente (fuertes) o contingentes (dbiles). La inferencia deductiva concluyente (tambin llamada formal o demostrativa), produce consecuencias verdaderas de premisas verdaderas. La inferencia inductiva concluyente produce hiptesis que concluyen con las premisas vinculadas. La inferencia deductiva contingente produce consecuencias que puede ser verdaderas en algunas situaciones y falsas en otras, en esta la verdad persiste dbilmente. La inferencia inductiva contingente produce hiptesis donde las premisas estn ligadas dbilmente, a estas persevera la falsedad fcilmente. Transmutaciones Las transmutaciones son una modulacin del cambio en el conocimiento y puede ser vista como un agente en el espacio del conocimiento. Puede cambiar uno o ms aspectos del conocimiento, en su contenido, organizacin y certeza. Las transmutaciones pueden generar intrnsecamente nuevos conocimientos, modificar el grado de certeza en algunos componentes del mismo, as como cambiar la organizacin de este. Formalmente una transmutacin puede ser vista como aquella que contiene como argumentos una coleccin de sentencias (S) y un juego de entidades (E), as como un conocimiento de fondo (BK), con lo cual establecen un nuevo conocimiento (S) y una nueva serie de entidades (E) y un nuevo conocimiento de fondo (BK). T,S,E,BK S,E,, BK La distribucin entre las transmutaciones est basada principalmente, en la generacin de tipos de conocimiento, tipos de inferencia, as como en los mtodos de derivacin del conocimiento a partir de otro.

86

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

En la actualidad son usadas diferentes transmutaciones, las cuales son asociadas con un solo tipo de inferencia. Por ejemplo la generalizacin y la aglomeracin son dos tipos de transmutacin, las cuales son asociadas o ejecutadas a travs de la induccin. Otro tipo de transmutaciones son la abstraccin y concrecin las cuales son ejecutadas a travs de la deduccin. Una construccin importante de esta teora, es que la observacin de una transmutacin puede ser agrupada en pares de operadores opuestos, estos operadores pueden cambiar el conocimiento en una direccin conceptualmente opuesta. Cada par de transmutaciones puede de este modo ejecutarse en una operacin bidireccional con el conocimiento. Existe doce grupos de transmutaciones diferentes, los cuales sern descritos a continuacin. Los primeros nueve representan transmutaciones, que encajan en la categora de generacin del conocimiento y los dems grupos orientados hacia la manipulacin del conocimiento. Generalizacin/Especializacin Las transmutaciones por generalizacin extienden la referencia del conocimiento a una serie de descripciones establecidas, lo cual permite ampliar la descripcin de las caractersticas originales. Este tipo de transmutaciones realiza inferencias inductivas, aunque la generalizacin tambin puede llegar a ser deductiva, la descripcin general es deductiva o derivada desde el ms especifico conocimiento de fondo. Por lo tanto dependiendo del conocimiento de fondo y del camino usado, la generalizacin puede ser por induccin, deduccin o analoga. La transmutacin opuesta a la generalizacin es la transmutacin de especializacin, la cual reduce la referencia establecida sobre las declaraciones dadas. La especializacin ocupa inferencia deductivas bsicamente, pero puede ocupar inferencias inductivas o por analoga. Una forma tpica de especificacin lo es la deduccin, en este tipo de transmutaciones se ocupan los cuantificadores universales y existenciales. Las transmutaciones de Generalizacin/Especializacin son emparentadas a un par de transmutaciones llamadas Abstraccin /Concrecin. La Generalizacin y la Abstraccin tienen un razonamiento en comn, en particular el aprendizaje inductivo, debido a esto son fcilmente confundidas. La generalizacin deductiva puede algunas veces interpretada como una abstraccin y una especializacin inductiva puede ser interpretada como una concrecin. Aqu los dos pares de transmutaciones dependen del contexto donde son interpretadas. Abstraccin/Concrecin La abstraccin reduce la cantidad de detalles en la descripcin de una serie de referencias establecidas. El lenguaje de descripcin puede ser cambiado para igualar conceptos u operadores o ignorar aquellos detalles irrelevantes para el razonamiento. Tpicamente la abstraccin es una operacin de preservacin de la verdad. Como condicin inicial, la abstraccin reduce la cantidad de informacin citada por la descripcin proyectiva de una serie de referencia establecidas. La propuesta tpica de la abstraccin es reducir la cantidad de informacin acerca de la referencia establecida, en cada camino los elementos relevantes para el aprendizaje son preservados y los intranscendentes son desechados. Una simple forma de abstraccin, es el remplazo del valor de un atributo especifico en la descripcin de una entidad con un valor especifico menor. Tpicamente la abstraccin es una transmutacin deductiva, porque est preserva la informacin importante de entrada y no hipottica de informacin. La definicin formal de la abstraccin fue propuesta por Plaisted, quien consider a la abstraccin como un mapeo entre lenguajes que preservan instancias y negaciones. La transmutacin contraria a la abstraccin es la concrecin, la cual genera detalles adicionalmente acerca de la serie de referencia establecidas. Est funciona bajo la induccin. 86

Mecanismo de Aprendizaje

87

Similitud/Disimilitud La similitud deriva un nuevo conocimiento acerca de las referencias bsicas establecidas con caractersticas similares entre el nuevo juego de referencia y el bsico. La transmutacin por similitud utiliza la inferencia por analoga, la cual deriva nuevos conocimientos. La analoga puede ser considerada como un razonamiento basado en la combinacin de la inferencia deductiva e inductiva. La dependencia puede ser de diferente tipo, por ejemplo puede ser funcional, monotnica, correlacional, de tendencia general, o bien de descripcin esttica o relacional. Las dependencias son frecuentemente bidireccionales, pero la fuerza de la dependencia en las diferentes relaciones puede variar considerablemente. Por ejemplo, si sabe que una persona por fumar desarrolla cncer, entonces por analoga, se puede decir que si martha fuma, puede desarrollar cncer a lo largo de su vida. Tambin por analoga, si se conoce que una persona tiene cncer; es porque posiblemente durante su vida desarroll el hbito de fumar. Con este ejemplo queda demostrado la relacin bidireccional con la que cuenta la similitud. La fuerza de las conclusiones, no es igual en ambas direcciones, ya que por ejemplo la persona puede tener cncer, pero no necesariamente por fumar sino por otras causas. En base a lo explicado anteriormente, se introduce el concepto de dependencia mutua, el cual es muy utilizado para la descripciones especificadas por similitud y disimilitud. Una dependencia mutua expresa el parentesco entre dos sentencias, dos predicados lgicos o trminos de la expresin . La dependencia mutua queda representada por S1 S2 ; ,

dnde los parmetros alfa y beta representan sobre todo el avance o retroceso de la fuerza de dependencia. Por lo tanto alfa, beta, representan un promedio de certeza de los valores S1 y S2 respectivamente. Si los trminos de las expresiones tienen una dependencia mutua, entonces se dice que son funciones discretas; la dependencia mutua es lgicamente equivalente a una implicacin mutua establecida. La dependencia mutua fue introducida por Rusell, la cual fue usada para la caracterizacin de clase mediante inferencias por analoga. Explicacin/Prediccin La explicacin deriva explicaciones del conocimiento, el cual puede estar fuertemente o dbilmente implicado con el conocimiento. Un caso espacial de explicacin es una descripcin derivada de las causas o efectos que producen ciertos datos, est explicacin se debe al parentesco. Lo contrario a esta transmutacin es la prediccin, est deriva consecuencias del conocimiento dado. Dependiendo del tipo de inferencia usado por la explicacin o prediccin del conocimiento, la inferencia puede ser deductiva, inductiva o por analoga. Seleccin/Generacin Las transmutaciones por seleccin, eligen un subrango de una serie de referencias establecidas, las cuales deben satisfacer un criterio establecido. La transmutacin opuesta a la seleccin es la generacin, la cual produce entidades que satisfacen algunos criterios establecidos. Aglomeracin/Descomposicin La transmutacin por aglomeracin toma entidades individuales y las agrupa en unidades o en estructuras de unidades segn criterios. La oposicin a est transmutacin es la descomposicin, la cual toma una unidad o una estructura y determina entidades individuales. Caracterizacin/Discriminacin La transmutacin por caracterizacin determina una descripcin de caractersticas especificas de una clase de entidades. Una descripcin puede ser una clase dada. La forma bsica de caracterizacin es una conjuncin de propiedades distribuidas entre todas las entidades de la clase.

88

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

La transmutacin opuesta a la caracterizacin es la discriminacin, la cual produce una descripcin que no toma en cuenta algunas caractersticas predominantes de la serie de clases establecidas, dando como resultado otra. Asociacin/Disociacin La transmutacin por asociacin determina una dependencia de las entidades bsicas y el conocimiento de fondo. La dependencia en este tipo de transmutaciones puede ser lgica, esttica o temporal. La transmutacin opuesta a sta, es la transmutacin de disociacin, la cual sostiene una carencia de dependencia. Derivacin/Reformacin/Transmutacin Intermedia/Aleatoria La transmutacin por derivacin en aquella que proviene desde otra basada en alguna dependencia entre ellas, pero no caen dentro de una categora especial descrita antes. Porque la dependencia entre ambas unidades de conocimiento puede recorrerse desde una equivalencia lgica hasta un parentesco lgico, las derivaciones pueden ser clasificadas en derivaciones con dependencia fuerte dentro de un extenso rango. Los puntos extremos en este rango de transmutaciones son la reformacin y la aleatoria. La reformulacin transforma el conocimiento a una unidad lgica equivalente. Insercin/Borrado La transmutacin por insercin, inserta un componente del conocimiento dentro de la estructura. Un ejemplo de insercin, es la memorizacin de algunos factores. La oposicin a est transmutacin es el borrado, el cual remueve algunos componentes de la estructura del conocimiento dado. Un ejemplo de este tipo de transmutacin es lo olvidado. Replica/Destruccin La replica produce una nueva estructura del conocimiento de alguna base de conocimiento en otra. La replica usa una rutina de aprendizaje la transmutacin opuesta a esta es la destruccin, la cual remueve una estructura del conocimiento de una base de conocimiento dada. Clasificadas/Desordenadas La transmutacin por clasificacin u ordenacin cambia la organizacin del conocimiento acorde a algn criterio. Por ejemplo la ordenacin de las reglas, en base al nmero de condiciones. La transmutacin opuesta es la desordenacin, la cual retoma la previa organizacin. Cada conocimiento es una consecuencia lgica aprendida sobre el existente. Las transmutaciones no son procesos independientes. Una implementacin completa de una transmutacin puede envolver la ejecucin de otras transmutaciones. Multiestrategia de aprendizaje (pruebas - adaptativas) La idea principal de la multiestrategia de aprendizaje (MTL) es que el sistema aprenda por si mismo, determinando la estrategia de aprendizaje y los tipo de inferencia a usar para poder realizar la prueba de aprendizaje. Dada una entrada al sistema analizador, MTL establece una relacin con el conocimiento de fondo y los objetivos de aprendizaje, determina una estrategia de aprendizaje o una combinacin de ellas, si ocurre un estancamiento el sistema MTL realiza una nueva prueba de aprendizaje, este proceso se repite hasta que la estrategia de aprendizaje es determinada como consecuencia. Un esquema general para la Multiestrategia de aprendizaje es presentado en la figura siguiente, la entrada al proceso de aprendizaje es suplida por cualquiera de los sensores del mundo externo o desde un aprendizaje previo como se muestra en la Figura 26:

88

Mecanismo de Aprendizaje

89

Mundo Sensores Actuadores

CONTROL

Seleccin

Motor de inferencia multitipos

Evaluacin

Objetivos Fig. 26 Esquema general para la Multiestrategia de aprendizaje El mdulo controla directamente todos los procesos. Las acciones activan los procesos en el mundo externo, estas son recibidas por el mdulo de control. Un accin a ejecutar por el modulo es obtener informacin adicional, la entrada es filtrada por el modulo de seleccin, dejando pasar solamente aquella informacin lo suficientemente relevante para cumplir el objetivo. El conocimiento del objetivo es determinado por el mdulo de control acorde a la informacin recibida desde un sistema maestro externo o bien desde el anlisis de los objetivos residentes en la base de conocimientos, la cual puede tener diferentes tipos de conocimiento (simblico, numrico y grfico) que puede ser especificado en diferentes niveles de abstraccin. Para le MTL los objetivos de aprendizaje son organizados dentro de una red de objetivos (GDN) dependientes, la dependencia entre objetivos est determinada por ligas etiquetadas que denotan el tipo y grado de dependencia. La idea de una red GDN fue introducida por Stepp y Michalski. Para el proceso de aprendizaje, el GDN busca el objetivo general de dominio independiente (representado por un nodo con entradas no enlazadas) considerando como un almacn, este es determinado en base a una serie de entradas de informacin poco relevante. Por ejemplo los objetivos de dominio independiente pueden ser aprendidos por una regla general, caracterizada por la sustitucin de hechos de las entradas reformulando una parte del conocimiento aprendido en una forma ms eficiente. Permite determinar el conocimiento requerido para ejecutar algunas pruebas para validar otro, cada uno de estos objetivos es ligado a subobjetivos ms especficos, algunos de ellos son tambin de dominio independiente, los cuales son utilizados para determinar partes especficas del conocimiento. El mdulo de control activa dinmicamente nuevos objetivos en el GND, como beneficios en el proceso de aprendizaje. Los mltiples tipos de motor de inferencia ejecutan varios tipos de inferencias/transmutaciones requeridas por el modulo de control en la bsqueda de conocimiento especifico para lograr la meta propuesta. Cualquier conocimiento generado, es evaluado y criticado por el mdulo de evaluacin, desde el punto de vista del objetivo del aprendizaje. Si el conocimiento es aprobado en el modulo de evaluacin, entonces es insertado en la base de conocimientos para ser usado en procesos de aprendizaje subsecuentes. El desarrollar un sistema de aprendizaje que cumpla con todas las caractersticas anteriormente descritas es realmente un verdadero problema ya que tiene que cumplir un largo objetivo. Las bsquedas con las que se cuenta en la actualidad son ms limitadas acercndose a MTL, es decir, a un aprendizaje multiestrategia en base a pruebas de adaptacin, un mecanismo de aprendizaje parecido al MTL es el aplicado en la construccin y justificacin de rboles, otro acercamiento hacia el MTL es el llamado anlisis de pruebas dinmicas, este sistema de aprendizaje analiza en forma dinmica las relaciones entre la entrada, el conocimiento de fondo BK y el objetivo actual, con lo cual se logra el control del proceso de aprendizaje.

90

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

La aproximacin, usa una representacin del conocimiento que est especficamente diseada para facilitar todas las formas bsicas de inferencia, la representacin consiste en una coleccin de tipos (generalizacin) jerrquicos o bien partes jerrquicas ordenadas en base a un parentesco. Los nodos de las jerarquas son interconectados por rutas que representan observaciones o conocimiento inferido, a estas formas de representacin del conocimiento se les llama DI (jerarquas interrelacionadas dinmicamente) los cuales utilizan diferentes tipos de inferencia en los sistemas basndose en la ubicacin de los nodos y la ruta entre estos. En el anlisis de pruebas dinmicas se aproxima a un paso del aprendizaje, este es activado cuando el sistema recibe la informacin de entrada, la cual es clasificada dentro de una categora tal como un hecho o una regla, dependiendo de ella y el objetivo actual, son producidos segmentos importantes de conocimiento. El siguiente paso es determinar alguno de los siguientes tipos de relacin existente entre la entrada de informacin y el conocimiento de fondo (BK): Las entradas representan nueva informacin. Una entrada de informacin es prcticamente nueva para el aprendiz si sta no est vinculada por medio de una relacin de parentesco que puede ser determinada entre ella y el BK. El aprendiz prueba o identifica las partes del BK que son casi iguales con la entrada bajo el mismo nodo en alguna jerarqua. Si este esfuerzo tiene xito todos los elementos del conocimientos son generalizados. Los resultados generalizados y los hechos de entrada son evaluados por importancia (de acuerdo al objetivo) por el mdulo de evaluacin, por lo tanto los resultados generalizados y los hechos de entrada que logran la evaluacin son almacenados. Si el esfuerzo no tuvo xito la entrada es almacenada. La entrada es implcita o por BK implcito. Este caso representa una situacin donde el BK cuenta para la entrada un caso especial para esta, el aprendiz crea una explicacin de la estructura uniendo la entrada con la parte usada del BK. En base a las pruebas de aprendizaje esta estructura puede ser utilizada para crear nuevo conocimiento el cual ser ms adecuado para un manejo posterior, si el nuevo conocimiento est inmerso a un criterio importante ste es almacenado para uso futuro. El mecanismo es relacionado con las ideas de aprendizaje basadas en explicacin. La entrada contradice al conocimiento de fondo. El sistema identifica las partes del BK que resultan contradictorias respecto a la informacin de entrada e intenta deducir esa parte. Si el reestructuramiento de la especificacin afecta demasiado a la informacin de entrada entonces es poco confiable. Cuando alguna parte del BK ha sido reestructurada para colocar la entrada, esta tambin es almacenada pero slo si se pasa por un criterio importante. Si esta contradice algn hecho especfico ese es identificado. En general este caso requiere de una revisin del BK bajo alguna forma sinttica de aprendizaje o manejo de inconsistencia. La entrada produce una analoga en alguna parte del conocimiento de fondo BK. En este caso, cuando la entrada no coincide con algn hecho o regla o tampoco est relacionada con alguna otra parte del BK como en el primer caso, pero sin embargo hay alguna similitud con alguna parte del hecho y del BK en algun nivel de abstraccin, en este caso el apareamiento es ejecutado en este nivel de abstraccin, utilizando atributos generalizados o relacionales. Si el hecho pasa un criterio importante, este es almacenado con alguna indicacin de similar o anlogo en el conocimiento de fondo. La entrada es ya conocida por el aprendiz. Este caso se presenta cuando la entrada checa exactamente con alguna parte del BK (un hecho almacenado, una regla o segmento almacenado). En esta situacin son utilizados parmetros de confiabilidad y frecuencia los cuales son asociados a la parte actualizada.

90

CAPTULO 6. BASE DE CONOCIMIENTOS

92

6. BASE DE CONOCIMIENTOS
6.1 DESCRIPCIN DE UNA BASE DE CONOCIMIENTOS 6.1.1 ROL DEL MDULO

La Base de Conocimientos almacena y representa el conocimiento del dominio del Sistema Experto, facilita su acceso, manipulacin y actualizacin. En la siguiente figura se aprecia que la base de conocimientos se encuentra relacionada con otros mdulos de un Sistema Experto de la Figura 27:
Mecanismo de Aprendizaje Interfase Hombre Mquina Mecanismo de Inferencia

Base de Conocimientos

Administrador

Fig. 27. Relacin entre base de conocimientos y otros mdulos del Sistema Experto Existen diversas tcnicas para la representacin del conocimiento, encaminada a: Proveer un formato compatible con la computadora. Mantener una correspondencia entre el formato de representacin y el conocimiento. Establecer una representacin que puede ser organizada, recuperada, modificada y actualizada eficientemente. El conocimiento inicial se genera a partir de los hechos aprendidos y representados, que al ser manipulados por los procesos de bsqueda e inferencia producen nuevos elementos y actualizan otros, generando una nueva versin, como se ilustra en la Figura 28:
Hechos iniciales Hechos finales

Aprendizaje

Compilacin

Exposicin Resultados

Representacin Interna

Inferencia Bsqueda

Conocimiento Generado

Fig. 28. Evolucin del conocimiento Caracterizacin del conocimiento Fidelidad: Es la ausencia de distorsin durante la adquisicin del conocimiento al comparar la fuente natural y la de la base de conocimientos. Calidad: Grado de cantidad, completez y actualizacin. Temporalidad: Vigencia. Particularidad: Dependiente de un contexto o enfoque particular. Certidumbre: Veracidad del conocimiento. Fuente: Naturaleza y confiabilidad de los emisores del conocimiento. Detalle: Grado de desglose.

Entidades Son los sujetos, eventos y actividades relevantes a describir del dominio del conocimiento. Propiedades Son los atributos y valores que describen a las entidades. Con base a ellas, se establecen los niveles de caracterizacin del conocimiento. Relaciones Son los lazos que integran a las entidades y atributos entre si, permitiendo definir ligas: 1:1, 1:N, M:1 y M:N. Jerarquas Bajo ciertos contextos, las entidades se agrupan en clases, super clases y subclases. Permiten agrupar sus atributos y hacer generalizaciones que eviten redundancias en la descripcin de un objeto en particular. Valores El valor asociado a los atributos de las propiedades tiene las siguientes caractersticas: Informacin acerca del tipo de valor: Numrico, cdigo, ndice, etc. Condiciones de validacin: Rangos, criterios, asociaciones, etc. Fuentes: Para recabar, comparar y acreditar el conocimiento. If - needed rules: para generar un valor por medio de procedimientos. If - added rules: para realizar una accin al conocerse un valor. Single - multivalued: Son atributos con un solo valor o varios. Nivel de detalle Son los elementos del lenguaje que sern tomados en cuenta durante la representacin de la Figura 29: El nio corre rpido

6.1.2 CONSIDERACIONES

corre(nio)

PTRANS nio

accin(corre, nio) Fig. 29. Diferentes niveles de detalle de la expresin El nio corre rpido Cobertura Generalidades.- Se aplican para todas las cosas: Todos los perros tienen cola (x) (perros(x) (tienen(x, cola)) Excepciones.- Son excepciones a la regla: Todas las aves vuelan, menos el pingino (pingino(IS-A ave)(vuela no)...)

(Ave)(vuela si)...)

Permanente.- Son afirmaciones que perduran al paso del tiempo: Los hombres son mortales Temporales.- Acotados por una vigencia: Francia es el campen mundial de foot ball

94

Base de Conocimientos

95

6.2

FUNCIONAMIENTO DEL ADMINISTRADOR DE LA BASE DE CONOCIMIENTOS

La representacin del conocimiento depende de varios criterios: Naturaleza Descriptiva: rasgos, caractersticas, valores,... elementos estticos. Procedural: acciones, procedimientos, condiciones, eventos y elementos activos. Emisin Fuentes: Recoleccin proveniente de la misma entidad por observacin, interrogatorio, anlisis,... Produccin: Es el resultado de la operacin de ciertas acciones. Inferido: Resultado de la aplicacin de algn formalismo de deduccin. Inherente: Es la apropiacin de cierto conocimiento de una entidad por otra, gracias a una relacin de pertenencia. Certidumbre: Absoluta: Los perros tienen 4 patas. Incierto: Emisin: Al expresarse, obtenerse o generarse. Certeza: Aproximacin a la veracidad o negacin Representacin: Grado de fidelidad entre lo que es (conocimiento real) y lo que se representa. Representacin Reglas: horn, de produccin,.... Estructura de datos: listas, records, trees,.... Primitivas de la dependencia conceptual. Armazones.

6.3

EVALUACIN DE LAS TCNICAS DE REPRESENTACIN DE CONOCIMIENTOS

6.3.1 REPERTORIO

Clculo de Predicados. Reglas de Produccin. Suposiciones. Probabilstico. Difuso. Redes Semnticas. Frames. Dependencia Conceptual. Scripts. Schemas.

6.3.2 CLCULO DE PREDICADOS

El clculo de predicados representa una extensin de la lgica proposicional. Sus elementos fundamentales son el objeto y el predicado. Un predicado es simplemente una declaracin acerca del objeto, o una relacin que el objeto posee. Los predicados pueden combinarse mediante el uso del operadores lgicos. Algunos ejemplos del uso del clculo de predicados son: Mamfero(perro), que es interpretado como Un perro es mamfero. Hermana(Ana, Juan), que se interpreta como Ana es hermana de Juan. Hermana(Ana, Juan) and prima(Ana, Alfredo), se lee como Ana es hermana de Juan y prima de Alfredo.

Los elementos del clculo de predicados de la Figura 30:


Predicado

Trminos Objeto Entidad Interpretacin Cuantificadores Frmulas bien formadas

Operadores Lgicos

Frmula bien formada

Conversin

Clusula

Simplificacin

Clusula Regla de Horn

Fig. 30. Elementos fundamentales del Clculo de predicados Convertir: Reducir: ~ Generalizar: Expresin de conocimiento: La representacin de conocimiento por medio del clculo de predicados se realiza expresando el conocimiento del dominio en lenguaje natural, para que las oraciones se reescriban en frmulas bien formadas, para luego convertirse en clsulas de Horn y codificarse en un lenguaje de programacin lgica como Prolog. Este procedimiento se ejemplifica a continuacin: Sean los siguientes postulados en tiempos de elecciones: El OFI es el partido oficial. 1. Los apticos se abstienen de votar o lo hacen por el partido oficial. 2. El POP no es un partido. 3. Los empleados apticos votan por el OFI. 4. Los conservadores y burcratas votan por el OFI. 5. No resulta que los partidistas voten en contra de su partido. 6. Las esposas de los partidistas votan por esa agrupacin. 7. Existen funcionarios que no votan por el OFI. Representado en frmulas bien formadas: 1. Partido (OFI) 2.1 x y [aptico(X) partido(Y) (~vota(X,Y) (vota(X,OFI))] 2.2 x y [aptico(X) partido(Y) (~vota(X,Y) vota(X,OFI)) ~(~vota(X,Y) vota(X,OFI))] 3. ~ (Partido(POP)) 4. x [empleado(X) aptico(X) vota(X,OFI)] 5.1 x [conservador(X) vota(X,OFI)] 5.2 x [burcratas(X) (vota(X,OFI)] 6. x y ~[partidista(X) partido(Y) afiliado(X,Y) ~vote(X,Y)] 7. x y z [partidista(X) partido(Y) afiliado(X,Y) esposa(Z,X) vota(Z,Y)] 8. x funcionario (X) ~vota(X,OFI)

96

Base de Conocimientos

97

Conversin a clusulas: 1. Partido(OFI) 2. ~aptico(X1 ) ~partido(Y1) ~vota(X1,Y1) vota(X1,OFI) 3. ~Partido(POP) 4. ~empleado(X3 ) ~aptico(X3) vota (X,OFI) 5.1 ~conservador(X4) vota(X4,OFI) 5.2 ~burcrata(X5) vota(X5,OFI) 6.1 partidista(X4) 6.2 partido(par (X7)) FUNCIN DE SKOLEM 6.3 afiliado(X8, par(X8)) 6.4 vota(X9, par(X9)) Sin embargo, en lugar de los 4 hechos anteriores, es mejor codificar la regla: ~partidista(X8) ~partido(Y8) ~afiliado(X8, Y8) vota(X8, Y8) 7. ~partidista(X8) ~partido(par(X8)) ~afiliado(X8, par(X8)) ~esposa(muj(X9),X9) vota(muj(X9),par(X9)) 8.1 funcionario (fun) funcin sin argumentos constante de Skolem 8.2 ~(vota (fun,OFI) Refinamiento a Clusulas de Horn Una vez obtenidas las clusulas se convierten a la modalidad de Horn, en donde para cada conjunto de disyunciones, solo un predicado debe estar afirmado y los dems negados. Dicha situacin facilita su representacin en forma de implicacin con una sola conclusin: Sea: Clusula ~a b ~c Clusula a La conversin es muy simple! Codificacin en PROLOG: 1. partido(OFI). 2 vota(X,OFI):aptico(X). 3. partido(POP) :-1, fail (as se representan las negociaciones) 4. vota(X,OFI) :empleado (X), aptico (X), vota (X,OFI). 5.1 vota(X,OFI) :- conservador(X). 5.2 vota(X,OFI) :- burcrata(X). 6.5 vota(X,Y) :partidista(X), partido(Y), afiliado(X,Y). Horn ~a ~c b Horn a Regla - Implicacin (a b) c Hechos a Regla Prolog c:-a,b. Hecho Prolog a

(Una forma de implementar las funciones) 7. vota(Z,Y) : partidista(X), partido(Y), afiliado(X,Y), esposa(Z,X).

Programacin dirigida por Patrones Es muy semejante al clculo de predicados con menos formalismo, pero ms prctica. Entre sus principales diferencias estn: Las reglas pueden tener varias conclusiones conjuntas; el desarrollo es hacia adelante dirigida por datos; la inferencia se realiza por pareamiento de patrones; y la activacin de las reglas de las bases de conocimientos es determinada por los patrones almacenados en la memoria de trabajo. Componentes Un sistema de produccin se compone de un conjunto de reglas formadas por una parte izquierda que determina la aplicabilidad de la regla (patrn precondicin) y una parte derecha que describe la operacin que se lleva a cabo si se aplica la regla (patrn activo). Es decir una clsica regla IF-THEN. Tambin cuenta con una base de conocimiento que contiene cualquier tipo de informacin apropiada para la tarea en particular. Adems de una estrategia de control que especifique el orden en el que las reglas se comparan con la base de conocimiento y la forma de resolver los conflictos que surjan cuando varias reglas puedan ser aplicadas a la vez. Aunado a un aplicador de reglas y a una porcin de memoria de trabajo que se utiliza para rastrear el estado actual dentro del espacio de soluciones de la Figura 31:

6.3.3REGLAS DE PRODUCCIN

Mecanismo de control para el Apareamiento de Patrones Resolutor de conflictos fli t

Patrn activo Patrones p1, p2,... Pp Base de conocimientos Patrn seleccionado

Patrn candidato n Patrn candidato 1 Patrn candidato 2 Procesos a Ejecutar

Ejecutador de patrones Fig. 31. Elementos de un sistema de produccin

98

Base de Conocimientos

99

Las reglas interactan aparendose con los patrones almacenados en la base de conocimientos, cuando hacen match ejecutarn sus acciones depositando sus resultados como nuevos patrones o alterando a los originales, en la memoria de trabajo. Sea el siguiente ejemplo: Los empleados mayores de 60 aos deben ser liquidados y pensionados Regla: 1 persona (Nombre, Edad, Empleado, Puesto, Salario), (empleado = SI, Edad > 60) : (Vacante = Puesto, Puesto = Jubilado, Empleado = No), (Vacantes, Jubilados) En esa representacin se evidencia: Como el patrn precondicin: La necesidad de accesar un patrn Las condiciones a satisfacer. Como patrn activo: Las alteraciones al patrn. La invocacin a procesos especiales. S representamos el ejemplo a travs de OPS 5 Cuyo formato es: (p <rule-name> <condicin 1> : <condicin m> <accin 1> : <accin n>) La regla queda codificada en: (p jubilacin (Task elige jubilado(persona nombre<N> edad<E> empleado <SI> puesto<P> salario <S>) ( E>60)) (MAKE plaza ( puesto P) (REMOVE personal) (MAKE persona nombre<N> edad<E> empleado <NO> puesto <JUBILADO> salario<S>) (MAKE Task vacante reemplazo) (MAKE Task pensin jubilado)) De la regla anterior observamos: 1. Nombre de la regla jubilacin y tarea activada elige jubilado. 2. Acceso a un patrn persona que cumple las siguientes condiciones: empleado SI, edad > 60. 3. Creacin de un nuevo patrn plaza. 4. Actualizacin del patrn persona. 5. Activacin de dos tareas: vacante reemplazo y pensin jubilado. Como ejercicio realiza la representacin en formato normal de regla y de OPS 5, del siguiente ejemplo: Los empleados con salario mnimo recibirn un 30% de aumento y opcionalmente un bono de actuacin.

6.3.4 SUPOSICIONES

La verdad de las tcnicas de clculo de predicados y reglas de produccin es absoluta y permanece en la aplicacin durante la solucin de un problema determinado. Es decir, afirma categricamente el valor de verdad de un hecho: Falso 0 Cierto 1

Esta postura no varia a lo largo de la sesin cuyo proceso se vuelve monotnico. Es ms, todas las declaraciones de la base de conocimientos son vlidas lgicamente y estn enlazadas por conjunciones, lo que determina su consistencia como se aprecia en la Figura 32:

premisa 1 premisa 2 : premisa p-1 premisa p

Consistencia

Fig. 32. Enlace de las declaraciones en la BC Sin embargo, a veces las declaraciones se ven sujetas a: Incertidumbre. Temporalidad. Relatividad. Secuencia. Dependencia de otras. Contradicciones. Una alternativa para representar estos casos es por medio de listas de soporte, cuyo formato es: (declaracin)(LS Estado (Argumentos de apoyo) (Argumentos en contra)) Sea el siguiente caso: Se report el robo de una computadora a primera hora de la maana. 1) Caso (robo, computadora, martes, 8:00 am) (IN ( )( )) Se tienen dos sospechosos: la secretaria y el afanador, mientras que se descarta al programador. H1 sospechoso (robo, computadora, secretaria) (IN ( )( )) H2 sospechoso (robo, computadora, afanador) (IN ( )( )) H3 sospechoso (robo, computadora, programador) (OUT ( )( )) Durante el primer interrogatorio se dice que: El programador sali el da anterior. La secretaria fue la ltima en usar la mquina. El afanador no vio la PC cuando hizo la limpieza, despus que todos se haban marchado. Tales declaraciones se representan as: 2) hecho (salir, oficina, programador, lunes, 16:00 pm) (IN ( ) ( )) 3) hecho (usar, computadora, secretaria, lunes, 18:00 pm) (IN ( ) ( )) 4) hecho (salir, oficina, secretaria, lunes, 18:10 pm) (IN ( ) ( )) 100

Base de Conocimientos

101

5) hecho (limpiar, oficina, afanador, lunes, 19:30 pm) (IN ( ) ( )) 6) hecho (no ver, computadora, afanador, lunes, 19:35 pm) (IN ( ) ( )) Alterando las hiptesis: H1 sospechoso (robo, computadora, secretaria) (IN (3, 6) ( )) H2 sospechoso (robo, computadora, afanador) (OUT ( ) (6)) H3 sospechoso (robo, computadora, programador) (OUT ( ) (3, 6)) Se aprecia que la hiptesis 1 adquiere el estado de verdadera (IN) dado los argumentos 3 y 6 que la sustentan, mientras que los restantes tienen el de falso (OUT), ya que los argumentos obran en contra de tales teoras. Ejercicio: continuar desarrollando el ejercicio de acuerdo a las siguientes etapas: E1: El velador declara haber visto la mquina en su ronda nocturna de las 23:00 hrs. E2: El afanador sali a las 22:00 hrs. E3: El nuevo polica jura haber visto salir temprano en su auto a Juan. E4: Segn el Jefe de Recursos Humanos declar que Juan se qued a trabajar toda la noche. E5: Un vecino observ entrar y salir de la oficina durante la madrugada al hijo del dueo.

6.3.5 CONOCIMIENTO DIFUSO FUZZY SETS

Hay problemas cuya incertidumbre no se mide en trminos absolutos o aproximados sobre la variedad lgica de un evento o descripcin sino ms bien, en proporcin a su pertenencia sobre cierto concepto o clasificacin, como por ejemplo: El color oficial del Ferrari es el rojo. El Ferrari de Michael Schumager ganar el prximo gran premio de Australia. Creo que Mipa Hakkimen ser contratado por Ferrari. El McClaren es un auto ms rpido que el Ferrari. Este ltimo caso nos lleva a reflexionar que tan rpido es Williams sobre Ferrari. Esto se puede concebir como en la Figura 33:

Williams Conjunto de autos muy rpidos Ferrari Se aprecia que Williams tiene ms grado de pertenencia

Fig. 33. Representacin con Fuzzy sets del ejemplo El Williams es un auto ms rpido que el Ferrari Por lo tanto en Fuzzy Sets se establecen Fronteras Fuzzy en las que la determinacin de membresa o no membresa es gradual y no absoluta. Es decir, se calcula por medio de una Funcin Fuzzy que arroja un grado de pertenencia como se muestra en la Figura 34:

Conceptos Bsicos de la Teora de Fuzzy Sets Variable Lingstica: Proporciona las bases para un anlisis cualitativo de las caractersticas del problema. Atributo hermosura Variable lingstica guapa Conceptos fuzzy

Objeto

Atributo estatura

Variable lingstica alto

muy bastante regular 2, 3 Poco no la hace : : Conceptos fuzzy : jirafa garrocha zotaco chaparro granduln enano : : :

Fig. 34.. Variables Lingsticas Universo de Valores: Se genera a partir del trmino primario y sus antnimos, agregando modificadores y conectivos: muy, poco, mucho, ... Definicin del grado de Membresa: Es la medida de pertenencia de un objeto dentro de una clase conforme a los atributos de esta. El grado de membresa se ilustra en la Figura 35: Subjetivo. Parte del trmino primario. Dependiente de contexto. Contempla la influencia de modificadores universales.
n 1 donde: f fuzzy ( i ) = Grado Grado [ 0,1] Grado F 3

j Clase F

. . .
i

Fronteras fuzzy

Fig. 35. Grado de membresa Interpretacin de valores : La definicin lingstica de conceptos puede convertirse en un cuestionario ramificado de opciones, a travs de una sesin de respuestas de los valores de las variables lingsticas que concluyen el valor de la dependiente (conclusin).
102

Base de Conocimientos

103

Sean los factores de una recesin econmica: ndice inflacionario Pequeo Moderado . . alto Muy grande nivel desempleo bajo bajo . . moderado bastante tasa de inters bancario medio regular . . crecimiento por las nubes indicador bolsas al alza estable . . a la baja en picada recesin ninguna casi no . . si brutal

Disponibilidad: Permite manipular y hacer inferencia a travs de posiciones difusas. Procedimiento: Identificacin del concepto difuso Los jugadores de football americano de la NFL son grandes! Identificacin del universo: Jugadores de football americano
U Jugadores de football americano de la NFL

Conceptualizacin de la clase grandes


F U Jugadores grandes

Precisin del trmino primario grande y sus similares fuerte, alto, pesado
grande

fuerte

alto

pesado

Derivacin de las variables lingsticas en las que descansa el trmino primario estatura peso constitucin grande Estatura Altsimo Alto Medio Bajo Chaparro . . Consideracin de cuantificadores Estatura Muy ms o menos Poco peso bastante casi constitucin bien muy grande como un casi un menos que peso refrigerador pasado medio ligero flaco . . constitucin Mr. Universo proporcional cuadrado media endeble . . grande gigante ropero atltico aceptable regular pequeo enano

Clculo de valores Fuzzy Variables fuzzy: Cada variable cuenta con un repertorio de valores fuzzy, que integrados forman un fuzzy set:
estatura enano jirafa altsimo alto medio bajo chaparro peso refrigerador pesado medio flaco ligero

Cuantificacin: Si bien las expresiones son cualitativas su manipulacin exige una compilacin cuantitativa, mediante una funcin fuzzy, como por ejemplo a travs de la interpolacin de valores: estatura en mts <1.70 [1.70, 1.78] [1.79, 1.85] [1.86, 1.90] [1.91, 1.98] [1.99, 2.05] >2.05 Integracin: Relacionar conceptos
valor fuzzy funcin # fuzzy

.grado de membresa .1 .2 .4 .6 .8 .9 1

valor fuzzy enano chaparro bajo medio alto altsimo jirafa

fuzzy set

criterios de anlisis

generacin de la membresa

Alteracin: Impacto de los cuantificadores fuzzy, cuyo efecto no siempre tiene el mismo sentido ni tampoco la misma intencin:
Incrementa alto muy de .8 a .94

bajo Decrementa

de .2 a .14

dado que el contexto es jugadores grandes tiende al superlativo. Mientras que:


Decrementa alto poco de .8 a .74

bajo Incrementa

de .2 a .44

Ntese que el cuantificador impact en una proporcin p al nmero fuzzy. Por lo que, cada cuantificador debe tener un umbral que con base al nmero fuzzy del valor lo estimule o lo reduzca: Veamos el caso de muy para los valores de estatura: 104

Base de Conocimientos

105

IF #F > .5 umbral THEN #F = #F + [(1 - #F) * .7] ELSE #F = #F * .7 Mientras que para poco: IF #F > 0.62 THEN #F = #F - [(1 - #F) * 0.3] ELSE #F = #F + [(1 - #F) * 0.3] Interrelacin de las variables. El criterio de jugador grande puede expresarse como:

incremente proporcin de impacto de reduccin

decremente aumenta

grande (x) estatura (x) peso (x) constitucin (x) ropero (Juan) muy alto bastante pesado bien cuadrado .78 .94 * .99 * .84 Se aprecia que los nmeros fuzzy de las condiciones se multiplican (como la interseccin en probabilidad). Pero, pudiera escogerse el menor de ellos, tal que: ropero (Juan) muy alto bastante pesado bien cuadrado .84 min[ .94, .97, .84] por ser condiciones conjuntas,mientras que si fueran disjuntas se seleccionara al mayor. Ejercicio: Realizar el procedimiento correspondiente a tres variables lingsticas que concluyan el grado de simpata de una persona.

6.3.6 REDES SEMNTICAS


Objetos. Eventos. Jerarquas. Conceptos.

Esencialmente es una tcnica de conocimiento que permite representar:

Su descripcin simblica consta de objetos y relaciones, ilustrndose en forma de red.

Apreciar los ejemplos de la Figura 36:


Equipo de Cmputo IS-A IS-PART Computadora IS-PART CPU IS-PART Main Board IS-PART Gato IS-A Pcaro Memoria Principal IS-PART Chip IS-PART Perifrico

IS-A

Animal

Mamfero IS-A Carnvoro IS-A Felino IS-A IS-A Herbvoro

Ave

Fig. 36. Representacin mediante redes semnticas Descripcin Cada objeto representa a una entidad especfica o conjunto de ellas, representndola por medio de una lista de propiedades compuestas por listas que contienen parejas atributo-valor. (Mamfero (Nace en Placenta)(Tiene Mamas)(IS-A Animal)...) (Herbvoro (Come Verdura)(IS-A Mamfero)...) (Carnvoro(Come Carne)(IS-A Mamfero)...) (Felino(Facilidad para Trepar)(IS-A Carnvoro)...) (Gato (Es domstico)(IS-A Felino)...) Inherencia La inherencia ocurre cuando un objeto utiliza las propiedades de otro, en donde una relacin IS-A los une, como por ejemplo: El gato tiene facilidad para trepar por ser un felino Manejo de excepciones Ocurre cuando existe una excepcin a la regla, donde un objeto tiene un valor diferente al atributo de una propiedad del otro objeto con el que est relacionado directa o indirectamente por medio de una liga IS-A. Entonces esa propiedad se declara explcitamente como parte de la descripcin del objeto que provoca la excepcin, como por ejemplo, el ornitorrinco nace en huevo a pesar de ser un mamfero. (Ornitorrinco (IS-A Mamfero)(Nace en huevo)...)

106

Base de Conocimientos

107

Manejo de inherencia mltiple Se presenta cuando un objeto est ligado a dos o ms por medio de una relacin IS-A, recibiendo la inherencia de las propiedades de cada uno de ellos, as como de sus respectivos ancestros. (Humano(IS-A Carnvoro) (IS-A Herbvoro)...) Representacin de acciones Supngase que se quieren representar expresiones de la lgica cuantificadas por medio de redes semnticas. Un modo de hacerlo es dividir la red en particiones, convirtindola en un conjunto jerrquico de espacios, cada uno de los cuales corresponde al mbito de una o ms variables, como se muestra en la red de la figura 37:

perro Is-a S actor

morder Is-a a vctima

cartero Is-a V

V .- vctima a .- actor S .- sujeto

perro (X) cartero (Y) muerde (X, Y) Fig. 37. El perro mordi al cartero Los nodos perro, morder y cartero representan clases de perros, mordiscos y carteros respectivamente, mientras que los nodos s, a , v representan un perro, un mordisco y un cartero en particular. Este hecho est representado en una sola red sin particiones. Ahora obsrvese la red de la siguiente figura 38:

perro G Is-a g Forma Is-a

morder Is-a a actor vctima

cartero Is-a V

x Perro (X) y cartero (Y) muerde (X, Y) Fig. 38. Todos los perros han mordido a algn cartero Para representar este hecho es necesario ilustrar el mbito de la variable universalmente cuantificada x. Esto se puede hacer utilizando particiones como las de dicha figura, donde el nodo g representa la asercin anterior. Este nodo es una instancia de la clase especial G de sentencias generales acerca del mundo, donde forma es el atributo que establece la relacin que se est afirmando, y una o ms conexiones para la variable cuantificada universalmente.

Para observar cmo la divisin en particiones hace que la cuantificacin de las variables sea explcita, consideres la siguiente sentencia de la figura 39:

perro Is-a S actor

morder Is-a a vctima

cartero Is-a V

G g

x Perro (X) y cartero (Y) muerde (X, Y) Fig. 39. Todos los perros han mordido a todos los carteros En este caso g tiene dos enlaces , uno apuntando hacia s que representa cualquier perro, y otro apuntando hacia v, que se refiere a cualquier cartero. Ejercicio: Describir una red semntica con Relaciones IS-A para la botnica. Relaciones IS-PART de un automvil. Ilustrar la inherencia simple, mltiple y excepciones. La expresin Los estudiantes tienen libros.

6.3.7 FRAMES
Conceptos. Objetos. Eventos.

Los marcos son una estructura de datos que representan un estereotipo de:

Se representa como una red de nodos y relaciones, en donde el nivel superior describe aspectos generales y constantes, mientras que el inferior tiene una serie de slots and fillers, es decir ranuras a ser llenadas. Los fillers se pueden llenar por medio de: Valores explcitos almacenados en la ranura A-kind-of: Valores obtenidos desde otros frames If needed: Clculos, cuyo procedimiento se describe en el propio marco o bien se hace referencia Default: Es el valor que se emplea en caso de que los mtodos anteriores no puedan generar uno ms especfico.

108

Base de Conocimientos

109

Sea el frame tpico de un arco de la Figura 40:


Frame: Grupo Grupo: Arco Tamao default
medio

Permetro IF-needed
permetro

Frame:Objeto Objeto: Top

Top condicin Lado izq.

A-kind-of

Similar to
Puente

. .

Lado der.

Descripcin - uso

Fig. 40. Represetacin de un arco mediante frames Veamos otro ejemplo de FRAME descriptivo sobre la composicin de una sala en la Figura 41:
Frame cuarto Tipo
Sala

Techo Pared izquierda Pared frontal Suelo Pared derecha

Frame-Pared

Frame Pared rea central izq. rea Central rea Derecha

Frame Pared

A-kind-of Frame Pintura

Frame Ventana Vista

Frame Puerta Espacio ocupado

Fig. 41. Representacin de una sala

Ahora un frame para ilustrar los elementos de una oracin de la Figura 42:

Word Group Frame Word Group

Group Features

Determiner Number

Determiner Ordinal Ordinal Number Adjective (S) Classifier Noun Qualifier (S) Descripcin de un objeto de otra forma

Red de Transicin Aumentada

Fig. 42. Descripcin de los elementos de una oracin Sea el Frame de la Figura 43:

Marco: Sentencia de movimiento Significado

Agente fuente
antecedente primario
antecedentes secundarios

Instrumento objeto desarrollo trayectoria

co-agente destino
consecuencia primaria

consecuencia futuras

Fig. 43. Representacin de una accin y los elementos involucrados

110

Base de Conocimientos

111

Que al usarse en el evento: Juan animado por Pedro, lanz con su resortera una piedra, desde la ventana de su casa hacia el peatn que pasaba por la acera de enfrente, hirindolo en la frente. Como se aprecia en la Figura 44:
Marco: Lanzar Arrojar un objeto

Agente
Juan

Instrumento
resortera

co-agente
Pedro

fuente
ventana-casa antecedente primario animado
antecedentes secundarios

objeto
piedra

destino
peatn-acera consecuencia primaria hrida consecuencia futuras castigo/sanci

desarrollo
travesura

trayectoria
parablica

ociosos

Fig. 44. Instanciacin de un evento Ejercicio: Hacer el frame de: Aula de clases. La oracin: Ana comi tanta carne en la fiesta que se indigest.

6.3.8 DEPENDENCIA CONCEPTUAL

La dependencia conceptual es una teora sobre la representacin del conocimiento sobre eventos y elementos relacionados como los que normalmente aparecen en las frases de lenguaje natural. El objetivo consiste en caracterizar el conocimiento de alguna forma que: Facilite extraer inferencias de las frases. Sea independiente del lenguaje en el que estn las frases originales. Ofrezca la esencia de la expresin. Debido a estos requisitos, la representacin en dependencia conceptual de una frase no se construye con primitivas que corresponda a las palabras que aparecen en la frase, sino con primitivas conceptuales que pueden combinarse para formar el significado de las palabras en cualquier lenguaje concreto. Esta tcnica proporciona tanto una estructura como un conjunto especfico de primitivas, en las que pueden construirse representaciones de trozos particulares de informacin (ver figura 41).
Interpretacin Lenguaje Representacin Estructura basada en primitivas

Fig. 41. Representacin del conocimiento mediante dependencia conceptual

ATRANS PTRANS MTRANS MOVE GRASP PROPEL INGEST EXPEL MBUILD SPEAK ATTEND

Transferencia abstracta: dar Transferencia fsica: ir Transferencia mental: decir Mover alguna parte del cuerpo: levntate Tomar algn objeto: recgelo Impulsar un objeto: empjalo Ingerir: comer Expulsar algo del cuerpo: llorar Generar informacin proceso mental: decidir Emisin de sonidos: hacer ruidos Poner atencin en algo: escuchar observar

Entre sus aplicaciones relevantes est el lenguaje natural que en combinacin con la tcnica ERKS (Sistema de Representacin Eclptica de Conocimiento) puede definir semnticas primitivas como las siguientes: STRUCT (HEADER BODY) HEADER atom | nil BODY ROLL FILLER | nil | ROLL FILLER BODY ROLL atom FILLER STRUCT La representacin de la accin enviar algo es la siguiente: (PTRANS ACTOR (filler) OBJ (filler) FROM (filler) TO (filler)) Juan envi una solicitud al MTI (PTRANS ACTOR (PERSON NAME (Juan) SEXO (masculino) OBJ (TYPE ( NAME (solicitud) FROM (nil) TO (INSIDE PART (ITM)))) Sea la accin Pedro golpe la bola al jardn central: Tenemos el diccionario: HUM: (person personame (Pedro)) OBJ: (pobj pobjname (bola)) PLA: (place placename (jardn) site (central)) OBJ1: (pobj pobjname (bat)) PLA1: (place placename (jardn) site (home)) Y los estados: STATE: (s-goal ACTOR HUM GOAL (val (jugar))) STATE 1: (p-config con1 HUM con 2 OBJ1 confrel(poss)) STATE 2: (p-config con1 con2 confrel (inside)) El evento: Evento: (PROPEL ACTOR OBJET

(HUM) (OBJ)

112

Base de Conocimientos

113

TO TIME QUANTITY FROM WITH Y su relacin: (is kernel EVENTO relacin STATE relacin STATE1 relacin STATE2 )

(physob to PLA) (past) (forceful) (PLA1) (OBJ1))

De acuerdo a la naturaleza de la accin se apoya en los estados 0 y 1 generando el 2 como consecuencia. Como ejercicio representar: Luis invit al campo a Mara. El quarterback de San Francisco, Steve John, lanzo un pase de anotacin de 45 yardas a las diagonales a su receptor Jerry Rice, con lo que ganaron el partido faltando 5 segundos.

6.3.9 SCRIPTS

Los guiones son una tcnica adecuada a la representacin de estereotipos de eventos, apoyndose en frames y dependencia conceptual. El universo de elementos que maneja son: Script: Nombre del evento, situacin u objeto a representar. Escenarios: Lugares donde se realizan las acciones. Actores: Son los roles que interpretan los participantes. Objetos: Los artculos, muebles, documentos y cualquier otro objeto relevante a considerar. Condiciones de entrada: Son los requerimientos a satisfacer que ameritan activar el Script. Escenas: Las etapas de desarrollo del evento. Resultados: Las consecuencias y objetivos cumplidos al ejecutar el guin. Sea el Script de ir al cine: Primero definimos los elementos generales: SCRIPT: ESCENARIOS: ACTORES: OBJETOS: Ir al cine. Casa, calle, taquilla, dulcera, sala de exhibicin. Ral, taquillero, vendedor. Peridicos, auto, dinero, boleto, palomitas, butaca.

Condiciones de entrada: Ral quiere divertirse. Ral tiene dinero. Ral tiene auto. Resultados: Ral est contento. Ral tiene menos dinero. Ral comi algo. La empresa cumpli una funcin ms. La empresa obtuvo un ingreso ms. Se procede a identificar las escenas a desarrollar:

Escenas: Decidir ir al cine. Ir al cine. Adquirir el boleto. Comprar golosinas. Ingresar a la sala. Mirar la pelcula. Abandonar el cine. Luego se describen las escenas: Escena 1) Decidir ir al cine Ral MBUILD estoy aburrido Ral MBUILD veamos que hay en cartelera Ral ATTEND PART ojos TO peridico Ral PTRANS cuerpo TO peridico Ral MOVE PART mano TO peridico Ral GRASP TO peridico WITH mano Ral ATTEND PART ojos TO peridico Ral MBUILD escoge esta pelcula Ral UNGRASP TO peridico ON mesa Escena 2) Ir al cine Ral GRASP TO llaves-del-carro Ral PTRANS TO cochera Ral PROPEL OBJECT llave-auto TO ranura-switch Ral MOVE PART mano TO llave FROM circular Ral ATTEND PART ojos TO calle Ral MBUILD decide arrancar Ral ATTEND PART ojos manos Ral MBUILD ruta pies

Escena 3) Adqurir el boleto Ral PTRANS FROM estacionamiento TO cine Ral ATTEND PART ojos TO taquilla Ral PTRANS TO taquilla Ral MTRANS quiero un boleto TO taquillero Ral ATRANS dinero TO taquillero taquillero ATRANS boleto TO Ral taquillero ATRANS dinero-cambio TO Ral Ral PTRANS TO acceso-cine Ejercicio: Desarrollar las escenas restantes: Comprar golosinas. Ingresar a la sala. Mirar la pelcula. Abandonar el cine.

114

Base de Conocimientos

115

6.4 SELECCIN DE LA REPRESENTACIN APROPIADA 6.4.1 DECLARATIVO


El conocimiento declarativo tiene las siguientes propiedades: Representa esencialmente el conocimiento del dominio: hechos, leyes y terminologa. Es flexible y variado en su representacin. Adecuado para describir caractersticas y aspectos estticos. Apropiado para representar y explotar abundante informacin. Permite diferentes niveles de abstraccin. Consume mucho esfuerzo y recursos al crear una base de conocimientos. La determinacin del grado de detalle al que se debe representar las entidades depende de un adecuado mecanismo de inferencia. Necesita de un eficiente administrador.

6.4.2 PROCEDURAL

El conocimiento procedural cuenta con los atributos: Para representar esencialmente el conocimiento estratgico de cmo hacer las cosas. Se reflejar como algortmico. til para proyectar secuencias de acciones, eventos y factores dinmicos. Adecuado en la modelizacin de acciones generales y cclicas, capaces de producir resultados homogneos. Permite diferentes grados de conceptualizacin. Puede gastar muchos recursos en situaciones no determinstas. Depende de conocimiento auxiliar para guiar sus actividades.

6.4.3 CLCULO DE PREDICADOS

La tcnica del clculo de predicados se caracteriza por: Apoyarse en el formalismo de lgica matemtica. Popularidad y explotacin. Definicin de las expresiones para indicar su veracidad o falsedad. Certeza, dado A B, A B no permite el caso de que con premisas vlidas se obtengan conclusiones errneas. Completez, tiene la capacidad de generar todas las inferencias vlidas a partir de un conjunto de premisas. Decibilidad, intenta demostrar que una proposicin se sigue de cierta teora. Intratabilidad, no hay garanta de que termine un proceso que trata de demostrar que una proposicin se deduce de cierta teora. Inconsistencia, conforme a la demostracin de Gdel, para las declaraciones de conocimiento hechas por medio de clculo de predicados puede ser imposible de demostrar la consistencia de su formalismo. La monotoneidad de su inferencia, la veracidad o falsedad de una afirmacin no cambia a lo largo del proceso. No siempre se puede tener: Precisin Certeza

6.4.4 REGLAS DE PRODUCCIN

La aplicacin de los sistemas con reglas de produccin tienen las siguientes observaciones: Su forma de representacin es en general sencilla y til. Maneja varias alternativas de solucin. Permite implementar metaconocimiento para orientar la bsqueda de la solucin. Adecuado en implementaciones dirigidas por datos. Hay conflictos de reglas para elegir la mejor. Existe conflicto de memoria en la alteracin y administracin del conocimiento. Overhead del Match en cada ciclo. No facilita el backtrack de hiptesis pues no conserva diversos estados del contenido de la memoria de trabajo.

Los sistemas que manejan creencias son: Adecuados para representar incertidumbre de afirmaciones cambiantes en su veracidad. Permiten desarrollar mltiples enfoques. Facilitan la incorporacin de nueva informacin a lo largo de la solucin de un problema. Manejan contradicciones y ambigedades. Pueden romper dogmas. Consumen ms recursos que el clculo de predicados. Exigen un mecanismo de mantenimiento de verdad eficiente. Inclinados a favorecer tendencias parciales o temporales. Requieren redundancia de versiones sobre la misma informacin.

6.4.5 CREENCIAS

6.4.6 PROBABILIDAD

Los sistemas que emplean probabilidad se enfocan a: Problemas con rasgos aleatorios. Manejo de informacin incompleta y aproximada. Aprovechamiento de experiencias y estadsticas. Gua a la inferencia en deducciones inciertas. La obtencin e interrelacin de las probabilidades y definicin de umbrales certeros. Manejo de eventos no independientes, mutuamente exclusivos, apoyados en evidencias comunes. Propagacin de probabilidades y cambios: Sean las reglas: A B, B P1 P2 pero si P1 cambia a P4 Qu pasa con P2 y P3? Obliga a mantener una base de conocimientos Bayesiana, ya que al agregar un nuevo hecho se deben disminuir las probabilidades de los dems para mantener la suma en 1. Se debe calcular de la frmula de Bayes en universos amplios. Existe la necesidad de manejar resultados disjuntos, por lo que complica el clculo. Hay la exigencia de contar con al menos una hiptesis verdadera en todos los casos. C P3

6.4.7 FUZZY SETS

Los conjuntos borrosos son: Apropiados para la representacin de aspectos confusos, inexactos, ambigos y contradictorios. Desarrollar mltiples alternativas. Ad - hoc a problemas especficos. Relativamente novedosos y pragmticos. Carentes de una base exacta de formalismo. Muy subjetivos y dependientes de contexto. Obligan a precisar la definicin de grados de pertenencia. Fundamentados en las formas de combinacin y propagacin de los valores Fuzzy.

6.4.8 REDES SEMNTICAS

Las redes semnticas se orientan a: Representar jerrquicamente los objetos y atributos. Facilitar la inherencia de propiedades entre objetos. 116

Base de Conocimientos

117

Describir significados de las entidades. Simplificar la inferencia. Limitar la representacin de abundante informacin. Presentar dificultades en la atencin a mltiples inherencias. Mucha dispersin del conocimiento al usar gran cantidad de nodos y ligas.

6.4.9 FRAMES

Los marcos tienen las siguientes observaciones: Facilita la conceptualizacin e interrelacin de conceptos, entidades y eventos. Permite incluir valores por default y el manejo de dominios, adems de actualizar los valores de estado. Mezcla el conocimiento procedural y declarativo. Emplea menor nmero de nodos y ligas El manejo de fillers implica proceso y conocimiento adicional. Incertidumbre en la definicin de los objetos. Dificultad para declarar verdades universales.

6.4.10 DEPENDENCIA CONCEPTUAL


La dependencia conceptual es: Apropiada en la representacin de conceptos esenciales. Orientada al lenguaje natural. Con pocos elementos y simples estructuras representa una gran cantidad y variedad de ideas. Evita las ambigedades. Facilita la inferencia, al manipular conjuntos pequeos de primitivas. Usar primitivas para eliminar aspectos complementarios. Tienen un alto grado de dificultad para compilar una representacin en primitivas. El problema crece para decodificar una expresin primitiva en una natural. Se pierde la riqueza del lenguaje.

6.4.11 SCRIPTS

Los guiones cuentan con las siguientes propiedades: Son adecuados para el modelaje de estereotipos. Concentra gran cantidad de conocimientos en un slo molde. Definen aspectos comunes, rutinarios y lgicos. Adecuados en aplicaciones de generacin de historias, enseanza, planeacin y reparacin. Los casos reales no siempre siguen los mismos patrones Requieren amplios recursos computacionales. Se debe interrelacionar con otros modelos de conocimiento e inferencia para adquirir sentido. Pobreza en su expresin natural por el hecho de usar dependencia conceptual.

6.5 CONSTRUCCIN DE UNA BASE DE CONOCIMIENTOS 6.5.1 HERRAMIENTAS


La representacin de conocimiento puede implementarse por medio de los siguientes tipos de herramientas, tcnicas y metodologas Lenguajes funcionales: IPL LISP INTERLISP y otros derivados SAIL POP Basados en clculo de predicados y reglas:

PROLOG OPS 5 MBASE MRS

Creencias: TMS Probabilidad/Factores de certidumbre: M1 EMYCIN OPS 5 Fuzzy Flops Redes semnticas - FRAMES KRL FRL KL-ONE KRIPTON CYCL Conceptual Graphs RLL NIKL THEO KL-ONE FRAMEKIT MECHOS Orientado a objetos SMALLTALK CLOS ACTOR LOOPS SCHEME C++

Dependencia Conceptual ERKS Scripts PAM

Eleccin de Tcnica Para resolver los complejos problemas con los que se enfrenta la Inteligencia Artificial, es necesario disponer de una gran cantidad de conocimiento y de una serie de mecanismos que permitan representarlo y manipularlo con el fin de obtener soluciones a nuevos problemas. En las aplicaciones se ha representado el conocimiento de distintas maneras a travs de variadas opciones que ya han sido evaluadas. Sin embargo se debe resaltar una caracterstica comn en todas las representaciones compuesta de: Hechos: Es aquello que se quiere manipular. 118

6.5.2 METODOLOGA

Base de Conocimientos

119

Representaciones de los hechos: Es el formalismo de representacin y la forma de manipulacin. Adems se debe considerar que un buen sistema de representacin de conocimiento en un dominio particular debe poseer las siguientes propiedades: Suficiencia de la representacin. Suficiencia deductiva. Eficiencia deductiva. Eficiencia en la adquisicin. A continuacin se muestra en forma de diagrama, los puntos a incluir en la eleccin de una tcnica de representacin ilustrada en la Figura 42:

Naturaleza del problema

Caracterizacin del conocimiento Mecanismo de manipulacin

Seleccin Herramientas disponibles Evaluacin de Tcnicas

Fig. 42. Consideraciones para la seleccin de tcnica de representacin del conocimiento

Aspectos a caracterizar del conocimiento Abundancia. Certidumbre. Absolutismo. Estructuracin. Grado procedural. Nivel de Estatismo. Manejo de: Excepciones. Default. Generalidades. Inherencia. Contradicciones. Universalidad. Empleo de contextos. Cuantificaciones. Espacios de versin. Representacin sintctico - semntica.

Conceptualizacin de la base de conocimiento Valor del conocimiento. Utilidad y aplicacin. Soporte de fundamentos. Forma y contenido. Mantenimiento. Explotacin. Adquisicin. Evaluacin. Ontologa La Ontologa es el estudio filosfico de lo que existe. En el contexto de la Inteligencia Artificial la ontologa se ocupa de las categoras que podemos cuantificar adecuadamente y de la manera en que se relacionan con las dems. Todos los sistemas basados en conocimiento se refieren a entidades del mundo, pero para poder capturar la profundidad del conocimiento humano, es necesaria una ontologa global bien diseada que especifique a muy alto nivel que clases de cosas existen y que propiedades generales tienen. Una ontologa global proporciona una fundamentacin ms slida para el dominio especfico de las aplicaciones y permitirles comunicarse entre ellos como se muestra en la Figura 43:
Ontologa Aplicaciones de la Inteligencia Artificial Conocimiento Humano

Universo del dominio

Relaciones

Clases de objetivos

Propiedades y Entidades

Fig. 43. Relacin Ontologa - Representacin del conocimiento Atributos Ontolgicos: Clase: Coleccin de objetos homogneos: personas, naciones, ruidos. Pueden tener super clase y subclases. Instancias de colecciones: Son objetos especficos como Juan Snchez, Colombia, trueno,... Estos pueden descomponerse en partes. Naturaleza: Del objeto, definicin, propsito, etc. Intangible: Objetos sin masa, imperceptibles como los sentimientos, pensamientos, leyes,... Tangibles: Objetos concretos tales como personas, minerales,... Compuestos: Identifica las partes integrantes del objeto, reconociendo dos aspectos: Extensin fsica: Cuerpo de una persona. Extensin intangible: Mente de la persona. Substancia: Es lo que retiene las propiedades intrnsecas, aparecen en todos los objetos de la misma clase. Propiedades extrnsecas: Son aquellas que distinguen a un objeto del resto de la misma clase. Eventos: Sucesos con una duracin breve cuyo propsito es describir una accin o resultado. Procesos: Secuencia de acciones con una duracin mas amplia que un evento. Slots: Identifica las propiedades de un objeto, es decir los adjetivos que permitirn reconocerlo. Tiempo: Es el punto de referencia con relacin a otros eventos, caracterizndose por Momento: Inicial, final.; duracin: Lapso o conjunto de ellos; y frecuencias: Cada cuando Agente: son objetos tangibles y activos, que tienen creencias que orientan su conducta Representacin: Forma de descripcin simblica. Casualidad: Eventos que surgen circunstancialmente y que afectan el estado de otros, as como al de los objetos.

120

Base de Conocimientos

121

Procedimiento: Caracterizacin del conocimiento perteneciente al dominio del problema. Identificacin de las formas de inferencia y explotacin para la solucin de problemas. Consideracin de los medios de aprendizaje, adquisicin y mantenimiento. Confrontacin con los mtodos de representacin. Seleccin de la forma de representacin: reglas, listas, marcos, primitivas, funciones, etc. Diseo del mecanismo administrador del almacenamiento, acceso, actualizacin y consistencia de la base. Eleccin de la herramienta de software. Creacin de la base de conocimientos. Integracin con los dems mdulos de Sistemas Expertos. Prueba, depuracin y evaluacin de la base de conocimientos.

7.5.3 CYCL

Es una base de conocimientos cuyo objetivo es representar el sentido comn del ser humano, para combinarlo con bases de conocimientos especializadas en diversos dominios y producir Sistemas Expertos ms robustos que los convencionales. Este proyecto estuvo a cargo de Lenat y Guha, pretendiendo describir el mundo a travs de una teora basada en: eventos, objetos y actitudes. El conocimiento de CYCL est codificado en un lenguaje denominado CYCL, basado en marcos que incorpora tcnicas de herencia mltiple, ranuras con objeto de pleno derecho, transfiere-a-travs-de, mutuamenteexcluyente-con, etc. CYCL generaliza la nocin de herencia de una forma que las propiedades pueden heredarse a travs de cualquiere enlace, no solo con es-un e instancia, de la forma mostrada en la Figura 44:
Representacin Percepcin

Mundo Frames Clculo de predicados Funciones LISP

CYCL

Fig. 44. Estructura de CYC El lenguaje CYCL representa: Inherencia simple, mltiple y generalizada. Slots and Fillers. Excepciones, propagacin de valores, y desarrollo ascendente y descendente. Un lenguaje de condiciones para declarar expresiones en predicados. Dos niveles de representacin: Epistemolgico: Hechos generales de dominio universal, expresadas en predicados. Heurstico: es un subconjunto de los anteriores, adaptado a las necesidades especficas del problema. Un programa que compila declaraciones epistemolgicas a heurstica. Para ilustrar la representacin de conocimiento que realiza CYCL, se aprecia en la siguiente figura la composicin de varios marcos involucrados en los elementos e implicaciones de una frase. Operacin Sea la declaracin "A Mara le gusta nicamente la gente que programa en LISP, y su representacin de la Figura 45:

Frame: Mara Sexo: Fem Edad: 23 Le gusta: Condicin: solo LISP

Frame: Juan Sexo: Masc. Edad: 25 ... Programa en (LISP)

Frame: Luis Sexo: Masc. Edad: 20 ... Programa en (C, LISP)

Frame: condicin solo LISP Slot: condicionado: le gusta Slot Value - debe ser: X Valor de X si cumple: condicin Condicin: Composicin: A B Propagacin: Forward

Para cada

Frame: condicin-part: A El conjunto de personas: X instancia

Fig. 45. Representacin "A Mara le gusta nicamente la gente que programa en LISP La figura anterior muestra cmo puede expresarse el hecho A Mara le gusta nicamente la gente que programa en LISP. Mara posee una restriccin condicin solo LISP, que restringe el valor de su enlace le gusta. El atributo Slot
Value de condicin solo LISP asegura que la ranura le gusta de Mara se rellenar al menos con aquellos individuos que satisfacen la condicin lgica de que programan en LISP y no en otros.

Operacin en Sentido hacia adelante: Insercin del frame de Juan. Activacin del sistema del mantenimiento de verdad. 122

Base de Conocimientos

123

Selecciona frames involucrados como el de Mara. Valida el slot condicionado le gusta. Instancia la parte - A. Valida la parte - B. Al ser afirmativa, agrega el nombre de Juan a la lista de personas que a Mara le gustan.

7.5.4 EXIS

Es un Sistema Experto orientado a auxiliar al usuario final en la definicin de esquemas conceptuales de base de datos. Aprende por ejemplos, representa el conocimiento mediante modelos semnticos y de eventos, se implement en PROLOG. Como se ilustra en la Figura 46: Objetivos Genera apropiados diseos conceptuales de esquemas de base de datos. Permite la representacin del conocimiento del experto en base de datos, as como retroalimentarlo a l. Mediante modelos semnticos, representa el conocimiento de aspectos descriptivos y estticos. A travs de modelos de eventos se proyectan los aspectos dinmicos de una aplicacin. Facilita la comunicacin con el usuario ofrecindole distintos ambientes de interaccin. Incrementa el acervo a travs de los resultados y experiencias obtenidas de las sesiones. Revisin de la consistencia de la base de conocimientos despus de cada alteracin. Construccin de planes con la colaboracin del usuario. Arquitectura
Experto Usuario Final Dilogo Monitor M e t a R e g l a s

Explicacin

Display

Aprendizaje

Creacin/Manipulacin

H e c h o s

Motor de Inferencia Base de Conocimientos: Reglas

Fig. 46. Arquitectura de EXIS Base de Conocimientos: Utiliza meta reglas, reglas y hechos para representar la metodologa y conceptos del dominio para disear base de datos. Dilogo: Permite la interaccin con los usuarios. Monitor: Controla el dilogo, ofreciendo diferentes niveles de interaccin. Manipulacin y Recuperacin: Dirige la actualizacin y consulta a la base de conocimientos, satisfaciendo las condiciones de integridad en apoyo al motor de inferencias. Aprendizaje: Permite al experto introducir y actualizar las reglas y hechos, apoyado en una interface grfica. Explicacin: Atencin a inquietudes tipo: WHY, WHAT, WHY NOT? Motor de Inferencia: Usa PROLOG con bsqueda a profundidad, hacia atrs, e inferencia de Resolucin.

Representacin de Conocimiento

Semntico Representacin Modelos Eventos

Base de Conocimientos

Redes Semnticas Tcnicas empleadas Predicados - Reglas

Fig. 47. Elementos en la representacin de EXIS Modelo Semntico Representa las condiciones de integridad y su formalizacin mediante redes semnticas y clculo de predicados, de acuerdo con los siguientes criterios: Entidades. Representan a un objeto o clase y se codifican como trminos y predicados respectivamente. empleado (Juan) = yes compaa (alfa) = yes La coleccin de clases y entidades se denomina meta clases. trabajador (empleado (Juan)) = yes organizacin (compaa (alfa)) = yes Las entidades se reconocen por sus argumentos, a travs de sus conexiones con otros conceptos. Arcos. Permiten interrelacionar a los elementos de diferentes clases, mediante alguna de las siguientes categoras de arcos: Atributos: Son las propiedades descriptivas de la entidad.

Entidad

atributo

valor

clase

Se representa con un predicado binario: altura (X, alto). Mientras que la asignacin de la propiedad a su respectivo dueo: x (basquetbolista (x) altura( X, alto)) Declaracin: El tipo de dato asignado al valor de un argumento est en funcin a su naturaleza. alumno (nombre, edad, materias,...) alumno (Juan, 20,[lisp, compiladores, _ ] _) Asociacin: Es una relacin binaria entre dos entidades. trabaja - para (Juan, alfa) 124

Base de Conocimientos

125

Mientras que su abstraccin para las distintas instancias de las clases respectivas: x ~y trabaja para (x, y) x empleado(x) y compaa(y) Generalizacin: Tambin conocida como especializacin, permite presentar atributos comunes a las entidades de la misma clase. x (empleado(x) estudiante(x) persona(x)) Agregacin: Conjuga varias clases en otra de mayor nivel. Es decir, constituye el producto cartesiano de las clases a integrar. libro(x) y z w (autor (y) editorial (z) titulo (w))
parte libro agregacin autor editorial titulo

Equivalencia: Representa que dos clases son equivalentes. eq (oc, oc2) eq (deportista, atleta) eq (x, y) equivale a is - a (x,y) is - a (y, x) Deduccin: Aplica alguna regla clsica de inferencia. dado: x [profesor(x) empleado(x)] x [empleado(x) persona(x) asalariado (x)] se deduce: x [profesor(x) persona(x) asalariado(x)] Inherencia: Es cuando una entidad aprovecha las propiedades definidas para la clase a la que pertenece. (perro(expresin ladrido)..) (fido (is - a perro)...) entonces fido ladra Excepcin: Sucede cuando una entidad no debe apropiarse de cierto atributo definido para la clase. (mamfero(nace - en placenta)...) pero (ornitorrinco (is - A mamfero)(nace en huevo)...) Condiciones que permiten generar el esquema. Generalizacin: cada generalizacin g, debe tener un nombre nico, sea la clase mgc una metageneralizacin. x y (mgc(x) ^ mgc(y) -(=(x,y)))

Ninguna clase puede ser subclase de s misma. x [g(ec0(x), list_of_subset) member (x, list_of_subset (y))] x y s(ec1, ec0(4)) s(ec1 (x), ec0 (4)) i = 1,2,3,...

La transitividad de IS-A como consecuencia de la .

x y z (g(x,y) ^ g(y,z) x y z (s(x,y) ^ s(y,z)

g(x,z)) s(x,z))

Una clase y su super clase no pueden tener ambas un atributo con el mismo nombre. x y [g(ec0 (x), ec1 (x))] Clasificacin de las reglas. Esquemas: Son definidas por la estructura conceptual del esquema. Transformacin estructural: Convierte la red semntica a otro modelo. Integridad: Constituye la condicin para mantener la integridad durante su manipulacin y recuperacin, son concebidas como pre y post condiciones. Meta: Jerarquizan la secuencia de pasos en la generacin de un esquema. Deduccin: Permiten calcular nuevo conocimiento a partir del original. Las reglas secodifican: Rule (o - regla, < conclusin : - condiciones >, ct) Regla o hecho Prolog Aprendizaje
Bases de Ejemplos Algoritmo de Aprendizaje Probabilstico PLA Modelo de Representacin

~ z(ec0 (z) ^ ec1(z))

Factor de certidumbre [0,1] o F.V.

Reglas de Decisin

Fig. 48. Aprendizaje La definicin formal del KRSM es: S = < E ,C, D ,V , F > E = Conjunto de objetos C = Atributos condicionales D = Atributos de decisiones V = Conjunto de los valores de los atributos F = E x V funcin de informacin, tal que la funcin F asigna valores a los atributos de cada objeto e en E. Sea el siguiente ejemplo de representacin mediante predicados, valores y la Figura49:

126

Base de Conocimientos

127

Objetos

Situaciones

S1 S2 S3 S4 S5

predicados que describen situaciones de las clases de entidades

P3

P1 P2 ... Pn

Reconocimiento

C1 (X) X = (persona, empleado) C2 (Y) Y = (empleado, maestro, asistente) C3 (Z) Z = (maestro, alumno, jefe)

Predicados para las relaciones entre elementos IS-A (Y,X) IS-A (Z,Y) IS-A (Z,X)

Condicin Atributos Conclusin

EJEMPLOS

Algoritmo de Aprendizaje

Situaciones C1(X) Persona Persona Persona Persona

Reconocimiento C2(Y) Empleado Empleado Empleado Empleado C3(Z) Maestro Asistente Jefe Estudiante

S1 S2 S3 S4

ATRIBUTOS Condiciones Conclusin IS-A(Y,X) IS-A(Z,Y) IS-A(Z,X) T T T T T T T F F T T T

Regla

IS-A (Z,X) IS-A(Z,Y) ^ IS-A (Y,X) IS-A (Z,X) IS-A(Z,Y) ^ IS-A (Y,X) is-a(jefe,persona) is-a(estudiante,persona)

Fig. 49. Ejemplos de representacin

128

CAPTULO 7. MOTOR DE INFERENCIA

130

7. MOTOR DE INFERENCIA
7.1. NATURALEZA DEL MOTOR DE INFERENCIA 7.1.1. DESCRIPCIN

Es una clase especial de pensamiento en la que se obtienen conclusiones a partir de premisas, es decir se genera conocimiento con base a otro como se aprecia en la Figura 50

premisas

conclusiones

Fig. 50. Esquema del motor de inferencia

7.1.2. PROPSITO

Genera nuevo conocimiento. Confirma el conocimiento actual, lo actualiza o desecha. Justifica la generacin de conocimiento. Mantiene la consistencia del conocimiento. Resuelve problemas. Refleja el razonamiento humano.

7.1.3. ELEMENTOS

La inferencia refleja la forma de resolver problemas. Este motor sirve como mecanismo de control e inferencia para el sistema experto, formando parte esencial del sistema debido a su importante papel como factor en la determinacin de la efectividad y eficiencia del mismo, tal como se aprecia en la Figura 51
experto MOTOR DE FERENCIA Mecanismo de aprendizaje INFERENCIA Manipulacin usuario Interface hombre - mquina Solucin de problemas BSQUEDA Base de conocimientos

Fig. 51. Interrelacin del Motor de Inferencia con los componentes de un S.E.

7.2. EVALUACIN DE MTODOS DE INFERENCIA 7.2.1. LGICA

Clculo Proposicional Proposicin: Es una declaracin donde se afirma algo, lo cual puede ser verdadero o falso. Argumento: Es un conjunto cualquiera de proposiciones de las cuales hay una denominada conclusin que se sigue de las dems, llamadas premisas.

132

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Reglas de Inferencia: Modus Ponens MP : Modus Tollens MT: Silogismo Hipottico: Silogismo Disyuntivo: Conjuncin C: Adicin A: Simplificacin S: Dado A B, A A B, ~ B A B, B C A # B, ~A A, B A A&B Se deduce B ~A AC B ~A&B A#B A

Mtodo de deduccin: Prueba formal de validez: La demostracin de un enunciado se obtiene si resulta ser la conclusin de aplicar las reglas de inferencia al conjunto inicial de enunciados y a sus derivados. Por ejemplo Sean las premisas: Argentina es nico lder o, si Brasil gan entonces Dinamarca est eliminada. Si no gan Colombia entonces, si Dinamarca est eliminada entonces Espaa calific. Si Argentina es nico lder entonces gan Colombia. No Gan Colombia. Y la conclusin: C. Si Brasil Gan entonces Espaa calific. Los enunciados se simbolizan as: A # (B D) ~C (D E) AC ~C C. B E

1. 2. 3. 4.

Los enunciados derivados son:

5. 6. 7. 8.

~A BD DE BE

3,4 MT 1,5 SD 2,4 MP 6,7 SH donde se prueba la conclusin

Demostracin Indirecta o Reduccin al Absurdo: La hiptesis a demostrar se introduce negada a las premisas originales, si la aplicacin de las reglas de inferencia conducen a una contradiccin (enunciado vaco) entonces el supuesto debe ser falso y su negacin (la hiptesis a probar) debe ser verdadera. Si aplicamos el mtodo para el primer orden resultara: C) B E su negacin: ~(B E) : ~ (~B # E): B & ~E La introducimos como la premisa 0 a los enunciados originales:

0. 1. 2. 3. 4.

B & ~E A # (~B # D) C # (~D # E) ~A # C ~C

132

Motor de Inferencia

133

Derivando los siguientes enunciados:

5. ~A 6. ~B # D 7. ~D # E 8. ~B # E 9. B 10. E 11. ~E & B 12. ~E 13. E & ~E 14.

3,4 MT 1,5 SD 2,4 MP 6,7 SH donde se prueba la conclusin 0 S 8,9 MP 9,10 C 11 S 12 C 13 Absurdo (Se gener el enunciado vaco)

Clculo de Predicados Predicado: Es la palabra que dice lo que se expresa del sujeto de una oracin. Deduccin: Se aplica el mtodo de Resolucin propuesto por Robinson, apoyado en la unificacin de frmulas. Unificacin: Confronta dos frmulas atmicas para determinar si existe una semejanza entre sus componentes, produciendo una lista que contiene la asociacin de valores a las variables de las dos frmulas, en caso de haber tenido xito en la comparacin, de lo contrario se dice que no son unificables. Los criterios que emplea son: Deben ser los mismos predicados. Igual nmero de trminos. Una constante slo se unifica con otra igual o una variable. Una variable libre se unifica con otra que est libre o que ya est instanciada, cualquier constante o funcin. Una funcin se unifica con una variable libre o que est instanciada por una funcin con la que se pueda unificar o con otra funcin con igual, nombre, nmero de trminos, y que stos a su vez sean unificables. Por ejemplo, se desea unificar: P(a, X, f(b, Y, g(c, Z)), d, W) P(a, h(e), f(b, X, g(V, e)), d,U) donde: constantes a, b, c, d, e, variables U, V, W, X, Y, Z, funciones f, g, h Las dos frmulas son unificables, generando una lista denominada lista de asociacin con las siguientes sustituciones: ( (h(e) / X), (h(e)/Y), (c/V), (e/Z), (U/W) ) Resolucin: Es un mtodo empleado para la demostracin de teoremas en el clculo de predicados, su procedimiento se basa en el principio de reduccin al absurdo, consistente en: Convertir todas las frmulas a clusulas. El teorema a demostrar se niega y se introduce a las premisas. A partir de este punto se confrontan las clusulas, comparando aquel par que cuando menos tengan la misma frmula atmica, pero una est afirmada y la otra negada y que adems sean unificables, para producir una nueva clusula denominada resolvente que contenga las restantes frmulas atmicas de las dos clusulas. El paso anterior se repite hasta encontrar una contradiccin (se produce la clusula vaca) o bien no se obtiene progreso alguno (loop, no hay solucin, se escogi un camino largo o equivocado). Cuando se produce la contradiccin se afirma la validez del teorema.

134

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Por ejemplo: Sean las premisas 1) padre (Juan, Rosa). 2) padre (Juan, Jos). 3) padre (Rosa, Ana). 4) padre (Rosa, Anel). 5) ~ padre (x, y) ~ padre(y, z) abuelo(x, z) Y el teorema a demostrar es: C abuelo (Juan , Ana). Por lo que al introducirlo negado tenemos: C ~ abuelo (Juan, Ana) 5. ~ Padre (x, Y) # ~ padre(y, z) # abuelo(x, z) Y LA: lista de asociacin: (Juan / x) (Ana / z)) R: resolvente ~ padre (Juan, y) # ~ Padre(y, Ana, 2). Padre (Juan, Rosa) R: ~ padre (Rosa, Ana, 3). Y LA: ((Rosa / Y) ) Padre (Rosa, Ana) LA: ( ) R: nil

7.2.2. SISTEMAS DE PRODUCCIN


Los sistemas de produccin se caracterizan por: Las reglas pueden tener varias conclusiones conjuntas. La inferencia se ejecuta por medio del apareamiento de patrones. La activacin de las reglas es determinada por los patrones almacenados en la memoria de trabajo. Las reglas interactan a travs de apareamiento con los patrones almacenados, que al hacer match ejecutarn sus acciones depositando sus resultados como nuevos patrones o alterando a los originales, en la memoria de trabajo, ver Figura 52:
Patrones Memoria de trabajo

Reglas Acciones1 . . Accionesn Condicionesn Condiciones1 Apareamiento de Patrones patron = patrn Variable = Valor Valor condicin Valor

Rule Conflict Acciones ejecucin

ACTUALIZACIN

Fig. 52. Sistema de produccin

134

Motor de Inferencia

135

7.2.3. FACTORES DE CERTIDUMBRE (CF)

La incertidumbre es producto de la incompletez y de la inexactitud del conocimiento del problema a representar. La tcnica del manejo de suposiciones puede funcionar como fundamento para el manejo de los sistemas que razonan bajo estas caractersticas. La principal ventaja de este tipo de razonamiento en comparacin con el lgico reside en que el sistema puede hacer inferencias an sin disponer de la suficiente certeza para probar que una accin es vlida. Razonamiento mediante Factores de Certidumbre: Cada premisa tiene su propio CF Premisas1 CF1 .... Premisasp CFp Conclusin CF j

Al haber varias promesas conjuntivas, se elige el menor CF: CF condicin = min [CF1 ,.., CFp ] Cuando la misma conclusin se obtiene de varios caminos, el CF final se deriva del producto de ellos: CF final = CF conclusin * CF conclusin Cuando hay condiciones disyuntas: Premisa1 CF1 v Premisa2 CF2 .. V Premisan CFn Conclusin CF Cada premisa i vlida produce un CFi CF finalk = CFi Premisai * CF Conclusin donde k = 1 # total de premisas vlidas Para posteriormente combinar cada CF final k Cuando son positivos los CFs CF = CF1 + CF2 % * (100 - CF1 ) Para CFs negativos CF = - (|CF1 |+ | CF2 | % *(100 - |CF1 |)) En caso de ser mixtos los CFs CF = (CF1 + CF2 ) * 100 / (100 [min( |CF1 |, |CF2 |)] ) Para: ((( CF1 , CF2 ), CF3 ) .., CFk El mismo procedimiento se aplica cuando se llega a la misma conclusin desde varios caminos como en Fig 53 d c
w x y d k l z

Meta

Fig. 53. Clculo del CF de una conclusin derivada por varios caminos

136

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

7.2.4. RAZONAMIENTO EN OBJETOS ESTRUCTURADOS


Se apoya en las relaciones atributo valor que asocian un objeto con otros o con clases de ellos como en Fig 54: is-a kind of Objeto Clase

Fig. 54. Razonamiento en objetos estructurados De tal manera que las propiedades asociadas al objeto o clase se hacen inherentes a la instancia.

. (Clase (a1 V1 ), (a2 V2 ),, (an Vn ))

(objeto (IS-A Clase) (ax Vx ) ) Fig. 55. Propiedades de las clases inherentes al objeto Parte del postulado: Las propiedades vlidas para una clase de objetos tambin lo son en sus instancias.

P1 I1
Clase

P2

Pp

Propiedades de la clase

I3 I3 In+1 In
Instancias de la clase

I4

Fig. 56. Propiedades vlidas de una clase de objetos y sus instancias vlidas La excepcin a la regla se declara especificando la propiedad como parte de la descripcin del objeto.

P1 I1 Px

P2

P3

Pp

Propiedades de la clase

P3
Excepcin

Py

Propiedades del objeto donde el valor de P3 es distinto al de la clase

Fig.57. Propiedades vlidas de una clase de objetos y sus instancias no vlidas 136

Motor de Inferencia

137

Existe un conflicto de inferencia cuando hay varias conclusiones para una misma propiedad de cierto objeto, como consecuencia de la inherencia mltiple, como se muestra en la siguiente figura; la propiedad P1 se describe en el objeto A y en las clases a las que pertenece E, I, K, D, y H. Como se aprecia en la Figura 58:
( K ( P1 W)..)

I ( I ( P1 Z)..) E ( E ( P1 Y)..)

L ( L ( P1 X)..)

D ( D ( P1 I)..)

( A ( P1 -)..)

Fig. 58. Conflicto de inherencia Esto es equivalente al proceso de bsqueda de la mejor solucin, por lo que implica manejar conocimiento adicional, esta heurstica debe reflejar el contexto del dominio del problema que se est tratando.

7.2.5. RAZONAMIENTO CONCEPTUAL


Se representa a travs de la relacin causa - efecto implcita en la semntica de las primitivas que afecta a los atributos de estado asociados a los objetos. Por ejemplo, sea la accin Bateo de hit al jardn derecho y se embaz en la segunda: Ahora se formulan los actos que ilustran los verbos de la oracin: ACT1 (PROPEL ACTOR OBJECT TO TIME FROM DURATION ACTOR FROM TO TIME DURATION HUM0 PEL1 PLA1 HOR1 PLA0 PER1 HUM0 PLA0 PLA2 HOR1 PER2 OBJECT

) OBJECT

ACT2 (PTRANS

138

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Se definen los siguientes momentos y objetos: Objeto1 (HUM 0 (ESTA-EN PLA0) (MOMENTO Hora1) ..) Objeto2 (PEL1 (TIPO PELOTA) (DEPORTE BEISBOL) ..) Objeto3 (PLA 0 (TIPO LUGAR) (ZONA JARDIN) (PUNTO HOME) ..) Objeto4 (PLA2 (TIPO LUGAR) (ZONA JARDIN) (PUNTO SEGUNDA-BASE) ..) Objeto5 (PLA1 (TIPO LUGAR) (ZONA JARDIN) (PUNTO RIGHT-FIELD) ..) Momento0 (PER1 (TIPO TIEMPO) (DIMENSION SEGUNDOS) (CANTIDADS 2) ..) Momento1 (HOR1 (FECHA X) (HORA Y) ..) Momento2 (PER2 (TIPO TIEMPO) (DIMENSION SEGUNDOS) (CANTIDADS 12) ..) Las repercusiones de evento generan un nuevo momento (con identificacin 3) y actualiza al objeto1: Momento3 (Hor2 (Fecha X) (Hora Y + Per1-cantidadsd + Per2-cantidadsd) ..) Objeto1 Hum0 (Esta-en PLA2) (Momento Hor3) ..) Esta situacin se conceptualiza de la forma mostrada en la Figura 59: OBJETOS MOMENTOS EVENTOS ACCIONES Intrprete

OBJETOS MOMENTOS REACCIONES Fig. 59. Razonamiento conceptual EJECUTADOR

7.2.6. RAZONAMIENTO NO MONOTNICO


La veracidad de las afirmaciones pueden cambiar en la medida que se aadan nuevos hechos, si ellos son consistentes con todos los dems que ya se han afirmado antes, entonces ninguno de ellos ser refutado (a esta propiedad se le llama monotona), pero si se altera la veracidad de algunos se dice que el conocimiento y el razonamiento son no monotnicos. Algunas caractersticas del razonamiento no monotnico son: Se tiene conocimiento incompleto. Es inconsistente la veracidad de las premisas. Las afirmaciones descansan en la validez de otras. Los postulados pueden verse confirmados o rechazados al incorporar un nuevo conocimiento o inferencia. Hacer inferencias por default: Todos los sospechosos son inocentes hasta que no se demuestre lo contrario. Desarrollar alternativas con diversas creencias e inclusive contradictorias, es decir, manejar distintos enfoques.

138

Motor de Inferencia

139

Representacin de Frmulas y Modelos de Creencias En la figura 8.11 se muestra en un segmento la cobertura de un conjunto de frmulas A, B y C, la cual genera un mdulo de conclusiones derivadas a travs de un crculo, en el cual se aprecia la particularidad de los teoremas derivados por un solo grupo y tambin la generalidad de aquellos que se obtienen mediante la emisin de varios conjuntos; evidenciando diversos enfoques, de la manera ilustrada en la Figura 60:

Mdulos Derivados

Mdulos Derivados

Mdulos Derivados

A B

A B C Frmulas

Frmulas

Frmulas

Fig. 60. Representacin de Frmulas y Modelos de Creencias Hay dos clases de lgica para representar esta forma de razonamiento: Lgica No monotnica: Propuesta por McDermott y Doyle, altera las frmulas del clculo de predicados con el operador modal M, que se interpreta como consistente. Por ejemplo:

x y hombre(X) mujer(Y) Mlegusta(X,Y) se le declara(X,Y)


Ahora bien, la consistencia de un conjunto de teoremas dada una base de conocimientos es el conjunto resultante de la interseccin de los conjuntos de teoremas que se generan por las distintas combinaciones de las frmulas y que grficamente se presentan a en la Figura 61:

W 1 W3 W 2 Ww
1 2 n

Conjuntos de teoremas lt t Fig. 61. Consistencia de teoremas

Teoremas consistentes

140

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Para las declaraciones: A M B B ~A M B B Se deriva: MB B Al eliminar A y ~ A. Lgica por Default: Define un nuevo y nico conjunto de reglas de inferencia, como la siguiente: A : B C Si A es probable y es consistente asumir B entonces se concluye C. Dicho mecanismo permite extender el conocimiento a travs de las nuevas conclusiones que produzcan las reglas de inferencia. Por ejemplo: 1) x Industrial(X) M ~ ecologista (X) ~ ecologista(X) 2) x Deportista(X) M ecologista (X) ecologista(X) 3) Industrial (juan) 4) deportista(juan) Al aplicar las reglas de inferencia con la instancia de Juan Se produce: ~ ecologista(juan) ecologista(juan) Desafortunadamente la lgica por default no seala como escoger a alguna de ellas como la conclusin consistente. Abduccin: Con base a: x a(X) b(X) a (c) b (c) Infiere en sentido inverso a(X) b(X) b(f) a(f)

Este razonamiento es til si alguna medida de certidumbre es asociada a las expresiones resultantes. Estas medidas cuantifican la argumentacin en favor a dicha conclusin en comparacin con otros antecedentes que soportan la conclusin de b a partir de a (en el sentido normal). Inherencia: Es otra forma de representar el razonamiento por default, veamos los siguientes ejemplos: 1) basketbolista(Y) : altura (Y, 1.95) altura(Y, 1.95) 2) basketbolista(luis) 3) adulto (z) : altura(z, 1.80) altura(z, 1.80) 4) adulto (luis) adulto(x) : ~ basketbolista(X) altura(X, 1.80)

altura (X, 1.80)

140

Motor de Inferencia

141

adulto(luis) : basketbolista(luis) altura(luis, 1.95)

altura(luis, 1.85)

Cmo manejar el conflicto de inherencia mltiple? A travs del conocimiento y heurstica adicional que permitan seleccionar la mejor opcin.

7.2.7. FUZZY LOGIC


A diferencia de los dos valores lgicos de la teora clsica de la lgica, los conjuntos borrosos pueden relacionarse con muchos valores lgicos, representados por un nmero fraccional entre [0,1]. Por lo que respecta a su interrelacin tenemos que: Sean las proposiciones fuzzy con sus grados de membresa GM carro-rpido(Mustang) : GM = .9 carro-lujo (Mustang) : GM =.7 La negacin es: ~ F(X) = 1-F(X) ~ carro-rpido (Mustang) = 1 - carro-rpido (Phantom) = 1 - .9 = .1 Mientras que la conjuncin es: F(X) G(X) = min [GMf, GMg] carro-rpido (Mustang) carro-lujo(Phantom) = .9 .7 = .7 carro-rpido (Mustang) ~carro-lujo(Phantom) = .9 .3 = .3 Por lo que respecta a la disyuncion: F(X) V G(X) = mas [GMf, GMg] carro-rpido (Mustang) V carro-lujo(Mustang) = .9 V .7 = .9 carro-rpido (Mustang) V ~carro-lujo(Mustang) = .9 V .3 = .9 De los postulados anteriores se genera la Teora de Posibilidades Esta es una especie de Fuzzy Logic, para manejar preguntas precisas sobre conocimientos imprecisos. Por el ejemplo: Si hay 10 balones en una urna y varios son rojos, Qu posibilidad hay de tomar uno de ellos?

urna

varios son rojos Posibilidad de que sea rojo?

Fig. 62. Representacin mediante Fuzzy Logic

142

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

La posibilidad de que sea rojo se define como: p(rojo) = x; 0<= x <= 1 Mientras que varios como un fuzzy set F varios = ( (3, 0.2), (4,0.6), (5,1), (6,0.9), (7, 0.6), (8, 0.3) ) Que denota que 3 de 10 califica ligeramente como varios, 4 de 10 a 0.6 y as sucesivamente. Se observa que la tendencia media del # balones rojos de un total de 10 en la urna para adquirir el mayor valor de membresa de 1 para el concepto fuzzy de varios. La distribucin de posibilidad para baln rojo es: f p (rojo) = varios / 10 Que al evaluarse, brinda la siguiente proporcin: ( (0.3, 0.2), (0.4,0.6), (0.5,1), (0.6,1), (0.7, 0.6), (0.8, 0.3) ) Que denota un 20% de oportunidad que p(rojo) = 0.3; un 60% de oportunidad que la posibilidad de rojo sea igual a 0.4; ... Por lo que f p(rojo) es una probabilidad fuzzy. Esto conlleva a considerar valores de verdad fuzzy F true: [0,1] rango [0,1] dominio

TRUE : (carro-rpido (Phantom)) = 1 Aunque TRUE (0.9) = 1 Ya que : (0.9, 1.0) Ef true Es decir 0.9 es suficiente verdad Ef, aunque no total, ya que hay vehculos ms rpidos. Ejercicios Representar los casos del Corvette y el VW sedn. La distribucin de fuzzy set y la distribucin de posibilidad del ejemplo de balones rojos para: pocos y muchos.

142

Motor de Inferencia

143

7.3. COMPARACIN DE MTODOS


Marco de referencia El ingeniero de conocimiento debe eligir la tcnica de inferencia de acuerdo al problema, como se ilustra en la Figura 63: Forma de solucin

Problema Experto

Conocimientos Implementacin Inferencia Fig. 63. Marco de referencia Criterios Entre los argumentos a considerar estn: Naturaleza del problema: Area Ciencias Exactas. Sociales. Humansticas. Mdico Biolgicas. Administrativas. Artsticas. Tipo Abstracto. Concreto. Propsito Experimentar. Crear. Resolver un requerimiento especfico. Forma de solucin que se va a implementar en el mdulo: Procedimiento Metodolgico. Inductivo. Experimentacin. Intuicin. Fortuito. Interaccin durante la operacin con: Personas. Objetos tangibles.

144

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Entidades intangibles. Atencin a lo largo de la sesin de operacin Dedicado. Por etapas. Conocimientos, manejo y requerimientos de: Certidumbre Absoluto. Absoluto relativo. Incierto. Precisin Exacto. Aproximado. Temporalidad Permanente. Esttico. Evolutivo. Dinmico. Cantidad Obtencin Representacin simblica Inferencia: Sentido Hacia adelante. Hacia atrs. Mixto. Formalismo Bien soportado. Incierto. Monotoneidad Manejo de enfoques nico. Mltiples. Ambiguos. Contradicciones. Implementacin: Complejidad Consumo de recursos Herramientas disponibles Emulacin con el experto humano

144

Motor de Inferencia

145

CRITERIO

Clculo De predicados del

Reglas de produccin

Creencias

TCNICA Probabilidad

Fuzzy Sets

Objetivos Conceptual Estructurados

Naturaleza problema Area. Tipo. Fin.

Forma de solucin Procedimiento. Interaccin. Atencin. Conocimientos Certidumbre. Precisin. Temporalidad. Cantidad. Obtencin. Representacin simblica. Inferencia Sentido. Formalismo. Monotoneidad. Manejo de enfoques. Implementacin Complejidad. Consumo de recursos. Herramientas disponibles. Emulacin con el experto humano.

Fig. 64. Tabla de evaluacin Es conveniente mapear las caractersticas del problema con los atributos y limitaciones de las tcnicas para identificar aquella(s) ms ventajosa, como se muestra en la figura 64.

146

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

7.4. INTEGRACIN DE LA INFERENCIA Y BSQUEDAS 7.4.1. ANLISIS DEL TIPO DE PROBLEMAS A RESOLVER

Encadenamiento hacia adelante Se orienta a encontrar la solucin a un problema a partir de los datos disponibles, satisfaciendo condiciones, generando conclusiones, as sucesivamente hasta alcanzar una meta satisfactoria. A B A B Se conoce tambin como orientado a datos

Encadenamiento hacia atrs Identifica posibles metas que resuelvan un problema dado, trata de demostrar que son una solucin, satisfaciendo las condiciones que las producen (llamadas submetas) con base al conocimiento e informacin disponible, as hasta llegar al estado inicial del problema. A B ~B Se denomina orientado por metas ~A Mixto Alterna los sentidos de inferencia hacia adelante y atrs, en funcin a una estrategia de control, que a partir de datos iniciales identifique metas, que debern ser confirmadas. Estados Estados Adelante iniciales finales . . Atrs . . Mixto . .

Criterios de seleccin Orientarse hacia el mayor nmero de estados. Seleccionar el menor factor de ramificacin. Ser congruente con la direccin que el usuario utiliza para comprender y resolver el problema. Clase de alimentacin externa, durante la bsqueda de solucin: Hechos que se agregan: hacia adelante. Respuestas a preguntas: hacia atrs.

7.4.2. PROGRAMACIN LGICA

Es la alternativa de implementacin ms prctica y decidible en la demostracin de teoremas y solucin de problemas, adems de presentar un proceso de compilacin como el de la Figura 65: Lenguaje natural Formulas bien formadas. Clusulas

Declaraciones Prolog

Reglas y hechos

Clusulas de Horn

Fig. 65. Programacin lgica

146

Motor de Inferencia

147

En la ltima fase tendremos los siguientes tipos de declaraciones: Negaciones: Como meta : ? como goal como negacin goal : P1 (a1 ,, aa ) Pj (b1 ,, bb ) ?

Como regla : P2 (c1 ,, c2 ) : - ! , fail. Afirmaciones: Como hecho Como regla

P (d1 ,, dd )) P (e1 ,, ee ) : - !.

Reglas: Simple: Pp (f1 ,, ff ) : - Pq (g1 ,, gg ) ( , p + (h1 ,, hh ) ).. Recursiva: P (i1 ,, ii ) : - | . P (j1 ,, jj ) : - Pv (k1 ,, kk ) ,,( , P (l1 ,, ll ) , Pw ( 1 ,, ) . Recursiva Tail: Px (m1 ,, mm ) : - ! . Px (n1 ,, nn ) : - Pv (1 ,, ) ,, Px ( 1 ,, ).

Los mtodos en los que se basa la manipulacin de los predicados son: Representacin de conocimiento Mtodo de inferencia: Clusulas HORN Modus Tolens Reduccin a lo absurdo Resolucin. Unificacin Hacia atrs - a profundidad_ciega.

Comparacin literales Bsqueda

La activacin del mecanismo de inferencia se organiza para: Demostraciones ? p (c1 ,, cc ) donde ci es constante i = 1 ,, c Consultas y solucin de problemas ? p (m1 ,, mm ) donde mI es constante o variable, debiendo existir cuando menos una variable.

7.4.3. SISTEMAS DE PRODUCCIN


Los mtodos en los que se apoya la explotacin de reglas son:

148

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Representacin de conocimiento

Reglas

Mtodo de inferencia

Modus Tollens

Comparacin literales

Apareamiento de patrones

Bsqueda

Hacia adelante - a profundidad.

Durante el apareamiento existen conflictos de reglas al identificar varias susceptibles de ejecutarse, para lo cual se pueden utilizar los siguientes criterios: Preferencia basada en reglas Considerar el orden de aparicin de las declaraciones. Preferir reglas ms restringidas que generales Cmo se identifica este caso? a.1) p(a, B, c), q (a, D, E), r(E, F, g) a.2) p(b, d, y), r (g, H, I), acciones acciones

Escogiendo aquellas con menos variables en este caso a.2 otro caso: a.3) p(V, X, f), q (g, h, y) acciones a.4) p(a, X, g), q (i, y, K) acciones Preferencia basada en objetos. Se asigna una prioridad a las entidades o eventos del dominio, de tal suerte que al verse involucradas en el conflicto de patrones, se escoge la de mayor importancia. Un ejemplo de esta aplicacin es el sistema ELIZA, quien asigna prioridades a los keywords, I, Computer, Preferencia basada en estados. Suponer que hay varias reglas candidatas, estas se disparan y se examinan sus resultados a travs de una funcin heurstica, que evala los mritos y escoge una de ellas. Otra alternativa es tomar aquella regla que haga match con los patrones ms recientemente generados.

7.4.4. RAZONAMIENTO NO MONOTNICO


Sentido: Hacia adelante: Las reglas estndares se ven alteradas por el condicionante unless que permite el razonamiento por Default, como por ejemplo; suponer el caso de un delito donde una persona es sospechosa si resulta beneficiada a menos que tenga una coartada, como se ilustra en la siguiente regla de la Figura 66: IF beneficiario (X) UNLESS tiene_coartada (X) THEN sospechoso(X) Hacia atrs: Brinda dos alternativas su implementacin: Clusulas Default, mediante el condicionante unless. Sospechoso(X) beneficiario(X) unless sospechoso(X). A travs de debates en el que se generan argumentos a favor y en contra de cierta proposicin. Mediante conocimiento especial se determina que perspectiva est mejor fundamentada.

148

Motor de Inferencia

149

Implementacin sin Profundidad Mtodo de Expansin Amplitud: manejo de mltiples contextos simultneos dependencia dirigida por el retroceso con Justificacin Lgico TMS Sistema de Mantenimiento de la verdad

Fig. 66. Implementacin del razonamiento no monotnico Ejemplificacin Sea el caso de programar una reunin de varias personas en cierto restaurante. Veamos el desarrollo por etapas mediante el mtodo sin dependencia dirigida por el retroceso sealado en la Figura 67:

150

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

d = Mircoles
a

Se escoge un da
2 3 a

d = Mircoles h = 14:00
Se elige una hora
b

d = Mircoles h = 14:00 mesa = FAIL


c b

Pero no hay lugar disponible

fail
5

d = Mircoles
a

d = Mircoles

h = 14:00
b

Se buscan otras horas, pero no todos pueden

.. fail X

Se regresa al punto inicial

.. fail X

d = Mircoles
a

d = Jueves
c

d = Jueves
b

fail
Se escoge otro da Se propone otro da

h = 14:00

d = Jueves
c

h = 14:00
d

Se vuelve a escoger la hora y luego a determinar si hay disponibilidad de la mesa

mesa = 14
e

meta

Fig. 67. Ilustracin del retroceso dirigido sin dependencia

150

Motor de Inferencia

151

En cambio si este ejemplo se desarrolla con retroceso dirigido por dependencia, nos ahorramos la duplicacin del trabajo til, de la forma esquematizada en las Figuras 68, 69 y 70:
1

d = Mircoles
a

Selecciona un da

Fig. 68. Ilustracin del retroceso dirigido sin dependencia

152

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

3 2

Se busca una hora

d=M h = 14:00
b

No hay espacio

d=M
b

h = 14:00 mesa = FAIL

Todas las personas pueden reunirse cualquier da a esa hora.

fail

X
Se analiza la causa.

Se respalda el trabajo positivo que no provoc la falla.

h = 14:00

D=M
a

h = 14

Se dirige el backtrack al punto de conflicto.

7 6

D=J

Se reintegra el trabajo positivo.

D=J
c b

h = 14

Se produce otra opcin.

Fig. 69. Ejemplificacin del retroceso dirigido por dependencia

152

Motor de Inferencia

153

D=J
c

h = 14
Se obtiene la solucin
b

mesa = 14
d

meta

Fig. 70. Ejemplificacin del retroceso dirigido por dependencia Mientras que para ilustrar los mtodos de sistema de mantenimiento de verdad tenemos el caso del CRIMEN ABC. Sea A, B y C sospechosos de un asalto. A, tiene la coartada de haberse registrado en un hotel. B, tiene le testimonio de su cuado que dice haberlo recibido en su casa. C, dice haber estado en una competencia deportiva. Se supone que ellos son beneficiarios de una herencia. Mediante : Sistema de justificacin basado en el mantenimiento de verdad Se emplearn reglas por default como: beneficiario(X) : ~coartada(X) sospechoso(X) Representaremos las suposiciones e informacin adicional mediante las redes de las Figuras 71, 72 y 73:

1) A es sospechoso por ser beneficiario sospechoso A [ IN]

2) A tiene una coartada, por lo que deja de ser sospechoso sospechoso A [ OUT]

beneficiario A [IN] beneficiario A [IN] coartada A [out] premisa + Registro A [IN] premisa

coartada A [out]

Hotel Lejano [IN]

Registro [OUT] Extraviado

Fig. 71. Ejemplificacin de suposicones

154

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

3) B es sospechoso por ser beneficiado sospechoso B [ IN]

4) B deja de ser sospechoso por que tiene un testigo sospechoso B [ OUT]

beneficiario B [IN] beneficiario B [IN] coartada B [out] premisa +

coartada B [IN]

premisa 5) C es sospechoso por ser beneficiario sospechoso C [ IN]

El cuado de B El cuado de B afirma [IN] miente [OUT] 6) C sigue como sospechoso porque solo tiene su palabra como testimonio sospechoso C [ IN]

+ -

beneficiario C [IN] beneficiario C [IN] coartada C [out]

coartada C [out]

+ Dice la verdad C [OUT] 8) Se produce una contradiccin, ya que ninguno es 7) Posteriormente se presenta el testimonio de: El video del evento al que asisti C donde l aparece entre sospechoso el pblico por lo que C deja de ser sospechoso sospechoso C [ OUT] Contradiccin

+ beneficiario C [IN]

+ coartada C [IN] + sospechoso A sospechoso B otros sospechosos sospechoso C Miente [OUT] Dice la verdad C [IN]

+ C fue visto en el video [IN]

El vdeo est extraviado [OUT]

Fig. 72. Desarrollo de un caso por medio de un sistema de mantenimiento de verdad

154

Motor de Inferencia

155

9) Al utilizar argumentada:

abduccin,

sobre

la

coartada

menos 10) Por lo que la red final es: sospechoso B [IN]

miente el cuado de B

beneficiario B [IN] El cuado de B afirma otros sospechosos + El cuado de B afirma [IN]

coartada B [out]

+ El cuado de B miente [IN]

sospechoso A

sospechoso C

otros sospechosos [OUT]

sospechoso A [OUT] sospechoso C [OUT]

Fig. 73. Desarrollo de un caso por medio de un sistema de mantenimiento de verdad

7.5 CONSTRUCCIN DEL MOTOR DE INFERENCIA


Una alternativa para realizar aplicaciones que manejan frames y redes semnticas, es mediante el empleo de lenguajes orientados a objetos (LOO). Entre los elementos y caractersticas que componen este ambiente estn: Todos los datos, clases de datos y procedimientos son considerados como objetos. Los objetos se comunican por medio de mensajes, cuyo resultado es otro objeto. Los LOOs soportan las siguientes propiedades: Abstraccin: se traduce en la definicin de objetos, su agrupacin en clases, stas en superclases, bajo una relacin jerrquica. Cada clase tiene un protocolo definido. Encapsulacin: Es la definicin de un objeto con base a:

OBJETO Protocolo de clase Datos privado Datos a compartir con otras instancias. Datos globales a compartir. INTERFASE Mensajes a/y desde otros objetos

Inherencia: Las instancias de objetos se aduean de las propiedades de sus clases y estas a su vez de las superclases a las que pertenecen. Polimorfismo: Permite utilizar el mismo mensaje destinado a diversos objetos, cada uno con propsitos particulares:

156

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

OBJETO

CLASE A Print SUBCLASE 1 SUBCLASE 2 Print SUBCLASE IB Print CLASE B Print Fig. 74. Polimorfismo Los datos son almacenados como objetos con actualizacin automtica. Extensibilidad mediante la ampliacin de las capacidades del lenguaje. Las etapas de implementacin son: Identificacin de los objetos. Seleccionar los mensajes apropiados. Determinar la secuencia de mensajes. Probar el sistema. SUBCLASE 3

M a n t e n i m i e n t o d e M e m o r i a e n F u zzy E x p e r t S y s t e m F l o p s Flops es un sistema de produccin en paralelo, donde simultneamente se disparan todas las reglas que se aparean con las entidades de memoria (patrones). Al ejecutar sus conclusiones, se pueden alterar ms de una vez un mismo patrn. Esto produce un conflicto de memoria. Para resolver el problema, se requiere un algoritmo denominado: sistema de mantenimiento de memoria, que atienda a tareas de: Make Modify Delete Garantizando independencia del resultado final con respecto al orden en que se ejecuten las operaciones.

156

Motor de Inferencia

157

patrones reglas R1 . . . Rn P1 . . . Pn bloques

conclusiones Pj B1 . . . Bn Pl Pt
Fig. 7.5. Arquitectura

Modify Pj Create Delete M S Pi

Pl

Pm

Modify Create Delete M

Pm

Resulta indistinto el orden de realizacin de CREATE y DELETE, ms no MODIFY. Por lo que se requiere el procedimiento: Sea un patrn con m atributos a modificar: 1jm Mientras que: (TTj) una instancia del patrn de un total de n instancias: 1jn

158

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Un algoritmo que se aplica a cada tipo de patrn h de un total c -1- involucrados, como se ve en la Figura 76:

h=1
si

j<=m
no

j=1 i=1 Colecta modificaciones para el atributo ^ i de la instancia TTj del patrn Ph Actualiza Ph(TTj(^ i)) i= i +1
no si

j= j +1

j<=n
no

h= h +1

si

h<=l

Fin

Fig. 76. Algoritmo del sistema de mantenimiento de memoria Sea el siguiente ejemplo: Patrn (animal(peso((0.7/60, 0.6/85), 1)) variable fuzzy set cf (tamao((0.3/pequeo, 0.6/medio, 0.9/ grande), 0.8)) variable fuzzy set CF (color(blanco,0.9) ) Si las operaciones son: Modify: peso(60,0.6), peso(75,0.8), peso(100,0.6), peso(60,0.75), peso(75,0.7), peso(100,0.9) Delete: Animal Create: (Animal (peso(40,3)) (Tamao ((0.4/pequeo, 0.5/medio, 0.89/grande),0.7)) color(rojo,0.7)))

158

Motor de Inferencia

159

Los resultados son: En cuanto a Modify: Se agrupan: los valores conforme al mximo CF: peso(60,0.75), peso(75,0.8), peso(100,0.4), que al combinarse con el patrn original Animal(peso((0.7/60, 0.6/85, 0.9/100), 1)) (tamao((0.3/pequeo, 0.6/medio, 0.9/ grande), 0.8)) (color(blanco,0.9) ) ) Cre uno nuevo. Mientras que con Delete: Animal(peso((0.7/60, 0.6/85), 0)) (tamao((0.3/pequeo, 0.6/medio, 0.9/ grande), 0 )) (color(blanco,0) ) ) Afect al patrn original colocando en 0 el valor de la variable fuzzy set. Finalmente Create: Animal (peso(40,3)) (Tamao ((0.4/pequeo, 0.5/medio, 0.89/grande),0.7)) color(rojo,0.7))) Este sistema es monotnico al no permitir alterar instancias con argumentos cuyo CF es menor al actual.

160

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

160

CAPTULO 8. INTERFASE HOMBRE-MQUINA

162

8. INTERFASE HOMBRE - MQUINA


8.1 PROPSITO DEL MDULO
La interfase hombre - mquina tiene el objetivo de brindar el medio para explotar el Sistema Experto, facilitando la comunicacin adecuada con el usuario, el ingeniero de conocimiento y el propio experto, durante la operacin. Entre los aspectos a satisfacer estn: La expresin clara de las instrucciones, preguntas y respuestas, ofrecidas por el sistema. La facilidad y claridad con la que el usuario puede expresarse y comprender al sistema. La claridad para la evaluacin practicada por el experto. La sencillez en la supervisin del funcionamiento a cargo del ingeniero de conocimiento.

8.2 CONSIDERACIONES 8.2.1 TIPO DE USUARIO

Esencialmente son cuatro tipos de usuarios a saber: Usuario final. Experto en el dominio del sistema Ingeniero del conocimiento Administrador del sistema.

8.2.2 TEMA DE LA COMUNICACIN


Naturaleza. Aplicacin. Complejidad. Nivel de detalle. Tecnicismos. Forma natural de expresin y representacin.

8.2.3 RECURSOS

Hardware, multimedia, realidad virtual. Software, traductores, reconocedor de voz. Logsticos, protocolos, convenciones.

8.2.4 ARISTAS DE LA COMUNICACIN


Control general de la sesin a cargo del sistema. Interrogacin al usuario, formalidades y patrones. Exposicin de conclusiones, formas y mecanismos. Justificacin del resultado, explicacin a satisfaccin. Evaluacin, del funcionamiento del sistema.

8.3. MODELO
Medio Son los recursos fsicos, lgicos y de software disponibles, sus caractersticas y modo de operacin, que permiten la interaccin hombre - mquina: Terminal. Micrfono. Digitalizador. Teclado. Bocina. Impresora. Videocmara. Graficador.

164

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Protocolo Es el formalismo de expresin utilizado en la comunicacin en forma: Simblica. Texto. Grfico. Sonido. Mecanismo de la interfase Constituye el mdulo del sistema responsable de la comunicacin hombre-mquina, integrado por dos clases de elementos: Cdigo especializado El Cdigo est representado por: Ventana: Se encarga de exhibir y recibir los elementos integrantes del protocolo de comunicacin con el usuario, apoyndose en el medio disponible. Intrprete: Recibe la comunicacin del usuario y maneja: Mensajes Preguntas Respuestas Lleva a cabo su reconocimiento lxico, sintctico y semntico; generando requerimientos de respuesta, manejo de errores, acuses de contestaciones. Generador: Conforme a los requerimientos a expresar produce: Mensajes Preguntas Explicaciones Justificaciones Resultados Para lo cual accesa a las bases de conocimiento apropiadas. Formateador: Compila los mensajes que se expresan al usuario por medio de la representacin apropiada de comunicacin definida en el protocolo, auxilindose de la base de conocimientos del lenguaje. Control: Es el coordinador esencial del flujo de operacin de todos los mdulos y de las interfaces con el mecanismo de inferencia y base de conocimientos del sistema. Entre sus tareas destacan: Control de la sesin de operacin del sistema Control del modo de comunicacin: Consulta, Exposicin de resultados Solucin de la accin a realizar en respuesta a los mensajes enviados por el usuario Supervisin de los mensajes emitidos por el sistema al usuario Manejo de eventos especiales: Fin de sesin Aborto de la sesin Pausas de la sesin Fallas en el funcionamiento Establecimiento de la sesin.

164

Motor de Inferencia

165

Bases de conocimiento calificadas Protocolo del lenguaje Contiene los elementos lxicos, estructuras sintcticas y conceptos semnticos puros del protocolo empleado. Los mdulos de interpretacin y generacin se apoyan en esta base para la realizacin de sus funciones. Conocimiento estructural Representa los fundamentos en que descansan los hechos y conclusiones de la base de conocimientos. Utilizndose para aclarar y abundar en los interrogatorios, justificaciones y evaluaciones, ocurridas durante la sesin de operacin. Se apoya en las bases de conocimientos y de resultados. Conocimiento estratgico Constituye las razones que explican como se realizan las bsquedas, inferencias y conclusiones. Fundamenta la construccin de hiptesis y justifica el rumbo que toma la sesin. Se apoya en el mecanismo de inferencia y en la base de conocimientos del Sistema Experto. En sntesis, es el responsable de argumentar la actuacin del sistema.

8.4. CICLO DE COMUNICACIN 8.4.1 DESCRIPCIN

La sesin de operacin de un sistema experto a cargo del usuario final es esencialmente un interrogatorio encaminado a obtener los elementos necesarios para: Definir el problema. Formular la solucin. Entender el mtodo y fundamentos aplicados en la generacin de respuestas. Durante la interaccin ambos pueden formular preguntas y responder a otras, por lo que se debe distinguir quien tiene el control de los cuestionamientos en cierto instante. Este tipo de interaccin se conoce como modos de conversacin; pudiendo distinguir 4 tipos esenciales: Consulta: Expresin de requerimientos. Conclusin: Exposicin de respuestas y soluciones. Explicacin: Argumentacin de las conclusiones. Justificacin: Aclaracin a las preguntas y razonamientos.

8.4.2 FLUJO

La interrelacin de los modos de operacin puede representarse por medio de las siguientes palabras clave: Why.- Porqu hizo esa decisin y no otra?; Porqu us tal parmetro? What.- Qu est haciendo? , Qu har despus? How.- Cmo hizo o no cierta decisin? ?.- Pregunta abierta. ME.- Solicitud de cambio al modo explicacin Las respuestas debern ser completas y claras detallandolas hasta el nivel necesario en funcin al modelo del usuario y su inters.

8.4.3 CONCLUSIN

Es la emisin de la(s) conclusin(es) generada(s) por el sistema experto y sus fundamentos, tomando en cuenta: La exposicin Mensaje descrito Factores de certidumbre asociados Reglas Hechos Razonamientos Recomendaciones para ejecutar las acciones descritas.

166

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

8.4.4 JUSTIFICACIN

Son las aclaraciones que exige el usuario para comprender las conclusiones y sus fundamentos presentados por el sistema, por lo que puede usar los instrumentos equivalentes del modo explicacin.

8.5 FORMAS DE IMPLEMENTACIN


Relacin En funcin al tipo de usuario, tema, recursos y protocolo de comunicacin se debe seleccionar la forma de implementacin ms amigable. Entre las que se encuentran: Por comandos. Men simple. Men con ventanas.

8.6 METACONOCIMIENTO
La eficiencia de un Sistema Experto puede ser incrementada mediante el empleo del conocimiento acerca del conocimiento que maneja, con el que se obtienen una serie de lineamientos que dirigen el diseo y funcionamientos del sistema como son: Sugerencias para la definicin de la arquitectura: Puede recomendar opciones tipo sistemas de produccin, agenda, pizarrn, sistema para el mantenimiento de verdad, etc. Propuestas para organizar la base de conocimientos: En funcin a la naturaleza del conocimiento a representar puede elegir por: reglas, frames, redes, dependencia conceptual, scripts u otra ms apropiada. Manera de actualizar sistemticamente la base de conocimiento: Por ejemplo Supongase que se reporta al sistema que cierta medicina ha sido descontinuada, por lo tanto l deber preguntar y buscar por sustitutos adecuados para hacer los reemplazos correspondientes en la base, por lo que se debe tener cuidado en: Forma de usar elementos sustitutos en la base. Situaciones donde el medicamento que se propone no est disponible, se deber buscar otro adecuado que se pueda recomendar slo en los casos en que satisface las mismas condiciones que el original. Ajustes especiales a los mtodos de inferencia. Recomienda que procedimiento aplicar de acuerdo a la problemtica, por ejemplo, usar factores de certidumbre o grados de pertenencia. Gua para reducir el proceso de bsqueda. Con base al problema planteado y a los elementos disponibles, puede elegir por iniciar una bsqueda hacia adelante, atrs o mixta, as como hacer una exploracin ciega, heurstica, parcial o exhaustiva. Recomendar las opciones a elegir cuando se puedan aplicar varias. Sean las reglas: R1) SI tiene gripa ENTONCES tomar la pastilla Y. R2) SI tiene gripa ENTONCES inyectar X. Al cumplirse esta condicin las dos alternativas son viables, Cul sera la mejor? Si nos basamos en el orden, se escoger la primera, pero si definimos metaconocimiento, tendremos: R3) Usa reglas que utilicen medicamentos baratos. R4) Usa reglas que utilicen medicamentos eficientes. R5) Usa reglas que utilicen medicamentos recomendados por expertos.

166

Motor de Inferencia

167

Al considerar que: Y ms barato que la ampoyeta X. La ampoyeta X es ms eficiente que la pastilla Y. La ampoyeta X fue recomendada por el otorrino Juan T y la pastilla Y por el residente Pedro M. Las meta-reglas 4 y 5 sugieren aplicar la 2 mientras que la 3 se inclina por la 1. A cul le haremos caso? La respuesta requiere emplear otros criterios ms elevados (meta-meta-conocimiento). lo cual pudiera presentar una semejante situacin, por lo que se corre el riesgo de caer en un ciclo muy largo. meta - ............................... - conocimiento ... ... meta - meta - meta - conocimiento meta - meta - conocimiento meta - conocimiento conocimiento Por lo tanto, se debe establecer un lmite y la manera adecuada para controlar esta situacin, de tal suerte que el nivel superior de conocimiento sea el que finalmente decida cuando los anteriores fueron incompetentes. Tips para detectar errores. Definen una serie de criterios para garantizar la validez y consistencia de los elementos de la base de conocimientos, por ejemplo: R6) Nunca aplicar penicilina a pacientes alrgicos. Estimar la capacidad y limitaciones del sistema para resolver los problemas planteados. Es vital determinar la factibilidad de resolver el problema una vez planteado y en su caso, suponer el consumo de recursos para resolverlo. Por lo tanto, desde la concepcin del sistema es necesario hacer esta distincin en el tipo de conocimiento que se ha identificando, de tal forma que se registre explcitamente en la B.C.

8.7 ASPECTOS A EVALUAR


La construccin de un Sistema Experto representa un proyecto completo, sofisticado, largo y caro, que requiere la participacin de personal altamente calificado, donde hay muchos intereses de por medio (cientficos, sociales, econmicos y psicolgicos). Por esta razn no conviene arriesgar el xito del sistema sin aplicar una rigurosa evaluacin al proyecto a lo largo de su creacin y operacin, por lo que se recomiendan los siguientes aspectos: Aristas Desde el punto de vista tcnico: Arquitectura del sistema. Forma de representar conocimiento. Confiabilidad de los mecanismos de inferencia. Eficiencia de las estrategias de bsqueda. Aprovechamiento de los recursos de cmputo. Empleo de tcnicas de Inteligencia Artificial generales y propias. Para el experto: Validacin de las respuestas. Consistencia y completez del conocimiento y razonamiento empleado. Eficiencia en la solucin. Flexibilidad en las respuestas a distintos problemas. Capacidad en la solucin de problemas complejos. Comparacin de desempeo contra uno mismo.

168

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Mientras que para el usuario: Facilidad de uso. Entendimiento. Confianza. Resultados.

Principios

Los expertos humanos difcilmente pueden ser evaluados objetivamente. Un Sistema Experto es experimental esencialmente. Si algo puede salir mal, seguramente saldr. Se aprende ms de los errores que de los xitos. Sistemas complejos no pueden ser evaluados con un simple conjunto de criterios. Los intereses particulares pueden influenciar los criterios tcnicos. De ser heterogneos pueden contrariar el desarrollo del proyecto y el sistema mismo. Hay criterios muy subjetivos. Dificultad para establecer el patrn ideal de comportamiento. El conocimiento de un Sistema Experto es mucho ms limitado que el experto.

Recomendaciones El Sistema Experto debe ser ejercitado en una amplia variedad de problemas, con el nimo de hacerlo fallar. Se deben precisar los objetivos a evaluar. Determinacin de los criterios a emplear. Seleccin adecuada de los casos. Establecimiento de un estndar idneo. Tener cuidado al generalizar los resultados. Hacer la evaluacin en los momentos apropiados. Prestar atencin a la calidad y eficiencia de las decisiones y convencimientos que realiza el Sistema Experto. La claridad y facilidad en la comunicacin hombre - mquina cuando: realiza preguntas, contesta, ofrece conclusiones, justificaciones y orientaciones. El empleo de perifricos adecuados. Relacin costo - beneficio.

8.7 RECOMENDACIONES
A continuacin se expone una serie de recomendaciones tiles en la construccin de un Sistema Experto: Definicin de la tarea Elegir problemas que no involucren mucho sentido comn. Escoger aplicaciones de mediana complejidad. Definir claramente la aplicacin. Relacin con el experto Familiarizarse con el problema antes de interactuar con l. Comprometerlo y motivarlo durante el desarrollo. Tratar con prudencia sus sentimientos. Brindarle herramientas tiles para que proporcione su conocimiento. Aislarlo de los problemas y detalles tcnicos. Mantener su inters, generando buenos resultados en corto plazo.

168

Motor de Inferencia

169

Generacin del primer prototipo Identificar y caracterizar los aspectos relevantes del problema. Adoptar rpidamente los tecnicismos. Incorporar los mtodos que el experto usa. Buscar niveles intermedios de abstraccin. Si hay varias reglas semejantes, pudiera identificarse un subtema de conocimiento interesante. Escoger la herramienta que minimize los problemas de interfase entre los subproblemas. Separar el conocimiento especfico del dominio del problema. Buscar la simplificacin del mecanismo de inferencia. No esperar perfeccionar las reglas antes de iniciar la construccin de la primera versin del Sistema Experto. Iniciar la construccin del prototipo tan pronto como se tenga entendido el primer ejemplo. Escoger las tcnicas de Inteligencia Artificial ms adecuadas al problema. Incorporar rutinas de rastreo para la base de conocimiento y el mecanismo de razonamiento. Emplear herramientas que apoyen en la construccin del sistema. No preocuparse por el empleo de recursos, ni de eficacia. Poner atencin a la documentacin. Probar el sistema con una variedad amplia y adecuada de casos. Agregar una interfase hombre - mquina bsica. Incluir un mdulo para registrar los comentarios de los usuarios. Poner a consideracin del experto el comportamiento del sistema. Cuando el Sistema Experto est en condiciones adecuadas, que los usuarios lo prueben. Construccin de las siguientes versiones del sistema experto Analizar las observaciones de expertos y usuarios. Aplicar las correcciones pertinentes, dando preferencia a: errores, ajustes y adiciones. Mejorar la interfase con el usuario. Fortalecer los medios de aplicacin y justificacin. Procurar mejorar la eficiencia.

8.8 CRITERIOS DE XITO


El xito de un Sistema Experto est en funcin de la evaluacin aplicada a su estructura, operacin y resultados arrojados a la luz de los siguientes tipos de criterios: Usuarios finales UTI Amigable Convincente Confiable Eficiente Sencillo Completo y actualizado Respaldo Economa Asistencia tcnica Experto Auditable Evolutivo Eficiente Confiable Justificable til Tcnico Portable

170

Sistemas basados en Conocimiento: Una Base para su Concepcin y Desarrollo

Adaptable Modular Integridad Interfase con otros sistemas y lenguajes Recursos Tipo de equipo: mainframes, estaciones de trabajo, PCS, ... Requerimientos de hardware Ambiente de trabajo Sistema operativo Software adicional requerido para su operacin Compatibilidad con ambientes grficos Windows, Xwindows, Motif, ...

170

CONCLUSIONES

172

CONCLUSIONES
El crecimiento acelerado de la actividad humana en los mbitos comerciales, educativos, sociales, culturales y financieros, requiere la participacin de los recursos tecnolgicos que faciliten la concentracin y diseminacin del conocimiento, como lo constituyen los sistemas de informacin, las bases de datos y las redes de computadoras. El empleo de tales aplicaciones aunado a infraestructuras de comunicacin de medios masivos y de transmisin de datos como internet, provocan una explosin de conocimientos puestos al alcance del usuario en forma inmediata y sin importar el lugar en que se encuentren, barreras de idioma, nivel cultural ni posicin social. Ante esta situacin, el usuario es rebasado en su capacidad de buscar, seleccionar y asimilar la informacin y conocimiento realmente til a partir del universo a su alcance; hacindose necesario la ayuda de herramientas que puedan interpretar sus requerimientos, hacer la investigacin necesaria y filtrar el acervo disponible, presentando nicamente aquello que es relevante. Esta es una labor apropiada para aplicaciones tales como data warehouse (almacn de datos) y sistemas expertos, que al conjugarse, revelan al personal de realizar complejas labores de tratamiento de datos, informacin y conocimiento sobre grandes volmenes, brindndole los elementos debidamente seleccionados en forma resumida. Es importante que el especialista nacional participe en esta clase de investigacin, la cual ofrece altas posibilidades de aprovechamiento comercial, donde podr aplicar su talento y creatividad en la construccin de programas con un alto nivel tecnolgico. El ideal de estos apuntes es contribuir en la enseanza de los sistemas expertos, como fuente de consulta, que aunada a los textos y ctedras del profesor, colabore en la formacin del profesional informtico. Por tal motivo, sern bienvenidas las observaciones y sugerencias para corregir y mejorar su contenido, procurando la oportuna actualizacin del documento.

REFERENCIAS

176

REFERENCIAS
Bratko, I., Programming for Artificial Intelligence, Addisson Wesley, USA. Dutta, S., Knowledge Processing & Applied Artificial Intelligence, Butterworth Heinemann, USA. Efraim, T., Expert Systems and Applied Artificial Intelligence, Mcmillan Publishing, USA. Feigenbaum, E. A., McCorduck, P., La Quinta Generacin, Planeta, Mxico. Rich, E, Artificial Intelligence, 2da. Edition, McGraw Hill, USA Tabor , R., Implementing Japanese Artificial Intelligence Techniques, McGraw Hill. Winston, P H., Horn, B.K.P., LISP, 3ra. Edition, Addison Wesley, USA. Winston, Patrick Henry, Artificial Intelligence, 2da. Edition, Addisson Wesley,

Impreso en los Talleres Grficos de la Direccin de Publicaciones del Instituto Politcnico Nacional Revillagigedo 83, Centro Histrico, 06070, Mxico, D.F. Enero de 2006. Edicin: 1,000 ejemplares Diseo Portada. Alejandro Pea Ayala Fotografa de la Portada: Ranquin Inlet, 63 Norte, Expedicin al rtico Canadiense, Octubre 2005

Los Sistemas basados en Conocimiento representan una familia de aplicaciones del campo de la Inteligencia Artificial, caracterizada por el empleo de modelos para representar y manipular conocimiento. Esta clase de sistemas, se distinguen de los convencionales sistemas de informacin por estar orientados a representar funciones cognitivas del ser humano y por la metodologa empleada en su construccin. Los Sistemas basados en Conocimiento utilizan mecanismos de aprendizaje automtico, emplean estructuras para representar conocimiento, aplican procesos de inferencia, y utilizan interfaces de comunicacin hombre-mquina adecuadas a la naturaleza de la aplicacin. Mediante las aportaciones de la Inteligencia Artificial, los Sistemas basados en Conocimiento procuran sistematizar actividades especializadas en el diagnstico, toma de decisiones, interpretacin semntica, proceso inteligente, e identificacin de patrones, entre otras muchas reas. En este ejemplar, se ofrece al lector un panorama de los Sistemas basados en Conocimiento, poniendo particular nfasis en los sistemas expertos. En sus captulos se dedican a describir los componentes encargados del aprendizaje, la base de conocimientos, el motor de inferencia, la interfase y el mecanismo de evaluacin. La obra se dirige a los estudiantes, profesionistas y especialistas del mbito de los sistemas, la Informtica y la Computacin, que estn interesados en ampliar sus conocimientos para desarrollar Sistemas basados en Conocimiento con el respaldo de la Inteligencia Artificial.
ISBN. ISBN: 970-94797-4-1 #001

También podría gustarte