SirStone
  • Joined on 2025-05-04
SirStone opened issue SirStone/SirRoboGarage#37 2026-08-20 23:05:47 +02:00
spec: SAC_LSTM_Bot — Recurrent SAC with LSTM for Robocode TankRoyale
SirStone closed issue SirStone/SirRoboGarage#28 2026-08-18 16:33:29 +02:00
PPO_Bot wiring and integration test
SirStone closed issue SirStone/SirRoboGarage#24 2026-08-18 16:33:29 +02:00
PRD: Command abstraction layer for PPO action space
SirStone commented on issue SirStone/SirRoboGarage#28 2026-08-18 16:33:23 +02:00
PPO_Bot wiring and integration test

Resolution

Audited the full wiring. Previous tickets (#25–#27) had already done the heavy lifting:

  • #25: gotoTick / aimToTick in controllers.nim — done
  • #26: State vector…
SirStone closed issue SirStone/SirRoboGarage#18 2026-08-18 16:32:25 +02:00
Command abstraction layer for PPO action space
SirStone commented on issue SirStone/SirRoboGarage#18 2026-08-18 16:32:24 +02:00
Command abstraction layer for PPO action space

Map complete

All 5 decision tickets resolved. The command abstraction layer design is fully decided — implementation tracked under PRD #24.

Decisions:

  • #19 — Output space: 6-dim (goto x/y,…
SirStone commented on issue SirStone/SirRoboGarage#29 2026-08-18 16:16:22 +02:00
[Map] Autonomous LLM-supervised PPO_Bot training pipeline

Map complete

All tickets resolved. The destination is reached: tools/training_runner/ is a dumb CLI tool that runs PPO_Bot against a chosen opponent for unlimited rounds with crash recovery,…

SirStone closed issue SirStone/SirRoboGarage#29 2026-08-18 16:16:22 +02:00
[Map] Autonomous LLM-supervised PPO_Bot training pipeline
SirStone commented on issue SirStone/SirRoboGarage#31 2026-08-18 16:11:34 +02:00
Define the tunable parameter set

Resolution

Decision: expose all non-structural hyperparameters.

Full tunable set (11 params, all via PPOB_* env vars with sensible defaults):

Easy (already wired):

  • PPOB_LR…
SirStone closed issue SirStone/SirRoboGarage#31 2026-08-18 16:11:34 +02:00
Define the tunable parameter set
SirStone closed issue SirStone/SirRoboGarage#34 2026-08-18 15:57:05 +02:00
Build the training runner tool
SirStone commented on issue SirStone/SirRoboGarage#34 2026-08-18 15:57:00 +02:00
Build the training runner tool

Built: tools/training_runner/

What was built

tools/training_runner/RunTraining.java — Java battle runner that accepts [opponent] [rounds] CLI args (also via env vars `TRAINING_O…

SirStone closed issue SirStone/SirRoboGarage#30 2026-08-18 15:45:15 +02:00
Hyperparam delivery: env vars vs compile-time constants
SirStone commented on issue SirStone/SirRoboGarage#30 2026-08-18 15:45:11 +02:00
Hyperparam delivery: env vars vs compile-time constants

Resolution

Decision: flat env vars with stdlib defaults.

  • Delivery mechanism: environment variables, one per hyperparameter
  • Prefix + naming: PPOB_ + SCREAMING_SNAKE (PPOB_LR,…
SirStone closed issue SirStone/SirRoboGarage#35 2026-08-18 15:41:13 +02:00
Persist Adam optimizer state and round counter across restarts
SirStone commented on issue SirStone/SirRoboGarage#35 2026-08-18 15:41:09 +02:00
Persist Adam optimizer state and round counter across restarts

Resolved in commit 0b17430 on branch research/goto-controller.

What was done:

  • Exported AdamState type and its m, v, t fields, plus all ACAdamStates fields, from training.nim…
SirStone closed issue SirStone/SirRoboGarage#32 2026-08-17 21:35:24 +02:00
Structured output format for LLM consumption
SirStone commented on issue SirStone/SirRoboGarage#32 2026-08-17 21:35:23 +02:00
Structured output format for LLM consumption

Resolution

Format: JSON lines, appended to training_log.jsonl, one object per round.

Fields per round:

  • round — cumulative across restarts
  • ticks — round length
  • reward…
SirStone closed issue SirStone/SirRoboGarage#33 2026-08-17 19:58:41 +02:00
Stall detection: hardcoded heuristics vs LLM judgment
SirStone commented on issue SirStone/SirRoboGarage#33 2026-08-17 19:58:21 +02:00
Stall detection: hardcoded heuristics vs LLM judgment

Merged into #32 — stall detection is an external concern; the runner just needs rich enough output.