Like most Australians, I know next to nothing about curling, the sport in which competitors slide a polished stone across ice towards a target. But that doesn’t stop me from watching it religiously during every Winter Olympics broadcast.
It’s fascinating, like lawn bowls on ice, but with completely changing conditions throughout the game. The best players can assess and compensate for those changes, and even have teammates change the ice during the match to perfect their shot (the mad sweeping slightly melts the ice, reducing friction).
But wherever there’s a sport, someone has tried to make a robot that can play it, and researchers from South Korea and Germany have built one that can beat some of the best curlers in the world.
The details of “Curly” are published in the journal Science Robotics by the team from Korea University, Berlin Institute of Technology and the Max Planck Institute for Informatics.
Curling seems like an odd sport for a robot player, but when it comes to developing advanced AI it’s actually perfect. The environmental characteristics of the ice are constantly changing, and every throw has an impact on the match. Your AI needs to be spot on from the very start, and able to adapt from throw to throw without needing to relearn as the match progresses.
“The curling ice sheet is an environment with highly varying uncertainty that has a large effect on the throw performance,” write the researchers. “Human players require many years of practice to master the game, which has complex strategic elements and a challenging throw technique.”
The team programmed a deep reinforcement learning (DRL) system, a type of AI that learns through trial and error. With uncertainties an unavoidable part of curling, the DRL was able to analyse errors in previous throws during the match and compensate for the changing ice conditions as it went.
Using this system, Curly didn’t need to relearn throws each time – rather, it only needed to complete a couple of calibration throws before each game to detect the starting ice conditions. Then as the game went on, an observer Curly would stand at one end, analysing the position of the rocks and how they moved across the ice. The DRL algorithm would then compensate its approach for the next throw, just as a human would approach the game.
“Unfortunately, Curly takes about one to two minutes for one shot, including whole throw procedures such as stone grasp, recognition of own coordinates, strategy planning/adaptation, and throwing and return,” write the researchers.
But Curly sure could compete. It won three out of four official matches against the South Korean national women’s and wheelchair teams. Not bad for a beginner.
Developing systems like Curly isn’t just about boffins beating athletes to the medals. Because the conditions in curling are so complex and variable, it’s a testbed for building AI that can be transferred to other complex real-world applications, say the researchers.
DRL usually requires a large dataset and substantial computation, and when that has been applied to the real world, it rarely stacks up against the results obtained in simulation. Simply, the world is full of hidden influences and changes that AI struggles, or is unable, to take into account.
And that’s where AI systems like Curly have their advantage. Rather than needing to relearn the conditions constantly, by continuously analysing what is occurring they can quickly, and safely, adapt. That makes them more useful in the real world, where there might not be the opportunity to stop and relearn each time a task must be performed.
“The robot can win against top-ranked human players in a curling competition on a real ice sheet,” writes Johannes Stork, an autonomous robotics expert from Örebro University in Sweden, in a commentary article in the journal.
“This shows that the approach not only works in simulation but also solves the problem in the real world with all the issues.”
But really, if the next Olympics features two teams of robots facing off in the curling final – you’d watch the heck out of that, wouldn’t you?