About Via Ludus
A Game for Learning AI
Via Ludus is a teaching tool designed to give students a practical environment for implementing and experimenting with game-playing AI.
The Idea
Focus on the AI, Not the Interface
Via Ludus was created as a teaching tool for an artificial intelligence course. The goal is to give students a working game environment where they can focus on implementing game-playing algorithms without first having to build a graphical user interface.
The game provides a concrete problem for students to solve. Instead of spending time building a board, handling user interaction, and managing the visual presentation of the game, students can concentrate on how an AI should evaluate positions, choose moves, and play strategically.
Artificial Intelligence
A Platform for Experimentation
The game is intended to support assignments involving a range of game-playing and search techniques. Students can implement algorithms such as minimax, minimax with alpha-beta pruning, and Monte Carlo Tree Search. They can also experiment with heuristic evaluation functions, iterative deepening, move ordering, and transposition tables, giving them opportunities to explore both the basic ideas behind adversarial search and techniques for making those algorithms more efficient.
The game also provides a practical setting for studying how an AI evaluates a board position and makes decisions when it cannot simply search every possible outcome. Students can develop and compare different evaluation strategies, experiment with search depth and computational limits, and observe how changes to their algorithms affect the way an AI plays.
The goal is not to provide students with a finished AI, but to give them a consistent environment in which they can build one. The game provides the problem, the rules, and the interface; students provide the intelligence.
Because the game can be played through a web service, students can implement their AI in the programming language of their choice. The interface provides the game environment while the student's program provides the intelligence.
Architecture
A Separate Game Interface
Via Ludus uses a web interface for the game while allowing the AI itself to run as a separate service. The original web service was written in Python using FastAPI, but the design does not require students to use Python.
This separation allows the frontend to provide a consistent playing environment while students are free to build their AI backend using the language and tools they are learning.
Origin
Where the Game Came From
The game behind Via Ludus is based on an assignment I received when I was a student in an artificial intelligence course. I have not been able to identify the original name or source of the game, so I use the name Via Ludus for this project.
The name Via Ludus was inspired by the book Ready Player One by Ernest Cline.