Sie sind auf Seite 1von 38

Titulo delproblemas

Resolver material mediante Búsqueda

3
Temario

1. Introducción

2. Tema
- Subtemas
Agente resolvente de Problemas

-----
Agente resolvente de Problemas
Objetivos

• Simplifican los problemas, ya que organizan el


comportamiento del agente, limitando sus metas.
• El agente deberá descubrir la secuencia de acciones que
permita alcanzarlos.
• El primer paso para resolver un problema es formular
sus objetivos.
Agente resolvente de Problemas
Propiedades del Entorno
Agente resolvente de Problemas
Búsqueda

• Proceso de encontrar una secuencia de acciones


(solución) para alcanzar un objetivo.
• Ejecución: llevar a cabo la solución.
• Este tipo de agentes ignoran el resto de percepciones
que recibe mientras están calculando y ejecutando una
solución.
Agente resolvente de Problemas
Búsqueda
Agente resolvente de Problemas
Búsqueda

function AGENTE-RESOLVENTE-PROBLEMAS(percepcion)
return accion
datos:
solución # secuencia de acciones (vacía)
estado # el actual del mundo en cada momento
objetivo # estado a alcanzar (nulo)
problema # formulación del problema a resolver

estado ← ACTUALIZAR-ESTADO(percepcion)
if solución.ESTA-VACIO() then
objetivo ← FORMULAR-OBJETIVO(estado)
problema ← FORMULAR-PROBLEMA(estado, objetivo)
solución ← BUSCAR-SOLUCION(problema)
if solucion = fallo then
return accion-nula
accion ← EXTRAER-PRIMERA-ACCION(solucion)
return accion
Definición de Problemas de búsqueda

-----
Definición de Problemas de Búsqueda
Estado Inicial

• Un problema puede ser definido formalmente por cinco


componentes:
1. Estado Inicial
2. Acciones
3. Modelo de Transición
4. El test-objetivo
5. El costo del camino
Definición de Problemas de Búsqueda
Ejemplo: Mundo de la aspiradora

• El mundo de la aspiradora con sólo dos cuadrículas.


• Se puede representar utilizando gráficos.
• Aunque para implementarlo, es mejor aprender
utilizando pares ordenados, o una matriz para
representar el estado.
Definición de Problemas de Búsqueda
Estado Inicial

• Estado que percibe el agente racional al comenzar a


solucionar el problema.
• problema.ESTADO-INICIAL → estado

• Ejemplo:

• Representar el estado:
– Se debe expresar en que cuadrante está la aspiradora.
– Además, se debe saber los cuadrantes que están sucios.
Definición de Problemas de Búsqueda
Acciones

• Descripción de las posibles acciones que puede realizar


(aplicar) el agente en cada estado (conjunto).
• problema.ACCIONES(estado) → acciones

• Ejemplo:
– Acción[1]: Left - ir a la izquierda
– Acción[2]: Right - ir a la derecha
– Acción[3]: Suck - aspirar
Definición de Problemas de Búsqueda
Modelo de Transiciones

• Descripción de lo que hace cada acción en cada estado,


siendo sucesor el nuevo estado resultante.
• También se le llama función Sucesor.
• problema.RESULTADO(estado, acción) → estado-sucesor

• Ejemplo:
• Resultado( , Right) ->
Definición de Problemas de Búsqueda
Función Objetivo

• Determina si un estado es un objetivo o no. Define el


conjunto de estados finales.
• También se le llama función Test.
• problema.ES-OBJETIVO(estado) → CIERTO/FALSO

• Ejemplo:
• Sólo estos dos estados devolverán Verdadero en la
función.
Definición de Problemas de Búsqueda
Función Costo del camino

• Asigna un costo a cada camino. Permite medir el


rendimiento.
• Normalmente, a cada acción se le asigna un costo
positivo, y el coste del camino será́ la suma de las que
componen el camino.

• problema.COSTO-ACCION(estado, accion) → costo


• problema.COSTO-CAMINO(estado) → costo

• Solución Optima: camino de costo mínimo.


• Si el problema no brinda mayor información, se debe
considerar que el costo-acción es 1.
Definición de Problemas de Búsqueda
Ejemplo: Puzzle de 8

• El puzzle de 8,
consiste en un
tablero 3 × 3 con
mosaicos y un
espacio en blanco.
• Un mosaico
adyacente al espacio
en blanco puede
deslizarse hacia el
espacio en blanco.
• El objetivo es
alcanzar un estado
objetivo especificado,
como el que se
muestra a la derecha
de la figura.
Definición de Problemas de Búsqueda
Ejemplo: Puzzle de 8

• Representar el estado

• Estado Inicial

• Acciones
Definición de Problemas de Búsqueda
Ejemplo: Puzzle de 8

• Modelo de Transición

• El test-objetivo

• El costo del camino


Espacio de estados

-----
Tipos de Problemas
Subtema

• Problemas de Juguete
– Ilustran y permite definir y probar algoritmos.
– Definición clara y concisa.
– Se usa para comparar el rendimiento de algoritmos.
– Incluso en los problemas de juguete, muchos algoritmos ya
son intratables.
• Problemas del Mundo Real
– Sus definiciones no son claras, y suelen ser muy complejos.
– Pero son los que la gente está interesada en solucionar.
Espacio de Estados
Definición

• Se compone de:
1. Estado Inicial
2. Acciones
3. Modelo de Transiciones
• Conjunto de estados alcanzables desde estado inicial.
• Se modeliza como un grafo dirigido, los enlaces son las
acciones y los caminos son secuencias de estados y
acciones.
Espacio de Estados
Grafico del Espacio de Estados

• Representación de un problema.
• Cada nodo es un estado y los enlaces son las acciones
realizadas.
• Los objetivos puede ser uno o más estados.
• Cada estado aparece una y sólo una única vez.
• Suele ser demasiado grande para construirlo completo.
• Puede ser infinito.
Espacio de Estados
Grafico del Espacio de Estados
Árbol de búsqueda

-----
Árbol de búsqueda
Subtema

• Los nodos son estados y las ramas, acciones.


• El nodo raíz es el estado inicial.
• Los caminos son secuencias de acciones.
• No se necesita expandir el árbol entero, sólo la parte
que permita alcanzar un solución.
• Los estados podrían repetirse.
Árbol de búsqueda
Estados Repetidos

• Nodos distintos que representan al mismo estado.


• Aunque el espacio de estados sea finito, provocan que el
árbol sea infinito.
• Aparecen cuando hay más de una manera de ir desde
un estado a otro (grafos).
Árbol de búsqueda
Estados Repetidos

• Lista Abierta (Frontera): lista de nodos hojas desde la


que se escogen los nodos a expandir. Separa el grafo en
nodos explorados y por explorar.
• Lista Cerrada (Explorada): conjunto de estados ya
explorados para evitar procesarlos de nuevo.
Árbol de búsqueda
Estados Repetidos
Infraestructura para Algoritmos de búsqueda

-----
Infraestructura
Nodo

• nodo.ESTADO → estado
• nodo.PADRE → nodo
• nodo.ACCION → acción
• nodo.ACCIONES → lista-acciones
• nodo.COSTO → costo-camino
• g(n): costo del camino.
Tratamiento de estados repetidos

-----
Búsqueda de Soluciones
Tree-Search

• Búsqueda árbol o Tree Search.


Búsqueda de Soluciones
Tree-Search

function BUSQUEDA-ARBOL(problema) return nodo o fallo


datos:
frontera # lista de nodos hoja (vacía)

frontera.AGREGAR(problema.ESTADO-INICIAL)
loop
if frontera.ESTA-VACIA() then
return fallo
nodo-hoja ← frontera.POP() # Según tipo

if problema.ES-OBJETIVO(nodo-hoja) then
return nodo-hoja
nodos ← nodo-hoja.EXPANDIR(problema)
frontera.AGREGAR(nodos)
Búsqueda de Soluciones
Graph-Search

• Búsqueda grafo o Graph Search.


Búsqueda de Soluciones
Graph-Search

function BUSQUEDA-GRAFO(problema) return nodo o fallo


datos:
frontera # lista de nodos hoja (vacia)
explorada # conjunto de estados ya explorados (vacio)

frontera.AGREGAR(problema.ESTADO-INICIAL)
loop
if frontera.ESTA-VACIA() then
return fallo
nodo-hoja ← frontera.POP() # Según tipo
if problema.ES-OBJETIVO(nodo-hoja) then
return nodo-hoja
explorada.AGREGAR(nodo-hoja.ESTADO)
nodos ← nodo-hoja.EXPANDIR(problema)
foreach nodo in nodos do
if (nodo.ESTADO not in frontera.ESTADOS() &&
nodo.ESTADO not in explorada) then
frontera.AGREGAR(nodo)
Preguntas…
Si, luego del estudio de este material, tienes dudas sobre
alguno de los temas, ingresa al Aula Virtual y participa en el
foro de dudas académicas de la unidad.
Continúa con las actividades
propuestas en la sesión.

Material producido para la Universidad Peruana de Ciencias Aplicadas


Autor:
COPYRIGHT ©UPC 2017 – Todos los derechos reservados

Das könnte Ihnen auch gefallen