Vous êtes sur la page 1sur 32

TEMA 2 Elementos de un Problema

Problemas y representacin de Problemas


Representacin mediante Estados Representacin mediante Reduccin Seleccin de la representacin

Caractersticas de los Problemas


Problemas Descomponibles Problemas Recuperables e Ignorables Problemas de Cualquier Camino y de Mejor Camino Consistencia y papel del Conocimiento

Caractersticas de los Procesos de Bsqueda


Bsqueda de la solucin. rboles y Grafos Razonamiento hacia delante y haca atrs Representacin del conocimiento y el problema de la estructura Seleccin de Operadores Heursticas. Funciones heursticas de evaluacin Introduccin a la Organizacin de Control

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas y representacin de Problemas


Forma tradicional de resolver un problema en algoritmia Obtenemos la definicin de un problema e.g. hallar todos los nmeros primos menores que un cierto n Creamos un algoritmo totalmente ad hoc para resolver especficamente ese problema Como uno de los algoritmos ms antiguos (> 2000 aos), la criba de Eratstenes.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Pero, qu ocurre cuando

El problema es excesivamente complejo para expresar su solucin algortmicamente (e.g. ajedrez) El mundo es altamente cambiante y lo que decidamos en el futuro dependen de percepciones futuras (e.g. diseo de robots para agarrar y mover piezas) El mundo es parcialmente desconocido (e.g. exploracin en marte) En todos estos casos no es recomendable la especificacin de un algoritmo determinista. Existe alguna aproximacin general para la resolucin de cualquier problema?

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Sistemas de resolucin de problemas


Cuando no es abordable optar por mtodos especficos para la resolucin de los problemas podemos echar mano de mtodos genricos. Se da un substrato de procedimientos de resolucin de problemas que podemos considerar bastante general (con variantes adecuadas, muy utilizados). Sistemas de resolucin de problemas se basan en la racionalizacin de los procedimientos que encuentran soluciones a problemas til para abordar nuevos problemas de manera formalizada y sistemtica.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas y representacin de Problemas


Elementos principales que constituyen los Sistemas de Resolucin de Problemas: Datos o Representacin: describe la situacin del dominio del problema, el objetivo final que se desea alcanzar y la situacin inicial en determinados casos. Operadores: posibilitan la transformacin de la situacin del problema, o dividen un problema en varios sub-problemas (de solucin ms sencilla). Estrategia de Control: define los operadores a aplicar en las diferentes situaciones del problema. La aplicacin de un operador sobre la representacin del problema la transforma en un sentido caracterstico de cada operador. Secuencia adecuada de operadores conduce a la resolucin del problema. Estrategia de control: responsable de la seleccin de la secuencia de operadores. Papel crucial mtodo de resolucin de problemas basado en la exploracin (bsqueda) de alternativas. Ncleo central de la resolucin de muchos de los problemas que exige la seleccin de alguna opcin entre un conjunto de posibilidades y en las cuales no existe un principio determinista para definir tal eleccin.
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas y representacin de Problemas

Los mtodos de representacin y resolucin de problemas pueden estar basados en uno de estos enfoques: Formulacin en el Espacio de Estados problemas como coleccin de estados (e.g. estados son posiciones de un tablero) Formulacin mediante Reduccin problemas como una jerarqua de sub-problemas de diferente complejidad.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Representacin mediante estados


2 clases de entidades: Estados: estructuras de datos que dan instantneas del problema, y Operadores: transforman el problema de un estado a otro. Estado Inicial situacin inicial del problema (estructura de datos iniciales) Estado Final (meta, objetivo) configuracin determinada (y deseada) de la estructura de datos Para pasar de un estado a otro (estados intermedios) aplica un solo Operador Especificacin de un problema: (S,O,G) - S y G conjuntos de estados iniciales y finales - O conjunto de operadores. Un mtodo de resolucin define una trayectoria en el espacio de estados (desde estado inicial hasta estado final) trayectoria equivale a la secuencia de operadores.
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Representacin mediante reduccin


La principal estructura es la descripcin de problemas a resolver y la dinmica de resolucin consiste en su descomposicin en subproblemas ms simples. La situacin inicial est definida por la formulacin del problema y por un conjunto de operadores o transformadores del problema. El problema se resuelve por aplicacin de una secuencia de transformaciones que lo convierten en un conjunto de sub-problemas cuya resolucin sea inmediata. Un operador puede transformar un problema en varios sub-problemas: para dar solucin al problema principal se deber resolver todos los problemas hijos. un sub-problema: cuando a un mismo problema se aplican diferentes operadores, no es preciso resolver todos los sub-problemas generados, sino que con la solucin de un caso queda resuelto el problema padre

Op

Op1

Op2 Op3

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Problemas


Para escoger el mtodo ms apropiado (o combinacin de mtodos) para resolver un problema, es necesario analizar el problema segn varias dimensiones clave: Se puede descomponer el problema en un conjunto de sub-problemas independientes ms pequeos o ms fciles? Pueden ignorarse o deshacerse aquellos pasos a la solucin que sean poco prometedores? Una buena solucin del problema resulta evidente o hay que compararla con todas las otras posibles soluciones para saberlo? El conocimiento base que debe usarse para resolver el problema, es consistente? Es absolutamente necesaria una gran cantidad de conocimiento para resolver el problema o bien el conocimiento slo es importante para restringir la bsqueda?

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas descomponibles
Se pueden resolver descomponindolo en problemas ms pequeos Cada problema puede resolverse de manera inmediata o bien descomponerse aun ms El enfoque recursivo: Algoritmo: Si problema actual resoluble entonces devolver respuesta Sino descomponer problema; Para cada subproblema, llamar al algoritmo

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas descomponibles (cont.)


El problema del mundo de bloques Idea bsica: dividir el problema en dos problemas separados. 1. El primero poner B sobre C. 2. Para el segundo necesitamos despejar A quitando C antes de que podamos coger A y ponerlo sobre B. Si combinamos las dos soluciones fallaremos. Los dos sub-problemas no son independientes Interaccionan (esas interacciones deben considerarse para llegar a una solucin del problema)

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas recuperables e ignorables


Clasificacin con respecto a los pasos dados para encontrar la solucin 1. (Pasos) Ignorables, en el cual los pasos para la solucin pueden ignorarse. Siempre se va hacia adelante, nunca se retrocede. 2. Recuperables, en el cual los pasos para la solucin puede deshacerse seguramente con un coste y mediante backtracking 3. Irrecuperables, en el cual los pasos para la solucin no pueden deshacerse.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas recuperables e ignorables

Un problema ignorable: demostrar un teorema matemtico. Procederemos empezando por demostrar un lema que pensamos que ser til. Eventualmente, nos damos cuenta que el lema no es en absoluto de ninguna ayuda. Lo nico que hemos perdido es el esfuerzo empleado demostrar el lema. Almacenamos todos los estados conseguidos, y seguimos siempre hacia delante.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Problemas


Un problema recuperable: el problema del 8-puzzle. Al intentar resolverlo podemos realizar un movimiento tonto. Pero podemos retroceder y deshacer el movimiento. Debe realizarse un paso adicional para deshacer cada paso incorrecto (se incurre en un coste) El mecanismo de control debe memorizar el orden en que se realizan las operaciones. Se debe hacer backtracking hasta el estado del que se parti y continuar por otro camino. Si un problema se puede modelar en un entorno determinista, sin que se realice ninguna accin real, y toda la accin se planifique de antemano, entonces es ignorable o recuperable.
Grado en Ingeniera Informtica

2 1 7

8 6

3 4 5

1 8 7

3 4

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Problemas

Un problema no recuperable: la transformacin es irreversible, ajedrez, control automtico de una grua. El nivel de recuperacin de un problema es importante para determinar la complejidad de la estructura de control que busca la solucin Para problemas ignorables la estructura de control es sencilla y nunca retrocede. Para problemas recuperables, la estructura de control es ligeramente ms complicada ya que ha de reparar errores Para problemas irrecuperables, la estructura de control tiene que hacer un trabajo intensivo en cada decisin a tomar ya que no puede equivocarse

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas de cualquier camino o el mejor


Supongamos que tenemos los siguientes hechos en una base de datos
A1 - Marco era un hombre A2 - Marco era pompeyano A3 - Marco Naci en el ao 40 d.c. A4 - Todos los hombres son mortales A5 - Todos los pompeyanos murieron en la erupcin del volcn en el ao 79 d.c. A6 - Ningn mortal tiene ms de 150 aos A7 - Hoy estamos en el ao xxxx d.c.

Varios caminos de razonamiento conducen a la respuesta: lo nico que nos interesa es la respuesta a la cuestin, no el camino a seguir.

Y planteamos al sistema la pregunta Est vivo Marco?

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Problemas de cualquier camino o el mejor


Sea el problema del vendedor ambulante, queremos encontrar la ruta ms corta

Boston Boston New York Miami Dallas San Francisco

New York

Miami

Dallas

San Francisco

-----250 1450 1700 3000

250 -----1200 1500 2900

1450 1200 -----1600 3300

1700 1500 1600 -----1700

3000 2900 3300 1700 ------

Hasta que no obtengamos todos los caminos no estaremos seguros de cul es la mejor. En general, los problemas de mejor camino son computacionalmente ms costosos.
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Consistencia y relevancia del conocimiento


Si hablamos de consistencia del conocimiento Cuando resolvemos un problema, nos podemos encontrar con un mundo totalmente consistente y con un mundo en el cual puede existir inconsistencias en la base de datos. Por lo general, resolver un problema con inconsistencias en la base de datos (informacin incompleta, uso de valores por defecto, etc) es ms complicado de resolver pero suelen ser problemas muy cotidianos.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Relevancia del conocimiento en la resolucin


Ajedrez: Cunto conocimiento se requerir? Reglas para determinar movimientos legales Mecanismo de control El conocimiento adicional (tctica, buena estrategia, etc.) Comprender una noticia de un peridico: cunto conocimiento se requerir? Conocimiento del domino: nombres de polticos, partidos, reglas de la poltica, caracterizacin de maneras de hacer poltica (e.g. de izquierdas o derechas), muchsimo conocimiento Vamos a encontrar generalmente dos tipos: aquelos en los cuales slo es importante el conocimiento para restringir la bsqueda, y aquellos para los cuales se requiere gran cantidad de conocimiento tan slo para poder reconocer una solucin.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


Bsqueda de la solucin: rboles y grafos
Existen muchos problemas para los cuales no se conoce, o no se puede conocer, un algoritmo que genere una trayectoria entre los estados del espacio del problema sin un poco de esfuerzo. Por qu se dan estas situaciones? El problema es muy complejo y se desconoce en parte. Procedimiento de resolucin: Exploracin de Alternativas (bsqueda)
(bsicamente el procedimiento de Prueba-Error) estructuras bsicas subyacentes

rboles

grafos

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


Un espacio de estados Grafo dirigido: nodos contienen estados y arcos son operadores. En notacin de grafos la solucin: camino desde un nodo inicial a un nodo final. rbol expandido (representacin alternativa) El nmero de operadores determina el P O1 Oi H1 Hi On Hn grado de ramificacin del rbol que representa el problema

Nodo raz suele corresponderse con el estado inicial. En el rbol se encuentran algn nodo asociado con el estado final y que denominamos nodo final, objetivo o meta. Segn la presencia del nodo final en el rbol podemos distinguir tres casos: El nodo final no se encuentra en el rbol. El nodo final aparece una vez en el rbol. El nodo final aparece mltiples veces (se requiere la verificacin de alguna condicin)
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


La estrategia de bsqueda (i.e. qu nodo elegir el siguiente) basa su funcionamiento en el uso de una estrutura de rbol. Problema: se puede generar el mismo nodo en caminos distintos (e.g. mismo estado del tablero en distintas secuencias de movimientos) Consecuencia: la forma ms apropiada de representacin de trayectorias es un grafo (i.e. llegamos al mismo nodo por diferentes caminos) Con grafos podemos tener otros problemas: ciclos. Cmo garantizar entonces que termina el proceso? Corolario: el uso de grafos en la bsqueda Reduce esfuerzo invertido al explorar el mismo camino varias veces. Requiere esfuerzo adicional: al generar un nodo nuevo se ha de comprobar si ya se haba generado Si este esfuerzo es justificado depende del problema concreto. Si es probable generar el mismo nodo en varios caminos, conveniente usar un procedimiento de grafo que si tal duplicacin aconteciese slo rara vez.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


La representacin por reduccin puede tratarse como grafos o rboles Y/0 (en un caso general, se presentarn diversas combinaciones de ambos casos). Para resolver este problema, se introduce un tipo de rbol denominado rbol o grafo Y/O, definido en la base a las siguientes reglas: Cada nodo representa un problema simple o un conjunto de problemas. Un nodo que no se descompone o simplifica, es un nodo terminal. Un nodo terminal con solucin se corresponde con un problema primitivo (primitiva). Si por cada posible operador se genera un conjunto de sub-problemas de solucin alternativa, entonces se produce un nodo O. Si la aplicacin de un operador genera diversos sub-problemas, siendo necesaria la resolucin de todos ellos, entonces se produce un nodo Y.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


La resolucin de un problema representado en forma de rbol Y/O, esta asociada con la resolucin del nodo raz. Un nodo tendr solucin (es resoluble) si se verifica alguna de estas situaciones: Es un nodo primitiva. Es un nodo no terminal del tipo Y y sus sucesores son todos ellos resolubles. Es un nodo no terminal del tipo O y al menos uno de sus sucesores es resoluble. Un nodo es irresoluble si se verifica alguna de esta condiciones: El nodo es terminal, es decir, no tiene sucesores y no es primitiva. El nodo es no terminal del tipo Y y al menos uno de sus sucesores es irresoluble. El nodo es no terminal del tipo O y todos sus sucesores son irresolubles.
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


Razonamiento hacia delante y hacia atrs
En qu sentido realizar el proceso de bsqueda que une condicin inicial con objetivos? Hacia adelante, desde la estructura inicial. La aplicacin de los operadores a la estructura inicial, provoca una transformacin de su representacin realizando as exploracin, o razonamiento, hacia delante (denominado tambin fordward, dirigida por datos y bottom-up). El problema tendr solucin si es posible alcanzar el objetivo. Hacia atrs, desde la configuracin final u objetivo. Se utilizan operadores inversos aplicados al objetivo realizando as exploracin o razonamiento hacia atrs (tambin backward, dirigido por objetivos y Top-Down). La solucin del problema es posible si alcanzamos la situacin inicio. Es mejor el razonamiento hacia adelante o hacia atrs?: Existen ms estados inicio posibles o estados meta? En que direccin es el factor de ramificacin ms grande? Alternativa: estrategia de bsqueda bidireccional.
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


Representacin del conocimiento y el problema de la estructura
Cmo representaremos cada nodo? En dominios complejos es til dividir la cuestin en tres sub-cuestiones: 1.Cmo representar los objetos individuales? 2.Cmo combinar las representaciones de los objetos individuales para formar una representacin del estado del problema completo? 3.Cmo representar eficientemente las secuencias de estados en la bsqueda? 1-2: problema de la representacin del conocimiento. 3: importante para el proceso de bsqueda. qu sucede durante la bsqueda si las descripciones son muy largas? - Agotaremos rpidamente la memoria. - Gastaramos todo nuestro tiempo creando los nodos y copiando los hechos, la mayora de los cuales no cambian. El problema de la representacin de hechos (los que cambian como de los que no) se conoce como el problema de la estructura. La representacin del conocimiento y el proceso de bsqueda interdependientes
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


Seleccin de Operadores. Emparejamiento
La bsqueda para resolver problemas equivale a la aplicacin de los operadores apropiados. Una bsqueda inteligente consiste en la eleccin de los operadores que nos conducirn con mayor probabilidad a una solucin. Para obtener todos los operadores aplicables, nos efrentamos al problema del emparejamiento (entre el estado actual y las precondiciones de los operadores). Cuando las precondiciones no se definen como descripciones exactas de situaciones particulares, sino que ms bien describen propiedades que deben de tener esas situaciones, surgen problemas (Emparejamiento con variables). Suele suceder que el describir la existencia de un emparejamiento entre una situacin particular y las precondiciones de un operador involucra un proceso importante de bsqueda. Una clase sencilla de emparejamiento no literal que a veces puede requerir una bsqueda extensiva, surge cuando las precondiciones contienen variables.
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


Heursticas. Funciones heursticas de evaluacin
Tcnica heurstica: aquella que ayuda a encontrar soluciones de problemas, aunque no estemos seguros de que siempre nos llevar en la direccin correcta. Existen tcnicas heursticas de aplicacin muy general y otras que representan conocimientos especficos que son relevantes para la solucin de un problema. Informacin Heurstica
incorporarse en

Procedimiento de Bsqueda
una funcin heurstica que evale los estados individuales

los operadores

Una funcin heurstica es una funcin que confecciona las medidas de deseabilidad a partir de las descripciones del estado del problema, y las representa usualmente como nmeros.

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


Introduccin a la Organizacin de Control
Control: conjunto de mecanismos que permiten transformar la representacin de un problema, transformacin que tiene por objeto el alcanzar una solucin. Previamente se ha visto el control desde el punto de vista de los Operadores y Estrategias. Ahora lo contemplamos desde otro punto de vista, relacionado con la forma de su definicin o programacin, es decir, a como se organiza o estructura. Agente: elemento de Control con capacidad para aplicar un operador o ejecutar un procedimiento (generalmente un sistema de Resolucin de Problemas puede contemplarse como un agente). La forma de organizar el control con un nico agente es la ms sencilla de realizar y a la que corresponde la mayor parte de realizaciones practicas. Una forma ms evolucionada de organizar el control consiste en disponer de un conjunto de agentes autnomos que intervienen en la consecucin del objetivo comn (sistema cooperativo de resolucin de problemas).
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Caractersticas de los Procesos de Bsqueda


Un sistema multi-agente presenta en principio la propiedad de una mayor eficacia potencial en la resolucin de problemas (ventajas anlogas a las que se derivan de la Computacin Concurrente). Lo esencial en un sistema de resolucin cooperativa mediante agentes es la coordinacin de sus acciones individuales. Los sistemas de coordinacin permiten la comparticin de conocimiento, as como el intercambio de mensajes, ordenes, resultados parciales, hiptesis y diagnsticos.

Modelo de coordinacin de Agentes por lnea directa


Grado en Ingeniera Informtica

Modelo simplificado Blackboard de coordinacin de Agentes


Ao acadmico 2011-2012

Sistemas Inteligentes

Ejercicios de repaso
Monkey and bananas: un chimpac hambriento se encuentra en la entrada de una habitacin. En la parte central del techo de la misma, hay un gancho del que cuelga un racimo de platanos. La distancia entre el extremo inferior y el suelo hace que el chimpanc no pueda alcanzarlos. En la habitacin, hay varias cajas de diferentes tamaos. Slo si se apilan una sobre otra queda el mnimo espacio para recoger los pltanos. El problema es dar con la secuencia de acciones para satisfacer su apetito. Qu informacin parece relevante? Qu operadores son pertinentes? Puede descomponerse el problema? Interesa cualquier camino o el mejor? El problema es recuperable o no? Partimos de objetivos o condiciones iniciales? Qu tipos de heursticas podemos usar?
Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Ejercicios de repaso
Misioneros y canbales: Tres misioneros se aproximan a un rio de la selva amaznica que han de cruzar. All se encuentran con tres canbales. El ro es mu profundo y ancho, con fuerte corriente. No se puede pasar ms que remando en una pequea barca en la que solo caben dos personas. Todos habrn de coordinarse para que en ninguna de las orillas, el nmero de canbales supere al de misioners. Cmo utilizar la barca para que los tres misioneros lleguen al otro lado? Qu informacin parece relevante? Si tampoco los canbales se Qu operadores son pertinentes? fiaran de los misioneros, Puede descomponerse el problema? qu podemos decir de la Interesa cualquier camino o el mejor? solucin? El problema es recuperable o no? Partimos de objetivos o condiciones iniciales? Qu tipos de heursticas podemos usar?

Grado en Ingeniera Informtica

Sistemas Inteligentes

Ao acadmico 2011-2012

Vous aimerez peut-être aussi