Coalesce is a simple unification game.
Generated at 08/02/2022, 16:27 from 2366 logged games.
Representative game (in the sense of being of mean length). Wherever you see the 'representative game' referred to in later sections, this is it!
Player 1 places any number of black pieces on the board.
Player 2 chooses to play Coalesce (Black) or Divide (White).
Players alternate playing stones, starting with Divide.
If Coalesce connects all their stones into a single group, they win.
If this becomes impossible, Divide wins.
General comments:
Play: Combinatorial
Mechanism(s): Connection
BGG Entry | Coalesce |
---|---|
BGG Rating | null |
#Voters | null |
SD | null |
BGG Weight | null |
#Voters | null |
Year | null |
Size (bytes) | 29619 |
---|---|
Reference Size | 10673 |
Ratio | 2.78 |
Ai Ai calculates the size of the implementation, and compares it to the Ai Ai implementation of the simplest possible game (which just fills the board). Note that this estimate may include some graphics and heuristics code as well as the game logic. See the wikipedia entry for more details.
Playouts per second | 108597.68 (9.21µs/playout) |
---|---|
Reference Size | 481301.44 (2.08µs/playout) |
Ratio (low is good) | 4.43 |
Tavener complexity: the heat generated by playing every possible instance of a game with a perfectly efficient programme. Since this is not possible to calculate, Ai Ai calculates the number of random playouts per second and compares it to the fastest non-trivial Ai Ai game (Connect 4). This ratio gives a practical indication of how complex the game is. Combine this with the computational state space, and you can get an idea of how strong the default (MCTS-based) AI will be.
% new positions/bucket
State Space Complexity | 65993512 | |
---|---|---|
State Space Complexity bounds | 62543412 < 65993512 < ∞ | |
State Space Complexity (log 10) | 7.82 |   |
State Space Complexity bounds (log 10) | 7.80 <= 7.82 <= ∞ | |
Samples | 1291167 | |
Confidence | 0.00 | 0: totally unreliable, 100: perfect |
State space complexity (where present) is an estimate of the number of distinct game tree reachable through actual play. Over a series of random games, Ai Ai checks each position to see if it is new, or a repeat of a previous position and keeps a total for each game. As the number of games increase, the quantity of new positions seen per game decreases. These games are then partitioned into a number of buckets, and if certain conditions are met, Ai Ai treats the number in each bucket as the start of a strictly decreasing geometric sequence and sums it to estimate the total state space. The accuracy is calculated as 1-[end bucket count]/[starting bucklet count]
Label | Its/s | SD | Nodes/s | SD | Game length | SD |
---|---|---|---|---|---|---|
Random playout | 124,839 | 1,082 | 6,534,070 | 56,336 | 52 | 8 |
search.UCT | 60,147 | 3,177 | 61 | 5 |
Random: 10 second warmup for the hotspot compiler. 100 trials of 1000ms each.
Other: 100 playouts, means calculated over the first 5 moves only to avoid distortion due to speedup at end of game.
Rotation (Half turn) lost each game as expected.
Reflection (X axis) lost each game as expected.
Reflection (Y axis) lost each game as expected.
Copy last move lost each game as expected.
Mirroring strategies attempt to copy the previous move. On first move, they will attempt to play in the centre. If neither of these are possible, they will pick a random move. Each entry represents a different form of copying; direct copy, reflection in either the X or Y axis, half-turn rotation.
1: Player 1 win % | 44.63±1.99 | Includes draws = 50% |
---|---|---|
2: Player 2 win % | 55.37±2.01 | Includes draws = 50% |
Draw % | 0.00 | Percentage of games where all players draw. |
Decisive % | 100.00 | Percentage of games with a single winner. |
Samples | 2366 | Quantity of logged games played |
Note: that win/loss statistics may vary depending on thinking time (horizon effect, etc.), bad heuristics, bugs, and other factors, so should be taken with a pinch of salt. (Given perfect play, any game of pure skill will always end in the same result.)
Note: Ai Ai differentiates between states where all players draw or win or lose; this is mostly to support cooperative games.
Match | AI | Strong Wins | Draws | Strong Losses | #Games | Strong Score | p1 Win% | Draw% | p2 Win% | Game Length |
---|---|---|---|---|---|---|---|---|---|---|
0 | Random | |||||||||
1 | UCT (its=2) | 631 | 0 | 273 | 904 | 0.6673 <= 0.6980 <= 0.7270 | 34.62 | 0.00 | 65.38 | 51.64 |
14 | UCT (its=15) | 631 | 0 | 352 | 983 | 0.6114 <= 0.6419 <= 0.6713 | 22.69 | 0.00 | 77.31 | 51.72 |
27 | UCT (its=28) | 631 | 0 | 366 | 997 | 0.6025 <= 0.6329 <= 0.6623 | 23.47 | 0.00 | 76.53 | 52.43 |
65 | UCT (its=9053) | 421 | 0 | 395 | 816 | 0.4816 <= 0.5159 <= 0.5501 | 1.59 | 0.00 | 98.41 | 53.65 |
66 | UCT (its=9053) | 503 | 0 | 497 | 1000 | 0.4721 <= 0.5030 <= 0.5339 | 2.50 | 0.00 | 97.50 | 61.77 |
Search for levels ended. Close to theoretical value: player 2 wins.
Level of Play: Strong beats Weak 60% of the time (lower bound with 95% confidence).
Draw%, p1 win% and game length may give some indication of trends as AI strength increases.
This chart shows the win(green)/draw(black)/loss(red) percentages, as UCT play strength increases. Note that for most games, the top playing strength show here will be distinctly below human standard.
Game length | 34.13 | |
---|---|---|
Branching factor | 44.47 |   |
Complexity | 10^54.57 | Based on game length and branching factor |
Computational Complexity | 10^6.12 | Saturation reached - accuracy very high. |
Samples | 2366 | Quantity of logged games played |
Computational complexity (where present) is an estimate of the game tree reachable through actual play. For each game in turn, Ai Ai marks the positions reached in a hashtable, then counts the number of new moves added to the table. Once all moves are applied, it treats this sequence as a geometric progression and calculates the sum as n-> infinity.
Board Size | 61 | Quantity of distinct board cells |
---|---|---|
Distinct actions | 64 | Quantity of distinct moves (e.g. "e4") regardless of position in game tree |
Killer moves | 1 | A 'killer' move is selected by the AI more than 50% of the time Killers: Choose White(Divide) |
Good moves | 37 | A good move is selected by the AI more than the average |
Bad moves | 27 | A bad move is selected by the AI less than the average |
Response distance% | 37.03% | Distance from move to response / maximum board distance; a low value suggests a game is tactical rather than strategic. |
Samples | 2366 | Quantity of logged games played |
A mean of 52.67% of board locations were used per game.
Colour and size show the frequency of visits.
Game length frequencies.
Mean | 43.30 |
---|---|
Mode | [34] |
Median | 31.0 |
Mean change in material/round | 0.91 | Complete round of play (all players) |
---|
This chart is based on a single representative* playout, and gives a feel for the change in material over the course of a game. (* Representative in the sense that it is close to the mean length.)
Table: branching factor per turn, based on a single representative* game. (* Representative in the sense that it is close to the mean game length.)
This chart is based on a single representative* game, and gives a feel for the types of moves available throughout that game. (* Representative in the sense that it is close to the mean game length.)
Red: removal, Black: move, Blue: Add, Grey: pass, Purple: swap sides, Brown: other.
0 | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|
1 | 61 | 1891 | 37881 | 559736 | 6508883 |
Note: most games do not take board rotation and reflection into consideration.
Multi-part turns could be treated as the same or different depth depending on the implementation.
Counts to depth N include all moves reachable at lower depths.
Inaccuracies may also exist due to hash collisions, but Ai Ai uses 64-bit hashes so these will be a very small fraction of a percentage point.
No solutions found to depth 5.
Puzzle | Solution |
---|---|
Player 2/Divide/White to win in 7 moves | |
Player 2/Divide/White to win in 7 moves | |
Player 2/Divide/White to win in 3 moves | |
Player 1/Divide/White to win in 5 moves | |
Player 1/Coalesce/Black to win in 5 moves | |
Player 1/Coalesce/Black to win in 5 moves | |
Player 1/Coalesce/Black to win in 5 moves | |
Player 1/Coalesce/Black to win in 5 moves | |
Player 1/Coalesce/Black to win in 5 moves | |
Player 1/Coalesce/Black to win in 5 moves | |
Player 2/Divide/White to win in 5 moves | |
Player 2/Coalesce/Black to win in 5 moves |
Selection criteria: first move must be unique, and not forced to avoid losing. Beyond that, Puzzles will be rated by the product of [total move]/[best moves] at each step, and the best puzzles selected.