Add game-simulation package with multi-run balance testing, fix stalled-pipeline trap
Adds a full simulation harness (game-simulation package) with greedy/random strategies, 36-metric diagnostics, multi-run orchestration via child processes, and a statistical interpreter. Includes 2.3x engine performance optimizations (research bonus caching, per-DC dirty tracking, reduced allocations in tick pipeline, single-pass loops). Fixes a critical balance bug where training pipelines stalled on insufficient VRAM would permanently block training slots — the engine never re-checked stalled pipelines, and the greedy strategy didn't pre-check VRAM requirements. This caused 20-25% of seeds to get stuck in Scale-up era. All three fixes (engine un-stalling, strategy VRAM pre-check, stalled pipeline cancellation) bring pass rate from 75% to 100% across 20 random seeds. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"name": "@ai-tycoon/game-simulation",
|
||||
"private": true,
|
||||
"version": "0.0.1",
|
||||
"type": "module",
|
||||
"main": "./src/simulate.ts",
|
||||
"types": "./src/simulate.ts",
|
||||
"scripts": {
|
||||
"simulate": "tsx src/simulate.ts",
|
||||
"simulate:greedy": "tsx src/simulate.ts --strategy greedy --ticks 28800",
|
||||
"simulate:random": "tsx src/simulate.ts --strategy random --ticks 28800",
|
||||
"simulate:ci": "tsx src/simulate.ts --strategy greedy --ticks 28800 --json --csv --seed 42",
|
||||
"multirun": "tsx src/multirun.ts",
|
||||
"multirun:quick": "tsx src/multirun.ts --runs 5 --parallel 4 --strategy greedy --ticks 28800",
|
||||
"multirun:full": "tsx src/multirun.ts --runs 20 --parallel 4 --strategy greedy --ticks 28800",
|
||||
"interpret": "tsx src/interpret.ts",
|
||||
"build": "tsc",
|
||||
"typecheck": "tsc --noEmit"
|
||||
},
|
||||
"dependencies": {
|
||||
"@ai-tycoon/shared": "workspace:*",
|
||||
"@ai-tycoon/game-engine": "workspace:*"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@ai-tycoon/tsconfig": "workspace:*",
|
||||
"@types/node": "^22.0.0",
|
||||
"tsx": "^4.19.4",
|
||||
"typescript": "^5.8.0"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user