Referat Metoda Backtracking 3.rtf
Mai jos puteti citi fragmente din
Referat Metoda Backtracking 3.rtf si de asemenea puteti face
Download Referat Metoda Backtracking 3.rtfCiteste fragmente din Referat Metoda Backtracking 3.rtf
Metoda Backtracking
Aceasta tehnica se foloseste in rezolvarea problemelor care indeplinesc
simultan urmatoarele conditii :
· Solutia lor poate fi pusa sub forma unui vector
S=xsssssseer1,x2,….,xn cu x1 A1, x2 A2, …,xn An;
· Multimile A1,A2,A3,…An sunt multimi finite, iar elementele lor se
considera ca se afla intr-o relatie de ordine bine stabilita;
· Nu dispune de o alta forma de rezolvare mai rapida.
Observatii:
· Nu pentru toate problemele n este cunoscut de la inceput
· x1,x2,…,xn pot fi la randul lor vectori
· in mai multe probleme, multimile A1,A2,…,An coincid.
Tehnica Backtracking are la baza un principiu extrem de simplu:
· se constituie solutia pas cu pas: x1,x2,...,xn;
· daca se considera ca pentru orice valoare aleasa, nu avem cum sa
ajungem la solutie, se renunta la acea valoare si se reia cautarea din
punctul in care am ramas.
Concret :
· Se alege primul element x1, ce apartine lui A1;
· Presupunand generate elementele x1,x2,…,xk, apartinand multimilor
A1,A2,…,respectiv Ak, se alege (daca exista)3 xk+1, primul element
disponibil din multimea Ak+1, aparand doua posibilitati :
1) nu s-a gasit un astfel de element, caz in care se reia cautarea
considerand generate elementele x1,x2, …,xk+1, iar aceasta se reia de
la urmatorul element al multimii Ak ramas netestat;
2) a fost gasit, caz in care se testeaza daca acesta indeplineste
anumite conditii de continuare, aparand astfel doua posibilitati :
2.1) le indeplineste, caz in care se testeaza daca s-a ajuns la solutie
si apar, din nou, doua posibilitati :
2.1.1) s-a ajuns la solutie, se tipareste solutia si se reia algoritmul
considerand generate elementele x1,x2, …,xk (se cauta, in continuare,
un alt element al multimii Ak+1 ramas netestat);
2.1.2) nu s-a ajuns la solutie, caz in care se reia algoritmul
considerand generate urmatoarele elemente x1,x2, …,xk+1 si se cauta
pentru primul element xk+2 Ak+2;
2.2) nu le indeplineste, caz in care se reia algoritmul considerand
generate elementele x1,x2, …,xk, iar elementul xk+1 se cauta intre
elementele ramase netestate ale multimii Ak+1.
Observatii :
· Tehnica Backtracking are ca rezultat obtinerea tuturor solutiilor
problemei. In cazul in care se cere o singura solutie se poate forta
oprirea atunci cand a fost gasita.
· Problemele rezolvate prin aceasta metoda necesita un timp
indelungat, motiv pentru care este bine sa utilizam metoda numai atunci
cand nu avem la dispozitie un alt algoritm mai eficient. Cu toate ca
exista probleme pentru care nu se pot elabora algoritmi mai eficienti,
tehnica Backtracking trebuie aplicata numai in ultima instanta.