UNIVERSIDAD DE ORIENTE
NÚCLEO ANZOÁTEGUI
ESCUELA DE INGENIERÍA Y CIENCIAS APLICADAS
DEPARTAMENTO DE COMPUTACIÓN Y SISTEMAS
TALLER DE ANÁLISIS Y DISEÑO DE ALGORITMOS
PROFESOR:
CLAUDIO CORTINEZ
ESTUDIANTES:
LUISA TORRES, C.I: 28.676.981
LEWIS GARCÍA, C.I:28.666.613
LUIS ÁGREDA, C.I:26.886.935
BARCELONA, JULIO DE 2022
ALGORITMOS FUNDAMENTALES:
BACKTRACKING
ES UNA TÉCNICA RECURSIVA CUYA FUNCIÓN ES
BÁSICAMENTE ENCONTRAR SOLUCIONES A
PROBLEMAS RECORRIENDO SUS DISTINTAS
ALTERNATIVAS, ESTA ES APLICADA EN
RECORRIDOS DE GRAFOS, ESPECIALMENTE
ÁRBOLES, QUE REPRESENTAN LAS DISTINTAS
SOLUCIONES DE UN PROBLEMA SE DICE QUE EL
RECORRIDO ES EXITOSO CUANDO SE PUEDE
DEFINIR UNA SOLUCIÓN POR COMPLETO. DE LO
CONTRARIO, SE REGRESA HACIA ATRÁS PARA
LUEGO VOLVER A RECORRER NODOS SIN
EXPLORAR
LUIS AGREDA
BACKTRACKING
Antecedentes
LUIS AGREDA
MITOLOGIA GRIEGA
HISTORIA DEL HILO DE ADRIANA
1950
DERRICK HENRY LEHMER
MATEMÁTICO ESTADOUNIDENSE
Heuristica
RESTRICCON DE PRIMERAS VARIABLES
RESTRINGIR LAS PRIMERAS VARIABLES CON EL MENOR VALOR
POSIBLE
FORWARD CHECKING
VERIFICA VALORES PARA PRESERVAR SOLUCIONES
FUNCION DE COTAS
EXAMINA SI ES POSIBLE ENCONTRAR UNA SOLUCIÓN A PARTIR
DE UNA SOLUCIÓN PARCIAL
LUIS AGREDA
Esquema del
Algoritmo
LUIS AGREDA
PSEUDOCÓDIGO DE BACKTRAKING
BACKTRACKING (A[],B[],K){
SI ES_SOLUCION (B[],K) ENTONCES
PROCESAR_SOLUCIÓN (A[],B[])
SINO
POR CADA ENCONTRAR_SUCESORES(B[],K) HACER
BACKTRAKING (A[],B[],K+1)
}
DÓNDE:
K= EN EL PSEUDOCÓDIGO, ES EL NÚMERO DE
ELEMENTO DEL ARREGLO.
ES_SOLUCIÓN(): RETORNA VERDADERO O FALSO SI EL
ARGUMENTO ES UNA SOLUCIÓN POSIBLE
PROCESAR_SOLUCIÓN(): DEPENDE DEL PROBLEMA
ENCONTRAR_SUCESORES(): ES UNA FUNCIÓN QUE
DADO UN CANDIDATO, GENERA TODOS LOS
CANDIDATOS QUE SON EXTENSIONES DE ESTE

Backtracking.pdf

  • 1.
    UNIVERSIDAD DE ORIENTE NÚCLEOANZOÁTEGUI ESCUELA DE INGENIERÍA Y CIENCIAS APLICADAS DEPARTAMENTO DE COMPUTACIÓN Y SISTEMAS TALLER DE ANÁLISIS Y DISEÑO DE ALGORITMOS PROFESOR: CLAUDIO CORTINEZ ESTUDIANTES: LUISA TORRES, C.I: 28.676.981 LEWIS GARCÍA, C.I:28.666.613 LUIS ÁGREDA, C.I:26.886.935 BARCELONA, JULIO DE 2022 ALGORITMOS FUNDAMENTALES: BACKTRACKING
  • 2.
    ES UNA TÉCNICARECURSIVA CUYA FUNCIÓN ES BÁSICAMENTE ENCONTRAR SOLUCIONES A PROBLEMAS RECORRIENDO SUS DISTINTAS ALTERNATIVAS, ESTA ES APLICADA EN RECORRIDOS DE GRAFOS, ESPECIALMENTE ÁRBOLES, QUE REPRESENTAN LAS DISTINTAS SOLUCIONES DE UN PROBLEMA SE DICE QUE EL RECORRIDO ES EXITOSO CUANDO SE PUEDE DEFINIR UNA SOLUCIÓN POR COMPLETO. DE LO CONTRARIO, SE REGRESA HACIA ATRÁS PARA LUEGO VOLVER A RECORRER NODOS SIN EXPLORAR LUIS AGREDA BACKTRACKING
  • 3.
    Antecedentes LUIS AGREDA MITOLOGIA GRIEGA HISTORIADEL HILO DE ADRIANA 1950 DERRICK HENRY LEHMER MATEMÁTICO ESTADOUNIDENSE
  • 4.
    Heuristica RESTRICCON DE PRIMERASVARIABLES RESTRINGIR LAS PRIMERAS VARIABLES CON EL MENOR VALOR POSIBLE FORWARD CHECKING VERIFICA VALORES PARA PRESERVAR SOLUCIONES FUNCION DE COTAS EXAMINA SI ES POSIBLE ENCONTRAR UNA SOLUCIÓN A PARTIR DE UNA SOLUCIÓN PARCIAL LUIS AGREDA
  • 5.
    Esquema del Algoritmo LUIS AGREDA PSEUDOCÓDIGODE BACKTRAKING BACKTRACKING (A[],B[],K){ SI ES_SOLUCION (B[],K) ENTONCES PROCESAR_SOLUCIÓN (A[],B[]) SINO POR CADA ENCONTRAR_SUCESORES(B[],K) HACER BACKTRAKING (A[],B[],K+1) } DÓNDE: K= EN EL PSEUDOCÓDIGO, ES EL NÚMERO DE ELEMENTO DEL ARREGLO. ES_SOLUCIÓN(): RETORNA VERDADERO O FALSO SI EL ARGUMENTO ES UNA SOLUCIÓN POSIBLE PROCESAR_SOLUCIÓN(): DEPENDE DEL PROBLEMA ENCONTRAR_SUCESORES(): ES UNA FUNCIÓN QUE DADO UN CANDIDATO, GENERA TODOS LOS CANDIDATOS QUE SON EXTENSIONES DE ESTE