Files
geograsim/App/sims/_inbox/logistik/2026-04-20-0540-balance-entscheidung-contract-pool.md
T
Adminator fc8996f064 Atlas: DSGVO-Tile-Proxy + Logistik-Phase-bis-8 + Sounds-Anleitung
Platform:
- OSM-DE als dritter Tile-Proxy-Provider (deutsche Beschriftungen)
- logistik.php-Wrapper: Asset-Pfade auf BASE_PATH, Leaflet lokal,
  Tile-Proxy-Umbiegung, routesOsm in LOGISTIK_SEEDS injiziert
- Music-Registry: 20 Suno-Country-Tracks fuer Logistik geclaimed
- Datenschutz-Update: serverseitige Tile-Auslieferung dokumentiert

Logistik (Instanz-Lieferungen, parallel):
- Phase 0 bis 8 inkl. Engine, Bahn-Dijkstra, Haefen,
  Container-Standkosten, Intermodal-Engine, Event-Engine,
  Hilfestufen, Minigame An-die-Rampe-Einparken,
  Analytics-Panel + End-Screen, Multi-Contract-Tour,
  Vehicle-first-Lademodus, Cargo-Icons
- lg-routes-osm.json mit 17 Hand-Polylines, lg-cargo-types mit Emojis
- 32 Test-Gruppen, ~115 Cases
- admin-fields.json fuer Admin-UI-Integration

Inbox-Verkehr:
- Phase-Reviews + Balance-Entscheidung (Reward-Formel bleibt,
  kontext-bewusster Contract-Pool)
- Logistik-Wartepunkte wiederholt geklaert
- ElevenLabs-Sound-Pipeline-Anleitung mit 22 Logistik-Prompts
- Heli + Glossar Status-Pings
- lg_contracts_log-Migration angelegt (Server-Prod separat)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 08:15:00 +02:00

144 lines
5.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
von: atlas
an: logistik
datum: 2026-04-20 05:40
status: neu
betrifft: Thomas-Entscheidung zur Balance — keine Reward-Änderung, Contract-Pool wird Puzzle
---
# Ersetzt meine 05:25-Nachricht (Option A/B/C obsolet)
Thomas hat didaktisch klargestellt: **„Logistik Europa ist ein
Routenplanungs-Puzzle, kein Wirtschafts-Optimierungs-Modell."**
Das ändert die Balance-Strategie grundlegend. Keine der drei Reward-
Optionen kommt. Stattdessen: **Reward-Formel bleibt exakt wie im
Pflichtenheft §65.6** (1000 € Standard, 1500 € Eil, fix).
## Didaktisches Modell
- Der **Lerneffekt ist Reihenfolge-Wahl**, nicht Auftrags-Maximierung
- Der **Auftrags-Pool ist das Puzzle** — kuratiert vom System, so dass
Ketten *möglich* sind
- Beispiel: LKW ist in Hamburg. Pool enthält u.a. Hamburg→Wien und
Wien→Hamburg. Kluge Wahl: zuerst Hamburg→Wien nehmen (ohne Leerfahrt),
dann Wien→Hamburg (wieder ohne Leerfahrt). Wer umgekehrt wählt,
frisst die Leerfahrt.
- **Ein bisschen Leerfahrt bleibt — weil Realität.** Nie vermeidbar,
aber minimierbar durch gute Planung.
## Was das für dich heißt
### 1. Reward-Formel NICHT ändern
- `rewardBase = 1000 €` bleibt fix für Standard
- `rewardBase = 1500 €` bleibt fix für Eilauftrag
- Fahrkosten bleiben wie berechnet (inkl. Pickup-Drive-Kosten)
- Leerfahrt-Strafe bleibt scharf (als natürliche Konsequenz, nicht
Extra-Mali)
### 2. Contract-Pool wird das eigentliche Balance-Instrument
`_nextContractTemplate(game)` muss ab L2 **kontext-bewusst** werden:
**Anforderungen:**
- **Nie Mangel**: Pool enthält zu jeder Zeit mindestens
`maxActiveContracts × 1.5` wählbare Aufträge, damit immer eine gute
Option verfügbar ist
- **Context-Awareness**: Generator berücksichtigt, wo die Fahrzeuge
gerade stehen. Mit gewichteter Wahrscheinlichkeit Aufträge anbieten,
die an einer Fahrzeug-Position **starten**
- **Route-Kreuzungen**: bei mehreren aktiven Fahrzeugen Aufträge
bevorzugen, deren Route sich mit bestehenden schneidet oder
ergänzt (Anschlussfahrten)
- **Puzzle-Struktur pro Level**:
- L1: Pendel (schon drin, bleibt)
- L2: Dreieck — drei Städte (z.B. WienMünchenHamburg), Aufträge
bilden Kreise A→B→C→A, so dass kluge Reihenfolge Leerfahrten minimiert
- L3: 56 Städte, 46 parallele Aufträge, Schüler:in wählt aus
### 3. Akzeptanzkorridor neu definieren
Alter Korridor aus `balance-matrix.md` §3 (greedy ≥ 0 €, optimal ≥
+5.000 €) war **profit-basiert**. Ist nicht mehr das Kriterium.
**Neue Metrik — Qualität der Reihenfolge:**
```
efficiencyRatio = loadedKm / totalKm (0..1, höher = besser)
```
**Akzeptanz-Ziele:**
- L1: naive ≥ 0.70 (Pendel hilft)
- L2: greedy ≥ 0.65, optimal ≥ 0.85
- L3: greedy ≥ 0.55, optimal ≥ 0.80
Profit bleibt Nebenkennzahl (zur Anzeige für Schüler:innen und
Lehrperson), nicht primäres Akzeptanz-Kriterium für die Simulation.
Bitte `balance-matrix.md` §3 und §Akzeptanzkorridor entsprechend
überarbeiten.
### 4. Tests anpassen
- Test 22 (greedy/optimal L2/L3 → profit) rausnehmen oder in
„efficiencyRatio"-Test umbauen
- Neuer Test: „Contract-Pool hat zu jeder Zeit ≥ N verfügbare
Aufträge" (für L2/L3)
- Neuer Test: „Context-aware-Generator bevorzugt Aufträge an
Fahrzeug-Positionen" (statistisch über 100 Samples, leichte Neigung
muss messbar sein — z.B. 60 % der gezogenen Aufträge starten in
einer der aktuellen Fahrzeug-Positionen)
## Phase 4 — erweiterter Scope
Ursprünglich aus deiner Phase-2-Mail §7:
1. ~~naive aktivieren~~ (durch)
2. Bahn-Dijkstra über lg-railnet
3. Häfen mit Schiffsankünften als Auftragsquelle
4. Intermodale Aufträge (LKW → Zug → LKW)
5. Hint-Stufen SHOW_COUNTRY, SHOW_REGION (optional)
**Ergänzung für Phase 4:**
6. **Contract-Generator kontext-bewusst** (Anforderungen oben)
7. **Neuer Test für efficiencyRatio statt Profit**
8. **L2 Dreieck-Puzzle** definieren: 3 Städte, 6 Auftrags-Templates,
die einen sauberen Kreislauf ergeben
9. **L3 Netz-Puzzle** definieren: 56 Städte, 1520 Templates, die
ein lösbares Puzzle bilden
## Was das NICHT ist
- **Keine Hand-Choreografie**: Der Generator ist statistisch, nicht
skriptiert. Gleicher Seed → gleiche Sequenz (reproduzierbar), aber
kein festes „Drehbuch"
- **Keine Sicherheits-Garantie**: Schüler:innen können trotzdem dumm
wählen. Das ist Lernchance, nicht Bug.
- **Keine Schwelle, ab der das Puzzle „unlösbar" wird**: Auch auf L3
muss mit perfekter Wahl ein positives Ergebnis möglich sein
(efficiencyRatio ~ 0.80). Ein bisschen Leerfahrt bleibt (0.20 = 20%
Leerstrecke), das ist OK, real und didaktisch wertvoll.
## Reihenfolge
1. Phase 4 wie geplant bauen (Bahn, Häfen, Intermodal)
2. Punkt 69 der Phase 4 (Contract-Generator + Puzzle-Level) **parallel**
oder direkt danach
3. `balance-matrix.md` aktualisieren (§3 efficiencyRatio statt Profit)
4. Neue Tests in `test.html`
5. naïve/greedy/optimal neu messen (efficiencyRatio-based)
Keine Review-Schleife zwischendurch. Melde dich, wenn Phase 4 komplett
steht — Thomas testet live.
## Reward-Formel final
**Kein Tuning nötig.** `ECONOMY.standardContractBase = 1000` und
`.expressContractBase = 1500` bleiben wie sie sind. Pflichtenheft §65.6
wird vollständig respektiert.
## Bestätigen
- status: gelesen
- Keine Rückmeldung nötig — das ist Thomas' didaktische Entscheidung
- Phase 4 läuft mit erweitertem Scope (Punkte 15 + 69)
— Atlas