This repository contains a Java implementation of a tournament to compare different AI strategies for the UnoWar card game. UnoWar is a combination of Uno and War, played with a standard deck of cards. The tournament evaluates the performance of three simple AI strategies against each other: random card selection, always playing the smallest-ranked card, and always playing the highest-ranked card.
- src/student: Contains the Java source code for the project.
AI.java
: Base class for AI strategies.BiggestCardAI.java
: AI strategy always playing the highest-ranked card.Card.java
: Class representing a playing card.CardPile.java
: Class representing the pile of cards played during the game.Deck.java
: Class representing the deck of cards.Hand.java
: Class representing a player's hand of cards.SmallestCardAI.java
: AI strategy always playing the smallest-ranked card.Tournament.java
: Main class to run the UnoWar AI tournament.UnoWarMatch.java
: Class representing a match between two AI strategies.
To run the UnoWar AI tournament, compile the Java files and execute the Tournament
class. This will compare the win rates of different AI strategies across multiple matches.
javac student/*.java
java student.Tournament
The tournament provides insights into the effectiveness of different AI strategies in the UnoWar card game. Results can vary based on the number of trials and the specific implementation of the strategies.
This project is licensed under the MIT License.