stringtranslate.com

Espacio de estados (informática)

Vacuum World, un problema de ruta más corta con un espacio de estados finitos

En informática , un espacio de estados es un espacio discreto que representa el conjunto de todas las configuraciones posibles de un "sistema". [1] Es una abstracción útil para razonar sobre el comportamiento de un sistema dado y se utiliza ampliamente en los campos de la inteligencia artificial y la teoría de juegos .

Por ejemplo, el problema del juguete Vacuum World tiene un espacio de estados finito y discreto en el que hay un conjunto limitado de configuraciones en las que pueden estar el vacío y la suciedad. Un sistema "contra", donde los estados son los números naturales que comienzan en 1 y se incrementan con el tiempo [2] tiene un espacio de estados discreto infinito. La posición angular de un péndulo no amortiguado [3] es un espacio de estados continuo (y por lo tanto infinito).

Definición

Los espacios de estado son útiles en informática como un modelo simple de máquinas. Formalmente, un espacio de estado se puede definir como una tupla [ NASG ] donde:

Propiedades

Un estado válido en el espacio de estados del rompecabezas de las ocho reinas

Un espacio de estados tiene algunas propiedades comunes:

Por ejemplo, el mundo de la aspiradora tiene un factor de ramificación de 4, ya que la aspiradora puede terminar en 1 de 4 cuadrados adyacentes después de moverse (suponiendo que no puede permanecer en el mismo cuadrado ni moverse en diagonal). Los arcos del mundo de la aspiradora son bidireccionales, ya que se puede llegar a cualquier cuadrado desde cualquier cuadrado adyacente, y el espacio de estados no es un árbol, ya que es posible entrar en un bucle moviéndose entre 4 cuadrados adyacentes.

Los espacios de estados pueden ser infinitos o finitos, y discretos o continuos.

Tamaño

El tamaño del espacio de estados para un sistema dado es el número de posibles configuraciones del espacio. [3]

Finito

Si el tamaño del espacio de estados es finito, calcular el tamaño del espacio de estados es un problema combinatorio . [4] Por ejemplo, en el rompecabezas de las ocho reinas , el espacio de estados se puede calcular contando todas las formas posibles de colocar 8 piezas en un tablero de ajedrez de 8x8. Esto es lo mismo que elegir 8 posiciones sin reemplazo de un conjunto de 64, o

Esto es significativamente mayor que el número de configuraciones legales de las damas, 92. En muchos juegos, el espacio de estados efectivos es pequeño en comparación con todos los estados alcanzables/legales. Esta propiedad también se observa en ajedrez , donde el espacio de estados efectivos es el conjunto de posiciones que se pueden alcanzar mediante movimientos legales del juego. Esto es mucho más pequeño que el conjunto de posiciones que se pueden lograr colocando combinaciones de las piezas de ajedrez disponibles directamente en el tablero.

Infinito

Todos los espacios de estados continuos pueden describirse mediante una función continua correspondiente y, por lo tanto, son infinitos. [3] Los espacios de estados discretos también pueden tener un tamaño infinito ( contablemente ), como el espacio de estados del sistema "contador" dependiente del tiempo, [2] similar al sistema en la teoría de colas que define el número de clientes en una fila, que tendría un espacio de estados {0, 1, 2, 3, ...}.

Exploración

Explorar un espacio de estados es el proceso de enumerar los posibles estados en busca de un estado objetivo. El espacio de estados de Pacman , por ejemplo, contiene un estado objetivo cuando se han comido todas las bolitas de comida y se explora moviendo a Pacman por el tablero. [5]

Buscar estados

Un estado de búsqueda es una representación comprimida de un estado mundial en un espacio de estados y se utiliza para la exploración. Los estados de búsqueda se utilizan porque un espacio de estados a menudo codifica más información de la necesaria para explorar el espacio. Comprimir cada estado mundial a solo la información necesaria para la exploración mejora la eficiencia al reducir la cantidad de estados en la búsqueda. [5] Por ejemplo, un estado en el espacio de Pacman incluye información sobre la dirección en la que se encuentra Pacman (arriba, abajo, izquierda o derecha). Dado que no cuesta nada cambiar las direcciones en Pacman, los estados de búsqueda para Pacman no incluirían esta información y reducirían el tamaño del espacio de búsqueda por un factor de 4, uno por cada dirección en la que Pacman podría estar mirando.

Métodos

Los algoritmos de búsqueda estándar son eficaces para explorar espacios de estados discretos. Los siguientes algoritmos muestran tanto completitud como optimalidad en la búsqueda de un espacio de estados. [5] [6]

Estos métodos no se extienden naturalmente a la exploración de espacios de estados continuos. Explorar un espacio de estados continuos en busca de un estado objetivo dado es equivalente a optimizar una función continua arbitraria , lo cual no siempre es posible (véase optimización matemática) .

Véase también

Referencias

  1. ^ Nykamp, ​​Duane. "Definición de espacio de estados". Math Insights . Consultado el 17 de noviembre de 2019 .
  2. ^ ab Papernick, Norman. "Estados infinitos y transiciones de estados infinitos". Universidad Carnegie Mellon . Consultado el 12 de noviembre de 2019 .
  3. ^ abc Nykamp, ​​Duane. "La idea de un sistema dinámico". Math Insights . Consultado el 12 de noviembre de 2019 .
  4. ^ Zhang, Weixong (1999). Búsqueda en el espacio de estados: algoritmos, complejidad, extensiones y aplicaciones. Springer. ISBN 978-0-387-98832-0.
  5. ^ abc Abbeel, Pieter. "Conferencia 2: Búsqueda no informada". UC Berkeley CS188 Introducción a la IA . Consultado el 30 de octubre de 2019 .
  6. ^ Abbeel, Pieter. "Conferencia 3: Búsqueda informada". UC Berkeley CS188 Introducción a la IA . Consultado el 12 de noviembre de 2019 .