Webrelaunch 2020

Maple / Matlab Programme

Matlab Dateien für das Simplex-Verfahren

Alle Programme laufen auch unter GNU Octave, einer Open-Source Implementation von Matlab.

Phase II des Simplex-Verfahren

phase2.m Phase II des Simplex-Verfahrens mit der Pivotregel von Bland
aufgabe30.m Daten zu Aufgabe 30

phase2.m führt Phase II des Simplex-Verfahren mit der Pivotregel von Bland für das Problem

$ \min c^T x \quad \text{unter} \quad  Ax = b, x \geq 0 $

durch, wobei vorausgesetzt wird, das eine Basislösung im Tableau enthalten ist.

Um die Funktion phase2 in Matlab zu starten, müssen Sie phase2(A,b,c) am Matlab-Prompt eingeben (in dem Verzeichnis, in dem Sie obige Dateien gespeichert haben). Die Matrix und die Vektoren müssen allerdings vorher definiert werden.
Als Beispiel finden Sie oben die Datei aufgabe30.m mit den Daten von Aufgabe 30 (Übungsblatt 8). Um diese Aufgabe exemplarisch zu rechnen, geben Sie vor dem Start von phase2(A,b,c) am Octave/Matlab-Prompt aufgabe30 ein.

Zwei-Phasen Simplex-Verfahren

simplex.m Das Simplex-Verfahren
ph2.m Phase II - wird von simplex.m benötigt
aufgabe34.m Daten zu Aufgabe 34

Die Funktion simplex löst obiges Optimierungsproblem mit dem Simplex-Verfahren (beide Phasen). Dazu müssen wieder die Matrix und die beiden Vektoren übergeben werden, und anschließend simplex(A,b,c) aufgerufen werden.
Die Datei ph2.m wird lediglich intern von simplex.m benötigt. Als Beispiel finden Sie in aufgabe34.m die Daten zu Aufgabe 34. Um die Daten zu laden geben Sie analog wie oben aufgabe34 am Matlab/Octabe Prompt ein.

Beachten Sie, dass die Tableaus in Phase I etwas anders dargestellt werden als in der Vorlesung. Der Kostenvektor  c des ursprünglichen Problem steht hier in der letzten Zeile, und nicht in der zweiten Zeile wie in der Vorlesung.