Sei sulla pagina 1di 22

SEGUNDO BIMESTRE

Gua didctica:Inteligencia Artificial

El grafo anterior es un grafo de bsqueda plano, ya que permite la interconexin entre las distintas ciudades. Aplicando el algoritmo de bsqueda con vuelta atrs, se tiene la siguiente solucin: 1. Disear un rbol de bsqueda: Para ello empezamos dndole colores a las provincias en el mapa: x = rojo y = verde z = azul 2. Dado el estado anterior es necesario generar un color para la provincia w: Si w recibe rojo, no pudiese ser, ya que x es rojo. Si w recibe azul, no pudiese ser, ya que z es azul. Si w recibe verde, no pudiese ser, ya que y es verde. Si w recibe amarillo, esta solucin sera correcta ya que no coincide con los colores de ninguno de sus vecinos. Como se puede dar cuenta, la bsqueda de qu color ubicar para cada provincia es recursiva, puesto que hay que regresar a ver qu color tienen las provincias vecinas para asignar un valor correcto a la provincia que le falta el color. Lo anterior genera el siguiente rbol parcial de bsqueda:

Figura 5.6. rbol de bsqueda El rbol de la figura anterior, fue generado tomando en cuenta el color en orden para las letras x,y,z,w, que es el orden que va coincidiendo con el recorrido por provincias en el mapa. En la segunda y tercera hoja del rbol se observa como los colores han ido variando, por lo tanto se tiene un color distinto para w. Como siempre es necesario regresar a mirar los colores que han tenido las variable x,y,z para ubicar el color adecuado a w, de all el nombre de algoritmo de vuelta atrs.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

39

Gua didctica: Inteligencia Artificial

SEGUNDO SOLUCIONARIO BIMESTRE

Recuerde en caso de tener alguna inquietud puede recurrir al entorno virtual de aprendizaje y consultar a su profesor. 5.2 BSQUEDA LOCAL PARA PROBLEMAS DE SATISFACCIN DE RESTRICCIONES. La bsqueda local es otro de los algoritmos que se pueden utilizar para resolver problemas de satisfaccin de restricciones. En esta seccin se estudiar sus principales caractersticas y sus aplicaciones.

Realice una lectura comprensiva de la seccin 5.3: Bsqueda local para problemas de satisfaccin de restricciones. Con la lectura se podr dar cuenta de que existen distintas formas de resolver problemas de este tipo. De la lectura anterior se obtiene que la bsqueda local para problemas de satisfaccin de restricciones tiene las siguientes caractersticas:

Figura 5.7. Caractersticas de la bsqueda local aplicada al problema de satisfaccin de restricciones El ejercicio de la seccin 5.3: Bsqueda local para problemas de satisfaccin de restricciones, del texto base es muy explicativo y le podr ayudar a la comprensin de este tema. Lo importante del mismo es que se ha podido ubicar a ocho reinas con una solucin de solamente dos pasos. Que la parece!. Adems presenta de una forma adecuada el ajuste de la funcin de bsqueda. Por favor revise detenidamente el ejercicio nombrado anteriormente.

ACTIVIDAD RECOMENDADA

Revise el ejercicio de la posicin de las reinas ubicado en la seccin 5.3 del texto base: Bsqueda local para problemas de satisfaccin de restricciones. Luego, explique el proceso de ubicar nuevas reinas en el tablero (al menos 2 mas). ____________________________________________________________________________________ Con esta seccin se da por terminada esta unidad. Lo invitamos a que resuelva la siguiente autoevaluacin para afianzar sus conocimientos.

40

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica:Inteligencia Artificial

Autoevaluacin 5
A. 1. 2. 3. 4. 5. 6. Escriba una V o una F, segn sean verdaderos o falsos los siguientes enunciados ( ( ( ( ( ( ) ) ) ) ) ) Las restricciones son fundamentales en la definicin de un problema de bsqueda. Una restriccin es un condicionante de un problema. Una restriccin puede ser expresada en un rbol de bsqueda. En la bsqueda local siempre se aplica la solucin actual como vlida Se puede aplicar el algoritmo de vuelta atrs siempre y cuando existan solamente dos restricciones. Una buena solucin para escoger una buena heurtica es elegir la variable que esta mas restringuida en lugar del valor que esta menos restringuido en la busqueda de problemas de satisfaccin de restricciones. La estratgia de minimos conflictos trabaja tambien para problemas dificiles. Las estratgias de los problemas de satisfaccion de restricciones trabajan mejor cuando ninguno de los subproblemas es demasiado grande.

7. 8. B. 9.

( (

) )

Desarrolle el siguiente ejercicio: Tomando como base la Figura 5.4. de la presente gua didctica, disee un rbol de bsqueda empezando la coloracin del mapa por w.

Con esta evaluacin Usted, analiz su avance en el estudio de este tema.. Excelente! Sigamos avanzando con las siguientes secciones.

Verifique sus respuestas con las del solucionario que se encuentra al final de la presente gua didctica.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

41

Gua didctica: Inteligencia Artificial

SEGUNDO SOLUCIONARIO BIMESTRE

UNIDAD 6 BSQUEDA ENTRE ADVERSARIOS


Iniciamos el estudio de esta unidad conociendo cmo utilizar la teora de juegos para hacer que los computadores se comporten como un jugador humano. Es por ello que, se revisarn conceptos de teora de juegos en especial en donde participan dos jugadores, luego se describir como las acciones de un jugador influyen en las acciones de su adversario (Minimax) y por ltimo como se puede reducir el nmero de jugadas para que los algoritmos de Inteligencia Artificial ocupen de una forma adecuada la memoria de los computadores en donde se ejecutan. 6.1 ALGORITMO MINIMAX Todos hemos jugado alguna vez al tres en raya. Para ese juego existen dos jugadores, y lgicamente gana aquel que seleccione la mejor estrategia (algunos suponen que la mejor estrategia es empezar primero y ubicarse en la celda cntrica del tablero). Pero cmo se puede hacer que un computador juegue como si fuera otro jugador ms? o Cmo podemos hacer para que el computador sea nuestro oponente?. Pues bien, en este tema comentaremos las estrategias necesarias para que eso ocurra, lgicamente necesitamos de su ayuda y colaboracin para la comprensin del tema.

Realizar una lectura del texto base, seccin 6.2: Decisiones ptimas en juegos, apartado Algoritmo minimax, veremos el detalle necesario para que pueda comprender la teora de este algoritmo. Durante la lectura, fijmonos bien en que el Algoritmo Minimax realiza una exploracin exhaustiva del rbol de bsqueda, de manera que el jugador que debe mover en primer lugar, al que llamaremos MAX tiende a elegir en cada uno de sus movimientos aquel camino que le conduzca a un nodo con el mayor valor posible de la funcin de evaluacin de la funcin heurstica. La estrategia del otro jugador al que llamaremos MIN es la contraria, ya que tratar de oponerse a la estrategia de MAX, tomando el peor valor para aquella, es decir, el ms pequeo. La anterior es una definicin muy interesante, de hecho propone que MAX y MIN son oponentes y lgicamente uno debe ser declarado ganador. Sin embargo, existen otras propuestas de la teora de juegos, en donde los adversarios colaboran para sacar el mejor provecho vlido para ambos. Observemos el siguiente ejemplo de MINIMAX: MAX MIN 7 8 MAX MIN

Figura 6.1. Algoritmo Minimax

42

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica:Inteligencia Artificial

En la Figura anterior, desde el nodo MIN superior se puede llegar a un nodo con valor 7. El otro camino posible slo es conveniente explorarlo mientras se sepa que se puede llegar por l a un nodo cuyo valor sea menor que 7. Como consecuencia de esto no es necesario explorar el camino de MAX ya que nos conduce a un valor de 8, el cual es mayor que 7 y por lo tanto no es la solucin que buscamos. Una vez comprendido lo que es el algoritmo MINIMAX, le proponemos revisar el siguiente esquema: MIN debido a que toma el valor menor trata de minimizar las jugadas. MINIMAX MAX debido a que toma el valor mayor trata de maximizar las jugadas Solamente hay un ganador. Se denomina funcin heurstica a aquella que nos permite obtener los valores para MAX y para MIN Bien ahora es momento de interactuar con las tecnologas a travs de la siguiente actividad.

Interactividad en el EVA Lo invitamos a revisar el EVA, donde encontrar documentos y ejercicios que le pueden ayudar a complementar el tema. Lo esperamos!. Como se ha podido dar cuenta, el algoritmo MINMAX tiene los elementos bsicos para hacer que un computador piense, y lgicamente puede convertirse en nuestro contrincante en el juego. Es su turno de trabajar sobre el tema:

ACTIVIDAD RECOMENDADA

Describa las mejoras que se le puede dar al algoritmo MINMAX.

____________________________________________________________________________________ 6.2 PODA ALFA-BETA. Cmo se habr dado cuenta, el algoritmo MINIMAX que lo estudiamos anteriormente nos permite determinar que existen dos jugadores adversarios. Pero este algoritmo es muy lento, es decir a veces tiene que explorar muchas ramas del rbol de bsqueda para encontrar una solucin. Qu le parece si nos proponemos hacerlo ms rpido al MINIMAX?, no podemos dejar que el computador gane el juego, as que propongmonos una solucin realizando:

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

43

Gua didctica: Inteligencia Artificial

SEGUNDO SOLUCIONARIO BIMESTRE

La lectura de la seccin 6.3: Poda alfa-beta, veremos cmo es posible incrementar la eficiencia del MINIMAX podando las hojas del rbol de bsqueda.

Leyendo la poda ALFA-BETA nos damos cuenta que es una excelente solucin para disminuir el tiempo de respuesta del MAXMIN, debido a que no explora todas las ramas del rbol de bsqueda, y adems PODA (corta) las ramas que no interesan. Su funcionamiento se basa en el siguiente esquema: Pasa cada llamada recursiva a un nodo hijo. Existen dos valores y . representa la cota inferior de los valores que se van a ir buscando en la parte del rbol que queda por explorar. es la cota superior de los mismos valores. Si en algn momento llega a ser mayor que , no tendr sentido seguir con la bsqueda, realizndose una poda si estamos en un nodo MAX o si estamos en un nodo MIN. Ahora realicemos una analoga con una lista de nmeros: para entender bien el alfa-beta debemos darnos cuenta que podemos sacar el mayor o menor de una lista de nmeros, como por ejemplo: De la Lista = 1 2 4 8 El mayor es 8 y el menor es 1. Lo interesante es que ste es el principio bsico de la funcin heurstica, la comparacin de nmeros para obtener mayores o menores. Ubiquemos ahora los siguientes nmeros en un rbol de bsqueda como se muestra en la figura (ver hojas del rbol) y obtengamos otras listas aplicando la funcin heurstica:

PODA ALFA-BETA

Figura 6.2. Poda Alfa-Beta

44

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica:Inteligencia Artificial

Observando la Figura 6.2., nos damos cuenta que la comparacin que se est aplicando en las hojas del rbol es el MAX. Primero se compara el 5 con el 15, luego como 15 es mayor a 5, el ganador parcial es 15. Luego se verifica si 10 es mayor a 15, como no lo es, entonces se mantiene 15 como ganador y por ltimo se compara 15 con el 20, quedando 20 como ganador de la comparacin. Ahora damos paso al siguiente jugador, por lo que en la otra rama utilizaramos MIN, o sea los menores. Empezamos, comparamos 15 con el 25, el cual es mayor que 15. Si nos pasamos a MIN aqu el ganador es 15 porque es el menor (entre 25 y 15). Seguimos con el 30, pero 30 es mayor que 25 y mayor que 15, es necesario compararlo?. No porque de todas maneras 15 en MIN sera el ganador, por lo tanto esa comparacin ya no es necesaria, por lo que en esta sera necesario aplicar la poda tipo para MIN. Hemos descifrado juntos la forma cmo podemos evitar las bsquedas innecesarias en MAXMIN, por lo tanto estamos ya capacitados para automatizar algoritmos con agentes lgicos. Es conveniente seguir trabajando sobre lo estudiado, por ello lo invitamos a realizar lo siguiente:

Interactividad en el EVA Revisar el EVA, donde encontrar documentos y ejercicios que le pueden ayudar a complementar el tema. Hasta aqu hemos concluido con la sexta unidad, comprobemos lo aprendido hasta ahora realizando la autoevaluacin.

Autoevaluacin 6
A. 1. 2. 3. 4. 5. 6. 7. 8. Escriba una V o una F, segn sean verdaderos o falsos los siguientes enunciados ( ( ( ( ( ( ( ( ) ) ) ) ) ) ) ) El algoritmo minimax se puede utilizar solamente en la bsqueda en profundidad El algoritmo minimax se aplica solamente a la teora de juegos En el algoritmo minimax los dos jugadores pueden colaborar para sacar un beneficio comn En el algoritmo minimax el que empieza el juego sea max o min siempre gana El algoritmo minimax puede ser aplicado con busqueda en anchura El algoritmo de poda alfa-beta introduce ruido en la bsqueda La poda alfa-beta trabaja solamente cuando el que empieza el juego es MAX La poda alfa-beta necesita revisar todos los nodos de un rbol de bsqueda

Verifique sus respuestas con las del solucionario que se encuentra al final de la presente gua didctica.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

45

Gua didctica: Inteligencia Artificial

SEGUNDO SOLUCIONARIO BIMESTRE

UNIDAD 7 AGENTES LGICOS


Estimado Estudiante, el objetivo del estudio de esta unidad es comprender como disear algoritmos que permitan que el computador acte de forma independiente, es decir, de forma autnoma seleccionando sus propias estrategias. Algo de esto ya lo hemos comprendido en la unidad anterior, pero es otra manera, considerada a veces mucho ms sencilla de hacer que el computador no solamente piense sino que trate de ser autnomo. Es por ello que, empezaremos a leer acerca de los agentes basados en el conocimiento, los cuales son como las personas que tomamos una decisin en base al conocimiento que tenemos de un caso. Luego aprenderemos como el conocimiento puede ser representado utilizando lgica proposicional y por ltimo utilizaremos los patrones de conocimiento para disminuir la carga que a veces se le da a la lgica para representar un contexto. Vaya que interesante tema!, a nosotros nos gusta muchsimo y trataremos de transmitrselo a Usted. Le parece si empezamos? 7.1 AGENTES BASADOS EN EL CONOCIMIENTO. Un agente puede ser visto como cualquier cosa que percibe el ambiente o toma las seales del ambiente. Para ello nosotros como personas utilizamos nuestros sentidos, el programa de computador utiliza sensores para resolver problemas, como por ejemplo la bsqueda del camino ms corto de un lugar a otro. Si las personas almacenamos el conocimiento en la memoria, el agente la almacena en una base de conocimientos. Fjese tal relacin! Veamos otra analoga: si nosotros aprendemos a cruzar una calle, es probable que utilizando este aprendizaje podamos cruzar muchas ms. El agente puede inferir conocimiento nuevo con base a lo que percibe y utilizar el conocimiento previo para tomar decisiones. A eso le denominamos: razonamiento. Y as como nosotros utilizamos nuestras experiencias para tomar decisiones (muchas veces decimos basado en la experiencia), el agente puede utilizar su experiencia para mejorar la capacidad de accin en el futuro.

Realizar una lectura de la seccin 7.1:Agentes Basados en el conocimiento, veremos el detalle necesario para que podamos comprender la teora y prctica de este tipo de agentes. Bien, una vez desarrollada la lectura, revise el esquema siguiente relacionado a las caractersticas de un agente basado en el conocimiento:

46

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica:Inteligencia Artificial

Le llega el conocimiento desde cada una de sus fuentes (sensores, bases de datos, etc.) Tiene una interfaz para recibir el conocimiento y manejarlo. AGENTE BASADO EN EL CONOCIMIENTO Obtenido el conocimiento disea una base de conocimiento en donde reposa el mismo. Tiene una maquina de inferencias que facilita el razonamiento. Tiene una interfaz para expresar su razonamiento. Se relaciona con el ambiente.

En el esquema anterior se ha logrado resumir fcilmente al agente basado en el conocimiento. Como se describe en el texto base, uno de los ejemplos ms claros de un agente basado en el conocimiento es el mundo de wumpus. Por ello lo invitamos a:

Revisar la seccin 7.2 El mundo de wumpus, donde conocer las reglas del funcionamiento del juego.

Una vez conocidas las reglas del juego, lo invitamos a revisar el anexo 1, donde se presenta la solucin del ejercicio 7.2 propuesto en el texto base, pgina 266. Como se observa en el anexo, la base de conocimiento de este juego est formada por un conjunto de sentencias, donde una sentencia es la representacin de un hecho del mundo (juego), en un lenguaje de representacin del conocimiento. Un agente lgico entonces, parte de su conocimiento y utiliza el razonamiento lgico para llegar a su objetivo.

ACTIVIDAD RECOMENDADA

Describa las mejoras que se le puede dar a las bsquedas que realiza un agente.

____________________________________________________________________________________ 7.2 LGICA PROPOSICIONAL. Un agente basado en el conocimiento necesita almacenar su informacin en una estructura que le permita recuperarla e interpretarla de forma fcil.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

47

Gua didctica: Inteligencia Artificial

SEGUNDO SOLUCIONARIO BIMESTRE

Realizar una lectura de la seccin 7.4: Lgica Proposicional, veremos cmo las proposiciones pueden agruparse para convertirse en una base de conocimientos.

Leyendo lo expuesto de la lgica proposicional en el texto base nos damos cuenta que es muy fcil la representacin del conocimiento utilizando sus propiedades. Su funcionamiento se basa en el siguiente esquema: La proposicin es el significado de una idea, enunciado. Proposicin es toda oracin declarativa. LGICA PROPOSICIONAL En general, a las proposiciones se las representa por las letras del alfabeto desde la letra p, es decir p,q,r,s,t. etc. Una proposicin se clasifica en compuesta o molecular Una proposicin puede contener conectivos lgicos. Ahora, realicemos el siguiente ejercicio con el fin de comprender de mejor manera la utilizacin de la lgica proposicional: Busquemos la tabla de veracidad de la siguiente proposicin: (p v q) v (p q)

p V V F F

q V V F F

(p v q) V V V F

p F V V F

q F F

(p q) F F V F

(p v q) v (p q) V V V V

V V

Tabla 7.1. Valores de verdad para la proposicin

Para tener todas las proposiciones de las combinaciones de p y q, se utiliza la frmula 2n. En donde n es el nmero de proposiciones que hay en el ejercicio. Por lo tanto el resultado de la frmula es 22= 4. Dividimos el resultado 4 para 2, el resultado es 2. Este ltimo resultado es el nmero de Verdaderos (V) y Falsos (F) para p. Volvemos a dividir este ltimo resultado 2 y lo dividimos por dos, el resultado es 1. Este ltimo resultado es el nmero de V y F para q. Estos valores son ubicados en las dos primeras columnas de la Tabla 6.1.

48

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica:Inteligencia Artificial

Utilizando los valores de p y q resolvemos la frmula planteada en el ejercicio. p es el valor opuesto de p y q es el opuesto de q. El resultado de aplicar la formula es una Tautologa debido a que todos los valores de la ltima columna resultan ser verdaderos.

ACTIVIDAD RECOMENDADA

Describir cuando una sentencia es vlida y/o satisfactible.

____________________________________________________________________________________ Una vez realizada la actividad, es conveniente que tome en cuenta lo siguiente:

Interactividad en el EVA Ingresar al EVA, y participe de las actividades propuestas por su profesor.

7.3 PATRONES DE RAZONAMIENTO EN LGICA PROPOSICIONAL En este tema aprenderemos cmo reducir el nmero de proposiciones para representar el conocimiento. A la forma como se reduce el nmero de proposiciones le llamamos Patrn de razonamiento. Descubriremos entonces, como un conjunto de reglas (sentencias) pueden someterse a un proceso (patrones, frmulas lgicas) con el fin de hacer ms fcil su utilizacin. El objetivo es crear una forma de disminuir las sentencias para que stas se puedan representar de una manera ms fcil en la base de conocimiento. Bien empecemos!.

Realizar una lectura se la seccin 7.5: Patrones de razonamiento en lgica proposicional. Veremos como algunas proposiciones pueden conectarse para facilitar la representacin del conocimiento. Leyendo lo descrito para patrones de razonamiento en el texto base nos damos cuenta que el patrn de razonamiento tiene las caractersticas expresadas en la siguiente figura:

Figura 7.1. Caractersticas de los patrones de razonamiento

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

49

Gua didctica: Inteligencia Artificial

SEGUNDO SOLUCIONARIO BIMESTRE

Para entender de mejor manera el funcionamiento de los patrones de razonamiento desarrollemos el siguiente ejemplo: El objetivo de este ejercicio es entender el Modus Ponens: Si la persona observa a ambos lados y se dispone a pasar la calle, entonces la persona camina. Si la persona camina, pasa por la calle. Si pasa por la calle, llega a la otra vereda. La hiptesis que se generan son las siguientes: Ho: p q => s, en donde p = persona observa a ambos lados, q=persona se dispone a pasar la calle, s= persona camina. H1:s => r, en donde r = persona pasa por la calle. H1: r=>t, en donde t = persona llega a la otra vereda. Afirmando p y q, lgicamente la persona llega a la otra vereda: p q => s p q s Al darse s entonces se da r y si se da r, entonces se da t. Por lo tanto la persona llega a la otra vereda. 7.4. ENCADENAMIENTO HACIA ADELANTE Y HACIA ATRS Este tipo de encadenamiento significa que vamos a partir del problema para encontrar una solucin, es decir vamos a partir de lo general para llegar a lo particular. Continuemos con la lectura de la seccin 7.5 Patrones de razonamiento en lgica proposicional, seccin Encadenamiento hacia adelante y hacia atrs del texto base, veremos el detalle necesario para que podamos comprender la teora y prctica de este tipo de encadenamiento De la lectura se obtiene las siguientes caractersticas para el encadenamiento hacia adelante y atrs: Empieza con los datos del problema y busca proposiciones para inferir la nueva informacin. Encadenamiento hacia adelante Se define en el mismo una estructura para el manejo de datos. Es necesario probar el sistema con el fin de identificar a las reglas vlidas.

50

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica:Inteligencia Artificial

Se debe empezar por lo que se quiere demostrar. Encadenamiento hacia atrs Se deben buscar proposiciones que permitan llegar a una determinada conclusin. Se deben buscar las premisas correspondientes para llegar o demostrar una meta.

Con el fin de explicar de mejor manera el funcionamiento de estos algoritmos es necesario que realice la siguiente actividad recomendada.

ACTIVIDAD RECOMENDADA

Revise el ejercicio planteado en la unidad 7.5 Patrones de razonamiento en lgica proposicional, seccin Encadenamiento hacia adelante y hacia atrs del texto base. Luego, tomando en cuenta el ejercicio 7.2 del texto base plantee las proposiciones necesarias para resolver el problema de bsqueda de un estado OK para el mundo de wumpus, utilizando el encadenamiento hacia atrs.

7.4. BACKTRACKING En esta seccin describiremos como se puede utilizar tcnicas de programacin para hacer an ms fcil la bsqueda en rboles. Si con los mtodos anteriores solucionamos gran parte de la velocidad de respuesta de la bsqueda, con este algoritmo podemos an mejorarla ms.

Realizar una la lectura de la seccin 7.6: Inferencia proposicional efectiva, seccin del texto base, veremos el detalle necesario para comprender la teora y prctica para el algoritmo en estudio. De acuerdo a la lectura anterior el Backtracking se resume en lo siguiente: Es una tcnica general de resolucin de problemas, aplicable a optimizacin y juegos. Realiza una bsqueda exhaustiva y sistemtica en el espacio de soluciones. En cada momento el algoritmo se encontrar en un cierto nivel k, con una solucin parcial. Encuentra una solucin pero no necesariamente la ms optima.

BACKTRACKING

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

51

Gua didctica: Inteligencia Artificial

SEGUNDO SOLUCIONARIO BIMESTRE

Con el fin de comprender de mejor manera a este algoritmo puede revisar el anexo 2, donde se desarrolla un problema tpico que se presenta cuando se trabaja con este tipo de algoritmos. 7.5 AGENTES BASADOS EN LGICA PROPOSICIONAL Finalmente hemos llegado al estudio de la ltima seccin, donde se estudiar la construccin de agentes utilizando lgica proposicional. Para conocer del tema es necesario:

Realizar la lectura de la seccin 7.7: Agentes basados en lgica proposicional, del texto base, donde conocer dos tipos de agentes.

Una vez desarrollada la lectura, podr estar en la capacidad de distinguir los tipos de agentes que utilizan algoritmos de inferencia y una base de conocimiento de aquellos que evalan directamente expresiones lgicas en forma de circuitos. Terminado el estudio de esta seccin, es importante que realice la siguiente actividad:

ACTIVIDAD RECOMENDADA

Realice un cuadro comparativo de los dos tipos de agentes que pueden ser construidos utilizando lgica proposicional.

Muy bien, con mucho xito hemos llegado a culminar el desarrollo de la asignatura, y para saber lo que ha logrado comprender en este segundo bimestre lo invitamos a desarrollar la siguiente autoevaluacin.

Autoevaluacin 6
A. Escriba una V o una F, segn sean verdaderos o falsos los siguientes enunciados ( ( ( ( ( ( ( ( ) ) ) ) ) ) ) ) Un agente lgico posee solamente proposiciones en su base de conocimiento. La lgica proposicional se clasifica en lgica de predicados La lgica proposicional tiene tautologias y negatividades La lgica proposicional tiene valores de incertidumbre Un agente lgico puede funcionar con elementos matemticos Un Patrn de razonamiento es un conjunto de reglas Un Patrn de razonamiento esta compuesto por reglas negativas Un Patrn de razonamiento puede ser utilizado siempre y cuando se bsque ampliar la base de conocimientos.

1. 2. 3. 4. 5. 6. 7. 8.

52

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica:Inteligencia Artificial

9.

) )

El algoritmo de Backtracking puede ser representado utilizando lgica proposicional. El algoritmo de Backtracking mejora el tiempo de ejecucin de la bsqueda

10. ( B.

A continuacin se presentan problemas referentes a lo tratado en esta unidad. 11. Resuelva la siguiente tabla de verdad para las siguientes proposiciones y determine si la sentencia (p->q) V (p<->q), es vlida. P Q p->q p<->q (p->q) V (p<->q)

Verifique sus respuestas con las del solucionario que se encuentra al final de la presente gua didctica.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

53

Gua didctica: Inteligencia Artificial

SOLUCIONARIO

Solucionario
AUTOEVALUACIN 1 1. 2. 3. 4. 5. V V F V V B 9. Definicin de trminos Agente: Se puede definir como un ente capaz de percibir su entorno, procesar tales percepciones y responder o actuar en su entorno por medio de actuadores. Funcin de agente: Descripcin matemtica que proyecta una percepcin dada en una accin. Programa de agente: Implementacin completa del agente que se ejecuta sobre su arquitectura. Racionalidad: Es utilizado para describir el comportamiento de los agentes inteligentes. Es una caracterstica que indica una eleccin de ser correcta, especficamente, de tender a maximizar un resultado esperado. Autonoma: Significa que el agente debe apoyarse ms en sus percepciones y saber aprender a determinar cmo tiene que compensar el conocimiento incompleto o parcial. Agente reactivo: Es aquel que selecciona las acciones en base a las percepciones actuales ignorando las percepciones histricas. Agente basado en modelo: Son aquellos agentes que utilizan un modelo interno para almacenar informacin sobre el estado del mundo. Agente basado en objetivos: Utilizan algn tipo de informacin que describa las situaciones que son deseables para el agente, es decir sobre su meta. Agente basado en utilidad: Son aquellos que utilizan una funcin de utilidad para calcular sus preferencias entre los estados del mundo, con el objeto de seleccionar la accin que le permita alcanzar la mayor utilidad esperada. Agente que aprende: Son aquellos que utilizan mecanismos de aprendizaje para mejorar su eficacia. 6. 7. 8. 9. F V V F A 1. 2. 3. 4. F V V F 5. 6. 7. 8. V V V F AUTOEVALUACIN 2

10. V

54

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

SOLUCIONARIO

Gua didctica: Inteligencia Artificial

10. Diferencia La diferencia entre la medida de rendimiento y la funcin utilidad radica principalmente en que la medida de rendimiento permite determinar el xito del agente, es decir si la secuencia de acciones que genera el agente en el medio es la deseada, entonces el agente habr actuado correctamente, en cambio la funcin de utilidad considera dos tipos de casos: primero cuando hay objetivos conflictos y slo es posible alcanzar algunos de ellos, la funcin de utilidad determina el equilibrio adecuado. Segundo cuando hay varios objetivos y ninguno de ellos se puede alcanzar con certeza, la utilidad proporciona un mecanismo para ponderar la probabilidad de xito en funcin de la importancia de los objetivos. AUTOEVALUACIN 3 1. 2. 3. 4. B 9. Mapa conceptual V F F V 5. 6. 7. 8. V V F V A

10. La respuesta depende del problema que se hay planteado. AUTOEVALUACIN 4 A. 1. 2. 3. 4. F F F V 5. 6. 7. 8. V V F V A 1. 2. 3. 4. V V V V 5. 6. 7. 8. V V V v AUTOEVALUACIN 5

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

55

Gua didctica: Inteligencia Artificial

SOLUCIONARIO

B 9.

AUTOEVALUACIN 6 A 1. 2. 3. 4. V V F F 5. 6. 7. 8. V F F V A 1. 2. 3. 4. 5. B 11. P V V F F Q V F V F p->q V F V V F V. V V V

AUTOEVALUACIN 7

6. 7. 8. 9.

V F V V

10. V

p<->q V F F V

(p->q) V (p<->q) V F V V

En este caso hemos obtenido que la sentencia no es vlida.

56

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

ANEXOS

Gua didctica: Inteligencia Artificial

ANEXOS
ANEXO 1: Solucin al ejercicio 7.2 del texto base Suponga que el agente ha avanzado hasta el instante que se muestra en la figura 7.4(a), sin haber percibido nada en la casilla [1,1], una brisa en la [2,1], y un hedor en la [1,2], y en estos momentos est interesado sobre las casillas [1,3], [2,2] y [3,1]. Cada una de ellas puede tener un hoyo y como mucho en una se encuentra el wumpus. Siguiendo el ejemplo de la Figura 7.5, construya el conjunto de los mundos posibles. (Debera encontrar unos 32 mundos). Marque los mundos en los que la BC es verdadera y aquellos en los que cada una de las siguientes sentencias es verdadera: = << No hay ningn hoyo en la casilla [2,2]>> = << Hay un wumpus en la casilla [1,3]>> De acuerdo a la Figura 7.4 de su texto base, las percepciones de las casillas en las cuales est el interesado el Agente (A en un recuadro en la figura siguiente) son: Percepciones (hedor, ok, brisa). El agente lgicamente no sabe de cual casilla le viene que percepcin. El primer modelo vlido para la Base de Conocimientos (BC) sera:

Figura 1. Movimiento del Agente En la Figura 1, el agente A tendr las siguientes percepciones (hedor, brisa). Ahora si wumpus y pozo se mueven se tiene que:

a)

b)

c)

Figura 2. Movimiento del Agente tomando en cuenta otras posiciones


UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

57

Gua didctica: Inteligencia Artificial

ANEXOS

Y as por el estilo. Para = << No hay ningn hoyo en la casilla [2,2]>>, se tiene que como vlido a la Figura 2 a). Mientras que para = << Hay un wumpus en la casilla [1,3]>> seran validos los modelos:

Figura 3. Modelo para = << Hay un wumpus en la casilla [1,3]>> Las configuraciones que se pueden observar tanto en la Figura 2 como en la Figura 3 antes mostradas, se constituyen en la Base de Conocimientos del juego.

58

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

ANEXOS

Gua didctica: Inteligencia Artificial

Anexo 2 Ejercicio. Solucin a un problema con el algoritmo Backtracking Se dispone de un tablero rectangular, por ejemplo el tablero de ajedrez, y de un caballo, que se mueve segn las reglas de este juego. El objetivo es encontrar una manera de recorrer todo el tablero partiendo de una casilla determinada, de tal forma que el caballo pase una sola vez por cada casilla. Una variante es obligar al caballo a volver a la posicin de partida en el ltimo movimiento. Por ltimo se estudiar como encontrar todas las soluciones posibles partiendo de una misma casilla3. Par tiendo del hecho de que el caballo puede mover como mximo 8 posiciones diferentes, la solucin consiste en pasar a una funcin los posibles movimientos de caballo y descartar aquellos que caen fuera del tablero junto con las casillas ya visitadas. Si una funcin se queda sin posibles siguientes movimientos, el asunto es volver a la posicin anterior y probar la siguiente posible. 1* 10 15 20 23 16 5 22 9 14 11 2* 19 24 21 Tabla 1. Movimientos del caballo En la Tabla 1. Si se va siguiendo la numeracin se puede encontrar las distintas posiciones vlidas para el movimiento del caballo en el tablero. Por ejemplo uno de los movimientos seria de 1* hasta 2* en la Tabla 1 (Ver sombreado). Para obtener el resto de movimientos, la heurstica que se utilizara es la siguiente: se debe visitar primero las casillas con menos movimientos posibles. 1* 10 15 20 23 16 5 22 9 14 11 2* 19 24 21 6 17 4 13 8 3 12 7 18 25

6
17 4* 13 8

3* 12 7 18 25

Tabla 2. Movimientos del caballo con Backtracking En la Tabla anterior se observan los movimientos vlidos para el caballo (Ver sombreado). Cuando estamos en 3* y pasamos a 4* ya tenemos un inconveniente que es que ya visitamos la casilla 6,

Backtracking.Recuperado el 10 de junio del 2011, de: http//www.algoritmia.net/articles.php?id=33

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

59

Gua didctica: Inteligencia Artificial

ANEXOS

por lo que ese movimiento no es vlido y tenemos que regresar a 3*. En la cual ya no tenemos un movimiento vlido por lo que habra que regresar a 2* y as por el estilo. El objetivo es ir probando el resto de movimientos con el fin de lograr un nmero adecuado para visitar todas las casillas.

GZHF/mfnb/2011-06-21/60

60

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

Potrebbero piacerti anche