Sei sulla pagina 1di 7

PROBLEMAS BSICOS EN Inteligencia Artificial Para construir un sistema bsico de inteligencia artificial capaz de resolver un problema especfico, es necesario

realizar las siguientes acciones: Definir de una forma precisa el problema, incluyendo especificaciones de las condiciones iniciales y de las situaciones finales que pueden considerarse como soluciones aceptables al problema. Analizar el problema. Puede darse el caso de que unos muy pocos rasgos importantes puedan tener un gran impacto en la identificacin de la tcnica ms apropiada para resolver el problema. Identificar y representar el conocimiento que es necesario para resolver el problema. Escoger la mejor tcnica y aplicarla para la resolucin del problema.

Definicin del Problema


El primer paso hacia el diseo de un programa que resuelva un problema en IA, debe ser la creacin de una forma descriptiva formal y manipulable del problema, a partir de la descripcin informal del mismo. La definicin del problema como una bsqueda en el espacio de estados forma la base de la mayora de los mtodos que se utilizan para la solucin de problemas en IA. Los estados del sistema o descripcin de estados, son representaciones que contienen el conjunto de toda la informacin que describe la situacin actual del sistema. En cambio, el espacio de estado del sistema o espacio del problema, es el dominio que contiene todos los posibles estados del sistema. El espacio de estados puede ser finito o infinito. Los mecanismos que se emplean para modificar o transformar un estado del sistema, toman el nombre de operadores, producciones o acciones, y se utilizan para enlazar un estado actual, con otro estado objetivo. Cuando existen varias posibles soluciones, representadas por diversas secuencias de operadores que enlazan dos estados, es necesario desarrollar algoritmos de IA que sean capaces de identificar las mejores secuencias. En general, el posible nmero secuencias de operadores a ser exploradas en el desarrollo de una solucin puede ser muy grande, por lo que los algoritmos que se empleen no deben requerir la enumeracin de todas las secuencias posibles. Esto sugiere el empleo de un proceso de bsqueda para tratar de encontrar una solucin aceptable. La bsqueda es un proceso de gran importancia en la resolucin de problemas difciles para los que no se dispone de tcnicas ms directas. Los procesos de bsqueda estn cercanamente relacionados con los procesos de optimizacin. En resumen, la representacin como espacio de estados ofrece una estructura que permite: Definir formalmente el problema, al poder convertir alguna situacin dada en una situacin deseada utilizando un conjunto de operaciones permitidas. Definir la resolucin de un problema como la combinacin de dos componentes: Un conjunto de operadores que, al modificar o transformar un estado, representan movimiento en el espacio del problema. Un proceso de bsqueda, que explorando el espacio intenta encontrar alguna ruta desde el estado actual hasta un estado objetivo.

Al proceso que se encarga de convertir una descripcin informal, en una descripcin formal del problema, se lo denomina operacionalizacin. Los pasos a seguirse son los siguientes: Definir el espacio de estado que contiene todas las configuraciones posibles de los objetos relevantes. Esto es posible, sin necesariamente enumerar en forma explcita todos los estados que contiene. Especificar uno o ms estados dentro de ese espacio que correspondan a posibles situaciones desde donde el proceso de resolucin pueda arrancar (estados iniciales). Especificar uno o ms estados que podran ser aceptables como soluciones al problema (estados objetivo). Especificar un conjunto de operadores que describan las acciones posibles. Para esto se debe considerar los siguientes aspectos:

Qu suposiciones implcitas estn presentes en la descripcin informal del problema? Qu generalidad deben tener los operadores? Qu cantidad del trabajo requerido para resolver el problema debera estar incluido y representado en los operadores?

Luego, el problema puede ser resuelto utilizando el conjunto de operadores, en combinacin con una estrategia de control apropiada, para moverse dentro del espacio de estados del problema hasta encontrar un sendero entre el estado inicial y el estado objetivo. Como se indic anteriormente, el mecanismo de bsqueda es fundamental para el proceso de solucin del problema. Adicionalmente, proporciona un marco donde pueden intercalarse mtodos ms directos de resolucin de partes del problema, en caso de ser esto posible.

Anlisis del Problema


Para poder escoger el o los mtodos ms apropiados para resolver un problema, es necesario analizarlo en algunos aspectos claves y buscar las respuestas necesarias a las siguientes preguntas: Puede el problema ser descompuesto en un conjunto de subproblemas pequeos y, posiblemente, independientes? Podran ignorarse pasos de solucin o ser corregidos si resultaran intiles? Es posible predecir el o los resultados del problema? Una buena solucin al problema es suficientemente obvia, sin necesidad de compararla con otras posibles soluciones? La solucin deseada es un estado o una ruta desde un estado inicial hasta un estado objetivo? Es absolutamente necesaria toda una cantidad de conocimiento para resolver el problema, o es importante slo para restringir la bsqueda? Puede un computador, al que se le ha dado el problema, retornar por s slo la solucin, o ser necesario que haya una interaccin entre el computador y una persona? Las respuestas que se den a las preguntas planteadas no slo afectan a la definicin del problema en si mismo, sino tambin a las caractersticas de la solucin deseada y a las circunstancias bajo las cuales debe darse la solucin.

Representacin
En general, una representacin es un conjunto de convenciones sobre la forma de describir algn tipo de cosa. El hallar una representacin apropiada es una parte fundamental de la resolucin de un problema. El principio de la representacin establece que: Una vez que un problema es descrito mediante una buena representacin, el problema est casi resuelto. Descripciones Explcitas La descripcin explcita de una buena representacin est caracterizada por los siguientes aspectos importantes: Hace explcitos los objetos y las relaciones de importancia: de una sola mirada se puede apreciar lo que sucede. Pone de manifiesto las restricciones inherentes al problema. Agrupa los objetos y las relaciones. Suprime los detalles insignificantes. Es transparente: se puede entender lo que representa. Es completa: contiene todo lo que es necesario que debe expresar. Es concisa: expresa todo lo necesario con eficacia. El lxico, que determina los smbolos que estn permitidos en el vocabulario de la representacin.

Las representaciones tienen cuatro ingredientes fundamentales:

Una parte estructural que describe las restricciones sobre la forma en que los smbolos pueden ordenarse. Una parte operativa que especifica los procedimientos de acceso que permiten crear descripciones; as como la forma de modificarlas y utilizarlas para responder preguntas. Una parte semntica que establece una forma de asociar el significado con las descripciones. Un granjero desea cruzar un ro llevando consigo un lobo silvestre, una oveja y una carga de col. Por desgracia su bote es tan pequeo que slo puede transportar una de sus pertenencias en cada viaje. Peor an, si no vigila al lobo, puede comerse a la oveja y si no cuida la col, puede comerse la oveja; de modo que no puede dejar al lobo solo con la oveja, ni a la oveja sola con la col. Cmo puede hacer para cruzar el ro sin contratiempos?

Para ilustrar el problema de la representacin, considrese el siguiente ejemplo:

La representacin utilizada en el problema del granjero, es un ejemplo de red semntica. Desde el punto de vista del lxico, las redes semnticas estn formadas por nodos, que representan objetos; enlaces, que representan relaciones entre objetos; y, etiquetas de enlace, que denotan relaciones particulares. Desde el punto de vista estructural, los nodos estn conectados entre s por enlaces etiquetados. En los diagramas, los nodos aparecen como crculos, elipses o rectngulos; y, los enlaces como flechas que apuntan de un nodo a otro. Desde la perspectiva de la semntica, el significado de los nodos y sus enlaces, depende de la aplicacin. Desde la perspectiva operativa, los procedimientos de acceso son, en general, cualquiera de los siguientes: constructores, destructores, lectores y escritores. Las redes semnticas usan constructores para formar nodos y enlaces; lectores para responder preguntas acerca de estos; escritores, para modificar nodos y enlaces; y, ocasionalmente, destructores, para borrar nodos y enlaces

Figura 2.1 Representacin del problema del granjero, el lobo, la oveja y la col. Las especificaciones dadas por una red semntica, son los suficientemente explcitas, como para ser utilizadas en representaciones de problemas de IA.

Existen diversos grupos de familias de representaciones, que se derivan de las redes semnticas: rboles semnticos, rboles de bsqueda, rboles de juegos, rboles de decisin, sistema de plantillas, red de propagacin de valores, red de restriccin aritmtica, red de contraccin, red de intervalos, espacio de estados, etc. Una representacin basada en una red semntica, en determinados problemas, puede generar rboles o grafos. El rbol es un tipo de red semntica que no contiene lazos, en cambio un grafo es una estructura en la que pueden haber varios de ellos. Desde el punto de vista de los procesos de bsqueda, los rboles son preferibles a los grafos, ya que no hay que preocuparse por la posibilidad de quedar atrapados en algn lazo. Descripciones Implcitas En general, una red semntica de cualquier tipo no necesariamente puede presentar todos sus estados y transiciones. Pueden haber ocasiones en las que es preferible no trabajar con la representacin completa o en las que es prcticamente imposible obtenerla. En estos casos se desarrolla slo la seccin necesaria, partiendo de un estado inicial y generando los siguientes estados, segn se los requiera. Una descripcin de red semntica que est compuesta por un estado inicial y un mecanismo para generar los estados sucesores, se dice que es una descripcin implcita del espacio de estado. A manera de ejemplo, el espacio de estado del problema del granjero dado anteriormente, puede ser descrito en forma implcita. Para ello, se hacen las siguientes consideraciones preliminares: Sean las variables Pg, Pl, Po, Pc las que denoten las posiciones del granjero, lobo, oveja y col, respectivamente. Sus valores slo puede ser 1 o 2, para indicar que se encuentran en la orilla 1 o en la orilla 2 del ro. Se define la funcin OPUESTO, tal que OPUESTO(1) = 2; y, OPUESTO(2) = 1.

Ahora, las reglas para generar los estado sucesores de (Pg, Pl, Po, Pc), pueden ser escritas como sigue: El estado (OPUESTO(Pg), Pl, Po, Pc), es un sucesor. Si Pg = Pl entonces (OPUESTO(Pg), OPUESTO(Pl), Po, Pc) es un sucesor. Si Pg = Po entonces (OPUESTO(Pg), Pl, OPUESTO(Po), Pc) es un sucesor. Si Pg = Pc entonces (OPUESTO(Pg), Pl, Po, OPUESTO(Pc)) es un sucesor.

Naturalmente, algunos de los estados sucesores son inaceptables, de acuerdo con las condiciones del problema. Un proceso de bsqueda puede utilizar una descripcin implcita del espacio de estado para encontrar una ruta desde un estado inicial hasta un estado objetivo, generando repetidamente estados sucesores y probndolos para ver si uno de ellos es el objetivo. Mientras no se encuentre el estado objetivo, el proceso debe ser capaz de escoger el estado sucesor que parece ms prometedor, o que no viola las restricciones del problema, para continuar con su ruta. Si no es posible establecer el potencial de los estados sucesores, siempre se podr escoger alguno basado en algn criterio arbitrario.

Tcnicas de Solucin
Las tcnicas de solucin de problemas en IA, en general, incorporan un proceso de bsqueda. Todo proceso de bsqueda puede ser visualizado como el recorrido por un rbol en el que cada nodo representa un estado y cada rama representa las relaciones entre los estados cuyos nodos conecta. En general, las reglas contienen en forma implcita el rbol, y se genera en forma explcita slo aquellas partes que se decide explorar. Las principales diferencias que pueden aparecer en las diferentes tcnicas de bsqueda, son: La direccin en la cual se conduce la bsqueda (hacia adelante o hacia atrs). La estrategia de control, o forma de seleccionar las reglas que pueden ser aplicables. Los principales requerimientos de una buena estrategia de control son: que cause desplazamiento en el espacio de estado; y, que sea sistemtico.

La forma de representar cada nodo del proceso de bsqueda (representacin del conocimiento).

Muchas veces, tratar el proceso como bsqueda en un grafo en lugar de una bsqueda en un rbol, puede reducir el esfuerzo que se gasta en explorar senderos, esencialmente iguales, varias veces. Sin embargo, los requisitos asociados, son: Cada vez que se genere un nodo se debe chequear para ver si ha sido generado antes. Se deben introducir procedimientos especiales para que la bsqueda no quede atrapada en algn lazo.

A continuacin se describen los algoritmos de tres procesos bsicos de bsqueda de soluciones en el espacio de estado.

Algoritmo Generacin Y Prueba (GENERATE-AND-TEST)


1. Generar una posible solucin. (estado o camino) 2. Comprobar para ver si es una solucin, mediante comparacin con los elementos del conjunto de objetivos aceptables. 3. Si la solucin ha sido encontrada salir, de otra manera, retornar al paso 1.

Algoritmo Primero a lo Ancho (BREATH-FIRST)


1. Crear una variable NODE_LIST y ponerla al estado inicial. 2. Hasta que se encuentre el objetivo o hasta que NODE_LIST est vaca haga lo siguiente: a. Remover el primer elemento de NODE_LIST, y llamarlo E. Si NODE_LIST estuvo vaca, salir. b. Para cada forma en que cada regla puede ajustarse al estado descrito en E, haga lo siguiente: i. ii. iii. Aplicar la regla para generar un nuevo estado. Si el nuevo estado es un estado objetivo, salir y retornar este estado. Sino, aada el nuevo estado al final de NODE_LIST.

Algoritmo Primero en Profundidad (DEPTH-FIRST)


1. Si el estado inicial es el objetivo, salir y retornar xito. 2. Sino, haga lo siguiente hasta que se obtenga seal de xito o fracaso: a. Genere un sucesor E del estado inicial. Si no hay ms sucesores, retorne con seal de fracaso. b. Llame recursivamente al algoritmo, esta vez con E como el estado inicial. c. Si la seal es xito, retorne, de otra manera, contine en este lazo.

Problema de los dos recipientes de agua


Se tienen 2 recipientes, uno de 3 galones y otro de 4 galones. Ninguno tiene marcas de nivel. Existe una fuente, de la cual se puede llenar los recipientes con agua. Indicar, Cmo se puede tener exactamente 2 galones de agua en el recipiente de 4 galones? Reglas de Produccin x = 0,1,2,3,4 y = 0,1,2,3
1. Llenar el recipiente de 4 galones: SI x < 4 => (4, y) 2. Llenar el recipiente de 3 galones: SI y < 3 => (x, 3)

3. Vaciar el recipiente de 4 galones: SI x > 0 => (0, y)

4. Vaciar el recipiente de 3 galones: SI y > 0=> (x, 0)

5. Pasar agua del recipiente de 3 galones al de 4, hasta que se llene: SI (x + y) >= 4 ^ y > 0 => (4, y - (4 - x))

6. Pasar agua del recipiente de 4 galones al de 3, hasta que se llene: SI (x + y) >= 3 ^ x > 0 => (x - (3 - y), 3)

7. Pasar toda el agua del recipiente de 3 galones al de 4: SI (x + y) <= 4 ^ y > 0 => (x + y, 0)

8. Pasar toda el agua del recipiente de 4 galones al de 3: SI (x + y) <= 3 ^ x > 0 => (0, x + y)

Bsqueda Heurstica Para resolver muchos problemas difciles (explosin combinatoria), es necesario muchas veces llegar a un compromiso de los requerimientos de movilidad y sistematicidad y construir una estructura de control que no necesariamente garantiza el encontrar la mejor respuesta, sino que casi siempre encuentra una buena respuesta. Una tcnica heurstica mejora la eficiencia del proceso de bsqueda sacrificando, usualmente, exhaustividad. Las consideraciones que sirven de soporte a un proceso de bsqueda heurstica, son: Rara vez se requiere, en realidad, una solucin ptima. Una buena aproximacin, normalmente, sirve muy bien. A pesar que una aproximacin heurstica no puede resultar muy buena en el peor de los casos, raras veces aparecen los peores casos en la prctica. El tratar de comprender por qu un heurstico funciona o por qu no funciona, a menudo conduce a una mejor comprensin del problema.

En el siguiente captulo, se estudiar con mayor profundidad la bsqueda heurstica y algunos algoritmos tpicos.

Sistemas de Produccin
Un sistema de produccin proporciona una estructura que facilita la descripcin y la ejecucin de un proceso de bsqueda. Un sistema de produccin consiste de: Un conjunto de facilidades para la definicin de reglas. Mecanismos para acceder a una o ms bases de conocimientos y datos. Una estrategia de control que especifica el orden en el que las reglas son procesadas, y la forma de resolver los conflictos que pueden aparecer cuando varias reglas coinciden simultneamente. Un mecanismo que se encarga de ir aplicando las reglas. Lenguajes bsicos para sistemas de produccin (LISP, CLIPS, PROLOG). Tambin se los conoce como lenguajes de Inteligencia Artificial. Sistemas hbridos y sistemas vacos (shells) para produccin de sistemas basados en conocimientos (VP-Expert, Expert Teach, Personal Consultant, Intelligence Compiler, EXSYS). Arquitecturas generales para resolucin de problemas (mquinas LISP, mquinas PROLOG).

Dentro de esta definicin general de sistema de produccin, se incluyen:

Caractersticas de los Sistemas de Produccin


Un sistema de produccin, al igual que los problemas, puede ser descrito por un conjunto de caractersticas que permiten visualizar la mejor forma en que puede ser implementado.

Un sistema de produccin se dice que es monotnico si la aplicacin de un regla nunca evita que ms tarde se pueda aplicar otra regla que tambin pudo ser aplicada al momento en que la primera fue seleccionada. Un sistema de produccin es parcialmente conmutativo si existe un conjunto de reglas que al aplicarse en una secuencia particular transforma un estado A en otro B, y si con la aplicacin de cualquier permutacin posible de dichas reglas se puede lograr el mismo resultado. Un sistema de produccin es conmutativo, si es monotnico y parcialmente conmutativo.

SISTEMA DE PRODUCCIN

MONOTNICO

NO-MONOTNICO

PARCIALMENTE CONMUTATIVO

Demostracin de Teoremas

Navegacin Robtica

PARCIALMENTE NO CONMUTATIVO

Sntesis Qumica

Juego de Ajedrez

Potrebbero piacerti anche