Battling robots, walking buildings and mutations everywhere you look — what more could you want from an AI coding game?
A team of four Country Day students finished 21st out of 50 high school teams in their final tournament of the MIT Battlecode 2022: Mutation competition this year. The team consisted of senior Nihal Gulati, sophomore Alex Shuler and freshmen Sundiata Dumisani and Ryan Pirie.
Battlecode is a strategy-based programming competition using the Java coding language. Each team’s program had to juggle using many different types of troops, from resource-gathering units like miners and laboratories to defensive units like watchtowers to offensive troops like soldiers and sages. At the same time, the teams had to handle randomly-generated map “anomalies” to destroy the other team’s units and win.
Teams design and code algorithms to play against other teams’ codes in a turn-based strategy game that varies year by year.
The SCDS team received the Battlecode software and a set of rules for the game in early January. Throughout the month, their robot design went through several iterations, improving after every tournament before the final competition on Jan. 27.
Gulati said the team’s robot-designing strategy could have been better.
The team decided to work on separate programs at the start and combine their creations to form one program at the end.
Pirie said the team succeeded partly due to having Gulati as the leader of the team.
This was Gulati’s second year participating in Battlecode, which gave him an advantage.
“In the case of Battlecode, you’re having to do this again and again for the limited instructions you can program with. How do you get your miners to search the map for lead just with location information and for-loops? How do you coordinate behavior between units just with a shared array? How do you seek and destroy the enemy bases faster than they find you?” Gulati explained.
The team members said that time played a major role in their performance.
“If we had received a bit more time to spend on it, we definitely could have improved on it,” Shuler said.
Dumisani said keeping up in the competition is difficult for coders who are just starting to learn Java; they need more time to understand the coding language.
Finals week also had a big impact on the team’s time management, Pirie said.
Despite their struggle to find time to work on the competition, Dumisani said that, along with learning a new coding language, he also learned how to manage time better.
In addition, Gulati said the competition taught and improved the team members’ computer-science problem-solving skills, which overall made them better programmers.