Vorlesung 01: Graphisches Lösen
Grundlagen Operations Research
Organisatorisches
Herzlich willkommen!
Grundlagen Operations Research
- Prof. Dr. Knut Haase, Simon Rienks, Fiona Sauerbier und Dr. Tobias Vlćek
- Institut für Logistik, Verkehr und Produktion
- University of Hamburg Business School
- Ein forschungsorientiertes Modul mit starkem Praxisbezug
Aufbau der Veranstaltung
- Vorlesung (2 SWS): die zwölf Themen des Kurses
- Übungen (1 SWS): Übungsvideos + Julia-Aufgaben, alle zwei Wochen
- Besprechungen (1 SWS): Fragen & Aufgabenvorstellung (bis 2 Bonuspunkte)
- Klausurtrainer (freiwillig): Übungsaufgaben in OpenOlat (bis 6 Bonuspunkte)
Details finden Sie im Syllabus und in den häufigen Fragen.
Warum sich der Aufwand lohnt
Die Klausur: 90 Minuten, 90 Punkte, dazu bis zu 8 Bonuspunkte. Auswertung eines früheren Wintersemesters:
- Klausurtrainer ≥ 4 Punkte, keine Besprechungs-Bonuspunkte: im Schnitt +12 Punkte in der Klausur.
- Klausurtrainer ≥ 4 Punkte und ≥ 2 Besprechungs-Bonuspunkte: im Schnitt +18 Punkte.
Bonuspunkte zählen erst ab einer bestandenen Klausur (mind. 4,0).
Inhalte der Veranstaltung
- Lineare Optimierung
- Graphentheoretische Grundlagen
- Das klassische Transportproblem
- Ganzzahlige Optimierung: Branch & Bound
- Netzplantechnik
- Optimierung bei mehrfacher Zielsetzung
- Modellierung
Software: Julia statt GAMS
In dieser Veranstaltung lösen wir Optimierungsprobleme mit Julia, dem Paket JuMP und dem Solver HiGHS. Julia ersetzt GAMS vollständig und ist klausurrelevant.
- Einstieg ohne Vorkenntnisse: siehe Julia · Installation & Setup
- Organisation weiterhin über OpenOlat und den Klausurtrainer
OpenOlat

Noch nie mit OpenOlat gearbeitet?
Wir laden Sie erst in den Kurs ein, nachdem Sie sich einmal angemeldet haben, bitte zeitnah:
Praxisrelevanz
Crowd Management in Mekka
Planung der Pilgerströme

- Zeitpläne und Routen für die Pilgerströme zur Haddsch
- Modell: Path Assignment and Timetabling
Metro-Zufluss in Doha
Gesteuerter Metro-Zufluss

- Einlasssteuerung nach Großveranstaltungen
- Ergebnis: zulässige Einlassraten je Stunde
Polizei-Distriktplanung
Zuschnitt von Polizeibezirken

- Optimaler Zuschnitt der Bezirke um die Wachen
- Ziele: kurze Wege, ausgeglichene Auslastung
Brauerei-Produktionsplanung
Von der Forschung in die Lehre
Anwendungsfelder des OR
- Flugrouten- und Crew-Planung (Desrosiers u. a. 2000)
- Bettenmanagement in Krankenhäusern (Thomas u. a. 2013)
- Einsatzplanung von Eisenbahnpersonal (Jütte u. a. 2011)
- Schiedsrichter-Zuordnung in der Baseball-Liga (Trick u. a. 2012)
- Spielpläne im Profisport (Westphal 2014)
Internationalisierung
Gesellschaften
- GOR: Gesellschaft für OR
- EURO: European OR Societies
- INFORMS: OR & Management Sciences
- IFORS: International Federation
Zeitschriften (Auswahl)
- European Journal of OR
- Management Science
- Operations Research
- OR Spectrum
Auszeichnungen
- 2021: Best Paper Award VHB
- 2021: EURO Excellence in Practice Award (Finalist, 2. Platz)
- 2015: INFORMS Franz Edelman Award (Finalist)
Lineare Optimierung
Lineares Optimierungsproblem
Ein LOP besitzt eine lineare Zielfunktion und ausschließlich lineare Nebenbedingungen.
Entscheidungsvariable, Zielkoeffizient, Parameter.
Eine Tour, zwei Angebote
Beispiel aus der Logistik
Ein Frachtführer bedient die Relation Hamburg–Kiel. Für eine Fahrt stehen noch 5 Palettenstellplätze zur Verfügung; die Zuladung darf 9 Tonnen nicht überschreiten. Über eine Frachtbörse erhält er zwei Auftragsangebote.
Wie viele Paletten je Angebot maximieren seine Erlöse ()?
Die Daten
| Auftrag | Stückerlös | Paletten | Tonnen |
|---|---|---|---|
| 1 | 20 | 1 | 1 |
| 2 | 30 | 1 | 3 |
| LKW-Kapazität | 5 | 9 |
Gesucht: die erlösmaximale Übernahme an Aufträgen.
Warum grafisch lösen?
Bei zwei Entscheidungsvariablen können wir jede zulässige Lösung als Punkt in der Ebene zeichnen. Die Zielfunktion wird zu einer Geraden, die wir so weit wie möglich in Richtung besserer Werte verschieben.
Das gibt uns ein Gefühl dafür, warum die optimale Lösung an einer Ecke des zulässigen Bereichs liegt, bevor wir später rechnerisch (Simplex) vorgehen.
Zielfunktion
Entscheidungsvariablen
- : Abnahmemenge gemäß Auftrag 1
- : Abnahmemenge gemäß Auftrag 2
- : Erlöse in EUR
Zielfunktionsgerade für
Wir geben einen Zielwert vor, z. B. :
Jeder Punkt liefert denselben Erlös.
Zielgerade verschieben
Erhöhen wir den Zielwert auf :
Die Gerade wandert parallel nach rechts oben.
Nebenbedingung: Paletten
Je Abnahmemenge eine Palette, höchstens 5:
Grenzgerade :
- zulässig: auf oder unterhalb
Nebenbedingung: Ladegewicht
Auftrag 1 wiegt 1 t, Auftrag 2 wiegt 3 t, höchstens 9 t:
Grenzgerade :
Der zulässige Bereich
Beide Restriktionen gleichzeitig erfüllt (und ):
Die Schnittmenge bildet den konvexen Lösungsraum.
Frage: Wo in dieser Fläche liegt der beste Punkt?
Optimum grafisch bestimmen
- Zielgerade parallel verschieben, solange sie den Bereich berührt
- : die Gerade wandert nach außen
- : nur der Eckpunkt bleibt
Die optimale Lösung
Der maximale Erlös beträgt 120 EUR.
Überprüfung der Lösung
Optimalwerte , :
Beide Restriktionen sind mit Gleichheit erfüllt. Das Optimum liegt im Schnittpunkt der beiden Grenzgeraden.
Optimum an einer Ecke
Besitzt ein lineares Optimierungsproblem eine optimale Lösung, so wird sie stets in mindestens einem Eckpunkt des konvexen Lösungsraums angenommen.
- Die Zielgerade wird verschoben, bis sie den Bereich zuletzt in einer Ecke (oder entlang einer Kante) berührt.
- Klassische Verfahren suchen daher systematisch Eckpunkte ab Grundidee des Simplex-Algorithmus (Vorlesung 02).
Kurz gefragt
Frage: Und bei einer Minimierung?
Dieselbe Idee: die Zielgerade wandert in die andere Richtung, bis sie den Bereich zuletzt berührt: wieder ein Eckpunkt.
Exkurs: Ganzzahligkeit
Sinnvoll sind nur ganzzahlige Palettenmengen. Eigentlich müsste zusätzlich gefordert werden.
Das Optimum ist der Schnittpunkt der beiden bindenden Nebenbedingungen:
Dass dieser Schnittpunkt zufällig ganzzahlig ist, ist ein Glücksfall. Im Allgemeinen ist Ganzzahligkeit nicht garantiert (→ Vorlesung 08).
Formalisierung als LOP
Darf eine Variable auch negativ sein, ersetzt man sie durch mit .
Zum Gleichungssystem
Frage: Wie wird aus einer Ungleichung eine Gleichung?
Wir ergänzen Schlupfvariablen :
- Zielfunktion:
Eine Schlupfvariable erfasst den nicht genutzten Rest einer Restriktion.
LOP und Gleichungssystem
Lineares Optimierungsproblem
Gleichungssystem
Das Gleichungssystem ist die Grundlage des Simplex-Algorithmus (Vorlesung 02).
Lösung mit Julia
Modellierung mit JuMP
Dasselbe Problem, gelöst mit Julia, JuMP und HiGHS:
using JuMP, HiGHS
modell = Model(HiGHS.Optimizer)
set_silent(modell)
@variable(modell, X1 >= 0) # Abnahmemenge Auftrag 1
@variable(modell, X2 >= 0) # Abnahmemenge Auftrag 2
@objective(modell, Max, 20X1 + 30X2) # Umsatzerlöse in EUR
@constraint(modell, Paletten, X1 + X2 <= 5) # max. 5 Paletten
@constraint(modell, Gewicht, X1 + 3X2 <= 9) # max. 9 Tonnen
optimize!(modell)
println("F* = ", objective_value(modell),
" mit X1 = ", value(X1), ", X2 = ", value(X2))F* = 120.0 mit X1 = 3.0, X2 = 2.0
Ergebnis
Die Zelle liefert die bereits grafisch bestimmte Lösung:
So können Sie Ihre Handrechnungen jederzeit überprüfen, mehr dazu im Abschnitt Julia.
Zusammenfassung
Das Wichtigste auf einen Blick
- Ein LOP hat eine lineare Zielfunktion und lineare Nebenbedingungen.
- Bei zwei Variablen lösen wir grafisch; das Optimum liegt an einer Ecke.
- Schlupfvariablen ergeben das Gleichungssystem: Basis für den Simplex.
- Mit Julia/JuMP lösen wir dasselbe Modell rechnerisch.

