Búsqueda por profundidad iterativa
Definición
Definición El nombre profundización iterativa hace referencia a que se realiza iteraciones de búsquedas cada vez mas profunda. Esto se hace aumentando gradualmente el limite realizando la búsqueda en sucesivos niveles.
Funcionamiento
Funcionamiento Se define una profundidad predefinida Se desarrolla el árbol realizando una búsqueda en profundidad hasta el límite definido en el punto anterior Si encuentra la solución termina En caso contrario, se establece un nuevo límite y volvemos al segundo paso.
Funcionamiento Búsqueda iterada en profundidad l =0
Funcionamiento Búsqueda iterada en profundidad l =1
Funcionamiento Búsqueda iterada en profundidad l =2
Funcionamiento Búsqueda iterada en profundidad l =3
Ventajas y Desventajas
Ventajas y desventajas El requerimiento limitado de memoria. La uniformidad al expandir los nodos, que garantiza encontrar la mejor solución de un problema de costo uniforme antes que ninguna. El inconveniente puede ser la redundancia de que se vuelve a inspeccionar cada nodo ya comprobado con cada nueva iteración.
Recorrido completo
Recorrido completo 0: A 1: A (repetido), B, C, E 2: A, B, D, F, C, G, E, F 3: A, B, D, F, E, C, G, E, F, B
Recorrido completo Para este grafo, cuanta más profundidad se añade, los ciclos "ABFE" y "AEFB" simplemente se alargan antes de que el algoritmo abandone e intente otra rama. Puede recorrer varias veces al mismo nodo siempre en cuando no sea la solución
Uso de memoria Por lo tanto solo guarda la ruta donde se encuentra actualmente el nodo a evaluar.
Pseudocodigo
Estrategia
Estrategia Las estrategias se evalúan de acuerdo a: Completitud: ¿Siempre encuentra una solución si alguna existe? Complejidad temporal: Número de nodos generados Complejidad espacial: Número máximo de nodos en memoria Optimalidad: ¿Siempre encuentra una solución de mínimo costo? Complejidad de tiempo y espacio se mide en termino de b: Máximo factor del número de ramas del árbol de búsqueda d: Profundidad de solución de mínimo costo m: Profundidad máxima del espacio de estados (puede ser ∞) Las estrategias se evalúan de acuerdo a: Completitud: ¿Siempre encuentra una solución si alguna existe? Complejidad temporal: Número de nodos generados Complejidad espacial: Número máximo de nodos en memoria Optimalidad: ¿Siempre encuentra una solución de mínimo costo? Complejidad de tiempo y espacio se mide en termino de b: Máximo factor del número de ramas del árbol de búsqueda d: Profundidad de solución de mínimo costo m: Profundidad máxima del espacio de estados (puede ser ∞) Criterio Completo Si Tiempo (d+1)b0 + d b1 + (d-1)b2 + … + bd = O(bd) Espacio O(bd) Optimo Si, si costo de paso =1
Donde se aplican
Aplicaciones Se dice que este método es funcional en escenarios donde existen profundidad media y alta Las estrategias se evalúan de acuerdo a: Completitud: ¿Siempre encuentra una solución si alguna existe? Complejidad temporal: Número de nodos generados Complejidad espacial: Número máximo de nodos en memoria Optimalidad: ¿Siempre encuentra una solución de mínimo costo? Complejidad de tiempo y espacio se mide en termino de b: Máximo factor del número de ramas del árbol de búsqueda d: Profundidad de solución de mínimo costo m: Profundidad máxima del espacio de estados (puede ser ∞)
Comparación //Equipo 5/ Las estrategias se evalúan de acuerdo a: Completitud: ¿Siempre encuentra una solución si alguna existe? Complejidad temporal: Número de nodos generados Complejidad espacial: Número máximo de nodos en memoria Optimalidad: ¿Siempre encuentra una solución de mínimo costo? Complejidad de tiempo y espacio se mide en termino de b: Máximo factor del número de ramas del árbol de búsqueda d: Profundidad de solución de mínimo costo m: Profundidad máxima del espacio de estados (puede ser ∞) //Equipo 5/
Comparación Si queremos llegar de Salina Cruz a Ciudad Reynosa, y para simplificar el problema, suponemos que no hay pérdida de tiempo entre trasbordo y trasbordo. Las estrategias se evalúan de acuerdo a: Completitud: ¿Siempre encuentra una solución si alguna existe? Complejidad temporal: Número de nodos generados Complejidad espacial: Número máximo de nodos en memoria Optimalidad: ¿Siempre encuentra una solución de mínimo costo? Complejidad de tiempo y espacio se mide en termino de b: Máximo factor del número de ramas del árbol de búsqueda d: Profundidad de solución de mínimo costo m: Profundidad máxima del espacio de estados (puede ser ∞)
Búsqueda por profundidad Búsqueda iterativa por profundidad Comparación Búsqueda por profundidad Búsqueda iterativa por profundidad Las estrategias se evalúan de acuerdo a: Completitud: ¿Siempre encuentra una solución si alguna existe? Complejidad temporal: Número de nodos generados Complejidad espacial: Número máximo de nodos en memoria Optimalidad: ¿Siempre encuentra una solución de mínimo costo? Complejidad de tiempo y espacio se mide en termino de b: Máximo factor del número de ramas del árbol de búsqueda d: Profundidad de solución de mínimo costo m: Profundidad máxima del espacio de estados (puede ser ∞)
Comparación
EJEMPLO
Gracias : )