Está en la página 1de 9

UNIDAD 4. Bsqueda y satisfaccin de restricciones.

Inteligencia Artificial
19/05/2012 Instituto Tecnolgico de Cancn Anahi Aranda Quim

Introduccin
Podemos resolver algunos problemas mediante un sistema experto basado en bsquedas inteligentes. Estas se basan en las siguientes cuestiones. Que se busca Donde se busca Como se busca Tambin tenemos que ver las fases para primero determinar cul es el problema que tenemos que resolver con el sistema de bsqueda, de ah escoger un tipo de bsqueda que sea el ms adecuado a nuestro grafo, y establecer los operadores y las restricciones que se tienen que tomar en cuenta para descartar ciertos caminos al intentar llegar a nuestro estado meta. Estado meta es la parte final de nuestra resolucin del problema, cabe mencionar que no necesariamente se tiene solo una estado meta, ya que dependiendo de nuestra problemtica podemos tener diferentes metas a las que se pueden llegar, aqu lo ms importante es revisar cual es la que menos costes y tiempo nos consume y que resuelva de manera efectiva nuestras problemtica. Este tipo de situaciones ocurren mayormente en los juegos por lo que la inteligencia artificial se dedica a crear los algoritmos para la toma de decisiones de por ejemplo el juego de ajedrez que tenemos en nuestra laptop.

4.1. Problemas y espacios de estados


Un problema es el que un agente inteligente utiliza para tomar decisiones de lo que va a hacer para llegar a una solucin. Para resolver algunos de estos problemas tenemos agentes inteligentes que basndose en estados (secuencia de acciones) nos permite llegar a un estado meta, que es una solucin a nuestro problema inicial. Esto tomando en cuenta que necesitamos obtener el mximo resultado con menor uso de memoria y tiempo. Podemos decir que para la solucin de un problema se necesitan seguir los siguientes pasos:

FORMULAR

Metas. Se tiene que tomar en cuenta en primer lugar a que es lo que queremos llegar, utilizando el agente inteligente. Problema. Es cuando tenemos que ver qu acciones vamos a tomar, tomar en cuenta nuestras restricciones y los operadores que necesitamos para que este problema llegue a un estado meta anteriormente formulado.

BUSCAR

Se busca en las secuencias de acciones hasta encontrar la mejor opcin para resolver el problema.

EJECUTAR

Una vez encontrada una solucin se procede a ejecutar las acciones que esta recomienda.

EJEMPLO PUZZLE DE 8 ESPACIOS

Tamao del espacio de estados 9!/2=181.444 En el puzle de 8 la meta es acomodar los dgitos en forma ascendente de izquierda a derecha y de arriba hacia abajo. Los operadores son los movimientos del cuadro blanco. Son preferibles las rutas que entraan menos acciones o acciones menos costosas (menos movimientos del cuadro blanco).

4.2. Espacios de estados determinsticos y espacios no determinstico


Los estados que se tienen para resolver un problema se pueden clasificar en:
Espacios de Estados

Implicitos

Explicitos

Normalmente utilizan un sistema de produccin para generar sobre la marcha los posibles estados siguientes de un estado dado.

Se definen todos los estados y sus conexiones antes de la busqueda.

Deterministicos

No deterministicos

Contiene mas de un estado inicial, cada uno con su secuencia de estados.

Contienen un nico estado inicial y seguir la secuencia de estados para la solucin

Los espacios de estados determinsticos son usados por los sistemas expertos, mientras que los no determinsticos son usados por sistemas de lgica difusa.

EJEMPLO DE ESPACIO DE ESTADOS DETERMINSTICOS.

EJEMPLO DE ESPACIO DE ESTADOS NO DETERMINSTICOS.


A1 A1(1) A1(1,1) A1(1,2) B1(1,1) B1(1,2)

A1 A A2

A1(1)

A1(1,1) A1(1,2) A2(1,1) A2(1,2) C1 C1(1) B1 B1(1)

A2(1)

C1(1,1)
C1(1,2) D1(1,1) D1(1,2)

D1

D1(1)

4.3. Bsqueda Sistemtica


Para solucionar un problema tenemos que realizar una bsqueda por todos los espacios de estado para realizar esta bsqueda tenemos diferentes opciones dependiendo de las caractersticas de nuestro grafo o rbol, estas opciones son:

4.3.1. Bsqueda de Metas a Profundidad.


Este algoritmo es el ms utilizado y se llama as porque realiza la bsqueda hasta llegar al estado final de un camino, antes de pasar al siguiente camino hasta encontrar un estado meta, tambin se le puede llamar bsqueda exhaustiva.

4.3.2. Bsqueda de Metas en Anchura.


Este algoritmo realiza la bsqueda por cada nivel de estados del grafo o rbol hasta llegar al nivel ms bajo/final, o un estado meta.

Comparativa de casos de bsqueda de profundidad y por anchura


Escenario Algunos caminos son extremadamente largos, o incluso infinitos Todos los caminos tienen una longitud similar Todos los caminos son de longitud similar y todos los caminos poseen una meta de estado. Bsqueda por profundidad Acta deficiente Acta bien Acta bien Bsqueda por anchura Acta bien Acta bien Desperdicio de espacio y memoria

4.3.3. Bsqueda ptima.


Esta bsqueda tambin llamada bsqueda heurstica, se trata de seleccionar el estado ms prometedor y de ah los dems nodos son elegidos por comparacin de los estados con funciones especializadas.

EJEMPLO DE ALGORITMO DE BSQUEDA PTIMA


Inicio 1. Identificar los posibles estados inciales y medir la distancia (f) del ms cercano con a la meta; ponerlos en una lista (L) 2. Mientas L no est vaca has Inicia mientras a) Identificar el nodo n de L que tenga el mnimo f; Si existe ms de un nodo con un f mnimo, seleccionar uno de ellos, (tomar n, arbitrariamente) b) Si n es la meta Entonces regresar n a lo largo del camino desde el nodo inicial; salir con xito. Si no remover n de L y agregar todos los hijos de n a L, junto con su camino etiquetado desde el nodo inicial Fin del mientras; FIN.

4.4. Satisfaccin de Restricciones


Algunos tipos de problemas que tienen algunas condiciones en su estructura adems de lo bsico de un problema general, estas condiciones se muestran como un conjunto de variables y en la prueba de meta se especifica las restricciones que nuestra solucin debe satisfacer. La solucin para un problema de este tipo especifica valores para cada una de las restricciones. Las restricciones son de diversos tipos: Las unarias se refieren al valor de una sola variable.

Las restricciones de orden superior utilizan una restriccin de suma y pueden tener ms de una variable asociada a esta restriccin. Y, por ltimo, las restricciones pueden ser absolutas, y cuya violacin rige una solucin potencial, o restricciones de preferencia, y que dirn qu tipo de solucin es la que se prefiere.

Un problema de satisfaccin de restricciones se define por los elementos del siguiente cuadro:
Un Conjunto Finito De Variables X1, X2,, Xn Un Conjunto Finito De Dominios Asociados A Cada Variable D1==>x1,..., Dn==>xn Posibles valores de la variable

Un Conjunto Finito De Restricciones C1, C2,, Cm


Una Solucion Al Problema {X1 = V1,,xn = Vn}

Para la resolucin de un problema se utiliza la bsqueda general, y su estado inicial ser en el que las variables aun no son asignadas a los dominios, los operadores asignaran un valor a cada variable tomndolo del conjunto de dominios.

EJEMPLO DE LAS N-REINAS


La meta es colocar 8 reinas en un tablero de ajedrez de tal forma que no haya 2 reinas en la misma fila, columna o diagonal. Los operadores son colocar una reina en una posicin determinada. Los dominios son cada cuadro en el tablero y las variables son cada una de las reinas.

OTROS EJEMPLO DE LA VIDA REAL


Problemas de la vida real que se pueden plantear y resolver como espacios de estados: Bsqueda de rutas en redes informticas. Rutas areas para viajar Problema del viajante Diseo de microchips Ensamblaje de componentes 7

Desplazamiento de robots

Para resolver estos problemas se pueden utilizar algoritmos de bsqueda general, pero tambin hay algoritmos diseados especialmente para reducir el espacio de bsqueda. Aqu tenemos un ejemplo del algoritmo de la bsqueda general.

ALGORITMO DE BSQUEDA GENERAL

4.6 Resolucin de Problemas de Juegos


Es fcil poder imaginar que para crear un juego para nuestras computadoras, celulares, etc., se utiliza parte de la IA; porque estos juegos son agentes especializados en cada uno de estos juegos. Los problemas de juegos se empezaron a hacer realidad cuando fue posible programar las computadoras. Desde entonces esto ha ido creciendo tanto que en la actualidad una computadora puede jugar con una persona profesional sin tener ningn mal resultado. Cada vez los problemas de juego son ms complejos y es imposible calcular las consecuencias exactas de cada jugada, por lo que se utiliza un aprendizaje basado en experiencias para poder encontrar la mejor accin para cada jugada. La investigacin de los juegos ha generado una gran cantidad de interesantes ideas sobre cmo utilizar de la mejor manera el tiempo para obtener buenas decisiones, cuando la obtencin de las ptimas es imposible. Lo ltimo en programas de juegos: Ajedrez Backgammon Juego de fichas o damas Go Othello Todos ellos son juegos de tablero que han sido llevados a la digitalizacin por medio de la IA.

Conclusin
En conclusin, podemos decir que los agentes inteligentes utilizan los grafos o arboles de estado para poder llegar a encontrar una solucin al problema. Los estados pueden ser implcitos, explcitos-determinsticos, explcitos-no determinsticos, dependiendo de las

necesidades del problema. Para encontrar la solucin se ocupan bsquedas que pueden recorrer el rbol de diferentes maneras en amplitud, en profundidad o buscando el mejor camino. Tambin podemos encontrarnos con problemas que tengan algunas restricciones por lo que nuestras bsquedas pueden volverse especializadas para no gastar tiempo y costo innecesario. Estas restricciones son condiciones que tienen que tomarse en cuenta para encontrar la solucin a nuestro problema. Los problemas de los agentes inteligentes, empezaron al crearse los juegos de computadora, y bsicamente los problemas de juego son la base para los agentes especializados de ahora, aunque tambin ahora tenemos juegos cada vez ms complejos por lo que no es posible estar 100% seguros de todo lo que puede pasar despus de cada estado en el juego. .

También podría gustarte