An intelligent software agent designed to play Tablut using the Ashton rules variant. The agent communicates with a referee server and employs advanced AI techniques for strategic gameplay.
This project was developed for the Foundations of Artificial Intelligence (Module 1) course at the University of Bologna's Master's Degree in Artificial Intelligence.
The project's goal is to create two intelligent agents that play as White and Black players in the game of Tablut. The agents use Principal Variation Search (PVS) algorithm combined with a neural network-enhanced heuristic evaluation function. The heuristic weights are determined through a pre-trained neural network that analyzes 5 key metrics, trained on data from previously played games.
- Iterative Principal Variation Search (PVS) algorithm with timeout management
- Neural network-trained heuristic evaluation using 5 key metrics
- Feature-based board state analysis
- Compatible with Ashton rules variant
- Client-server communication architecture
- Java Development Kit (JDK)
- Apache Ant
- Required libraries:
- deeplearning4j
- nd4j
# Compile the entire project
ant start
# Build the agent JAR
ant ALA-jar