Sie sind auf Seite 1von 10

Unidad 2.

Tcnicas de Bsqueda

2.1. Solucin de problemas con bsqueda.

La solucin de problemas es fundamental para la mayora de las aplicaciones


de IA; existen principalmente dos clases de problemas que se pueden resolver
mediante procesos computables: aqullos en los que se utiliza un algoritmo
determinista que garantiza la solucin al problema y las tareas complejas que
se resuelven con la bsqueda de una solucin; de sta ltima clase de
problemas se ocupa la IA.

La solucin de problemas requiere dos consideraciones:

Representacin del problema en un espacio organizado.

La capacidad de probar la existencia del estado objetivo en dicho


espacio.

Las anteriores premisas se traducen en: la determinacin del estado objetivo y


la determinacin del camino ptimo guiado por este objetivo a travs de una o
ms transiciones dado un estado inicial

El espacio de bsqueda, se le conoce como una coleccin de estados.


En general los espacios de bsqueda en los problemas de IA no son
completamente conocidos de forma a priori. De lo anterior resolver un
problema de IA cuenta con dos fases:

La generacin del espacio de estados

La bsqueda del estado deseado en ese espacio.

Debido a que todo el espacio de bsqueda de un problema es muy grande,


puede causar un bloqueo de memoria, dejando muy poco espacio para el
proceso de bsqueda. Para solucionar esto, se expande el espacio paso a paso,
hasta encontrar el estado objetivo.
2.2. Espacios de estados.
Muchos de los problemas que pueden ser resueltos aplicando tcnicas de
inteligencia artificial se modelan en forma simblica y discreta definiendo las

configuraciones posibles del universo estudiado. El problema se plantea


entonces en trminos de encontrar una configuracin objetivo a partir de una
configuracin inicial dada, aplicando transformaciones vlidas segn el modelo
del universo. La respuesta es la secuencia de transformaciones cuya aplicacin
succesiva lleva a la configuracin deseada.
Los ejemplos ms carcteristicos de esta categora de problemas son los
juegos (son universos restringidos fciles de modelar). En un juego, las
configuraciones del universo corresponden directamente a las configuraciones
del tablero. Cada configuracin es un estado que puede ser esquematizado
grficamente y representado en forma simblica. Las transformaciones
permitidas corresponden a las reglas o movidas del juego, formalizadas
como transiciones de estado.
Entonces, para plantear formalmente un problema, se requiere precisar una
representacin simblica de los estados y definir reglas del
tipo condicin accin para cada una de las transiciones vlidas dentro del
universo modelado. La accin de una regla indica como modificar el estado
actual para generar un nuevo estado. La condicin impone restricciones sobre
la aplicabilidad de la regla segn el estado actual, el estado generado o la
historia completa del proceso de solucin.
El espacio de estados de un juego es un grafo cuyos nodos representan las
configuraciones alcanzables (los estados vlidos) y cuyos arcos explicitan las
movidas posibles (las transiciones de estado). En principio, se puede construir
cualquier espacio de estados partiendo del estado inicial, aplicando cada una
de las reglas para generar los sucesores immediatos, y as succesivamente con
cada uno de los nuevos estados generados (en la prctica, los espacios de
estados suelen ser demasiado grandes para explicitarlos por completo).
Cuando un problema se puede representar mediante un espacio de estados, la
solucin computacional correspende a encontrar un camino desde el estado
inicial a un estado objetivo.
2.2.1. Determinsticos.
El espacio de estados determinsticos 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.
Se puede describir asu vez, que un sistema es determinstico si, para un estado
dado, al menos aplica una regla a l y de solo una manera.

2.2.2. No determinsticos.
El no determinstico contiene un amplio nmero de estados iniciales y sigue la
secuencia de estados perteneciente al estado inicial del espacio. Son usados
por sistemas de lgica difusa.
En otras palabras, si ms de una regla aplica a cualquier estado particular del

sistema, o si una regla aplica a un estado particular del sistema en ms de una


manera, entonces el sistema es no determinstico.

2.3. Mtodos de bsqueda.


2.3.1. Primero en anchura (breadthfirst).
En ingls, breadth-first search.
Si el conjunto open se maneja como una lista FIFO, es decir, como una cola,
siempre se estar visitando primero los primeros estados en ser generados. El
recorrido del espacio de estados se hace por niveles de profundidad.
procedure Bsqueda_en_amplitud {
open ()[estado_inicial]
closed () {}
while (open no est vaca) {
remover el primer estado X de la lista open
if (X es un estado objetivo) return xito
else {
generar el conjunto de sucesores del estado X
agregar el estado X al conjunto closed
eliminar sucesores que ya estn en open o en closed
agregar el resto de los sucesores al final de open
}
}
return fracaso
}
Si el factor de ramificacin es B y la profundidad a la cual se encuentra el
estado objetivo ms cercano es n, este algoritmo tiene una complejidad en
tiempo y espacio de O(Bn). Contrariamente a la bsqueda en profundidad, la
bsqueda en amplitud garantiza encontrar el camino ms corto.

2.3.2. Primero en profundidad (depthfirst).


En ingls, depth-first search.

Si el conjunto open se maneja como una lista LIFO, es decir, como un stack,
siempre se estar visitando primero los ltimos estados en ser generados. Esto
significa que si A genera B y C, y B genera D, antes de visitar C se visita D, que
est ms alejado de la raiz A, o sea ms profundo en el rbol de bsqueda. El
algoritmo tiene en este caso la tendencia de profundizar la bsqueda en una
rama antes de explorar ramas alternativas.
procedure Bsqueda_en_profundidad {
open () [estado_inicial]
closed () {}
while (open no est vaca) {
remover el primer estado X de la lista open
if (X es un estado objetivo) return xito
else {
generar el conjunto de sucesores del estado X
agregar el estado X al conjunto closed
eliminar sucesores que ya estn en open o en closed
agregar el resto de los sucesores al principio de open
}
}
return fracaso
}
Considerando que la cantidad promedio de sucesores de los nodos visitados
es B (llamado en ingls el branching factor y en castellano el factor de
ramificacin), y suponiendo que la profundidad mxima alcanzada es n, este
algoritmo tiene una complejidad en tiempo de O(Bn) y, si no se considera el
conjunto closed, una complejidad en espacio de O(B n). En vez de usar el
conjunto closed, el control de ciclos se puede hacer descartando aquellos
estados que aparecen en el camino generado hasta el momento (basta que
cada estado generado tenga un puntero a su padre).
El mayor problema de este algoritmo es que puede "perderse" en una rama sin
encontrar la solucin. Adems, si se encuentra una solucin no se puede
garantizar que sea el camino ms corto.
2.3.3. Grafos O.
2.3.4. Grafos A.

2.4. Satisfaccin de restricciones.


Los problemas pueden resolverse buscando en un espacio de estados, estos
estados pueden evaluarse por heursticas especficas para el dominio y
probados para verificar si son estados meta.
Los componentes del estado, son equivalentes a un grafo de restricciones, los
cuales estn compuestos de:

Variables. Dominios (valores posibles para las variables).

Restricciones (binarias) entre las variables.

Objetivo: encontrar un estado (una asignacin completa de valores a las


variables) Que satisface las restricciones.
En los Problemas de Satisfaccin de Restricciones (PSR), los estados y la
prueba de meta siguen a una representacin estndar, estructurada y muy
simple.
Ejemplos:

Crucigramas

Colorear mapas

2.5. Teora de juegos.


Siendo una de las principales capacidades de la inteligencia humana su
capacidad para resolver problemas, as como la habilidad para analizar los
elementos esenciales de cada problema, abstrayndolos, el identificar las
acciones que son necesarias para resolverlos y el determinar cul es la
estrategia ms acertada para atacarlos, son rasgos fundamentales.
Podemos definir la resolucin de problemas como el proceso que partiendo de
unos datos inciales y utilizando un conjunto de procedimientos escogidos, es
capaz de determinar el conjunto de pasos o elementos que nos llevan a lo que
denominaremos una solucin ptima o semi-ptima de un problema de
planificacin, descubrir una estrategia ganadora de un juego, demostrar un
teorema, reconocer
Una imagen, comprender una oracin o un texto son algunas de las tareas que
pueden concebirse como de resolucin.
Una gran ventaja que nos proporciona la utilizacin de los juegos es que a
travs de ellos es muy fcil medir el xito o el fracaso, por lo que podemos
comprobar si las tcnicas y algoritmos empleados son los ptimos. En

comparacin con otras aplicaciones de inteligencia artificial, por ejemplo


comprensin del lenguaje, los juegos no necesitan grandes cantidades de
algoritmos. Los juegos ms utilizados son las damas y el ajedrez.
La resolucin de un problema de IA mediante bsqueda consiste en: Aplicar
una determinada estrategia de Aplicar una determinada estrategia de control
que conduzca a encontrar un camino desde el estado inicial hasta algn estado
objetivo del espacio de estados Exige examinar las posibles secuencias de
Exige examinar las posibles secuencias de acciones Se debe seleccionar
aquella secuencia que sea la mejor segn un determinado criterio z Los
objetivos fundamentales de la Los objetivos fundamentales de la resolucin de
un problema mediante bsqueda son: Encontrar una solucin Que la
solucin tenga coste total mnimo: Coste de bsqueda (coste offline):
Tiempo y memoria necesarios. 7 Coste del camino solucin (coste online).

una representacin de espacios de estados es un modelo matemtico de un sistema fsico


descrito mediante un conjunto de entradas, salidas y variables de estado relacionadas
por ecuaciones diferenciales de primer orden que se combinan en una ecuacin
diferencial matricial de primer orden. Para prescindir del nmero de entradas, salidas y
estados, las variables son expresadas como vectores y las ecuaciones algebraicas se
escriben en forma matricial (esto ltimo slo puede hacerse cuando el sistema dinmico es
lineal e invariante en el tiempo). La representacin de espacios de estado (tambin conocida
como aproximacin en el dominio del tiempo) provee un modo compacto y conveniente de
modelar y analizar sistemas con mltiples entradas y salidas. Con entradas y salidas,
tendramos que escribir
veces la transformada de Laplace para procesar toda la
informacin del sistema. A diferencia de la aproximacin en el dominio de la frecuencia, el uso
de la representacin de espacios de estado no est limitada a sistemas con componentes
lineales ni con condiciones iniciales iguales a cero. El espacio de estado se refiere al espacio
de dimensiones cuyos ejes coordenados estn formados por variables de estados. El
estado del sistema puede ser representado como un vector dentro de ese espacio.

PROBLEMAS Y ESPACIO DE ESTADOS

Un problema tpico de la Inteligencia Artificial consiste en buscar un estado concreto


entre un conjunto determinado, al que se le llama espacio de estados. Imaginemos, por ejemplo,
una habitacin con estantes en la que hay un libro. Un robot se desea desplazar por la habitacin
con el fin de llegar a dicho libro. De qu manera lo har? En este punto es donde entran en juego
las estrategias y los algoritmos de bsqueda.

El primer paso para disear un programa que resuelva un problema es crear


una descripcin formal y manejable del propio problema. Sera adecuado contar con programas
que produzcan descripciones formales a partir de descripciones informales, proceso denominado
operacionalizacin. Dado que por ahora no se conoce la forma de construir estos programas este

proceso debe hacerse manualmente. Hay problemas que por ser artificiales y estructurados son
fciles de especificar (por ej. el ajedrez, el problema de las jarras de agua, etc.).
Otros problemas naturales, como por ej. la comprensin del lenguaje, no son tan sencillos de
especificar. Para producir una especificacin formal de un problema se deben definir:- espacio de
estados;- estado inicial del problema;- estado objetivo o final;- reglas que se pueden aplicar para
pasar de un estado a otro.

Problemas lgicos: El hallazgo de la solucin de un problema mediante un


espacio de estado y los mtodos de bsqueda en este espacio de solucin.

Estado: la representacin de un problema en un instante dado.

Espacio de estado: se trata de definir el problema mediante estados posibles.

Es necesario hacer cambios en el espacio de estado para que pase a otro estado (movimiento), el
cual tambin sufrir nuevas transformaciones. Por lo cual hay que definir una serie de operadores.

Operador: convierte un estado en otro.


Pero hace falta definir el conjunto de acciones para llevar a cabo las transformaciones entre
estados.

No todos los estados son admisibles a partir del estado inicial. Debe existir un conjunto de
transferencias que lleve al estado final:
E0 ~ E1 ~ E2 ~......En

Al conjunto de transferencias tambin se le llaman reglas del tipo: Antecedente y Accin. Que
sirven para realizar todos los estados.
Para definir el espacio de estados no es necesario hacer una enumeracin exhaustiva de todos los
estados vlidos, sino que es posible definir lo de manera ms general.
As uno de los mtodos de bsqueda de soluciones para problemas poco estructurados (no
existe un algoritmo bien definido), son los espacios de estado
Su estructura se corresponde con la resolucin de problemas porque:-permite definir formalmente
el problema, mediante la necesidad de convertir una situacin dada en una situacin deseada
mediante un conjunto de operaciones permitidas; -permite definir el proceso de resolucin de un
problema como una combinacin de tcnicas conocidas y bsqueda (la tcnica general de
exploracin del espacio intenta encontrar alguna ruta desde el estado actual hasta un estado
objetivo).

REPRESENTACION DE ESPACIO DE ESTADOS


En el mencionado problema del robot en la habitacin el conjunto de estados que
el agente (en nuestro ejemplo, el robot) debe recorrer, generalmente se representa mediante un
grafo, aunque en algunos casos concretos se usan rboles. Cada nodo del grafo
representar a uno de los estantes de la habitacin, y dos nodos sern
adyacentes si tambin lo son sus estantes correspondientes. El grafo del dibujo en la parte
inferior representa el tablero de manera parcial, y cada nodo es identificado por un nmero.
Suponemos que la posicin inicial del robot es el estante marcado con el nmero 1. En este grafo
se aplica una correspondencia entre los nodos del mismo y los estantes numerados de igual forma.
Como se puede observar en el tablero, por ejemplo, el estante 1 es adyacente al 2 y al 5, as :

Espacios de estados Determinsticos y espacios


no determinstico
Como se mencion en el tema anterior, el espacio de estados es la representacin
de un problema que abarca todas las posibles situaciones que se pueden
presentar en la solucin del problema

Los espacios de estados pueden clasificar en dos tipos: los implcitos y los
explcitos, como se muestra en el diagrama siguiente

Los espacios de estados implcitos normalmente utilizan un sistema de produccin


para generar sobre la marcha los posibles estados siguientes de un estado dado.
Los juegos suelen crear un espacio de estados implcito ya que un juego puede
variar dependiendo de las reglas que lo describen.
Los espacios de estados explcitos son aquellos en los se define, previo al inicio
de la bsqueda, todos los estados posibles y las conexiones entre ellos.
La representacin de los espacios de estados explcitos se puede dar o no
determinsticamente, esto es, que el espacio de estados determinsticos contienen
un nico estado inicial y seguir la secuencia de estados para la solucin, mientras
que el no determinstico contiene un amplio nmero de estados iniciales y sigue la
secuencia de estados perteneciente al estado inicial del espacio.
Los espacios de estados determinsticos son usados por los sistemas
expertos, mientras que los no determinsticos son usados por sistemas
de lgica difusa.

Ejem plo de e sp a ci o d e e s t ad os d et e rmi ns ti co s

Ejem plo de e sp a ci o d e e s ta do s no d et er min s ti co s.

Das könnte Ihnen auch gefallen