bot
bot is an extension of the DipGame Framework for Diplomacy Bot Development (dip) that calculates the potential movements that the bot may choose based on a movement evaluation function that you can define.
bot simplifies even more the implementation of a bot because it then consists basically on defining an evaluation function. This function can be defined as a combination of the implementation of three class interfaces: RegionEvaluator, OrderEvaluator and OptionEvaluator. Each class interface is in fact an evaluation function itself over a different dimension (region, order and option). The combination of them is thus not optimal (as it considers them in isolation) but is a good trade-off between memory usage and solution quality. You can set the trade-off level taking into account that the more memory the higher the solution quality. For an optimal solution search, set the trade-off to infinite available memory space.
An example of bot implemented using bot is RandomBot whose evaluation function always returns the same value and the trade-off is set to work with minimum memory space.
bot and dip focus on the board representation. Negotiation facilities are provided by nego. For an intuitive example of how to build your bot using dip+bot visit the examples section of this site. Extra documentation can be found in [4].
Required libraries:
- dip-1.6.jar DipGame Framework for Diplomacy Bot Development.
- jac-0.8.1.jar Java AI Communication API.
- tcpIpComm-0.1.2.jar Connection layer between dip and jac.
- utilities-1.0.3.jar DipGame utilities library.
Available versions of bot:
- bot-1.6.jar Current version.
- bot-1.6-javadoc Documentation of the current release.
- bot-1.5.jar Previuos version 1.5.
- bot-1.5-javadoc Documentation of the previous version 1.5.