CanAI

Document Type

Abstract

Publication Date

Spring 5-1-2024

Abstract

When developing their first gameplay algorithms, most Computer Science students focus on games like Connect4, Nim, chess, or checkers that are either solved or transparent games. That is, they have a limited number of final end-states (like Connect4 or Nim), and/or all potential moves are visible to all players (like in chess or checkers). Such games are ideal for simple artificial intelligence (AI) algorithms as such programs can consider a larger suite of potential moves and their consequences than human players. In other words, the more information that can be supplied to the AI algorithm, the better the computer will be able to perform. This project aims to develop an AI algorithm to play the card game of canasta, where players compete to find sets of cards with identical ranks. In other words, players attempt to build sets of 7 cards with the same rank (e.g., 7 kings) while keeping un-played cards in their hands. Because of the size of the deck (two 52-card decks plus jokers) and the hidden nature of the game, standard AI algorithms (e.g., minimax) fail to capture the complexity of canasta, suggesting that a more nuanced algorithm is necessary. Expanding upon the basic foundations of gameplay algorithms, CanAI uses logic and probability to make educated decisions about the best moves in any stage of a canasta game. It considers information such as current played sets, previously discarded cards, known cards in each player’s hand, etc. as well the likelihood of specific cards being drawn from the deck (based on what cards have already been played), and it assimilates that information with knowledge from an experienced canasta player to determine the move that gives CanAI the best chance for victory.

Comments

Completed as part of the Computer Science Senior Capstone Project.

This document is currently not available here.

Share

COinS