Gamemaster
General
Game
Playing

Protocol: localstorage
Metagamer: grounder + symbolizer + simplifier + pruner + optimizer
Strategy: Adaptive MCTS/PTS with intermediate detection
Identifier: caseyhn

Our Approach

We used strategies from several weeks to build our player on the fundamental ideas covered in class throughout the quarter. We have incorporated the course material as follows:

Metagaming Phase (Weeks 6-8):
We use grounding approaches to convey rules more efficiently at the start clock. The rules are then symbolized for faster reasoning. Depending on the kind of game we're playing, we have different pruning approaches. We aggressively prune single-player puzzles to concentrate on actions that are crucial to the goal (Week 8). In antagonistic games, we preserve all moves to keep defensive options available.

Core Search Strategy (Week 5+):
We primarily use Monte Carlo Tree Search, which we've improved with a couple of advanced techniques from later weeks. Our implementation includes progressive widening - we don't explore every possible move immediately, but gradually expand our search based on how promising different areas look. This helps manage large branching factors in complex games.

Smart Enhancements:
Heuristic Evaluation (Week 4): We evaluate positions based on how many moves are available and try to progress toward goals
Symmetry Detection (Week 8): We try to identify equivalent moves to avoid wasting time on redundant searches. We wanted to use our limited time on searches that would improve our playing.
Adaptive Exploration: We tuned our exploration vs exploitation balance based on whether we're playing a single-player or multi-player game.
Depth-limited Search (Week 5): Our random simulations get smarter as they go deeper. We gradually shift from exploration to exploitation.

Game-Specific Adaptations:
Because various games may require different strategies, we identify the type of game (not specific game but instead, game type) at the start and adjust our approach accordingly. When we identify games with accumulating scores—games where your score can rise during gameplay rather than only at the end—we automatically switch to Persistent Tree Search.

Game-Agnostic:
Our player is game-agnostic because we avoided game-specific hacks. Every tactic we employ is applicable to various game genres. Whether playing against other players, solving a single-player challenge, or playing on various border formats, our player consistently delivers great results, even when specialist gamers may outperform us.

Game Strategy W/ Pruning Result V1 Count W/o Pruning Result V2 Count
multiplebuttonsandlights PTS 100 1092 100 48773238
switches PTS 100 553745 100 71294111
multipletictactoe MCTS 50 129250 100 98248
multipleknightthrough MCTS 0 129466 0 20010