General game research is one of the most popular areas of game-based academia, and is widely viewed as a suitable means of evaluating AI techniques for a variety of applicable domains and problems . Several general game systems have been developed to assist with this research field, with the main candidates for such work being the General Game Playing (GGP) system , the General Video Game AI (GVGAI) framework , and the Arcade Learning Environment (ALE) . We propose Ludii as a new general game system, that can facilitate many novel and exciting areas of research.
Within this demo paper, we describe the key aspects of the Ludii system that make it an appealing alternative to other general game platforms. We cover the language used for describing games in Ludii, which provides a simple and human understandable approach. We also provide details on AI techniques that will be included with Ludii at launch. The first version of Ludii is expected to be released in August 2019, but will continue to be improved and updated with new games, functionality and organised events for many years afterwards.
Ii Ludii System
Ludii is a new general game system currently under development . It is based on similar principles to the earlier Ludi system , but uses significantly different mechanisms to achieve much greater generality, extensibility and efficiency.
Ludii is being designed and implemented primarily to provide answers to the questions raised by the Digital Ludeme Project , but will stand alone as a platform for general games research in the areas of agent development, content generation, game design, player analysis, and education. Ludii provides many advantages over existing GGP systems, including performance improvements, simpler and clearer game descriptions, as well as a highly evolvable language.
Ludii uses a class grammar approach which automatically generates the game description language from the class hierarchy of its underlying source code . This ensures that there is a 1:1 mapping between the Ludii source code and the game description grammar, as any games which are expressed using this grammar are automatically instantiated back into the corresponding library code for compilation. Ludii can theoretically support any rule, equipment or behaviour that can be programmed in Java. The exact implementation details for each of these definitions are encapsulated within our simplified grammar, which summarises the code to be called. Additional details and examples on the Ludii description language are provided in the next section.
A wide range of different game types can be implemented in Ludii, including but not limited to:
Deterministic, stochastic and hidden information games.
Board, card, dice and tile games.
Boardless games (e.g. Dominoes).
Stacking games (e.g. Lasca).
Simultaneous move games (e.g. Chinook).
Graph games (e.g. Dots and Boxes).
Multi-player / team games and single-player puzzles.
Iii Ludii Game Description Langugage
Games are described in the Ludii grammar using ludemes, which are conceptual units of game related information that encapsulate key game design concepts, essentially forming the building blocks or “DNA” of games. As an example, Figure 1 shows the game of Gomoku, along with the Ludii game description file that was used to create this game. The equipment section describes the pieces and board that are needed to play. The rules section describes how the game was initially set up (start), how each turn in the game proceeds (play), and under what conditions the game is over (end).
Games described using this approach can be easily modified by adjusting ludemes to suit your needs. Changing the board size or victory conditions can be as simple as editing a single parameter. File sizes for each game are also very small, with each game’s description fitting into a QR code. The language is easy to read and understand compared to more verbose alternatives such as GDL. Recent experimental results revealed that our system tends to be faster than other GGP alternatives. The ability to break games down into their individual ludemes allows for additional analyses, such as phylogenetic analyses, of the similarities and differences between games.
Iv Ludii Agents
Implementations of standard game-playing agents are included in Ludii. Due to the large number of (variants of) games that are planned to be included, we focus on techniques that are generally applicable across many games. This means that we focus on techniques such as Monte Carlo tree search (MCTS), which is the most popular approach in prior GGP research. Third parties will also be able to develop their own agents for Ludii.
. Arrows are drawn for every possible movement action (in games like Amazons, Chess, Hnefatafl, etc.), and circles are drawn for placement actions (in games like Go, Hex, Reversi, etc.). The sizes of these drawings scale with the visit counts associated with actions in an MCTS search process, and colours are changed based on the value estimates of MCTS (e.g. blue for winning moves, red for losing moves, purple for moves with neutral value estimates).
The Ludii system presents a new and intuitive approach to game design and game playing. The scope and completeness of the games available with Ludii can rival that of any prior general game playing system. The software is easy to use for those who are not technically inclined, while also providing the functionality for integrating existing agents and AI techniques. The language used to describe games also opens up many new avenues of research, particularly in the areas of general game generation and analysis.
This research is part of the European Research Council-funded Digital Ludeme Project (ERC Consolidator Grant #771292) run by Cameron Browne at Maastricht University’s Department of Data Science and Knowledge Engineering.
-  G. N. Yannakakis and J. Togelius, Artificial Intelligence and Games. Springer, 2018, http://gameaibook.org.
-  M. R. Genesereth, N. Love, and B. Pell, “General game playing: Overview of the AAAI competition,” AI Magazine, vol. 26, no. 2, pp. 62–72, 2005.
-  D. Perez-Liebana, S. Samothrakis, J. Togelius, S. M. Lucas, and T. Schaul, “General video game ai: Competition, challenges, and opportunities,” in Proc. 30th AAAI Conf. Artif. Intell., ser. AAAI’16, 2016, pp. 4335–4337.
-  M. G. Bellemare, Y. Naddaf, J. Veness, and M. Bowling, “The arcade learning environment: An evaluation platform for general agents,” J. Artif. Intell. Res., vol. 47, no. 1, pp. 253–279, 2013.
-  É. Piette, D. J. N. J. Soemers, M. Stephenson, C. F. Sironi, M. H. M. Winands, and C. Browne, “Ludii - the ludemic general game system,” CoRR, vol. abs/1905.05013, 2019.
-  C. B. Browne, “Automatic generation and evaluation of recombination games,” Ph.D. dissertation, Queensland University of Technology, 2009.
-  C. Browne, “Modern techniques for ancient games,” in 2018 IEEE Conf. Comput. Intell. Games, 2018, pp. 490–497.
-  C. B. Browne, “A class grammar for general games,” in Advances in Computer Games, 2016, pp. 167–182.