Skip to content

An AI framework for playing three player chess, as part of the CITS3001 unit at UWA

License

Notifications You must be signed in to change notification settings

Sothatsit/ThreePlayerChess

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

♛ Three-Player Chess ♚

This project is my submission for the CITS3001 unit at UWA where we were tasked to make an AI to play three-player chess.

The final agent I submitted is a combination of the following:

  • The AgentBrutus class is the manager of the AI (AgentBrutus.java).
    It uses iterative deepening to dynamically allocate how much time to spend searching for each move.

  • The MaximaxStrat class holds the brains of the AI (MaximaxStrat.java).
    It decides which moves are the best moves to take from any state.

  • The GameLogic class is the muscle of the AI (GameLogic.java).
    It quickly evaluates moves, finds available moves, and iteratively updates utility as moves are made.

Submission:
The tournament required us to submit only a single source file. Therefore, the above classes
were combined into the single file, Agent22494652.java for submission. This file is large
and hard to navigate, so I would suggest looking at the individual classes above instead.

♞ Usage ♞

Commands to compile and run this project can be found in USAGE.md.

♜ The Project ♜

See the parent repository at drtnf/threeChess.

About

An AI framework for playing three player chess, as part of the CITS3001 unit at UWA

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%