Program Dinamis

Memiliki lebih banyak keputusan, tidak seperti algoritma Greedy yang hanya memiliki 1 keputusan dan belum tentu optimal

Mundur:

Tahap 4

sf4(s)
(total cost)
X4
(nyampe ke)
8310
9410
Tahap 3
s89f3(s)
(min cost)
X3
(nyampe ke)
51+3 = 44+4 = 848
69779
76768
Tahap 2
s567f2(s)
(min cost)
X2
(nyampe ke)
27+4 = 114+7 = 1112115 atau 6
33+4 = 791075
4881185 atau 6
Tahap 1
s234f1(s)X1
12+11 = 131111113 atau 4

Maju

Contoh untuk Knapsack 0/1

Tahap 1 - Item 1 (Weight = 2, Profit = 65)

yf0(y)65 + f0(y-2)f1(y)(x1, x2, x3)
000(0,0,0)
100(0,0,0)
2065 + 065(1,0,0)
3065 + 065(1,0,0)
4065 + 065(1,0,0)
5065 + 065(1,0,0)
Tahap 2 - Item 2 (Weight = 3, Profit = 80)
yf1(y)80 + f1(y-3)f2(y)(x1, x2, x3)
000(0,0,0)
100(0,0,0)
26565(1,0,0)
3658080(0,1,0)
4658080(0,1,0)
56580+65 = 145145(1,1,0)
Tahap 3 - Item 3 (Weight = 1, Profit = 30)
yf2(y)30 + f2(y-3)f3(y)(x1, x2, x3)
000(0,0,0)
1030+030(0,0,1)
26530+065(1,0,0)
38030+6595(1,0,1)
48030+80110(0,1,1)
514530+80145(1,1,0)