SlideShare una empresa de Scribd logo
1 de 12
Autor: Daniela A. Mendoza R.
C.I: 28.528.546.
Cabudare; Marzo 2021
UNIVERSIDAD FERMIN TORO
VICE-RECTORADO ACADÉMICO
FACULTAD DE INGENIERÍA
ESCUELA DE INGENIERIA EN COMPUTACIÓN
Vuelta atrás", (Backtracking) es una estrategia para encontrar soluciones a
problemas que satisfacen restricciones. El término "backtrack" fue acuñado
por primera vez por el matemático estadounidense D. H. Lehmer en los años
1950s.
En su forma básica, la idea de backtracking se asemeja a un recorrido en
profundidad dentro de un grafo dirigido. El grafo en cuestión suele ser un árbol,
o por lo menos no contiene ciclos. Sea cual sea su estructura, existe sólo
implícitamente. El objetivo del recorrido es encontrar soluciones para algún
problema. Esto se consigue construyendo soluciones parciales a medida que
progresa el recorrido; estas soluciones parciales limitan las regiones en las que
se puede encontrar una solución completa. El recorrido tiene éxito si,
procediendo de esta forma, se puede definir por completo una solución. En
este caso el algoritmo puede bien detenerse (si lo único que se necesita es una
solución del problema) o bien seguir buscando soluciones alternativas (si
deseamos examinarlas todas). Por otra parte, el recorrido no tiene éxito si en
alguna etapa la solución parcial construida hasta el momento no se puede
completar. En tal caso, el recorrido vuelve atrás exactamente igual que en un
recorrido en profundidad, eliminando sobre la marcha los elementos que se
hubieran añadido en cada fase. Cuando vuelve a un nodo que tiene uno o más
vecinos sin explorar, prosigue el recorrido de una solución
Podemos visualizar el funcionamiento de una técnica de backtracking como la
exploración en profundidad de un grafo.
Cada vértice del grafo es un posible estado de la solución del problema. Cada arco
del grafo representa la transición entre dos estados de la solución (i.e., la toma de
una decisión).
Típicamente el tamaño de este grafo será inmenso, por lo que no existirá de
manera explícita. En cada momento sólo tenemos en una estructura los nodos que
van desde el estado inicial al estado actual. Si cada secuencia de decisiones
distinta da lugar a un estado diferente, el grafo es un árbol (el árbol de estados).
Los problemas que deben satisfacer un determinado tipo de restricciones son
problemas completos, donde el orden de los elementos de la solución no
importa. Estos problemas consisten en un conjunto (o lista) de variables a la
que a cada una se le debe asignar un valor sujeto a las restricciones del
problema. La técnica va creando todas las posibles combinaciones de
elementos para obtener una solución. Su principal virtud es que en la mayoría
de las implementaciones se puede evitar combinaciones, estableciendo
funciones de acotación (o poda) reduciendo el tiempo de ejecución.
Vuelta atrás está muy relacionado con la búsqueda combinatoria.
Esencialmente, la idea es encontrar la mejor combinación posible en un
momento determinado, por eso, se dice que este tipo de algoritmo es
una Búsqueda en profundidad. Durante la búsqueda, si se encuentra una
alternativa incorrecta, la búsqueda retrocede hasta el paso anterior y toma la
siguiente alternativa. Cuando se han terminado las posibilidades, se vuelve a la
elección anterior y se toma la siguiente opción (hijo [si nos referimos a un
árbol]). Si no hay más alternativas la búsqueda falla. De esta manera, se crea
un árbol implícito, en el que cada nodo es un estado de la solución (solución
parcial en el caso de nodos interiores o solución total en el caso de los nodos
hoja).
Normalmente, se suele implementar este tipo de algoritmos como un
procedimiento recursivo. Así, en cada llamada al procedimiento se toma una
variable y se le asignan todos los valores posibles, llamando a su vez al
procedimiento para cada uno de los nuevos estados. La diferencia con
la Búsqueda en profundidad es que se suelen diseñar funciones de cota, de
forma que no se generen algunos estados si no van a conducir a ninguna
solución, o a una solución peor de la que ya se tiene. De esta forma se ahorra
espacio en memoria y tiempo de ejecución
Algunas heurísticas son comúnmente usadas para acelerar el proceso. Como las variables
se pueden procesar en cualquier orden, generalmente es más eficiente intentar ser lo más
restrictivo posible con las primeras (esto es, las primeras con menores valores posibles). Este
proceso poda el árbol de búsqueda antes de que se tome la decisión y se llame a la
subrutina recursiva.
Cuando se elige qué valor se va a asignar, muchas implementaciones hacen un examen
hacia delante (FC, Forward Checking), para ver qué valor restringirá el menor número posible
de valores, de forma que se anticipa en a) preservar una posible solución y b) hace que la
solución encontrada no tenga restricciones destacadas.
Algunas implementaciones muy sofisticadas usan una función de cotas, que examina si es
posible encontrar una solución a partir de una solución parcial. Además, se comprueba si la
solución parcial que falla puede incrementar significativamente la eficiencia del algoritmo. Por
el uso de estas funciones de cota, se debe ser muy minucioso en su implementación de
forma que sean poco costosas computacionalmente hablando, ya que lo más normal es que
se ejecuten en para cada nodo o paso del algoritmo. Cabe destacar, que las cotas eficaces
se crean de forma parecida a las funciones Heurísticas, esto es, relajando las restricciones
para conseguir mayor eficiencia.
Con el objetivo de mantener la solución actual con coste mínimo, los algoritmos vuelta atrás
mantienen el coste de la mejor solución en una variable que va variando con cada nueva
mejor solución encontrada. Así, si una solución es peor que la que se acaba de encontrar, el
algoritmo no actualizará la solución. De esta forma, devolverá siempre la mejor solución que
haya encontrado.
Ejemplos típicos en los que se puede aplicar este método son los laberintos, el Sudoku (para
uno normal de 9x9, entre 15.000 y 90.000 ciclos) o en ajedrez el problema del recorrido del
caballo o el de las ocho damas. En terrenos más prácticos el problema de la mochila es uno
de los ejemplos más clásicos: optimizar qué objetos meter que maximicen la ocupación de un
espacio de una forma determinada (quizá lo hayas experimentado en el maletero del coche
en los Tetris 3D de las vacaciones.)
El rompecabezas de madera de la imagen –uno de los muchos puzles de madera chinos sin
nombre, similar al de los pentominós 2D– inspiró a Lacono a crear un programa para resolver
llamado GoShapesPuzzle [en Github] usando el lenguaje Go (y gotk3), tal y como está
explicado y en el código del que se puede aprender.
El problema de la enumeración consiste en encontrar todas las soluciones del problema, es
por ello que tendremos que recorrer el árbol de estados al completo.
Problema de las N Reinas
Disponemos de un tablero de ajedrez de tamaño NxN, y se trata de colocar en él N reinas de
manera que no se amenacen según las normas del ajedrez.
Problema de las N Reinas
Disponemos de un tablero de ajedrez de tamaño NxN, y se trata de colocar en él N reinas de
manera que no se amenacen según las normas del ajedrez.
Este método busca una solución como en el método de backtracking, pero cada
solución tiene asociado un costo y la solución que se busca es una de mínimo
costo llamada óptima. Además de ramificar una solución padre (branch) en hijos
se trata de eliminar de consideración aquellos hijos cuyos descendientes tienen
un costo que supera al óptimo buscado acotando el costo de los descendientes
del hijo (bound). La forma de acotar es un arte que depende de cada problema.
La acotacion reduce el tiempo de búsqueda de la solución óptima al "podar"
(pruning) los subarboles de descendientes costosos.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Vuelta atrás o (backtracking)
Vuelta atrás o (backtracking)Vuelta atrás o (backtracking)
Vuelta atrás o (backtracking)
 
Recursividad
RecursividadRecursividad
Recursividad
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 
Problema de la ocho reinas. Implementación en Prolog.
Problema de la ocho reinas. Implementación en Prolog.Problema de la ocho reinas. Implementación en Prolog.
Problema de la ocho reinas. Implementación en Prolog.
 
2. Recursividad
2. Recursividad2. Recursividad
2. Recursividad
 
Teoría de complejidad computacional (tcc).pptx
Teoría de complejidad computacional (tcc).pptxTeoría de complejidad computacional (tcc).pptx
Teoría de complejidad computacional (tcc).pptx
 
Ejercicio
EjercicioEjercicio
Ejercicio
 
Oviedo control final
Oviedo control finalOviedo control final
Oviedo control final
 
Metodos de optimizacion
Metodos de optimizacionMetodos de optimizacion
Metodos de optimizacion
 
Recursividad
RecursividadRecursividad
Recursividad
 
Lagrange y kunh tucker
Lagrange y kunh tuckerLagrange y kunh tucker
Lagrange y kunh tucker
 
Unidad 3. Programación dinámica
Unidad 3. Programación dinámicaUnidad 3. Programación dinámica
Unidad 3. Programación dinámica
 
Pro no num Prog dinamica
Pro no num Prog dinamicaPro no num Prog dinamica
Pro no num Prog dinamica
 
Enfoques
EnfoquesEnfoques
Enfoques
 
Ior
IorIor
Ior
 
Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
Sistemas inteligentes
Sistemas inteligentesSistemas inteligentes
Sistemas inteligentes
 
La Torre de Hanoi Monografía vanessa mayo 2010
La Torre de Hanoi  Monografía  vanessa mayo 2010La Torre de Hanoi  Monografía  vanessa mayo 2010
La Torre de Hanoi Monografía vanessa mayo 2010
 
Las torres de hanoi
Las torres de hanoiLas torres de hanoi
Las torres de hanoi
 
complejidad computacional
complejidad computacionalcomplejidad computacional
complejidad computacional
 

Similar a Daniela mendozaestructuradedatosii

Slideshare nelson rodriguez
Slideshare nelson rodriguezSlideshare nelson rodriguez
Slideshare nelson rodrigueznelro038
 
clase1_TecDiseño_2021.ppsx
clase1_TecDiseño_2021.ppsxclase1_TecDiseño_2021.ppsx
clase1_TecDiseño_2021.ppsxCesarR26
 
PROGRAMACION DINAMICA
PROGRAMACION DINAMICAPROGRAMACION DINAMICA
PROGRAMACION DINAMICAJOSEPHBADRA3
 
Esquema algorítmico del backtracking
Esquema algorítmico del  backtrackingEsquema algorítmico del  backtracking
Esquema algorítmico del backtrackingWilmer Quintero
 
Las torres de hanoi
Las torres de hanoiLas torres de hanoi
Las torres de hanoiFidel Rivero
 
Diapositiva prog no numerica 2 algoritmo voraces
Diapositiva prog no numerica 2 algoritmo voracesDiapositiva prog no numerica 2 algoritmo voraces
Diapositiva prog no numerica 2 algoritmo voracesAriannys Romero Parra
 
Panorámica de los procedimientos metaheurísticos - Prof. Abraham Duarte Muñoz
Panorámica de los procedimientos metaheurísticos - Prof. Abraham Duarte MuñozPanorámica de los procedimientos metaheurísticos - Prof. Abraham Duarte Muñoz
Panorámica de los procedimientos metaheurísticos - Prof. Abraham Duarte MuñozFacultad de Informática UCM
 
Complejidad Computacional o Algoritmica
Complejidad Computacional o AlgoritmicaComplejidad Computacional o Algoritmica
Complejidad Computacional o AlgoritmicaMarko ZP
 
Busquedas (ia)
Busquedas (ia)Busquedas (ia)
Busquedas (ia)Yamnibel
 
Kuhn Tucker y Lagrange
Kuhn Tucker y LagrangeKuhn Tucker y Lagrange
Kuhn Tucker y LagrangeRenier007
 
Teoria de Optimizacion
Teoria de  OptimizacionTeoria de  Optimizacion
Teoria de Optimizacionrebeca ferrer
 
Torres de hanói melany rojas
Torres de hanói melany rojasTorres de hanói melany rojas
Torres de hanói melany rojasMelany Rojas
 
Lastorresdehanoi
LastorresdehanoiLastorresdehanoi
Lastorresdehanoibetcyr
 

Similar a Daniela mendozaestructuradedatosii (20)

Slideshare nelson rodriguez
Slideshare nelson rodriguezSlideshare nelson rodriguez
Slideshare nelson rodriguez
 
clase1_TecDiseño_2021.ppsx
clase1_TecDiseño_2021.ppsxclase1_TecDiseño_2021.ppsx
clase1_TecDiseño_2021.ppsx
 
Backtracking
BacktrackingBacktracking
Backtracking
 
PROGRAMACION DINAMICA
PROGRAMACION DINAMICAPROGRAMACION DINAMICA
PROGRAMACION DINAMICA
 
Esquema algorítmico del backtracking
Esquema algorítmico del  backtrackingEsquema algorítmico del  backtracking
Esquema algorítmico del backtracking
 
Las torres de hanoi
Las torres de hanoiLas torres de hanoi
Las torres de hanoi
 
Diapositiva prog no numerica 2 algoritmo voraces
Diapositiva prog no numerica 2 algoritmo voracesDiapositiva prog no numerica 2 algoritmo voraces
Diapositiva prog no numerica 2 algoritmo voraces
 
Torre de hanoi
Torre de hanoiTorre de hanoi
Torre de hanoi
 
Torre de hanoi
Torre de hanoiTorre de hanoi
Torre de hanoi
 
Backtracking
BacktrackingBacktracking
Backtracking
 
Panorámica de los procedimientos metaheurísticos - Prof. Abraham Duarte Muñoz
Panorámica de los procedimientos metaheurísticos - Prof. Abraham Duarte MuñozPanorámica de los procedimientos metaheurísticos - Prof. Abraham Duarte Muñoz
Panorámica de los procedimientos metaheurísticos - Prof. Abraham Duarte Muñoz
 
Optimizacion Diusty Mijares
Optimizacion Diusty MijaresOptimizacion Diusty Mijares
Optimizacion Diusty Mijares
 
Complejidad Computacional o Algoritmica
Complejidad Computacional o AlgoritmicaComplejidad Computacional o Algoritmica
Complejidad Computacional o Algoritmica
 
Busquedas (ia)
Busquedas (ia)Busquedas (ia)
Busquedas (ia)
 
Kuhn Tucker y Lagrange
Kuhn Tucker y LagrangeKuhn Tucker y Lagrange
Kuhn Tucker y Lagrange
 
Teoria de Optimizacion
Teoria de  OptimizacionTeoria de  Optimizacion
Teoria de Optimizacion
 
Torres de hanói melany rojas
Torres de hanói melany rojasTorres de hanói melany rojas
Torres de hanói melany rojas
 
Lastorresdehanoi
LastorresdehanoiLastorresdehanoi
Lastorresdehanoi
 
Criterios de Busqueda en I.A
Criterios de Busqueda en I.ACriterios de Busqueda en I.A
Criterios de Busqueda en I.A
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 

Último

Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdfEdwinAlexanderSnchez2
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxEverardoRuiz8
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...SuannNeyraChongShing
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023ANDECE
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIAMayraOchoa35
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamientoRobertoAlejandroCast6
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptxGARCIARAMIREZCESAR
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasSegundo Silva Maguiña
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMarceloQuisbert6
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 

Último (20)

Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptx
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la Ingenierías
 
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdfVALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principios
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 

Daniela mendozaestructuradedatosii

  • 1. Autor: Daniela A. Mendoza R. C.I: 28.528.546. Cabudare; Marzo 2021 UNIVERSIDAD FERMIN TORO VICE-RECTORADO ACADÉMICO FACULTAD DE INGENIERÍA ESCUELA DE INGENIERIA EN COMPUTACIÓN
  • 2. Vuelta atrás", (Backtracking) es una estrategia para encontrar soluciones a problemas que satisfacen restricciones. El término "backtrack" fue acuñado por primera vez por el matemático estadounidense D. H. Lehmer en los años 1950s.
  • 3. En su forma básica, la idea de backtracking se asemeja a un recorrido en profundidad dentro de un grafo dirigido. El grafo en cuestión suele ser un árbol, o por lo menos no contiene ciclos. Sea cual sea su estructura, existe sólo implícitamente. El objetivo del recorrido es encontrar soluciones para algún problema. Esto se consigue construyendo soluciones parciales a medida que progresa el recorrido; estas soluciones parciales limitan las regiones en las que se puede encontrar una solución completa. El recorrido tiene éxito si, procediendo de esta forma, se puede definir por completo una solución. En este caso el algoritmo puede bien detenerse (si lo único que se necesita es una solución del problema) o bien seguir buscando soluciones alternativas (si deseamos examinarlas todas). Por otra parte, el recorrido no tiene éxito si en alguna etapa la solución parcial construida hasta el momento no se puede completar. En tal caso, el recorrido vuelve atrás exactamente igual que en un recorrido en profundidad, eliminando sobre la marcha los elementos que se hubieran añadido en cada fase. Cuando vuelve a un nodo que tiene uno o más vecinos sin explorar, prosigue el recorrido de una solución
  • 4. Podemos visualizar el funcionamiento de una técnica de backtracking como la exploración en profundidad de un grafo. Cada vértice del grafo es un posible estado de la solución del problema. Cada arco del grafo representa la transición entre dos estados de la solución (i.e., la toma de una decisión). Típicamente el tamaño de este grafo será inmenso, por lo que no existirá de manera explícita. En cada momento sólo tenemos en una estructura los nodos que van desde el estado inicial al estado actual. Si cada secuencia de decisiones distinta da lugar a un estado diferente, el grafo es un árbol (el árbol de estados).
  • 5. Los problemas que deben satisfacer un determinado tipo de restricciones son problemas completos, donde el orden de los elementos de la solución no importa. Estos problemas consisten en un conjunto (o lista) de variables a la que a cada una se le debe asignar un valor sujeto a las restricciones del problema. La técnica va creando todas las posibles combinaciones de elementos para obtener una solución. Su principal virtud es que en la mayoría de las implementaciones se puede evitar combinaciones, estableciendo funciones de acotación (o poda) reduciendo el tiempo de ejecución. Vuelta atrás está muy relacionado con la búsqueda combinatoria.
  • 6. Esencialmente, la idea es encontrar la mejor combinación posible en un momento determinado, por eso, se dice que este tipo de algoritmo es una Búsqueda en profundidad. Durante la búsqueda, si se encuentra una alternativa incorrecta, la búsqueda retrocede hasta el paso anterior y toma la siguiente alternativa. Cuando se han terminado las posibilidades, se vuelve a la elección anterior y se toma la siguiente opción (hijo [si nos referimos a un árbol]). Si no hay más alternativas la búsqueda falla. De esta manera, se crea un árbol implícito, en el que cada nodo es un estado de la solución (solución parcial en el caso de nodos interiores o solución total en el caso de los nodos hoja). Normalmente, se suele implementar este tipo de algoritmos como un procedimiento recursivo. Así, en cada llamada al procedimiento se toma una variable y se le asignan todos los valores posibles, llamando a su vez al procedimiento para cada uno de los nuevos estados. La diferencia con la Búsqueda en profundidad es que se suelen diseñar funciones de cota, de forma que no se generen algunos estados si no van a conducir a ninguna solución, o a una solución peor de la que ya se tiene. De esta forma se ahorra espacio en memoria y tiempo de ejecución
  • 7. Algunas heurísticas son comúnmente usadas para acelerar el proceso. Como las variables se pueden procesar en cualquier orden, generalmente es más eficiente intentar ser lo más restrictivo posible con las primeras (esto es, las primeras con menores valores posibles). Este proceso poda el árbol de búsqueda antes de que se tome la decisión y se llame a la subrutina recursiva. Cuando se elige qué valor se va a asignar, muchas implementaciones hacen un examen hacia delante (FC, Forward Checking), para ver qué valor restringirá el menor número posible de valores, de forma que se anticipa en a) preservar una posible solución y b) hace que la solución encontrada no tenga restricciones destacadas. Algunas implementaciones muy sofisticadas usan una función de cotas, que examina si es posible encontrar una solución a partir de una solución parcial. Además, se comprueba si la solución parcial que falla puede incrementar significativamente la eficiencia del algoritmo. Por el uso de estas funciones de cota, se debe ser muy minucioso en su implementación de forma que sean poco costosas computacionalmente hablando, ya que lo más normal es que se ejecuten en para cada nodo o paso del algoritmo. Cabe destacar, que las cotas eficaces se crean de forma parecida a las funciones Heurísticas, esto es, relajando las restricciones para conseguir mayor eficiencia. Con el objetivo de mantener la solución actual con coste mínimo, los algoritmos vuelta atrás mantienen el coste de la mejor solución en una variable que va variando con cada nueva mejor solución encontrada. Así, si una solución es peor que la que se acaba de encontrar, el algoritmo no actualizará la solución. De esta forma, devolverá siempre la mejor solución que haya encontrado.
  • 8. Ejemplos típicos en los que se puede aplicar este método son los laberintos, el Sudoku (para uno normal de 9x9, entre 15.000 y 90.000 ciclos) o en ajedrez el problema del recorrido del caballo o el de las ocho damas. En terrenos más prácticos el problema de la mochila es uno de los ejemplos más clásicos: optimizar qué objetos meter que maximicen la ocupación de un espacio de una forma determinada (quizá lo hayas experimentado en el maletero del coche en los Tetris 3D de las vacaciones.) El rompecabezas de madera de la imagen –uno de los muchos puzles de madera chinos sin nombre, similar al de los pentominós 2D– inspiró a Lacono a crear un programa para resolver llamado GoShapesPuzzle [en Github] usando el lenguaje Go (y gotk3), tal y como está explicado y en el código del que se puede aprender.
  • 9. El problema de la enumeración consiste en encontrar todas las soluciones del problema, es por ello que tendremos que recorrer el árbol de estados al completo.
  • 10. Problema de las N Reinas Disponemos de un tablero de ajedrez de tamaño NxN, y se trata de colocar en él N reinas de manera que no se amenacen según las normas del ajedrez.
  • 11. Problema de las N Reinas Disponemos de un tablero de ajedrez de tamaño NxN, y se trata de colocar en él N reinas de manera que no se amenacen según las normas del ajedrez.
  • 12. Este método busca una solución como en el método de backtracking, pero cada solución tiene asociado un costo y la solución que se busca es una de mínimo costo llamada óptima. Además de ramificar una solución padre (branch) en hijos se trata de eliminar de consideración aquellos hijos cuyos descendientes tienen un costo que supera al óptimo buscado acotando el costo de los descendientes del hijo (bound). La forma de acotar es un arte que depende de cada problema. La acotacion reduce el tiempo de búsqueda de la solución óptima al "podar" (pruning) los subarboles de descendientes costosos.