Anda di halaman 1dari 48

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

1. PERSPECTIVA HISTRICA Y CONCEPTUAL.


Concepto de Inteligencia Artificial.
El propsito de la Inteligencia Artificial es hacer computacional el conocimiento humano no analtico por procedimiento simblicos, conexionistas o hbridos. Para el conocimiento analtico existen otras ramas de la computacin que estudian los mtodos y tcnicas adecuadas para su representacin formal y posterior desarrollo de los programas de ordenador correspondientes. Para conseguir una visin amplia del contenido de Inteligencia Artificial se usan criterios extensionales, es decir, proporcionando una relacin lo ms completa posible de los temas que estudia la Inteligencia Artificial, junto con los criterios intensionales, que establecen las reglas de clasificacin, de forma que se pueda concluir si un problema pertenece o no al campo de la Inteligencia Artificial en funcin del conocimiento necesario para solucionarlo. En Inteligencia Artificial existen dos perspectivas bsicas: La Inteligencia Artificial como ciencia de lo natural (anlisis) La Inteligencia Artificial como ciencia de los artificial (Ingeniera de sntesis). En ambas ramas cooperan dos paradigmas, que constituyen dos formas de analizar un proceso y, esencialmente, dos metodologas de sntesis de una solucin: Computacin simblica, de grano grueso y programable. Computacin conexionista, de grano pequeo y autoprogramable por aprendizaje. La Inteligencia Artificial como ciencia de lo natural es una ciencia de anlisis, su objeto formal es el conocimiento, busca un modelo del conocimiento humano organizado en varios niveles (esttico, dinmico y estratgico) y susceptible de ser usado en prediccin. La fenomenologa de la Inteligencia Artificial es el conjunto de hechos asociado a los procesos cognoscitivos y a los principios organizacionales y estructurales que dan lugar al comportamiento humano. Por eso su objeto formal coincide en parte con el de la neurologa y la ciencia cognoscitiva y su mtodo pretende aproximarse al de la fsica, integrando teora y experimento. Como consecuencia de la evaluacin del experimento, se reformula el problema o se redisean mecanismos de inferencia y se extraen conclusiones para nuevo prototipos. La IA como ciencia busca una teora del conocimiento computable con capacidad predictiva anloga a la de una ley fsica (impersonal, comprobable experimentalmente y transferible). La Inteligencia Artificial como ciencia de lo artificial es una ciencia de sntesis que aspira a convertirse en un ingeniera. Busca un sistema que cumpla una serie de especificaciones funcionales. En Inteligencia Artificial se trabaja con informacin y conocimiento. El resultado es un programa de ordenador sobre una mquina especfica desarrollado a partir de un modelo del conocimiento que supuestamente usa el operador humano que realiza esa tarea. Las tareas de la IA de sntesis son de alto nivel y se pueden clasificar en tres grupos que en creciente son: Dominios formales Dominios tcnicos Formas bsicas y genuinas del comportamiento humano Las tareas que usan conocimiento tcnico - cientfico en dominios estrechos, admiten una representacin dentro de una jerarqua de tareas genricas de anlisis, de modificacin o de sntesis que son vlidas en muchas aplicaciones con slo modificar la parte del conocimiento. Lo caracterstico de estas tareas es lo limitado del conocimiento que manejan y la posibilidad de formalizar el conocimiento con las tcnicas disponibles. Las tareas en dominios estrechos dan lugar a la Ingeniera del Conocimiento que se desconecta de las races de la IA buscando procedimientos de sntesis con las siguientes facetas: Parte de la descripcin de tareas a nivel de conocimiento (Allen Newell). Para ello es necesario realizar un proceso de obtencin de ese conocimiento a partir del experto humano que lo posee. Se busca una representacin de ese conocimiento separndolo de los mecanismos de aplicacin del mismo de forma que puede acumularse por procedimientos incrementales. Seleccionar las tcnicas adecuadas para su implementacin y desarrollar un primer prototipo con la ayuda de ciertas herramientas para la adquisicin del conocimiento y de entornos de programacin. Se hace nfasis en el carcter de ingeniera buscando procedimientos sistemticos de implementacin, evaluacin y refinamiento de los mismos. Estos procedimientos deben ser explcitos, reproducibles y parcialmente independientes del dominio. Se usan lenguajes y entornos de programacin que faciliten el desarrollo rpido y eficiente de aplicaciones. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

El conjunto de tareas que estn asociadas al comportamiento humano inespecfico buscan la sntesis de las funciones que la neurofsica y psicologa cognoscitiva usan para describir el comportamiento humano.

Idea intuitiva del comportamiento artificial.


El concepto de inteligencia est sacado de la psicologa cognoscitiva y pertenece a una familia ms amplia de construcciones tericas para ayudar en la descripcin del comportamiento observable de sistemas complejos en interaccin con su medio. Hablar de Inteligencia Artificial en este sentido supone querer comprender y duplicar el comportamiento humano. Algunas de las caractersticas son: Aparente simplicidad del ser vivo. Enorme complejidad de los procesos cognoscitivos elementales que se quieren sintetizar. Uso masivo de conocimiento, suponiendo que los mecanismos de inferencia por encadenamiento de reglas son insuficientes para modelar tareas cognoscitivas. Toda computacin artificial es extensional, por el contrario hay evidencias sobre el carcter intensional (por propiedades) e intencional (por propsitos) de la computacin biolgica, donde la inferencia es inmediata (refleja). El reconocimiento (segn Maturana y Varela) de que todo conocer depende de la estructura que conoce (lo cognoscitivo es propio de lo vivo). La hiptesis fuerte de la IA es hacer computacional este conocimiento propio de lo vivo (reducir los procesos cognoscitivos a un nivel simblico). En un diagrama funcional de un agente inteligente (Newell y Simon), el agente interacciona con su medio a travs de un conjunto de sensores. Posteriormente se realiza un procesamiento multisensorial de alta semntica con referencia a contenidos de memoria a la que se llama percepcin. El objetivo de ambos procesos es identificar al medio de acuerdo con un modelo de representacin interna que permite comprender el significado de imgenes y palabras. El agente realiza tambin tareas motoras que inciden en el medio, suelen ser acciones de semntica baja o media. El grado de semntica de una seal es proporcional a la capacidad operacional del smbolo que transporta. Entre estas dos familias de tareas (perceptuales y motoras) existe un conjunto intermedio de tareas de decisin que trabajan entre espacios de representacin, sin conexin directa con el medio. Incluyen los procesos cognoscitivos asociados al pensamiento y al lenguaje. Para la realizacin de estas tareas el agente posee un modelo del medio y un conjunto de propsitos y para alcanzar sus metas usa el principio de racionalidad (segn Newell). El principio de racionalidad no es operacional, es decir, nos dice que hacer pero no como hacerlo. Cada vez que se encuentra un procedimiento efectivo para identificar, capturar y representar de forma computable el conocimiento necesario para la sntesis no trivial de esas tareas de percepcin, decisin o planificacin motoras tenemos un sistema de IA. El problema de la IA aplicada es pasar del nivel de especificaciones al nivel de componentes. Toda la computacin termina en el nivel fsico de la electrnica digital. La clave de la Inteligencia Artificial es conseguir programas traductores intermedios que condenen las primitivas de bajo nivel con las del lenguaje de representacin cada vez ms prximo al lenguaje natural. Los criterios intensionales permiten distinguir las fronteras de la Inteligencia Artificial con las otras ramas de la computacin. Tenemos un problema de Inteligencia Artificial siempre que: No exista una solucin analtica o algortmica conocida. Si existe la solucin pero la explosin combinatoria la hace ineficiente. Si el conocimiento necesario es masivo, incompleto, complejo y difcil de representar. Siempre que se abordan tareas cognoscitivas que usen conocimiento de sentido comn. Se dice que se tiene una tcnica de solucin propia de la Inteligencia Artificial cuando: Utiliza una estructura de tareas genricas que permite capturar los aspectos generales del problema y de sus procedimientos de solucin de forma que las situaciones individuales se tratan por los mtodos asociados a las clases a las que pertenecen. Usa heursticas que intentan capturar el conocimiento accesible del dominio. Separa el conocimiento de su uso en inferencia y hace nfasis en el primero. Permite manejar el razonamiento impreciso y temporal. Incluye algn tipo de aprendizaje : Simblico o Conexionista. Sin aprendizaje no hay Inteligencia Artificial. Los lmites de la Inteligencia Artificial pueden encontrarse, en los siguientes puntos: a. Desconocimiento del operador humano. b. Falta de teora (principio organizacionales y estructuras). c. Diferencias entre el nivel fsico de la computacin y el de los seres vivos. No se puede afirmar que la mente es reducible a computacin si no se conoce como funcionan las neuronas biolgicas, ni cmo est organizado el cerebro. La metfora computacional supone que todos los procesos pueden Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

moldearse mediante dos espacios de representacin (el de entradas y el de salidas), y un conjunto de reglas de transformacin que proyectan configuraciones del espacio de entradas en las configuraciones correspondientes del espacio de salidas. Por otro lado la Inteligencia Artificial de sntesis no tiene porqu depender de la comprensin de lo vivo, es decir, una forma alternativa y eficiente de extender los lmites de la Inteligencia Artificial es desarrollarla como ciencia y tecnologa de lo artificial, sin referencia directa con la biologa. Entonces se deben resolver las cuestiones siguientes: 1. Modelado y representacin del conocimiento a nivel estratgico, de tareas genricas de tipos de inferencia y de entidades y relaciones propias del dominio usando nuevos lenguajes de representacin ms prximos al lenguaje natural. 2. Bsqueda de nuevos principios de autoorganizacin capaces de generar estructuras simblicas robustas y de amplio uso a partir de entradas de informacin ms desorganizadas y fragmentadas. 3. Desarrollo de lenguajes de programacin que permitan cierto nivel de autoprogramacin. 4. nfasis en las teoras computacionales del aprendizaje tanto simblico como conexionista o hbrido.

Perspectiva histrica de la Inteligencia Artificial.


Etapa Neurociberntica.
La Inteligencia Artificial comenz a ser computacional cuando Warren S. McCulloch y Walter Pitts introducen el primer modelo formal, formado por una funcin lgica seguida de un retraso y donde se sustituye la programacin por el aprendizaje. Una red de neuronas formales es equivalente a una mquina de Turing de cinta finita. Si la red es programable, entonces es equivalente a una mquina universal. Las ideas bsicas de esta poca se basan en considerar que los seres vivos y las mquinas pueden ser comprendidas usando los mismos principio de organizacin y las mismas herramientas formales. La aproximacin entre ambos debe realizarse a nivel de procesador, de forma que para estudiar como computa el cerebro, hay que estudiar las neuronas biolgicas, modelarlas formalmente, construir redes y ver como surge el comportamiento a partir de procesos locales de autoorganizacin, memoria asociativa y aprendizaje. Tres trabajos fundacionales del movimiento son: Conducta, Propsito y Teologa, (Rosemblueth, Wiener, Bigelow). Introducen tres conceptos importantes; la realimentacin como principio de organizacin, la computacin por propsitos y la idea de informacin como forma pura, separable de la seal fsica que la transporta. La conducta de un sistema debe interpretarse por sus objetivos y de cmo alcanzarlos mediante la realimentacin negativa que compara el estado actual con el deseado corrigiendo la actuacin. El trabajo de Wiener (Cybernetics) complementado por Shannon, establece que lo importante en el control y en la comunicacin es la informacin que es pura, sin dimensin, al igual que la computacin separada de la mquina (Turing) y el conocimiento. El significado de la informacin y el conocimiento slo existe en el dominio del observador. Clculo lgico de las ideas inmanentes en la actividad nerviosa (W.S. McCulloch, W. Pitts). Trabajo que inicia la Teora Neuronal del Conocimiento, esta etapa de la Inteligencia Artificial busca la solucin de los problemas a nivel fsico. Da comienzo a la teora modular de autmatas y usa la lgica como forma de representar el conocimiento. En esta poca aparece la intencionalidad ya que hay aspectos del pensamiento humano asociados al clculo intensional (comprensin) y al uso de propsitos para guiar las acciones. Naturaleza de la explicacin (K. Craik). Interpreta la actividad del sistema nervioso en trminos de un conjunto de procesos que construyen una representacin del medio que permite predecir. Contribuye a la Inteligencia Artificial con dos aportaciones: razonamiento abductivo y espacio de representacin. La inferencia en la Inteligencia Artificial est asociada a tres tipos de razonamiento: Deduccin lgica a partir de un conjunto de frmulas (axiomas) sobre las que se aplican un conjunto de reglas o demostraciones, se consiguen nuevas frmulas vlidas. Permite pasar de lo general a lo particular con certeza del resultado obtenido. Su punto dbil es la necesidad de conocer con precisin el conjunto de axiomas que define el dominio. Inferencia inductiva, pasa de lo particular a lo general, se usan heursticas con conocimiento del dominio, nunca se puede garantizar la completitud y certeza de la inferencia. Razonamiento inductivo, a partir de una conclusin conocida se busca un hecho que la explique. Trata situaciones en las que se conoce una relacin causa efecto y un suceso, y, se debe lanzar una hiptesis sobre su causa ms probable. Segn Craik: Nuestra pregunta no es qu es implicacin o causalidad, sino cul es la estructura y los procesos necesarios para que un sistema mecnico sea capaz de imitarlos correctamente y predecir sucesos del mundo externo, a la vez que crear nuevas entidades. El segundo punto de la obra de Craik es un mecanismo de razonamiento por analoga en el modelo del medio donde la implicacin formal es el equivalente a la causalidad en el mundo fsico. Distingue tres procesos: Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

1. Traslacin de los procesos externos a smbolos en un espacio de representacin. 2. Obtencin de otros smbolos mediante inferencia en el modelo del medio que paraliza la causalidad externa. 3. Retraslacin a esos smbolos transformados al dominio de sus referentes externos (prediccin). La caracterstica fundamental de un Sistema Basado en el Conocimiento (SBC) es su poder para modelar sucesos basados en dos tipos de smbolos: nmeros y palabras. La propuesta de Craik es que la codificacin de estos smbolos no es arbitraria, sino que mantiene su identidad desde la entrada sensorial a la salida motora. La Inteligencia Artificial en su primera etapa neurociberntica aborda los siguientes temas: Redes de neuronas formales. Algoritmos de anlisis y sntesis. Aprendizaje por ajuste de parmetros. Tolerancia a fallos. Modelos de memoria asociativa. Reconocimiento de caracteres Aprendizaje asociativo y por refuerzo. Desarrollos en Teora Modular de Autmatas. Codificacin y Teora de la Informacin Principios Organizacionales: Autoprogramacin. Autorreproduccin Programas programadores Traduccin automtica. Comprensin del Lenguaje Natural

Etapa de la computacin de Platn a Turing


Dreyfus sugiere que la Inteligencia Artificial comenz en Grecia alrededor del ao 450 a.C. cuando Socrates pregunta por un conjunto de reglas de decisin definidas de forma que en cada momento se puede calcular la respuesta del sistema calculando esas reglas a la entrada. Hobbes (1.588-1679) afirma que el pensamiento (razocinio) consiste en ejecutar operaciones simblicas siguiendo de forma metdica un conjunto de reglas de decisin. Descartes (1.566-1650) descubre el carcter invariante de la matemtica para representar el conocimiento. Intenta formalizar el razonamiento usando tres procesos: enumeracin, deduccin e intuicin, siendo este ltimo el ms difcil de mecanizar. Leibniz (1.646-1716) introduce el concepto de programa y de programacin. Boole (1815-1860) introduce el modelo lgico haciendo nfasis en la separacin de smbolos y nmeros y en la posibilidad de usar los primeros como objetos de clculo. Un aspecto importante de los desarrollos en Inteligencia Artificial es el de intentar mantener las ventajas del modelo lgico y disminuir los inconvenientes que supone su carcter binario e invariante de sus valores. La lgica borrosa, la probabilstica y las extensiones del razonamiento no montono y temporal son muestra de ello. Las contribuciones de Von Newman a la computacin numrica y a la Inteligencia Artificial fueron extraordinarias y se pueden esquematizar en: Arquitectura de computadores Teora modular de autmatas Redes neuronales y teora del cerebro. Su trabajo dentro de EDVAC posee dos aportaciones bsicas a la computacin. Por un lado separa el diseo lgico (arquitectura de computadores) de las realizaciones fsicas de la mquina. Define la arquitectura bsica que an persiste. Su diseo lgico utiliza neuronas formales tipo McCulloch-Pitts demostrando la equivalencia entre la Mquina de Turing y las redes neuronales. Adems plante las siguientes cuestiones fundamentales: Reformulacin de la Mquina de Turing en Autmatas Celulares. Autoprogromacin Autoreproduccin y Evolucin Tolerancia a fallos y Estabilidad Lgica ante cambios de funcin local Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

Alan Turing tiene dos contribuciones bsicas a la computacin y a la Inteligencia Artificial: Un Modelo Computacional Universal (Mquina de Turing) Un procedimiento experimental de medir la I.A. de un programa (test de Turing) La Mquina de Turing es un mquina matemtica, todo proceso que se describe de forma clara, completa, precisa e inequvoca en lenguaje natural puede representarse mediante un autmata. A partir de esta representacin se puede encontrar una secuencia de instrucciones que al operar sobre smbolos codificados genera un programa ejecutable en cualquier computador. Desde este punto de vista todas las arquitecturas son equivalentes, y sus diferencias son los factores de complejidad, tamao, tiempo, eficacia o recursos. El test de Turing parte de un operador humano, un programa de ordenador y un interrogador que realiza un conjunto de preguntas, y compara las respuestas de ambos. Si de la comparacin de las respuestas el observador no es capaz de distinguir que informacin corresponde al operador humano y cual al programa de Inteligencia Artificial, se dice que para esa tarea en ese dominio se supone el mismo nivel de inteligencia a ambos operadores. Moov, modific el esquema en trminos de acumulacin de evidencia inductiva, a partir de una serie de crticas, la ms fuerte es sobre el carcter conductista del test de Turing. La contestacin adecuada a esta crtica es la de considerar el test ms que una medida de inteligencia como un procedimiento de recoger y acumular evidencias inductivas acerca de la eficacia del programa para resolver un problema. Esta interpretacin inductiva elimina parcialmente la crtica de Searle sobre la diferencia entre el conocimiento superficial (diccionario) y el profundo. Este segundo caso supone que el agente debe comprender el significado del mensaje a nivel semntico generando otro mensaje en otro lenguaje, con el mismo significado, sin referencia a la sintaxis del mensaje de partida. El segundo tipo de crtica hace referencia a la falta de severidad del test. Imitar no es muy complicado y la eficiencia en tareas formales y tcnicas para dominios estrechos y modelables no justifica el carcter cognoscitivo (humano) de la computacin en Inteligencia Artificial. Toda la informacin est estructurada, todo el proceso est programado y hay poco lugar para el aprendizaje. La capacidad de aprendizaje de un programa es la siguiente medida importante para evaluar el nivel de Inteligencia Artificial.

Bsqueda Heurstica y Dominios Formales.


El primer trabajo resultado de la bsqueda de esquemas universales de deduccin fue el programa Logic Theorist que demostr las posibilidades de la Inteligencia Artificial en el campo de los dominios formales. En esta poca comienza la preocupacin por Lenguajes para procesar informacin, ms orientados al manejo de smbolos que al clculo numrico (Lisp). Otro trabajo representativo es el programa GPS [solucionador general de problemas] (Newell, Shaw y Simon). Es un programa que incorpora medios heursticos, utilizando la metodologa de anlisis medios - fines, seleccionando una secuencia de operadores que haga disminuir la diferencia entre el estado inicial y el estado meta hasta anularla. Todos los trabajos de esta poca (1956-196x) se centran en problemas de dominios formales, idealizacin del mundo real. En todos los casos la Inteligencia Artificial se entiende como bsqueda en un espacio de estados sin conocimiento del dominio, haciendo nfasis en los mtodos de control de la bsqueda. Actualmente se intenta recuperar las propuestas iniciales del GPS, el propsito es separar los aspectos estructurales comunes al procedimiento de solucin de una clase general de problemas, del conocimiento especfico de una tarea particular: Arquitecturas SOAR. Metodologas basadas en una estructura de tareas genricas. Nuevos paradigmas multiestrategia en aprendizaje simblico. A mediados de los sesenta aparecen cambios en la orientacin de la Inteligencia Artificial dando cada vez ms importancia al conocimiento del dominio y por consiguiente a los problemas asociados a su representacin y posterior uso en inferencia, donde se separan conocimiento y uso del mismo. En esta poca se inician los estudios del lenguaje natural, limitando sus dominios, para conseguir un modelo completo de las estructuras y procesos de ese dominio. Aparece la llamada falacia del primer paso (Dreyfus) ya que aunque se supona que todos los programas eran un primer paso para la comprensin del lenguaje natural, nunca lleg el segundo paso, que lo hizo va los sistemas basados en el conocimiento. McCarthy realiz un trabajo sobre programas con sentido comn, donde afirmaba: podemos decir que un programa tiene sentido comn si deduce de forma automtica y por si mismo una clase suficientemente amplia de consecuencias inmediatas de cualquier cosa que se le dice y l ya conoce.

nfasis en el conocimiento (1.97x - 198x).


La complejidad de los problemas que aborda la Inteligencia Artificial aconseja combinar todas las tcnicas de representacin, integrando el simbolismo con las redes neuronales. La segunda idea que caracteriza esta segunda etapa de la Inteligencia Artificial es que no basta con el nfasis del conocimiento sino que adems la Inteligencia Artificial de sntesis (ingeniera) debe centrarse en tareas cientfico - tcnicas en dominios estrechos donde se pueda abarcar el conocimiento de Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

forma completa y sin influencia del sentido comn. Se habla as de motivacin inteligente, clasificacin basada en el conocimiento, consejeros de terapia mdica, sistemas de supervisin y deteccin de alarmas, etc. El nacimiento de los Sistemas Basados en el Conocimiento y los Sistemas Expertos ocurre en una poca dominada por dos preocupaciones: nfasis en la representacin computacional del conocimiento para tareas del mundo real. El conocimiento especfico del dominio es poder. Seleccin de tareas tcnicas en dominios estrechos (Sistemas Expertos) donde se separa el conocimiento de sus mecanismos de aplicacin (inferencia).

Representacin del conocimiento.


El problema de la representacin del conocimiento sigue abierto tanto en la Inteligencia Artificial terica, (qu es?, relacin entre el conocer y la estructura de lo que se conoce) como en la Inteligencia Artificial de sntesis (qu representacin es mejor?, cul permite un uso eficiente del conocimiento?, cmo abordar la semntica?, cmo profundizar el razonamiento?), la conclusin de esta etapa es una propuesta de representacin modular e hbrida que incluye aspectos de los cuatro procedimiento bsicos: lgica, reglas, redes asociativas y marcos (objetos estructurados). En esta poca se considera al conocimiento como algo transportable desde la cabeza del experto humano a la memoria del computador. La visin actual considera el problema de la representacin formal del conocimiento como un proceso de modelado o de reconstruccin de lo que se supone que sabe el experto humano, estructurado en varios niveles. El uso de la lgica para representar el conocimiento tiene como ventajas la semntica, expresividad y la eficacia de sus procesos deductivos. Sus inconvenientes provienen de la falta de estructuracin del problema de la completitud y de la existencia de problemas en los que la conclusin se obtiene por defecto, sin garantizar que los resultados son ciertos. Esta ruptura de la monotona (suposicin usual en lgica) ha dado origen a la bsqueda de nuevos formalismos para el razonamiento no montono, que junto al aproximado, el temporal y el cualitativo han dado lugar la estado actual de las investigaciones. Para intentar solucionar el problema de la ineficiencia de las representaciones lgicas surgen las representaciones basadas en reglas, sacrificando expresividad por eficiencia. Estos sistemas aportan un nuevo paradigma de programacin. Parten de la idea de que todo el conocimiento relevante para realizar una tarea puede representarse mediante un conjunto de condicionales. El resultado de aplicar la regla produce nuevos hecho y activa otras reglas, de forma que el razonamiento est asociado a ese encaminamiento de reglas. Las redes semnticas (Ros Quillian) son un modelo de memoria asociativa adecuado para la representacin computacional del conocimiento necesario para la comprensin y traduccin del lenguaje natural. Selts (1.922) en su teora de la anticipacin esquemtica propuso una organizacin relacional del conocimiento en trminos de redes de conceptos (nodos) enlazados por relaciones (arcos) y con herencia de propiedades. Quillian retom esta lnea; la base de conocimientos en una gran red de nodos (significado de palabras) interconectadas por diferentes tipos de arcos asociativos. Las redes asociativas engloban a las redes semnticas, siendo estas ltimas un caso particular que hace referencia a su origen, como forma de representar el significado (semntica) de las palabras en lenguajes naturales. Las tres caractersticas que distinguen los distintos tipos de redes son: Tipo de conocimiento representado. Mtodo de inferencia. Forma de abordar el problema del aprendizaje. Los marcos (Minsky) como forma de representacin del conocimiento suponen que el sistema nervioso organiza su experiencia perceptiva y su memoria en trminos de un conjunto de esquemas que describen de forma estructurada nuestro conocimiento sobre un conjunto de situaciones reales, de forma que al usarlos para razonar se acepta gran cantidad de conocimiento implcito con el que se rellenan los campos que quedan sin especificar. Una caracterstica importante de los marcos es su ordenacin jerrquica, los marcos - nodos inferiores no slo heredan las propiedades de sus superiores sino que pueden heredar tambin valores y mtodos asociados a estas propiedades. Los guiones y planes son anlogos a los marcos, slo que hacen referencia a estructuras que describen secuencias temporales de sucesos. El ser humano organiza su conocimiento en trminos de millones de marcos, guiones y planos que usa constantemente en todas sus tareas(Schank, Minsky). Los avances desde 1.980 hasta nuestros das se resumen en los siguientes puntos: Mayor rigor en los desarrollos tericos. nfasis en las representaciones declarativas frente a las procedimentales. Intento de formalizacin e integracin de los distintos tipos de razonamiento. Se camina hacia una teora unificada del conocimiento. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

Renacimiento del conexionismo y surgimiento de las redes bayesianas. Manejo de grandes bases de conocimiento, lo que exige el desarrollo de mtodos automticos de adquisicin y actualizacin (aprendizaje).

Sistemas Basados en el Conocimiento y Sistemas Expertos.


Cuando en un sistema se hace uso intensivo del conocimiento del dominio y se separa de los mecanismos que controlan su uso en inferencia, se tiene un SBC. Dentro de los SBC hay un grupo de sistemas en los que el conocimiento procede de un experto humano especializado en una tarea concreta en un dominio tcnico, se tiene entonces un S.E. El desarrollo de los mtodos bsico de representacin del conocimiento ha caminado paralelo al desarrollo de los sistemas expertos. Cada forma de representacin est asociada histricamente al primer sistema que la us. Las caractersticas fundamentales de un S.E son: Dominio reducido Competencia en su campo Separacin conocimiento/inferencia Capacidad de explicacin Flexibilidad en el dilogo Tratamiento de la incertidumbre. En la primera poca los mdulo bsicos de un S.E. eran la base de hechos ciertos, la base de conocimientos, el mecanismo de inferencia, una base de datos convencional y un mdulo de explicacin y dilogo (esquema que corresponde a un sistema basado en reglas). Si la representacin del conocimiento se hace usando marcos o redes semnticas, la estructura no se corresponde claramente con estos mdulos. Una conclusin importante de esta etapa de la Inteligencia Artificial es que los sistemas basados en reglas constituyen un procedimiento efectivo de representacin y uso del conocimiento distinto de la programacin convencional. La computacin se realiza identificando y aplicando la regla adecuada a un hecho. Despus, se estudia si como consecuencia de la aplicacin, se ha resuelto el problema, y en caso contrario, buscar una nueva regla cuyo campo de condicin se adapta al campo de accin de la anterior. Como consecuencia se altera el contenido de la memoria dinmica del sistema. Esta forma de programar supone dos cambios esenciales Todo conocimiento debe representarse de forma modular y declarativa. En el modelado se debe cuidar el contenido asignado a los campos de condicin y accin de cada regla porque ah se construye el conocimiento que guiar el encadenamiento de las reglas. Las caractersticas bsicas de todos los Sistemas Expertos son: Seleccin de un dominio limitado del conocimiento. Evidencia de que el conocimiento esencial no es de carcter general sino especfico del dominio. Separacin entre el conocimiento y el mecanismo de aplicacin del mismo. Validez de las reglas como forma de representar el conocimiento, sin necesidad de modelar el proceso de pensamiento del experto humano. 5. Validez del razonamiento por encadenamiento de reglas. 6. Tratamiento del problema de la incertidumbre mediante mecanismos sencillos y eficientes. 7. Capacidad de explicacin del razonamiento seguido para alcanzar la meta. 8. Mencin de conceptos como las metarreglas y adquisicin del conocimiento como tareas genricas en I.A. Las metarreglas (reglas sobre la utilizacin de otras reglas) se introducen con tres fines: construir la base de conocimientos mediante un dilogo con el experto humano, guiar el razonamiento mediante objetivos explcitos y mejorar la capacidad de explicacin a partir de dichos objetivos. Las tendencias actuales en el campo de los Sistemas Expertos son: Desarrollo de los Sistemas Expertos con una metodologa establecida, usando entornos comerciales y aceptando los mtodos usuales de representacin e inferencia. Desarrollos tericos en temas frontera relacionados con la extensin de los mtodos de representacin y razonamiento nfasis en el aprendizaje y renacimiento del conexionismo. 1. 2. 3. 4.

Aprendizaje y renacimiento del conexionismo.


La Inteligencia Artificial empez siendo conexionista, los primeros trabajos estn relacionados con la sntesis de redes neuronales artificiales. Aprender era modificar parmetros de un sistema para mejorar su comportamiento. Esta mejora se meda mediante una funcin del error resultante de comparar la respuesta obtenida con la deseada. En la ltima dcada renacen las redes neuronales como alternativa a la Inteligencia Artificial Simblica, dando gran importancia al aprendizaje. Aprendizaje El aprendizaje ha estado dominado por la perspectiva simblica, siendo su fuente de inspiracin el aprendizaje cognoscitivo que estudia la formacin de conceptos, la solucin de problemas, el razonamiento por analoga y los procesos Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

inductivos, en los que se generaliza y traslada lo aprendido en casos particulares y el aprendizaje creativo, por discernimiento. La idea general de aprendizaje es la acumulacin de conocimientos. Un programa aprende cuando es capaz de acumular conocimiento sobre una tarea, para ello se deben representar como cambios en estructuras de datos y algoritmos. Una buena teora del aprendizaje comienza con la bsqueda de representaciones plsticas que admitan cambios adaptativos como consecuencia del entrenamiento. Este problema general se puede dividir en tres: tareas perceptivas, de organizacin central (decisin) y de planificacin motora. El aprendizaje en percepcin incluye el reconocimiento de caracteres y la formacin de conceptos. Hace falta mucho conocimiento inicial para que un programa pueda empezar a aprender. El aprendizaje en planificacin incluye aspectos complementarios de la percepcin. Se parte de conceptos centrales en un modelo del medio (planes) y se programa un generador de acciones elementales. La percepcin es la imagen especular (simtrica) de la planificacin y la accin (percepcin y planificacin deben estar integradas). El aprendizaje de organizacin central incluye aspectos como la adquisicin automtica de nuevo conocimiento declarativo y su integracin en una organizacin interna, la puesta al da de una base de conocimiento y los cambios en los mecanismos de inferencia. Considerando el aprendizaje central como el cambio en los mecanismo de razonamiento, hay tres paradigmas bsicos: inductivo, deductivo y abductivo. En el aprendizaje inductivo los cambios en las estructuras de datos y algoritmos van encaminadas a la generalizacin del conocimiento extraible de los ejemplos usados en el entrenamiento. Ese proceso est guiado por criterios heursticos. Si se dispone de mucho conocimiento del dominio no es necesario mucho entrenamiento, se tiene una estrategia de aprendizaje basado en casos (CBL). El aprendizaje deductivo est asociado a situaciones en las que se dispone de un conocimiento general bastante completo y unas reglas de inferencia para obtener casos bajo la ley y explicar el proceso deductivo. Al tener que encontrar teoras completas se debe complementar con otras estrategias inductivas o abductivas. El aprendizaje por analoga (Craik, 1.943) est basado en la bsqueda de correspondencias entre entidades y relaciones pertenecientes a dos dominios (fuente y diana). Estas correspondencias se usan para trasladar los razonamientos del dominio fuente al dominio diana. La analoga al igual que la induccin se basa en realizar una suposicin sobre una generalizacin, se elige el caso ms cercano al que se debe resolver. El aprendizaje abductivo busca un procedimiento para proponer y seleccionar las hiptesis que mejor expliquen las conclusiones conocidas. La eleccin, tambin de naturaleza inductiva, est asociada a las hiptesis y tiene el carcter de una explicacin. El estado actual del aprendizaje computacional esta marcado por dos tendencias complementarias: 1. Desarrollo de sistemas multiestrategia, basados en la comprensin de las funcionalidades y las condiciones de aplicacin de las distintas estrategias individuales y en la cooperacin de estas en funcin del tipo de problema. 2. Desarrollos tericos y metodolgicos distinguiendo entre las funcionalidades en el dominio propio y en el del observador y proponiendo un nivel de procesos comunes en trminos de los que las distintas estrategias son equivalentes. Conexionismo El crecimiento de la computacin simblica y el reconocimiento de las limitaciones de las redes neuronales formales frenaron el conexionismo a finales de los 60. En una etapa intermedia (1.970-1.980) se sigue trabajando en el conexionismo a nivel de redes probabilsticas, memorias asociativas, reconocimiento de caracteres, aprendizaje por refuerzo, etc. El salto cualitativo del conexionismo se produce en los 80 con las propuestas de Rumelhart y Barto. Permanece el concepto inicial de red neuronal pero con la diferencia de la sustitucin de la funcin umbral por una funcin derivable que permita la retropropagacin de la funcin de error que gua el aprendizaje supervisado por el mtodo del gradiente. El contenido en extenso de la Inteligencia Artificial conexionista aborda los siguientes temas: Conexiones con la neurociencia Modelos de computacin distribuida y autoprogramable Bsqueda de arquitecturas multicapa e incremetales y genticas que faciliten la cooperacin y la autoorganizacin de forma anloga a los propuestos por la IA distribuida. Estudio del aprendizaje supervisado y no supervisado. Conexin con el aprendizaje simblico. Desarrollo de neurosimuladores Implementacin de redes como arquitecturas paralelas de propsito especial. Aplicaciones, percepcin y control.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

2. ASPECTOS METODOLGICOS EN IA.


Niveles de computacin.
Ante la complejidad de un sistema, tanto en tareas de anlisis como de sntesis es til realizar las descripciones usando una jerarqua de niveles que permitan segmentar la complejidad. Cada nivel de descripcin est caracterizado por una fenomenologa , un conjunto de entidades y relaciones y unos principios organizativos y estructurales propios. Un nivel tambin se caracteriza por la existencia de un conjunto de restricciones que limitan su capacidad. Todos los niveles estn parcialmente cerrados en su organizacin y su estructura lo que permite la estabilidad del nivel y su inclusin en una jerarqua en la que cada nivel enlaza con el inferior mediante un proceso de reduccin y con el superior mediante procesos de emergencia que para ser comprendido precisan de la inyeccin de conocimiento por parte de un observador externo. Las caractersticas especfica de los distintos procesos de emergencia y reduccin dependen del dominio. La teora de niveles en la computacin fue introducida por D. Marr y A. Newell, previamente Chomsky introdujo los conceptos de competencia y ejecucin para distinguir los lenguajes naturales de los sistemas arbitrarios y formales de manipulacin de smbolos. Todo nivel de computacin admite una representacin general en trminos de un espacio de entradas, un espacio de salidas y un conjunto de reglas de transformacin que enlazan las representaciones en ambos espacios de representacin. El espacio de entradas en un espacio multidimensional de las caractersticas del proceso que se consideran relevante. El espacio de salidas tambin es multidimensional, en el que se seleccionan los resultados de la computacin en funcin del tiempo, las entradas y reglas de transformacin del proceso de este nivel. La computacin de un nivel se completa con las descripciones de las transformaciones que producen nuevos valores en el espacio de salidas a partir de la secuencia de valores previos en ambos sentidos. Los tres niveles de computacin que propone Marr comienzan a tener una clara comprensin de lo que se debe calcular y como se debe hacer. No basta pues, el conocimiento de la computacin a nivel de procesador, ni el nivel de algoritmos y estructura de datos, debe existir un nivel adicional de comprensin que analice y comprenda los mecanismos y estructuras particulares que se implementan en nuestros cerebros. Sustituyendo cerebro por computador se tiene cmo analizar o sintetizar una tarea computacional. NIVEL 1: Teora computacional de la tarea a nivel genrico incluyendo cul es el objetivo de la computacin, por qu es apropiado y cul es la lgica de la estrategia adecuada para implementarlo.

NIVEL 2: Representacin y algoritmo. Cmo puede implementarse esta teora de clculo? (espacios simblicos de representacin de las entradas y salidas y algoritmos que los enlazan) . NIVEL 3: Implementacin en un soporte fsico del nivel 2 (entornos software y nivel hardware.

Para una tarea concreta los tres niveles de descripcin estn relacionados, cuando se baja de nivel se pierde informacin, ya que no hay un representacin nica de ese nivel. La hiptesis fuerte de la Inteligencia Artificial es que a pesar de estas prdidas de semntica es posible hacer computacional la inteligencia humana.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

10

Nivel del conocimiento de Allen Newell


La coincidencia con la clasificacin de niveles de Marr no es total, ya que existen muchos modelos descriptibles a nivel de conocimiento, que no se disponen de teora. Newell introdujo el nivel de conocimiento por encima del nivel simblico que caracteriza el comportamiento de un sistema. La clave del nivel es su carcter abstracto, genrico e independiente del dominio y del lenguaje usado para representar el conocimiento. Clancey (1.993) seala el carcter relativista de las descripciones en el nivel de conocimiento. Son las descripciones de un agente en su medio, y permiten predecir el comportamiento del sistema en situaciones semnticamente anlogas. La computacin intencional (a nivel de conocimiento) es invariante ante cambios en la representacin a nivel simblico, de la misma forma que una computacin a nivel simblico es invariante ante cambios en el nivel de implementacin. Newell plantea tres objetivos: Razonar acerca de la naturaleza del conocimiento. Proponer la existencia de un nivel especfico del conocimiento cuyas entidades bsicas son las creencias, objetivos, planes y el principio de racionalidad, que conecta causalmente con las acciones. Descripcin de este nivel y sus conexiones con los niveles inferiores (simblicos y de implementacin). Para poner el nivel de conocimiento en relacin con el simblico y al de implementacin introduce cinco aspectos para caracterizar los niveles: SISTEMA NIVEL de CONOCIMIENTO NIVEL SIMBOLICO Agente Inteligente Visin del programador de ordenador E. Digital + Arquitectura de Computadores MEDIO Conocimiento COMPONENTES OPERADORES Los usados por el lenguaje natural Designacin Asociacin LEYES DE COMPORTAMIENTO Principio de racionalidad. Interpretacin fija

NIVEL DE IMPLEMENTACIN

Metas Acciones Intenciones Smbolos y Operadores y expresiones memorias (Primitivas del lenguaje) Vectores Registros Booleanos y ALUs Estados lgicos Decodificadores de puertas de Instrucciones

Algebra de Boole

Teora de Autmatas

El principio de racionalidad o principio de causalidad semntica dice: Si un agente conoce que una de sus acciones conducir a sus metas, entonces seleccionar esta accin. Conocimiento es cualquier cosa que se pueda adscribir a un agente de forma que su conducta se puede calcular usando el principio de racionalidad. Desde la perspectiva de la Inteligencia Artificial aplicada, el problema es encontrar un procedimiento para reducir el nivel de conocimiento al nivel simblico. Es decir, pasar de las descripciones en lenguaje natural a un lenguaje accesible al nivel simblico, donde el principio de racionalidad, las metas, las creencias y las acciones se proyectan en estructuras de datos y algoritmos. Para facilitar el proceso de reduccin se estn buscando entidades de nivel intermedio como la teora de agentes cooperativos (descomposicin, segmentacin y especializacin), las estructura de las tareas genricas y la metodologa KADS entre otras.

El agente observador y los dominios de descripcin.


La introduccin de la figura del observador proviene de la fsica, al reconocer la existencia del mismo en la computacin se introduce la idea de distintos sistemas de referencia. Las descripciones de las observaciones de una computacin a nivel fsico o simblico deben de hacerse en dos sistemas de referencia, uno para cada nivel. Al dominio que los engloba se le denomina dominio propio (DP) o autocontenido. El otro dominio es el dominio del observador que usa el lenguaje natural para describir y dotar el significado de los procesos del dominio propio.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

11

En las descripciones de dominio propio todo lo que ocurre el causal, y las relaciones son de necesidad, es decir, lo que ocurre es porque la estructura y funcin coinciden y las conexiones entre las magnitudes siguen sus leyes propias. El observador siempre acta a nivel de conocimiento, usa el lenguaje natural y su funcin de diseo e interpretacin de la computacin en los niveles fsicos y simblico est caracterizada por su modelo del conocimiento, las limitaciones de estos niveles y la inyeccin de conocimiento que se necesita para recuperar la informacin perdida en la reduccin de niveles. En la computacin de debe de evitar mezclar entidades y relaciones del dominio propio con otras del dominio del observador con las que no tienen ninguna relacin causal. F. Varela (1.979) distingue entre las explicaciones en el dominio del observador y las explicaciones operacionales (causales en el dominio propio). Se deben de evitar mezclar entidades de distinta semntica lo que se consigue mediante descripciones en ambos dominios. La distincin entre ambos dominios aparece al plantear la reduccin del nivel de conocimiento al nivel simblico y se hacen explcitas las tablas de semntica. Un error comn en Inteligencia Artificial es no hacer mencin explcita al intercambio de niveles no de la inyeccin de conocimiento necesaria para estos saltos de nivel.

Estructura de tareas genricas para modelar conocimiento en el D.O.


Las tareas genricas facilitan la adquisicin de conocimiento y su posterior reduccin simblica. La idea es modelar el conocimiento mediante una serie de mtodos. En cada caso los mtodos, la representacin del conocimiento y los mecanismos de inferencia variaran pero el esquema conceptual ser el mismo. En un sistema de control las tareas genricas son comparacin, ampliacin, actuacin y medida y su estructura es la realimentacin negativa. Analizar o sintetizar un sistema basado en conocimiento mediante una estructura concurrente de tarea genrica es una metodologa estructura que permite inyectar en cada aplicacin todo el conocimiento que es invariante.

La clasificacin como tarea genrica.


Muchos programas en Inteligencia Artificial estn basados en la estructura genrica de un clasificador, cuya funcin es ordenar las distintas salidas y/o seleccionar una de ellas. La clasificacin heurstica como tarea genrica es subyacente a muchos sistemas expertos (SE) y est descompuesta (Clancey, 1.985) en tres subtareas: abstraccin, equiparacin heurstica y refinamiento. La abstraccin permite separar el valor numrico de una variable; la equiparacin heurstica busca asociaciones que permiten acotar el espacio de bsqueda, el refinamiento est asociado al resto del conocimiento.

Metodologa KADS
La metodologa KADS para el desarrollo de sistemas basados en el conocimiento se apoya en el nivel de las tareas genricas y en la distincin de cuatro capas: estrategia, tareas, inferencia y conocimiento esttico del dominio, para modelar el conocimiento. El proceso comienza con el anlisis a nivel global, que permite una descomposicin del problema en tres mdulos: el mdulo basado en el conocimiento, la interfaz y el resto de la aplicacin. La siguiente etapa modela la inferencia, est relacionada con las tcnicas de representacin del conocimiento esttico. La tercera etapa contiene la estructura de tarea genrica. La capa ms externa se usa para modelar los aspectos estratgicos del conocimiento. El uso de una estructura de tarea genrica para modelar conocimiento tiene la ventaja de ser modular, planteando la existencia de primitivas de computacin, a partir de las cuales se puede modelar y sintetizar el conocimiento.

IA simblica versus IA conexionista


Toda computacin termina siendo conexionista en el dominio propio del nivel fsico. El simbolismo nace en el dominio propio durante el proceso de reduccin del nivel de conocimiento al nivel simblico y en el proceso inverso de interpretacin. Cuando la reduccin se hace a travs del nivel simblico, terminando en las primitivas de un lenguaje, la IA es simblica. En cambio cuando la reduccin se hace directamente del nivel de conocimiento a la red de procesadores, la IA es conexionista. Una primera distincin entre IA simblica e IA conexionista est en el salto directo que las redes neuronales dan desde la formulacin del problema a nivel de conocimiento hasta el nivel fsico, lo que supone un anlisis pormenorizado de la aplicacin. Como alternativa a este paso directo, la IA simblica utiliza un conjunto de entornos y lenguajes de alto nivel que facilitan la reduccin al nivel simblico de un modelo de conocimiento. Otra distincin es la riqueza de tareas genricas y tipos de inferencia que ofrece la IA simblica, frente a las limitaciones de una arquitectura por capas que siempre realiza una funcin de clasificacin. Una forma de aproximar las redes neuronales a la computacin simblica es aumentar la capacidad de computacin local, superando las limitaciones de un modelo analtico no lineal mediante el uso de un condicional o de un micro-marco con un campo de inferencia. En estas condiciones es posible hablar de sistemas expertos conexionistas y redes neuronales basadas en el conocimiento.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

12

3-. FUNDAMENTOS Y TCNICAS BSICAS DE BSQUEDA.


Planteamiento del problema.
En la formulacin de cualquier problema, inicialmente se parte de la declaracin en lenguaje natural del mismo; que responde en su concepcin en el nivel de conocimiento (Newell) para establecer un nivel abstracto de interpretacin de los sistemas el Inteligencia Artificial, actuando segn el principio de racionalidad, es decir, si un sistema tiene el conocimiento de que una de sus acciones conduce a una de sus metas, entonces se realiza dicha accin. A partir de esta descripcin aparecen elementos que permiten situar el problema en un nivel ms concreto. La Inteligencia Artificial estudia especialmente mtodos que permiten resolver problemas en los que no existe el conocimiento sistemtico para plantear una solucin analtica. Estos mtodos se consideran dbiles ya que los procedimientos de bsqueda no informada suelen ser poco eficientes, aunque se pueden aplicar a muchos problemas. Ante cualquier problema se presentan dos situaciones posibles, tener el conocimiento de lo que hay que hacer o indagar qu podra hacerse para resolverlo; los problemas complejos requieren una formulacin combinada. Las tcnicas de representacin que permiten describir los aspectos conocidos se denominan declarativos, los que se centran en especificar el proceso que hay que realizar para encontrar las soluciones buscadas se llaman procedimentales. Ningn sistema es completamente declarativo o exclusivamente procedimental. Las tcnicas declarativas se centran en el qu y las procedimentales en el cmo. Permiten especificar el conocimiento del dominio, que sirve para orientar la bsqueda. En principio ambas tcnicas son intercambiables (siempre y cuando exista el procedimiento de interpretacin adecuado para las declarativas). El planteamiento general de un problema consiste en encontrar o construir una solucin a dicho problema. En este contexto un problema requiere: Un agente con una serie de objetivos que desean alcanzar. El agente es el sistema (programa) concreto que se est ejecutando. Un conjunto de acciones que permiten obtener los objetivos o metas. Un procedimiento de eleccin entre diferentes formas de llegar a ellas. Cada una de estas soluciones constituye una secuencia de acciones determinada. Suele denominarse solucionador al mdulo encargado de construir dicha solucin. Un marco adecuado para resolver dicho planteamiento es utilizar el esquema de los problemas de bsqueda como tarea genrica den Inteligencia Artificial. DADOS: Conjunto de estados: Todas las configuraciones posibles de las situaciones que puedan plantearse en el dominio. Uno o ms estados desde los cuales el solucionador comienza a actuar (estados iniciales). Uno o ms estados que sern aceptados como soluciones del problema (estados finales). Conjunto de operaciones o reglas que describen las acciones (operadores o transformaciones) posibles. ENCONTRAR Una secuencia de operadores que permitan pasar del estado inicial al estado final o a uno de stos si hay varios.

Espacios de representacin.
Nociones bsicas sobre grafos. Un grafo viene dado por un conjunto de nodos y un conjunto de arcos entre los nodos. Cada arco se define formalmente como un par de nodos. En caso de pares ordenados tenemos un grafo dirigido [(A,B)#(B,A)]; en caso contrario, el grafo es no dirigido. Se define un camino como una sucesin de nodos tales que entre dos de ellos consecutivos existe un arco. Si el ltimo nodo del camino coincide con el primero se trata de un camino cerrado; si no, se denomina camino abierto, en la definicin de camino no se tiene en cuenta la direccin de los arcos. Un grafo es conexo cuando entre dos nodos cualesquiera existe al menos un camino. Cuando entre dos nodos existe un nico camino el grafo es simplemente conexo; si para algn par de nodos existen dos o ms caminos entre ellos (hay algn camino cerrado) es grafo es mltiplemente conexo. En un grafo no dirigido cualquier camino cerrado recibe el nombre de ciclo, si no tenemos un bucle. Los grafos dirigidos acclicos (GDA) son aquellos que no contienen ciclos. A los nodos que no tienen hijos se les llama nodos terminales, hojas o extremos. Una de las propiedades ms importantes de los grafos dirigidos acclicos (GDA) es que cada uno de ellos define una relacin de orden entre los nodos y viceversa. Un grafo con ciclos no puede representar una relacin de orden por incumplir la propiedad transitiva. Los GDA conexos que no contienen bucles se denominan polirboles. Un rbol [dirigido] es un GDA en que cada nodo tiene como mximo un padre; tiene las siguientes propiedades: Un rbol no puede contener ciclos ni bucles. Existe un nico nodo, denominado raz que no tiene antepasados y que es antepasado de todos los dems. Cada nodo, excepto el raz, tiene exactamente un padre. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

13

Para cada nodo existe un camino y slo uno que lo conecta con la raz; se conoce como rama. En el caso de los problemas de bsqueda, adems se debe de tener en cuenta: Nodo: elementos en el espacio de estados que representan situaciones vlidas en el dominio. Un nodo terminal que satisface las condiciones del objetivo recibe el nombre de meta. Expansin de un nodo: Obtener todos los posibles sucesores en el grafo de bsqueda a travs de la aplicacin de todos los operadores disponibles relacionados. Nodo o estado cerrado es aqul que ha sido expandido. Nodo o estado abierto es aqul en que queda por aplicar algn operador. Coste de un arco: Valor que refleja el tiempo de aplicar un operador a un estado (por defecto 1). Coste de un nodo: Tiempo en alcanzar el nodo desde la raz a lo largo del mejor camino encontrado hasta el momento. Factor de ramificacin: Nmero medio de descendientes de un nodo. Longitud de trayectoria: Nmero de nodos generados en un camino. Profundidad: Longitud del camino ms corto desde el estado inicial a una meta. Representacin de los problemas de bsqueda: El entorno en el cual se desarrolla el proceso de bsqueda se conoce como el espacio del problema (o de representacin). Est formado por el conjunto de estados y el conjunto de operadores que permiten avanzar en el proceso de obtencin de la solucin. Una instancia del problema es un espacio del problema donde se seala cul es el estado inicial y cul el final. En el espacio de estado, durante el proceso de bsqueda, cada estado representa una situacin que se debe considerar como candidata a pertenecer la solucin del problema. No todos los operadores tienen que se aplicables a un determinado estado. El proceso de comprobacin de la aplicabilidad de los operadores es lo que se conoce como equiparacin. La Estrategia de Control (EC) es la encargada de optimizar el proceso de bsqueda. Partiendo de las condiciones iniciales que definen el problema se realiza un proceso continuo de seleccin de estados (sealado por EC) de generacin de sucesores (aplicando los operadores seleccionados por EC) hasta obtener un estado que cumpla las condiciones que definen el objetivo del problema. La bsqueda surge cuando hay ms de un operador aplicable o existe ms de una instanciacin para un operador concreto; en este caso se hace necesario analizar las diversas alternativas existentes. El proceso seguido por la EC debe ser en su conjunto un mtodo sistemtico que explore las distintas alternativas que permitan acercarse a la meta. Para ello debe: Seleccionar los nodos a lo largo del grafo de bsqueda generado. Determinar las reglas aplicables al nodo elegido, considerando que pueden existir diferentes formas de aplicacin de alguna de ellas. Seleccionar del conjunto obtenido, una regla y aplicarla. Comprobar que el estado generado cumple las condiciones asociadas al estado meta. El conjunto de estados obtenidos en el proceso de bsqueda descrito se denomina grafo de estados. El espacio de estados est formado por todos aquellos estados que podran obtenerse si se aplicaran todos los operadores posibles a todos los estados que se generen, el grafo de estado es una medida explcita (refleja los caminos explorados) del proceso realizado y el espacio de estados es una medida implcita (el nmero de estados generados en dicho espacio se utiliza como referencia) que da un idea de la complejidad del problema. La complejidad de un clculo es la cantidad de recursos necesarios para efectuarlo. La complejidad temporal se refiere al tiempo necesario para realizar un clculo, es una medida del nmero de operaciones realizadas y la complejidad espacial como el conjunto de datos que es necesario recordar en un momento dado. Este razonamiento de bsqueda se conoce como guiado por los datos o encaminamiento hacia adelante. El estado inicial y todos los que se obtengan sucesivamente a partir de aqul formarn parte de la base de datos de trabajo (BD). Cmo limitar el Espacio de Bsqueda. El problema de hallar un estado que satisfaga una condicin puede formularse como la bsqueda de un grafo que posea un nodo cuya descripcin asociada coincida con el estado objetivo. La bsqueda consiste en obtener un grafo explcito suficientemente grande para que contenga la solucin del problema inicial. El problema crtico son las cantidades de tiempo y espacio necesarias para encontrar la solucin, ya que se produce la llamada explosin combinatoria. Para realizar una bsqueda eficiente se usan los conocimientos heursticos para dirigir la bsqueda. Para Nilsson, a diferencia de una bsqueda ciega en el espacio de estados, basada en generar n estados para luego comprobar si satisfacen o no las condiciones del objetivo, la bsqueda heurstica no consiste en excluir parte de ese espacio por definicin sino en aadir informacin, basndose en el espacio estudiado hasta ese momento, de forma que se restringe drsticamente dicha bsqueda.

Bsqueda sin informacin del dominio.


Bsqueda en amplitud. Descripcin: Es aqul procedimiento de control en el que se revisa todas las trayectorias de una determinada longitud antes de crear una trayectoria ms larga. Es decir; no se genera ningn nodo de nivel N hasta que no se hayan obtenido todos los de nivel N-1. Para llevar a cabo este mtodo de bsqueda se crea una lista de nodos por expandir Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

14

(conocida por ABIERTA) cuya manipulacin se realiza en forma de cola (FIFO); es decir, se da prioridad a los nodos que llevan ms tiempo esperando. Procedimiento: 1- Crear una lista de nodos llamada ABIERTA e inicializarla con un nico nodo raz, al que se le asigna el estado inicial del problema planteado. 2- Hasta que ABIERTA est vaca o se encuentre una meta realizar las siguientes acciones: 2.1 Extraer el primer nodo de ABIERTA, llamarlo m. 2.2 Expandir m. Para cada operador aplicable y cada forma de aplicacin: Aplicar m, crear un puntero desde el estado creado a m. Si el nuevo estado es meta salir del proceso iterativo iniciado en 2.2. Incluir el nuevo estado en ABIERTA. Complejidad: Temporal: Depende del factor de ramificacin y de la profundidad de la solucin. Si el nmero medio de sucesores es n y la solucin se alcanza en el nivel p, la complejidad es de orden O(np). Espacial: Dado que antes de abandonar la generacin de todos los sucesores de un nivel se deben recordar (en ABIERTA) todos los nodos de dicho nivel, la complejidad espacial es tambin de orden O(np). Anlisis: Ventajas: Si el problema tiene solucin este procedimiento garantiza que se encuentra y si hay varias metas encuentra la de menor coste (profundidad). Desventajas: Si el nivel de profundidad es menor que el nivel de ramificacin se expanden muchos nodos intilmente. Su principal desventaja es el espacio de almacenamiento requerido (prcticamente inviable). Bsqueda en Profundidad. Descripcin: En cada nivel, a lo largo del proceso de bsqueda, se selecciona un nico nodo para ser expandido. Slo se considera un camino, una rama del rbol. El funcionamiento corresponde a una pila. El objetivo es recorrer el grafo siguiendo el camino de mxima pendiente con respecto al parmetro profundidad. Ante la posibilidad de que el camino sea de longitud infinita, o demasiado largo, se necesita establecer un lmite de profundidad (lp). Se debe estudiar tambin la posibilidad de alcanzar una va muerta o punto sin retorno. Procedimiento: 1. Crear una lista de nodos llamada ABIERTA e inicializarla con un nico nodo raz, es estado inicial. 2. Hasta que se encuentre una meta o se devuelva un fallo realizar las siguientes acciones: Si ABIERTA est vaca, terminar con fallo. Extraer el primer nodo de ABIERTA, denominarlo m. Si la profundidad de m es igual a lp, regresar a 2. Expandir m, todos sus sucesores tendrn punteros a l. Introducir los sucesores en ABIERTA. Si algn sucesor es meta abandonar el proceso iterativo devolviendo el camino solucin. Si algn suceso de m se encuentra en un callejn sin salida eliminarlo de ABIERTA. En el caso de grafos se deben de evitar duplicados comprobando, para cada nuevo nodo generado, si ya exista en el grafo de bsqueda. Si a un nodo se llega desde varios caminos se escoge el de menor profundidad (como solucin de compromiso para evitar comprobaciones se coge como ms profundo el ltimo nodo de la pila). Complejidad: Temporal: Igual que en Bsqueda en Amplitud. Espacial: Como slo es necesario guardar constancia del camino construido hasta el momento, la complejidad para un camino de longitud p es dicho valor ms el factor de ramificacin ( r ); es decir O(p+r). Anlisis: Ventajas: Valor reducido de su complejidad espacial. Cuando hay mltiples soluciones la eficiencia del mtodo aumenta. Desventajas: El tiempo requerido, si el algoritmo avanza por una rama que no llevara a solucin, adems si no se guarda constancia del camino recorrido se puede caer en ciclos y el proceso no acabara. El problema es pues determinar lp. Bsqueda con Retroceso. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

15

Descripcin: Cada iteracin considera slo un sucesor, restringiendo el espacio de estados considerado. Se eliminan de dicho espacio los nodos que sean una va muerta. Esta estrategia realiza un recorrido en profundidad del grafo de bsqueda en la que en lugar de hablar de expansin de nodos se habla de generacin de aquellos. Es decir, si un nodo examinado no es meta o punto sin retorno, slo se genera uno de sus sucesores, ahorrndose por lo tanto el coste que supone la creacin simultnea de todos ellos. Procedimiento: 1. Crear una lista de nodos llamada ABIERTA e inicializarla con un nico nodo raz que contiene el estado inicial del problema planteado. 2. Hasta que se encuentre una meta o se devuelva fallo realizar las siguientes acciones: Si ABIERTA est vaca terminar con fallo. Seleccionar el primer nodo de ABIERTA, denominarlo m. Si la profundidad de m es igual a lp o si no tiene ms sucesores posibles, eliminarlo de ABIERTA y regresar a 2; sino continuar. Generar un nuevo sucesor m de m introducirlo en ABIERTA, creando un puntero a m, y sealar que la rama ha sido considerada. Si m es meta, abandonar, devolviendo el camino solucin. Si m se encuentra en callejn sin salida eliminarlo de ABIERTA. Complejidad: Temporal: El nmero de operaciones para un factor de ramificacin n y una solucin de nivel p es de orden O (np ). Espacial: Como slo es necesario recordar el camino recorrido el espacio es de orden O( p). Anlisis: Ventajas: El poco espacio de almacenamiento ya que slo hay que recordar en cada instante un sucesor del nodo seleccionado. Desventajas: Desconocimiento del lmite de exploracin. La falta de orden previo de recorrido de los sucesores de un nodo, quedando la eficiencia temporal limitado por su carcter fortuito. Otros mtodos derivados. Bsqueda en profundidad progresiva. Consiste en realizar una bsqueda en profundidad por niveles, de forma que el lmite de exploracin aumenta una unidad por cada nivel analizado. Esta estrategia es la ms eficiente dentro de las estrategias no informadas que son capaces de encontrar la solucin mejor de menor coste existente (ptima). Su complejidad temporal es de orden O(np) y la espacial de orden O(p). Bsqueda Bidireccional Descripcin: Cuando adems de la descripcin del problema, se parte de una meta explcita, existe un planteamiento alternativo que resulta de la combinacin de dos grafos de bsqueda diferentes. Se realiza simultneamente la bsqueda de la meta (encaminamiento hacia adelante) y la bsqueda del estado inicial a partir de un estado solucin (encaminamiento hacia atrs) hasta que ambos procesos confluyan en algn estado. Para garantizar la convergencia al menos uno de los procesos ha de ser en amplitud. Procedimiento (Bsqueda Bidireccional en Amplitud). 1. Inicializar dos grafos de bsqueda. En el primero (A.1), el nodo raz ser el estado inicial del problema planteado, y el segundo (A.2) tendr como raz la meta de dicho problema. 2. Inicializar el lmite de exploracin lp=1. 3. Continuar la bsqueda en (A.1) hasta lp. 4. Continuar la bsqueda en (A.2) hasta lp. 5. Comprobar si alguno de los estados generados coinciden, si es as devolver la solucin, o volver al paso 2. Complejidad Temporal: El nmero de operaciones para un factor de ramificacin n y para una solucin situada en el nivel p es del orden O(np/2). Espacial: La condicin impuesta para garantizar la convergencia permite afirmar que el espacio de almacenamiento es del orden O(np/2). Anlisis: Ventajas: La divisin del factor exponencial. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

16

Desventajas: Lmite de exploracin, el nmero de iteraciones antes de cambiar el sentido de la bsqueda es un parmetro crtico para la eficacia de este mtodo. Otro inconveniente es el de no disponer de algn criterio adicional para poder ordenar la seleccin de nodos meta a lo largo del proceso.

Reduccin del problema.


Dentro del razonamiento dirigido por las metas se distinguen dos situaciones. Una en que cada operador aplicado a un estado produce un nico estado nuevo, en la que se adopta la representacin de espacio de estados; y otra en que al aplicar un operador se generan una serie de subproblemas, cada uno de los cuales ser en general ms sencillo que el problema original, estos problemas se representan mediante el esquema conocido como reduccin del problema. El objetivo es dividir el problema en subproblemas hasta alcanzar estados que tengan solucin conocida. Los problemas que puedan descomponerse tiene dos tipos de operadores aplicables, aqullos que propiamente realizan la descomposicin y el resto, que permite, por ejemplo, reconocer los estados meta. A diferencia del esquema de produccin, se supone que la descomposicin de un problema permite tratar los subproblemas de una forma independiente (por lo tanto simultnea), cada movimiento genera elementos en la Base de Datos de trabajo (BD) que pueden tratarse a parte, como si cada uno de ellos fuera una nueva BD. La forma de representacin ms adecuada para estos problemas son los grafos Y/O o rboles Y/O, dependiendo del planteamiento del problema. Un rbol Y/O tiene como raz el problema completo, sus nodos sern subproblemas o la submeta, se conectan entre si por medio de dos tipos de enlaces. Los enlaces O representan problemas que pueden resolverse de varias formas alternativas. Los enlaces Y reflejan situaciones que pueden descomponerse en una serie de etapas o subproblemas; de forma que el problema inicial queda resuelto cuando se ha obtenido la solucin de todas sus partes. Los enlaces tipo Y se representan por medio de una lnea arqueada que conecta todos los nodos implicados, los nodos terminales representan un problema bsico (trivial) o subproblemas indivisibles. La solucin encontrada en los grafos Y/O, grafo solucin, puede estar formada por varios nodos terminales y no por un nico nodo.

Algoritmo general de Bsqueda en Grafos.


Un mtodo til para resolver el problema de la bsqueda el grafos es mantener a lo largo del proceso dos listas, llamada ABIERTA y CERRADA. La primera permite reanudar un camino abandonado previamente. La lista CERRADA sirve como registro de los nodos elegidos a los largo de todo el grafo de bsqueda. Procedimiento general de Bsqueda en Grafos. 1. A lo largo del camino se crean dos grafos de exploracin, uno explcito, que coincide con el grafo de bsqueda, y otro implcito, que se obtiene recorriendo los punteros que conducen hasta la meta desde el estado inicial. Crear un grafo de exploracin G que consiste en un nico nodo con la descripcin del problema. Crear una lista de nodos, ABIERTA e inicializarla con dicho nodo., 2. Crear una lista de nodo llamada CERRADA que est vaca. 3. Hasta encontrar la meta o devolver fallo: Si ABIERTA est vaca terminar con fallo; si no continuar. Eliminar el primer nodo de ABIERTA, llamarlo m e introducirlo en CERRADA. Expandir m Generar el conjunto M de sucesores, que no sean antecesores e introducirlos como tales en G. Si algn miembro de M es meta abandonar el proceso, devolviendo la solucin. Poner un puntero a m desde los nuevos nodos generados. Incluirlos en ABIERTA. Para cada nodo de M que estuviese en CERRADA, decidir para cada uno de sus descendientes si se redirigen los punteros o no. Reordenar la lista ABIERTA aplicando algn criterio establecido previamente.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

17

4. BSQUEDA HEURSTICA.
Elementos implicados.
Se pueden distinguir dos marcos de referencia diferentes, el dominio del observador (DO) y el dominio propio (DP), que ayudan a concretar los problemas y las soluciones aportadas. Dominio del observador: Los mtodos heursticos tratan de resolver problemas eficientemente, obteniendo soluciones satisfactorias en el dominio de la aplicacin. Esto mtodos no garantizan encontrar la solucin ptima del problema pero s obtienen aproximaciones con menor esfuerzo. El origen de estos mtodos est en el anlisis del comportamiento humano. Los problemas que son objeto de estas tcnicas son de dos tipos: 1. Problemas de solucin parcialmente conocida. 2. Problemas intratables de solucin conocida, aquellos que no se pueden resolver completamente por la complejidad implicada, pero se conoce el mtodo de solucin. Dominio propio: Los mtodos heursticos se utilizan para obtener soluciones tiles en problemas sujetos al fenmeno de la explosin combinatoria. Los problemas pueden ser de dos tipos, de tipo P son aquellos que pueden ser resueltos mediante un procedimiento de complejidad polinmica; por otro lado los problemas NP, en los que todos los algoritmos requieren un tiempo exponencial en el peor caso. Desde el punto de vista computacional, los objetivos declarados en el DO suelen traducirse en establecer las llamadas funciones de evaluacin heurstica que ayuden a seleccionar el estado ms prometedor en el espacio de bsqueda. Conocimientos de control. La clave de los procesos heursticos de bsqueda es el ahorrar tiempo y/o espacio de almacenamiento evitando recorrer muchos caminos intiles introduciendo informacin adicional que gue el recorrido realizado. Reglas de Control Heurstico. Una forma de reducir la complejidad del proceso es introducir reglas de control heurstico en el proceso de bsqueda. Estas pueden ser de dos tipos en funcin del conocimiento reflejado. El primero se refiere al conocimiento heurstico dependiente del dominio, utilizado para seleccionar alguna de las situaciones alcanzadas y la siguiente accin aplicable sobre ella. La segunda fuente utilizada en el control del proceso de bsqueda es el conocimiento general disponible sobre el funcionamiento del solucionador. En cada etapa del proceso, al expandir un nodo se comprueba si alguno de sus sucesores es meta y entonces se devuelve el camino solucin. Este conocimiento es independiente del dominio de aplicacin. Por otro lado existe un conocimiento dependiente del dominio de aplicacin (heurstico), que se utiliza para determinar cundo se ha alcanzado la situacin objetivo. Funciones de Evaluacin Heurstica. Estas funciones son una aplicacin del espacio de estados sobre un espacio numrico f (estadoj )=nj; siendo nj el valor numrico que refleja en qu grado se considera prometedor un estado en la bsqueda de la solucin. El conocimiento del dominio reflejado por las funciones de evaluacin heurstica (fev) se obtiene a travs del establecimiento de modelos simplificados del modelo original. Suelen ser funciones de evaluacin estticas que miden factores que determinan la proximidad del objetivo. La distancia entre un nodo cualquiera y la meta se conoce como distancia de Manhattan. El grafo de bsqueda se recorre en funcin de un objetivo que consiste en maximizar o minimizar el valor indicado por dichas funciones, teniendo en cuenta que dicho valor debe reflejar la cercana relativa con respecto a la meta buscada. Evidentemente cuanto mejor indique la funcin heurstica la cercana real a la meta, menor ser el grafo de bsqueda expandido. Una condicin que debe de cumplir fev es que su valor mximo (o mnimo) debe alcanzarse al ser aplicada a un estado meta. Se debe de valorar si el coste asociado al clculo de la fev compensa al coste de realizar el proceso de bsqueda sin dicho conocimiento o con otras funciones menos exactas pero ms sencillas. Estas funciones son ptimas cuando son invariantes con respecto a un movimiento ptimo desde cualquier estado a lo largo del estado de bsqueda. Planteamiento del problema. Se parte del esquema de bsqueda como tarea genrica en Inteligencia Artificial; utilizando el procedimiento general de bsqueda en grafos que permite aplicar directamente la informacin proveniente del dominio. Dicho algoritmo se conoce como mtodo de bsqueda el primero el mejor. La eficiencia del problema depende del criterio de ordenacin de ABIERTA. Una forma inmediata de aprovechar las fev es aplicarlas sobre los nodos generados a lo largo del proceso de bsqueda, de manera que ordene los nodos en ABIERTA segn el valor de la funcin heurstica utilizada. La funcin de evaluacin heurstica (fev) mide la cercana estimada al nodo meta, es un valor inexacto ya que la informacin disponible hasta el momento en que se toma la decisin es incompleta. Por tanto, el control realizado no determina con seguridad cul es Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

18

el mejor nodo pero s que ayuda a reducir el nmero de nodos considerados (complejidad espacial) y el tiempo empleado (complejidad temporal).

Una estrategia irrevocable.


Existe la posibilidad de encontrar problemas para los que una estrategia irrevocable sea adecuada. La dificultad de aplicar este tipo de estrategias est en la absoluta dependencia del criterio de ordenacin del espacio de bsqueda, ya que debe de ser suficientemente robusto como para no reconsiderar una decisin tomada.

Mtodo del gradiente


Descripcin: Tambin conocido como bsqueda en escalada, se trata de buscar el camino con mxima pendiente, el parmetro que la define es la fev aplicada, que llamaremos f. Procedimiento general: 1. Denominar m al estado inicial del problema y asignar m a una variable llamada elegido. 2. Hasta que se encuentre una meta o se devuelva fallo realizar las siguientes acciones: 2.1. Expandir m creando el conjunto de todos sus sucesores. Para cada operador y forma de aplicacin: a. Aplicar el operador a m generando un nuevo estado. b. Si nuevo es meta salir devolviendo dicho estado. c. Si f(Nuevo)es mejor que f(elegido), asignar a elegido el valor de nuevo. 2.2 Si f(elegido)#f(m) asignar m = elegido; sino devolver fallo. El paso 2.2 comprueba que alguno de los sucesores expandidos tiene un mejor valor de la fev aplicada, condicin que debe cumplirse en todo momento ya que no se pueden reconsiderar la decisiones tomadas. En pseudocdigo sera: fun gradiente (m: nodo) elegido m fallo falso mientras (m#meta) y (fallo#cierto) hacer para cada sucesor n de m hacer si n= meta entonces devolver (n) sino si fev(n) mejor que fev (elegido) entonces elegido n fsi fsi fpara si fev(elegido)#fev(m) entonces m elegido sino fallo cierto fsi fmientras ffun Campos de aplicacin: Teora de juegos, problemas de mximos y mnimos locales en el campo de anlisis numrico, situaciones en las que siempre es posible aplicar cualquiera de los operadores disponibles (conmutabilidad), ya que en estos casos siempre se llega a la meta, aunque en el peor de los casos con un retardo. Anlisis. Ventajas: La principal es su sencillez. Slo se precisa almacenar el estado alcanzado (elegido) en el proceso de bsqueda. En cada iteracin elegido ser el que tenga un mejor valor de f, no se necesita recordar cul es el camino recorrido. Desventajas: La dependencia de la correcta definicin de f, exige que la funcin sea los ms informativa posible, y sencilla de calcular

Estrategias de exploracin de alternativas.


Las estrategias de bsqueda heurstica ms conocidas y utilizadas son las que realizan una exploracin de alternativas en el espacio de bsqueda.

Bsqueda Primero el Mejor.


Descripcin: Consiste en recorrer el grafo de bsqueda eligiendo en cada momento el nodo que tenga un mejor valor para una determinada funcin heurstica, f. Cuando el camino se aleje de la meta se pueden retomar caminos de exploracin Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

19

abandonados previamente. La finalidad es encontrar el camino de menor coste, por lo que la funcin f debe medir la distancia a la meta. Procedimiento de bsqueda Primero el Mejor(PM). 1. Crear un grafo de exploracin G que consista en un nico nodo que contiene la descripcin del problema. Crear una lista de nodos llamada ABIERTA e inicializarla con dicho nodo. 2. Crear una lista de nodos llamada CERRADA que inicialmente estar vaca. 3. Hasta que se encuentre una meta o se devuelva fallo realizar las siguientes acciones: 3.1 Si ABIERTA est vaca terminar con fallo, sino continuar. 3.2 Eliminar el primer nodo de ABIERTA, llamarlo m e introducirlo en CERRADA. 3.3 Expandir m creando punteros en todos sus sucesores. 3.4 Si algn sucesor es meta abandonar el proceso iterativo y devolver el camino solucin, recorriendo los punteros de sus antepasados. 3.5 Para cada sucesor n de m calcular f(n) teniendo en cuenta las siguientes consideraciones: 3.5.1 Si n es nuevo asociarle el valor f(n) e introducirlo en ABIERTA. 3.5.2 En caso contrario: a. Si f(n) es mayor que el que ya tena asociado descartar el nuevo nodo. b. Si no, sustituir el valor por el nuevo f(n) y cambiar el puntero a m; si el nodo estaba en CERRADA, actualizar el coste de sus descendientes ya que podran ver reducido su valor. En pseudocdigo es: fun primero_el_mejor (m: nodo) crear (ABIERTA) crear (CERRADA) meter (ABIERTA,m) fallo falso mientras (m#meta) y (fallo #cierto) hacer sacar (ABIERTA, m); meter (CERRADA, m) para cada sucesor n de m y no antecesor de n hacer si n= meta entonces Devolver_camino_solucin (n) si no_est (ABIERTA, n) y no_est (CERRADA, n) entonces n.valor fev (n) n.padre m meter (ABIERTA, n) sino si n.valor es pero que fev(n) entonces n.valor fev (n) n.padre m si est (CERRADA,n) entonces Recalcular_Descendientes (n) fsi fsi fpara si Abierta = entonces fallo cierto fsi fmientras ffun Anlisis: Ventajas: Permite evitar el problema de los mnimos locales que sufre el mtodo del gradiente, adems asegura que tarde o temprano se encontrar la solucin mnima (o mxima). Desventajas: En el procedimiento no se considera el camino recorrido hasta el momento, es decir si un nodo se encuentra cerca de la meta pero se avanza por otro, que a priori tiene una f mejor, en una cierta profundidad se tendr un menor coste hasta la meta, aunque en realidad el camino total ser peor. Existe una variante de este mtodo llamada bsqueda en haz que pretende acelerar el proceso de bsqueda ampliando el rango de estados que son considerados simultneamente como mejores. En cada momento se mantienen dos estructuras de datos, una contiene los estados que pertenecen al haz de bsqueda actual y otra agrupa a los posibles sucesores. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

20

Contra ms informada sea la funcin que determina la validez de un nodo, ms estrecho ser el haz y ms eficiente ser el proceso de bsqueda realizado. En general este mtodo requiere menos recursos.

Algoritmo A*.
Descripcin. Es el mejor mtodo de bsqueda del tipo primero el mejor que sirve para resolver el problema que conlleva el no considerar el camino recorrido hasta un momento dado. La clave del mtodo est en ampliar la definicin de la funcin fev para que tenga en cuenta el coste del camino recorrido, resultando la expresin: f(n)=g(n)+h(n) siendo: g(n) Coste real del camino de menor coste encontrado hasta el momento desde la raz del grafo de bsqueda G hasta el nodo en cuestin. Es un estimador del coste real del camino ptimo que se identifica por g*(n). h(n) estimador heurstico del coste del camino ptimo desde el nodo n a una meta. El coste real lo calcula la funcin h*(n). f(n) es un estimador del coste total del camino ptimo de una solucin que pase por el nodo n. El valor real de dicho camino lo devuelve la funcin inicialmente desconocida, llamada f*(n). Procedimiento A*. 1. Crear una lista de nodos llamada ABIERTA e inicializarla con un nico nodo raz que contiene el estado inicial del problema planteado. Llamar a este elemento r y asignarle g( r )=0. 2. Crear una lista de nodos, CERRADA, que inicialmente estar vaca. 3. Repetir hasta que se encuentre la meta o se devuelva fallo: 3.1 Si ABIERTA est vaca terminar con fallo. 3.2 Eliminar el nodo de ABIERTA que contenga un valor mnimo de f, llamar a este nodo m e introducirlo en CERRADA. 3.3 Si m es meta abandonar el proceso iterativo devolviendo el camino solucin. 3.4 Si no, expandir m generando todos sus sucesores. 3.5 Para cada sucesor n de m: a. Crear un puntero de n a m b. Calcular g(n)=g)m)+c(m,n)|c(a,b):coste de pasar de a a b. c. Si n est en ABIERTA llamar n al nodo encontrado en la lista, aadirlo a los sucesores de m y realizar : (3.1.c) Si g(n)< g(n) entonces redireccionar el puntero de n a m y cambiar el camino de menor coste encontrado a n desde la raz; g(n)=g(n) y f(n)= g(n)+ h(n). d. Si n no cumple (c), comprobar si est en CERRADA, llamar n al nodo encontrado en dicha lista y realizar las siguientes acciones: Si (3.1.c) no se cumple, abandonar (d), en caso contrario propagar el nuevo menor coste g(n) (por lo que se actualizarn sus valores de f correspondientes) a sus descendientes realizando un recorrido en profundidad de stos, empezando por n y teniendo en cuenta las siguientes consideraciones: 1. Para los nodos descendientes ni cuyo puntero conduzca hasta el nodo n actualizar g(ni )=g(ni ) y f(ni )= g(ni )+ h(ni ) y seguir el recorrido hasta que se encuentre un ni que no tenga ms sucesores calculados o se llegue a un nodo en que ya ocurra que g(ni )=g(ni ); en cuyo caso se habra producido un ciclo y tambin habra que terminar la propagacin. 2. Para los nodos descendientes ni cuyo puntero no conduzca hacia el nodo n comprobar si g(ni )<g(ni ), en cuyo caso se debe actualizar el puntero para que conduzca hacia el nodo n (mejor camino desde la raz encontrado por el momento) y se continua el proceso de propagacin. e. Si n no estaba en ABIERTA o en CERRADA, calcular h(n) y f(n)=g(n)+h(n), introducirlo en ABIERTA y aadirlo a la lista de sucesores de m. Relaciones con otros mtodos de bsqueda: 1. Si n m (h(n)=0)^(c(m,n)=1) entonces A* se convierte en un proceso de bsqueda en amplitud. 2. Si n (h(n)=0 entonces A* se convierte en el mtodo denominado procedimiento de coste uniforme; que es una variacin de la bsqueda en amplitud donde lo que se busca no son caminos de la menor longitud sino de menor coste.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

21

En pseudocdigo: fun Procedimiento_A* (raz: nodo) crear (ABIERTA) crear (CERRADA) meter (ABIERTA, raz) fallo falso raz.g 0 mientras (m # meta) y (fallo # cierto) hacer sacar (ABIERTA, m) meter (CERRADA, m) si m = meta entonces Devolver_Camino_Solucin (n) fsi para cada sucesor n de m hacer g(n) g(m) + coste (m,n) si est (ABIERTA,n) entonces si n.g es peor que g(n) entonces n.g g(n) n.f g(n)+h(n) n.padre m fsi sino si est (CERRADA, n) entonces si n.g es peor que g(n) entonces Recalcular_Descendientes (n) fsi fsi fpara si ABIERTA= entonces fallo cierto fsi fmientras ffun Propiedades formales. 1. A* es un mtodo completo de bsqueda incluso para grafos infinitos. Es decir, termina encontrando la solucin cuando esta exista para cualquier tipo de grafos. 2. Es un mtodo admisible, ya que no slo encuentra la solucin sino que la que encuentra es ptima. 3. Si la funcin heurstica h es montona y consistente el algoritmo encuentra un camino ptimo para todos los nodos expandidos. Una funcin es montona si cumple:

h(n) k (n, n' ) + h(n')(n, n')

es decir, si el valor de la funcin nunca decrece a lo largo de un camino desde la raz, entonces se puede afirmar que cuando el algoritmo expande un nodo objetivo, el camino encontrado es el de menor coste a un objetivo. 4. Entre todos los algoritmos que usan una funcin heurstica consistente h(n) y que encuentran una solucin ptima, A* expande el menor nmero de nodos. Anlisis. Ventajas: A partir de las propiedades anteriores, se puede decir que el algoritmo A* es un mtodo completo, admisible y que encuentra la solucin ptima para funciones de evaluacin heurstica consistentes con respecto a la longitud de la solucin. Desventajas: La propiedad de admisibilidad hace que el algoritmo gaste mucho ms esfuerzo en discriminar entre caminos prcticamente iguales, por lo que es ms realista buscar soluciones dentro de unos mrgenes acotados de error. Un inconveniente es el espacio requerido. Una opcin para reducir el espacio (requerido por mantener ABIERTA) es realizar un planteamiento semejante al mtodo de bsqueda en haz, llamado A* en profundidad progresiva (A*-P). Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

22

Mtodo AO*.
Descripcin: Es una generalizacin del algoritmo A* para el caso de grafos Y/O. Sigue cumpliendo la propiedad de ser una algoritmo admisible, es decir, encuentra una solucin ptima siempre y cuando la funcin heurstica h de estimacin de distancia al objetivo siga un criterio optimista de valoracin (devuelva un valor menor o igual que la distancia real existente). Para obtener un grafo solucin de coste mnimo hay que tener en cuenta que su coste depende de la expansin de los nodos que lo forman. Para calcularlo es necesario distinguir los enlaces del tipo O de los enlaces de tipo Y, ya que en estos ltimos hay que sumar el coste de la obtencin de cada uno de los nodos conectados por el enlace. Procedimiento AO* 1. Crear un grafo G que en principio est formado por el nodo raz m. Estimar la distancia heurstica a la meta de sta mediante h(m). 2. Repetir hasta que m se considere resuelto o hasta que su coste supere un cierto valor coste - mximo 2.1 Seguir los enlaces marcados que sealan el mejor grafo parcial de la solucin obtenido hasta el momento mientras no se alcancen los extremos del grafo. Escoger alguno de los extremos, que se llamar n. 2.2 Expandir n generando todos sus sucesores s. Si no tiene ninguno, asignarle el valor costemximo. 2.2.1 Para todo s si es un nodo terminal marcarlo como resuelto, asignarle h(s)=0; en caso contrario asignarle h(s). 2.3 Crear un conjunto S slo con los nodos s. 2.4 Repetir hasta que S se vace. 2.4.1 Sacar de S algn nodo s que no tenga descendientes en S 2.4.2 Actualizar el coste de s: Calcular el coste de todos sus enlaces y asignarle como h(s) el menor de stos, marcando dicho enlace (y borrando, si existiera, una marca de otro enlace saliente de s). Si todos los nodos del enlace marcada son terminales, marcar tambin s como resuelto. 2.4.3 Si en el paso anterior se ha hecho que s sea resuelto o si h(s) ha cambiado, aadir sus antecesores a S y continuar el proceso recursivo de actualizacin de valores de los nodos. El algoritmo O/Y repite dos operaciones, una hacia abajo en la que encuentra el grafo solucin parcial y otra hacia arriba de revisin de costes, con establecimiento de nuevos subgrafos parciales menos costosos desde cada nodo, si es necesario. La clave del algoritmo est en la bsqueda (hacia adelante) de las formas de expandir el mejor grafo parcial de la solucin encontrado hasta el momento; para lo cual, se expanden los nodos frontera del mismo y se realiza una revisin (hacia atrs) de los valores h(n) de los nodos antecesores de los nodos frontera actualizados. Propiedades Si se cumple: 1. n h( n) h * ( n) 2. Cada vez que se actualiza el coste de h(n) en funcin de sus sucesores el valor previo de h(s) nunca supera al calculado en funcin de aqullos entonces el algoritmo es admisible y encuentra el camino ptimo.

Bsqueda con adversarios


El objetivo de los contrincantes es ganar la partida. El nmero de movimientos posibles que deben considerarse para garantizar una estrategia ganadora es generalmente intratable, ya que para cada jugada propia deben estudiarse todas las del oponente, surgiendo el problema de la explosin combinatoria en la mayora de los problemas. Por ello se deben aplicar funciones de evaluacin heurstica que evalen la ventaja relativa que supone el alcanzar una determinada situacin. Dada la imposibilidad de generar el rbol que represente todas las jugadas, se realiza una simplificacin del proceso en la que se determina el estado (ganador, empate o perdedor) de los nodos hasta un determinado lmite de profundidad en el que el valor del nodo es el valor devuelto por la aplicacin de la funcin de evaluacin heurstica utilizada. El nivel ms profundo se conoce como frontera de la exploracin.

Estrategia MINIMAX.
Descripcin: Es un esquema genrico de bsqueda para situaciones en la que el objetivo es ganar una partida en la que participan dos adversarios que realizan movimientos alternativos en el juego. La efectividad de esta estrategia reside en la funcin heurstica aplicada, encargada de medir la ventaja relativa de realizar las distintas jugadas. El mtodo consiste en prever el mximo nmero de jugadas posibles y actuar en consecuencia. Para ello recorre un rbol Y/O llevando a cabo su eleccin pensando que el adversario va a realizar la mejor de las opciones posibles cuando a l le toque mover. Los nodos del Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

23

rbol son de dos tipos MAX y MIN, cada uno de stos toma las decisiones de uno de los contrincantes. El jugador MAX intenta maximizar el valor de la funcin fev, por otro lado, los nodos MIN reflejan el modo de actuar que intenta minimizar la fev. Para poder etiquetar los nodos con un valor fev, se recorre el rbol hasta los nodos hojas (siempre y cuando el rbol sea tratable) o hasta un determinado lmite de profundidad. Llegados a este lmite, se aplica una fev heurstica al estado de la partida representado por el nodo (si es un nodo hoja se asigna: ganador=1, perdedor=-1 y empate=0). Los valores de fev obtenidos se van subiendo por el rbol aplicando a cada nodo padre el valor mximo o mnimo del valor de sus hijos (dependiendo si es un nodo a jugar por MAX o por MIN), hasta llegar al nodo actual. El mtodo MINIMAX se comporta como un procedimiento de bsqueda con retroceso con una frontera de exploracin calculada. El nivel de exploracin depende de diversos factores entre los que se pueden destacar las caractersticas del camino recorrido hasta ese momento y el coste computacional de alcanzar dicha profundidad. Procedimiento: MINIMAX (m, profundidad, jugador) 1. Si m no tiene sucesores o se considera alcanzado el lmite de profundidad, devolver mmv(m)=f(m). 2. Generar los sucesores de m. 2.1 Inicializar la variable mejor con el valor mnimo que esta pueda tener. 2.2 Para cada sucesor n de m: 2.2.1 mmv(n)=MINIMAX(n, profundidad+1, C(jugador)); siendo C(jugador) una funcin que cambia de jugador. 2.2.2 mejor= max[MMv(n), mejor] 3. Una vez analizados recursivamente todos los sucesores de un determinado nivel, se devuelve el que se ha obtenido un mejor valor. Complejidad: Un rbol de coste uniforme de profundidad p y de un factor de ramificacin n contiene np nodos terminales que sern analizados por el procedimiento MINIMAX Si de antemano se pudiera saber qu dos estrategias son compatibles, cada estrategia se expandira alrededor de np/2, desgraciadamente hay que realizar un nmero indeterminado de intentos antes de encontrar dos estrategias compatibles, por lo que dicho lmite rara vez es alcanzable. Anlisis: Ventajas: Se trata de un mtodo general y sencillo. Desventajas: Es poco eficiente al ser demasiado exhaustivo.

Estrategia de poda a-b


Descripcin: Se trata de una modificacin del mtodo MINIMAX que permite ahorrarse el recorrido de caminos intiles del rbol de bsqueda. Para ello recorre el rbol en profundidad (hasta un valor prefijado) y transmitiendo a los niveles superiores del rbol la informacin obtenida hasta evaluar una hoja, con el propsito de poder abandonar la exploracin de alguna ramas. El mtodo de poda se encarga de llevar una anotacin para saber cundo se puede realizar una poda en el rbol de bsqueda. Lo que hace es pasar en cada llamada recursiva a un nodo hijo, dos valores ( y ) de manera que marca la cota inferior de los valores que se van a ir buscando en la parte del rbol que queda por explorar, siendo la cota superior de esos mismos valores. Si hay algn momento en que el valor de es mayor o igual al de , no tendr sentido seguir con la bsqueda realizndose una poda si estamos en un nodo MAX o si el nodo es MIN. Procedimiento: alfabeta (m, profundidad, jugador, lmte_actual, lmite_siguiente) 1. 1. Si m no tiene sucesores o se considera alcanzado el lmite de profundidad, devolver v(m)=f(m). 2. Generar los sucesores de m. 2.1 Para cada sucesor n de m: 2.2.1 v(n)=Alfabeta(n, profundidad+1, C(jugador), -lmite_siguiente, -lmite_actual); siendo C(jugador) una funcin que cambia de jugador. 2.2.2 lmite_siguiente= max[-v(n),lmite_siguiente] 2.2.3 Si lmite-siguiente lmte_actual entonces abandonar este nivel y devolver lmite_siguiente 3. Una vez analizados recursivamente todos los sucesores de un determinado nivel, se devuelve el que se ha obtenido un mejor valor. v(m) = lmite_siguiente La primera llamada al procedimiento se realiza tomando como el mximo valor que puede tener f(n) y como valor el valor mnimo de la misma. Complejidad: Suponiendo que el rbol de bsqueda est perfectamente ordenado (las ramas de la izquierda tiene los mejores valores de y de para discriminar el resto de los caminos) entonces el nmero de nodos que son evaluados es: Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

24

1. Si p es un nmero par: 2np/2-1 2. Si p es un nmero impar: n(p+1/2)+n(p-1)/2-1 En el peor de los casos se tendran que examinar todos los nodos terminales y su complejidad sera la misma que el mtodo MINIMAX. Anlisis: Ventajas: Mtodo eficiente que reduce considerablemente el nmero de nodos expandido y permite afrontar problemas supuestamente intratables. Desventajas: Dependencia excesiva del ordenamiento de los nodos del rbol que influye en las expansiones de los nodos.

Anlisis Medios - Fines


Este mtodo se defini inicialmente en el contexto llamado Solucionador General de Problemas (GPS). Consiste bsicamente en distinguir cuales son los medios disponibles (operadores) para la resolucin de un problema, y cuales son los fines (estados meta). Se basa en analizar constantemente las diferencias entre un estado del problema y la meta deseada. Un vez detectadas, se accede a una tabla en la que aparecen ordenadas en funcin de su importancia en el dominio. En cada fila se indican los operadores disponibles para reducir la diferencia correspondiente a dicha fila. Puede ocurrir que el nodo elegido no sea directamente aplicable al problema y que se deba establecer una submeta en la que el medio lo sea. Por otro lado, dicho operador puede que no elimine todas las diferencias y deba iniciarse otro proceso que elimine las diferencias resultantes de la aplicacin del operador anterior.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

25

5. LGICA
El uso de la lgica en la representacin del conocimiento.
El formalismo elegido para la representacin de los problemas es una de las principales reas de investigacin en la IA. La riqueza expresiva de los formalismos de representacin del conocimiento y su realizacin computacional determinan la eficiencia y la correccin de las soluciones obtenidas. Para valorar la eficiencia de un mtodo se debe de tener en cuenta dos capacidades del mismo: la de representar todo el conocimiento requerido y la de disponer de un mtodo de obtencin de las conclusiones requeridas por el conocimiento (capacidad de razonamiento o de inferencia). La utilizacin de la lgica como formalismo de representacin cubre ambos aspectos. La utilizacin de la lgica en la representacin del conocimiento (RC) tiene como ventajas: su riqueza expresiva y su semntica perfectamente definida.

Lgica de proposiciones.
La lgica de enunciados (proposiciones o clculo proposicional) permite estudiar la validez formal de los razonamientos mediante frases formadas por enunciados simples. Una frmula cualquiera puede ser vlida, satisfactible o insatisfactible. Una demostracin en el sistema axiomtico consiste en, dadas una serie de frmulas vlidas de las que se parte, axiomas, obtener un conjunto de nuevas frmulas vlidas mediante las reglas de transformacin. Proceso que se repite hasta que se genere la conclusin buscada. La regla de transformacin bsica de los procesos deductivos de la lgica clsica es el llamado modus ponens, que expresa lo siguiente: Si S y S R son frmulas vlidas entonces R tambin lo es, es decir todo razonamiento puede reducirse a la forma de un condicional (denotada por RE ). Tambin est la conocida por Teorema de la Deduccin, que nos dice que si en un clculo existe una demostracin de una frmula R (conclusin) a partir de una frmula S (premisa), entonces tambin existe una demostracin de S R ( se denota por RI ). El clculo de proposiciones basado en la regla de resolucin permite comprobar la deducibilidad de una frmula cualquiera a partir de unas premisas dadas. Para aplicar la regla de resolucin a un conjunto de premisas stas se tienen que poner primero en forma clausulada. Una clusula es un disyuncin de variables proposicionales negadas o sin negar. Se dice que una sentencia est en forma clausulada cuando consiste en una conjuncin de clusulas. Procedimiento: Eliminar los condicionales y bicondicionales :

p q pq

p q (( p q ) (q p))
Introducir las negaciones, para que slo afecten a las variables proposicionales. Pasar a forma clausulada aplicando la distributiva para la disyuncin. La sentencia obtenida est en forma clausulada y se puede simplificar: Si hay dos o ms clusulas idnticas se pueden eliminar, dejando slo una. Si aparece una clusula con un literal y su negacin se puede eliminar. Si en una clusula aparece el mismo literal varias veces, slo hay que escribirlo una vez. La regla de resolucin se puede aplicar a dos premisas en forma de clusulas denominadas generatrices, que contienen una variable proposicional comn sin negar en una y negada en otra. La resolucin consiste en construir otra clusula, denominada resolvente, formada por la disyuncin de todas las variables proposicionales de las generatrices menos la comn. Una estrategia posible para validar un proceso deductivo es realizar un proceso exhaustivo de aplicacin de la regla de resolucin entre todas las clusulas hasta encontrar la clusula vaca. El clculo de proposiciones basado en la regla de resolucin cumple las tres propiedades bsicas de un formalismo lgico: es consistente, completo y decidible.

Lgica de predicados.
Cuantificadores.
El cuantificador universal indica que todos los elementos del universo del discurso cumplen una propiedad. El Cuantificador Existencial indica que algn elemento del universo cumple con la propiedad. Existen relaciones entre ambos que son las siguientes:

x P( x ) x P( x )

x P( x ) P( x ) x P( x ) x P( x ) x P( x ) x P( x )
En el clculo de predicados es necesario introducir nuevas reglas de inferencia para tratar las expresiones cuantificadas. En todas las reglas de inferencia se supone que: P es una variable metalingistica que representa cualquier predicado. a 1, a2,an son smbolos cualesquiera de nombres de individuo (parmetros). Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

26

Regla de eliminacin del cuantificador universal (RE ) x1, x2,xn P(x1, x2,xn) P(a1, a2,an) Regla de introduccin del cuantificador universal (RI ) P(a1, a2,an) x1, x2,xn P(x1, x2,xn) Para que esta regla sea vlida los parmetros a1, a2,an se consideran constantes cualesquiera; es decir, aunque seales a elementos concretos de una especie, su valor es indeterminado y por tanto puede ser ocupado por cualquier individuo de dicha especie. Regla de eliminacin del cuantificador existencial (RE ) x1, x2,xn P(x1, x2,xn) P(a1, a2,an) Regla de introduccin del cuantificador universal (RI ) P(a1, a2,an) x1, x2,xn P(x1, x2,xn)

Deduccin automtica: Resolucin


La resolucin es un mtodo sistemtico de validacin de frmulas que pertenecen al clculo de predicados de primer orden. Este procedimiento puede no terminar, pero a pesar de ello, existe un nmero importante de frmulas decidibles, lo que permite enmarcarlo dentro de los mtodos de deduccin automtica. Estas tcnicas son aplicables a la verificacin formal de programas y sirven de base para la formulacin de intrpretes de sistemas de programacin.

Forma clausulada.
Una condicin bsica para poder aplicar el mtodo de resolucin es que las premisas estn en forma clausulada, conjuncin de disyunciones (Forma Normal de Skolem o Forma Normal Conjuntiva), que se traduce en: Todos los cuantificadores estn a la cabeza de la frmula. Slo existen cuantificadores universales. El resto de la frmula, matriz, est formada por una conjuncin de frmulas, cada una de las cuales est constituida por una disyuncin de frmulas atmicas, negadas o sin negar. Procedimiento: Eliminar los condicionales y bicondicionales :

p q pq

p q (( p q ) (q p))
Introducir las negaciones, para que slo afecten a las variables proposicionales. Pasar a forma clausulada aplicando la distributiva para la disyuncin. Supresin de las negaciones en las frmulas afectadas por cuantificadores. Cambio de variable en las frmulas cuantificadas para que cada una tenga un nombre de variable distinto. Para evitar un nmero excesivo de cuantificadores se pueden aplicar las siguientes reglas: Ley de la distribucin de por la : x(R(x) P(x)) x R(x) x P(x) Ley de la distribucin del por la x (R(x) P(x)) x R(x) x P(x) Colocar todos los cuantificadores a la cabeza de la frmula. Supresin de los cuantificadores existenciales. Se dan dos casos: 1. Si el no tiene a su izquierda se elimina introduciendo una constante de Skolem. 2. Si el tiene uno o varios a su izquierda, se elimina la variable afectada por el introduciendo en su lugar una funcin de Skolem. Eliminar todos los . Convertir la frmula en una conjuncin de disyunciones. Considerar cada una de las disyunciones como una clusula aparte.

Unificacin.
Uno de los procesos bsicos en los problemas de IA es la equiparacin de patrones, es decir, poner en relacin de igualdad dos cosas. Para ello se comprueba que su estructura es semejante y que cada uno de los componentes que forman dicha estructura son compatibles. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

27

En la lgica de predicados de primer orden consiste en comparar predicados con el mismo nombre y comprobar si sus trminos se pueden unificar. Para ello debe de existir una sustitucin que los haga idnticos. Una sustitucin es un conjunto de pares del tipo [tk / vk] donde vk es una variable que ocupa el k-simo lugar dentro de los argumentos del predicado y tk es un trmino cualquiera del mismo conjunto en el que la variable vk no est presente, pueden unificarse mediante la sustitucin : donde haya una u poner f(x) y donde haya v una poner b; matemticamente: s1:{f(x) / u, b/v } P (u, b ) s1 = P(f(x),v)s1 = P(f(x), b) El mtodo de resolucin requiere que la unificacin entre los predicados de las clusulas se realice mediante el unificador mnimo o de mxima generalidad (UGM). El UGM se define como aqul que cumple la propiedad de que cualquier otro unificador puede obtenerse a partir de l por aplicacin de alguna otra sustitucin.

Mtodo General de Resolucin.


Establece un procedimiento sistemtico (computable) de bsqueda de la demostracin de un teorema, la demostracin se realiza siguiendo el mtodo lgico de refutacin, es decir, demostrar que si el teorema es falso se llega a una contradiccin. La regla de inferencia consiste en poner en forma clausulada las premisas y la negacin de la conclusin, seleccionar parejas de literales en clusulas distintas (generatrices) con el mismo nombre, uno negado y otro sin negar, compararlas (mediante su unificador mnimo) y si existe la unificacin aplicar la regla bsica de resolucin que consiste en crear un nueva clusula (resolvente) formada por la disyuncin del resto de los literales de las generatrices. Dicha clusula se aade al conjunto de clusulas existente y, tomando aqul como referencia, se intenta aplicar de nuevo el proceso. La bsqueda termina cuando la clusula est vaca. Procedimiento General de Resolucin: 1. Convertir todas las premisas en su forma clausulada (FNC) e inicializar un conjunto de clusulas P con dichas expresiones. 2. Convertir la expresin resultante de negar la conclusin C en forma clausulada y aadirla al conjunto de clusulas. 3. Realizar los dos puntos siguientes hasta encontrar la clusula vaca o hasta que no se pueda seguir avanzando o se agoten los recursos de clculo. Inicializar asignando un valor de referencia, nulo, a la variable que contendr el unificador mnimo encontrado s. Seleccionar parejas nuevas de tomos con el mismo nombre de predicado en clusulas distintas. Denominar a las clusulas G1 G2 y a la pareja de tomo A1 y A2 respectivamente. Buscar el unificador de mxima generalidad de A 1 y A2. Si se encuentra guardar su valor en s. Si s tiene un nuevo valor aplicar dicha sustitucin a G 1 y G2 formando su resolvente. Este procedimiento se puede enumerar de una forma ms sencilla (Lgica 1 Sanz y Torres): 1. 2. 3. 4. 5. Seleccionar una pareja de clusulas distintas. Aplicar el algoritmo de unificacin a la pareja de literales seleccionada. Si resultan unificadas, se resuelve y se incluye la resolvente en el conjunto. Volver a 1. El proceso termina cuando no es posible encontrar clusulas a unificar o cuando se obtiene la clusula vaca como resolvente. Estrategias de resolucin.

1. Seleccionar aquellas clusulas que tengan un nico literal. La clusula vaca se obtiene cuando se resuelven dos clusulas unitarias contradictoras. 2. Considerar alguna clusula para guiar el proceso de bsqueda de modo que se use ella o alguna de sus descendientes en la generacin de nuevas resolventes. Un planteamiento efectivo consiste en hacer que la clusula, o conjunto de clusulas elegido contenga hiptesis relativas al teorema a resolver, y de las obtenidas de negar la conclusin (encadenamiento hacia atrs, o dirigido por las metas). 3. Las estrategias de simplificacin reducen el nmero y la forma de las clusulas consideradas, se pueden distinguir: Eliminar tautologas Eliminar tomos repetidos en las clusulas, dejando slo uno de ellos (ley de idempotencia) Eliminar clusulas que contengan a otras.

Extensiones de la lgica clsica.


La lgica clsica slo admite dos valores, y se opera extensionalmente en las expresiones consideradas. La operacin en extenso o en intenso, se refiere a si se consideran exclusivamente los elementos que forman un determinado conjunto y su valor de verdad (extensin) o si se tiene en cuenta el concepto que designa (intensin); desde el punto de vista intensional dos Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

28

predicados pueden ser diferentes aun cuando estn definidos sobre los mismos elementos del dominio. La distincin entre intensin y extensin es fundamental a la hora de valorar la capacidad de cualquier sistema computacional.

Lgica Modal.
La lgica modal surge para satisfacer la necesidad de manipular adecuadamente los conceptos de necesidad y posibilidad. Cualifica los enunciados sealando si estos son posibles, imposibles, necesarios o contingentes (pueden suceder o no). La simbolizacin bsica de la lgica modal es una generalizacin de la sintaxis del clculo clsico, se introducen los siguientes smbolos. P es necesario que P uP es posible que P

Estos operadores tienen el mismo nivel que el operador negacin cumpliendo la siguiente ley de equivalencia: u P P Es posible que P = no es necesario que no P P u P Es necesario que no P = es imposible que P Para poder realizar la interpretacin de frmulas modales se introduce la idea de mundos (dominios parciales). Los mundos son subdivisiones del universo del discurso, de forma que en un determinado mundo un predicado sea verdad y en otro falso. Se debe de considerar entonces una relacin de accesibilidad entre los mundos. Con cualquier frmula vlida A podemos considerar estas reglas: A A : Si A es necesario, entonces es cierto en cualquier posible mundo M que escojamos. u A A: Si A es posible, entonces es cierto en un mundo no especificado con anterioridad.

Lgica Difusa.
En las lgicas polivalentes es posible distinguir ms de dos valores de verdad, lo que hace variar algunas propiedades formales esenciales; por ejemplo todos los teoremas por reduccin al absurdo al no cumplirse la ley del tercio excluso. Ms all de estas lgicas existe la lgica de conjunto difusos o lgica difusa, tambin llamada de enunciados vagos. En las lgicas polivalentes cada enunciado tiene un valor de verdad concreto y no depende del contexto. La lgica difusa permite afirmar que los enunciados son ms o menos verdaderos en un contexto determinado y ms o menos falsos en otro contexto. En lenguaje natural los conjuntos no estn totalmente definidos, la lgica difusa trata esta imprecisin definiendo los grados de pertenencia de cada miembro a dichos conjuntos, que se denominan conjuntos borrosos. La funcin que asocia a cada elemento su grado de pertenencia se llama funcin de pertenencia. Operaciones definidas sobre conjuntos borrosos. INCLUSIN F G si mF ( x ) mG ( x ) x U IGUALDAD DESIGUALDAD COMPLEMENTO UNIN INTERSECCIN

F = G si m F ( x ) = mG ( x ) x U F G si mF ( x ) mG ( x ) x U C(f) = {X|c(F)(x)=1- (F)(x) x U F G = {x| m F G ( x ) = max ( m F ( x ), mG ( x )) x U } F G = {x| mF G ( x ) = min( m F ( x ), mG ( x ))x U }

Dado un universo U y los conjuntos no borrosos X, Y y Z definidos en l, stos cumplen las propiedades de involucin, [c(c(X))=X], conmutativa, asociativa, distributiva, idempotencia, absorcin (Unin e interseccin, por el conjunto universo y por el conjunto vaco), identidad, contradiccin, ley del tercio excluso y las leyes de Morgan . Para conjuntos difusos, estas leyes se cumplen, excepto la de la contradiccin y la del tercio excluso. Por ello, los conjuntos borrosos dotados de las operaciones unin, interseccin y complemento no pueden formar un lgebra de Boole. Modificadores lingsticos. Clculos realizados 1- (x) 2(x) 2 2 (x)- (x) 2 2(x) si 0 (x) 0.5 1-2(1- (x))2 si (x)>0.5 De esta forma se pueden definir los modificadores difusos de la siguiente forma: Modificador difuso no muy Operacin asociada NEG((x)) CON((x)) Tipo de operacin Negacin Concentracin Dilatacin Intensificacin Representacin NEG((x)) CON ((x)) DIL((x)) INT((x))

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

29

algo casi bastante

DIL((x)) DIL(DIL ((x)) INT(CON ((x))

Interpretacin de sentencias compuestas. Disyuncin: Conjuncin: Condicional: I (P(x)Q(y)) = p(x) q(y) Inferencia en la lgica difusa Principio de herencia: dado un conjunto borroso A asociado a un predicado, que es un subconjunto de B, cualquier elemento con la propiedad A hereda la propiedad B. Regla de composicin: dado un elemento que cumple la propiedad representada por el conjunto borroso A y que esta relacionado a travs de R con un elemento de otro universo, se le puede asociar a este segundo elemento la propiedad resultante de componer A y R A(x) R (x, y) (A R)(y) Modus Ponens generalizado: A(x) B(x) C(x) (A (B C)) (y) Modus Tollens generalizado: D(y) B(x) C(y) (D (B C)) (x) Silogismo hipottico: A(x) B (y) B(y) C(z) (A B) (B C)) (x, z) I (P(x) Q(y)) = max (p(x), q(y)) I (P(x) Q(y))= min (p(x), q(y))

Lgicas No Montonas
Una de las dificultades del clculo de predicados es la excesiva rigidez a la que estn sujetos los razonamientos realizados. Para que el conocimiento del dominio pueda ser efectiva y eficientemente formulado en forma de una teora es necesario que sta sea completa, consistente y tratable. Para garantizar la completitud toda frmula vlida debe ser demostrable sin omisiones. La consistencia supone que todo aquello que se aada al sistema no debe contradecir a las leyes existentes. Quizs el requerimiento de consistencia sea la limitacin que ms contrasta con las situaciones reales ya que la percepcin de los problemas varan con el tiempo y pueden llevarnos a reconsiderar alguno de los principios iniciales. Esto tambin ocurre con el razonamiento basado en el sentido comn, donde se aplican principios que se suponen vlidos en el dominio, que pueden dejar de serlo en situaciones concretas. Para solucionar estos problemas se plantea una formulacin menos rgida, exigindose que las conclusiones sean consistentes con las condiciones de los problemas tratados y con las leyes aplicables a dichos problemas, entrando a considerar la temporalidad implcita de los razonamientos lgicos. La raz del problema est en la falta de conocimiento inicial del dominio, en estas situaciones se crean reglas o leyes que permiten realizar un tipo de razonamiento denominado razonamiento por defecto. Una de las posibles soluciones a este tipo de razonamiento son las lgicas no montonas, que tienen en cuenta lo que no se conoce

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

30

6. REGLAS
Componentes bsicos de los sistemas basados en reglas
Los Sistemas Basados en Reglas (SBR) tienen los siguientes componentes: Base de Afirmaciones

Base de Datos

Motor de Inferencia

Interfaz de Usuario

Base de Conocimientos Motor de Inferencia: (intrprete de reglas) Es el elemento central del sistema: se encarga de coordinar la informacin procedente de todos los dems y de enviar los resultados de la inferencia al lugar oportuno. Base de Conocimientos: Contiene las reglas y, a veces, tambin algunas afirmaciones iniciales. Es especfica del dominio. Base de Afirmaciones: (memoria de trabajo) Contiene las afirmaciones iniciales, las que se extraen de la base de datos, las que el usuario introduce como datos y todas las que el motor de inferencia infiere a partir de las anteriores aplicando las reglas. Interfaz de Usuario: Solicita al usuario la informacin necesaria y muestra los resultados. Base de Datos: Contiene los datos del caso concreto que se est tratando.

Estructura de las reglas


Antecedente y Consecuente de una Regla
Antecedente: Contiene las clusulas que deben cumplirse para que la regla pueda evaluarse o ejecutarse. Consecuente: Indica las conclusiones que se deducen de las premisas (interpretacin declarativa) o las acciones que el sistema debe realizar cuando ejecuta la regla (interpretacin imperativa). Elementos que pueden intervenir en una regla: Hiptesis : En un momento dado de una consulta, cada hiptesis tiene asociado un valor de verdad. Dato : Cada dato puede tomar un cierto tipo de valores: numricos, discretos. Relacin de comparacin : Se establece entre dos datos o entre un dato y un valor. Relacin de pertenencia : Se establece entre una instancia y un marco. Una relacin de pertenencia x ES y se considera cierta cuando x es una instancia del marco y. Clusula : Consiste en una hiptesis o una relacin (de comparacin o de pertenencia), o bien en la negacin, la conjuncin o la disyuncin de otras clusulas (mediante los operadores NO, Y y O). Con respecto a las conclusiones que forman el consecuente, podemos considerar tres tipos de acciones: Afirmar: Se establece una nueva relacin de comparacin o de pertenencia. Retractar: Se invalida una relacin que anteriormente fue afirmada. Actuar: El sistema enviar una orden a los actuadores con los que est conectado. Entre las distintas condiciones se considera implcita la conectiva Y. Adems la palabra clave AFIRMAR puede omitirse, de modo que si en una de las conclusiones de la regla no aparece ninguna de las tres acciones mencionadas, se supone que hay AFIRMAR implcito.

Uso de Variables en las Reglas


Una afirmacin como Todos los catedrticos son doctores, que en lgica de predicados se expresa como: x, CATEDRTICO(x) DOCTOR(x) dar lugar a la siguiente regla: SI ?x ES catedrtico(se interpreta cada predicado como la pertenencia) ENTONCES ?x ES doctor (a una clase -marco-) o bien a esta otra SI ?x.categora = catedrtico (se interpreta cada predicado como una propiedad) ENTONCES ?x.titulacin = doctor (o campo) Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

31

Conviene no confundir las variables (?x, ?y, ...) con los datos (Juan-Lpez.categora). Comentarios Una de las formas que ms diferencia entre s los sistemas basados en reglas es la forma de indicar la falsedad de una afirmacin: NEXPERT y otros, indican explcitamente si una determinada hiptesis es cierta, falsa, no investigada o desconocida se ha tratado de averiguar su valor de verdad sin conseguirlo. PROLOG y otros, slo almacenan las hiptesis confirmadas. Axioma del mundo cerrado: el considerar falsa toda proposicin que no se encuentre en la base de afirmaciones ni pueda deducirse de la informacin disponible. GoldWorks y otros, son menos explcitos y el diseador del programa tiene libertad para determinar si las va a considerar como desconocidas o como falsas. Algunos sistemas (GoldWorks, p.e.) permiten indicar si los datos son univaluados o multivaluados: Datos univaluados: La asignacin de un valor al dato elimina el que pudiera estar asignado anteriormente. Se evita informacin contradictoria. P.e. Pedro-Garca.edad = 63. Datos multivaluados: Hay casos en que no interesa que se pierda la informacin previa (PedroGarca.ltima-enfermedad). De este modo, la asignacin de un valor al dato no elimina el que pudiera estar asignado anteriormente.

Inferencia
Comparacin de patrones
Un patrn es un modelo que puede representar diferentes elementos en el contexto de las reglas, se usa para denominar las clusulas con variables. Equivale a un conjunto de afirmaciones. Casos en la ejecucin de una regla (cuando se cumplen las clusulas del antecedente): Clusula sin variables: Si la clusula es una hiptesis, se satisface cuando en la base de afirmaciones (BA) hay una afirmacin que coincide con ella. Si la clusula es una relacin, se satisface cuando los valores de los datos se ajustan a ella. Cuando una variable aparece por primera vez en una regla, la clusula correspondiente se satisfar si y slo si hay una asignacin de valor a dicha variable tal que el patrn coincida con uno de los elementos existentes en la BA. En caso contrario se dir que la regla ha fracasado. Cuando una variable aparece por segunda vez (o sucesivas veces) en una regla necesariamente tiene ya un valor que le fue asignado la primera vez que apareci. La clusula donde la variable aparece por segunda vez, se satisfar solamente si, al sustituir dicha variable por el valor asignado, la clusula coincide con una de las afirmaciones de la BA. Esto se aplica tanto para al antecedente como al consecuente de la regla. La regla se ejecutar una vez por cada asignacin de variables capaz de satisfacer todas sus clusulas. En este caso se habla de diferentes instanciaciones de una regla.

Tipos de encadenamiento
El encadenamiento de reglas se produce cuando el consecuente de una regla coincide con el antecedente de otra (si en la clusula coincidente hay alguna variable debe tener el mismo valor en las dos clusulas), es decir, cuando una conclusin obtenida de una regla sirve para ejecutar otra regla. Slo es aplicable cuando el consecuente de la primera regla es del tipo AFIRMAR (nueva afirmacin que se almacenar en la BA). Los tipos de encadenamiento son: Encadenamiento hacia adelante o basado en datos: la conclusin obtenida de la ejecucin de una regla permite que se ejecute otra u otras reglas. Este encadenamiento, en general, utiliza solamente los datos disponibles. Encadenamiento hacia atrs o basado en objetivos: consiste en buscar una regla que permita establecer cierta conclusin. Si la afirmacin existe en la BA se podr realizar la inferencia. Si no, se puede buscar una regla que contenga en su consecuente la anterior afirmacin y ver si s existe en la BA su antecedente, y as sucesivamente. Este encadenamiento suele solicitar del usuario la informacin que no ha podido deducir. El sistema deber incluir algn modo de controlar cundo y cmo se va a solicitar esta informacin. El encadenamiento hacia adelante, en principio ejecutar todas las reglas posibles en funcin de la informacin introducida. En cambio, el encadenamiento hacia atrs lleva implcito un proceso de bsqueda, por lo que es ms especfico y, por tanto, ms eficaz. El encadenamiento hacia adelante es utilizado por el sistema OPS5. Los sistemas MYCIN y PROLOG utilizan slo el encadenamiento hacia atrs. Los sistemas actuales (GoldWorks, KEE, NEXPERT, ...) permiten especificar con que tipo de encadenamiento (o con ambos) debe aplicarse cada regla. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

32

Dependencia Reversible e Irreversible


Una Dependencia Reversible es si al dejar de tener validez (se RETRACTA) el antecedente de una regla, tambin se retracta el consecuente. Se considera Dependencia Irreversible si al dejar de tener validez el antecedente de una regla no se retracta el consecuente. Por lo tanto, el SBR debe registrar junto con cada afirmacin la forma en que ha sido deducida. Los SBR actuales permiten que sea el diseador quien decida el tipo de dependencia.

Control del razonamiento


Es la forma de seleccionar qu regla ejecutar primero cuando hay varias disponibles. Es importante por tres motivos: 1. Contenido de la inferencia: las conclusiones pueden depender del orden de aplicacin de las reglas. Las reglas que tratan las excepciones deben activarse primero (evitar retractaciones posteriores). 2. Eficiencia: la aplicacin de la regla adecuada llevar ms rpidamente a la conclusin. 3. Dilogo que genera debe de evitar la solicitud de informacin deducible y el orden en que se solicita la informacin debe ser razonable.

Mecanismos sencillos.
Ordenar las reglas en la base de conocimientos: Es el mtodo ms simple y es poco elegante y de difcil mantenimiento. Slo aplicable a sistemas simples donde las reglas se hallan en una lista que se consulta cclicamente siguiendo el orden en que fueron introducidas por el usuario. El sistema OPS5 utiliza una variacin (RETE) que slo examina el efecto de la informacin aadida o eliminada de la BA en cada ciclo. Ordenar las clusulas dentro de cada regla: Slo puede ser utilizado por los sistemas que usan el encadenamiento hacia atrs. Se colocan primero las que tienen ms posibilidades de fallar y as se optimiza la bsqueda. Introducir nuevas clusulas en las reglas relacionadas con el punto en que se encuentra la inferencia: Las nuevas clusulas se aaden al principio del antecedente. Estas clusulas pueden servir para clasificar el punto de inferencia.

Control de las Agendas


Se realiza una bsqueda de todas las reglas que en un momento dado estn listas para ser ejecutadas. Se rene en una agenda cada asignacin de variables (instanciacin) que satisface una regla. Cada una de ellas ser un elemento de la agenda. Las agendas pueden tener estructura de pila o de cola y sus elementos pueden tener asignada una prioridad. Hay sistemas que pueden tener varias agendas, controladas por sus respectivos patrocinadores (sponsors). En este caso, cada regla est asignada a un patrocinador, en cuya agenda se almacenarn las instanciaciones de la regla. Cada agenda del mismo sistema puede tener una estructura diferente (cola o pila; con o sin prioridad). En unos casos, se distribuyen los recursos disponibles equitativamente entre los patrocinadores; en otros, el diseador puede, incluso, asignar una jerarqua a los patrocinadores. Si la informacin obtenida al ejecutar un elemento de una agenda hace que otro elemento deje de ser vlido, ste no llegar a ejecutarse (en algunos sistemas el motor de inferencia puede acceder al contenido de las agendas para actualizarlo: esta tarea suele resultar bastante compleja). Agrupar las reglas en un conjunto de reglas (rule sets) es otro mecanismo de control, independiente de las agendas (no incompatible) que permite activar o desactivar grupos de reglas en bloque, evitando as la necesidad de aadir clusulas adicionales en varias etapas Se desactivar un conjunto de reglas cuando se suponga que sus reglas no aportarn ninguna informacin relevante, y se activar solamente cuando sea necesario.

Metarreglas
Utilizadas por primera vez en el sistema TEIRESIAS - extensin de MYCIN- juntamente con los modelos de reglas (una forma estructurada de indicar los atributos comunes a un grupo de reglas, que se usaban para orientar la adquisicin de conocimiento). Los modelos de reglas y las metarreglas son las dos formas de introducir el metaconocimiento (conocimiento sobre el conocimiento) en TEIRESIAS. Una metarregla es una regla que se refiere a otras reglas, y nos lleva a examinar primero aquellas reglas que parecen ms relevantes para el problema en cuestin . De hecho hace afirmaciones sobre la utilidad estimada (la posibilidad de que nos lleve a una conclusin). Comentarios: El metaconocimiento es un paso ms en la explicitacin del conocimiento. Las capacidades de un sistema basado en metaconocimiento son: Tiene la posibilidad de modificar la estrategia de control sin tener que reprogramar el motor de inferencia. Capacidad de explicar la estrategia que utilizada, por qu ha aplicado unas reglas antes que o en vez de otras, etc. y de ah puede surgir ms adelante la posibilidad de reorganizar el conocimiento, de aprender a partir de la experiencia o mediante el dilogo con el usuario. Estas capacidades se basan en que el metaconocimiento, de algn modo, puede considerarse como una forma rudimentaria de consciencia (el sistema conoce que conoce): no puede hablarse de inteligencia sin que haya consciencia. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

33

Otros mecanismos
Los creadores del sistema OPS5, al abordar el problema del control del razonamiento mediante la seleccin de reglas, sealan dos caractersticas (en cierto modo contrapuestas) que debe poseer el sistema: Sensibilidad: indica la capacidad de responder a los estmulos: el sistema debe procesar con prontitud la nueva informacin que recibe. Estabilidad: exige que no haya una reaccin desmesurada ante los estmulos: la llegada de informacin poco relevante no debe alterar la lnea de razonamiento. Proponen varios mecanismos para lograr un compromiso entre ambos objetivos: 1. Refractariedad: Despus de haber respondido a un estmulo, el sistema se inhibe durante un cierto tiempo y no responde a nada (evita respuestas repetitivas al mismo estmulo). 2. Actualidad: Se examinan primero las reglas apoyadas en la informacin ms reciente. OPS5 lo consigue anotando junto con la afirmacin, en la BA, el ciclo en que se dedujo. 3. Especificidad: Aplicar primero las reglas ms especficas (contienen ms informacin).

Explicacin del razonamiento


El primer sistema capaz de explicar su razonamiento fue MYCIN, una regla slo se ejecuta cuando se ha comprobado que se cumplen todas sus premisas, teniendo en cuenta que ante la imposibilidad de deducir una conclusin interesante el sistema interrogar al usuario. En usuario puede, entonces, interrogar al sistema: POR_QU (WHY): se solicita del sistema la razn por la cual solicita nueva informacin. CMO (HOW): se solicita del sistema la forma en que ha llegado a una determinada conclusin. Posteriormente se incluyeron en MYCIN otras posibilidades de explicacin para que el programa pudiera responder a preguntas en lenguaje natural.

Tratamiento de la incertidumbre
En el mundo real existen numerosas fuentes de incertidumbre (afirmaciones imprecisas, dominios no deterministas, etc.)

Factores de certeza en MYCIN


Un factor de certeza indica la fiabilidad con que podemos aceptar una hiptesis inferida a partir de una o unas ciertas premisas. En la prctica estos factores se obtienen a partir de las estimaciones subjetivas de los mdicos participantes en el proyecto. P.e., SI e ENTONCES h genera un factor de certeza FC(h,e). Cuando en una regla hay varias premisas, se utiliza una combinacin de mximos y mnimos, dependiendo de si se trata de conjunciones o disyunciones, con el fin de obtener un factor de certeza FC(h, e1, e2, ..., en). El problema es la combinacin de los factores de certeza, ya que el sistema est basado ms en intuiciones que en una teora consistente. La lgica difusa se puede aplicar mediante reglas difusas (usadas predicados difusos). La estructura general es: SI X1 es A1 Y ... Y Xn es An ENTONCES Y es B En el caso de que haya una sola premisa X es A, la regla puede interpretarse mediante una distribucin de posibilidad condicional, B|A(x,y), que es una relacin difusa binaria del tipo R(x,y) En el caso de que tengamos una regla con varias premisas, habr que combinar las Ai(xi) mediante los operadores mnimo o mximo segn se trate de una conjuncin o una disyuncin, respectivamente. Tambin es posible combinar las reglas en serie (encadenar conclusiones de una con premisas de otra) o en paralelo (varias reglas conducen a una misma conclusin) utilizando las propiedades de unin e interseccin.

Valoracin
Comparacin con los Programas Basados en Comandos
El uso de reglas supone utilizar un sistema de programacin declarativa que le dice al ordenador cul es el conocimiento que debe aplicar (contrapuesto a la programacin imperativa donde se le dice al ordenador lo que debe hacer). Las diferencias entre la concepcin de comandos (imperativa) y la de reglas (declarativa) son: 1. Los comandos tienen un carcter secuencial, mientras que las reglas tiene un carcter modular (no existe un orden preestablecido a priori). 2. La aplicacin de las reglas se basa en la comparacin de patrones: el uso y significado de las variables no tiene nada que ver con su uso en la programacin imperativa: las variables permiten que las reglas se adapten a diferentes situaciones. 3. La dependencia reversible y la dependencia irreversible es un rasgo distintivo de los sistemas basados en reglas: la capacidad de retractar una afirmacin inferida. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

34

4. Las capacidades de explicar el razonamiento, reorganizar el conocimiento y de aprender de sus errores son incompatibles con los sistemas basados en comandos. 5. El tratamiento de la incertidumbre es otro de los rasgos ms tpicos de los SBR. Los siguientes aspectos que hacen que los sistemas basados en comandos sean ms utilizados. Si un problema tiene una solucin que no precise de una bsqueda heurstica, o sea, resoluble mediante un algoritmo, la solucin ser ms rpida haciendo uso de sistemas imperativos que con otros sistemas. Las tareas de bajo nivel (lectura y escritura de archivos, gestin de bases de datos, acceso a dispositivos, etc.) son ms fciles de realizar en lenguajes tradicionales.

Comparacin con la Lgica de Predicados


Las reglas pueden considerarse como una versin reducida de la lgica de predicados. Se encuentran limitadas (respecto a la lgica de predicados) por su expresividad, la imposibilidad, o al menos las restricciones, a la hora de utilizar cuantificadores existenciales, la reduccin en su capacidad de inferencia, slo afirman el consecuente a partir de la afirmacin del antecedente (modus ponens); en cambio no hacen uso del modus tollens. Pero poseen una ventaja respecto a la lgica de predicados, el tratamiento de la incertidumbre.

Crtica de los Sistemas Basados en Reglas


Cuando un sistema crece por encima de un lmite se hace muy costoso o prcticamente imposible comprobar la consistencia del conocimiento que posee. En particular, la adicin de una nueva regla puede modificar el comportamiento de forma imprevisible. El tratamiento de la incertidumbre, no es, realmente, todo lo adecuado que debiera.

Apndice: expresividad y tratabilidad


Expresividad: Capacidad de representar el conocimiento. Necesaria para poder plantear el problema. Tratabilidad: Posibilidad de resolver un problema con los medios disponibles. Necesaria para poder resolver el problema. En un sistema, cuanto ms aumenta una ms disminuye la otra, por lo que es necesario llegar a un compromiso que maximice ambas.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

35

7. REDES ASOCIATIVAS.
Grafos relacionales
Modelo de Memoria Semntica, de Quillian
El modelo de Quillian consiste en representar el significado de los trminos de la lengua inglesa de forma semejante a como aparecen en un diccionario. Tiene como objetivo realizar un programa capaz de almacenar informacin sobre el significado de las palabras para comprender el lenguaje natural. Lo hace poniendo las definiciones como en un diccionario, es decir, nodos unidos por diferentes clases de enlaces asociativos. La nomenclatura utilizada en una red semntica de Quillian es: Nodo-tipo ( type node): Encerrado en un valo, representa el concepto definido. Nodos-rplica ( token nodes): Desarrollo de la definicin. Variables para indicar conceptos que aparecen en el mismo plano de definicin (en el mismo rectngulo). Los nmeros se utilizan para distinguir los diferentes significados de un mismo trmino (con-4, representa el cuarto significado de la palabra con). En las redes de Quillian aparecen seis tipos de enlaces: 1. 2. 3. 4. 5. Subclase: une un nodo-tipo con la clase a la que pertenece. Modificacin: une dos nodos-rplica del mismo plano, de modo que el segundo modifica el alcance del primero. Disyuncin: lleva la etiqueta O. Une dos o ms nodos. Conjuncin: lleva la etiqueta Y. Une dos o ms nodos. Concreta el significado de un concepto. Propiedad: une tres nodos A, B y C, donde A es la relacin, B el sujeto y C el objeto. B A C 6. Referencia al tipo: van desde el nodo-rplica al correspondiente nodo-tipo. Se dan siempre entre planos diferentes. El inters de representar computacionalmente el conocimiento consiste ante todo en poder realizar inferencias con el fin de obtener nueva informacin. La tesis de Quillian se limit a una forma muy sencilla de inferencia: cmo comparar el significado de dos palabras, suponiendo que esta tarea significa un primer paso hacia la compresin de frases y relatos. La comparacin de palabras por el mtodo de Quillian se realiza de la forma siguiente: 1. Activar los nodos vecinos de cada una de las dos definiciones creando esferas de activacin de radio 1. 2. Comprobar las coincidencias. Cada interseccin de esferas corresponde a un camino que une los dos nodos (una relacin entre significados). 3. Si no hay coincidencias, ampliar las esferas a radio 2 y repetir la comprobacin. 4. Repetir el proceso hasta encontrar coincidencias y poder relacionar los conceptos. El resultado final del programa se obtiene convirtiendo cada camino en una frase explicativa. La estructura que utiliza Quillian es totalmente dependiente del idioma particular en que se formula el sistema. Esta dependencia se hace evidente cuando se tratan trminos polismicos. Lo ideal es que no exista esa dependencia pero para ello habra que pasar de la representacin de palabras a la representacin de conceptos. En las redes semnticas de Quillian no se puede extraer nueva informacin mediante inferencia, sino simplemente realizar comparaciones del significado de las palabras.

Sistema SCHOLAR de Carbonell


Inspirado en el trabajo de Quillian, Carbonell construy este sistema de enseanza asistida por ordenador, dedicado a ensear un tema concreto al alumno, por medio de una base de conocimiento en forma de red crea dinmicamente preguntas para el alumno y responde las que ste le planteaba. Las propiedades ms importantes son : 1. Motor de inferencia prcticamente independiente del dominio. De esta forma poda utilizarse para generar fcilmente programas similares para la enseanza de otros temas. 2. Una gran aportacin de este sistema es la distincin entre los nodos que representan conceptos y los que representan ejemplos particulares. 3. Al igual que Quillian, tambin define cada nodo mediante dos elementos, la clase a la que pertenece y una lista de propiedades. Una propiedad viene dada por un atributo, un valor y, opcionalmente, otras subpropiedades. Adems cada propiedad puede llevar asociadas unas funciones destinadas a lograr inferencias ms eficientes; estas funciones se utilizan hay en da en la representacin basada en marcos, con el nombre de demonios. 4. La distincin entre conceptos (o clases) e instancias, y la asignacin de propiedades en forma de pares atributo-valor constituyen en la actualidad dos caractersticas esenciales de la representacin basada en marcos y, de una u otra forma, de la mayor parte de los modelos de redes semnticas. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

36

5. Hoy en da no se considera una red semntica, debido a que no est dedicado a la representacin del significado de los conceptos ni a la comprensin del lenguaje natural.

Grafos de Dependencia Conceptual, de Schank


Schank intenta hacer lo mismo que Quillian, pero, apoyndose en los estudios lingstica (ms que en los estudios psicolgicos de la memoria humana), intenta independizar el sistema del lenguaje, no le interesa representar las palabras sino los conceptos. En los grafos de dependencia conceptual, dos sentencias diferentes con el mismo significado, tendrn la misma representacin, y adems, cualquier informacin implcita deber hacerse explcita en la representacin del significado de una sentencia. Representa las oraciones mediante primitivas: 6 categoras conceptuales: objeto fsico (una cosa o un ser vivo), accin, atributo de un objeto fsico, atributo de una accin, tiempo y localizacin. PP Objetos del mundo real. ACT Acciones del mundo real. PA Atributos de objetos. AA Atributos de acciones. T Tiempos. LOC Posiciones. 16 reglas sintcticas: determinan los diferentes tipos de relacin que pueden existir entre los elementos de una frase. Acciones primitivas: PTRANS Transferir fsicamente (cambiar de lugar un objeto). ATRANS Transferir una relacin abstracta, como posesin o control. MTRANS Transferir mentalmente (decir, contar, comunicar, etc.). PROPEL: Aplicacin de una fuerza fsica a un objeto. MOVEL: Movimiento de una parte del cuerpo. GRASP: Acto por el que un actor coge un objeto. INGEST Ingerir. CONC: Conceptualizacin o pensamiento de una idea por un actor. EXPEL: Expulsin desde un cuerpo animal al exterior. MBUILD: Construccin de una informacin a partir de una que exista. ATTEND: Accin de dirigir un rgano de los sentidos hacia un objeto. SPEAK: Accin de producir sonidos con la boca. ...... Nomenclatura: El elemento central del diagrama viene dado por una de las acciones primitivas (un verbo). Relaciones sintcticas: sujeto - verbo: objeto - verbo: posesin o parte-de: A pertenece a B. direccin: recepcin: causalidad: ....... De este modo cada frase se descompone en elementos simples con el fin de tener una representacin independiente del idioma. Las ventajas de utilizar un conjunto limitado de primitivas es que stas determinan unvocamente la representacin del conocimiento, y que al ser un mtodo determinista y finito se puede construir un intrprete capaz de realizar inferencias; sin limitar el nmero de elementos y relaciones esto sera imposible. Uno de los tipos de inferencias que se pueden dar con estos grafos es la de establecer condiciones, hallar causas e intenciones. El sistema debe tener la potencia y flexibilidad necesarias para abordar problemas complejos, los grafos conceptuados lo hacen mediante la descomposicin de cualquier frase en elementos. Este mtodo tiene una serie de desventajas: Se cuestiona la validez de definir un conjunto de primitivas universales. Algunos autores consideran que el significado de una frase, salvo en los casos ms sencillos, es inseparable de la lengua en que se encuentra formulada. Los grados conceptuales suponen una descripcin demasiado detallada de las acciones. Se obtienen grafos muy complejos para oraciones relativamente sencillas. El nmero de primitivas depender del grado de detalle que debemos alcanzar en la descomposicin. Hay autores que afirman que no tiene sentido trabajar con un nmero mnimo de primitivas, sino que hay que hacerlo con distintos niveles de detalle, de modo que el sistema puede explicitar los elementos cuando sea necesario. Se centra la representacin en torno al verbo. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

37

Problemas de los Grafos Relacionales


A pesar de que cada nodo corresponde a un concepto en estos tipos de redes no se pueden tratar los operadores universal y existencial de la lgica de predicados. Tampoco tratan la interaccin entre varias proposiciones, por ejemplo no se puede transcribir la frase Cuando es de noche y hay niebla es peligroso conducir.

REDES PROPOSICIONALES
Los nodos no representan slo conceptos sino que tambin representan sintagmas, clusulas, frases, prrafos e incluso historias completas.

Redes de Shapiro
Fueron las primeras que incluan todos los operadores y cuantificadores de la lgica de primer orden. En su sistema llamado SNePS, cada nodo puede representar un concepto, una variable, una frase, una relacin o una regla de inferencia. La propiedad ms destacable es que se pueden anidar proposiciones.

Representacin mediante Grafos de Sowa


Tienen el mismo objetivo que las redes de Shapiro. La determinacin de los contextos se realiza trazando rectngulos que agrupen cierto nmero de nodos. Existen muchas similitudes entre los grafos de Sowa y los de Shapiro. En cambio, en los grafos de Sowa, se utiliza un crculo para indicar el tipo de relacin, en lugar de la etiqueta que se utiliza en los de Shapiro. Otra diferencia es que Sowa indica explcitamente en cada nodo la clase a la que pertenece. Tanto la representacin grfica de Shapiro como la de Sowa pueden expresarse en notacin lineal, de manera que los nodos aparecern entre corchetes y las etiquetas de los arcos entre parntesis. Esta notacin ocupa menos espacio y es ms fcil de manipular por un programa de ordenador. Usando esta notacin tendremos, por ejemplo:

[RO: *] [RO] [RO](ATR)[CAUDALOSO] [RO: {*}] [RO: {*}@3] [RO: #] [RO: ?] [RO: ] . . . .

Un ro (operador existencial). Un ro caudaloso. Algunos ros. Tres ros. El ro (uno especfico). Qu ro? Todos los ros (operador universal).

Para concretar un elemento utiliza el smbolo # ([RO: #]). En este tipo de proposiciones el encargado de descubrir la identidad del ro es el intrprete. La mayor parte de los modelos de redes utilizan variables con el fin de representar un objeto o un concepto que aparece en varios lugares diferentes. En este caso se utilizar una lnea discontinua para identificar los nodos que representan un mismo ente. La T se utiliza para representar un nodo sin especificar la clase a la que pertenece). En la notacin lineal, al no poder unir los nodos mediante lneas discontinuas, se utilizan variables para indicar los nodos que coinciden. En un grafo de Sowa intervienen elementos de tres clases: Conceptos genricos, tales como LIBRO, PERS, PENSAR y COMER. Conceptos individuales, tales como [PERS: Luis] que representa a una persona individual, o [PENSAR], que representa un acto de pensamiento. Relaciones conceptuales, que pueden ser unitarias (PASADO, NEG, etc.), binarias (AGT, OBJ, etc.) e incluso ternarias (ENTRE, para indicar que A se encuentra ENTRE B y C). Al conjunto de conceptos genricos y de relaciones conceptuales establecido anteriormente en el sistema se le conoce como conjunto cannico, y a partir de l se pueden definir nuevos conceptos y relaciones.

Inferencia en Grafos de Sowa


La inferencia en este tipo de grafos se implementa mediante un conjunto de operaciones bsicas. Restriccin: concretar ms la informacin del grafo. Introduce informacin adicional, a veces, se pierde la veracidad del grafo resultante. Generalizacin: operacin recproca a la anterior. No introduce ninguna informacin adicional, por tanto si el grafo original era verdadero, el generalizado tambin lo ser. Unin y Simplificacin: se aplican conjuntamente sobre un par de grafos.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

38

Estas operaciones, junto con unas sencillas reglas de clculo permiten implementar mediante grafos conceptuales toda la lgica de primer orden e incluso algunas caractersticas de la lgica de orden superior. Es lo que se puede denominar razonamiento exacto o razonamiento deductivo mediante grafos de Sowa. Con ste mtodo se trabaja en la representacin de razonamientos aproximados o probabilsticos.

REDES DE CLASIFICACIN
Extensin e Intensin
El significado intensional se refiere a la definicin del concepto, que no vara salvo que se redefina. El significado extensional, se refiere a los elementos a los que se les puede aplicar el concepto dentro de un universo determinado, puede variar ya que el conjunto de miembros perteneciente a esa clase no tiene por qu ser fijo. Se discute si las redes de clasificacin deben representar conceptos (intensionales) o clases (extensionales). Los sistemas ms importantes que existen actualmente (los grafos de Sowa y los lenguajes derivados de KL-ONE) optan por el significado intensional frente al extensional.

Jerarqua de Conceptos
En las redes de clasificacin los arcos establecen una relacin de orden parcial sobre los nodos, formando una jerarqua de conceptos. Un arco trazado desde un nodo A hacia un nodo B especifica que A es ms general. Se trata de un rbol, un grafo dirigido acclico ms concretamente, en que hay bucles pero no ciclos. Un nodo puede tener varios ascendientes, pero el descendiente de un nodo no se puede convertir en su ascendiente mediante un ciclo.

Mecanismos de Herencia
El inters de agrupar los conceptos en una red jerrquica es por poder realizar un tipo de inferencia, que consiste en que un concepto herede las propiedades de sus antepasados. La inferencia mediante herencia de propiedades consiste en aplicar una cadena de silogismos extrados de la lgica clsica: Si X es un animal, los animales son vivientes, y los vivientes son objetos fsicos, entonces X es objeto fsico. Hay dos tipos de herencia en redes jerrquicas la herencia estricta, en la que todos los conceptos descendientes de A poseen las mismas propiedades de A. Se cie a las leyes de la lgica clsica, y la herencia por defecto que supone que los descendientes de A poseen las mismas propiedades de A mientras no se indique lo contrario. Se sita dentro del razonamiento no montono. Plantea un problema al trabajar con grafos dirigidos acclicos, ya que el hecho de que un nodo pueda tener distintos padres hace que puedan surgir contradicciones entre los diferentes valores por defecto heredados. De ah surge la necesidad de establecer mecanismos para resolver estos conflictos.

Sistemas Taxonmicos / Sistemas Asertivos


El conocimiento contenido en una red semntica puede ser de dos clases, asertivo y taxonmico, y esto da lugar a dos grupos de redes, en funcin del tipo de conocimiento al que dan ms importancia: Conocimiento Asertivo: consiste en realizar afirmaciones particulares. En ellas no existen definiciones de conceptos ni clasificaciones jerrquicas, sino solamente afirmaciones concretas. Los grafos Schank son el ejemplo ms claro de redes asertivas. Conocimiento Taxonmico: describe los conceptos. El sistema KL-ONE es un ejemplo de red taxonmica, ya que est diseado especialmente para clasificar los conceptos y manejar sus propiedades.

REDES CAUSALES
Los nodos corresponden a variables y los enlaces a relaciones de influencia (un enlace XY indica que el valor que toma X influye en el valor de Y); esta influencia suele ser una relacin de causalidad (X produce Y). Se orientan sobre todo a problemas de diagnstico.

El Sistema Experto CASNET


Su objetivo es ayudar a los mdicos en el diagnstico y tratamiento del glaucoma. Estructura sus nodos en tres niveles: Observaciones: incluye los sntomas (lo que el enfermo siente), los signos (lo que el mdico observa) y los resultados de las pruebas de laboratorio. Estados Patofisiolgicos: las alteraciones que se producen en el funcionamiento normal de un rgano (en este caso el ojo). Estados de enfermedad: las enfermedades se encuentran clasificadas en un rbol taxonmico; los nodos inferiores corresponden a especificaciones de los nodos superiores. Usa distintos tipos de enlaces. Dentro del plano de las enfermedades, los enlaces indican relaciones de inclusin. En el plano de los estados patofisiolgicos, los enlaces corresponden con las relaciones de causalidad que determinan la evolucin de la enfermedad. Los enlaces entre el plano superior y el mediano indican los estados patofisiolgicos producidos por una Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

39

determinada enfermedad. Los enlaces entre el plano mediano y el inferior indican las observaciones a que da lugar cada estado patofisiolgico. Los diagnsticos pueden consistir en estados patofisiolgicos (hiptesis simples) o en enfermedades (que son hiptesis complejas). El proceso consiste en interpretar los hallazgos en funcin de los estados patofisiolgicos que han podido provocarlos. El programa asocia un valor concreto a cada zona, el cual ser confirmado, indeterminado o descartado, segn los estados patofisiolgicos observados. Este sistema experto es capaz, tambin, de ofrecer recomendaciones teraputicas. Para ello se cuenta con un cuarto grupo de nodos, uno por cada tratamiento, que tambin pueden dibujarse dentro de un plano, aunque ste ya no sera paralelo a los anteriores. Para ello usa dos tipos de enlaces exclusivos. Uno de ellos se destina a unir los estados patofisiolgicos y las enfermedades con los tratamientos oportunos, o para unir un tratamiento con las complicaciones a que puede dar lugar. El otro tipo de enlace se utiliza para unir los tratamientos entre s con el fin de representar las interacciones, la toxicidad y las dependencias temporales.

Redes Bayesianas
El teorema de Bayes nos permite pasar de las probabilidades a priori de las hiptesis de los hallazgos a las probabilidades de las hiptesis dados los hallazgos, mediante la siguiente expresin:

P d 1 ,K, d n | e 1 ,K, e m =

d '1 ,K,d 'n

P (e

P e 1 ,K, e m | d 1 ,K, d n P d 1 ,K, d n


1

,K, e m | d '1

) ( ,K, d ' ) P ( d '


n

,K, d ' n

donde las di representan los diagnsticos y las ej los hallazgos. Esta expresin es imposible de aplicar por la enorme cantidad de informacin que requiere. Por eso se introduce la hiptesis de que los diagnsticos son exclusivos y exhaustivos (no hay otro diagnstico posible fuera de ellos). An as, el modelo es intratable, por la necesidad de conocer todas las probabilidades que intervienen. Por ello se introduce una nueva hiptesis, la dependencia condicional, que consiste en afirmar que, para cada diagnstico, la probabilidad de encontrar un hallazgo es independiente de que se hayan encontrado otros:

P e 1 ,K, e m | d i = P e 1 | d i P e 2 | d i KP e m | d i ,
la probabilidad de un diagnstico viene dada por

(
(

) (
)

) (
)

d i

P d i | e 1 ,K, e m =

P (e
j

P e 1 | d i KP e m | d i P d i
1

| d j KP e m | d j P d j

) (

) ( )

) ( )

A pesar de que el problema resulta tratable no se usarn las tcnicas bayesianas hasta que aparezcan las redes bayesianas (RB), que mantienen las ventajas del mtodo probabilista clsico, estn basadas en un teora matemtica bien establecida, y a la vez permiten un clculo de eficiencia razonable sin tener que introducir hiptesis extraas. El Sistema Experto DIAVAL es el primer sistema experto bayesiano espaol. Desarrollado por UNED para ayudar a los mdicos en el diagnstico de las enfermedades de corazn. En DIAVAL los nodos que no tienen descendientes corresponden a las observaciones. La inferencia consiste en asignar los valores a las variables que se conocen y, a partir de esta informacin, realizar la propagacin de la evidencia mediante el paso de mensajes entre nodos, con el fin de hallar la probabilidad a posteriori de los dems nodos. Una Red Bayesiana es un grafo dirigido acclico (GDA) conexo ms la distribucin de probabilidad sobre sus variables, la cual cumple la propiedad de separacin direccional. La separacin direccional es que la probabilidad de una variable X, una vez determinados los valores de los padres de X, es independiente de los dems nodos-variables que no son descendientes de X. O sea, para cada nodo se indica la probabilidad condicionada a los valores de sus padres; para los nodos sin padres se dar su probabilidad a priori, es decir, sin condicionamiento. En las redes bayesianas la presencia de un enlace indica influencia causal, y la ausencia de un enlace indica implcitamente que no existen otras interacciones. La inferencia en Redes bayesanas consiste en fijar el valor de las variables conocidas con certeza y realizar un clculo con el fin de hallar la probabilidad de las variables cuyo valor no se conoce con certeza.

Ventajas y Limitaciones de las Redes Causales


Como ventajas tiene que al razonar sobre un hecho real, el sistema posee un conocimiento profundo de los procesos que intervienen, en vez de limitarse a una mera asociacin de datos e hiptesis. Los programas resultantes son capaces de explicar la cadena causal de anomalas que va desde la enfermedad diagnosticada hasta los efectos observados. Se pueden realizar tres tipos de razonamiento, Razonamiento abductivo que consiste en buscar cul es la causa que mejor explica los efectos observados. Diramos que se trata de un razonamiento hacia arriba. Razonamiento deductivo que es el recproco del anterior, pues va desde las causas hasta los efectos, es decir hacia abajo. Razonamiento intercausal que es un razonamiento en horizontal. A partir de la seguridad de una causa se debilitan las otras posibilidades (se reduce la sospecha de otras). En la prctica los tres razonamientos se realizan simultneamente, la distincin entre ellos permite que los modelos causales tengan presente la correlacin que existe entre los hallazgos. Sus inconveniente es la limitacin en su rango de aplicaciones.

Ventajas e Inconvenientes de las Redes Bayesianas

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

40

Adems de las ventajas comunes a otros mtodos de razonamiento causal, las redes bayesianas poseen una slida teora probabilista que les permite dar una interpretacin objetiva de los factores numricos que intervienen y dicta de forma unvoca la forma de realizar la inferencia. Sus inconvenientes son la limitacin en cuanto al rango de aplicaciones. Necesitan un gran nmero de probabilidades numricas, y normalmente no se dispone de toda esta informacin por lo que es necesario recurrir a estimaciones de expertos humanos. La presencia de bucles complica extraordinariamente los clculos ya que los mtodos de simulacin estocstica resultan ms eficientes que los mtodos exactos, aunque resulta costoso (en trminos de tiempo de computacin) lograr el grado de aproximacin deseado. Se hace necesario evitar una explosin combinatoria.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

41

8. MARCOS Y GUIONES
CONCEPTO DE MARCO
La propuesta de Minsky
Minsky propuso los marcos como mtodo de representacin del conocimiento y de razonamiento, para superar las limitaciones de la lgica a la hora de abordar problemas como la visin artificial, la comprensin el lenguaje natural o el razonamiento basado en el sentido comn; problemas que requieren identificar estructuras complejas de conocimiento que representan una situacin conocida. Al contrario que las reglas o la lgica, los marcos son unidades de almacenamiento suficientemente grandes como para imponer una estructura en el anlisis de una situacin. Cada marco se caracteriza por un conjunto de campos (slots) que contienen distintas clases de informacin, parte de esta informacin indica como usar el marco, otra se refiere a lo que se espera que suceda a continuacin, y otra parte indica que hacer cuando no se confirman tales expectativas. En su propuesta original, ms que describir con detalle un mtodo completo, trat de dar ideas y sugerencias, por ello del planteamiento original han surgido tantos modelos y tan diferentes entre s. Las distintas formas de representacin basadas en los marcos se distinguen entre si por la forma en que definen y utilizan los campos. Otra de las ideas novedosas de Minsky es la posibilidad de tener distintos marcos para definir una misma entidad desde distintos puntos de vista.

El Sistema Experto PIP (Present Illness Program)


En este sistema cada enfermedad se representa por un marco, compuesto de los siguientes campos: Nombre: Identifica al marco. Es-un-tipo-de: Lo clasifica, indicando si es un estado fisiolgico, enfermedad, etc. Hallazgo: Contienen los datos clnicos observados para una enfermedad dada. No-debe-haber: Reglas de exclusin, sealan que dato no debe presentarse en dicha enfermedad. Criterios mayores y menores: Parmetros de ponderacin de datos clnicos. Enlaces con otros marcos de la red [campos puede-estar-producido-por, puede-complicarsecon; puede-producir; diagnstico-diferencial; ]. En un momento dado un marco puede estar en uno slo de los 4 estados posibles: durmiente, semiactivo, activo o aceptado. Inicialmente todos estn durmientes. Un proceso de diagnosis comienza recogiendo informacin, y si se encuentra un sntoma, se activan todos los marcos caracterizados por ese hallazgo como candidatos, los marcos relacionados pasan al estado semiactivo. (Se genera un espacio de bsqueda limitado, evitando el problema de la explosin incontrolada). Posteriormente se evalan las hiptesis generadas para encontrar el marco que mejor se adapte a los datos recogidos. El campo es-suficiente puede llevar a un marco como aceptado. El campo no-debe-haber puede excluirlo del conjunto de hiptesis. Si de los datos no se acepta ni se rechaza un diagnstico entonces se pondera la evidencia a favor o en contra segn los campos criterios-mayores y criterios-menores, hasta que la evidencia acumulada supere un cierto umbral, entonces el marco correspondiente pasa a considerarse aceptado. Si no se llega a un umbral de aceptacin se pasa a una 2 fase de recogida de informacin, orientada por el conjunto de hiptesis disponible (los marcos activos) dando lugar, as, a un proceso cclico de generacin de preguntas y de ponderacin de la evidencia hasta llegar a un diagnstico satisfactorio. Las ventajas de PIP frente a sistemas de diagnosis basados en rboles de decisin, donde cada nodo representa una pregunta con varias respuestas alternativas, son: Flexibilidad en el dilogo: el usuario puede introducir la informacin en el orden deseado. Generacin de preguntas en funcin de la evidencia disponible. Diagnstico de mltiples enfermedades (un rbol se basa en hiptesis excluyentes entre s: no puede haber dos enfermedades presentes al mismo tiempo).

El Lenguaje KRL
El propsito del KRL (Knowledge Representation Language) es ofrecer los mecanismos necesarios para una representacin estructurada del conocimiento en contraposicin a la lgica de predicados y sus variantes que carecen de estructura. Para ello la informacin se agrupa en torno a los objetos o unidades (units), que pueden contener marcos o instancias. Los campos de una unidad pueden contener, valores por defecto provenientes de la herencia de propiedades, y, prototipos que son una unidad que en vez de corresponder a un objeto concreto representa un elemento tpico de una clase. Ofrece varias posibilidades para controlar el razonamiento, la comparacin (Matching) similar a la comparacin de patrones de las reglas pero ms flexible pues puede bastar un ajuste parcial, mientras que en una regla slo se ejecuta cuando se han satisfecho todas sus clusulas.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

42

La asignacin de procedimientos a los marcos o a sus campos pueden ser de dos tipos, los sirvientes que son procedimientos activados por el marco para alcanzar cierto objetivo y los demonios: se activan automticamente en ciertas circunstancias. Otras posibilidades de control del razonamiento son la profundidad de procesamiento variable (el usuario determina as cuantos marcos van a ser activados), la gestin de agendas, el establecimiento de niveles de prioridad, los mtodos de naturaleza heurstica.

Herramientas basadas en Marcos


Existen numerosas herramientas basadas en marcos, algunas como FrameKit usan slo este tipo de representacin, otras como ART, KEE, GoldWorks, Nexpert combinan marcos y reglas. Las propuestas actuales estn inspiradas en la propuesta de Minsky aunque, en la prctica carecen de muchas de las propiedades que l sugiri (la organizacin de los marcos mediante una red en la que unos marcos podan ocupar los campos de otros marcos dando lugar, a una red de activacin). Los marcos originales estaban orientados al reconocimiento de imgenes y del lenguaje natural, mientras que los actuales se utilizan en la construccin de sistemas expertos, donde el diagnstico mediante comparacin de patrones desempea un lugar menos importante.

Inferencia mediante marcos


Los sistemas actuales basados en marcos se basan una organizacin jerrquica cuyo principal modo de inferencia es la herencia de campos, de valores por defecto, de demonios, etc. El punto de partida es la creacin de una red de marcos e instancias, cada marco representa un concepto o una clase, hereda los campos de todos sus antepasados en la red. Cada instancia representa un elemento dentro de la clase, hereda campos y valores de los marcos a los que pertenece (en GoldWoks cada instancia pertenece a un solo marco, en Nexpert puede pertenecer a varios marcos).

Facetas
Las facetas definen las propiedades de un campo. Entre las que suelen darse en las herramientas actuales destacan: Valor por defecto: Asignado al marco, heredado por las instancias posteriores. Multivaluado: Es una faceta que indica si el campo es univaluado o multivaluado. Restricciones: Limitan el conjunto de valores que puede recibir el campo. Certeza: Indica la credibilidad del valor asignado al campo. Facetas del Interfaz: Contienen texto, preguntas y mensajes destinados a la interaccin con el usuario.

Demonios
Los demonios son funciones o procedimientos que se invocan automticamente al realizar ciertas operaciones sobre el valor de un campo. Se utilizan sobre todo para actualizar los campos que dependen de otros, manteniendo la consistencia del sistema. Cada campo puede tener asociado distintos tipos de demonios y cada uno se activa frente a un suceso concreto, entre ellos se encuentran los siguientes: Demonio de necesidad: cuando se necesita conocer el valor de un campo y no hay ninguno asignado. Demonio de acceso: cuando se solicita el valor de un campo aunque haya uno asignado. Demonio de asignacin: cuando se aade un valor a un campo. Demonio de modificacin: cuando se vara el valor de un campo. Demonio de borrado: cuando se elimina el valor de un campo. Los demonios no slo relacionan entre s los campos de una misma instancia; tambin sirven para actualizar la presentacin grfica del interfaz, buscan en una base de datos la informacin requerida, para controlar dispositivos externos, etc.

Puntos de Vista
Cada campo de una instancia puede tener asignado un valor, sin embargo algunas herramientas permiten que tenga varios valores correspondientes a distintos puntos de vista (views). Este mecanismo de control del razonamiento est inspirado en la propuesta de Minsky, y su objetivo es similar a las perspectivas del lenguaje KRL, aunque la forma de implementacin es completamente diferente. Gran parte de las caractersticas de los marcos son ofrecidas por los lenguajes de programacin orientada a objetos. En un entorno que disponga de un lenguaje para programacin orientada a objetos, los marcos son considerados objetos autnomos con capacidad para comunicarse mediante mensajes. Un mensaje consistir en un mandato a un objeto para que ejecute un procedimiento local, que recibe el nombre de mtodo, los mtodos se diferencian de los demonios en que no se activan automticamente, sino por la recepcin del mensaje. Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

43

La diferencia esencial entre la perspectiva orientada a objetos y los Sistemas Basados en el Conocimiento es que en los primeros la arquitectura es plana de carcter distribuido, la solucin del problema queda repartida sobre los distintos objetos y sus mtodos. En los Sistemas Basados en el Conocimiento se parte de una arquitectura multicapa donde la capa de dominio contiene los objetos estructurados. Sobre esta se superpone otra responsable del esquema inferencial y de control. Como nomenclatura o definicin de marco se usa:

:: = <clase> | <instancia> :: = clase <nombre - de - clase> es superclase <espec-super>; < atributos> fin <instancia> :: = instancia <nombre - de - instancia> es instancia de <espec- super>; < atributos> fin <espec - super> :: = <nombre - de - clase>{,<nombre - de - clase>}*| nil <atributos> :: = <par - atributo - faceta>{; < par - atributo - faceta>}*| <vaco> <par - atributo - faceta> :: = <nombre - de - atributo>=(<faceta>{<faceta}*) <faceta> :: = <nombre - de faceta> < valor>| demonio < tipo - de - demonio > < llamada - a - demonio > <nombre - de faceta> :: = valor | valor - por -defecto < tipo - de -demonio> :: = si - se - necesita | si - se - aade | si - se - borra < valor > :: = <constante - elemental> | < nombre - de - instancia > < vaco > :: =

< marco > <clase>

GUIONES
Estructura de conocimiento que contiene una secuencia estereotipada de acciones, se entiende accin en sentido amplio, es decir, incluyendo sus acepciones de conversacin, pensamiento, actos de voluntad y sentimientos.

Planteamiento del Problema


Los guiones surgieron para ampliar las capacidades inferenciales de los grafos de dependencia conceptual (gdc) en la comprensin del lenguaje natural. Tienen, al igual que los marcos, una estructura suficiente para contener la descripcin de situaciones estereotipadas (una frase necesita analizarse en un contexto). Se diferencian en que la composicin de la estructura est predeterminada. Un guin est compuesto por una sucesin de escenas o eventos que describen el devenir esperado de los acontecimientos en una determinada situacin. Un marco tiene campos que sirven para reconocer los objetos, y un guin tiene escenas que sirven para reconocer situaciones, por ello un guin puede considerarse como un tipo particular de marco, con las peculiaridades de que cada campo corresponde a un suceso y de que los campos-sucesos forman una secuencia.

Representacin del Conocimiento


Los programas que utilizan guiones almacenan la informacin correspondiente a las escenas en grafos de dependencia conceptual; sin embargo los guiones van ms all de la representacin de frases aisladas ya que enlazan secuencias de acciones. Un guin se compone de: Escenas: Los sucesos descritos en el guin, enlazados causalmente en forma de secuencia. Roles y objetos: Se representan con variables y son propios de cada guin; corresponden a personajes y objetos que intervienen de modo que cada uno de ellos puede aparecer varias veces en la historia. Incluyen restricciones para indicar qu rol, objeto o lugar se puede asignar a las variables. Cabeceras: Existen varios tipos, unas dan nombre al guin, otras representan condiciones, instrumentos y lugares; su misin es activar el guin en el momento oportuno. Resultados : Son un conjunto de hechos que sern ciertos cuando se complete la secuencia de sucesos descritos en el guin.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

44

Inferencia mediante Guiones


El objetivo del uso de guiones no se limita a la representacin del conocimiento, sino que est orientado a la comprensin del lenguaje natural y se utilizan principalmente para la interpretacin de textos escritos. Los mtodos para comprobar la correcta interpretacin de un texto son: Formulacin de preguntas y ver si responde adecuadamente. Pedirle que repita el mismo texto con otras palabras (parfrasis). En el proceso de inferencia los pasos son: Seleccionar el guin que mejor explica la historia que se desea analizar. A travs de las cabeceras de los guiones se decide cul es el que pasa a estar activado. Asignar variables, es decir identificar los roles, objetos y lugares que intervienen. A partir de ah, el guin instanciado permite extraer la informacin que no apareca explcitamente en la historia escrita; en eso consiste precisamente la inferencia. Finalmente, a partir del guin se extrae toda la informacin que no se ha podido obtener del texto escrito. La interpretacin implica un proceso de reconocimiento, que en la prctica se implementa mediante la comparacin de patrones. Existen tres mtodos bsicos de afrontar el problema de la comprensin de textos mediante guiones: Ascendente: Consiste en analizar palabra por palabra, activando los marcos que mejor explican toda la informacin que va apareciendo. Descendente: Selecciona un marco y trata de encajar en l la informacin, la que se ajusta a las expectativas es asimilada y el resto se ignora. Se usa cuando slo se quiere extraer la informacin ms relevante, pues es ms eficiente y robusto, este mtodo desprecia la informacin relevante que no se ajuste a las expectativas del guin. Ascendente - Descendente: Aprovecha las ventajas de los dos anteriores.

Ventajas, Inconvenientes y Extensiones


Las ventajas de uso de guiones son: Permite leer textos relativamente breves sobres temas concretos, extrayendo informacin. Al ser una extensin de los grafos de dependencia conceptual son independientes del idioma. El principal avance que han aportado los guiones frente a los grafos de dependencia conceptual es el control de inferencias (permiten integrar informacin para formar una historia, y realizan las inferencias relativas a la cadena causal de sucesos). Sus inconvenientes principales son: Rigidez del mecanismo de representacin: cada guin representa una secuencia fija de acciones. Incapacidad de los guiones para compartir informacin entre ellos. Incapacidad para representar motivaciones e intenciones. Para superar la rigidez de los marcos, Schank aport una solucin consistente en representar el conocimiento en forma de paquetes de organizacin de memoria o MOPs. Al igual que los guiones, cada MOP viene descrito por una secuencia de escenas; la diferencia es que existen enlaces entre los distintos MOPs para detectar partes comunes. Estos enlaces permiten utilizar simultneamente los MOPs aplicando en cada momento el que mejor explica los acontecimientos que aparecen en la historia. A la hora de interpretar una historia no es probable que exista un guin o un MOP que se ajuste completamente al texto, por lo que en la prctica ser necesario adaptar alguno de los que existen. Si esta modificaciones se almacenan de forma ordenada, el sistema podr aprovechar la experiencia adquirida en la comprensin de nuevos casos, teniendo as un mecanismo de aprendizaje mediante MOPs. Los MOPs sirvieron de base para el razonamiento basado en casos (RBC), que consiste en recordar alguna de las soluciones aplicadas a problemas del pasado y adaptarla a un nuevo problema.

COMENTARIOS
Existen dos modos en los que los marcos han sido y son utilizados: Patrones para la comparacin: Cuando la informacin disponible indica que el problema planteado (diagnosticar una enfermedad o comprender un texto) se ajusta a un marco, el resto de la informacin contenida en dicho marco nos permite inferir la presencia de otros elementos. Almacenes de informacin: En este caso los marcos significan ante todo una forma estructurada de almacenar informacin. La distincin entre marcos e instancias y su organizacin en forma de red jerrquica permite utilizar la herencia de propiedades como mecanismo de razonamiento por defecto. El lenguaje KRL participa de ambos paradigmas, pero la mayor parte de las herramientas basadas en marcos actuales se ajustan al segundo paradigma.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

45

Valoracin
Es importante la comparacin de los mecanismos de representacin del conocimiento. Las reglas surgen como aplicacin de la lgica, reduciendo la expresividad con el fin de mejorar la eficiencia. Los esquemas basados en redes estn inspirados en psicologa (redes semnticas de Quillian) o en la lingstica (grafos de dependencia conceptual de Schank), otros tratan de implementar las caractersticas de la lgica de primer orden (redes de Hendrix, Shapiro y Sowa). Los marcos representan el conocimiento de forma estructurada. La informacin relativa a un objeto queda reunida en un marco en vez de estar dispersa en un conjunto de proposiciones sin ninguna estructura, significando una mayor eficiencia. Los marcos aportan nuevas posibilidades de razonamiento frente a la lgica con la capacidad para reconocer entidades y situaciones, los marcos son capaces de establecer una conclusin incluso con informacin incompleta.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

46

9. SISTEMAS EXPERTOS
CONCEPTO DE SISTEMA EXPERTO: ESTRUCTURA BSICA, CARACTERSTICAS, VENTAJAS Y LIMITACIONES
Un sistema experto es un programa de ordenador que codifica un modelo de conocimiento de un experto humano en un campo reducido. Un Sistema Experto empieza con un modelo conceptual a nivel de conocimiento y termina en una implementacin, tras una etapa de codificacin. La arquitectura de un sistema experto de la primera poca es de hecho la de un sistema basado en reglas. Con el uso de los marcos y las reglas aparecen dudas en la distincin entre conocimiento esttico y dinmico. La introduccin de los Sistemas Expertos supuso cambios esenciales en la Inteligencia Artificial: Abordar directamente la complejidad del mundo real. Aceptar que hay que modular el mundo real. Comprobar qu mecanismos de inferencia eran capaces de resolver problemas complejos en dominios reales Los pasos necesarios para realizar un Sistema Experto son: Ver en que tareas y escenarios es necesario utilizar Sistemas Expertos. Adquirir el conocimiento de los expertos humanos que realizan la tarea. Modelar ese conocimiento. Usar entornos de desarrollo para obtener prototipos. Validar el funcionamiento de los prototipos y evaluarlos, facilitando la posterior actualizacin del conocimiento.

Estructura Bsica
ENTORNO de DESARROLLO Editor de Conocimiento D e I s n a t e d r r e r o f l a l z o Profesional que desarrolla el SE

Mdulo de Aprendizaje

Sistema de Adquisicin Automtica del Conocimiento

Base de Afirmaciones

Base de Conocimiento

MAC

Mdulo de Explicacin

Base de Datos

I U n s t u e d a r e r f i a o z

Usuario Final

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

47

Base de Conocimientos (BC): contiene la representacin modular y computable de aquellos fragmentos de conocimiento que hemos sido capaces de modelar y representar a travs del dilogo con el experto humano. En la obtencin de este conocimiento se usan metodologas, propias del nivel de conocimiento de Newell, para reducir las descripciones en lenguaje natural a nivel simblico. Est formada por un conjunto de reglas o marcos, o por una combinacin de ambos. Mecanismos de Aplicacin del Conocimiento (MAC): dependen de la aplicacin y de la forma de representacin del conocimiento. Si el conocimiento se representa slo con reglas, la inferencia se realiza seleccionando reglas que se van a ejecutar despus, y eso lo podemos hacer de dos formas: por encadenamiento dirigido por datos (hacia adelante) o dirigido por hiptesis (hacia detrs). En cambio, si el conocimiento est representado usando marcos, la BC estar organizada en una jerarqua para las distintas clases de objetos estructurados necesarias en la aplicacin y la inferencia estar basada en la herencia directa y por defecto. Base de Afirmaciones (BA) o Conjunto de Hechos Ciertos: es dinmica. Es una memoria de trabajo donde el mecanismo de inferencia (MAC) almacena las conclusiones transitorias que va obteniendo y donde, a su vez, busca las premisas que le permiten obtener otras nuevas. El contenido de la BA es distinto para cada consulta que se realiza. Los hechos ciertos de la Base de Afirmaciones activan ciertos mdulos, hacindolos explcitos y produciendo nuevos hechos. Interfaz de Usuario: debe ser potente, fcil de utilizar y de uso agradable, ya que es fundamental para la aceptacin o el rechazo del sistema experto. Base de Datos (BD): se utiliza para almacenar y recuperar de forma eficiente la informacin adicional propia de cada aplicacin y no incluida ni en la BA ni en la BC. Adems de estos componentes que se encuentran en todos los Sistemas Expertos, hay tres elementos ms que estn incluidos en algunos casos. Son el Mdulo de Explicacin (ME), el Mdulo de Aprendizaje (MA) y el Mdulo de Adquisicin de Conocimiento (AC). Este esquema es utilizado bsicamente con reglas; en los sistemas basados en marcos y redes, existe una separacin entre inferencia y conocimiento, pero la informacin del dominio y las conclusiones obtenidas se almacenan en los marcos o en los nodos y enlaces de la red, por lo cual no se puede distinguir entre la Base de Conocimientos y la Base de Afirmaciones.

Caractersticas de un Sistema Experto


Competencia en su campo : ste es el significado de experto: ha de poder resolver problemas con una eficiencia y calidad de resultados comparables a las de un experto humano. Dominio reducido: Distingue los Sistemas Expertos de los programas de IA. El limitarse a un dominio reducido es un requisito para alcanzar la competencia. Capacidad de explicacin: Un SE debe ser capaz de explicar al usuario el proceso de razonamiento empleado. Los resultados en este apartado son modestos y dependen de los avances en el campo del aprendizaje simblico. Tratamiento de la incertidumbre: Es una exigencia que se deriva de la complejidad de los problemas que van a abordar los Sistemas Expertos, ya que son complejos y con numerosas fuentes de incertidumbre, cuyo tratamiento resulta complejo. Flexibilidad en el dilogo: Se hace necesario llegar a la flexibilidad en el dilogo de un experto humano, el cual acepta informacin en cualquier momento del proceso. El SE debera comunicarse en lenguaje natural Representacin explcita del conocimiento: Todo programa de ordenador se basa en el conocimiento de problema a tratar, pero en este caso queremos decir que la finalidad del programa es representar explcitamente el conocimiento.

Ventajas y Limitaciones
Ventajas respecto al experto humano Permanencia: Los expertos humanos pueden desaparecer. Este problema no existe para los S. E. Duplicacin: Los expertos humanos estn en un nico lugar no se pueden repetir, en cambio, del Sistema Experto se pueden realizar las copias que se deseen. Fiabilidad: Los expertos humanos son personas y por tanto pueden estar condicionados por factores externos. En cambio los SE no lo estn y siempre responden de la misma forma.

Ferran Gmez y Jos M. Godoy

INTRODUCCION A LA INTELIGENCIA ARTIFICIAL

48

Rapidez: El experto humano ser rpido en los casos habituales, pero no en los casos ms raros. En cambio el SE ser rpido en todos los casos. Bajo coste: Los sistemas expertos, una vez construidos producen grandes beneficios. Limitaciones respecto al experto humano Sentido comn: Un SE carece de esta caracterstica. Puede sacar conclusiones absurdas. Flexibilidad: El experto humano es flexible y puede adaptarse a las nuevas circunstancias, situaciones inesperadas, buscando nuevas soluciones. Los SE son rgidos. Lenguaje natural: An no existen SE que puedan interactuar en lenguaje natural con el usuario. Experiencia sensorial: Bsicamente todos los datos son recibidos por el SE a travs de un teclado o un ratn. Slo algunos disponen de tratamiento de imgenes, y es incomparable con la capacidad de visin humana. Lo mismo puede decirse de la capacidad auditiva, tctil y olfativa. Perspectiva global: Un experto humano puede separar lo fundamental de lo que es accesorio. Falta de capacidad de aprendizaje: Los expertos humanos pueden aprender por caminos que an no pueden ser modelados. Capacidad de manejar conocimiento no estructurado: El experto humano puede utilizar la informacin y el conocimiento desestructurado. El SE, no. Funciones genuinamente humanas: Existen tareas y escenarios en los que no se puede utilizar un SE, como son los campos relacionados con el lenguaje natural, la creacin artstica, el conocimiento del sentido comn y la formacin de conceptos. Estos campos son genuinamente humanos.

Ferran Gmez y Jos M. Godoy

Anda mungkin juga menyukai