Full Report for Bug by Nick Bentley

Full Report for Bug by Nick Bentley

Place a piece, creating or enlarging a bug, eat neighbouring bugs of the same size, and grow.

Generated at 27/10/2020, 22:24 from 80242 logged games.

Rules

Representative game (in the sense of being of mean length). Wherever you see the 'representative game' referred to in later sections, this is it!

Definitions

1) A bug is an entire group of connected, same-color stones on the board. A single stone is also a bug.

2) The size of a bug is the number of stones it contains.

Play

The board starts empty. Black begins the game by placing one black stone on any empty space. Then, starting with White, the players take turns. Each turn has 3 steps, taken in order: 1) Place, 2) Eat, 3) Grow

1) Place: You must place one stone of your color on an empty space such that the resulting bug isn't larger than the largest bug on the board (regardless of color) prior to placement.

2) Eat: All your bugs which are adjacent to one or more enemy bugs of the same shape (but not necessarily the same orientation) must eat (capture) those enemy bugs. Return eaten bugs to your opponent.

Note mirror-image bugs count as the same shape.

3) Grow: Increase the size of each of your bugs that ate, by exactly 1, by placing a stone of your color on any empty space adjacent to each such bug.

If eating would unavoidably force a bug to grow by more than 1 through a merger with another bug of the same color, no eating occurs.

If, after growing, a bug is adjacent to an identically-shaped enemy bug, it must eat the enemy bug (and grow again) if possible, and so on.

End of the Game

The first player who CANNOT place a stone in the placement step WINS. That is: you win if you've filled the ecosystem with your bugs so much you can no longer expand.

Standard

Nick kills me - his games are always a real nightmare to programme! In this case, I ended up implementing the game twice. The main problem was identifying when two neighbouring bugs are the same, allowing for reflection and rotation. For the HexHex3 implementation, I tried pre-generating every single board position for each shape, so I could do a straight lookup - that resulted in 2Mb of data after around 60 minutes of processing. Clearly not scalable! For the HexHex4 case, I represented the board as a bitboard (long integer, with each bit representing a different board cell), and did low-level bit manipulation to rotate and compare shapes. The result is fast enough to beat most humans, but unfortunately doesn't scale to larger boards for different reasons*; I may do so at some point using the Java BitSet class (extended to allow shifts) for the bit array, but not for a while.
*Ai Ai represents hexhex boards internally as a standard hex grid with the corners missing. That means HexHex5 (61 cells) actually requires 81 bits internally, which is more than a 64-bit integer will hold.

Miscellaneous

General comments:

Play: Combinatorial

Family: Combinatorial 2017

Mechanism(s): Pattern,Capture,Territory

Components: Board

BGG Stats

BGG EntryBug
BGG Rating7.58205
#Voters39
SD1.04682
BGG Weight2.3333
#Voters3
Year2017

BGG Ratings and Comments

UserRatingComment
bootlebyN/AMy rather 'cold' rating likely has to do with my inability to play this very well, so I'm not getting any insights into the strategic depth since I'm still wearing water wings in the shallow end. I like this game but I don't foresee myself suggesting it? Unless I'm trying to get in as many Nick Bentley games as possible in a day or something I don't know. That is, actually, likely to happen at some point haha
mrraow10Bug is impressively opaque, even on very small boards. But in a good way; the 'perceptual binding' means that the player gets the feeling of understanding being just beyond the horizon, rather than forever beyond reach. Want to play more. Much more :) Playable in Ai Ai (on small boards). Nick kills me - his games are always a real nightmare to programme! In this case, I ended up implementing the game twice. The main problem was identifying when two neighbouring bugs are the same, allowing for reflection and rotation. For the HexHex3 implementation, I tried pre-generating every single board position for each shape, so I could do a straight lookup - that resulted in 2Mb of data after around 60 minutes of processing. Clearly not scalable! For the HexHex4 case, I represented the board as a bitboard (long integer, with each bit representing a different board cell), and did low-level bit manipulation to rotate and compare shapes. The result is fast enough to beat most humans, but unfortunately doesn't scale to larger boards for different reasons*; I may do so at some point using the Java BitSet class (extended to allow shifts) for the bit array, but not for a while. *Ai Ai represents hexhex boards internally as a standard hex grid with the corners missing. That means HexHex5 (61 cells) actually requires 81 bits internally, which is more than a 64-bit integer will hold.
nhjelmberg9I commend the deisgner for a brilliant achievement. This is a game that feels like it was just waiting for someone to discover it. In a time where many designers seem content with copying old mechanics, I am so glad to see that there can be new games under the sun. It will be difficult to return to my own feeble attempts. Thank you for sharing this and good luck with Bug!
BobW428Fun, simple, portable game.
arian7
fogus7.4
bcurfs8This game is a cute abstract strategy with an interesting mechanic. You eat your opponent's bugs and if you can't grow you win (you basically dominate the board). Scalable to different board sizes, but my favorite size for any game on a Hex board is Hexhex-5 (61 fields). That makes the games not too long and still interesting.
bothros8
Observer98
casualcasualN/AI'm not a combinatorial type of player for the most part, but Hive grabbed me, and engaged me. I suspect it's probably those thematic mnemonics. I use the Hive pieces to play Bug, and it's kind of similar; very abstracted but sort of saying something about evolution and expansion. The backwards thinking - of essentially tying to NOT be able to have your turn (probably not unusual, but I just don't have a lot of experience with these sorts of games) is the appealing bit here, to me. A neat little puzzle then; not as engaging and as free form as Hive (again, I don't play a lot of these), but good to be able to pull out and use as something different every now and then. I also should note I'm playing mostly with my son on the 3Hex grid, I'm sure there's a bit more to it on the 4x.
molnar9
breakmanynecks5
pvtparts6
luigi879
rayzg7.5Finally played with the correct rules where you win if you cannot place a piece at the beginning of your turn. I'm torn about what I feel about this game. I love how original the mechanics are and how such a deep game could be created with such a small board. My only issue is that there's not much clarity in the game for me. It's really, really difficult to see the repercussions of your moves. I'm hoping that further play will make the tactics more clear.
pkufahl7I've just scratched the surface of this game, designed around the phenomenon of perceptual binding, our neurobiological tendency to recognize patterns as objects. Bug has several interesting aspects to it: 1. You place markers onto a hex grid, but cannot create the largest group on the board this way. 2. Instead, your groups grow after "eating" your opponents' groups of the same size and shape. 3. Having no legal place on the grid to place your next marker is the way you win the game. I'm always looking for that next abstract game to (at least, temporarily) capture the imagination of myself and one other player, and hopefully I can get in more plays of this one.
wefelker7
fakeaiN/APrint n Play version
nycavri8
orangeblood8Delightful interplay of attacks and counterattacks. At first I wondered about the victory condition (first player who cannot move wins), but after just a couple of games it's pretty intuitive and works well.
schwarzspecht8
4characters8Unique, innovative
nigelreg7PnP version
ed_in_playN/Aprinted HEXn boards to use with Go pieces
bcnevan7This feels so much more organic and natural than Circle of Life, which I did not enjoy at all. Bug scales nicely from beginner games using a small hexhex board to expert games using a larger hexhex board. As far as a comparison to Catchup, which I also like, Bug is a bit less elegant, but brings its own qualities.
Matt BookerN/APNP
rayrN/A= 2017-07-16 Played a couple of split-personality solo games this weekend to learn the rules. I'm liking what I see, but, unlike Yavalath/Pentalath/Manalath, it's going to be a lot harder to see when and where a mistake was made in order to understand how to improve. On a hexhex3 board, it took me about 4 plays to *start* seeing how to improve my chances of being the first player unable to make a move. Fortunately, even if you can't play towards the actual goal (to win by not being able to move), it feels like playing towards the subgoal (eat opponent's bugs) is generally well aligned with the main goal. I'm liking the game. It feels dynamic and I love the tug-o-war. I've noted before that I enjoy games where a seemingly strong move can leave you open to a strategic counter attack. Nick put it even better when he wrote about letting the game balance overly strong moves instead of having the rules forbid them. In Bug, the largest bug on the board is a sitting duck; it can't grow to defend itself so all of the spaces immediately adjacent to that bug are open for your opponent. Those open spaces give you a lot of flexibility, but your ultimate goal is to run out of moves. This means that the closer you get to winning, the fewer options you have. It's an interesting balance and kind of acts like a built-in catch-up mechanism without any heavy-handed rules to enforce it. Playing on a 1999 Abalone board with 7/8" marbles, using a 3rd color to mark off a hexhex3 region. Using the no-merge variant. No rating until I play against a real opponent and start to understand some of the strategies.
gmcnishN/APrint hexhex3, go stones
bdeink7
Carthoris8A killer combinatorial game with real staying power.
grasa_total7Ingenious and surprising in the way I expect from a Nick Bentley game. But very opaque. I don't think I know what's going on yet.
russ8Clever fun game (be sure to read Nick's article about the game's development) which is interesting even on the tiny size 3 hexhex, and playing on successively larger boards is also cool. It can play out variously (e.g. we had one bizarrely short game with only 6 stones placed, while other games have gradually larger and larger bugs being created), and there are lots of aha-effects to be had. Bug became one of our frequent breakfast games. If you own a small hexhex board and 2 colors of stones (e.g. a Yavalath set), you can play Bug. Note: early on we switched to playing that merging is not legal in placement. Discussion in this thread: https://boardgamegeek.com/thread/1937898/merging-groups-allowed-placement-disallowed-growth
paynentt8
Kaelistus7
srlindemann8
javinoaN/ADIY
hunky dory7.5
fiddly_bitsN/AI have sufficient bits to play. My board is part of a Chessex mat I cut up long ago to play Hex and other shapes of game.
takeoutweight9I've not played anything like it. One of my favourite modern abstracts. The board can take on so much personality and drama even on a microscopic hex3. I think bug has the best depth-per-board-space ratio out of any game I've played?
Bola!N/ASubtle!
tkvaran9As of late December 2017, my favorite abstract of 2017. Feels classic and deep. Prefer the 4 hex board to the super tight 3 hex board.
njking6
Rontuaru8Bug is truly unique, remarkable, combinatorial genius. I'll go on and overuse the typical buzzphrases: elegant, clean, clever, sharp, vicious, penseive, brisk...and then some. Pick your praise, because this is as good as abstract games can get.
Dawaran6.8
bluebee29PnP. Played with several people and made a few fans of the game (including my college student who it taking it back to school to create more fans)! Loved every game. We're sticking with the hexhex3 for a bit and learning as we go. I'll be playing this quite a bit.
conorchinitz7
azeem6
EllenM7Worth an abstract try We enjoy pulling this one out periodically
AndrePORN/APrint & Play Edition
pezpimp5.5You play a piece on the board anywhere as long as it does not create a set larger than any exiting set. If you play a piece in which the size and shape matches an opponents set then you eat them and grow (you have no choice, this is automatic), this is the only way to create larger sets. We played with the correct rules this time around and although better it was not great. We tried a larger board but it just gets repetitive, you can now come from behind and challenge more but can't say that it was more fun.

Kolomogorov Complexity Analysis

Size (bytes)29014
Reference Size10293
Ratio2.82

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.

Playout Complexity Estimate

Playouts per second16778.21 (59.60µs/playout)
Reference Size386294.28 (2.59µs/playout)
Ratio (low is good)23.02

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.

Playout/Search Speed

LabelIts/sSDNodes/sSDGame lengthSD
Random playout17,67590795,2023,613459
search.UCB17,998333528
search.UCT17,874364538

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.

Mirroring Strategies

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.

Win % By Player (Bias)

1: White win %49.97±0.35Includes draws = 50%
2: Black win %50.03±0.35Includes draws = 50%
Draw %0.00Percentage of games where all players draw.
Decisive %100.00Percentage of games with a single winner.
Samples80242Quantity 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.

UCT Skill Chains

MatchAIStrong WinsDrawsStrong Losses#GamesStrong Scorep1 Win%Draw%p2 Win%Game Length
0Random         
1UCT (its=2)63103479780.6147 <= 0.6452 <= 0.674649.280.0050.7245.16
3UCT (its=4)63103609910.6063 <= 0.6367 <= 0.666150.550.0049.4547.20
8UCT (its=9)63103539840.6108 <= 0.6413 <= 0.670649.900.0050.1049.35
15UCT (its=16)63103469770.6153 <= 0.6459 <= 0.675248.720.0051.2851.05
28UCT (its=29)63103549850.6102 <= 0.6406 <= 0.670049.540.0050.4652.09
37UCT (its=101)63101778080.7511 <= 0.7809 <= 0.808148.640.0051.3651.53
38UCT (its=273)63102388690.6955 <= 0.7261 <= 0.754750.860.0049.1452.74
39UCT (its=743)63102719020.6688 <= 0.6996 <= 0.728646.120.0053.8851.93
40
UCT (its=2020)
491
0
257
748
0.6217 <= 0.6564 <= 0.6896
49.33
0.00
50.67
52.18
41
UCT (its=2020)
482
0
518
1000
0.4512 <= 0.4820 <= 0.5130
49.60
0.00
50.40
52.86

Search for levels ended: time limit reached.

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.

1st Player Win Ratios by Playing Strength

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.

Complexity

Game length51.82 
Branching factor13.30 
Complexity10^48.49Based on game length and branching factor
Samples80242Quantity of logged games played

Move Classification

Distinct actions54Number of distinct moves (e.g. "e4") regardless of position in game tree
Killer moves5A 'killer' move is selected by the AI more than 50% of the time
Killers: Bug #2 eats,Bug #6 eats,Bug #15 eats,Bug #3 eats,Bug #13 eats
Good moves27A good move is selected by the AI more than the average
Bad moves26A bad move is selected by the AI less than the average
Response distance2.79Mean distance between move and response; a low value relative to the board size may mean a game is tactical rather than strategic.
Samples80242Quantity of logged games played

Board Coverage

A mean of 89.12% of board locations were used per game.

Colour and size show the frequency of visits.

Game Length

Game length frequencies.

Mean51.82
Mode[51]
Median52.0

Change in Material Per Turn

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.)

Actions/turn

Table: branching factor per turn, based on a single representative* game. (* Representative in the sense that it is close to the mean game length.)

Action Types per Turn

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.

Trajectory

This chart shows the best move value with respect to the active player; the orange line represents the value of doing nothing (null move).

The lead changed on 21% of the game turns. Ai Ai found 6 critical turns (turns with only one good option).

Position Heatmap

This chart shows the relative temperature of all moves each turn. Colour range: black (worst), red, orange(even), yellow, white(best).

Good/Effective moves

MeasureAll playersPlayer 1Player 2
Mean % of effective moves42.8547.6238.45
Mean no. of effective moves4.544.924.19
Effective game space10^25.6410^13.9210^11.71
Mean % of good moves26.9422.7430.83
Mean no. of good moves2.692.562.81
Good move game space10^16.1910^7.2410^8.95

These figures were calculated over a single game.

An effective move is one with score 0.1 of the best move (including the best move). -1 (loss) <= score <= 1 (win)

A good move has a score > 0. Note that when there are no good moves, an multiplier of 1 is used for the game space calculation.

Quality Measures

MeasureValueDescription
Hot turns84.62%A hot turn is one where making a move is better than doing nothing.
Momentum32.69%% of turns where a player improved their score.
Correction30.77%% of turns where the score headed back towards equality.
Depth6.67%Difference in evaluation between a short and long search.
Drama4.70%How much the winner was behind before their final victory.
Foulup Factor51.92%Moves that looked better than the best move after a short search.
Surprising turns1.92%Turns that looked bad after a short search, but good after a long one.
Last lead change80.77%Distance through game when the lead changed for the last time.
Decisiveness11.54%Distance from the result being known to the end of the game.

These figures were calculated over a single representative* game, and based on the measures of quality described in "Automatic Generation and Evaluation of Recombination Games" (Cameron Browne, 2007). (* Representative, in the sense that it is close to the mean game length.)

Opening Heatmap

Colour shows the success ratio of this play over the first 10moves; black < red < yellow < white.

Size shows the frequency this move is played.

Positions Reachable at Depth (Includes Transpositions)

012345
13713693706996089518663247

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.
Zobrist hashes are not available for this game, so transpositions are included in the counts.

Shortest Game(s)

No solutions found to depth 5.

Puzzles

PuzzleSolution

White to win in 18 moves

Black to win in 23 moves

Black to win in 16 moves

Black to win in 15 moves

White to win in 14 moves

Black to win in 19 moves

Black to win in 16 moves

Black to win in 12 moves

Black to win in 11 moves

White to win in 19 moves

Black to win in 14 moves

White to win in 12 moves

Black to win in 10 moves

Black to win in 9 moves

White to win in 11 moves

Black to win in 9 moves

Black to win in 17 moves

Black to win in 16 moves

Black to win in 11 moves

Black to win in 16 moves

White to win in 14 moves

White to win in 8 moves

Black to win in 11 moves

White to win in 10 moves

White to win in 11 moves

White to win in 14 moves

White to win in 13 moves

White to win in 7 moves

Black to win in 5 moves

Black to win in 6 moves

Black to win in 7 moves

Black to win in 8 moves

White to win in 5 moves

Black to win in 13 moves

White to win in 5 moves

Black to win in 10 moves

White to win in 6 moves

Weak puzzle selection criteria are in place; the first move may not be unique.