This blog post talks about the Halite AI Challenge that I and many of my colleagues are currently competing in.
Halite AI Challenge
The Halite AI challenge is an annual open-source artificial intelligence challenge, created by the company Two Sigma.
The challenge each year focusses around building a bot which will react to its surrounding to complete a specific scenario.
To quote the tagline of Halite III “Halite III is a resource management game. Your goal is to build a bot that efficiently navigates the seas collecting halite, a luminous energy resource.”
The starter bot they provide moves around randomly but allows much room for improvement. Once it has been modified to move back to the dropoff point for the resources it has collected there are many options to improve it.
Since all levels of skill are welcome to participate tactics range from a simple collection approach to using machine learning to predict what the best move of each situation is.
Some strategies become quite complex, with path optimizations techniques such as dijkstra’s algorithm lending itself to improving the pathing of the ships through the water.
My current Bot in the challenge
Currently in the challenge, out of 950 players, I am ranked 103rd which puts me in the gold league, (top 15% of players).
My company, Imagination Technologies, is currently ranked 15th out of 195 organisations. Only counting companies we are ranked 6th globally.
The competition continues into January but this is a great start to it in my view as we have already been able to put some bots in the top tiers.
To see how my bot plays you can check a number of my replays, for example, this replay on Halite.
Currently, my bot is using python but I plan to move it to C++ for efficiency when I increase the quantity of algorithmic processing it performs. This is down to the fact that each turn your script is only allowed two seconds to run in. This means time can become quite tight in later rounds when there is a lot to process.
The navigation logic is currently relatively simple so that is an area I am working on improving. The bot will get stuck at times due to two ships attempting to go in opposing directions.
You can keep track of my progress using my profile link on the Halite website. If you have a Halite bot yourself you are welcome to challenge me!