operations_research/OR_HTML_04/programme
Repository files (latest commit first)
Filename Latest commit message Latest commit date
dschlueter 862e92bc7b Phase 8.2: Solver-Isolation ohne subprocess-Codestrings
Setzt den Isolationsteil von Paket 1 aus Verbesserungen_02.md um. Der Plan
nannte zwei Programme; beim Suchen kam ein drittes dazu, das dasselbe Muster
verwendete.

Ein_System_Vier_Ansaetze.py und Benchmark_Skalierung.py hielten ihre vier
Solvervarianten als Zeichenketten in einem Dictionary und gaben sie an
"python -c" weiter - bei Benchmark_Skalierung.py sogar mit
.format()-Platzhaltern fuer die Instanzgroesse. Aus jeder Variante ist jetzt
eine gewoehnliche Funktion mit lokalem Import geworden.
Solverwechsel_CPSAT_HiGHS.py rief sich selbst ueber sys.argv erneut auf;
auch das entfaellt.

Ausgefuehrt wird ueber einen ProcessPoolExecutor mit zwei Einstellungen, die
beide noetig sind: mp_context "spawn" (frischer Interpreter statt geerbtem
Speicher - unter Linux ist fork der Standard) und max_tasks_per_child=1 (ein
neuer Prozess je Aufgabe; ohne das verwendet der Pool seinen Arbeiter
wieder, und beim zweiten Solver ist der Konflikt zurueck). Nachgemessen:
vier Aufgaben, vier verschiedene PIDs.

Der zweite Punkt hat einen eigenen Warnkasten bekommen, weil der Fehler
leicht zu machen und schwer zu finden ist: Der Absturz kaeme nicht beim
ersten Solver, sondern beim zweiten - und saehe aus wie ein Problem des
zweiten.

Regel 4, dreifach geprueft. Ein_System_Vier_Ansaetze.py: identisch bis auf
die Zeitspalte, einschliesslich der Spannweite 2,41e-08, auf die sich der
Merksatz des Kapitels beruft. Benchmark_Skalierung.py: alle zwoelf
Zielwerte und alle drei Spannweiten bitgleich; Zeiten und Speicher haben
sich verschoben, beide sind im Abdruck seit jeher als hardwareabhaengig
gekennzeichnet. Solverwechsel_CPSAT_HiGHS.py: Ausgabe ohne Zeiten
unveraendert.

Bewusst subprocess bleibt Mutationstest.py: Dort wird pytest auf einer
mutierten Kopie in einem temporaeren Verzeichnis gestartet - ein externes
Werkzeug auf veraenderten Dateien, nicht die Isolation eines Imports.

Neu im Kapitel Oekosystem: ein Abschnitt "Wie die Isolation aussieht, wenn
sie tragen soll" - warum ein Codestring die schlechteste Umsetzung von
"eigener Prozess" ist. Anhang C nennt jetzt ebenfalls ProcessPoolExecutor.

Ein eigener Fehler, gefunden und abgesichert: Ich hatte dem neuen ### ein
{#sec:...}-Label gegeben. ABSCHNITT_RE erkennt nur "## " - das Label waere
nie registriert worden und jeder Verweis darauf ins Leere gelaufen, ohne
Warnung. Label entfernt, --check meldet den Fall jetzt. Gegengetestet.

Stand: 818 Querverweise, 76 Programme, 33 pytest-Tests, PDF 760 Seiten, 69
netzfreie Programme fehlerfrei.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-08 12:39:34 +02:00
..
Backtest_Fallen.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Bausteine_Vorlage.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Bellman_Minimalbeispiel.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Benchmark_Skalierung.py Phase 8.2: Solver-Isolation ohne subprocess-Codestrings 2026-09-08 12:39:34 +02:00
Betriebsueberwachung.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Big_M_Falle.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Bot_Allokation.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Brute_Force_Vergleich.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Chance_Constraints.py Phase 6.1: Chance Constraints - die Zusage "mit 95 % Sicherheit" 2026-09-08 01:57:19 +02:00
Constraint_Attribution.py Phase 6.2: Constraint Attribution und Managementbericht 2026-09-08 10:30:33 +02:00
CP_SAT_Statusfaelle.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
CP_SAT_Vertretungssystem.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
CVaR_Portfolio.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Data_Snooping.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Diversifikation_Demo.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Dualitaet_Nachweis.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Ein_System_Vier_Ansaetze.py Phase 8.2: Solver-Isolation ohne subprocess-Codestrings 2026-09-08 12:39:34 +02:00
Entropie_Maximierte_Allokation.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Erklaerbarkeit.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Excel_Bruecke.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Finanzdaten_Ledoit_Wolf.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Fluch_des_Durchschnitts.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Infeasibility_Diagnose.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Installationstest.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
JobShop_Intervalle.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
KKT_Nachweis.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Konfliktsuche.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Konvexitaet_Demo.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Kovarianz_Falle.py Sechster und siebter Fund: die letzten handgeschriebenen Nummern 2026-09-08 09:52:41 +02:00
Kraftwerkseinsatz.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Large_Neighborhood_Search.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Lokale_Optima_Multistart.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Markowitz_CVXPY.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Matrixform.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Mehrperiodige_Order_Execution.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Mehrziel_Pareto.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Metaheuristik_vs_Exakt.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
MILP_Portfolio_Fixgebuehren.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Min_Cost_Flow.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Modellierungsschichten.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Monte_Carlo.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Mutationstest.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Optimierungsdienst.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
or_kern.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Parallele_Suche.py Phase 6.3: Parallelitaet und Determinismus - gemessen statt behauptet 2026-09-08 11:19:53 +02:00
Predict_then_Optimize.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Propagation_Demo.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
QP_Grundlagen.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
QuantitativeTradingEngine.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Renditen_Vergleich.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Renditeschaetzung_Falle.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Robuste_Optimierung.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Rucksack.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Runden_Gegenbeispiel.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Schaetzrauschen_Demo.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Sensitivitaetsanalyse.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Simplex_Tableau_LP.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Simulated_Annealing.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Skalierung_Kondition.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Solver_Wahl.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Solverstatus_und_Gap.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Solverwechsel_CPSAT_HiGHS.py Phase 8.2: Solver-Isolation ohne subprocess-Codestrings 2026-09-08 12:39:34 +02:00
Spaltengenerierung.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Stochastische_Optimierung.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Strafgewichte.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Strukturbruecke.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
test_or_kern.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Toleranzen_und_Entartung.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
VaR_CVaR_Demo.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Vektorisierte_Modellgenerierung.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Visualisierung_Loesungsraum.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Vom_Wunsch_zum_Modell.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
VRP_Flotten_Routing.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
VRP_Kapazitaetsfalle.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00
Warmstart_Effekt.py Phase 6.3: Parallelitaet und Determinismus - gemessen statt behauptet 2026-09-08 11:19:53 +02:00
Zuordnung_Ungarisch.py Version 04 als eigenes Repository 2026-09-08 01:20:09 +02:00