Thursday, January 23, 2014

Intelligent agent detection kit

I've finished a small app and analysis code that uses ID theory to differentiate between human and AI players in a game.  The players are engaged in a simple turn based tournament similar to battle bots, where each turn they move and fire bullets at each other.

Linux, Mac OSX: https://app.box.com/s/sc4j2xr95b5kjxu3c6l5
Winows: https://app.box.com/shared/isorfax3tp
(For the Windows version you will also need the Linux version for the analysis code)

The zip contains a README explaining usage.  The game is a Java JAR file, and can be run using an included "play" file.

The basic assumption is humans are better at bringing order out of chaos.  The metric measures the compressibility of histories of player perceptions, i.e. distance and direction of the closest agent, closest bullet, etc.  If a player's perceptions are more orderly, then they will be more compressible.  The metric selects the player with the most compressible perception history as the human.

A more detailed writeup is here:
https://app.box.com/shared/u13u3agxqg

The Java source code for the game is here:
https://app.box.com/s/w2yfuycmwqjqsj5ivfys