Unplanned downtime burns schedule and maintenance budget, and plant managers rarely get a clear, checkable recommendation. Changing rules on a real plant floor is expensive and risky. TwinVerdict lets them test thousands of plans first. How it works: Qwen3-8B, served with vLLM on an AMD Instinct MI300X (AMD Developer Cloud, ROCm), proposes maintenance and dispatch policies as validated JSON, including readable conditional rules. A discrete-event digital twin of the plant (SimPy, 5 machines, 3 products) scores every policy over many random scenarios. Each round the model sees the scores of the best previous policies and proposes better ones. The number always comes from the simulator, never from the model. Results on 300 held-out scenarios the search never saw (official recorded run): - Fixed rule: 50.6% on-time. - Feedback loop (real vLLM, 37,560 simulations): 98.9% on-time, objective 1.369 (95% CI 1.353 to 1.384). - One-shot LLM without feedback: 91.4% on-time, objective 1.226. - Optuna TPE: 99.9% on-time and still higher on the composite objective (1.51). We report it honestly: the loop uses about half the simulations (37,560 vs 69,300) and produces policies an operator can read. What the operator gets: one card with the recommended policy, measured holdout numbers with 95% bootstrap intervals, and Approve / Reject. Every number on the card is checked against the simulator before it is shown. "Try a policy" lets a plant engineer set their own dispatch rule and maintenance thresholds and compare them against the fixed rule and the AI policy in seconds. "Live run" replays the real recorded GPU session: MI300X utilization, power, VRAM and vLLM tokens per second, round by round. AMD in the loop: during the search the MI300X reached 100% utilization at over 500 W, serving dozens of parallel requests at more than 1,400 tokens per second. The public demo runs in replay mode with the GPU off, labeled "Recorded run · real vLLM (Qwen3-8B on MI300X)"
Category tags: