Jędrzej Kaniewski
Dec 6, 2022
Since the early days computers have been programmed to compete against humans in simple board or card games. Thanks to impressive advances in artificial intelligence (AI) made in the last couple of years computers can now successfully play games which require talking to other players in plain English. In this post we present an exciting development in this direction announced recently by the Meta AI team.
Can computer play games?
Teaching computers to play board or card games has often been used as a benchmark for how closely can machines approach human-level performance. The early attempts focused on backgammon, checkers and chess and the fact that in 1997 IBM supercomputer DeepBlue managed to defeat chess champion Garry Kasparov is considered an important milestone in the field. In the early days the main advantage of computers was the ability to explore the potential consequence of a vast number of possible moves. Thanks to huge advances in AI, modern agents are also capable of using external data, e.g. transcripts of games between top human players in the world. What is even more surprising, these agents can learn even by simply playing against themselves.
Nowadays, the AI-powered agents outperform humans in many board or card games to the extent that even top human players can benefit by learning from them. In fact, during a recent controversy an important chess player was accused of performing unhuman moves, i.e. moves which are hardly ever performed by human players, but frequent among machines.
So far most efforts in this direction focused on games where at each step there is only a finite number of possible moves. This is a challenging problem, because the number of possible strategies is huge and it is infeasible to explore a significant fraction of them. Nevertheless, it is a problem that people have been thinking about for years and we have some reasonably well-developed and well-tested approaches to it.
Can computers talk?
Many games require players to communicate using a natural language (”natural” means you should think of a language like English or Spanish, instead of a programming language like C or Python with a fixed set of instructions). Sometimes this communication is pretty rigid, e.g. the bidding process in poker or bridge, and this is something that computers can easily deal with. For a machine choosing from a finite number of bidding options is not that different from choosing which card to play. On the other extreme, there are role-playing games like mafia in which a player must come up with a believable story which relates to what previous players have said.
Clearly, creating an agent to play such games represents a completely different level of complexity. There is a huge number of ways in which words can be combined to form a sentence. Very few of them make sense as a sentence. Even fewer will make sense in the context of the game. The problem becomes even more complex if the communication happens across multiple rounds (like in a real-life conversation).
Can computers negotiate peace deals?
Researchers from Meta AI have recently developed an agent to play a game in which the communication complexity is somewhere in between the two cases mentioned above. Diplomacy is a board game whose essential aspect is the ability to make offers to other players and negotiate with them.
source of image: https://ai.facebook.com/research/cicero/
To achieve a decent performance the authors combine developments from two subfields of AI: strategic reasoning and natural language processing. The authors benchmark their agent by letting it play online against human players and they find that it performs better than most human players. This is an exciting development in the field of applied AI and what's even better is the fact that all the code is available online at GitHub. If you are interested, we encourage you to check it out! :)
source of image: https://ai.facebook.com/research/cicero/
Refs.
https://ai.facebook.com/research/cicero/
https://github.com/facebookresearch/diplomacy_cicero
https://www.science.org/doi/10.1126/science.ade9097