• No se han encontrado resultados

Búsqueda de soluciones

N/A
N/A
Protected

Academic year: 2022

Share "Búsqueda de soluciones"

Copied!
19
0
0

Texto completo

(1)

Búsqueda de soluciones

• Diseño de sistemas de búsqueda de soluciones.

• Espacio de estados.

• Representación mediante espacio de estados.

• Algoritmos de búsqueda.

• Estrategias de búsqueda.

• Búsqueda forward.

• Búsqueda backward.

• Algoritmo Backtracking.

• Búsqueda en profundidad y anchura.

(2)

Diseño de sistemas de búsqueda de soluciones

Definir el problema en forma precisa:

♦ Nodo(s) inicial (es)

♦ Nodo(s) objetivo o solución.

Analizar el problema

♦ Identificar las reglas.

♦ Aislar y representar el conocimiento.

♦ Seleccionar la mejor técnica de búsqueda.

(3)

Espacio de estados

Es la representación de un problema que abarca todas las posibles situaciones que se pueden presentar en la solución del mismo.

Nodos: Describen situaciones particulares del problema.

Arcos: Representan los movimientos legales o reglas que rigen el espacio de estados; determinan si es posible pasar de un nodo a otro.

(4)

Representación mediante espacio de estados

♦ Interpretación del problema

♦ Descripción de los estados

♦ Definición de los operadores

♦ Definición del objetivo

(5)

Determinísticos: Sistemas Expertos

No determinísticos: Sistemas de lógica difusa

EE

Implícitos (Reglas que describen el problema)

Explícitos (Descripción completa del problema;

situación por situación)

Juegos

Determinísticos

No

Determinísticos

(6)

Ejemplo:

C A

B C

B A

ABC

A BC

B A C A

BC C

A B

B

AC C

AB

B C A C

B A

B

AC C

AB A

B C

A C B

(7)

Algoritmos de búsqueda

Su función es encontrar una trayectoria solución por medio del espacio de estados.

♦ Implementar EE con árboles o grafos.

♦ Utilizar un algoritmo que detecte ciclos para eliminarlas como posibles trayectorias.

♦ Solucionar el problema.

Ejemplos:

GATO ROMPECABEZAS

5

6 2

8

7 3

1 4

ÁRBOL GRAFO

(8)

Estrategias de búsqueda

¾

Dirección de búsqueda

Guiada por datos (forward)

Guiada por objetivos (backward)

¾

Orden de análisis de estados

Primero en profundidad

Primero en anchura

Búsqueda forward

Todos o la mayoría de los datos son proporcionados inicialmente

Existe un gran número de objetivos potenciales, pero las formas de combinar los hechos y la información es restringida

Es difícil establecer el objetivo desde el principio

(9)

Búsqueda Backward

El objetivo es proporcionado al formular el problema

Existe un gran número de reglas que cumplen con los hechos disponibles

Cuando los datos del problema no son proporcionados, pero deben ser determinados por el mecanismo solución

Algoritmo Backtracking

Búsqueda sistemática y exhaustiva que siempre asegura llegar a la solución.

Datos:

SL Lista de nodos en la trayectoria NSL Nodos en espera

DE Nodos cuyos descendientes fallaron en ser el objetivo

CS Estado actual en evaluación

(10)

Algoritmo Backtracking

INICIO

SL=NSL=CS=Estado inicial DE=[] (Sin elementos)

NSL≠[]

Termina

(No llega a la solución)

F

CS=Obj

Termina

(llega a la solución, recorrer SL)

V

V

CS tiene desc. fuera

de DE y de NSL

F -Agregar CS a DE

-Eliminar 1er. Nodo de SL y NSL

-CS=1er. Nodo de NSL (sin eliminarlo de NSL)

-Agregar CS a SL (si no está)

F

-Colocar los desc. de CS en NSL (excepto los de DE, SL y NSL) -CS=1er. Nodo de NSL(sin eliminarlo de NSL)

-Agregar CS a SL

V

(11)

Búsqueda en profundidad y anchura

Lista Abierta (A): Almacena los nodos en

espera de ser examinados

Lista Cerrada (C): Almacena los nodos ya examinados

• El orden en el cual se remueven los nodos o estados determina el orden de búsqueda

• Si A es una pila, entonces es búsqueda en profundidad

• Si A es una cola, entonces es búsqueda en anchura

(12)

Algoritmo de búsqueda en profundidad y anchura

INICIO

A=Estado inicial C=[] (Vacía)

A=[]

Eliminar el primer nodo de A (N)

N=Obj.

- Poner "N" en C

- Generar descen. de "N"

- Ubicar desc. en A (excepto los repetidos en A o C)

Falla la búsqueda

Termina la búsqueda con éxito (Colocar N en C y recorrer C)

V

F

V

F

(13)

Esquema de un programa de solución

11 9 4 15 1 3 * 12 7 5 8 6 13 2 10 14

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 * 1 2 3 4

5 6 7 8 9 10 11 12 13 14 15 *

INICIO

Y =

V

* * * *

V

Y =

Y ≠

Estrategia de

Solución

(14)

A=[]

Remover primer estado de A, (X)

X=Obj

Falla la búsqueda

Termina la búsqueda con éxito (Colocar X

en C y recorrer C)

V F

INICIO

A=Estado inicial C=[] (Vacía)

Si no está en A

o C

Asignar valor heurístico y agregar a A

Ya existe en A

Si es por trayectoria más corta: actualizar

Ya existe en C

Si es por trayectoria más corta: actualizar

y mover de la lista C a A

Colocar X en C

Reordenar los estados de A de acuerdo a sus

valores heurísticos (iniciando por el

mejor)

V

V

V

V F

F

F

Algoritmo Best-First

Para cada descendiente

de X

(15)

Ejemplo

Información (A 5 _ 0)

Estado actual Medida

heurística Nodo

antecesor Longitud desde el estado inicial

A5

C3

G3

M7

H5 I3

F7 E7

B6 D4

N7 O3 R2

L3

J4 K5 P2

Nodo inicial

Objetivo Resuelva este

ejercicio aplicando minimización (heurística menor)

(16)

Ejemplo

• Cuando el nodo alcanzado esta previamente almacenado en la lista C, no importa que sus nodos descendientes ya estén generados, solo se actualiza la mejor trayectoria.

A6

B4

C3

D1 E3

F5

H3 G2

(17)

Modificaciones al Proceso de Búsqueda

• Si un nuevo nodo generado ya está previamente almacenado en la lista A, no debe ser agregado nuevamente;

sin embargo, si la longitud asociada es menor, significa que se alcanzó el mismo estado por una mejor trayectoria, por lo que debe ser considerado.

A B

D F

H I

G

J

Nodo inicial

Nodo objetivo Mejor trayectoria

(18)

Modificaciones al Proceso de Búsqueda

• Si un nuevo nodo generado ya está previamente almacenado en la lista C, significa que se volvió a llegar a un estado que ya se había analizado. Sin embargo, si la trayectoria por la cual se volvió a alcanzar este estado es mejor, se debe considerar al formar la trayectoria solución, sin importar que sus nodos descendientes ya estén generados.

h Óptimo local

Óptimo global

(19)

experiencia o intuición, un algoritmo de búsqueda no puede asegurar encontrar una solución óptima o no llegar a la solución.

En general, un algoritmo de búsqueda heurística consta de ...

• Medida heurística

• Algoritmo que se desplaza por el EE en base a la medida heurística

Referencias

Documento similar

b) El Tribunal Constitucional se encuadra dentro de una organiza- ción jurídico constitucional que asume la supremacía de los dere- chos fundamentales y que reconoce la separación

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

quiero también a Liseo porque en mi alma hay lugar para amar a cuantos veo... tiene mi gusto sujeto, 320 sin que pueda la razón,.. ni mande

Pero la realidad se impone por encima de todo; la misma Isidora es consciente del cambio: «Yo misma conozco que soy otra, porque cuando perdí la idea que me hacía ser señora, me

L ’ ENSEMBLE S ’ EST FAIT CONNAÎTRE À TRAVERS LA REDÉCOUVERTE D ’ OEUVRES INÉDITES ISSUES , POUR LA PLUPART , DE LA MUSIQUE SICILIENNE TELLES QUE IL DILUVIO UNIVERSALE ET

Respecto a las enfermedades profesionales, en virtud del RD 1299/2006, de 10 de noviembre, por el que se aprueba el cuadro de enfermedades profesionales en el sistema de

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados

A partir de los resultados de este análisis en los que la entrevistadora es la protagonista frente a los entrevistados, la información política veraz, que se supone que