GUNNCHOS / NASA SPACE APPS 2026 / CHICAGO
Lunar Outpost
Resilience Trainer
What would you switch off to keep two astronauts safe? Run a lunar outpost, compare competing plans and trace the consequences through one inspectable simulation.
Build a Junior Astronaut Mission Trainer · LUNAR-24 · Model 1.1.0 · Edmund Gunn Jr.
One mission.
Competing needs.
Two astronauts must complete a fictional 24-hour lunar exercise. Oxygen generation spends water and electricity. Water recovery saves supplies but draws power. Science, shelter, a robotic repair, greenhouse care and a simulated radio compete for electrical capacity. Stored dry food supplies the crew; greenhouse care earns an activity proxy and produces no harvest during this mission.
An hour-6 array fault, hour-10–14 radiation drill and hour-12–18 simulated radio outage create consequential choices. The interface forecasts the next hour. A bounded data queue stores science during the outage, delivers it after recovery and records overflow as lost data.
Junior offers friendly language and an in-context dictionary. Explorer compares policies and what-if cases. Engineer exposes equations, units, assumptions, trace and exports. Changing the view leaves the same authoritative mission state unchanged. The educational goal is to explain what a plan sacrificed and why; learning effectiveness remains unmeasured.
Science you
can inspect
| NASA-based input | Value | Source locator |
|---|---|---|
| Surface crew O₂ demand | 0.84 kg/person/day | NTRS 20230012635, Table 8, 82 kg reference crew |
| Crew water demand | 3.20 kg/person/day | Table 8: drink 2.00 + food 0.50 + hygiene 0.40 + flush 0.30 |
| Dry food demand | 0.98 kg/person/day | Table 2, non-EVA as-shipped dry component |
| Electrolysis feedwater | 1.125 kg/kg O₂ | Rounded 36/32 stoichiometry, consistent with Table 11 |
NASA ECLSS explains water/oxygen coupling. Its historical 90% recovery overview informs an illustrative treatment efficiency. Wastewater collection of 75% is authored. Dry food excludes food water and packaging, preventing those from being counted again.
Battery [kWh] += (solar [kW] − served load [kW]) × 1 h Oxygen [kg] += generated oxygen − actual crew uptake Water [kg] += recovery − crew use − O₂ feedwater − crop care Dry food [kg] -= actual crew dry-food use Data [MiB]: generated = queued + delivered + dropped
Flows respect available stock, tank capacity and power. The trace records demand, actual supply, unmet demand, treatment reject, uncollected water, overflow and vented hydrogen. Crew water receives priority before electrolysis and crop care. This is a partial inventory model, not complete habitat mass closure.
Authored teaching assumptions: hardware sizes and loads, greenhouse demand, repair and outage timing, science/data rates, reserve constraints and exposure points. Exposure is a simplified shielding scenario with no clinical dose interpretation. There is no live telemetry, operational lunar network, NASA endorsement or engineering certification.
Hourly aggregation omits cabin pressure, explicit CO₂ chemistry, thermal dynamics, biological crop growth, realistic radiation transport and physical RF propagation. Full model and limitations ↗ · Machine-readable provenance ↗
Computed
policy comparison
A deterministic search evaluates 567 phase specifications with the same initial conditions and transition function. It varies repair timing, science schedules and greenhouse-care targets. It fixes life support and radio on, and shelter during the drill. This is exhaustive within the documented grid, not globally optimal arbitrary hourly scheduling.
199 policies complete the mission and keep minimum battery ≥0.50 kWh, O₂ ≥0.30 kg, water ≥1.00 kg, dry food ≥0.25 kg and exposure ≤5 points. These margins are authored teaching requirements. Five nondominated science/crop-care objective pairs expose the trade-off.
| Selected preference | Science h | Crop-care h | Min battery kWh |
|---|---|---|---|
| Science | 12 | 0 | 0.90 |
| Balanced | 9 | 12 | 0.75 |
| Greenhouse care | 4 | 24 | 0.90 |
| All-case margins | 2 | 4 | 5.50 (reference) |
Each fixed policy is rerun with 10% less solar, 10% greater crew use, a one-hour longer repair, and their combination, alongside the reference case. Eighteen policies meet margins in all five cases. The selected robust policy has minimum battery 1.035 kWh in the combined case. This is deterministic sensitivity evidence, not a probability of safety or universal robustness.
The unchanged initial controls fail on unserved power at hour 9. The manual reference recovery completes 24 hours with 14 science hours, but touches zero battery at a boundary and misses the planner’s extra reserve. Survival and planning margins are different checks.
Try the computed planner ↗ · All computed policy and sensitivity results ↗ · Balanced replay ↗ · Robust replay ↗
Evidence and
educational access
The baseline had 14 deterministic tests. The 1.1.0 candidate has 41 passing model/planner tests covering outcomes, bounded mass and energy flows, impossible states, food, greenhouse demand, buffering/loss, replay, policy feasibility, non-dominance and sensitivity. Real-browser checks operate controls, preserve state across learning views, apply computed strategies, export/replay, check 390px bounds, use the keyboard map and run both offline paths.
The application needs no account, API key, remote font, media download or runtime library. The standalone HTML includes the simulation, planner, SVG and explanations. After initial HTTPS load, a service worker supports offline reload. Native labeled controls, visible focus, text alongside color, reduced-motion support and learner-paced time help access. Screen-reader usability and classroom outcomes still require user testing.
Evidence against all five judging criteria ↗ · Actual verification output ↗ · Reference recovery record ↗ · Ignored-fault record ↗
Take the
mission with you
Save and open offline.html in a current browser. External references require network. To reproduce model checks, unzip the source and run node --test tests/*.test.cjs. No npm install is required. Full instructions are in the source README.
Sources and
authorship
Lynch et al., Logistics Rates and Assumptions for Future Human Spaceflight Missions Beyond LEO, NASA NTRS 20230012635 (2023), Tables 2, 8 and 11. NASA Environmental Control and Life Support Systems, updated April 4, 2025. Static sources accessed November 15, 2026.
Project direction: Edmund Gunn Jr., gunnchOS. The owner supplied the names, concept, challenge and engineering requirements. OpenAI Codex was the sole active engineering assistant, assisting implementation, tests, writing, original SVG artwork and presentation on November 15, 2026. AI use is disclosed in the interface, documentation and NASA entry. Runtime play uses no AI inference.
Pre-existing: NASA publications, Node.js, Python, Chrome, Playwright, ReportLab, pypdf, Sites and the presentation runtime. Tool licenses remain separate and no third-party application libraries are bundled into the game. Existing gunnchOS production code, games, assets, release artifacts and deployments remain separate.
The independent hackathon source is documented under Apache License 2.0, consistent with the default in the accepted 2026 participation terms. This does not relicense the broader gunnchOS ecosystem or NASA materials. See acknowledgments, license and notice. No NASA logos or third-party media were used.