Programare dinamică, backtracking, propagarea ... - Andrei
Programare dinamică, backtracking, propagarea ... - Andrei
Programare dinamică, backtracking, propagarea ... - Andrei
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Exemplu constructie AOC (III)<br />
C 03 = min(C 00+C 13, C 01+C 23, C 02+C 33) + w 03 = min (0.47,0.54, 0.54) + w 03 =><br />
R 03 =1<br />
C 14= min(C 11+C 24,C 12+C 34,C 13+C 44) + w 14 = min(0.42,0.28, 0.47) + w 14 =><br />
14 ( 11 24 12 34 13 44) 14 ( ) 14<br />
R 14= 3<br />
C 25 = min(C 22+C 35,C 23+C 34, C 24+C 55) + w 25 = min(0.64, 0.37, 0.42) + w 25 =><br />
R 25 = 4<br />
w<br />
8<br />
28<br />
j j<br />
i,<br />
j = ∑ pk<br />
+ ∑q<br />
k C i,<br />
i+<br />
d = min { C i,<br />
α −1<br />
+ Cα<br />
, i+<br />
d } + wi,<br />
i+<br />
d<br />
k=<br />
i+<br />
1 k=<br />
i<br />
i≤α<br />
≤i+<br />
d<br />
Proiectarea Algoritmilor 2010<br />
AOC – Corectitudine (I)<br />
Teoremă: Algoritmul AOC construiește un arbore AOC A cu cheile x<br />
= {x1, x2, … xn} conform probabilităților de căutare pi, i = 1,n si qj, j =<br />
0n 0,n.<br />
Demonstrație: prin inducție după etapa de calcul al costurilor arborilor cu<br />
d noduri.<br />
Caz de baza: d = 0. Costurile C i, i ale arborilor vizi A i, i, i = 0, n sunt 0,<br />
așa cum sunt inițializate de algoritm.<br />
Pas de inducție: d ≥ 1. Ip. ind.: pentru orice d’ < d, algoritmul AOC<br />
calculează costurile C i, i+d’ si indicii R i, i+d’, ai rădăcinilor unor AOC A i, i+d’,<br />
i = 0, n-d’ cu cheile {x i+1, x i+2, … x i+d’}. Trebuie sa arătam ca valorile C i, i+d<br />
si R i, i+d corespund unor AOC A i, i+d, i = 0, n-d cu cheile {x i+1, x i+2, … x i+d}.<br />
Proiectarea Algoritmilor 2010<br />
23<br />
28<br />
3/21/2010<br />
6