Pflichtenheft Simulation „Flussmanagement“ für den Geografieunterricht 1. Ziel des Projekts Ziel ist die Entwicklung einer interaktiven Simulation für den Geografieunterricht (Sekundarstufe I, 10–15 Jahre), in der Schülerinnen und Schüler ein Flusssystem steuern und dabei Zielkonflikte zwischen: Hochwasserschutz Landwirtschaft Ökologie Wirtschaft erkennen und ausbalancieren. Die Simulation soll sich wie ein Spiel anfühlen, aber fachlich korrekt und didaktisch wirksam sein. 2. Zielgruppe Schülerinnen und Schüler (10–15 Jahre) Lehrpersonen (Geografie, ggf. fächerübergreifend) Einsatz im Klassenverband (Einzel- oder Gruppenarbeit) 3. Zentrale didaktische Ziele Die Anwendung muss ermöglichen: Verständnis von Mensch–Umwelt-Systemen Erkennen von Zielkonflikten (Trade-offs) Einsicht in nichtlineare Zusammenhänge Bewertung von Eingriffen in Naturräume Reflexion historischer Entwicklungen (optional) 4. Spielprinzip Der Spieler übernimmt die Rolle eines Entscheidungsträgers (z. B. Region/Behörde) und steuert Maßnahmen an einem Fluss. Grundmechanik Spieler wählt Steuermaßnahmen Simulation berechnet Auswirkungen Spieler sieht visuelle Veränderungen Spiel bewertet Ergebnis anhand mehrerer Ziele 5. Spieldauer Das Spiel muss konfigurierbar sein: Leveltyp Dauer Kurzlevel 10–15 Minuten Standardlevel 20–30 Minuten Langlevel 30–40 Minuten Steuerung der Dauer über: Anzahl der Runden Anzahl aktiver Parameter Ereignisdichte Komplexität der Entscheidungen 6. Spielstruktur 6.1 Rundenbasiertes System Ein Level besteht aus mehreren Runden: Situation anzeigen Spieler trifft Entscheidungen Simulation wird berechnet Ergebnisse werden visualisiert ggf. Ereignis tritt ein 6.2 Levelstruktur Levels unterscheiden sich durch: Rahmenbedingungen freigeschaltete Maßnahmen Zielgewichtung Schwierigkeit 7. Steuergrößen (Spieleraktionen) Mindestens folgende Maßnahmen müssen implementiert werden: Flussbegradigung Dämme bauen Ausbaggern Auen freigeben Renaturierung Bewässerung Jede Maßnahme: hat Intensität (0–100) hat Kosten hat positive und negative Effekte 8. Zustandsparameter (Simulation) Alle Werte liegen im Bereich 0–100: Risiken Lokales Hochwasser Hochwasser flussabwärts Erosion Nutzen Bodenfruchtbarkeit Biodiversität Grundwasser Nutzbare Fläche Wirtschaft 9. Rahmenbedingungen Pro Level definierbar: Niederschlag Extremwetter Gefälle Bevölkerungsdruck Budget Diese sind nicht direkt steuerbar, beeinflussen aber die Simulation. 10. Simulationslogik 10.1 Grundprinzip Die Simulation basiert auf: direkten Effekten von Maßnahmen indirekten Wechselwirkungen zwischen Parametern nichtlinearen Funktionen 10.2 Anforderungen an die Logik Die Simulation muss: nichtlinear sein (keine einfachen +/– Beziehungen) abnehmenden Nutzen bei steigender Intensität abbilden überproportionale Nebenwirkungen bei starken Eingriffen erzeugen Kettenreaktionen ermöglichen 10.3 Beispielhafte Effekte Begradigung → mehr Fläche, aber mehr Hochwasser flussabwärts Dämme → lokaler Schutz, aber Nachteile für Landwirtschaft Renaturierung → ökologische Vorteile, aber weniger Fläche 11. Bewertungssystem 11.1 Zielbereiche Das Spiel bewertet: Sicherheit Ökologie Landwirtschaft Wirtschaft 11.2 Mehrzielbewertung Es gibt keine perfekte Lösung. Gesamtscore basiert auf gewichteter Kombination: Score = f(Sicherheit, Ökologie, Landwirtschaft, Wirtschaft) Gewichtung ist je Level anpassbar. 12. Balancing-Anforderungen Das System muss sicherstellen: 12.1 Keine dominante Strategie Keine Maßnahme darf immer optimal sein 12.2 Zielkonflikte Jede Maßnahme muss mindestens einen Nachteil haben 12.3 Kontextabhängigkeit Wirkung hängt von Rahmenbedingungen ab 12.4 Extremwerte vermeiden Maximale Eingriffe müssen Risiken erzeugen 13. Spielmechaniken gegen Fehlverhalten Muss implementiert werden: Budgetbegrenzung Strafsystem für extreme Eingriffe Katastrophen bei kritischen Zuständen Bonus für ausgewogene Strategien 14. Visualisierung Die Simulation muss visuell darstellen: Hochwasser (Überflutung) Flussverlauf (gerade vs. mäandrierend) Vegetation / Biodiversität Landwirtschaft (Ertrag sichtbar) Bebauung Wichtig: Jede Änderung im Modell muss sichtbar sein. 15. Benutzeroberfläche Anforderungen einfache Bedienung (Schüler geeignet) klare Rückmeldung visuelle Feedbacks statt Zahlenlast Parameter optional einblendbar 16. Admin-/Lehrermodus Muss enthalten: Auswahl von Levels Anpassung von: Budget Klima Zielgewichtung Aktivieren/Deaktivieren von Maßnahmen Festlegen der Spieldauer 17. Technische Anforderungen Frontend Web-basiert (HTML, JS, optional TypeScript) responsiv keine Installation nötig Backend (optional) für Speicherung von Szenarien keine Pflicht für Minimalversion 18. Erweiterbarkeit Das System muss modular aufgebaut sein, damit später ergänzt werden kann: historische Level weitere Naturprozesse andere geografische Themen 19. Test- und Balancing-System Das System muss ein internes oder separates Modul enthalten, das: viele Strategien automatisch testet dominante Strategien erkennt Extremverhalten identifiziert Balanceprobleme meldet 20. Abnahmekriterien Das System gilt als erfolgreich, wenn: ein Level in 10–40 Minuten spielbar ist mehrere unterschiedliche Strategien zum Erfolg führen keine einzelne Maßnahme dominiert Auswirkungen visuell nachvollziehbar sind Schüler Zielkonflikte erkennen können 21. Anhänge Anhang A: Datenmodell (JSON) Anhang B: Beispiel-Simulationslogik Anhang C: Balancing-Tester (Diese basieren auf den zuvor entwickelten Modellen und werden als Referenz bereitgestellt.) Fazit Dieses Pflichtenheft beschreibt kein einfaches Spiel, sondern ein: dynamisches, nichtlineares, mehrzieliges Simulationssystem für didaktisches Lernen Wenn du willst, gehe ich im nächsten Schritt noch weiter und erstelle dir: konkrete Level (z. B. Nildelta, Industrialisierung, Alpenfluss) oder eine fertige Prompt-Version für eine Programmier-KI (z. B. Cursor, GPT, etc.) Das wäre der nächste logische Schritt. Ja mach das mit dem konkreten Level noch als Ergänzung Gut — ich ergänze das Pflichtenheft jetzt um konkrete, sofort implementierbare Level-Spezifikationen. Diese sind so formuliert, dass eine KI sie direkt in Datenstrukturen oder Code übersetzen kann. Ergänzung zum Pflichtenheft: Konkrete Leveldefinitionen 22. Levelsystem – Struktur Jedes Level wird formal definiert durch: type LevelDefinition = { id: string; title: string; description: string; durationTargetMinutes: number; initialState: State; conditions: Conditions; allowedControls: (keyof Controls)[]; controlLimits: Partial; scoreWeights: { safety: number; ecology: number; agriculture: number; economy: number; }; rounds: number; events?: LevelEvent[]; winConditions: { minScore?: number; targetScores?: Partial; }; loseConditions?: { maxFloodLocal?: number; maxFloodDownstream?: number; minGroundwater?: number; }; }; 23. Level 1 – Einstieg: „Fluss und Siedlung“ Ziel Grundverständnis von Hochwasser und einfachen Maßnahmen const level1: LevelDefinition = { id: "L1", title: "Fluss und Siedlung", description: "Eine kleine Siedlung liegt an einem Fluss und ist regelmäßig von Hochwasser betroffen.", durationTargetMinutes: 10, rounds: 5, initialState: { floodLocal: 60, floodDownstream: 40, erosion: 30, soilFertility: 60, biodiversity: 70, groundwater: 55, usableLand: 40, economy: 40 }, conditions: { rainfall: 60, extremeWeather: 30, slope: 40, populationPressure: 30, budget: 120 }, allowedControls: ["levees", "floodplainRelease"], controlLimits: { levees: 60, floodplainRelease: 60 }, scoreWeights: { safety: 0.5, ecology: 0.2, agriculture: 0.15, economy: 0.15 }, winConditions: { minScore: 60 }, loseConditions: { maxFloodLocal: 85 } }; 24. Level 2 – Landwirtschaft: „Fruchtbares Tal“ Fokus Nutzen von Überschwemmungen vs. Risiko const level2: LevelDefinition = { id: "L2", title: "Fruchtbares Tal", description: "Ein Tal lebt von fruchtbaren Böden durch regelmäßige Überschwemmungen.", durationTargetMinutes: 20, rounds: 7, initialState: { floodLocal: 55, floodDownstream: 35, erosion: 35, soilFertility: 75, biodiversity: 65, groundwater: 60, usableLand: 45, economy: 50 }, conditions: { rainfall: 65, extremeWeather: 40, slope: 35, populationPressure: 40, budget: 150 }, allowedControls: ["levees", "floodplainRelease", "irrigation"], scoreWeights: { safety: 0.25, ecology: 0.2, agriculture: 0.4, economy: 0.15 }, winConditions: { targetScores: { agriculture: 65, safety: 50 } } }; 25. Level 3 – Industrialisierung: „Der gezähmte Fluss“ Fokus Technische Eingriffe und ihre Folgen const level3: LevelDefinition = { id: "L3", title: "Der gezähmte Fluss", description: "Der Fluss soll kontrolliert werden, um Städte und Industrie zu schützen.", durationTargetMinutes: 25, rounds: 8, initialState: { floodLocal: 50, floodDownstream: 45, erosion: 40, soilFertility: 55, biodiversity: 50, groundwater: 50, usableLand: 55, economy: 60 }, conditions: { rainfall: 60, extremeWeather: 45, slope: 50, populationPressure: 70, budget: 180 }, allowedControls: [ "levees", "straightening", "dredging" ], scoreWeights: { safety: 0.4, ecology: 0.1, agriculture: 0.2, economy: 0.3 }, events: [ { round: 4, type: "flood_event", intensity: 70 } ], winConditions: { minScore: 65 } }; 26. Level 4 – Systemdenken: „Fluss im Gleichgewicht“ Fokus Mehrere Ziele gleichzeitig const level4: LevelDefinition = { id: "L4", title: "Fluss im Gleichgewicht", description: "Finde eine Balance zwischen Sicherheit, Natur und Nutzung.", durationTargetMinutes: 30, rounds: 10, initialState: { floodLocal: 55, floodDownstream: 50, erosion: 45, soilFertility: 60, biodiversity: 60, groundwater: 50, usableLand: 50, economy: 55 }, conditions: { rainfall: 60, extremeWeather: 50, slope: 45, populationPressure: 60, budget: 180 }, allowedControls: [ "levees", "straightening", "floodplainRelease", "renaturation", "irrigation" ], scoreWeights: { safety: 0.25, ecology: 0.25, agriculture: 0.25, economy: 0.25 }, winConditions: { minScore: 70 } }; 27. Level 5 – Speziallevel: Nildelta Bezug zur realen Welt und deinem Wunsch nach nicht einseitigem Denken Fokus Überschwemmung als Vorteil const level5: LevelDefinition = { id: "L5", title: "Nildelta", description: "Die Überschwemmungen bringen fruchtbare Böden – aber auch Risiken.", durationTargetMinutes: 35, rounds: 10, initialState: { floodLocal: 65, floodDownstream: 40, erosion: 30, soilFertility: 85, biodiversity: 70, groundwater: 65, usableLand: 50, economy: 60 }, conditions: { rainfall: 40, extremeWeather: 20, slope: 20, populationPressure: 70, budget: 160 }, allowedControls: [ "levees", "irrigation", "floodplainRelease" ], scoreWeights: { safety: 0.2, ecology: 0.2, agriculture: 0.45, economy: 0.15 }, winConditions: { targetScores: { agriculture: 75 } }, loseConditions: { minGroundwater: 25 } }; 28. Ereignissystem (für alle Levels) type LevelEvent = { round: number; type: "flood_event" | "drought" | "economic_boost"; intensity: number; }; Beispiele: Hochwasser Dürre wirtschaftlicher Boom 29. Didaktische Progression Level Konzept 1 Ursache-Wirkung 2 Nutzen vs Risiko 3 Technik vs Natur 4 Systemdenken 5 Realwelt + Transfer 30. Abschluss Mit dieser Ergänzung hat deine KI jetzt: ein vollständiges Spielsystem ein Simulationsmodell ein Balancing-Konzept konkrete Leveldaten klare didaktische Struktur