using JuMP, HiGHS
A = [2 -1 1 2;
1 2 3 -1;
3 2 -1 2]
b = [30, 24, 36]
c = [45, 25, 35, 20]
modell = Model(HiGHS.Optimizer)
set_silent(modell)
# IHR CODE HIER
optimize!(modell)Übung 02: Primaler Simplex
Grundlagen Operations Research
Video zur Übung
Aufgabe 1
Lösen Sie folgendes Problem mit dem primalen Simplex-Algorithmus:
- Geben Sie die Simplex-Multiplikatoren nach jeder Iteration an.
- Sei . Lösen Sie das Restproblem grafisch. Ist der zugehörige Zielfunktionswert eine obere oder eine untere Schranke?
- Überprüfen Sie Ihre Lösungen mit Julia.
Ihre Lösung in Julia
Es bietet sich an, die Koeffizienten als Matrix/Vektoren zu erfassen und mit indizierten Variablen zu modellieren. Nennen Sie Ihr Modell modell:
TippSelbstkontrolle
@assert isapprox(objective_value(modell), 2270 / 3; atol = 1e-3) "Noch nicht korrekt. Prüfen Sie Matrix A, b und c."
println("Vollständiges Problem korrekt: F* = ", objective_value(modell))Restproblem
Fixieren Sie und auf null (fix(modell[:X][2], 0; force = true)) und lösen Sie erneut. Vergleichen Sie den resultierenden Zielwert mit dem des vollständigen Problems (vgl. Aufgabenteil 2).
TippSelbstkontrolle
@assert isapprox(objective_value(modell), 720.0; atol = 1e-4) "Noch nicht korrekt. Sind X2 und X4 wirklich fixiert?"
println("Restproblem korrekt: F = ", objective_value(modell))