SimSimulator — Theory-to-Probability Engine
SimSimulator closes the gap between "I have a hypothesis" and "here are the most likely futures, ranked by probability." A Research Agent reads the user's natural-language theory, discovers the variables that drive it, and grounds their distributions in web-sourced evidence with citations preserved. A mandatory human-in-the-loop gate lets the analyst confirm or edit the variable manifest before any simulation runs. Monte Carlo trials (up to 1M iterations) then feed adaptive clustering that finds the natural number of outcomes in the data — no artificial top-10 cap — each with a probability, confidence interval, and key drivers. The same domain-agnostic pipeline handles climate, financial, medical, or geopolitical questions without special-casing, and every run is fully reproducible from its seed and manifest.

Key Features
Human-in-the-Loop Gate
The Research Agent proposes; the analyst disposes. Every initial run passes through a mandatory variable-manifest review where the user confirms, edits, or removes variables before a single trial executes.
Adaptive Outcome Ranking
Clustering finds the natural number of outcomes in the trial data — 9 clusters if that's what the data yields — each ranked with probability, confidence interval, key drivers, and exemplar trials to drill into.
Honest Uncertainty
Estimated priors are flagged, conflicting sources noted, and every response carries an epistemic warning: probabilities are conditional on AI-extracted distributions, not calibrated forecasts. Decision support, not decisions.
Challenges
- Turning a free-text theory into a defensible simulation model without the user hand-building one
- Grounding variable distributions in real evidence — and being honest when no citable prior exists
- Keeping one domain-agnostic pipeline that handles climate, finance, epidemiology, and geopolitics without branching
- Communicating uncertainty without overstating it — these are conditional probabilities, not calibrated forecasts
Solutions
- LLM Research Agent proposes a variable manifest from web evidence; a mandatory human-in-the-loop review gate confirms it before simulation
- Estimation-with-notation fallback: uncited priors use defensible heuristics, flagged in estimation_flags and sources_of_error — never a silent guess
- Adaptive cluster count (silhouette / gap statistic) finds the natural outcomes in the trial data instead of forcing a fixed top-N
- Epistemic warning, per-outcome confidence intervals, and drill-down from outcome → cluster → trials → variable assumptions in every result
Project Outcomes
Four coequal surfaces over one Pipeline core — in-process Python, Gradio GUI, REST API, and MCP server — with zero per-adapter schema drift
Fully reproducible runs: same seed, manifest, and iteration count always yield the same ranked outcomes
Factor-impact re-runs: re-weight any variable and re-simulate against cached research, linked by parent_run_id
Every uncited variable prominently flagged in the GUI, with conflicting sources resolved conservatively and noted