“Conocimiento software>Copia de seguridad de datos

¿Qué es el retroceso?

2014/1/17
El retroceso es una técnica algorítmica general utilizada para resolver problemas de manera recursiva al tratar de construir una solución de forma incremental, una pieza a la vez. Si en algún momento el algoritmo determina que el enfoque actual no puede conducir a una solución válida (llega a un "callejón sin salida"), "retrocede":deshace el último paso o varios pasos e intenta un enfoque diferente. Este proceso continúa hasta que se encuentra una solución o se han explorado todas las posibilidades.

Piense en ello como explorar un laberinto:

* Empiezas en la entrada e intentas un camino.

* Si llegas a un callejón sin salida, vuelves al último cruce y prueba un camino diferente.

* Sigue haciendo esto hasta que encuentre la salida (solución) o haya explorado todas las rutas.

Características clave del retroceso:

* Recursivo: Los algoritmos de retroceso son inherentemente recursivos. Cada llamada recursiva explora una rama diferente del espacio de solución.

* prueba y error: Es un enfoque de prueba y error. Intenta varias opciones y descarta aquellas que no conducen a una solución.

* Exploración de espacio de estado: El algoritmo explora todo el espacio de estado (todas las soluciones posibles) sistemáticamente, a menudo utilizando una estructura similar a un árbol para representar la búsqueda.

* poda: Un aspecto crucial es la capacidad de podar (descartar) ramas del árbol de búsqueda temprano si se determina que no pueden conducir a una solución válida. Esto mejora significativamente la eficiencia.

Aplicaciones comunes de retroceso:

* Encontrar todas las permutaciones posibles de un conjunto: Generando todos los arreglos posibles de elementos.

* Resolver el problema N-Queens: Colocando n reinas de ajedrez en un tablero de ajedrez n × n para que no hay dos reinas amenazadas entre sí.

* Resolver rompecabezas de sudoku: Completar las celdas vacías de una cuadrícula de Sudoku de acuerdo con las reglas del juego.

* Generando todos los subconjuntos de un conjunto: Encontrar todas las combinaciones posibles de elementos de un conjunto.

* Algoritmos de traversal del gráfico (por ejemplo, búsqueda de profundidad primero): Explorando todos los caminos en un gráfico.

* Problemas de satisfacción de restricción: Problemas donde las soluciones deben satisfacer un conjunto de restricciones.

Ejemplo (Simplificado N-Ceaens):

Imagine colocar dos reinas en un tablero de ajedrez 2x2. Un algoritmo de retroceso:

1. Intenta colocar la primera reina en la esquina superior izquierda.

2. Intenta colocar la segunda reina en la esquina superior derecha. Esto no es válido (reinas se atacan entre sí).

3. Retroceder:retire a la segunda reina.

4. Intenta colocar la segunda reina en la esquina inferior izquierda. Esto no es válido.

5. retroceder:retire a la segunda reina.

6. retroceso:retire a la primera reina.

7. Intente colocar la primera reina en la esquina superior derecha ... y así sucesivamente hasta que se encuentre una solución (o falta de ella).

En esencia, el retroceso es una técnica potente pero potencialmente computacionalmente costosa para resolver problemas donde el espacio de la solución es grande y necesita explorarse sistemáticamente. La efectividad depende de cuán eficientemente el algoritmo puede podar el espacio de búsqueda.

Copia de seguridad de datos
Cómo hacer que los discos de copia de seguridad para Windows XP
¿Cómo puedo hacer una copia de seguridad de fotos en un DVD
Cómo hacer copia de seguridad y restaurar el correo de Apple
Cómo hacer copia de Quicken Deluxe 8 a una Memory Stick
Cómo controlar la batería de reserva
¿Cómo hacer copia de seguridad de un programa de reinstalación
Cómo eliminar una copia de seguridad del icono Norton
¿Cómo se importa un archivo de copia de seguridad de Tally para contar?
Conocimiento de la computadora © http://www.ordenador.online