Professional Documents
Culture Documents
Resolucin de problemas
La resolucin de problemas es una capacidad que
consideramos inteligente
Somos capaces de resolver problemas muy diferentes
Encontrar el camino en un laberinto
Resolver un crucigrama
Jugar a un juego
Diagnosticar una enfermedad
Decidir si invertir en bolsa
...
Resolucin de problemas
Se presenta un tipo de agente basado en metas,
denominado agente para la solucin de
problemas
Este tipo de agentes, al determinar las secuencias
de acciones que le permite obtener estados
deseables, determina lo que debera hacer
Resolucin de problemas
El objetivo es que el agente sea capaz de resolver los
problemas
Para ello debemos definir el tipo de problema, de
manera que se pueda resolver automticamente
Resolucin de problemas
Necesitamos entonces:
Una representacin comn para todos los problemas
Algoritmos que usen alguna estrategia para resolver
Definicin de un problema
Si abstraemos los elementos de un problema
podemos identificar:
Un punto de partida
Un objetivo a alcanzar
Acciones a nuestra disposicin para resolver el
problema
Restricciones sobre el objetivo
Elementos que son relevantes en el problema definidos
por el tipo de dominio
Representacin de un problema
Existen diferentes formas de representar problemas
para resolverlos de manera automtica
Espacio de estados: un problema se divide en un
Representacin de un problema
Podemos definir un problema por los elementos que
intervienen y sus relaciones
En cada instante de la resolucin de un problema esos
elementos tendrn unas caractersticas y relaciones
especficas
Representacin de un problema
Denominaremos estado a la representacin de los
elementos que describen el problema en un momento
(descripcin del estado actual del mundo)
Distinguiremos dos estado especiales el estado
inicial (punto de partida) y el estado final (objetivo
del problema)
Representacin de un problema
Para poder movernos entre los diferentes estados
necesitamos operadores de transformacin
Operador: es una funcin de transformacin sobre la
representacin de un estado que lo convierte en otro
estado
Los operadores definen una relacin de accesibilidad
entre estados
Representacin de un problema
Representacin de un operador:
Condiciones de aplicabilidad
Funcin de transformacin
Los estados y su relacin de accesibilidad conforman
lo que se denomina espacio de estados
Representacin de un problema
Podra asimilarse con un rbol que hay que recorrer
desde la raz
La solucin de nuestro problema est en una de sus
hojas
inicio
Objetivo
Figura 3.2
Espacio de Estados
Solucin de un problema
Solucin: Secuencia de pasos que llevan del estado
inicial al final (secuencia de operadores) o tambin el
estado final
Tipos de solucin: una cualquiera, la mejor, todas
Costo de una solucin: Gasto en recursos de la
aplicacin de los operadores a los estados
Bsqueda de la solucin
En trminos generales, cuando un agente tiene ante s
diversas opciones inmediatas cuyo valor ignora, para
decidir lo que debe hacer primero tiene que evaluar
las diversas secuencias de acciones posibles que le
conducen a estados cuyo valor se conoce, y luego
decidirse por la mejor
Bsqueda de la solucin
Al este proceso de tratar de hallar tal secuencia se le
conoce como bsqueda
En un algoritmo de bsqueda la entrada es un
problema y la respuesta es una solucin que adopta la
forma de una secuencia de acciones
Bsqueda de la solucin
Una vez encontrada una solucin, se procede a
ejecutar las acciones que sta recomienda
A esta se le llama fase de ejecucin
Luego de formular un objetivo y el problema que hay
que resolver, el agente solicita un procedimiento de
bsqueda que le permita resolverlo
Bsqueda de la solucin
Procede a utilizar la solucin para guiar sus acciones,
y as hace todo lo que la solucin le indica como el
siguiente paso que se debe dar y, hecho esto, procede
a eliminar este paso de la secuencia
Una vez ejecutada la solucin, el agente busca un
nuevo objetivo
p, una percepcin
esttico:
estado ACTUALIZAR-ESTADO(estado, p)
si s est vaco, entonces
g FORMULAR-META (estado)
problema FORMULAR-EL-PROBLEMA(estado, g)
s BUSCAR(problema)
accin Recomendacin(s, estado)
s RESTO(s, estado)
responder con accin
3 Lts.
4 Lts.
aplicadas es:
Litros en X
Litros en Y
Regla aplicada
Estructura de control
Adems de la descripcin anterior se necesita una
Estructura de control
Es un loop a travs de un simple ciclo en el que algunas reglas
Estructura de control
Qu reglas seleccionar para provocar un cambio de estado?
Esto se debe a que a menudo ms de una regla tendr su lado
Estrategia de control
Los requerimientos de una buena estrategia de control
son:
Movilidad: si la estrategia de control no causa movilidad,
Estrategia de control
Eficiencia: para resolver problemas, debemos tambin
Estrategia de control
El algoritmo de bsqueda Breadth-first (bsqueda a lo
ancho) es:
1. Construya un rbol, con la raz como estado inicial
2. Genere todos los sucesores de la raz aplicando cada una de
las reglas aplicables al estado inicial
3. Para cada hoja genere todo los sucesores posibles, aplicando
todas las reglas posibles.
4. Contine hasta alcanzar un estado objetivo
(0,0)
(4,0)
2 Niveles
No hay
ms reglas
Regla 1 aplicables Regla 2
(4,3)
(0,0)
(1,3)
Regla 2
Regla 5
Regla 8
(0,3)
(4,3)
(0,0)
(3,0)
Regla 1
Regla 6
Regla 9
Estrategia de control
El algoritmo de bsqueda Depth-first (bsqueda en
profundidad) es:
1. Generar una posible solucin: un camino en el grafo a partir
del estado inicial o generar un punto particular en el espacio
problema
2. Realizar una prueba para determinar si se lleg a la solucin,
comparando el estado actual con el conjunto de estados
objetivos
3. Si se alcanz el estado objetivo, finaliza. Si no, volver al paso
uno.
al otro?
ro
Problema de los misioneros y de los canbales
Regla 2:
1Cy1M
Regla 3:
2 M, 0 C
Regla 4:
1 M, 0 C
Regla 5:
1 C, 0 M
.
.
(3M,3C)
.
(2M,2C)
(1M,1C)
(3M,2C)
(0M,1C)
(3M,0C)
(0M,3C)
(3M,1C)
(0M,2C)
(1M,1C)
(2M,2C)
.
.
.
B
(0M,0C)
Regla 1
Regla 2
Regla 3 no
se puede
aplicar
Regla 4 no
se puede
aplicar
Regla 2
(3M, 3C) (0, 0)
Regla 1
(no se puede)
backtracking
no se puede
Regla 5
Regla 4
(3M, 2C) (0M, 1C)
Regla 1
(no se puede)
(2M,1C) (1M,2C)
no se puede
Regla 5 se
puede
aplicar
Heursticas
Para resolver muchos problemas eficientemente, es
necesario a menudo comprometer los requerimientos
de movilidad y sistematicidad y construir una
estructura de control que no garantice encontrar la
mejor respuesta, sino que casi siempre encontrar
una muy buena respuesta
As se introduce la idea de Heurstica
Heursticas
Las heursticas son tcnicas que mejoran la
eficiencia de un proceso de bsqueda, posiblemente
sacrificando completitud
Usando las heursticas podemos obtener soluciones
buenas (no ptimas) para este tipo de problemas que
tienen al menos un tiempo exponencial
Heursticas
Heurstica de propsito general: algoritmo del
vecino ms prximo"
til para una variedad de problemas combinatoriales
Ejemplo: vendedor viajero
Heursticas
Existen otras razones que tambin implican que usar
heursticas es bueno:
Raramente necesitamos la solucin ptima, una buena
Heursticas
Por lo tanto, podemos dar otra definicin de
Inteligencia Artificial:
Estudio de tcnicas para resolver problemas que
crecen exponencialmente, en tiempo polinomial,
explotando el conocimiento que tenemos sobre el
dominio del problema
Estado inicial
2
3
Estado final
Algoritmos de bsqueda
Los problemas de I.A. son demasiado complejos para
ser resueltos por tcnicas directas
Deben ser atacados por mtodos de bsqueda
apropiados que tengan tcnicas directas para guiar la
bsqueda
Algoritmos de bsqueda
Todo problema de bsqueda puede ser descrito como
una ruta de un grafo problema
Se trata encontrar un camino en el grafo, desde un
estado inicial a uno final
Algoritmos de bsqueda
Cada nodo representa un estado de problema y cada
arco representa una relacin entre los estados
Si los arcos que emergen de un nodo representan
caminos alternativos, tenemos un grafo-or
Si adems, algunos arcos representan la
descomposicin de un problema en subproblemas
(todos deben solucionarse), un arco apunta a varios
nodos se tiene un grafo and-or
Algoritmos de bsqueda
Un ejemplo de un grafo-or es demostrado en el
ejemplo de los dos baldes de agua
(0,0)
(4,0)
2 Niveles
No hay
ms reglas
Regla 1 aplicables Regla 2
(4,3)
(0,0)
(1,3)
Regla 2
Regla 5
Regla 8
(0,3)
(4,3)
(0,0)
(3,0)
Regla 1
Regla 6
Regla 9
Algoritmos de bsqueda
Para un grafo and-or, la siguiente figura muestra el
correspondiente rbol para recibir el ttulo de
Ingeniero en la Universidad Catlica de Chile
Examen de
grado
Alternativas
Magister
Comp.
Memoria
Buen
Promedio
Solicitud
Alternativas
PPA >= 4,7
Subproblemas
Recomendaciones
Algoritmos de bsqueda
En la siguiente figura se muestra el espacio de
posibilidades para resolver los problemas de
bsqueda
Primero, tenemos los procedimientos bsicos, que se
usan para encontrar caminos desde posiciones de
partida a posiciones objetivo cuando la longitud de
los caminos descubiertos no es importante (8-puzzle)
Algoritmos de bsqueda
Luego, vienen procedimientos ms complicados, que
encuentran los caminos ms cortos
Se usan cuando el costo de atravesar un camino es de
importancia primordial (por ejemplo, en el problema
del vendedor viajero)
Por ltimo, se tienen los procedimientos de casos
especiales, que son apropiados cuando existe un
adversario (por ejemplo, el ajedrez)
Tipos de bsqueda
Depth-first
Hill Climbing
Breadth-first
ALGN CAMINO
Beam
Best-first
Bristish museum
BSQUEDA
CAMINO PTIMO
JUEGOS
Poda alpha-beta
Progressive deeping
Poda heurstica
Continuacin heurstica
Algoritmos de bsqueda
Estas tcnicas de bsqueda de propsito general son
todas variedades de bsqueda heurstica
Pueden ser descritas independientemente de
cualquier tarea particular o dominio del problema
Algoritmos de bsqueda
Estas tcnicas de bsqueda de propsito general son
todas variedades de bsqueda heurstica
Pueden ser descritas independientemente de
cualquier tarea particular o dominio del problema