Thursday, August 9, 2012

Diplomacy Resources on the Web


Here is a list of some of the sites available online related to Diplomacy, with a brief description of their contents. I've divided the content up between playing and AI development.

Playing the Game

I've been playing Diplomacy online for three years now...  its' an on again / off again relationship. Up until recently I had played exclusively on http://webdiplomacy.net/, which runs an open-source implementation (called webDiplomacy!) that is written in PHP. Its a clean, simple and well laid out interface - I really like it! Its easy to keep track of multiple games and see which ones require your attention. Creating new games and searching for a game to join is also easy - the search engine is comprehensive.

Through the integrated forum on webdiplomacy.net, I recently discovered the excellent http://vdiplomacy.net/ site. This site also runs the webDiplomacy software, but contains numerous improvements, not least of which is the implementation of over 70 variant maps. I love these maps because they really change things up. Many of them also have additional rules, like fog of war, multiple moves per turn, being able to choose your starting units - even new units like cavalry! The site also has a simpler way of entering convoy moves and communicating with moderators.

There are two other sites I could find where you can play Diplomacy online against human opponents. They were the similarly named but unrelated http://www.playdiplomacy.com/ and http://www.playdiplomacyonline.com/. I haven't tried either but having glanced at them I imagine they would struggle to equal the slick useability of the webdiplomacy implementations. And as neither is open source they can't be co-opted to use to visualise games played by AIs.

Lastly I have to mention The Diplomatic Pouch. It has a couple of great resources. The first is a database of opening moves which is well written and full of expert knowledge.  The second is a huge listing of Diplomacy variants, over 400 apparently!

AI Development

Now its time to dig into the exciting stuff from my perspective. I made the decision to start this AI project purely because it seemed like a fun challenge, but lo and behold there is actually a community of people out there building bots just like I want to!

At the centre of it all is the Diplomacy AI Development Environment (DAIDE). They provide a development environment specifically designed for building Diplomacy AIs. You can play Diplomacy against them, or pit AIs against each other in mortal combat. This environment was created 10 years ago but is version 8 was released this year, so it is being updated.

What is most impressive about this endeavour is that they have created a tiered language that can be used to codify communication about diplomacy games. Each level of the language introduces new concepts to be communicated, such as alliances, synchronised movement and no-go zones. Even though this language has been specified up to about level 20 or so, it seems that most bots only implement level 0 or 1 if at all.

Obviously there is still a lot of challenges to overcome in this space, which I like. It will be fun to try and overcome the problems of managing communication. Realistically though I imagine that, like everyone else, my first efforts will be concentrated on just getting the bot to play the game at the base level without efforts at communication.

A second bot development is DipGame, provided by the chaps at the Artificial Intelligence Research Institute (IIIA) in Barcelona. Similar to DIADE this provides an environment for playing Diplomacy against AIs as well a preconfigured set of libraries for bot development. I'll have to have a look at each and see which is the best for my needs.

John Newburym who is involved in DAIDE, provides some interesting links and notes about bot development on his Diplomacy AI page. Also there is Albert's page. This bot, written by Jason val Hal, is apparently the best diplomacy playing bot in the world. You can download the source code here and peruse it at your leisure.

Finally, there are several academic papers published on the internet discussing AI algorithms for Diplomacy. Here are three of them: