aktuelle Version des Vorlesungsskripts - ZIB
aktuelle Version des Vorlesungsskripts - ZIB
aktuelle Version des Vorlesungsskripts - ZIB
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
5 Bäume und Wege<br />
Um lästige Trivialbemerkungen zu vermeiden, nehmen wir im Weiteren an, dass die<br />
Indizes so geordnet sind, dass für die Gewichtsdichten ρ1 ≥ ρ2 ≥ . . . ≥ ρn und dass<br />
aj ≤ b gilt für j = 1, . . . , n. Leider gilt die schöne Schranke aus (5.39) nicht für das<br />
0/1-Rucksack-Problem.<br />
(5.40) Bemerkung. Gegeben sei ein 0/1-Rucksack-Problem. Dann gilt:<br />
(a) Für k = 0, 1, . . . , n − 1 gilt<br />
copt ≤<br />
k<br />
j=1<br />
cj + ck+1<br />
<br />
· b −<br />
ak+1<br />
(b) cGgreedy > copt − max{cj | j = 1, . . . , n}. △<br />
Beweis. (a) Sei x ∗ 1 , . . . , x∗ n eine optimale Lösung <strong>des</strong> 0/1-Rucksack-Problems und k ∈<br />
{0, 1, . . . , n − 1}. Dann gilt:<br />
n<br />
k<br />
n<br />
k<br />
j=1<br />
copt = cjx<br />
j=1<br />
∗ j ≤ cjx<br />
j=1<br />
∗ ajck+1<br />
j +<br />
x<br />
ak+1<br />
j=k+1<br />
∗ j<br />
= ck+1<br />
ak+1<br />
n<br />
j=1<br />
≤ ck+1<br />
b +<br />
ak+1<br />
=<br />
k<br />
j=1<br />
ajx ∗ j +<br />
k <br />
j=1<br />
k <br />
j=1<br />
cj + ck+1<br />
<br />
b −<br />
ak+1<br />
aj<br />
cj − ck+1<br />
aj<br />
ak+1<br />
k<br />
j=1<br />
<br />
.<br />
cj − ck+1<br />
aj<br />
ak+1<br />
(b) Ist n j=1 aj ≤ b, so liefert der Greedy-Algorithmus offenbar die optimale Lösung und<br />
die Behauptung ist korrekt. Sei also k ≤ n der größte Index, so dass k j=1 aj ≤ b.<br />
Dann gilt<br />
k<br />
0 ≤ b − aj < ak+1,<br />
und aus (a) folgt<br />
copt ≤<br />
k<br />
j=1<br />
j=1<br />
aj<br />
<br />
<br />
.<br />
cj + ck+1<br />
ak+1 ≤ cGgreedy + ck+1,<br />
ak+1<br />
woraus (b) folgt. ✷<br />
(5.41) Bemerkung.<br />
112<br />
<br />
x ∗ j