Introduccion a la Inteligencia Artificial Curso 2007–2008
Tema 5: Representacion de problemascomo espacios de estados
Miguel A. Gutierrez Naranjo
Dpto. de Ciencias de la Computacion e Inteligencia Artificial
Universidad de Sevilla
IIA 2007–08 Representacion de problemas . . . 1
Problemas de espacios de estados
B Especificacion del problema:
B Especificar un problema como espacio de estados consiste endescribir de manera clara cada de uno de los siguientes compo-nentes:
¿Cual la situacion inicial desde la que se parte?
Una descripcion de las posibles acciones que se pueden re-alizar
Un metodo de comprobacion de que hemos llegado a nuestroobjetivo.
Una funcion de coste que nos permita asignar un valornumerico a cada camino.
IIA 2007–08 Representacion de problemas . . . 2
Ejemplo: El 8-puzzle
B Planteamiento del problema del 8-puzle:
B Para el 8-puzle se usa un cajon cuadrado en el que hay situa-dos 8 bloques cuadrados. El cuadrado restante esta sin rellenar.Cada bloque tiene un numero. Un bloque adyacente al huecopuede deslizarse hacia el. El juego consiste en transformar laposicion inicial en la posicion final mediante el deslizamiento delos bloques.
2 8 31 6 47 5
→ . . . →1 2
3 4 56 7 8
IIA 2007–08 Representacion de problemas . . . 3
Ejemplo: El 8-puzzle
2 8 31 6 47 5
→ . . . →1 2
3 4 56 7 8
B Estados: Posibles posiciones de los numeros en el cuadro 3× 3
B Acciones: Mover la pieza sin numero hacia arriba, hacia abajo,hacia la derecha o a la izquierda.
B Objetivo: Una posicion dada.
B Funcion de coste: 1 por movimiento
IIA 2007–08 Representacion de problemas . . . 4
Ejemplo: El 8-puzzle
2 8 31 6 47 5
→ . . . →1 2
3 4 56 7 8
B Estados: Posibles posiciones de los numeros en el cuadro 3× 3
B Acciones: Mover la pieza sin numero hacia arriba, hacia abajo,hacia la derecha o a la izquierda.
B Objetivo: Una posicion dada.
B Funcion de coste: 1 por movimiento
IIA 2007–08 Representacion de problemas . . . 5
Ejemplo: El 8-puzzle
2 8 31 6 47 5
→ . . . →1 2
3 4 56 7 8
B Estados: Posibles posiciones de los numeros en el cuadro 3× 3
B Acciones: Mover la pieza sin numero hacia arriba, hacia abajo,hacia la derecha o a la izquierda.
B Objetivo: Una posicion dada.
B Funcion de coste: 1 por movimiento
IIA 2007–08 Representacion de problemas . . . 6
Ejemplo: El 8-puzzle
2 8 31 6 47 5
→ . . . →1 2
3 4 56 7 8
B Estados: Posibles posiciones de los numeros en el cuadro 3× 3
B Acciones: Mover la pieza sin numero hacia arriba, hacia abajo,hacia la derecha o a la izquierda.
B Objetivo: Una posicion dada.
B Funcion de coste: 1 por movimiento
IIA 2007–08 Representacion de problemas . . . 7
Ejemplo: Robot articulado
Estados: Coordenadas de losangulos de las articulaciones.
Acciones: Movimiento contin-uo de las articulaciones.
Objetivo: Cumplir una tarea.
Funcion de coste: Tiempo deejecucion
IIA 2007–08 Representacion de problemas . . . 8
Ejemplo: Robot articulado
Estados: Coordenadas de losangulos de las articulaciones.
Acciones: Movimiento contin-uo de las articulaciones.
Objetivo: Cumplir una tarea.
Funcion de coste: Tiempo deejecucion
IIA 2007–08 Representacion de problemas . . . 9
Ejemplo: Robot articulado
Estados: Coordenadas de losangulos de las articulaciones.
Acciones: Movimiento contin-uo de las articulaciones.
Objetivo: Cumplir una tarea.
Funcion de coste: Tiempo deejecucion
IIA 2007–08 Representacion de problemas . . . 10
Ejemplo: Robot articulado
Estados: Coordenadas de losangulos de las articulaciones.
Acciones: Movimiento contin-uo de las articulaciones.
Objetivo: Cumplir una tarea.
Funcion de coste: Tiempo deejecucion
IIA 2007–08 Representacion de problemas . . . 11
Ejemplo: Robot articulado
Estados: Coordenadas de losangulos de las articulaciones.
Acciones: Movimiento contin-uo de las articulaciones.
Objetivo: Cumplir una tarea.
Funcion de coste: Tiempo deejecucion.
IIA 2007–08 Representacion de problemas . . . 12
Ejemplo: Vacaciones en Rumanıa
IIA 2007–08 Representacion de problemas . . . 13
Ejemplo: Vacaciones en Rumanıa
B Estamos de vacaciones en Rumanıa. Hoy estamos en Arad ynuestro vuelo sale manana para Espana desde Bucarest:
Estados: Las diferentes ciudades en las que puedo estar.
Acciones: Ir de una ciudad a otra.
Objetivo: Estar manana en Bucarest.
Funcion de coste: Kilometros recorridos.
IIA 2007–08 Representacion de problemas . . . 14
Ejemplo: Vacaciones en Rumanıa
B Estamos de vacaciones en Rumanıa. Hoy estamos en Arad ynuestro vuelo sale manana para Espana desde Bucarest:
Estados: Las diferentes ciudades en las que puedo estar.
Acciones: Ir de una ciudad a otra.
Objetivo: Estar manana en Bucarest.
Funcion de coste: Kilometros recorridos.
IIA 2007–08 Representacion de problemas . . . 15
Ejemplo: Vacaciones en Rumanıa
B Estamos de vacaciones en Rumanıa. Hoy estamos en Arad ynuestro vuelo sale manana para Espana desde Bucarest:
Estados: Las diferentes ciudades en las que puedo estar.
Acciones: Ir de una ciudad a otra.
Objetivo: Estar manana en Bucarest.
Funcion de coste: Kilometros recorridos.
IIA 2007–08 Representacion de problemas . . . 16
Ejemplo: Vacaciones en Rumanıa
B Estamos de vacaciones en Rumanıa. Hoy estamos en Arad ynuestro vuelo sale manana para Espana desde Bucarest:
Estados: Las diferentes ciudades en las que puedo estar.
Acciones: Ir de una ciudad a otra.
Objetivo: Estar manana en Bucarest.
Funcion de coste: Kilometros recorridos.
IIA 2007–08 Representacion de problemas . . . 17
Ejemplo: Vacaciones en Rumanıa
B Estamos de vacaciones en Rumanıa. Hoy estamos en Arad ynuestro vuelo sale manana para Espana desde Bucarest:
Estados: Las diferentes ciudades en las que puedo estar.
Acciones: Ir de una ciudad a otra.
Objetivo: Estar manana en Bucarest.
Funcion de coste: Kilometros recorridos.
IIA 2007–08 Representacion de problemas . . . 18
Seleccion del espacio de estados
B El mundo real es muy complejo
B Debemos seleccionar aquellas caracterısticas que puedan ser de-terminantes para encontrar la solucion.
B Proceso de abstraccion:
Estado (abstraccion): Un conjunto de objetos o situacionesreales que describen una situacion (p.e. Estoy en Arad).
Accion (abstraccion): Conjunto de acciones reales (p.e. Ir deArad a Timisoara implica buscar la estacion de autobuses,comprar el billete, . . . )
Solucion (abstraccion): Conjunto de acciones ( o estados) querepresentan una solucion en el mundo real.
IIA 2007–08 Representacion de problemas . . . 19
Arbol de busqueda
Arad
Zerlnd Sibiu Timisoara
Arad Oradea
Rimnicu Vilcea
Fagaras
Arad
Oradea
Lugoj
Arad
IIA 2007–08 Representacion de problemas . . . 20
Arbol de busqueda
Arad
Zerlnd Sibiu Timisoara
Arad Oradea
Rimnicu Vilcea
Fagaras
Arad
Oradea
Lugoj
Arad
IIA 2007–08 Representacion de problemas . . . 21
Arbol de busqueda
Arad
Zerlnd Sibiu Timisoara
Arad Oradea
Rimnicu Vilcea
Fagaras
Arad
Oradea
Lugoj
Arad
IIA 2007–08 Representacion de problemas . . . 22
Busqueda en el arbol
frontier
explored nodes
unexplored nodes
startnode
IIA 2007–08 Representacion de problemas . . . 23
Un algoritmo de busqueda (informal)
B Selecciono un nodo de la frontera (al principio, la frontera solocontiene al nodo inicial).
B Si el nodo seleccionado es el que busco, entonces se termina labusquda.
B Si no es el objetivo, entonces considero los nodos siguientes alnodo seleccionado.
B Anado estos nuevos nodos a la frontera
B Vuelvo al principio
IIA 2007–08 Representacion de problemas . . . 24
Un algoritmo de busqueda
B ¿Que nodo de la frontera selecciono?
B ¿Hay alguna manera de saber cual es el mejor nodo?
B ¿Como anado las nuevos nodos a la frontera?
B ¿Como los reordeno?
B Tenemos distintas estrategias de busqueda.
IIA 2007–08 Representacion de problemas . . . 25
Bibiliografıa
B Russell, S. y Norvig, P. Artificial Intelligence: A Modern Ap-proach Prentice Hall International, 1995.
B Poole, D., Mackworth, A. y Goebel, R. Computational Intelli-gence A Logical Approach. Oxford University Press, New York,1998.
IIA 2007–08 Representacion de problemas . . . 26