<aclass="brand"href="index.html"><svgclass="icon"aria-hidden="true"><usehref="#icon-book"></use></svg><span>Optimierte Entscheidungsfindung mit Python</span></a>
<navclass="sidebar"id="sidebar"aria-label="Kapitelnavigation"><divclass="sidebar-inhalt"><detailsclass="sidebar-gruppe"><summary>Einstieg</summary><ul><lidata-kapitel="vorwort.html"><ahref="vorwort.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Vorwort & Lesehilfe</span></a></li><lidata-kapitel="notation.html"><ahref="notation.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Notation & Abkürzungen</span></a></li></ul></details><detailsclass="sidebar-gruppe"><summary>Teil I: Grundlagen des Operations Research</summary><ul><lidata-kapitel="einfuehrung.html"><ahref="einfuehrung.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 1: Einführung in Operations Research — Vom Ursprung zur mathematischen Entscheidungsfindung</span></a></li><lidata-kapitel="fundament.html"><ahref="fundament.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 2: Das mathematische Fundament — Vektoren, Matrizen, Konvexität{idx:Konvexität}</span></a></li><lidata-kapitel="oekosystem.html"><ahref="oekosystem.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 3: Das Python-Ökosystem für OR — Solver, Bindings und Modellierungsschichten</span></a></li><lidata-kapitel="modellierung.html"><ahref="modellierung.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 4: Vom Management-Wunsch zum Modell</span></a></li><lidata-kapitel="synthese-grundlagen.html"><ahref="synthese-grundlagen.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Synthese Teil I</span></a></li></ul></details><detailsclass="sidebar-gruppe"><summary>Teil II: Die Kernverfahren der deterministischen Optimierung</summary><ul><lidata-kapitel="lp.html"><ahref="lp.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 5: Lineare Programmierung — Simplex, Dualität und Schattenpreise</span></a></li><lidata-kapitel="milp.html"><ahref="milp.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 6: Gemischt-ganzzahlige Optimierung — Diskrete Entscheidungen und Branch-and-Bound{idx:Branch-and-Bound}</span></a></li><lidata-kapitel="cpsat.html"><ahref="cpsat.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 7: Constraint Programming mit CP-SAT{idx:CP-SAT} — Logik, Scheduling und Zuweisung</span></a></li><lidata-kapitel="graphen.html"><ahref="graphen.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 8: Graphen, Flüsse und Touren — Min-Cost-Flow, Matching und VRP</span></a></li><lidata-kapitel="metaheuristiken.html"><ahref="metaheuristiken.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 9: Metaheuristiken — wenn der exakte Solver aussteigt</span></a></li><lidata-kapitel="dekomposition.html"><ahref="dekomposition.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Kapitel 10: Spaltengenerierung — das Modell umbauen statt die Lösung raten</span></a></li><lidata-kapitel="synthese-kernverfahren.html"><ahref="synthese-kernverfahren.html"><spanclass="fortschritt-haken"><svgclass="icon"aria-hidden="true"><usehref="#icon-check"></use></svg></span><span>Synthese Teil II</span></a></li></ul></details><detailsclass="sidebar-gruppe"><summary>Teil III:
<h1>Notebooks</h1><p>Zu jedem Kapitel gehört ein Jupyter-Notebook mit allen Codeblöcken in Lesereihenfolge — insgesamt 25. Drei Wege, sie auszuführen: in einer lokalen <strong>Jupyter</strong>-Installation öffnen, in <strong>Google Colab</strong> hochladen, oder mit dem <strong>Kurs-Image</strong> starten, das alle Solver mitbringt:</p><pre><code>docker run --rm -p 127.0.0.1:8888:8888 or-mit-python</code></pre><pclass="notebook-archiv"><aclass="download-link"href="Notebooks_04.zip"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> Alle 25 Notebooks als ZIP (208 KB)</a></p><sectionclass="programmgruppe"><h2>Vorspann</h2><ulclass="programmliste"><li><ahref="vorwort.html">Vorwort & Lesehilfe</a><aclass="download-link"href="Notebooks_04/vorwort.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> vorwort.ipynb</a></li></ul></section><sectionclass="programmgruppe"><h2>Kapitel</h2><ulclass="programmliste"><li><ahref="einfuehrung.html">Kapitel 1: Einführung in Operations Research — Vom Ursprung zur mathematischen Entscheidungsfindung</a><aclass="download-link"href="Notebooks_04/einfuehrung.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> einfuehrung.ipynb</a></li><li><ahref="fundament.html">Kapitel 2: Das mathematische Fundament — Vektoren, Matrizen, Konvexität{idx:Konvexität}</a><aclass="download-link"href="Notebooks_04/fundament.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> fundament.ipynb</a></li><li><ahref="oekosystem.html">Kapitel 3: Das Python-Ökosystem für OR — Solver, Bindings und Modellierungsschichten</a><aclass="download-link"href="Notebooks_04/oekosystem.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> oekosystem.ipynb</a></li><li><ahref="modellierung.html">Kapitel 4: Vom Management-Wunsch zum Modell</a><aclass="download-link"href="Notebooks_04/modellierung.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> modellierung.ipynb</a></li><li><ahref="lp.html">Kapitel 5: Lineare Programmierung — Simplex, Dualität und Schattenpreise</a><aclass="download-link"href="Notebooks_04/lp.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> lp.ipynb</a></li><li><ahref="milp.html">Kapitel 6: Gemischt-ganzzahlige Optimierung — Diskrete Entscheidungen und Branch-and-Bound{idx:Branch-and-Bound}</a><aclass="download-link"href="Notebooks_04/milp.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> milp.ipynb</a></li><li><ahref="cpsat.html">Kapitel 7: Constraint Programming mit CP-SAT{idx:CP-SAT} — Logik, Scheduling und Zuweisung</a><aclass="download-link"href="Notebooks_04/cpsat.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> cpsat.ipynb</a></li><li><ahref="graphen.html">Kapitel 8: Graphen, Flüsse und Touren — Min-Cost-Flow, Matching und VRP</a><aclass="download-link"href="Notebooks_04/graphen.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> graphen.ipynb</a></li><li><ahref="metaheuristiken.html">Kapitel 9: Metaheuristiken — wenn der exakte Solver aussteigt</a><aclass="download-link"href="Notebooks_04/metaheuristiken.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> metaheuristiken.ipynb</a></li><li><ahref="dekomposition.html">Kapitel 10: Spaltengenerierung — das Modell umbauen statt die Lösung raten</a><aclass="download-link"href="Notebooks_04/dekomposition.ipynb"download><svgclass="icon"aria-hidden="true"><usehref="#icon-download"></use></svg> dekomposition.ipynb</a></li><li><ahref="qp-nlp.html">Kapitel 11: Quadratische und nichtlineare Optimierung — KKT, Lagrange, Konvexität</a><aclass="download-link"href="Notebooks_04/qp-nlp.ipynb"download><svgclass="icon"aria-hidden=