What is PreferAnswer?
PreferAnswer is an app that solves instances of Preferans by simulating all possible gameplay scenarios. You simply deal the cards, enter the game parameters (contract, turn, etc.), and it guides you through the optimal play for each hand. Since it needs to see all the cards, PreferAnswer does not support all-passes.
How it works?
Under the hood, PreferAnswer performs an exhaustive search (DFS with memoization) over all possible game states. During execution, it shows you in real-time how many games have already been processed. The optimized game serialization plays a key role in the algorithm's speed by hashing many different but essentially equivalent game states in the same way, thus avoiding unnecessary computations. Can you think of games with technically different card arrangements across hands but that are equivalent to each other? What about moves in a single turn?
Quick guide
PreferAnswer highlights the cards that are optimal to play on each given turn. It assumes that both whisting hands aim to screw the player, i.e., minimize (or maximize) the final number of tricks taken by the player in a regular game (or misere). The first number next to each hand represents the current number of tricks taken, while the second number represents the predicted final number of tricks under optimal play by all.