“Conocimiento software>Copia de seguridad de datos

¿Cómo funciona el algoritmo de retroceso para explorar eficientemente todas las soluciones posibles en un espacio de búsqueda?

2014/4/21
El algoritmo de retroceso explora eficientemente un espacio de búsqueda al probar sistemáticamente diferentes combinaciones y abandonar rutas que están garantizadas para no conducir a una solución. Funciona en el principio de * búsqueda de profundidad * con una adición crucial: poda .

Aquí hay un desglose de cómo funciona:

1. Representación del espacio de estado: El problema se representa como un árbol o gráfico donde cada nodo representa una solución parcial. El nodo raíz representa el estado inicial, y las ramas representan opciones o decisiones tomadas en cada paso. Las hojas representan soluciones completas o callejones sin salida.

2. Exploración recursiva (búsqueda de profundidad primero): El algoritmo comienza en el nodo raíz y explora una rama a la vez, yendo lo más profunda posible (profundidad primero). Esto significa que toma una serie de opciones hasta que encuentre una solución o llega a un callejón sin salida.

3. Comprobación de restricción/prometedor: En cada nodo, se realiza una verificación para ver si la solución parcial actual sigue siendo "prometedora", lo que significa que es posible extenderla a una solución completa. Aquí es donde entra la eficiencia. Si la solución parcial actual viola las limitaciones del problema (por ejemplo, en un rompecabezas de sudoku, colocando un número que ya está en la fila, columna o bloque 3x3), el algoritmo sabe que no necesita explorar esa rama aún más. Esta es la poda paso.

4. retroceso: Si un nodo se considera no prometedor, o si un nodo de hoja representa un intento fallido de encontrar una solución, el algoritmo "retrocede" al nodo anterior (su padre) e intenta una rama diferente (una opción diferente). Esto implica deshacer las opciones tomadas a lo largo de esa rama y explorar posibilidades alternativas.

5. Solución encontrada: Cuando un nodo de hoja representa una solución completa y válida, el algoritmo ha encontrado una solución y puede detenerse (si encontrar una solución es suficiente) o continuar buscando otras soluciones retrocediendo y explorando otras ramas.

Ejemplo:Problema de N-Queens

Consideremos colocar n reinas de ajedrez en un tablero de ajedrez N × N de modo que no hay dos reinas amenazadas entre sí.

* espacio de estado: Cada nodo en el árbol representa una colocación parcial de reinas en el tablero.

* elección: En cada nivel del árbol, se hace una elección sobre dónde colocar a la próxima reina en la columna.

* restricción: La restricción es que no hay dos reinas en la misma fila, columna o diagonal.

* poda: Si colocar una reina viola la restricción, esa rama está podada. El algoritmo no explora más abajo en esa rama.

* retroceso: Si una colocación conduce a una violación, el algoritmo retrocede a la columna anterior, elimina a la reina e intenta una posición diferente en esa columna.

En resumen: La eficiencia de retroceso se deriva de su capacidad para evitar explorar porciones innecesarias del espacio de búsqueda al podar de manera inteligente las ramas que están garantizadas para no conducir a una solución. Esto reduce significativamente el tiempo de cálculo en comparación con los métodos de búsqueda exhaustivos que intentarían cada combinación. La efectividad depende de qué tan bien la verificación "prometedora" está diseñada para identificar y eliminar las rutas no viables al principio de la búsqueda.

Copia de seguridad de datos
Cómo tomar el control de copias de seguridad en Tigre
Compaq Presario no se apaga y mantiene partir Back Up
Cómo hacer copia de seguridad de datos en un Sony Vaio
Cómo hacer copia de seguridad de Microsoft Outlook
Cómo solucionar problemas de errores de copia de seguridad en Vista
Cómo hacer copia de seguridad de iTunes en un disco duro
Opciones de copia de seguridad del disco duro
¿Qué es la recuperación de datos de la computadora?
Conocimiento de la computadora © http://www.ordenador.online