Hanabi Seed Solving
Solitaire Hanabi
In 'Solitaire Hanabi', we give players full information over the board state,
i.e. they are allowed to look at their own cards and at the draw pile.
Since Hanabi is a multiplayer cooperative card game, this way it evolves into a single-player solitaire game.
Interestingly, it is in general still hard to decide whether or not it is possible to achieve the maximum possible score
for a given shuffle of the deck,
as the decision problem is NP-complete,
i.e. we do not expect a polynomial-time algorithm solving general hanabi instances to exist.
To be fair, since this polynomial reduction produces far greater instances than found in actual hanabi games,
it might still be feasible to come up with reasonably fast algorithm that solve instances with the usual 50 cards.
The puzzle
The goal of the above puzzle is to solve a particularly hard instance of Solitaire Hanabi,
i.e. you have to figure out whether a maximum score is possible.
The table above should help you in trying out a few lines, control works as follows:
- Each row shows the current board state before Alice's turns.
- Clicking on a card will result in a player playing (if possible) or discarding the selected card.
Plays are indicated by a white border and discards are indicated by a white slash.
- If a card is selected that is playable and the team is at 8 clues, the card will be played, resulting in a 'discard' and a strike.
This is indicated by a white X.
- Double-clicking on a card will discard it, regardless of whether it is playable. This is indicated by a white outline.
- If no card is selected, players are assumed to give a clue to not take a play / discard action during their turn.
Additionally:
- Cells that are currently not a legal move are highlighted in red. This is the case if the cell causes the third strike or if a clue is given when there are none available.
- Cells describing turns after the end of the game (i.e. more than one round later than the last card has been drawn) are grayed out
- When one copy of a card has already been played, all other copies are grayed out.
- When all but one copy of a card has been discarded, the remaining copy has a dotted underline.
- The first copy of each card is highlighted in the draw pile by a white border.
Good luck!
If you find a solution to any of the unsolved seeds, please feel free to share in the Hanabi Central Discord server or contact me directly.
A huge thank you to Matthias, who implemented a first version of this site (which is still the major part of it).
Hanabi rules
Just for sake of completeness, here is a summary of the rules of Hanabi:
- There are 50 cards in the deck, distributed among 5 colors. In each color, the ranks of the cards are 1,1,1,2,2,3,3,4,4 and 5.
- Players take turns in a fixed order. The goal is to play the 5 cards of each suit in order.
- Initially, the team has 8 clues.
- A turn consists of taking exactly one of three actions:
- Play: A player selects a card in hand. If its rank is one higher than the last card of its color, the card is played onto the board. Otherwise, the card is discarded and the team receives a strike. In either case, the player draws the next card from the draw pile (if it is nonempty). If the played card was a 5 and the team is not at 8 clues, the clue count is increased by 1.
- Discard: This action is only allowed to be taken while the team is not at 8 clues. A player selects a card in hand to be discarded and draws the next card from the draw pile (if nonempty). The clue count is increased by 1.
- Clue: This action is only allowed to be taken while the team is not at 0 clues. The clue count is decreased by 1.
- The game ends in the following cases:
- If the team receives a third strike, the game immediately ends with a score of 0.
- If the last card of the deck is drawn, the game will have as many further turns as the number of players, i.e. the player who drew the last card takes the last turn of the game.
The score of the game is the number of cards that were successfully played.