AI that has to work in the real world, at speed.
Tacsmith is built by smes2, an independent developer focused on AI systems for real-time control, physics-based decision making and strategic reasoning. Each agent here was trained, measured and improved through long runs of self-play and simulation.
Background
smes2 builds learning agents from the ground up, from the neural networks and training pipelines to the search algorithms and the code that connects an agent to a live game. The two flagship projects show the range:
- Chess AI. A self-play training system in PyTorch feeding a hand-built C++ engine. It tests generations of bots on a rating ladder against Stockfish and tunes its search automatically by self-play.
- Racing agent. A deep reinforcement learning driver that controls a car at over 400 km/h, makes a decision every 30 ms, and learns to handle tracks it has never seen.
Both projects needed the same discipline: careful measurement, reproducible experiments, and training systems that recover cleanly from crashes, interruptions and power cuts.
Philosophy
Measure everything
An agent is only as good as the evidence for it. Ratings, ladders, split times and self-play statistics come before claims.
Challenge, not cheating
Good game AI makes players better and keeps them engaged. Agents should be strong because they reason well, not because they get information the player doesn't have.
Modular by design
Perception, decision making and behaviour profiles are separate layers, so one agent can be retuned, reused and integrated without starting over.
Honest about what's next
Finished work is labelled as finished. For everything else, Tacsmith is working on new bots, and the In Development page tracks them openly.
What the agents are built on
Search plus learned evaluation
Alpha-beta search guided by neural networks, with exact mate detection, material awareness and automatically tuned search parameters.
Distributional reinforcement learning
Quantile Q-networks with noisy-layer exploration, n-step returns and prioritised replay for stable learning in continuous, physical environments.
Rich state perception
Hundreds of inputs per decision, including speed, orientation, contact, wall distances and the shape of the path ahead, turned into compact, fast decisions.
Generalisation
Multi-environment training produces one agent that adapts to new maps and situations instead of memorising a single route.
Performance engineering
Multi-threaded C++ engines, careful CPU and thread budgeting, and browser-side inference in JavaScript for zero-install demos.
Reliable training operations
Autosaves, backups, automatic resume, live dashboards and strength checks keep long training runs safe and visible.