Playing Cribbage with Reinforcement Learning and Minimax

Thumbnail Image

Persistent link to this item

View Statistics

Journal Title

Journal ISSN

Volume Title


Playing Cribbage with Reinforcement Learning and Minimax

Published Date






This project created a program to play the card game cribbage. Previous work on cribbage has focused on the discard phase of the game, using only a basic algorithm for the play phase. However, determining a hand’s potential performance in the play phase affects the optimal choice in the discard phase of the game. By ignoring this effect, current cribbage algorithms make un-optimal choices. We seek to alleviate this by creating an efficient and intelligent algorithm for the discard phase of cribbage. We explored two approaches to this algorithm, a reinforcement learning algorithm and a minimax algorithm. Due to the randomness of the play phase and our lack of computing power, we were not able to successfully train the reinforcement learning algorithm. By specifically tuning the minimax algorithm to suit the game of cribbage, we created an efficient algorithm which consistently out-preformed the naive greedy algorithm. We also introduce a variety of new heuristics to further tune the minimax algorithm for the play phase of cribbage.


Faculty advisor: James Moen

Related to



Series/Report Number

Funding information

This research was supported by an Undergraduate Research Scholarship.

Isbn identifier

Doi identifier

Previously Published Citation

Suggested citation

Partida, Ethan. (2022). Playing Cribbage with Reinforcement Learning and Minimax. Retrieved from the University Digital Conservancy,

Content distributed via the University Digital Conservancy may be subject to additional license and use restrictions applied by the depositor. By using these files, users agree to the Terms of Use. Materials in the UDC may contain content that is disturbing and/or harmful. For more information, please see our statement on harmful content in digital repositories.