SlideShare una empresa de Scribd logo
1 de 8
VUELTA ATRÁS (BACKTRACKING)
Por: Eduardo Paz
BACKTRACKING
• Supongamos que tienes que tomar una serie de decisiones,
entre varias opciones, donde no cuentas con la suficiente
información para saber qué elegir. Cada decisión conduce a
un nuevo conjunto de opciones, algunas secuencia de
elecciones (posiblemente más de una) puede ser una solución
al problema
• Backtracking es una forma metódica de probar varias
secuencias de decisiones, hasta encontrar la correcta que
"funciona".
BACKTRACKING
• Backtracking se utiliza para resolver problemas en los que se
elige una secuencia de objetos a partir de un conjunto
específico de modo que la secuencia satisface cierto criterio.
• Backtracking es una búsqueda en profundidad modificada de
un árbol.
• Es el procedimiento por el cual, después de determinar que
un nodo puede conducir a otra cosa que los nodos muertos,
volvemos ("dar marcha atrás") a los padres del nodo y
procedemos a la búsqueda en el siguiente hijo.
ALGORITMO
• Basado en la búsqueda de profundidad recursiva.
• ¿Como empezamos?
1. Comprueba si se ha encontrado una solución.
2. Si se encuentra una solución, retornarla.
3. Si no en cada elección que se pueda hacer:
• Haz la elección.
• Vuelve atrás.
• Si la recursividad devuelve una solución, retornarla
4. Si no hay mas opciones, retorna que no hay solución.
• Algunas veces es llamado "árbol de búsqueda"
EJEMPLOS
• Podemos encontrar el uso de backtracking en
estos retos:
– Resolver un laberinto.
– Colorear un mapa.
– La solución de un rompecabezas.
– problema de las N reinas.
EJEMPLO
• En este ejemplo
podemos ver la
secuencia que sigue
el algoritmo para
dar una solución a
un problema.
EJEMPLO
• En esta pieza de código
podemos ver que
secuencia de ordenes usa
para lograr dar una
respuesta correcta.
Vuelta atrás (backtraking)

Más contenido relacionado

Destacado

Destacado (9)

Busqueda por backtracking
Busqueda por backtrackingBusqueda por backtracking
Busqueda por backtracking
 
Esquema algorítmico del backtracking
Esquema algorítmico del  backtrackingEsquema algorítmico del  backtracking
Esquema algorítmico del backtracking
 
Algoritmo de backtraking
Algoritmo de backtrakingAlgoritmo de backtraking
Algoritmo de backtraking
 
Backtracking
BacktrackingBacktracking
Backtracking
 
Vuelta Atras
Vuelta AtrasVuelta Atras
Vuelta Atras
 
Vuelta atrás o (backtracking)
Vuelta atrás o (backtracking)Vuelta atrás o (backtracking)
Vuelta atrás o (backtracking)
 
Algoritmo De Dijkstra
Algoritmo De DijkstraAlgoritmo De Dijkstra
Algoritmo De Dijkstra
 
Algoritmo de Dijkstra
Algoritmo de DijkstraAlgoritmo de Dijkstra
Algoritmo de Dijkstra
 
Algoritmo de Dijkstra
Algoritmo de DijkstraAlgoritmo de Dijkstra
Algoritmo de Dijkstra
 

Similar a Vuelta atrás (backtraking)

Tipos de búsqueda en campos de estados
Tipos de búsqueda en campos de estadosTipos de búsqueda en campos de estados
Tipos de búsqueda en campos de estadosFryzi
 
Criterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificialCriterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificialFélix Alvarado
 
Metodos de busqueda en I.A
Metodos de busqueda en I.AMetodos de busqueda en I.A
Metodos de busqueda en I.AJosemqc
 
TIPOS DE BUSQUEDA
TIPOS DE BUSQUEDA TIPOS DE BUSQUEDA
TIPOS DE BUSQUEDA torvicanny
 
Criterios de Búsqueda en Inteligencia Artificial
Criterios de Búsqueda en Inteligencia ArtificialCriterios de Búsqueda en Inteligencia Artificial
Criterios de Búsqueda en Inteligencia ArtificialHilario Per'zz
 
Tipos de busqueda
Tipos de busquedaTipos de busqueda
Tipos de busquedaMarcos Ca
 
Búsqueda inteligencia artificial
Búsqueda inteligencia artificialBúsqueda inteligencia artificial
Búsqueda inteligencia artificialAlexis Pilco
 
Luis Hernández-Cuadro Comparativo-I.pdf
Luis Hernández-Cuadro Comparativo-I.pdfLuis Hernández-Cuadro Comparativo-I.pdf
Luis Hernández-Cuadro Comparativo-I.pdfLuis12876
 
Trabajo colaborativo Grupo 33 - Diapositivas
Trabajo colaborativo Grupo 33 - DiapositivasTrabajo colaborativo Grupo 33 - Diapositivas
Trabajo colaborativo Grupo 33 - DiapositivasCACG1974
 
Diapositivas "Inteligencia artificial" - Grupo Colaborativo 90169-33 UNAD
Diapositivas "Inteligencia artificial" - Grupo Colaborativo 90169-33 UNADDiapositivas "Inteligencia artificial" - Grupo Colaborativo 90169-33 UNAD
Diapositivas "Inteligencia artificial" - Grupo Colaborativo 90169-33 UNADCACG1974
 
Tipos de busqueda redes semanticcas
Tipos de busqueda redes semanticcasTipos de busqueda redes semanticcas
Tipos de busqueda redes semanticcasJenyfer Utitiaja
 
Tipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia ArtificialTipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia ArtificialAlan López
 
Eliannys inteligencia
Eliannys inteligenciaEliannys inteligencia
Eliannys inteligenciaelypp11
 
TÉCNICAS DE BÚSQUEDA(1).ppt
TÉCNICAS DE BÚSQUEDA(1).pptTÉCNICAS DE BÚSQUEDA(1).ppt
TÉCNICAS DE BÚSQUEDA(1).pptalejandrina36
 

Similar a Vuelta atrás (backtraking) (20)

Tipos de búsqueda en campos de estados
Tipos de búsqueda en campos de estadosTipos de búsqueda en campos de estados
Tipos de búsqueda en campos de estados
 
Metodo heuristico metodo ciego
Metodo heuristico   metodo ciegoMetodo heuristico   metodo ciego
Metodo heuristico metodo ciego
 
Criterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificialCriterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificial
 
Metodos de busqueda en I.A
Metodos de busqueda en I.AMetodos de busqueda en I.A
Metodos de busqueda en I.A
 
TIPOS DE BUSQUEDA
TIPOS DE BUSQUEDA TIPOS DE BUSQUEDA
TIPOS DE BUSQUEDA
 
Victor1
Victor1Victor1
Victor1
 
Criterios de Búsqueda en Inteligencia Artificial
Criterios de Búsqueda en Inteligencia ArtificialCriterios de Búsqueda en Inteligencia Artificial
Criterios de Búsqueda en Inteligencia Artificial
 
Tipos de busqueda
Tipos de busquedaTipos de busqueda
Tipos de busqueda
 
Búsqueda inteligencia artificial
Búsqueda inteligencia artificialBúsqueda inteligencia artificial
Búsqueda inteligencia artificial
 
Backtracking
BacktrackingBacktracking
Backtracking
 
Luis Hernández-Cuadro Comparativo-I.pdf
Luis Hernández-Cuadro Comparativo-I.pdfLuis Hernández-Cuadro Comparativo-I.pdf
Luis Hernández-Cuadro Comparativo-I.pdf
 
Trabajo colaborativo Grupo 33 - Diapositivas
Trabajo colaborativo Grupo 33 - DiapositivasTrabajo colaborativo Grupo 33 - Diapositivas
Trabajo colaborativo Grupo 33 - Diapositivas
 
Diapositivas "Inteligencia artificial" - Grupo Colaborativo 90169-33 UNAD
Diapositivas "Inteligencia artificial" - Grupo Colaborativo 90169-33 UNADDiapositivas "Inteligencia artificial" - Grupo Colaborativo 90169-33 UNAD
Diapositivas "Inteligencia artificial" - Grupo Colaborativo 90169-33 UNAD
 
Diego
DiegoDiego
Diego
 
Tipos de busqueda redes semanticcas
Tipos de busqueda redes semanticcasTipos de busqueda redes semanticcas
Tipos de busqueda redes semanticcas
 
Método científico
Método científicoMétodo científico
Método científico
 
Tipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia ArtificialTipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia Artificial
 
U4_Busqueda.pdf
U4_Busqueda.pdfU4_Busqueda.pdf
U4_Busqueda.pdf
 
Eliannys inteligencia
Eliannys inteligenciaEliannys inteligencia
Eliannys inteligencia
 
TÉCNICAS DE BÚSQUEDA(1).ppt
TÉCNICAS DE BÚSQUEDA(1).pptTÉCNICAS DE BÚSQUEDA(1).ppt
TÉCNICAS DE BÚSQUEDA(1).ppt
 

Último

EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 

Último (11)

EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 

Vuelta atrás (backtraking)

  • 2. BACKTRACKING • Supongamos que tienes que tomar una serie de decisiones, entre varias opciones, donde no cuentas con la suficiente información para saber qué elegir. Cada decisión conduce a un nuevo conjunto de opciones, algunas secuencia de elecciones (posiblemente más de una) puede ser una solución al problema • Backtracking es una forma metódica de probar varias secuencias de decisiones, hasta encontrar la correcta que "funciona".
  • 3. BACKTRACKING • Backtracking se utiliza para resolver problemas en los que se elige una secuencia de objetos a partir de un conjunto específico de modo que la secuencia satisface cierto criterio. • Backtracking es una búsqueda en profundidad modificada de un árbol. • Es el procedimiento por el cual, después de determinar que un nodo puede conducir a otra cosa que los nodos muertos, volvemos ("dar marcha atrás") a los padres del nodo y procedemos a la búsqueda en el siguiente hijo.
  • 4. ALGORITMO • Basado en la búsqueda de profundidad recursiva. • ¿Como empezamos? 1. Comprueba si se ha encontrado una solución. 2. Si se encuentra una solución, retornarla. 3. Si no en cada elección que se pueda hacer: • Haz la elección. • Vuelve atrás. • Si la recursividad devuelve una solución, retornarla 4. Si no hay mas opciones, retorna que no hay solución. • Algunas veces es llamado "árbol de búsqueda"
  • 5. EJEMPLOS • Podemos encontrar el uso de backtracking en estos retos: – Resolver un laberinto. – Colorear un mapa. – La solución de un rompecabezas. – problema de las N reinas.
  • 6. EJEMPLO • En este ejemplo podemos ver la secuencia que sigue el algoritmo para dar una solución a un problema.
  • 7. EJEMPLO • En esta pieza de código podemos ver que secuencia de ordenes usa para lograr dar una respuesta correcta.