Phase 7.3: Glossar "Deutsch - OR" - und die Gegenrichtung
Setzt Paket 7 aus Verbesserungen_03.md um. Neuer Abschnitt im Kapitel "Vom
Management-Wunsch zum Modell", unmittelbar hinter dem Gespraechsleitfaden:
Die zwoelf Fragen liefern Saetze - hier werden sie uebersetzt.
Die Abgrenzung zu Anhang B war die eigentliche Entwurfsfrage. Der
Musterkatalog hat laengst eine Spalte "Umgangssprachlich", laeuft aber in
die andere Richtung: Muster -> Formulierung. Wer aus einer Besprechung
kommt, hat den Satz und sucht den Baustein. Das Lexikon ist genau so herum
gebaut (21 Eintraege, jeweils mit B-Nummer), und Anhang B bekam einen
Rueckverweis. Kein Duplikat, sondern die fehlende Gegenrichtung.
Der Teil, der den Abschnitt traegt, ist aber nicht die Tabelle, sondern was
danach kommt: fuenf Wendungen, bei denen die Uebersetzung eine Entscheidung
erzwingt - "moeglichst", "nicht mehr als drei pro Woche", "im Durchschnitt",
"so schnell wie moeglich", "fair". Bei jeder gibt es zwei bis drei
vertretbare Modelle, und die Wahl gehoert dem Betrieb, nicht dem
Modellierer. Das ist die These des Kapitels, auf die Alltagssprache
angewandt.
Dazu die Gegenrichtung OR -> Deutsch: acht Saetze fuer die Erklaerung eines
Ergebnisses, einschliesslich der Formulierung fuer INFEASIBLE ("Ihre Regeln
widersprechen sich", nicht "der Computer schafft es nicht").
Die neue Uebungsaufgabe laesst drei Zielfunktionen fuer "gleichmaessig
ausgelastet" aufstellen; die Loesung nennt je einen Fall, in dem die Wahl
den Plan sichtbar aendert - und weist darauf hin, dass zwei der drei einen
Halbtagsmonteur bestrafen.
Mitgezogen: Lernziel, Zusammenfassung, Rueckverweis aus Anhang B, Pfad E im
Vorwort (er fuehrte bisher direkt zum Musterkatalog, jetzt ueber das
Lexikon).
Damit ist Phase 7 abgeschlossen. 296 Abschnitte, 766 Querverweise, 141
Aufgaben mit 141 Loesungen, PDF 749 Seiten.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
a0691e1919
commit
8ded88ac38
16 changed files with 695 additions and 38 deletions
Binary file not shown.
|
|
@ -260,7 +260,8 @@
|
||||||
<p>Erwartung: Das Ergebnis liegt zwischen Lesart A und B — die Regel bindet stärker als „ein Auftrag genügt”, aber schwächer als „alle Aufträge”. Der Lehrpunkt ist nicht die Zahl, sondern dass sich zwischen zwei Lesarten beliebig fein abstufen lässt, sobald man sie einmal als Ungleichung geschrieben hat.</p>
|
<p>Erwartung: Das Ergebnis liegt zwischen Lesart A und B — die Regel bindet stärker als „ein Auftrag genügt”, aber schwächer als „alle Aufträge”. Der Lehrpunkt ist nicht die Zahl, sondern dass sich zwischen zwei Lesarten beliebig fein abstufen lässt, sobald man sie einmal als Ungleichung geschrieben hat.</p>
|
||||||
<p><strong>4.4 — Zwei Ziele gleichzeitig.</strong> Bei <span class="math inline">\lambda = 0</span> ergibt sich der DB-Plan (78 500 € DB), bei großem <span class="math inline">\lambda</span> der Umsatzplan (66 000 € DB). Dazwischen kippt es an genau einer Stelle — und zwar <strong>sprunghaft</strong>, nicht allmählich: Weil die Entscheidungsvariablen binär sind, gibt es nur endlich viele Pläne, und der Wechsel erfolgt, sobald ein anderer Plan den höheren gewichteten Wert hat.</p>
|
<p><strong>4.4 — Zwei Ziele gleichzeitig.</strong> Bei <span class="math inline">\lambda = 0</span> ergibt sich der DB-Plan (78 500 € DB), bei großem <span class="math inline">\lambda</span> der Umsatzplan (66 000 € DB). Dazwischen kippt es an genau einer Stelle — und zwar <strong>sprunghaft</strong>, nicht allmählich: Weil die Entscheidungsvariablen binär sind, gibt es nur endlich viele Pläne, und der Wechsel erfolgt, sobald ein anderer Plan den höheren gewichteten Wert hat.</p>
|
||||||
<p>Der Kippwert sagt dem Betrieb etwas Konkretes: <em>„Erst wenn Ihnen ein Euro Umsatz mehr wert ist als λ Euro Deckungsbeitrag, ändert sich Ihr Plan.”</em> Das ist eine Frage, die ein Kaufmann beantworten kann — anders als „welche Gewichtung hätten Sie gern?“.</p>
|
<p>Der Kippwert sagt dem Betrieb etwas Konkretes: <em>„Erst wenn Ihnen ein Euro Umsatz mehr wert ist als λ Euro Deckungsbeitrag, ändert sich Ihr Plan.”</em> Das ist eine Frage, die ein Kaufmann beantworten kann — anders als „welche Gewichtung hätten Sie gern?“.</p>
|
||||||
<p><strong>4.5 — Die Anforderung schreiben.</strong> Eine tragfähige Anforderung enthält mindestens:</p>
|
<p><strong>4.5 — Übersetzen, wo es nicht eindeutig ist.</strong> (a) Drei Lesarten von „gleichmäßig ausgelastet”: <strong>(1) Spannweite minimieren</strong> — <span class="math inline">\max_i a_i - \min_i a_i</span>. Bestraft Ausreißer nach beiden Seiten; ein einzelner Untätiger ist genauso schlimm wie ein Überlasteter. <strong>(2) Den Schlechtestgestellten verbessern</strong> — <span class="math inline">\max_i a_i</span> minimieren (B11). Interessiert sich nicht dafür, wie ungleich die übrigen liegen, solange die Spitze sinkt. <strong>(3) Abweichung vom Mittel minimieren</strong> — <span class="math inline">\sum_i |a_i - \bar a|</span> (B10). Verteilt die Last am gleichmäßigsten, kann aber die Spitze höher lassen als (2). Wo es sichtbar wird: Bei fünf Monteuren mit 8, 8, 8, 8 und 16 Stunden senkt (2) die 16 zuerst; bei 4, 8, 8, 8, 12 tut (1) am meisten gegen die Spreizung, während (2) kaum etwas findet. Und wenn ein Monteur aus guten Gründen nur halbtags da ist, bestrafen (1) und (3) genau das — (2) nicht. (b) Hart: <span class="math inline">w_k \le 3</span> für jeden Kunden <span class="math inline">k</span>. Weich: <span class="math inline">w_k \le 3 + s_k</span> mit <span class="math inline">s_k \ge 0</span> und Strafkosten <span class="math inline">c \cdot s_k</span> in der Zielfunktion (B8, B18). Die Frage an den Betrieb ist die dritte der vier: <em>Was passiert, wenn es einmal nicht geht?</em> Führt die Antwort zu „dann müssen wir eben” — weich. Führt sie zu „das darf nicht passieren, dann rufen wir an und verschieben” — dann ist auch das ein Prozess, und die Bedingung bleibt weich, nur mit sehr hohen Strafkosten. Wirklich hart ist sie nur, wenn ein Verstoß rechtlich unmöglich ist. (c) Individuell. Prüfkriterium: Wird eine Wendung gefunden, die <strong>zwei</strong> vertretbare Modelle zulässt — und wird benannt, wer die Wahl treffen muss? Die häufigsten Kandidaten in echten Anforderungen sind „in der Regel”, „zeitnah”, „vergleichbar” und jede Zahl ohne Bezugszeitraum.</p>
|
||||||
|
<p><strong>4.6 — Die Anforderung schreiben.</strong> Eine tragfähige Anforderung enthält mindestens:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>Entscheidung:</strong> Für jede Anfrage im Planungszeitraum: annehmen oder ablehnen.</li>
|
<li><strong>Entscheidung:</strong> Für jede Anfrage im Planungszeitraum: annehmen oder ablehnen.</li>
|
||||||
<li><strong>Ziel:</strong> Deckungsbeitrag maximieren (Umsatz minus Material).</li>
|
<li><strong>Ziel:</strong> Deckungsbeitrag maximieren (Umsatz minus Material).</li>
|
||||||
|
|
|
||||||
|
|
@ -316,6 +316,7 @@
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
|
<p><strong>Umgekehrte Richtung:</strong> Wer von einem Satz aus der Besprechung kommt und das Muster sucht, findet in <a href="modellierung.html#sec:modellierung-glossar">Abschnitt 4.6</a> ein Lexikon, das genau so herum aufgebaut ist — und die Wendungen benennt, bei denen es keine eindeutige Übersetzung gibt.</p>
|
||||||
<p>Die Spalte „Wo im Buch“ nennt das Kapitel, in dem das Muster <strong>im Zusammenhang</strong> vorkommt — nicht die einzige Stelle, an der es taugt. Die Nummern entstehen beim Bauen; im Quelltext dieses Anhangs steht keine einzige.</p>
|
<p>Die Spalte „Wo im Buch“ nennt das Kapitel, in dem das Muster <strong>im Zusammenhang</strong> vorkommt — nicht die einzige Stelle, an der es taugt. Die Nummern entstehen beim Bauen; im Quelltext dieses Anhangs steht keine einzige.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<hr />
|
<hr />
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -555,11 +555,16 @@
|
||||||
<li><a href="#teil-4-ein-quartal-später" id="toc-teil-4-ein-quartal-später">Teil 4: Ein Quartal später</a></li>
|
<li><a href="#teil-4-ein-quartal-später" id="toc-teil-4-ein-quartal-später">Teil 4: Ein Quartal später</a></li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li><a href="#sec:modellierung-leitfaden" id="toc-sec:modellierung-leitfaden">4.5 Der Gesprächsleitfaden</a></li>
|
<li><a href="#sec:modellierung-leitfaden" id="toc-sec:modellierung-leitfaden">4.5 Der Gesprächsleitfaden</a></li>
|
||||||
<li><a href="#sec:modellierung-uebungsaufgaben" id="toc-sec:modellierung-uebungsaufgaben">4.6 Übungsaufgaben</a></li>
|
<li><a href="#sec:modellierung-glossar" id="toc-sec:modellierung-glossar">4.6 Deutsch — OR: ein Übersetzungslexikon</a>
|
||||||
<li><a href="#sec:modellierung-denkfehler" id="toc-sec:modellierung-denkfehler">4.7 Finde den Denkfehler</a></li>
|
<ul>
|
||||||
<li><a href="#sec:modellierung-quiz" id="toc-sec:modellierung-quiz">4.8 Micro-Quiz</a></li>
|
<li><a href="#fünf-wendungen-bei-denen-die-übersetzung-eine-entscheidung-erzwingt" id="toc-fünf-wendungen-bei-denen-die-übersetzung-eine-entscheidung-erzwingt">Fünf Wendungen, bei denen die Übersetzung eine Entscheidung erzwingt</a></li>
|
||||||
<li><a href="#sec:modellierung-selbsttest" id="toc-sec:modellierung-selbsttest">4.9 Selbsttest</a></li>
|
<li><a href="#und-die-gegenrichtung-or-deutsch" id="toc-und-die-gegenrichtung-or-deutsch">Und die Gegenrichtung: OR — Deutsch</a></li>
|
||||||
<li><a href="#sec:modellierung-zusammenfassung" id="toc-sec:modellierung-zusammenfassung">4.10 Zusammenfassung</a></li>
|
</ul></li>
|
||||||
|
<li><a href="#sec:modellierung-uebungsaufgaben" id="toc-sec:modellierung-uebungsaufgaben">4.7 Übungsaufgaben</a></li>
|
||||||
|
<li><a href="#sec:modellierung-denkfehler" id="toc-sec:modellierung-denkfehler">4.8 Finde den Denkfehler</a></li>
|
||||||
|
<li><a href="#sec:modellierung-quiz" id="toc-sec:modellierung-quiz">4.9 Micro-Quiz</a></li>
|
||||||
|
<li><a href="#sec:modellierung-selbsttest" id="toc-sec:modellierung-selbsttest">4.10 Selbsttest</a></li>
|
||||||
|
<li><a href="#sec:modellierung-zusammenfassung" id="toc-sec:modellierung-zusammenfassung">4.11 Zusammenfassung</a></li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li><a href="#teil-kernverfahren" id="toc-teil-kernverfahren">Teil II: Die Kernverfahren der deterministischen Optimierung</a></li>
|
<li><a href="#teil-kernverfahren" id="toc-teil-kernverfahren">Teil II: Die Kernverfahren der deterministischen Optimierung</a></li>
|
||||||
<li><a href="#kap-lp" id="toc-kap-lp">Kapitel 5: Lineare Programmierung — Simplex, Dualität und Schattenpreise</a>
|
<li><a href="#kap-lp" id="toc-kap-lp">Kapitel 5: Lineare Programmierung — Simplex, Dualität und Schattenpreise</a>
|
||||||
|
|
@ -1582,7 +1587,7 @@ Alles bereit — Sie können mit dem ersten Kapitel beginnen.</code></pre>
|
||||||
<h3 class="unnumbered" id="pfad-d-quantitative-finance-ca.-30-stunden">Pfad D — Quantitative Finance (ca. 30 Stunden)</h3>
|
<h3 class="unnumbered" id="pfad-d-quantitative-finance-ca.-30-stunden">Pfad D — Quantitative Finance (ca. 30 Stunden)</h3>
|
||||||
<p><a href="#kap-einfuehrung">Kapitel 1</a> → <a href="#kap-fundament">Kapitel 2</a> → <a href="#kap-qp-nlp">Kapitel 11</a> (QP, KKT) → <a href="#kap-finanzdaten">Kapitel 18</a> (Daten, Shrinkage) → <a href="#kap-markowitz">Kapitel 19</a> (Markowitz) → <a href="#kap-cvar">Kapitel 20</a> (CVaR) → <a href="#kap-handelsmaschine">Kapitel 21</a> (Backtest) → Projekt <strong>P6</strong> (Portfolio-Rebalancer) oder <strong>P7</strong> (Risikoreport). <strong>Wichtig:</strong> Überspringen Sie <a href="#kap-finanzdaten">Kapitel 18</a> nicht. Wer direkt bei Markowitz einsteigt, optimiert Schätzrauschen und wundert sich über absurde Gewichte.</p>
|
<p><a href="#kap-einfuehrung">Kapitel 1</a> → <a href="#kap-fundament">Kapitel 2</a> → <a href="#kap-qp-nlp">Kapitel 11</a> (QP, KKT) → <a href="#kap-finanzdaten">Kapitel 18</a> (Daten, Shrinkage) → <a href="#kap-markowitz">Kapitel 19</a> (Markowitz) → <a href="#kap-cvar">Kapitel 20</a> (CVaR) → <a href="#kap-handelsmaschine">Kapitel 21</a> (Backtest) → Projekt <strong>P6</strong> (Portfolio-Rebalancer) oder <strong>P7</strong> (Risikoreport). <strong>Wichtig:</strong> Überspringen Sie <a href="#kap-finanzdaten">Kapitel 18</a> nicht. Wer direkt bei Markowitz einsteigt, optimiert Schätzrauschen und wundert sich über absurde Gewichte.</p>
|
||||||
<h3 class="unnumbered" id="pfad-e-ich-habe-morgen-ein-konkretes-problem-24-stunden">Pfad E — Ich habe morgen ein konkretes Problem (2–4 Stunden)</h3>
|
<h3 class="unnumbered" id="pfad-e-ich-habe-morgen-ein-konkretes-problem-24-stunden">Pfad E — Ich habe morgen ein konkretes Problem (2–4 Stunden)</h3>
|
||||||
<p>Lesen Sie <a href="#sec:einfuehrung-historischer-kontext-und-evolution">Abschnitt 1.5</a> (die vier Bausteine), dann <a href="#anhang-modellierungsmuster">Anhang B</a> (<strong>Modellierungsmuster</strong>) und suchen Sie dort das Muster, das zu Ihrem Problem passt. Von jedem Muster führt ein Verweis in das zuständige Kapitel. Wie die gewählte Bibliothek es schreibt, steht in <a href="#anhang-spickzettel">Anhang D</a> (<strong>Spickzettel</strong>); wenn etwas nicht läuft, in <a href="#anhang-fehlerdiagnose">Anhang C</a> (<strong>Fehlerdiagnose</strong>).</p>
|
<p>Lesen Sie <a href="#sec:einfuehrung-historischer-kontext-und-evolution">Abschnitt 1.5</a> (die vier Bausteine) und <a href="#sec:modellierung-glossar">Abschnitt 4.6</a> (welcher Satz welcher Baustein ist), dann <a href="#anhang-modellierungsmuster">Anhang B</a> (<strong>Modellierungsmuster</strong>) und suchen Sie dort das Muster, das zu Ihrem Problem passt. Von jedem Muster führt ein Verweis in das zuständige Kapitel. Wie die gewählte Bibliothek es schreibt, steht in <a href="#anhang-spickzettel">Anhang D</a> (<strong>Spickzettel</strong>); wenn etwas nicht läuft, in <a href="#anhang-fehlerdiagnose">Anhang C</a> (<strong>Fehlerdiagnose</strong>).</p>
|
||||||
<h3 class="unnumbered" id="pfad-f-vom-prototyp-in-den-betrieb-ca.-15-stunden">Pfad F — Vom Prototyp in den Betrieb (ca. 15 Stunden)</h3>
|
<h3 class="unnumbered" id="pfad-f-vom-prototyp-in-den-betrieb-ca.-15-stunden">Pfad F — Vom Prototyp in den Betrieb (ca. 15 Stunden)</h3>
|
||||||
<p>Für alle, deren Modell <strong>rechnet</strong> und die es jetzt jemand anderem übergeben müssen: <a href="#kap-praxisfallen">Kapitel 22</a> (die fünf Praxisfallen, <code>or_kern.py</code>, Erklärbarkeit) → <a href="#kap-testing">Kapitel 23</a> (Testsuite, Mutationstest, Benchmark, HTTP-Dienst) → <a href="#anhang-fehlerdiagnose">Anhang C</a> als Nachschlagewerk für den Ernstfall, dann Projekt <strong>P11</strong> (Vom Skript zum Dienst). Setzt voraus, dass Sie mindestens einen der Pfade B, C oder D hinter sich haben — P11 baut auf einem Modell auf, das Sie schon haben.</p>
|
<p>Für alle, deren Modell <strong>rechnet</strong> und die es jetzt jemand anderem übergeben müssen: <a href="#kap-praxisfallen">Kapitel 22</a> (die fünf Praxisfallen, <code>or_kern.py</code>, Erklärbarkeit) → <a href="#kap-testing">Kapitel 23</a> (Testsuite, Mutationstest, Benchmark, HTTP-Dienst) → <a href="#anhang-fehlerdiagnose">Anhang C</a> als Nachschlagewerk für den Ernstfall, dann Projekt <strong>P11</strong> (Vom Skript zum Dienst). Setzt voraus, dass Sie mindestens einen der Pfade B, C oder D hinter sich haben — P11 baut auf einem Modell auf, das Sie schon haben.</p>
|
||||||
<p><em>Der Kern in einem Satz:</em> Ein Modell, das nur auf Ihrem Rechner und nur mit Ihren Daten läuft, ist ein Prototyp — kein System.</p>
|
<p><em>Der Kern in einem Satz:</em> Ein Modell, das nur auf Ihrem Rechner und nur mit Ihren Daten läuft, ist ein Prototyp — kein System.</p>
|
||||||
|
|
@ -6928,6 +6933,7 @@ Deckungsbeitrag maximieren -> BD Umsatz 40,000 DB 19,000</code></pre>
|
||||||
<li>… erkennen, dass ein Satz wie „Stammkunden dürfen wir nicht verlieren” mehrere Lesarten hat, und den Unterschied in Euro beziffern.</li>
|
<li>… erkennen, dass ein Satz wie „Stammkunden dürfen wir nicht verlieren” mehrere Lesarten hat, und den Unterschied in Euro beziffern.</li>
|
||||||
<li>… begründen, wann eine Regel hart und wann sie weich sein muss — und was eine harte Regel im Betrieb anrichtet, wenn sie einmal nicht erfüllbar ist.</li>
|
<li>… begründen, wann eine Regel hart und wann sie weich sein muss — und was eine harte Regel im Betrieb anrichtet, wenn sie einmal nicht erfüllbar ist.</li>
|
||||||
<li>… einen Kennzahlen-Fehlanreiz benennen, bevor er in die Zielfunktion gerät.</li>
|
<li>… einen Kennzahlen-Fehlanreiz benennen, bevor er in die Zielfunktion gerät.</li>
|
||||||
|
<li>… einen Satz aus einer Besprechung in den passenden Modellierungsbaustein übersetzen — und die fünf Wendungen erkennen, bei denen genau das nicht geht, ohne vorher nachzufragen.</li>
|
||||||
</ol>
|
</ol>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-vier-fragen">4.3 Ein Satz ist noch kein Modell</h2>
|
<h2 id="sec:modellierung-vier-fragen">4.3 Ein Satz ist noch kein Modell</h2>
|
||||||
|
|
@ -7450,7 +7456,219 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
<p>Frage 5 ist die wichtigste. Sie verwandelt eine abstrakte Zielangabe in einen konkreten Plan, den man ablehnen kann — und Ablehnung ist die einzige Form von Anforderungsklärung, die zuverlässig funktioniert.</p>
|
<p>Frage 5 ist die wichtigste. Sie verwandelt eine abstrakte Zielangabe in einen konkreten Plan, den man ablehnen kann — und Ablehnung ist die einzige Form von Anforderungsklärung, die zuverlässig funktioniert.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-uebungsaufgaben">4.6 Übungsaufgaben</h2>
|
<h2 id="sec:modellierung-glossar">4.6 Deutsch — OR: ein Übersetzungslexikon</h2>
|
||||||
|
<p>Die zwölf Fragen liefern Sätze. Sätze sind noch kein Modell — aber die meisten von ihnen haben eine <strong>Standardübersetzung</strong>, und wer sie kennt, spart sich das Nachdenken für die Fälle, in denen es keine gibt.</p>
|
||||||
|
<p>Die Tabelle liest sich von links nach rechts: Was in der Besprechung <strong>gesagt</strong> wird, was es <strong>bedeutet</strong>, und welcher <strong>Baustein</strong> daraus wird. Die B-Nummern verweisen auf <a href="#anhang-modellierungsmuster">Anhang B</a>, wo jedes Muster mit Formulierung und Code steht.</p>
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 33%" />
|
||||||
|
<col style="width: 33%" />
|
||||||
|
<col style="width: 33%" />
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr class="header">
|
||||||
|
<th>Was gesagt wird</th>
|
||||||
|
<th>Was gemeint ist</th>
|
||||||
|
<th>Baustein</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Wir haben nur 400 Stunden.”</td>
|
||||||
|
<td>eine Obergrenze, die nicht überschritten werden darf</td>
|
||||||
|
<td>harte Kapazitätsgrenze <span class="math inline">\le b</span> (<a href="#kap-lp">Kapitel 5</a>)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Mehr als zwei Millionen gibt es nicht.”</td>
|
||||||
|
<td>dasselbe, auf Geld</td>
|
||||||
|
<td>Budgetlimit (B27)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Möglichst nicht über 40 Stunden.”</td>
|
||||||
|
<td>eine Grenze, die im Notfall gebrochen werden darf</td>
|
||||||
|
<td>weiche Grenze mit Strafkosten (B8)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Wir können nur ganze Kisten liefern.”</td>
|
||||||
|
<td>die Menge ist nicht teilbar</td>
|
||||||
|
<td>Ganzzahligkeitsbedingung (<a href="#kap-milp">Kapitel 6</a>)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Wenn wir die Anlage nutzen, fallen Fixkosten an.”</td>
|
||||||
|
<td>Kosten, die erst ab der ersten Einheit anfallen</td>
|
||||||
|
<td>Aktivierungsschalter (B1)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Entweder gar nicht oder mindestens 50.”</td>
|
||||||
|
<td>kein Betrieb im Kleinen</td>
|
||||||
|
<td>semikontinuierliche Variable (B2)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Wenn wir A bauen, brauchen wir auch B.”</td>
|
||||||
|
<td>eine Folgeverpflichtung</td>
|
||||||
|
<td>Implikation (B3)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Höchstens drei Positionen im Depot.”</td>
|
||||||
|
<td>eine Obergrenze auf die <strong>Anzahl</strong>, nicht die Menge</td>
|
||||||
|
<td>Kardinalität (B6)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Der Anteil muss mindestens 30 % betragen.”</td>
|
||||||
|
<td>eine Bedingung auf ein <strong>Verhältnis</strong></td>
|
||||||
|
<td>Verhältnis-Bedingung (B12)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Jeder Auftrag genau einem Mitarbeiter.”</td>
|
||||||
|
<td>eine vollständige, eindeutige Zuordnung</td>
|
||||||
|
<td>Zuordnung 1:1 (B23)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Eine Maschine kann nur eines gleichzeitig.”</td>
|
||||||
|
<td>zeitliche Ausschließlichkeit</td>
|
||||||
|
<td>Nichtüberlappung (B14)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„B kann erst nach A.”</td>
|
||||||
|
<td>eine Reihenfolge</td>
|
||||||
|
<td>Vorrangbeziehung (B13)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Höchstens fünf Tage am Stück.”</td>
|
||||||
|
<td>eine Bedingung über ein <strong>gleitendes Fenster</strong></td>
|
||||||
|
<td>gleitendes Fenster (B16)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Umstellen kostet uns eine halbe Stunde.”</td>
|
||||||
|
<td>reihenfolgeabhängige Kosten</td>
|
||||||
|
<td>Umrüstkosten (B17), Rüstzeit als Kapazität (B26)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Was reinkommt, muss auch wieder raus.”</td>
|
||||||
|
<td>Erhaltung an jedem Knoten</td>
|
||||||
|
<td>Flusserhaltung (B22)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Notfalls brechen wir die Regel.”</td>
|
||||||
|
<td>die Bedingung ist weich, aber teuer</td>
|
||||||
|
<td>Schlupfvariablen (B18)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Erst Termintreue, dann Kosten.”</td>
|
||||||
|
<td>eine Rangfolge zwischen Zielen</td>
|
||||||
|
<td>hierarchische Ziele (B19)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Es soll gerecht zugehen.”</td>
|
||||||
|
<td>den Schlechtestgestellten verbessern</td>
|
||||||
|
<td>Min/Max in der Zielfunktion (B11)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Was brächte uns eine zusätzliche Stunde?”</td>
|
||||||
|
<td>die Frage nach dem Grenzwert einer Ressource</td>
|
||||||
|
<td>Schattenpreis (<a href="#kap-lp">Kapitel 5</a>, <a href="#sec:praxisfallen-attribution">Abschnitt 22.4</a>)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Mit 95 % Sicherheit muss es halten.”</td>
|
||||||
|
<td>eine Zusage auf eine <strong>Quote</strong>, nicht auf einen Mittelwert</td>
|
||||||
|
<td>Chance Constraint (<a href="#sec:unsicherheit-chance-constraints">Abschnitt 12.7</a>)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Wir sichern uns gegen Schätzfehler ab.”</td>
|
||||||
|
<td>gegen die ungünstigste Parameterlage planen</td>
|
||||||
|
<td>Worst-Case-Abzug (B21)</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h3 id="fünf-wendungen-bei-denen-die-übersetzung-eine-entscheidung-erzwingt">Fünf Wendungen, bei denen die Übersetzung eine Entscheidung erzwingt</h3>
|
||||||
|
<p>Die Tabelle oben tut so, als sei die Zuordnung eindeutig. Bei den folgenden fünf ist sie es nicht — und <strong>das Nachfragen ist die eigentliche Modellierungsarbeit</strong>:</p>
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 50%" />
|
||||||
|
<col style="width: 50%" />
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr class="header">
|
||||||
|
<th>Wendung</th>
|
||||||
|
<th>Die Frage, die dahinter steckt</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="odd">
|
||||||
|
<td><strong>„möglichst”</strong></td>
|
||||||
|
<td>Hart oder weich? Und wenn weich: Was darf ein Verstoß kosten? Ohne Zahl ist „möglichst” keine Bedingung, sondern eine Stimmung.</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td><strong>„nicht mehr als drei pro Woche”</strong></td>
|
||||||
|
<td>Je Person oder über alle zusammen? Kalenderwoche oder gleitende sieben Tage? Beide Lesarten sind vertretbar und ergeben verschiedene Modelle.</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td><strong>„im Durchschnitt”</strong></td>
|
||||||
|
<td>Fast immer eine Falle. Der Durchschnittskunde kauft nie — siehe <a href="#sec:unsicherheit-der-fluch-des-durchschnitts">Abschnitt 12.3</a>. Gemeint ist meist ein Quantil („in 9 von 10 Fällen”).</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td><strong>„so schnell wie möglich”</strong></td>
|
||||||
|
<td>Welche Zahl? Ende des letzten Auftrags, Summe aller Fertigstellungszeiten oder größte Verspätung? Drei Zielfunktionen, drei verschiedene Pläne.</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td><strong>„fair”</strong></td>
|
||||||
|
<td>Den Schlechtesten verbessern, die Spannweite verkleinern oder gleiche Anteile erzwingen? Erst die Wahl macht daraus ein Modell — und sie gehört dem Betrieb, nicht dem Modellierer.</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<blockquote>
|
||||||
|
<p><strong>🎯 Der Nutzen dieser Liste</strong> Sie ersetzt kein Nachdenken. Sie sorgt dafür, dass das Nachdenken an den <strong>richtigen</strong> vier oder fünf Stellen stattfindet, statt an allen zwanzig gleichzeitig.</p>
|
||||||
|
</blockquote>
|
||||||
|
<h3 id="und-die-gegenrichtung-or-deutsch">Und die Gegenrichtung: OR — Deutsch</h3>
|
||||||
|
<p>Dieselbe Barriere gibt es rückwärts. Diese Sätze haben sich bewährt, wenn ein Ergebnis jemandem erklärt werden muss, der das Modell nicht kennt:</p>
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 50%" />
|
||||||
|
<col style="width: 50%" />
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr class="header">
|
||||||
|
<th>Fachbegriff</th>
|
||||||
|
<th>Was Sie in der Besprechung sagen</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>Schattenpreis / Dualwert</td>
|
||||||
|
<td>„Die nächste Stunde auf dieser Maschine wäre uns 9 € wert.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>bindende Bedingung mit Dualwert 0</td>
|
||||||
|
<td>„Die Regel berührt den Plan, kostet uns aber nichts — dort zu verhandeln bringt nichts.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td><code>INFEASIBLE</code></td>
|
||||||
|
<td>„Ihre Regeln widersprechen sich.” <strong>Nicht:</strong> „Der Computer schafft es nicht.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>Optimalitätslücke von 2 %</td>
|
||||||
|
<td>„Besser als das hier geht es höchstens um 2 % — und die liegen unter unserer Datenungenauigkeit.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>CVaR</td>
|
||||||
|
<td>„Wenn es schiefgeht, verlieren wir im Mittel so viel.” (Der VaR sagt nur, <strong>ob</strong> es schiefgeht.)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>EVPI</td>
|
||||||
|
<td>„Selbst eine perfekte Prognose wäre uns höchstens so viel wert.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>Relaxation</td>
|
||||||
|
<td>„Wir haben die Regel probeweise gelockert, um zu sehen, was sie kostet.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>Chance Constraint</td>
|
||||||
|
<td>„Der Plan hält in 95 von 100 Fällen — und der nächste Prozentpunkt kostet …”</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<hr />
|
||||||
|
<h2 id="sec:modellierung-uebungsaufgaben">4.7 Übungsaufgaben</h2>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p>Lösungen: <a href="#sec:loesungen-modellierung">Abschnitt A.4</a>.</p>
|
<p>Lösungen: <a href="#sec:loesungen-modellierung">Abschnitt A.4</a>.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
@ -7458,9 +7676,10 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
<p><strong>Aufgabe 4.2 ⭐ — Frage 5 anwenden.</strong> Ein Krankenhaus möchte „die Wartezeiten in der Notaufnahme senken”. Wenden Sie Frage 5 an: Welcher Plan käme heraus, wenn genau die durchschnittliche Wartezeit minimiert würde — und was wäre daran nicht akzeptabel?</p>
|
<p><strong>Aufgabe 4.2 ⭐ — Frage 5 anwenden.</strong> Ein Krankenhaus möchte „die Wartezeiten in der Notaufnahme senken”. Wenden Sie Frage 5 an: Welcher Plan käme heraus, wenn genau die durchschnittliche Wartezeit minimiert würde — und was wäre daran nicht akzeptabel?</p>
|
||||||
<p><strong>Aufgabe 4.3 ⭐⭐ — Der Kompromiss dazwischen.</strong> Zwischen Lesart A (12 500 €) und Lesart B (3 500 €) liegt Spielraum. Bauen Sie eine Variante, in der jeder Stammkunde <strong>mindestens die Hälfte</strong> seiner Auftragsstunden zugeteilt bekommt. Was kostet sie?</p>
|
<p><strong>Aufgabe 4.3 ⭐⭐ — Der Kompromiss dazwischen.</strong> Zwischen Lesart A (12 500 €) und Lesart B (3 500 €) liegt Spielraum. Bauen Sie eine Variante, in der jeder Stammkunde <strong>mindestens die Hälfte</strong> seiner Auftragsstunden zugeteilt bekommt. Was kostet sie?</p>
|
||||||
<p><strong>Aufgabe 4.4 ⭐⭐ — Zwei Ziele gleichzeitig.</strong> Maximieren Sie <span class="math inline">\text{DB} + \lambda \cdot \text{Umsatz}</span> für <span class="math inline">\lambda \in \{0; 0{,}1; 0{,}3; 1\}</span> und tragen Sie die Ergebnisse als Tabelle auf. Ab welchem <span class="math inline">\lambda</span> kippt der Plan von der DB- in die Umsatzlösung? Was sagt dieser Wert dem Betrieb?</p>
|
<p><strong>Aufgabe 4.4 ⭐⭐ — Zwei Ziele gleichzeitig.</strong> Maximieren Sie <span class="math inline">\text{DB} + \lambda \cdot \text{Umsatz}</span> für <span class="math inline">\lambda \in \{0; 0{,}1; 0{,}3; 1\}</span> und tragen Sie die Ergebnisse als Tabelle auf. Ab welchem <span class="math inline">\lambda</span> kippt der Plan von der DB- in die Umsatzlösung? Was sagt dieser Wert dem Betrieb?</p>
|
||||||
<p><strong>Aufgabe 4.5 ⭐⭐⭐ — Die Anforderung schreiben.</strong> Formulieren Sie für den Fall dieses Kapitels eine vollständige, prüfbare Anforderung: Ziel, harte Regeln, weiche Regeln mit Strafgewichten, Verhalten bei Unlösbarkeit, auszuweisende Kennzahlen. Zwei Seiten genügen — sie sind mehr wert als zwei Wochen Programmierung.</p>
|
<p><strong>Aufgabe 4.5 ⭐⭐ — Übersetzen, wo es nicht eindeutig ist.</strong> Übersetzen Sie mit <a href="#sec:modellierung-glossar">Abschnitt 4.6</a>: (a) „Die Monteure sollen möglichst gleichmäßig ausgelastet sein.” Nennen Sie <strong>drei</strong> Zielfunktionen, die alle „gleichmäßig” bedeuten können, und je einen Fall, in dem die Wahl den Plan sichtbar ändert. (b) „Kein Kunde darf länger als drei Tage warten.” Formulieren Sie die Bedingung einmal hart und einmal weich. Welche Frage müssen Sie dem Betrieb stellen, um zu entscheiden? (c) Suchen Sie in einer echten Anforderung aus Ihrem Umfeld einen Satz, der nach der Tabelle eindeutig aussieht, es aber nicht ist.</p>
|
||||||
|
<p><strong>Aufgabe 4.6 ⭐⭐⭐ — Die Anforderung schreiben.</strong> Formulieren Sie für den Fall dieses Kapitels eine vollständige, prüfbare Anforderung: Ziel, harte Regeln, weiche Regeln mit Strafgewichten, Verhalten bei Unlösbarkeit, auszuweisende Kennzahlen. Zwei Seiten genügen — sie sind mehr wert als zwei Wochen Programmierung.</p>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-denkfehler">4.7 Finde den Denkfehler</h2>
|
<h2 id="sec:modellierung-denkfehler">4.8 Finde den Denkfehler</h2>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p><strong>🐛 „Die Engpassmaschine soll zu mindestens 92 % ausgelastet sein”</strong></p>
|
<p><strong>🐛 „Die Engpassmaschine soll zu mindestens 92 % ausgelastet sein”</strong></p>
|
||||||
<p>Der Werkleiter formuliert eine klare, messbare, prüfbare Anforderung:</p>
|
<p>Der Werkleiter formuliert eine klare, messbare, prüfbare Anforderung:</p>
|
||||||
|
|
@ -7472,7 +7691,7 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
<p>Ein Hinweis für den zweiten: Sehen Sie sich an, was das Modell im Abnahmetest <em>tatsächlich</em> geprüft hat — und rechnen Sie einen Monat durch, in dem weniger Anfragen hereinkommen.</p>
|
<p>Ein Hinweis für den zweiten: Sehen Sie sich an, was das Modell im Abnahmetest <em>tatsächlich</em> geprüft hat — und rechnen Sie einen Monat durch, in dem weniger Anfragen hereinkommen.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-quiz">4.8 Micro-Quiz</h2>
|
<h2 id="sec:modellierung-quiz">4.9 Micro-Quiz</h2>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p><strong>❓ Drei Fragen</strong></p>
|
<p><strong>❓ Drei Fragen</strong></p>
|
||||||
<p><strong>1. Warum liefert „Umsatz maximieren” hier einen schlechteren Plan als „Deckungsbeitrag maximieren”, obwohl beide Modelle korrekt sind?</strong> a) Weil der Solver bei Umsatzzielen ungenauer rechnet. b) Weil alles, was nicht in der Zielfunktion steht, für das Modell wertlos ist — nicht weniger wichtig. c) Weil Umsatzdaten in der Praxis unzuverlässiger sind als Kostendaten.</p>
|
<p><strong>1. Warum liefert „Umsatz maximieren” hier einen schlechteren Plan als „Deckungsbeitrag maximieren”, obwohl beide Modelle korrekt sind?</strong> a) Weil der Solver bei Umsatzzielen ungenauer rechnet. b) Weil alles, was nicht in der Zielfunktion steht, für das Modell wertlos ist — nicht weniger wichtig. c) Weil Umsatzdaten in der Praxis unzuverlässiger sind als Kostendaten.</p>
|
||||||
|
|
@ -7480,7 +7699,7 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
<p><strong>3. Alle drei Zielgrößen erreichen 100 % Auslastung. Was folgt daraus?</strong> a) Die Auslastung war schon vorher optimal, das Projekt ist überflüssig. b) Bei knapper Kapazität ist volle Auslastung die Voreinstellung; zu entscheiden ist nur, <em>womit</em> die Maschine voll wird. c) Die Kapazitätsdaten sind vermutlich falsch erfasst.</p>
|
<p><strong>3. Alle drei Zielgrößen erreichen 100 % Auslastung. Was folgt daraus?</strong> a) Die Auslastung war schon vorher optimal, das Projekt ist überflüssig. b) Bei knapper Kapazität ist volle Auslastung die Voreinstellung; zu entscheiden ist nur, <em>womit</em> die Maschine voll wird. c) Die Kapazitätsdaten sind vermutlich falsch erfasst.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-selbsttest">4.9 Selbsttest</h2>
|
<h2 id="sec:modellierung-selbsttest">4.10 Selbsttest</h2>
|
||||||
<ol type="1">
|
<ol type="1">
|
||||||
<li>Warum ist „Was ist Ihnen wichtig?” eine schlechte Frage und „Welche Zahl steht im Jahresbericht?” eine gute?</li>
|
<li>Warum ist „Was ist Ihnen wichtig?” eine schlechte Frage und „Welche Zahl steht im Jahresbericht?” eine gute?</li>
|
||||||
<li>Nennen Sie zwei Kennzahlen aus Ihrem eigenen Arbeitsumfeld, deren Maximierung schaden würde.</li>
|
<li>Nennen Sie zwei Kennzahlen aus Ihrem eigenen Arbeitsumfeld, deren Maximierung schaden würde.</li>
|
||||||
|
|
@ -7489,13 +7708,14 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
<li>Was antworten Sie auf die Frage „Was soll passieren, wenn es keine zulässige Lösung gibt?” — und warum ist „das kommt nicht vor” keine Antwort?</li>
|
<li>Was antworten Sie auf die Frage „Was soll passieren, wenn es keine zulässige Lösung gibt?” — und warum ist „das kommt nicht vor” keine Antwort?</li>
|
||||||
</ol>
|
</ol>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-zusammenfassung">4.10 Zusammenfassung</h2>
|
<h2 id="sec:modellierung-zusammenfassung">4.11 Zusammenfassung</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Ein Modell rechnet aus, was <strong>aufgeschrieben</strong> wurde, nicht was gemeint war. Die Zielfunktion ist eine vollständige Aussage: Was nicht darin steht, ist wertlos.</li>
|
<li>Ein Modell rechnet aus, was <strong>aufgeschrieben</strong> wurde, nicht was gemeint war. Die Zielfunktion ist eine vollständige Aussage: Was nicht darin steht, ist wertlos.</li>
|
||||||
<li>Die <strong>Zielgröße</strong> ist die folgenreichste Entscheidung eines OR-Projekts. Umsatz, Auslastung und Deckungsbeitrag führten hier auf demselben Datensatz zu drei verschiedenen Plänen mit 24 500 € Unterschied.</li>
|
<li>Die <strong>Zielgröße</strong> ist die folgenreichste Entscheidung eines OR-Projekts. Umsatz, Auslastung und Deckungsbeitrag führten hier auf demselben Datensatz zu drei verschiedenen Plänen mit 24 500 € Unterschied.</li>
|
||||||
<li><strong>Auslastung ist ein Ergebnis, kein Ziel.</strong> Bei knapper Kapazität ist die Maschine ohnehin voll; entscheidend ist, womit.</li>
|
<li><strong>Auslastung ist ein Ergebnis, kein Ziel.</strong> Bei knapper Kapazität ist die Maschine ohnehin voll; entscheidend ist, womit.</li>
|
||||||
<li>Ein Satz aus einer Besprechung hat meist <strong>mehrere Lesarten</strong>. „Stammkunden nicht verlieren” kostete je nach Lesart 3 500 € oder 12 500 € — bei identischem Ergebnis für die Kunden.</li>
|
<li>Ein Satz aus einer Besprechung hat meist <strong>mehrere Lesarten</strong>. „Stammkunden nicht verlieren” kostete je nach Lesart 3 500 € oder 12 500 € — bei identischem Ergebnis für die Kunden.</li>
|
||||||
<li><strong>Hart ist nur, was rechtlich oder physikalisch unmöglich ist.</strong> Eine harte Regel ist eine weiche mit hinreichend großer Strafe; der Unterschied zeigt sich erst, wenn sie einmal nicht erfüllbar ist — dann liefert die harte Variante gar nichts mehr.</li>
|
<li><strong>Hart ist nur, was rechtlich oder physikalisch unmöglich ist.</strong> Eine harte Regel ist eine weiche mit hinreichend großer Strafe; der Unterschied zeigt sich erst, wenn sie einmal nicht erfüllbar ist — dann liefert die harte Variante gar nichts mehr.</li>
|
||||||
|
<li><strong>Die meisten Sätze haben eine Standardübersetzung</strong> — das Lexikon in <a href="#sec:modellierung-glossar">Abschnitt 4.6</a> nennt sie. Sein Wert liegt aber in den fünf Wendungen, bei denen es keine gibt: „möglichst”, „nicht mehr als”, „im Durchschnitt”, „so schnell wie möglich”, „fair”. Dort ist Nachfragen die Modellierungsarbeit.</li>
|
||||||
<li>Die vier Fragen — worüber wird entschieden, woran gemessen, was ist unverhandelbar, was bei Unlösbarkeit — gehören in die erste Besprechung. Der Leitfaden in <a href="#sec:modellierung-leitfaden">Abschnitt 4.5</a> macht zwölf daraus.</li>
|
<li>Die vier Fragen — worüber wird entschieden, woran gemessen, was ist unverhandelbar, was bei Unlösbarkeit — gehören in die erste Besprechung. Der Leitfaden in <a href="#sec:modellierung-leitfaden">Abschnitt 4.5</a> macht zwölf daraus.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<hr />
|
<hr />
|
||||||
|
|
@ -29384,7 +29604,8 @@ Das zugehoerige Dockerfile ist kurz genug, um es ganz zu zeigen:
|
||||||
<p>Erwartung: Das Ergebnis liegt zwischen Lesart A und B — die Regel bindet stärker als „ein Auftrag genügt”, aber schwächer als „alle Aufträge”. Der Lehrpunkt ist nicht die Zahl, sondern dass sich zwischen zwei Lesarten beliebig fein abstufen lässt, sobald man sie einmal als Ungleichung geschrieben hat.</p>
|
<p>Erwartung: Das Ergebnis liegt zwischen Lesart A und B — die Regel bindet stärker als „ein Auftrag genügt”, aber schwächer als „alle Aufträge”. Der Lehrpunkt ist nicht die Zahl, sondern dass sich zwischen zwei Lesarten beliebig fein abstufen lässt, sobald man sie einmal als Ungleichung geschrieben hat.</p>
|
||||||
<p><strong>4.4 — Zwei Ziele gleichzeitig.</strong> Bei <span class="math inline">\lambda = 0</span> ergibt sich der DB-Plan (78 500 € DB), bei großem <span class="math inline">\lambda</span> der Umsatzplan (66 000 € DB). Dazwischen kippt es an genau einer Stelle — und zwar <strong>sprunghaft</strong>, nicht allmählich: Weil die Entscheidungsvariablen binär sind, gibt es nur endlich viele Pläne, und der Wechsel erfolgt, sobald ein anderer Plan den höheren gewichteten Wert hat.</p>
|
<p><strong>4.4 — Zwei Ziele gleichzeitig.</strong> Bei <span class="math inline">\lambda = 0</span> ergibt sich der DB-Plan (78 500 € DB), bei großem <span class="math inline">\lambda</span> der Umsatzplan (66 000 € DB). Dazwischen kippt es an genau einer Stelle — und zwar <strong>sprunghaft</strong>, nicht allmählich: Weil die Entscheidungsvariablen binär sind, gibt es nur endlich viele Pläne, und der Wechsel erfolgt, sobald ein anderer Plan den höheren gewichteten Wert hat.</p>
|
||||||
<p>Der Kippwert sagt dem Betrieb etwas Konkretes: <em>„Erst wenn Ihnen ein Euro Umsatz mehr wert ist als λ Euro Deckungsbeitrag, ändert sich Ihr Plan.”</em> Das ist eine Frage, die ein Kaufmann beantworten kann — anders als „welche Gewichtung hätten Sie gern?“.</p>
|
<p>Der Kippwert sagt dem Betrieb etwas Konkretes: <em>„Erst wenn Ihnen ein Euro Umsatz mehr wert ist als λ Euro Deckungsbeitrag, ändert sich Ihr Plan.”</em> Das ist eine Frage, die ein Kaufmann beantworten kann — anders als „welche Gewichtung hätten Sie gern?“.</p>
|
||||||
<p><strong>4.5 — Die Anforderung schreiben.</strong> Eine tragfähige Anforderung enthält mindestens:</p>
|
<p><strong>4.5 — Übersetzen, wo es nicht eindeutig ist.</strong> (a) Drei Lesarten von „gleichmäßig ausgelastet”: <strong>(1) Spannweite minimieren</strong> — <span class="math inline">\max_i a_i - \min_i a_i</span>. Bestraft Ausreißer nach beiden Seiten; ein einzelner Untätiger ist genauso schlimm wie ein Überlasteter. <strong>(2) Den Schlechtestgestellten verbessern</strong> — <span class="math inline">\max_i a_i</span> minimieren (B11). Interessiert sich nicht dafür, wie ungleich die übrigen liegen, solange die Spitze sinkt. <strong>(3) Abweichung vom Mittel minimieren</strong> — <span class="math inline">\sum_i |a_i - \bar a|</span> (B10). Verteilt die Last am gleichmäßigsten, kann aber die Spitze höher lassen als (2). Wo es sichtbar wird: Bei fünf Monteuren mit 8, 8, 8, 8 und 16 Stunden senkt (2) die 16 zuerst; bei 4, 8, 8, 8, 12 tut (1) am meisten gegen die Spreizung, während (2) kaum etwas findet. Und wenn ein Monteur aus guten Gründen nur halbtags da ist, bestrafen (1) und (3) genau das — (2) nicht. (b) Hart: <span class="math inline">w_k \le 3</span> für jeden Kunden <span class="math inline">k</span>. Weich: <span class="math inline">w_k \le 3 + s_k</span> mit <span class="math inline">s_k \ge 0</span> und Strafkosten <span class="math inline">c \cdot s_k</span> in der Zielfunktion (B8, B18). Die Frage an den Betrieb ist die dritte der vier: <em>Was passiert, wenn es einmal nicht geht?</em> Führt die Antwort zu „dann müssen wir eben” — weich. Führt sie zu „das darf nicht passieren, dann rufen wir an und verschieben” — dann ist auch das ein Prozess, und die Bedingung bleibt weich, nur mit sehr hohen Strafkosten. Wirklich hart ist sie nur, wenn ein Verstoß rechtlich unmöglich ist. (c) Individuell. Prüfkriterium: Wird eine Wendung gefunden, die <strong>zwei</strong> vertretbare Modelle zulässt — und wird benannt, wer die Wahl treffen muss? Die häufigsten Kandidaten in echten Anforderungen sind „in der Regel”, „zeitnah”, „vergleichbar” und jede Zahl ohne Bezugszeitraum.</p>
|
||||||
|
<p><strong>4.6 — Die Anforderung schreiben.</strong> Eine tragfähige Anforderung enthält mindestens:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>Entscheidung:</strong> Für jede Anfrage im Planungszeitraum: annehmen oder ablehnen.</li>
|
<li><strong>Entscheidung:</strong> Für jede Anfrage im Planungszeitraum: annehmen oder ablehnen.</li>
|
||||||
<li><strong>Ziel:</strong> Deckungsbeitrag maximieren (Umsatz minus Material).</li>
|
<li><strong>Ziel:</strong> Deckungsbeitrag maximieren (Umsatz minus Material).</li>
|
||||||
|
|
@ -30830,6 +31051,7 @@ T \ge \left(\frac{2\sigma}{\mu}\right)^2 = \left(\frac{2 \cdot 0{,}012}{0{,}0004
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
|
<p><strong>Umgekehrte Richtung:</strong> Wer von einem Satz aus der Besprechung kommt und das Muster sucht, findet in <a href="#sec:modellierung-glossar">Abschnitt 4.6</a> ein Lexikon, das genau so herum aufgebaut ist — und die Wendungen benennt, bei denen es keine eindeutige Übersetzung gibt.</p>
|
||||||
<p>Die Spalte „Wo im Buch“ nennt das Kapitel, in dem das Muster <strong>im Zusammenhang</strong> vorkommt — nicht die einzige Stelle, an der es taugt. Die Nummern entstehen beim Bauen; im Quelltext dieses Anhangs steht keine einzige.</p>
|
<p>Die Spalte „Wo im Buch“ nennt das Kapitel, in dem das Muster <strong>im Zusammenhang</strong> vorkommt — nicht die einzige Stelle, an der es taugt. Die Nummern entstehen beim Bauen; im Quelltext dieses Anhangs steht keine einzige.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<hr />
|
<hr />
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -206,6 +206,7 @@ Deckungsbeitrag maximieren -> BD Umsatz 40,000 DB 19,000</code></pre>
|
||||||
<li>… erkennen, dass ein Satz wie „Stammkunden dürfen wir nicht verlieren” mehrere Lesarten hat, und den Unterschied in Euro beziffern.</li>
|
<li>… erkennen, dass ein Satz wie „Stammkunden dürfen wir nicht verlieren” mehrere Lesarten hat, und den Unterschied in Euro beziffern.</li>
|
||||||
<li>… begründen, wann eine Regel hart und wann sie weich sein muss — und was eine harte Regel im Betrieb anrichtet, wenn sie einmal nicht erfüllbar ist.</li>
|
<li>… begründen, wann eine Regel hart und wann sie weich sein muss — und was eine harte Regel im Betrieb anrichtet, wenn sie einmal nicht erfüllbar ist.</li>
|
||||||
<li>… einen Kennzahlen-Fehlanreiz benennen, bevor er in die Zielfunktion gerät.</li>
|
<li>… einen Kennzahlen-Fehlanreiz benennen, bevor er in die Zielfunktion gerät.</li>
|
||||||
|
<li>… einen Satz aus einer Besprechung in den passenden Modellierungsbaustein übersetzen — und die fünf Wendungen erkennen, bei denen genau das nicht geht, ohne vorher nachzufragen.</li>
|
||||||
</ol>
|
</ol>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-vier-fragen">4.3 Ein Satz ist noch kein Modell</h2>
|
<h2 id="sec:modellierung-vier-fragen">4.3 Ein Satz ist noch kein Modell</h2>
|
||||||
|
|
@ -728,7 +729,219 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
<p>Frage 5 ist die wichtigste. Sie verwandelt eine abstrakte Zielangabe in einen konkreten Plan, den man ablehnen kann — und Ablehnung ist die einzige Form von Anforderungsklärung, die zuverlässig funktioniert.</p>
|
<p>Frage 5 ist die wichtigste. Sie verwandelt eine abstrakte Zielangabe in einen konkreten Plan, den man ablehnen kann — und Ablehnung ist die einzige Form von Anforderungsklärung, die zuverlässig funktioniert.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-uebungsaufgaben">4.6 Übungsaufgaben</h2>
|
<h2 id="sec:modellierung-glossar">4.6 Deutsch — OR: ein Übersetzungslexikon</h2>
|
||||||
|
<p>Die zwölf Fragen liefern Sätze. Sätze sind noch kein Modell — aber die meisten von ihnen haben eine <strong>Standardübersetzung</strong>, und wer sie kennt, spart sich das Nachdenken für die Fälle, in denen es keine gibt.</p>
|
||||||
|
<p>Die Tabelle liest sich von links nach rechts: Was in der Besprechung <strong>gesagt</strong> wird, was es <strong>bedeutet</strong>, und welcher <strong>Baustein</strong> daraus wird. Die B-Nummern verweisen auf <a href="anhang-modellierungsmuster.html#anhang-modellierungsmuster">Anhang B</a>, wo jedes Muster mit Formulierung und Code steht.</p>
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 33%" />
|
||||||
|
<col style="width: 33%" />
|
||||||
|
<col style="width: 33%" />
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr class="header">
|
||||||
|
<th>Was gesagt wird</th>
|
||||||
|
<th>Was gemeint ist</th>
|
||||||
|
<th>Baustein</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Wir haben nur 400 Stunden.”</td>
|
||||||
|
<td>eine Obergrenze, die nicht überschritten werden darf</td>
|
||||||
|
<td>harte Kapazitätsgrenze <span class="math inline">\le b</span> (<a href="lp.html#kap-lp">Kapitel 5</a>)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Mehr als zwei Millionen gibt es nicht.”</td>
|
||||||
|
<td>dasselbe, auf Geld</td>
|
||||||
|
<td>Budgetlimit (B27)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Möglichst nicht über 40 Stunden.”</td>
|
||||||
|
<td>eine Grenze, die im Notfall gebrochen werden darf</td>
|
||||||
|
<td>weiche Grenze mit Strafkosten (B8)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Wir können nur ganze Kisten liefern.”</td>
|
||||||
|
<td>die Menge ist nicht teilbar</td>
|
||||||
|
<td>Ganzzahligkeitsbedingung (<a href="milp.html#kap-milp">Kapitel 6</a>)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Wenn wir die Anlage nutzen, fallen Fixkosten an.”</td>
|
||||||
|
<td>Kosten, die erst ab der ersten Einheit anfallen</td>
|
||||||
|
<td>Aktivierungsschalter (B1)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Entweder gar nicht oder mindestens 50.”</td>
|
||||||
|
<td>kein Betrieb im Kleinen</td>
|
||||||
|
<td>semikontinuierliche Variable (B2)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Wenn wir A bauen, brauchen wir auch B.”</td>
|
||||||
|
<td>eine Folgeverpflichtung</td>
|
||||||
|
<td>Implikation (B3)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Höchstens drei Positionen im Depot.”</td>
|
||||||
|
<td>eine Obergrenze auf die <strong>Anzahl</strong>, nicht die Menge</td>
|
||||||
|
<td>Kardinalität (B6)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Der Anteil muss mindestens 30 % betragen.”</td>
|
||||||
|
<td>eine Bedingung auf ein <strong>Verhältnis</strong></td>
|
||||||
|
<td>Verhältnis-Bedingung (B12)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Jeder Auftrag genau einem Mitarbeiter.”</td>
|
||||||
|
<td>eine vollständige, eindeutige Zuordnung</td>
|
||||||
|
<td>Zuordnung 1:1 (B23)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Eine Maschine kann nur eines gleichzeitig.”</td>
|
||||||
|
<td>zeitliche Ausschließlichkeit</td>
|
||||||
|
<td>Nichtüberlappung (B14)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„B kann erst nach A.”</td>
|
||||||
|
<td>eine Reihenfolge</td>
|
||||||
|
<td>Vorrangbeziehung (B13)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Höchstens fünf Tage am Stück.”</td>
|
||||||
|
<td>eine Bedingung über ein <strong>gleitendes Fenster</strong></td>
|
||||||
|
<td>gleitendes Fenster (B16)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Umstellen kostet uns eine halbe Stunde.”</td>
|
||||||
|
<td>reihenfolgeabhängige Kosten</td>
|
||||||
|
<td>Umrüstkosten (B17), Rüstzeit als Kapazität (B26)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Was reinkommt, muss auch wieder raus.”</td>
|
||||||
|
<td>Erhaltung an jedem Knoten</td>
|
||||||
|
<td>Flusserhaltung (B22)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Notfalls brechen wir die Regel.”</td>
|
||||||
|
<td>die Bedingung ist weich, aber teuer</td>
|
||||||
|
<td>Schlupfvariablen (B18)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Erst Termintreue, dann Kosten.”</td>
|
||||||
|
<td>eine Rangfolge zwischen Zielen</td>
|
||||||
|
<td>hierarchische Ziele (B19)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Es soll gerecht zugehen.”</td>
|
||||||
|
<td>den Schlechtestgestellten verbessern</td>
|
||||||
|
<td>Min/Max in der Zielfunktion (B11)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Was brächte uns eine zusätzliche Stunde?”</td>
|
||||||
|
<td>die Frage nach dem Grenzwert einer Ressource</td>
|
||||||
|
<td>Schattenpreis (<a href="lp.html#kap-lp">Kapitel 5</a>, <a href="praxisfallen.html#sec:praxisfallen-attribution">Abschnitt 22.4</a>)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>„Mit 95 % Sicherheit muss es halten.”</td>
|
||||||
|
<td>eine Zusage auf eine <strong>Quote</strong>, nicht auf einen Mittelwert</td>
|
||||||
|
<td>Chance Constraint (<a href="unsicherheit.html#sec:unsicherheit-chance-constraints">Abschnitt 12.7</a>)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>„Wir sichern uns gegen Schätzfehler ab.”</td>
|
||||||
|
<td>gegen die ungünstigste Parameterlage planen</td>
|
||||||
|
<td>Worst-Case-Abzug (B21)</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h3 id="fünf-wendungen-bei-denen-die-übersetzung-eine-entscheidung-erzwingt">Fünf Wendungen, bei denen die Übersetzung eine Entscheidung erzwingt</h3>
|
||||||
|
<p>Die Tabelle oben tut so, als sei die Zuordnung eindeutig. Bei den folgenden fünf ist sie es nicht — und <strong>das Nachfragen ist die eigentliche Modellierungsarbeit</strong>:</p>
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 50%" />
|
||||||
|
<col style="width: 50%" />
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr class="header">
|
||||||
|
<th>Wendung</th>
|
||||||
|
<th>Die Frage, die dahinter steckt</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="odd">
|
||||||
|
<td><strong>„möglichst”</strong></td>
|
||||||
|
<td>Hart oder weich? Und wenn weich: Was darf ein Verstoß kosten? Ohne Zahl ist „möglichst” keine Bedingung, sondern eine Stimmung.</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td><strong>„nicht mehr als drei pro Woche”</strong></td>
|
||||||
|
<td>Je Person oder über alle zusammen? Kalenderwoche oder gleitende sieben Tage? Beide Lesarten sind vertretbar und ergeben verschiedene Modelle.</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td><strong>„im Durchschnitt”</strong></td>
|
||||||
|
<td>Fast immer eine Falle. Der Durchschnittskunde kauft nie — siehe <a href="unsicherheit.html#sec:unsicherheit-der-fluch-des-durchschnitts">Abschnitt 12.3</a>. Gemeint ist meist ein Quantil („in 9 von 10 Fällen”).</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td><strong>„so schnell wie möglich”</strong></td>
|
||||||
|
<td>Welche Zahl? Ende des letzten Auftrags, Summe aller Fertigstellungszeiten oder größte Verspätung? Drei Zielfunktionen, drei verschiedene Pläne.</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td><strong>„fair”</strong></td>
|
||||||
|
<td>Den Schlechtesten verbessern, die Spannweite verkleinern oder gleiche Anteile erzwingen? Erst die Wahl macht daraus ein Modell — und sie gehört dem Betrieb, nicht dem Modellierer.</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<blockquote>
|
||||||
|
<p><strong>🎯 Der Nutzen dieser Liste</strong> Sie ersetzt kein Nachdenken. Sie sorgt dafür, dass das Nachdenken an den <strong>richtigen</strong> vier oder fünf Stellen stattfindet, statt an allen zwanzig gleichzeitig.</p>
|
||||||
|
</blockquote>
|
||||||
|
<h3 id="und-die-gegenrichtung-or-deutsch">Und die Gegenrichtung: OR — Deutsch</h3>
|
||||||
|
<p>Dieselbe Barriere gibt es rückwärts. Diese Sätze haben sich bewährt, wenn ein Ergebnis jemandem erklärt werden muss, der das Modell nicht kennt:</p>
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 50%" />
|
||||||
|
<col style="width: 50%" />
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr class="header">
|
||||||
|
<th>Fachbegriff</th>
|
||||||
|
<th>Was Sie in der Besprechung sagen</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>Schattenpreis / Dualwert</td>
|
||||||
|
<td>„Die nächste Stunde auf dieser Maschine wäre uns 9 € wert.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>bindende Bedingung mit Dualwert 0</td>
|
||||||
|
<td>„Die Regel berührt den Plan, kostet uns aber nichts — dort zu verhandeln bringt nichts.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td><code>INFEASIBLE</code></td>
|
||||||
|
<td>„Ihre Regeln widersprechen sich.” <strong>Nicht:</strong> „Der Computer schafft es nicht.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>Optimalitätslücke von 2 %</td>
|
||||||
|
<td>„Besser als das hier geht es höchstens um 2 % — und die liegen unter unserer Datenungenauigkeit.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>CVaR</td>
|
||||||
|
<td>„Wenn es schiefgeht, verlieren wir im Mittel so viel.” (Der VaR sagt nur, <strong>ob</strong> es schiefgeht.)</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>EVPI</td>
|
||||||
|
<td>„Selbst eine perfekte Prognose wäre uns höchstens so viel wert.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="odd">
|
||||||
|
<td>Relaxation</td>
|
||||||
|
<td>„Wir haben die Regel probeweise gelockert, um zu sehen, was sie kostet.”</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="even">
|
||||||
|
<td>Chance Constraint</td>
|
||||||
|
<td>„Der Plan hält in 95 von 100 Fällen — und der nächste Prozentpunkt kostet …”</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<hr />
|
||||||
|
<h2 id="sec:modellierung-uebungsaufgaben">4.7 Übungsaufgaben</h2>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p>Lösungen: <a href="anhang-loesungen.html#sec:loesungen-modellierung">Abschnitt A.4</a>.</p>
|
<p>Lösungen: <a href="anhang-loesungen.html#sec:loesungen-modellierung">Abschnitt A.4</a>.</p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
@ -736,9 +949,10 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
<p><strong>Aufgabe 4.2 ⭐ — Frage 5 anwenden.</strong> Ein Krankenhaus möchte „die Wartezeiten in der Notaufnahme senken”. Wenden Sie Frage 5 an: Welcher Plan käme heraus, wenn genau die durchschnittliche Wartezeit minimiert würde — und was wäre daran nicht akzeptabel?</p>
|
<p><strong>Aufgabe 4.2 ⭐ — Frage 5 anwenden.</strong> Ein Krankenhaus möchte „die Wartezeiten in der Notaufnahme senken”. Wenden Sie Frage 5 an: Welcher Plan käme heraus, wenn genau die durchschnittliche Wartezeit minimiert würde — und was wäre daran nicht akzeptabel?</p>
|
||||||
<p><strong>Aufgabe 4.3 ⭐⭐ — Der Kompromiss dazwischen.</strong> Zwischen Lesart A (12 500 €) und Lesart B (3 500 €) liegt Spielraum. Bauen Sie eine Variante, in der jeder Stammkunde <strong>mindestens die Hälfte</strong> seiner Auftragsstunden zugeteilt bekommt. Was kostet sie?</p>
|
<p><strong>Aufgabe 4.3 ⭐⭐ — Der Kompromiss dazwischen.</strong> Zwischen Lesart A (12 500 €) und Lesart B (3 500 €) liegt Spielraum. Bauen Sie eine Variante, in der jeder Stammkunde <strong>mindestens die Hälfte</strong> seiner Auftragsstunden zugeteilt bekommt. Was kostet sie?</p>
|
||||||
<p><strong>Aufgabe 4.4 ⭐⭐ — Zwei Ziele gleichzeitig.</strong> Maximieren Sie <span class="math inline">\text{DB} + \lambda \cdot \text{Umsatz}</span> für <span class="math inline">\lambda \in \{0; 0{,}1; 0{,}3; 1\}</span> und tragen Sie die Ergebnisse als Tabelle auf. Ab welchem <span class="math inline">\lambda</span> kippt der Plan von der DB- in die Umsatzlösung? Was sagt dieser Wert dem Betrieb?</p>
|
<p><strong>Aufgabe 4.4 ⭐⭐ — Zwei Ziele gleichzeitig.</strong> Maximieren Sie <span class="math inline">\text{DB} + \lambda \cdot \text{Umsatz}</span> für <span class="math inline">\lambda \in \{0; 0{,}1; 0{,}3; 1\}</span> und tragen Sie die Ergebnisse als Tabelle auf. Ab welchem <span class="math inline">\lambda</span> kippt der Plan von der DB- in die Umsatzlösung? Was sagt dieser Wert dem Betrieb?</p>
|
||||||
<p><strong>Aufgabe 4.5 ⭐⭐⭐ — Die Anforderung schreiben.</strong> Formulieren Sie für den Fall dieses Kapitels eine vollständige, prüfbare Anforderung: Ziel, harte Regeln, weiche Regeln mit Strafgewichten, Verhalten bei Unlösbarkeit, auszuweisende Kennzahlen. Zwei Seiten genügen — sie sind mehr wert als zwei Wochen Programmierung.</p>
|
<p><strong>Aufgabe 4.5 ⭐⭐ — Übersetzen, wo es nicht eindeutig ist.</strong> Übersetzen Sie mit <a href="#sec:modellierung-glossar">Abschnitt 4.6</a>: (a) „Die Monteure sollen möglichst gleichmäßig ausgelastet sein.” Nennen Sie <strong>drei</strong> Zielfunktionen, die alle „gleichmäßig” bedeuten können, und je einen Fall, in dem die Wahl den Plan sichtbar ändert. (b) „Kein Kunde darf länger als drei Tage warten.” Formulieren Sie die Bedingung einmal hart und einmal weich. Welche Frage müssen Sie dem Betrieb stellen, um zu entscheiden? (c) Suchen Sie in einer echten Anforderung aus Ihrem Umfeld einen Satz, der nach der Tabelle eindeutig aussieht, es aber nicht ist.</p>
|
||||||
|
<p><strong>Aufgabe 4.6 ⭐⭐⭐ — Die Anforderung schreiben.</strong> Formulieren Sie für den Fall dieses Kapitels eine vollständige, prüfbare Anforderung: Ziel, harte Regeln, weiche Regeln mit Strafgewichten, Verhalten bei Unlösbarkeit, auszuweisende Kennzahlen. Zwei Seiten genügen — sie sind mehr wert als zwei Wochen Programmierung.</p>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-denkfehler">4.7 Finde den Denkfehler</h2>
|
<h2 id="sec:modellierung-denkfehler">4.8 Finde den Denkfehler</h2>
|
||||||
<div class="card card-denkfehler">
|
<div class="card card-denkfehler">
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p><strong>🐛 „Die Engpassmaschine soll zu mindestens 92 % ausgelastet sein”</strong></p>
|
<p><strong>🐛 „Die Engpassmaschine soll zu mindestens 92 % ausgelastet sein”</strong></p>
|
||||||
|
|
@ -752,7 +966,7 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
</blockquote>
|
</blockquote>
|
||||||
</div>
|
</div>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-quiz">4.8 Micro-Quiz</h2>
|
<h2 id="sec:modellierung-quiz">4.9 Micro-Quiz</h2>
|
||||||
<div class="card card-quiz">
|
<div class="card card-quiz">
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p><strong>❓ Drei Fragen</strong></p>
|
<p><strong>❓ Drei Fragen</strong></p>
|
||||||
|
|
@ -762,7 +976,7 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
</blockquote>
|
</blockquote>
|
||||||
</div>
|
</div>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-selbsttest">4.9 Selbsttest</h2>
|
<h2 id="sec:modellierung-selbsttest">4.10 Selbsttest</h2>
|
||||||
<ol type="1">
|
<ol type="1">
|
||||||
<li>Warum ist „Was ist Ihnen wichtig?” eine schlechte Frage und „Welche Zahl steht im Jahresbericht?” eine gute?</li>
|
<li>Warum ist „Was ist Ihnen wichtig?” eine schlechte Frage und „Welche Zahl steht im Jahresbericht?” eine gute?</li>
|
||||||
<li>Nennen Sie zwei Kennzahlen aus Ihrem eigenen Arbeitsumfeld, deren Maximierung schaden würde.</li>
|
<li>Nennen Sie zwei Kennzahlen aus Ihrem eigenen Arbeitsumfeld, deren Maximierung schaden würde.</li>
|
||||||
|
|
@ -771,13 +985,14 @@ Lesart C (weich): loesbar - 66,000 EUR Deckungsbeitrag, 1 Stammauftrag abgelehnt
|
||||||
<li>Was antworten Sie auf die Frage „Was soll passieren, wenn es keine zulässige Lösung gibt?” — und warum ist „das kommt nicht vor” keine Antwort?</li>
|
<li>Was antworten Sie auf die Frage „Was soll passieren, wenn es keine zulässige Lösung gibt?” — und warum ist „das kommt nicht vor” keine Antwort?</li>
|
||||||
</ol>
|
</ol>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="sec:modellierung-zusammenfassung">4.10 Zusammenfassung</h2>
|
<h2 id="sec:modellierung-zusammenfassung">4.11 Zusammenfassung</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Ein Modell rechnet aus, was <strong>aufgeschrieben</strong> wurde, nicht was gemeint war. Die Zielfunktion ist eine vollständige Aussage: Was nicht darin steht, ist wertlos.</li>
|
<li>Ein Modell rechnet aus, was <strong>aufgeschrieben</strong> wurde, nicht was gemeint war. Die Zielfunktion ist eine vollständige Aussage: Was nicht darin steht, ist wertlos.</li>
|
||||||
<li>Die <strong>Zielgröße</strong> ist die folgenreichste Entscheidung eines OR-Projekts. Umsatz, Auslastung und Deckungsbeitrag führten hier auf demselben Datensatz zu drei verschiedenen Plänen mit 24 500 € Unterschied.</li>
|
<li>Die <strong>Zielgröße</strong> ist die folgenreichste Entscheidung eines OR-Projekts. Umsatz, Auslastung und Deckungsbeitrag führten hier auf demselben Datensatz zu drei verschiedenen Plänen mit 24 500 € Unterschied.</li>
|
||||||
<li><strong>Auslastung ist ein Ergebnis, kein Ziel.</strong> Bei knapper Kapazität ist die Maschine ohnehin voll; entscheidend ist, womit.</li>
|
<li><strong>Auslastung ist ein Ergebnis, kein Ziel.</strong> Bei knapper Kapazität ist die Maschine ohnehin voll; entscheidend ist, womit.</li>
|
||||||
<li>Ein Satz aus einer Besprechung hat meist <strong>mehrere Lesarten</strong>. „Stammkunden nicht verlieren” kostete je nach Lesart 3 500 € oder 12 500 € — bei identischem Ergebnis für die Kunden.</li>
|
<li>Ein Satz aus einer Besprechung hat meist <strong>mehrere Lesarten</strong>. „Stammkunden nicht verlieren” kostete je nach Lesart 3 500 € oder 12 500 € — bei identischem Ergebnis für die Kunden.</li>
|
||||||
<li><strong>Hart ist nur, was rechtlich oder physikalisch unmöglich ist.</strong> Eine harte Regel ist eine weiche mit hinreichend großer Strafe; der Unterschied zeigt sich erst, wenn sie einmal nicht erfüllbar ist — dann liefert die harte Variante gar nichts mehr.</li>
|
<li><strong>Hart ist nur, was rechtlich oder physikalisch unmöglich ist.</strong> Eine harte Regel ist eine weiche mit hinreichend großer Strafe; der Unterschied zeigt sich erst, wenn sie einmal nicht erfüllbar ist — dann liefert die harte Variante gar nichts mehr.</li>
|
||||||
|
<li><strong>Die meisten Sätze haben eine Standardübersetzung</strong> — das Lexikon in <a href="#sec:modellierung-glossar">Abschnitt 4.6</a> nennt sie. Sein Wert liegt aber in den fünf Wendungen, bei denen es keine gibt: „möglichst”, „nicht mehr als”, „im Durchschnitt”, „so schnell wie möglich”, „fair”. Dort ist Nachfragen die Modellierungsarbeit.</li>
|
||||||
<li>Die vier Fragen — worüber wird entschieden, woran gemessen, was ist unverhandelbar, was bei Unlösbarkeit — gehören in die erste Besprechung. Der Leitfaden in <a href="#sec:modellierung-leitfaden">Abschnitt 4.5</a> macht zwölf daraus.</li>
|
<li>Die vier Fragen — worüber wird entschieden, woran gemessen, was ist unverhandelbar, was bei Unlösbarkeit — gehören in die erste Besprechung. Der Leitfaden in <a href="#sec:modellierung-leitfaden">Abschnitt 4.5</a> macht zwölf daraus.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -413,7 +413,7 @@ Alles bereit — Sie können mit dem ersten Kapitel beginnen.</code></pre>
|
||||||
<h3 class="unnumbered" id="pfad-d-quantitative-finance-ca.-30-stunden">Pfad D — Quantitative Finance (ca. 30 Stunden)</h3>
|
<h3 class="unnumbered" id="pfad-d-quantitative-finance-ca.-30-stunden">Pfad D — Quantitative Finance (ca. 30 Stunden)</h3>
|
||||||
<p><a href="einfuehrung.html#kap-einfuehrung">Kapitel 1</a> → <a href="fundament.html#kap-fundament">Kapitel 2</a> → <a href="qp-nlp.html#kap-qp-nlp">Kapitel 11</a> (QP, KKT) → <a href="finanzdaten.html#kap-finanzdaten">Kapitel 18</a> (Daten, Shrinkage) → <a href="markowitz.html#kap-markowitz">Kapitel 19</a> (Markowitz) → <a href="cvar.html#kap-cvar">Kapitel 20</a> (CVaR) → <a href="handelsmaschine.html#kap-handelsmaschine">Kapitel 21</a> (Backtest) → Projekt <strong>P6</strong> (Portfolio-Rebalancer) oder <strong>P7</strong> (Risikoreport). <strong>Wichtig:</strong> Überspringen Sie <a href="finanzdaten.html#kap-finanzdaten">Kapitel 18</a> nicht. Wer direkt bei Markowitz einsteigt, optimiert Schätzrauschen und wundert sich über absurde Gewichte.</p>
|
<p><a href="einfuehrung.html#kap-einfuehrung">Kapitel 1</a> → <a href="fundament.html#kap-fundament">Kapitel 2</a> → <a href="qp-nlp.html#kap-qp-nlp">Kapitel 11</a> (QP, KKT) → <a href="finanzdaten.html#kap-finanzdaten">Kapitel 18</a> (Daten, Shrinkage) → <a href="markowitz.html#kap-markowitz">Kapitel 19</a> (Markowitz) → <a href="cvar.html#kap-cvar">Kapitel 20</a> (CVaR) → <a href="handelsmaschine.html#kap-handelsmaschine">Kapitel 21</a> (Backtest) → Projekt <strong>P6</strong> (Portfolio-Rebalancer) oder <strong>P7</strong> (Risikoreport). <strong>Wichtig:</strong> Überspringen Sie <a href="finanzdaten.html#kap-finanzdaten">Kapitel 18</a> nicht. Wer direkt bei Markowitz einsteigt, optimiert Schätzrauschen und wundert sich über absurde Gewichte.</p>
|
||||||
<h3 class="unnumbered" id="pfad-e-ich-habe-morgen-ein-konkretes-problem-24-stunden">Pfad E — Ich habe morgen ein konkretes Problem (2–4 Stunden)</h3>
|
<h3 class="unnumbered" id="pfad-e-ich-habe-morgen-ein-konkretes-problem-24-stunden">Pfad E — Ich habe morgen ein konkretes Problem (2–4 Stunden)</h3>
|
||||||
<p>Lesen Sie <a href="einfuehrung.html#sec:einfuehrung-historischer-kontext-und-evolution">Abschnitt 1.5</a> (die vier Bausteine), dann <a href="anhang-modellierungsmuster.html#anhang-modellierungsmuster">Anhang B</a> (<a href="anhang-modellierungsmuster.html">Modellierungsmuster</a>) und suchen Sie dort das Muster, das zu Ihrem Problem passt. Von jedem Muster führt ein Verweis in das zuständige Kapitel. Wie die gewählte Bibliothek es schreibt, steht in <a href="anhang-spickzettel.html#anhang-spickzettel">Anhang D</a> (<a href="anhang-spickzettel.html">Spickzettel</a>); wenn etwas nicht läuft, in <a href="anhang-fehlerdiagnose.html#anhang-fehlerdiagnose">Anhang C</a> (<a href="anhang-fehlerdiagnose.html">Fehlerdiagnose</a>).</p>
|
<p>Lesen Sie <a href="einfuehrung.html#sec:einfuehrung-historischer-kontext-und-evolution">Abschnitt 1.5</a> (die vier Bausteine) und <a href="modellierung.html#sec:modellierung-glossar">Abschnitt 4.6</a> (welcher Satz welcher Baustein ist), dann <a href="anhang-modellierungsmuster.html#anhang-modellierungsmuster">Anhang B</a> (<a href="anhang-modellierungsmuster.html">Modellierungsmuster</a>) und suchen Sie dort das Muster, das zu Ihrem Problem passt. Von jedem Muster führt ein Verweis in das zuständige Kapitel. Wie die gewählte Bibliothek es schreibt, steht in <a href="anhang-spickzettel.html#anhang-spickzettel">Anhang D</a> (<a href="anhang-spickzettel.html">Spickzettel</a>); wenn etwas nicht läuft, in <a href="anhang-fehlerdiagnose.html#anhang-fehlerdiagnose">Anhang C</a> (<a href="anhang-fehlerdiagnose.html">Fehlerdiagnose</a>).</p>
|
||||||
<h3 class="unnumbered" id="pfad-f-vom-prototyp-in-den-betrieb-ca.-15-stunden">Pfad F — Vom Prototyp in den Betrieb (ca. 15 Stunden)</h3>
|
<h3 class="unnumbered" id="pfad-f-vom-prototyp-in-den-betrieb-ca.-15-stunden">Pfad F — Vom Prototyp in den Betrieb (ca. 15 Stunden)</h3>
|
||||||
<p>Für alle, deren Modell <strong>rechnet</strong> und die es jetzt jemand anderem übergeben müssen: <a href="praxisfallen.html#kap-praxisfallen">Kapitel 22</a> (die fünf Praxisfallen, <code>or_kern.py</code>, Erklärbarkeit) → <a href="testing.html#kap-testing">Kapitel 23</a> (Testsuite, Mutationstest, Benchmark, HTTP-Dienst) → <a href="anhang-fehlerdiagnose.html#anhang-fehlerdiagnose">Anhang C</a> als Nachschlagewerk für den Ernstfall, dann Projekt <strong>P11</strong> (Vom Skript zum Dienst). Setzt voraus, dass Sie mindestens einen der Pfade B, C oder D hinter sich haben — P11 baut auf einem Modell auf, das Sie schon haben.</p>
|
<p>Für alle, deren Modell <strong>rechnet</strong> und die es jetzt jemand anderem übergeben müssen: <a href="praxisfallen.html#kap-praxisfallen">Kapitel 22</a> (die fünf Praxisfallen, <code>or_kern.py</code>, Erklärbarkeit) → <a href="testing.html#kap-testing">Kapitel 23</a> (Testsuite, Mutationstest, Benchmark, HTTP-Dienst) → <a href="anhang-fehlerdiagnose.html#anhang-fehlerdiagnose">Anhang C</a> als Nachschlagewerk für den Ernstfall, dann Projekt <strong>P11</strong> (Vom Skript zum Dienst). Setzt voraus, dass Sie mindestens einen der Pfade B, C oder D hinter sich haben — P11 baut auf einem Modell auf, das Sie schon haben.</p>
|
||||||
<p><em>Der Kern in einem Satz:</em> Ein Modell, das nur auf Ihrem Rechner und nur mit Ihren Daten läuft, ist ein Prototyp — kein System.</p>
|
<p><em>Der Kern in einem Satz:</em> Ein Modell, das nur auf Ihrem Rechner und nur mit Ihren Daten läuft, ist ein Prototyp — kein System.</p>
|
||||||
|
|
|
||||||
|
|
@ -356,7 +356,7 @@ Sie müssen nicht alles lesen, um etwas Nützliches bauen zu können.
|
||||||
|
|
||||||
### Pfad E — Ich habe morgen ein konkretes Problem (2–4 Stunden) {-}
|
### Pfad E — Ich habe morgen ein konkretes Problem (2–4 Stunden) {-}
|
||||||
|
|
||||||
Lesen Sie [Abschnitt 1.5](#sec:einfuehrung-historischer-kontext-und-evolution) (die vier Bausteine), dann [Anhang B](#anhang-modellierungsmuster) (**Modellierungsmuster**) und suchen Sie dort das Muster, das zu Ihrem Problem passt. Von jedem Muster führt ein Verweis in das zuständige Kapitel. Wie die gewählte Bibliothek es schreibt, steht in [Anhang D](#anhang-spickzettel) (**Spickzettel**); wenn etwas nicht läuft, in [Anhang C](#anhang-fehlerdiagnose) (**Fehlerdiagnose**).
|
Lesen Sie [Abschnitt 1.5](#sec:einfuehrung-historischer-kontext-und-evolution) (die vier Bausteine) und [Abschnitt 4.6](#sec:modellierung-glossar) (welcher Satz welcher Baustein ist), dann [Anhang B](#anhang-modellierungsmuster) (**Modellierungsmuster**) und suchen Sie dort das Muster, das zu Ihrem Problem passt. Von jedem Muster führt ein Verweis in das zuständige Kapitel. Wie die gewählte Bibliothek es schreibt, steht in [Anhang D](#anhang-spickzettel) (**Spickzettel**); wenn etwas nicht läuft, in [Anhang C](#anhang-fehlerdiagnose) (**Fehlerdiagnose**).
|
||||||
|
|
||||||
### Pfad F — Vom Prototyp in den Betrieb (ca. 15 Stunden) {-}
|
### Pfad F — Vom Prototyp in den Betrieb (ca. 15 Stunden) {-}
|
||||||
|
|
||||||
|
|
@ -4048,6 +4048,7 @@ Nach diesem Kapitel können Sie …
|
||||||
3. … erkennen, dass ein Satz wie „Stammkunden dürfen wir nicht verlieren" mehrere Lesarten hat, und den Unterschied in Euro beziffern.
|
3. … erkennen, dass ein Satz wie „Stammkunden dürfen wir nicht verlieren" mehrere Lesarten hat, und den Unterschied in Euro beziffern.
|
||||||
4. … begründen, wann eine Regel hart und wann sie weich sein muss — und was eine harte Regel im Betrieb anrichtet, wenn sie einmal nicht erfüllbar ist.
|
4. … begründen, wann eine Regel hart und wann sie weich sein muss — und was eine harte Regel im Betrieb anrichtet, wenn sie einmal nicht erfüllbar ist.
|
||||||
5. … einen Kennzahlen-Fehlanreiz benennen, bevor er in die Zielfunktion gerät.
|
5. … einen Kennzahlen-Fehlanreiz benennen, bevor er in die Zielfunktion gerät.
|
||||||
|
6. … einen Satz aus einer Besprechung in den passenden Modellierungsbaustein übersetzen — und die fünf Wendungen erkennen, bei denen genau das nicht geht, ohne vorher nachzufragen.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -4520,7 +4521,68 @@ Was aus den vier Teilen als Handwerkszeug bleibt — Fragen, die man in der erst
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 4.6 Übungsaufgaben {#sec:modellierung-uebungsaufgaben}
|
## 4.6 Deutsch — OR: ein Übersetzungslexikon {#sec:modellierung-glossar}
|
||||||
|
|
||||||
|
Die zwölf Fragen liefern Sätze. Sätze sind noch kein Modell — aber die meisten von ihnen haben eine **Standardübersetzung**, und wer sie kennt, spart sich das Nachdenken für die Fälle, in denen es keine gibt.
|
||||||
|
|
||||||
|
Die Tabelle liest sich von links nach rechts: Was in der Besprechung **gesagt** wird, was es **bedeutet**, und welcher **Baustein** daraus wird. Die B-Nummern verweisen auf [Anhang B](#anhang-modellierungsmuster), wo jedes Muster mit Formulierung und Code steht.
|
||||||
|
|
||||||
|
| Was gesagt wird | Was gemeint ist | Baustein |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| „Wir haben nur 400 Stunden." | eine Obergrenze, die nicht überschritten werden darf | harte Kapazitätsgrenze $\le b$ ([Kapitel 5](#kap-lp)) |
|
||||||
|
| „Mehr als zwei Millionen gibt es nicht." | dasselbe, auf Geld | Budgetlimit (B27) |
|
||||||
|
| „Möglichst nicht über 40 Stunden." | eine Grenze, die im Notfall gebrochen werden darf | weiche Grenze mit Strafkosten (B8) |
|
||||||
|
| „Wir können nur ganze Kisten liefern." | die Menge ist nicht teilbar | Ganzzahligkeitsbedingung ([Kapitel 6](#kap-milp)) |
|
||||||
|
| „Wenn wir die Anlage nutzen, fallen Fixkosten an." | Kosten, die erst ab der ersten Einheit anfallen | Aktivierungsschalter (B1) |
|
||||||
|
| „Entweder gar nicht oder mindestens 50." | kein Betrieb im Kleinen | semikontinuierliche Variable (B2) |
|
||||||
|
| „Wenn wir A bauen, brauchen wir auch B." | eine Folgeverpflichtung | Implikation (B3) |
|
||||||
|
| „Höchstens drei Positionen im Depot." | eine Obergrenze auf die **Anzahl**, nicht die Menge | Kardinalität (B6) |
|
||||||
|
| „Der Anteil muss mindestens 30 % betragen." | eine Bedingung auf ein **Verhältnis** | Verhältnis-Bedingung (B12) |
|
||||||
|
| „Jeder Auftrag genau einem Mitarbeiter." | eine vollständige, eindeutige Zuordnung | Zuordnung 1:1 (B23) |
|
||||||
|
| „Eine Maschine kann nur eines gleichzeitig." | zeitliche Ausschließlichkeit | Nichtüberlappung (B14) |
|
||||||
|
| „B kann erst nach A." | eine Reihenfolge | Vorrangbeziehung (B13) |
|
||||||
|
| „Höchstens fünf Tage am Stück." | eine Bedingung über ein **gleitendes Fenster** | gleitendes Fenster (B16) |
|
||||||
|
| „Umstellen kostet uns eine halbe Stunde." | reihenfolgeabhängige Kosten | Umrüstkosten (B17), Rüstzeit als Kapazität (B26) |
|
||||||
|
| „Was reinkommt, muss auch wieder raus." | Erhaltung an jedem Knoten | Flusserhaltung (B22) |
|
||||||
|
| „Notfalls brechen wir die Regel." | die Bedingung ist weich, aber teuer | Schlupfvariablen (B18) |
|
||||||
|
| „Erst Termintreue, dann Kosten." | eine Rangfolge zwischen Zielen | hierarchische Ziele (B19) |
|
||||||
|
| „Es soll gerecht zugehen." | den Schlechtestgestellten verbessern | Min/Max in der Zielfunktion (B11) |
|
||||||
|
| „Was brächte uns eine zusätzliche Stunde?" | die Frage nach dem Grenzwert einer Ressource | Schattenpreis ([Kapitel 5](#kap-lp), [Abschnitt 22.4](#sec:praxisfallen-attribution)) |
|
||||||
|
| „Mit 95 % Sicherheit muss es halten." | eine Zusage auf eine **Quote**, nicht auf einen Mittelwert | Chance Constraint ([Abschnitt 12.7](#sec:unsicherheit-chance-constraints)) |
|
||||||
|
| „Wir sichern uns gegen Schätzfehler ab." | gegen die ungünstigste Parameterlage planen | Worst-Case-Abzug (B21) |
|
||||||
|
|
||||||
|
### Fünf Wendungen, bei denen die Übersetzung eine Entscheidung erzwingt
|
||||||
|
|
||||||
|
Die Tabelle oben tut so, als sei die Zuordnung eindeutig. Bei den folgenden fünf ist sie es nicht — und **das Nachfragen ist die eigentliche Modellierungsarbeit**:
|
||||||
|
|
||||||
|
| Wendung | Die Frage, die dahinter steckt |
|
||||||
|
| --- | --- |
|
||||||
|
| **„möglichst"** | Hart oder weich? Und wenn weich: Was darf ein Verstoß kosten? Ohne Zahl ist „möglichst" keine Bedingung, sondern eine Stimmung. |
|
||||||
|
| **„nicht mehr als drei pro Woche"** | Je Person oder über alle zusammen? Kalenderwoche oder gleitende sieben Tage? Beide Lesarten sind vertretbar und ergeben verschiedene Modelle. |
|
||||||
|
| **„im Durchschnitt"** | Fast immer eine Falle. Der Durchschnittskunde kauft nie — siehe [Abschnitt 12.3](#sec:unsicherheit-der-fluch-des-durchschnitts). Gemeint ist meist ein Quantil („in 9 von 10 Fällen"). |
|
||||||
|
| **„so schnell wie möglich"** | Welche Zahl? Ende des letzten Auftrags, Summe aller Fertigstellungszeiten oder größte Verspätung? Drei Zielfunktionen, drei verschiedene Pläne. |
|
||||||
|
| **„fair"** | Den Schlechtesten verbessern, die Spannweite verkleinern oder gleiche Anteile erzwingen? Erst die Wahl macht daraus ein Modell — und sie gehört dem Betrieb, nicht dem Modellierer. |
|
||||||
|
|
||||||
|
> **🎯 Der Nutzen dieser Liste** Sie ersetzt kein Nachdenken. Sie sorgt dafür, dass das Nachdenken an den **richtigen** vier oder fünf Stellen stattfindet, statt an allen zwanzig gleichzeitig.
|
||||||
|
|
||||||
|
### Und die Gegenrichtung: OR — Deutsch
|
||||||
|
|
||||||
|
Dieselbe Barriere gibt es rückwärts. Diese Sätze haben sich bewährt, wenn ein Ergebnis jemandem erklärt werden muss, der das Modell nicht kennt:
|
||||||
|
|
||||||
|
| Fachbegriff | Was Sie in der Besprechung sagen |
|
||||||
|
| --- | --- |
|
||||||
|
| Schattenpreis / Dualwert | „Die nächste Stunde auf dieser Maschine wäre uns 9 € wert." |
|
||||||
|
| bindende Bedingung mit Dualwert 0 | „Die Regel berührt den Plan, kostet uns aber nichts — dort zu verhandeln bringt nichts." |
|
||||||
|
| `INFEASIBLE` | „Ihre Regeln widersprechen sich." **Nicht:** „Der Computer schafft es nicht." |
|
||||||
|
| Optimalitätslücke von 2 % | „Besser als das hier geht es höchstens um 2 % — und die liegen unter unserer Datenungenauigkeit." |
|
||||||
|
| CVaR | „Wenn es schiefgeht, verlieren wir im Mittel so viel." (Der VaR sagt nur, **ob** es schiefgeht.) |
|
||||||
|
| EVPI | „Selbst eine perfekte Prognose wäre uns höchstens so viel wert." |
|
||||||
|
| Relaxation | „Wir haben die Regel probeweise gelockert, um zu sehen, was sie kostet." |
|
||||||
|
| Chance Constraint | „Der Plan hält in 95 von 100 Fällen — und der nächste Prozentpunkt kostet …" |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4.7 Übungsaufgaben {#sec:modellierung-uebungsaufgaben}
|
||||||
|
|
||||||
> Lösungen: [Abschnitt A.4](#sec:loesungen-modellierung).
|
> Lösungen: [Abschnitt A.4](#sec:loesungen-modellierung).
|
||||||
|
|
||||||
|
|
@ -4532,11 +4594,13 @@ Was aus den vier Teilen als Handwerkszeug bleibt — Fragen, die man in der erst
|
||||||
|
|
||||||
**Aufgabe 4.4 ⭐⭐ — Zwei Ziele gleichzeitig.** Maximieren Sie $\text{DB} + \lambda \cdot \text{Umsatz}$ für $\lambda \in \{0; 0{,}1; 0{,}3; 1\}$ und tragen Sie die Ergebnisse als Tabelle auf. Ab welchem $\lambda$ kippt der Plan von der DB- in die Umsatzlösung? Was sagt dieser Wert dem Betrieb?
|
**Aufgabe 4.4 ⭐⭐ — Zwei Ziele gleichzeitig.** Maximieren Sie $\text{DB} + \lambda \cdot \text{Umsatz}$ für $\lambda \in \{0; 0{,}1; 0{,}3; 1\}$ und tragen Sie die Ergebnisse als Tabelle auf. Ab welchem $\lambda$ kippt der Plan von der DB- in die Umsatzlösung? Was sagt dieser Wert dem Betrieb?
|
||||||
|
|
||||||
**Aufgabe 4.5 ⭐⭐⭐ — Die Anforderung schreiben.** Formulieren Sie für den Fall dieses Kapitels eine vollständige, prüfbare Anforderung: Ziel, harte Regeln, weiche Regeln mit Strafgewichten, Verhalten bei Unlösbarkeit, auszuweisende Kennzahlen. Zwei Seiten genügen — sie sind mehr wert als zwei Wochen Programmierung.
|
**Aufgabe 4.5 ⭐⭐ — Übersetzen, wo es nicht eindeutig ist.** Übersetzen Sie mit [Abschnitt 4.6](#sec:modellierung-glossar): (a) „Die Monteure sollen möglichst gleichmäßig ausgelastet sein." Nennen Sie **drei** Zielfunktionen, die alle „gleichmäßig" bedeuten können, und je einen Fall, in dem die Wahl den Plan sichtbar ändert. (b) „Kein Kunde darf länger als drei Tage warten." Formulieren Sie die Bedingung einmal hart und einmal weich. Welche Frage müssen Sie dem Betrieb stellen, um zu entscheiden? (c) Suchen Sie in einer echten Anforderung aus Ihrem Umfeld einen Satz, der nach der Tabelle eindeutig aussieht, es aber nicht ist.
|
||||||
|
|
||||||
|
**Aufgabe 4.6 ⭐⭐⭐ — Die Anforderung schreiben.** Formulieren Sie für den Fall dieses Kapitels eine vollständige, prüfbare Anforderung: Ziel, harte Regeln, weiche Regeln mit Strafgewichten, Verhalten bei Unlösbarkeit, auszuweisende Kennzahlen. Zwei Seiten genügen — sie sind mehr wert als zwei Wochen Programmierung.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 4.7 Finde den Denkfehler {#sec:modellierung-denkfehler}
|
## 4.8 Finde den Denkfehler {#sec:modellierung-denkfehler}
|
||||||
|
|
||||||
> **🐛 „Die Engpassmaschine soll zu mindestens 92 % ausgelastet sein"**
|
> **🐛 „Die Engpassmaschine soll zu mindestens 92 % ausgelastet sein"**
|
||||||
>
|
>
|
||||||
|
|
@ -4552,7 +4616,7 @@ Was aus den vier Teilen als Handwerkszeug bleibt — Fragen, die man in der erst
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 4.8 Micro-Quiz {#sec:modellierung-quiz}
|
## 4.9 Micro-Quiz {#sec:modellierung-quiz}
|
||||||
|
|
||||||
> **❓ Drei Fragen**
|
> **❓ Drei Fragen**
|
||||||
>
|
>
|
||||||
|
|
@ -4564,7 +4628,7 @@ Was aus den vier Teilen als Handwerkszeug bleibt — Fragen, die man in der erst
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 4.9 Selbsttest {#sec:modellierung-selbsttest}
|
## 4.10 Selbsttest {#sec:modellierung-selbsttest}
|
||||||
|
|
||||||
1. Warum ist „Was ist Ihnen wichtig?" eine schlechte Frage und „Welche Zahl steht im Jahresbericht?" eine gute?
|
1. Warum ist „Was ist Ihnen wichtig?" eine schlechte Frage und „Welche Zahl steht im Jahresbericht?" eine gute?
|
||||||
2. Nennen Sie zwei Kennzahlen aus Ihrem eigenen Arbeitsumfeld, deren Maximierung schaden würde.
|
2. Nennen Sie zwei Kennzahlen aus Ihrem eigenen Arbeitsumfeld, deren Maximierung schaden würde.
|
||||||
|
|
@ -4574,13 +4638,14 @@ Was aus den vier Teilen als Handwerkszeug bleibt — Fragen, die man in der erst
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 4.10 Zusammenfassung {#sec:modellierung-zusammenfassung}
|
## 4.11 Zusammenfassung {#sec:modellierung-zusammenfassung}
|
||||||
|
|
||||||
* Ein Modell rechnet aus, was **aufgeschrieben** wurde, nicht was gemeint war. Die Zielfunktion ist eine vollständige Aussage: Was nicht darin steht, ist wertlos.
|
* Ein Modell rechnet aus, was **aufgeschrieben** wurde, nicht was gemeint war. Die Zielfunktion ist eine vollständige Aussage: Was nicht darin steht, ist wertlos.
|
||||||
* Die **Zielgröße** ist die folgenreichste Entscheidung eines OR-Projekts. Umsatz, Auslastung und Deckungsbeitrag führten hier auf demselben Datensatz zu drei verschiedenen Plänen mit 24 500 € Unterschied.
|
* Die **Zielgröße** ist die folgenreichste Entscheidung eines OR-Projekts. Umsatz, Auslastung und Deckungsbeitrag führten hier auf demselben Datensatz zu drei verschiedenen Plänen mit 24 500 € Unterschied.
|
||||||
* **Auslastung ist ein Ergebnis, kein Ziel.** Bei knapper Kapazität ist die Maschine ohnehin voll; entscheidend ist, womit.
|
* **Auslastung ist ein Ergebnis, kein Ziel.** Bei knapper Kapazität ist die Maschine ohnehin voll; entscheidend ist, womit.
|
||||||
* Ein Satz aus einer Besprechung hat meist **mehrere Lesarten**. „Stammkunden nicht verlieren" kostete je nach Lesart 3 500 € oder 12 500 € — bei identischem Ergebnis für die Kunden.
|
* Ein Satz aus einer Besprechung hat meist **mehrere Lesarten**. „Stammkunden nicht verlieren" kostete je nach Lesart 3 500 € oder 12 500 € — bei identischem Ergebnis für die Kunden.
|
||||||
* **Hart ist nur, was rechtlich oder physikalisch unmöglich ist.** Eine harte Regel ist eine weiche mit hinreichend großer Strafe; der Unterschied zeigt sich erst, wenn sie einmal nicht erfüllbar ist — dann liefert die harte Variante gar nichts mehr.
|
* **Hart ist nur, was rechtlich oder physikalisch unmöglich ist.** Eine harte Regel ist eine weiche mit hinreichend großer Strafe; der Unterschied zeigt sich erst, wenn sie einmal nicht erfüllbar ist — dann liefert die harte Variante gar nichts mehr.
|
||||||
|
* **Die meisten Sätze haben eine Standardübersetzung** — das Lexikon in [Abschnitt 4.6](#sec:modellierung-glossar) nennt sie. Sein Wert liegt aber in den fünf Wendungen, bei denen es keine gibt: „möglichst", „nicht mehr als", „im Durchschnitt", „so schnell wie möglich", „fair". Dort ist Nachfragen die Modellierungsarbeit.
|
||||||
* Die vier Fragen — worüber wird entschieden, woran gemessen, was ist unverhandelbar, was bei Unlösbarkeit — gehören in die erste Besprechung. Der Leitfaden in [Abschnitt 4.5](#sec:modellierung-leitfaden) macht zwölf daraus.
|
* Die vier Fragen — worüber wird entschieden, woran gemessen, was ist unverhandelbar, was bei Unlösbarkeit — gehören in die erste Besprechung. Der Leitfaden in [Abschnitt 4.5](#sec:modellierung-leitfaden) macht zwölf daraus.
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -25248,7 +25313,9 @@ Erwartung: Das Ergebnis liegt zwischen Lesart A und B — die Regel bindet stär
|
||||||
|
|
||||||
Der Kippwert sagt dem Betrieb etwas Konkretes: *„Erst wenn Ihnen ein Euro Umsatz mehr wert ist als λ Euro Deckungsbeitrag, ändert sich Ihr Plan."* Das ist eine Frage, die ein Kaufmann beantworten kann — anders als „welche Gewichtung hätten Sie gern?".
|
Der Kippwert sagt dem Betrieb etwas Konkretes: *„Erst wenn Ihnen ein Euro Umsatz mehr wert ist als λ Euro Deckungsbeitrag, ändert sich Ihr Plan."* Das ist eine Frage, die ein Kaufmann beantworten kann — anders als „welche Gewichtung hätten Sie gern?".
|
||||||
|
|
||||||
**4.5 — Die Anforderung schreiben.** Eine tragfähige Anforderung enthält mindestens:
|
**4.5 — Übersetzen, wo es nicht eindeutig ist.** (a) Drei Lesarten von „gleichmäßig ausgelastet": **(1) Spannweite minimieren** — $\max_i a_i - \min_i a_i$. Bestraft Ausreißer nach beiden Seiten; ein einzelner Untätiger ist genauso schlimm wie ein Überlasteter. **(2) Den Schlechtestgestellten verbessern** — $\max_i a_i$ minimieren (B11). Interessiert sich nicht dafür, wie ungleich die übrigen liegen, solange die Spitze sinkt. **(3) Abweichung vom Mittel minimieren** — $\sum_i |a_i - \bar a|$ (B10). Verteilt die Last am gleichmäßigsten, kann aber die Spitze höher lassen als (2). Wo es sichtbar wird: Bei fünf Monteuren mit 8, 8, 8, 8 und 16 Stunden senkt (2) die 16 zuerst; bei 4, 8, 8, 8, 12 tut (1) am meisten gegen die Spreizung, während (2) kaum etwas findet. Und wenn ein Monteur aus guten Gründen nur halbtags da ist, bestrafen (1) und (3) genau das — (2) nicht. (b) Hart: $w_k \le 3$ für jeden Kunden $k$. Weich: $w_k \le 3 + s_k$ mit $s_k \ge 0$ und Strafkosten $c \cdot s_k$ in der Zielfunktion (B8, B18). Die Frage an den Betrieb ist die dritte der vier: *Was passiert, wenn es einmal nicht geht?* Führt die Antwort zu „dann müssen wir eben" — weich. Führt sie zu „das darf nicht passieren, dann rufen wir an und verschieben" — dann ist auch das ein Prozess, und die Bedingung bleibt weich, nur mit sehr hohen Strafkosten. Wirklich hart ist sie nur, wenn ein Verstoß rechtlich unmöglich ist. (c) Individuell. Prüfkriterium: Wird eine Wendung gefunden, die **zwei** vertretbare Modelle zulässt — und wird benannt, wer die Wahl treffen muss? Die häufigsten Kandidaten in echten Anforderungen sind „in der Regel", „zeitnah", „vergleichbar" und jede Zahl ohne Bezugszeitraum.
|
||||||
|
|
||||||
|
**4.6 — Die Anforderung schreiben.** Eine tragfähige Anforderung enthält mindestens:
|
||||||
|
|
||||||
* **Entscheidung:** Für jede Anfrage im Planungszeitraum: annehmen oder ablehnen.
|
* **Entscheidung:** Für jede Anfrage im Planungszeitraum: annehmen oder ablehnen.
|
||||||
* **Ziel:** Deckungsbeitrag maximieren (Umsatz minus Material).
|
* **Ziel:** Deckungsbeitrag maximieren (Umsatz minus Material).
|
||||||
|
|
@ -26644,6 +26711,8 @@ Was geholfen hätte — drei Dinge, keines davon ein Unit-Test:
|
||||||
| B23 | Zuordnung 1:1 | „Jeder genau eine Aufgabe“ | [Kapitel 8](#kap-graphen) |
|
| B23 | Zuordnung 1:1 | „Jeder genau eine Aufgabe“ | [Kapitel 8](#kap-graphen) |
|
||||||
| B24 | Subtour-Eliminierung | „Keine isolierten Kreise“ | [Kapitel 8](#kap-graphen) |
|
| B24 | Subtour-Eliminierung | „Keine isolierten Kreise“ | [Kapitel 8](#kap-graphen) |
|
||||||
|
|
||||||
|
> **Umgekehrte Richtung:** Wer von einem Satz aus der Besprechung kommt und das Muster sucht, findet in [Abschnitt 4.6](#sec:modellierung-glossar) ein Lexikon, das genau so herum aufgebaut ist — und die Wendungen benennt, bei denen es keine eindeutige Übersetzung gibt.
|
||||||
|
>
|
||||||
> Die Spalte „Wo im Buch“ nennt das Kapitel, in dem das Muster **im Zusammenhang** vorkommt — nicht die einzige Stelle, an der es taugt. Die Nummern entstehen beim Bauen; im Quelltext dieses Anhangs steht keine einzige.
|
> Die Spalte „Wo im Buch“ nennt das Kapitel, in dem das Muster **im Zusammenhang** vorkommt — nicht die einzige Stelle, an der es taugt. Die Nummern entstehen beim Bauen; im Quelltext dieses Anhangs steht keine einzige.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -504,7 +504,8 @@ bei Markowitz einsteigt, optimiert Schätzrauschen und wundert sich über absurd
|
||||||
|
|
||||||
### Pfad E — Ich habe morgen ein konkretes Problem (2–4 Stunden) {-}
|
### Pfad E — Ich habe morgen ein konkretes Problem (2–4 Stunden) {-}
|
||||||
|
|
||||||
Lesen Sie {ref:sec:einfuehrung-historischer-kontext-und-evolution} (die vier Bausteine), dann {ref:anhang:modellierungsmuster}
|
Lesen Sie {ref:sec:einfuehrung-historischer-kontext-und-evolution} (die vier Bausteine) und
|
||||||
|
{ref:sec:modellierung-glossar} (welcher Satz welcher Baustein ist), dann {ref:anhang:modellierungsmuster}
|
||||||
([Modellierungsmuster](91_Anhang_Modellierungsmuster.md)) und suchen Sie dort das Muster,
|
([Modellierungsmuster](91_Anhang_Modellierungsmuster.md)) und suchen Sie dort das Muster,
|
||||||
das zu Ihrem Problem passt. Von jedem Muster führt ein Verweis in das zuständige Kapitel.
|
das zu Ihrem Problem passt. Von jedem Muster führt ein Verweis in das zuständige Kapitel.
|
||||||
Wie die gewählte Bibliothek es schreibt, steht in {ref:anhang:spickzettel}
|
Wie die gewählte Bibliothek es schreibt, steht in {ref:anhang:spickzettel}
|
||||||
|
|
|
||||||
|
|
@ -99,6 +99,9 @@ Nach diesem Kapitel können Sie …
|
||||||
4. … begründen, wann eine Regel hart und wann sie weich sein muss — und was eine harte Regel
|
4. … begründen, wann eine Regel hart und wann sie weich sein muss — und was eine harte Regel
|
||||||
im Betrieb anrichtet, wenn sie einmal nicht erfüllbar ist.
|
im Betrieb anrichtet, wenn sie einmal nicht erfüllbar ist.
|
||||||
5. … einen Kennzahlen-Fehlanreiz benennen, bevor er in die Zielfunktion gerät.
|
5. … einen Kennzahlen-Fehlanreiz benennen, bevor er in die Zielfunktion gerät.
|
||||||
|
6. … einen Satz aus einer Besprechung in den passenden Modellierungsbaustein
|
||||||
|
übersetzen — und die fünf Wendungen erkennen, bei denen genau das nicht geht,
|
||||||
|
ohne vorher nachzufragen.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -614,6 +617,75 @@ stellt, bevor eine Zeile Code entsteht:
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Deutsch — OR: ein Übersetzungslexikon {#sec:modellierung-glossar}
|
||||||
|
|
||||||
|
Die zwölf Fragen liefern Sätze. Sätze sind noch kein Modell — aber die meisten von ihnen
|
||||||
|
haben eine **Standardübersetzung**, und wer sie kennt, spart sich das Nachdenken für die
|
||||||
|
Fälle, in denen es keine gibt.
|
||||||
|
|
||||||
|
Die Tabelle liest sich von links nach rechts: Was in der Besprechung **gesagt** wird, was
|
||||||
|
es **bedeutet**, und welcher **Baustein** daraus wird. Die B-Nummern verweisen auf
|
||||||
|
{ref:anhang:modellierungsmuster}, wo jedes Muster mit Formulierung und Code steht.
|
||||||
|
|
||||||
|
| Was gesagt wird | Was gemeint ist | Baustein |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| „Wir haben nur 400 Stunden." | eine Obergrenze, die nicht überschritten werden darf | harte Kapazitätsgrenze $\le b$ ({ref:kap:lp}) |
|
||||||
|
| „Mehr als zwei Millionen gibt es nicht." | dasselbe, auf Geld | Budgetlimit (B27) |
|
||||||
|
| „Möglichst nicht über 40 Stunden." | eine Grenze, die im Notfall gebrochen werden darf | weiche Grenze mit Strafkosten (B8) |
|
||||||
|
| „Wir können nur ganze Kisten liefern." | die Menge ist nicht teilbar | Ganzzahligkeitsbedingung ({ref:kap:milp}) |
|
||||||
|
| „Wenn wir die Anlage nutzen, fallen Fixkosten an." | Kosten, die erst ab der ersten Einheit anfallen | Aktivierungsschalter (B1) |
|
||||||
|
| „Entweder gar nicht oder mindestens 50." | kein Betrieb im Kleinen | semikontinuierliche Variable (B2) |
|
||||||
|
| „Wenn wir A bauen, brauchen wir auch B." | eine Folgeverpflichtung | Implikation (B3) |
|
||||||
|
| „Höchstens drei Positionen im Depot." | eine Obergrenze auf die **Anzahl**, nicht die Menge | Kardinalität (B6) |
|
||||||
|
| „Der Anteil muss mindestens 30 % betragen." | eine Bedingung auf ein **Verhältnis** | Verhältnis-Bedingung (B12) |
|
||||||
|
| „Jeder Auftrag genau einem Mitarbeiter." | eine vollständige, eindeutige Zuordnung | Zuordnung 1:1 (B23) |
|
||||||
|
| „Eine Maschine kann nur eines gleichzeitig." | zeitliche Ausschließlichkeit | Nichtüberlappung (B14) |
|
||||||
|
| „B kann erst nach A." | eine Reihenfolge | Vorrangbeziehung (B13) |
|
||||||
|
| „Höchstens fünf Tage am Stück." | eine Bedingung über ein **gleitendes Fenster** | gleitendes Fenster (B16) |
|
||||||
|
| „Umstellen kostet uns eine halbe Stunde." | reihenfolgeabhängige Kosten | Umrüstkosten (B17), Rüstzeit als Kapazität (B26) |
|
||||||
|
| „Was reinkommt, muss auch wieder raus." | Erhaltung an jedem Knoten | Flusserhaltung (B22) |
|
||||||
|
| „Notfalls brechen wir die Regel." | die Bedingung ist weich, aber teuer | Schlupfvariablen (B18) |
|
||||||
|
| „Erst Termintreue, dann Kosten." | eine Rangfolge zwischen Zielen | hierarchische Ziele (B19) |
|
||||||
|
| „Es soll gerecht zugehen." | den Schlechtestgestellten verbessern | Min/Max in der Zielfunktion (B11) |
|
||||||
|
| „Was brächte uns eine zusätzliche Stunde?" | die Frage nach dem Grenzwert einer Ressource | Schattenpreis ({ref:kap:lp}, {ref:sec:praxisfallen-attribution}) |
|
||||||
|
| „Mit 95 % Sicherheit muss es halten." | eine Zusage auf eine **Quote**, nicht auf einen Mittelwert | Chance Constraint ({ref:sec:unsicherheit-chance-constraints}) |
|
||||||
|
| „Wir sichern uns gegen Schätzfehler ab." | gegen die ungünstigste Parameterlage planen | Worst-Case-Abzug (B21) |
|
||||||
|
|
||||||
|
### Fünf Wendungen, bei denen die Übersetzung eine Entscheidung erzwingt
|
||||||
|
|
||||||
|
Die Tabelle oben tut so, als sei die Zuordnung eindeutig. Bei den folgenden fünf ist sie es
|
||||||
|
nicht — und **das Nachfragen ist die eigentliche Modellierungsarbeit**:
|
||||||
|
|
||||||
|
| Wendung | Die Frage, die dahinter steckt |
|
||||||
|
| --- | --- |
|
||||||
|
| **„möglichst"** | Hart oder weich? Und wenn weich: Was darf ein Verstoß kosten? Ohne Zahl ist „möglichst" keine Bedingung, sondern eine Stimmung. |
|
||||||
|
| **„nicht mehr als drei pro Woche"** | Je Person oder über alle zusammen? Kalenderwoche oder gleitende sieben Tage? Beide Lesarten sind vertretbar und ergeben verschiedene Modelle. |
|
||||||
|
| **„im Durchschnitt"** | Fast immer eine Falle. Der Durchschnittskunde kauft nie — siehe {ref:sec:unsicherheit-der-fluch-des-durchschnitts}. Gemeint ist meist ein Quantil („in 9 von 10 Fällen"). |
|
||||||
|
| **„so schnell wie möglich"** | Welche Zahl? Ende des letzten Auftrags, Summe aller Fertigstellungszeiten oder größte Verspätung? Drei Zielfunktionen, drei verschiedene Pläne. |
|
||||||
|
| **„fair"** | Den Schlechtesten verbessern, die Spannweite verkleinern oder gleiche Anteile erzwingen? Erst die Wahl macht daraus ein Modell — und sie gehört dem Betrieb, nicht dem Modellierer. |
|
||||||
|
|
||||||
|
> **🎯 Der Nutzen dieser Liste**
|
||||||
|
> Sie ersetzt kein Nachdenken. Sie sorgt dafür, dass das Nachdenken an den **richtigen** vier
|
||||||
|
> oder fünf Stellen stattfindet, statt an allen zwanzig gleichzeitig.
|
||||||
|
|
||||||
|
### Und die Gegenrichtung: OR — Deutsch
|
||||||
|
|
||||||
|
Dieselbe Barriere gibt es rückwärts. Diese Sätze haben sich bewährt, wenn ein Ergebnis
|
||||||
|
jemandem erklärt werden muss, der das Modell nicht kennt:
|
||||||
|
|
||||||
|
| Fachbegriff | Was Sie in der Besprechung sagen |
|
||||||
|
| --- | --- |
|
||||||
|
| Schattenpreis / Dualwert | „Die nächste Stunde auf dieser Maschine wäre uns 9 € wert." |
|
||||||
|
| bindende Bedingung mit Dualwert 0 | „Die Regel berührt den Plan, kostet uns aber nichts — dort zu verhandeln bringt nichts." |
|
||||||
|
| `INFEASIBLE` | „Ihre Regeln widersprechen sich." **Nicht:** „Der Computer schafft es nicht." |
|
||||||
|
| Optimalitätslücke von 2 % | „Besser als das hier geht es höchstens um 2 % — und die liegen unter unserer Datenungenauigkeit." |
|
||||||
|
| CVaR | „Wenn es schiefgeht, verlieren wir im Mittel so viel." (Der VaR sagt nur, **ob** es schiefgeht.) |
|
||||||
|
| EVPI | „Selbst eine perfekte Prognose wäre uns höchstens so viel wert." |
|
||||||
|
| Relaxation | „Wir haben die Regel probeweise gelockert, um zu sehen, was sie kostet." |
|
||||||
|
| Chance Constraint | „Der Plan hält in 95 von 100 Fällen — und der nächste Prozentpunkt kostet …" |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Übungsaufgaben {#sec:modellierung-uebungsaufgaben}
|
## Übungsaufgaben {#sec:modellierung-uebungsaufgaben}
|
||||||
|
|
||||||
> Lösungen: {ref:sec:loesungen-modellierung}.
|
> Lösungen: {ref:sec:loesungen-modellierung}.
|
||||||
|
|
@ -637,6 +709,16 @@ Maximieren Sie $\text{DB} + \lambda \cdot \text{Umsatz}$ für $\lambda \in \{0;
|
||||||
und tragen Sie die Ergebnisse als Tabelle auf. Ab welchem $\lambda$ kippt der Plan von der
|
und tragen Sie die Ergebnisse als Tabelle auf. Ab welchem $\lambda$ kippt der Plan von der
|
||||||
DB- in die Umsatzlösung? Was sagt dieser Wert dem Betrieb?
|
DB- in die Umsatzlösung? Was sagt dieser Wert dem Betrieb?
|
||||||
|
|
||||||
|
**Aufgabe ⭐⭐ — Übersetzen, wo es nicht eindeutig ist.**
|
||||||
|
Übersetzen Sie mit {ref:sec:modellierung-glossar}:
|
||||||
|
(a) „Die Monteure sollen möglichst gleichmäßig ausgelastet sein." Nennen Sie **drei**
|
||||||
|
Zielfunktionen, die alle „gleichmäßig" bedeuten können, und je einen Fall, in dem die
|
||||||
|
Wahl den Plan sichtbar ändert.
|
||||||
|
(b) „Kein Kunde darf länger als drei Tage warten." Formulieren Sie die Bedingung einmal
|
||||||
|
hart und einmal weich. Welche Frage müssen Sie dem Betrieb stellen, um zu entscheiden?
|
||||||
|
(c) Suchen Sie in einer echten Anforderung aus Ihrem Umfeld einen Satz, der nach der
|
||||||
|
Tabelle eindeutig aussieht, es aber nicht ist.
|
||||||
|
|
||||||
**Aufgabe ⭐⭐⭐ — Die Anforderung schreiben.**
|
**Aufgabe ⭐⭐⭐ — Die Anforderung schreiben.**
|
||||||
Formulieren Sie für den Fall dieses Kapitels eine vollständige, prüfbare Anforderung: Ziel,
|
Formulieren Sie für den Fall dieses Kapitels eine vollständige, prüfbare Anforderung: Ziel,
|
||||||
harte Regeln, weiche Regeln mit Strafgewichten, Verhalten bei Unlösbarkeit, auszuweisende
|
harte Regeln, weiche Regeln mit Strafgewichten, Verhalten bei Unlösbarkeit, auszuweisende
|
||||||
|
|
@ -720,6 +802,10 @@ Kennzahlen. Zwei Seiten genügen — sie sind mehr wert als zwei Wochen Programm
|
||||||
* **Hart ist nur, was rechtlich oder physikalisch unmöglich ist.** Eine harte Regel ist eine
|
* **Hart ist nur, was rechtlich oder physikalisch unmöglich ist.** Eine harte Regel ist eine
|
||||||
weiche mit hinreichend großer Strafe; der Unterschied zeigt sich erst, wenn sie einmal
|
weiche mit hinreichend großer Strafe; der Unterschied zeigt sich erst, wenn sie einmal
|
||||||
nicht erfüllbar ist — dann liefert die harte Variante gar nichts mehr.
|
nicht erfüllbar ist — dann liefert die harte Variante gar nichts mehr.
|
||||||
|
* **Die meisten Sätze haben eine Standardübersetzung** — das Lexikon in
|
||||||
|
{ref:sec:modellierung-glossar} nennt sie. Sein Wert liegt aber in den fünf Wendungen, bei
|
||||||
|
denen es keine gibt: „möglichst", „nicht mehr als", „im Durchschnitt", „so schnell wie
|
||||||
|
möglich", „fair". Dort ist Nachfragen die Modellierungsarbeit.
|
||||||
* Die vier Fragen — worüber wird entschieden, woran gemessen, was ist unverhandelbar, was
|
* Die vier Fragen — worüber wird entschieden, woran gemessen, was ist unverhandelbar, was
|
||||||
bei Unlösbarkeit — gehören in die erste Besprechung. Der Leitfaden in
|
bei Unlösbarkeit — gehören in die erste Besprechung. Der Leitfaden in
|
||||||
{ref:sec:modellierung-leitfaden} macht zwölf daraus.
|
{ref:sec:modellierung-leitfaden} macht zwölf daraus.
|
||||||
|
|
|
||||||
|
|
@ -448,6 +448,29 @@ Der Kippwert sagt dem Betrieb etwas Konkretes: *„Erst wenn Ihnen ein Euro Umsa
|
||||||
ist als λ Euro Deckungsbeitrag, ändert sich Ihr Plan."* Das ist eine Frage, die ein
|
ist als λ Euro Deckungsbeitrag, ändert sich Ihr Plan."* Das ist eine Frage, die ein
|
||||||
Kaufmann beantworten kann — anders als „welche Gewichtung hätten Sie gern?".
|
Kaufmann beantworten kann — anders als „welche Gewichtung hätten Sie gern?".
|
||||||
|
|
||||||
|
**{loesung} — Übersetzen, wo es nicht eindeutig ist.**
|
||||||
|
(a) Drei Lesarten von „gleichmäßig ausgelastet":
|
||||||
|
**(1) Spannweite minimieren** — $\max_i a_i - \min_i a_i$. Bestraft Ausreißer nach beiden
|
||||||
|
Seiten; ein einzelner Untätiger ist genauso schlimm wie ein Überlasteter.
|
||||||
|
**(2) Den Schlechtestgestellten verbessern** — $\max_i a_i$ minimieren (B11). Interessiert
|
||||||
|
sich nicht dafür, wie ungleich die übrigen liegen, solange die Spitze sinkt.
|
||||||
|
**(3) Abweichung vom Mittel minimieren** — $\sum_i |a_i - \bar a|$ (B10). Verteilt die
|
||||||
|
Last am gleichmäßigsten, kann aber die Spitze höher lassen als (2).
|
||||||
|
Wo es sichtbar wird: Bei fünf Monteuren mit 8, 8, 8, 8 und 16 Stunden senkt (2) die 16
|
||||||
|
zuerst; bei 4, 8, 8, 8, 12 tut (1) am meisten gegen die Spreizung, während (2) kaum etwas
|
||||||
|
findet. Und wenn ein Monteur aus guten Gründen nur halbtags da ist, bestrafen (1) und (3)
|
||||||
|
genau das — (2) nicht.
|
||||||
|
(b) Hart: $w_k \le 3$ für jeden Kunden $k$. Weich: $w_k \le 3 + s_k$ mit $s_k \ge 0$ und
|
||||||
|
Strafkosten $c \cdot s_k$ in der Zielfunktion (B8, B18). Die Frage an den Betrieb ist die
|
||||||
|
dritte der vier: *Was passiert, wenn es einmal nicht geht?* Führt die Antwort zu „dann
|
||||||
|
müssen wir eben" — weich. Führt sie zu „das darf nicht passieren, dann rufen wir an und
|
||||||
|
verschieben" — dann ist auch das ein Prozess, und die Bedingung bleibt weich, nur mit sehr
|
||||||
|
hohen Strafkosten. Wirklich hart ist sie nur, wenn ein Verstoß rechtlich unmöglich ist.
|
||||||
|
(c) Individuell. Prüfkriterium: Wird eine Wendung gefunden, die **zwei** vertretbare
|
||||||
|
Modelle zulässt — und wird benannt, wer die Wahl treffen muss? Die häufigsten Kandidaten in
|
||||||
|
echten Anforderungen sind „in der Regel", „zeitnah", „vergleichbar" und jede Zahl ohne
|
||||||
|
Bezugszeitraum.
|
||||||
|
|
||||||
**{loesung} — Die Anforderung schreiben.**
|
**{loesung} — Die Anforderung schreiben.**
|
||||||
Eine tragfähige Anforderung enthält mindestens:
|
Eine tragfähige Anforderung enthält mindestens:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,6 +44,11 @@
|
||||||
| B23 | Zuordnung 1:1 | „Jeder genau eine Aufgabe“ | {ref:kap:graphen} |
|
| B23 | Zuordnung 1:1 | „Jeder genau eine Aufgabe“ | {ref:kap:graphen} |
|
||||||
| B24 | Subtour-Eliminierung | „Keine isolierten Kreise“ | {ref:kap:graphen} |
|
| B24 | Subtour-Eliminierung | „Keine isolierten Kreise“ | {ref:kap:graphen} |
|
||||||
|
|
||||||
|
> **Umgekehrte Richtung:** Wer von einem Satz aus der Besprechung kommt und das Muster
|
||||||
|
> sucht, findet in {ref:sec:modellierung-glossar} ein Lexikon, das genau so herum
|
||||||
|
> aufgebaut ist — und die Wendungen benennt, bei denen es keine eindeutige
|
||||||
|
> Übersetzung gibt.
|
||||||
|
>
|
||||||
> Die Spalte „Wo im Buch“ nennt das Kapitel, in dem das Muster **im Zusammenhang**
|
> Die Spalte „Wo im Buch“ nennt das Kapitel, in dem das Muster **im Zusammenhang**
|
||||||
> vorkommt — nicht die einzige Stelle, an der es taugt. Die Nummern entstehen beim Bauen;
|
> vorkommt — nicht die einzige Stelle, an der es taugt. Die Nummern entstehen beim Bauen;
|
||||||
> im Quelltext dieses Anhangs steht keine einzige.
|
> im Quelltext dieses Anhangs steht keine einzige.
|
||||||
|
|
|
||||||
44
PROGRESS.md
44
PROGRESS.md
|
|
@ -77,14 +77,14 @@ sie unerwartet ab, ist etwas kaputtgegangen.
|
||||||
| Kapiteldateien | 22 | **31** |
|
| Kapiteldateien | 22 | **31** |
|
||||||
| Kapitel | 15 | **23** |
|
| Kapitel | 15 | **23** |
|
||||||
| Anhänge | 4 | **5** |
|
| Anhänge | 4 | **5** |
|
||||||
| Zeilen im Gesamtdokument | 11 082 | **28 253** |
|
| Zeilen im Gesamtdokument | 11 082 | **28 322** |
|
||||||
| Größe des Gesamtdokuments | 606 KB | **1 593 KB** |
|
| Größe des Gesamtdokuments | 606 KB | **1 602 KB** |
|
||||||
| Hauptüberschriften | 131 | **298** |
|
| Hauptüberschriften | 131 | **298** |
|
||||||
| registrierte Abschnitte | 122 | **295** |
|
| registrierte Abschnitte | 122 | **296** |
|
||||||
| aufgelöste Querverweise | 314 | **755** (0 unaufgelöst) |
|
| aufgelöste Querverweise | 314 | **766** (0 unaufgelöst) |
|
||||||
| Indexmarken | 295 | **328** |
|
| Indexmarken | 295 | **328** |
|
||||||
| Beispielprogramme | 41 | **76** (alle lauffähig) |
|
| Beispielprogramme | 41 | **76** (alle lauffähig) |
|
||||||
| PDF-Seiten | — | **746** |
|
| PDF-Seiten | — | **749** |
|
||||||
| Notebooks | — | **25** |
|
| Notebooks | — | **25** |
|
||||||
| Plotly-Figuren | — | **4** |
|
| Plotly-Figuren | — | **4** |
|
||||||
| Diagramme (SVG) | 26 | **33**, davon **19** mit Generatorskript (16 Skripte) |
|
| Diagramme (SVG) | 26 | **33**, davon **19** mit Generatorskript (16 Skripte) |
|
||||||
|
|
@ -1690,6 +1690,40 @@ davor warnt.
|
||||||
SVG byteidentisch über zwei Läufe. Diagramme jetzt **33**, davon **19** mit Generator
|
SVG byteidentisch über zwei Läufe. Diagramme jetzt **33**, davon **19** mit Generator
|
||||||
(16 Skripte).
|
(16 Skripte).
|
||||||
|
|
||||||
|
### ✅ 7.3 Glossar „Deutsch — OR" ({ref:kap:modellierung})
|
||||||
|
|
||||||
|
Setzt Paket 7 aus `Verbesserungen_03.md` um. Neuer Abschnitt
|
||||||
|
{ref:sec:modellierung-glossar}, unmittelbar hinter dem Gesprächsleitfaden: Die zwölf Fragen
|
||||||
|
liefern Sätze — hier werden sie übersetzt.
|
||||||
|
|
||||||
|
**Die Abgrenzung zu Anhang B war die eigentliche Entwurfsfrage.** Der Musterkatalog hat
|
||||||
|
längst eine Spalte „Umgangssprachlich", aber er läuft in die andere Richtung: **Muster →
|
||||||
|
Formulierung**. Wer aus einer Besprechung kommt, hat den Satz und sucht den Baustein. Das
|
||||||
|
Lexikon ist genau so herum gebaut (21 Einträge, jeweils mit B-Nummer), und Anhang B bekam
|
||||||
|
einen Rückverweis. Kein Duplikat, sondern die fehlende Gegenrichtung.
|
||||||
|
|
||||||
|
**Der Teil, der den Abschnitt trägt, ist aber nicht die Tabelle**, sondern was danach kommt:
|
||||||
|
**fünf Wendungen, bei denen die Übersetzung eine Entscheidung erzwingt** — „möglichst",
|
||||||
|
„nicht mehr als drei pro Woche", „im Durchschnitt", „so schnell wie möglich", „fair". Bei
|
||||||
|
jeder gibt es zwei bis drei vertretbare Modelle, und die Wahl gehört dem Betrieb, nicht dem
|
||||||
|
Modellierer. Das ist die These des Kapitels („Ein Satz ist noch kein Modell"), hier auf die
|
||||||
|
Alltagssprache angewandt.
|
||||||
|
|
||||||
|
Dazu die **Gegenrichtung OR → Deutsch**: acht Sätze, die sich bewährt haben, wenn ein
|
||||||
|
Ergebnis jemandem erklärt werden muss, der das Modell nicht kennt — einschließlich der
|
||||||
|
Formulierung für `INFEASIBLE` („Ihre Regeln widersprechen sich", **nicht** „der Computer
|
||||||
|
schafft es nicht").
|
||||||
|
|
||||||
|
Die neue Übungsaufgabe lässt drei Zielfunktionen für „gleichmäßig ausgelastet" aufstellen;
|
||||||
|
die Lösung nennt je einen Fall, in dem die Wahl den Plan sichtbar ändert — und weist darauf
|
||||||
|
hin, dass zwei der drei einen Halbtagsmonteur bestrafen.
|
||||||
|
|
||||||
|
Mitgezogen: Lernziel, Zusammenfassung, Rückverweis aus Anhang B, Pfad E im Vorwort
|
||||||
|
(er führte bisher direkt zum Musterkatalog, jetzt über das Lexikon).
|
||||||
|
|
||||||
|
**Damit ist Phase 7 abgeschlossen.** 296 Abschnitte, 766 Querverweise, 141 Aufgaben mit
|
||||||
|
141 Lösungen, PDF **749** Seiten.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 8. Commit-Historie des V04-Strangs
|
## 8. Commit-Historie des V04-Strangs
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ daraus ab, und alle Befehle unten werden **hier** ausgeführt.
|
||||||
| `Operations_Research_mit_Python_Version_04/` | **Quelle**: 31 Kapiteldateien + Build-Skripte |
|
| `Operations_Research_mit_Python_Version_04/` | **Quelle**: 31 Kapiteldateien + Build-Skripte |
|
||||||
| `bilder_04/` | **Quelle**: Diagramme (SVG/PNG) + `erzeuge_*.py`-Generatoren |
|
| `bilder_04/` | **Quelle**: Diagramme (SVG/PNG) + `erzeuge_*.py`-Generatoren |
|
||||||
| `Operations_Research_mit_Python_Version_04.md` | generiert: Gesamtdokument (Pandoc-Eingabe) |
|
| `Operations_Research_mit_Python_Version_04.md` | generiert: Gesamtdokument (Pandoc-Eingabe) |
|
||||||
| `Operations_Research_mit_Python_Version_04.pdf` | generiert: PDF, 746 Seiten |
|
| `Operations_Research_mit_Python_Version_04.pdf` | generiert: PDF, 749 Seiten |
|
||||||
| `OR_HTML_04/` | generiert: **Mehrseiten-Website** — dieser Ordner wird veröffentlicht |
|
| `OR_HTML_04/` | generiert: **Mehrseiten-Website** — dieser Ordner wird veröffentlicht |
|
||||||
| `Operations_Research_mit_Python_Version_04_Programme/` | generiert: 76 lauffähige Beispielprogramme |
|
| `Operations_Research_mit_Python_Version_04_Programme/` | generiert: 76 lauffähige Beispielprogramme |
|
||||||
| `Notebooks_04/` | generiert: ein Jupyter-Notebook je Kapitel |
|
| `Notebooks_04/` | generiert: ein Jupyter-Notebook je Kapitel |
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue