Ludii Forum
Ludii AI's - Printable Version

+- Ludii Forum (https://ludii.games/forums)
+-- Forum: General (https://ludii.games/forums/forumdisplay.php?fid=1)
+--- Forum: Discussion (https://ludii.games/forums/forumdisplay.php?fid=4)
+--- Thread: Ludii AI's (/showthread.php?tid=33)



Ludii AI's - RogerCooper - 03-15-2020

Can you add to the site some documentation about the standard Ludii AI's, describing the basic technique and what games they are most suitable for?


RE: Ludii AI's - DennisSoemers - 03-15-2020

Appendix B of our User Guide does contain technical details for the AIs that were included in the version for which this user guide was written. That was version 0.2.0 though, which was a while ago... and Alpha-Beta wasn't included at the time. I think all the other ones already were.

We will definitely try to include such updated documentation, though it's probably not the most crucial information to already have readily available in documentation for the full 1.0.0 release. We're prioritising finishing up the most crucial things first. Less crucial details can always be appended at a later date. If you have any specific questions about any specific AI, you can always ask though (in these forums for example).

Without extensive experimenting, it can be difficult to tell with certainty which algorithm is most suitable for which game. We're running such experiments for all games included in the next release, and will have a Ludii AI player that automatically switches to whatever algorithm performed best in any game. But until now, some general rules of thumb (may not always be correct, just rules of thumb) are:

1) Alpha-Beta is best in games where there are narrow "tactical" lines of play that are optimal, surrounded by many other moves that are drastically worse. Think chesslike games, where if you forget to make an important capture once, you immediately get punished and lose the opportunity to make that capture and instead of lose an important piece yourself.

2) Alpha-Beta is best in games that are complex from a computational point of view, i.e. games for which it's expensive to compute lists of legal moves / apply moves to game states / test end conditions.

3) MC-GRAVE is best in games where the legality of moves and the outcome of a game are not affected by the order in which moves are played. Hex is an obvious example of this, but also things like Gomoku, technically Tic-Tac-Toe (although that game is so simple that every AI shold be fine), etc. In this games, you could take the list of moves that were applied in a full game, and execute them in any arbitrary different order, and that would then also have been a legal game with an identical outcome. I suppose there's a small caveat in Standard (not Free-style) Gomoku due to requirement for line lengths to be exact... but that's a relatively small special case.

4) UCT should be a decent fallback in cases where none of the above rules apply.