While being able to drive the ball 300 yards might get the fans excited, a solid putting game is often what separates a golf champion from the journeymen. A robot built by German researchers is quickly becoming a master of this short game using a clever combination of classical control engineering and machine learning.
In golf tournaments, players often scout out the greens the day beforehand to think through how they are going to play their shots, says Annika Junker, a doctoral student at Paderborn University, in Germany. So she and her colleagues decided to see if giving a robot similar capabilities could help it to sink a putt from anywhere on the green, without assistance from a human.
Golfi, as the team has dubbed their creation, uses a 3D camera to take a snapshot of the green, which it then feeds into a physics-based model to simulate thousands of random shots from different positions. These are used to train a neural network that can then predict exactly how hard and in what direction to hit a ball to get it in the hole, from anywhere on the green.
On the green, Golfi was successful 6 or 7 times out of 10.
Like even the best pros, it doesn’t get a hole in one every time. The goal isn’t really to build a tournament-winning golf robot, says Junker, but to demonstrate the power of hybrid approaches to robotic control. “We try to combine data-driven and physics-based methods and we searched for a nice example, which everyone can easily understand,” she says. “It’s only a toy for us, but we hope to see some advantages of our approach for industrial applications.”
So far, the researchers have tested their approach only on a small mock-up green inside their lab. The robot, which is described in a paper due to be presented at the IEEE International Conference on Robotic Computing in Italy next month, navigates its way around the 2-meter-square space on four wheels, two of which are powered. Once in position it then uses a belt-driven gear shaft with a putter attached to the end to strike the ball toward the hole.
First, though, it needs to work out what shot to play given the position of the ball. The researchers begin by using a Microsoft Kinect 3D camera mounted on the ceiling to capture a depth map of the green. This data is then fed into a physics-based model, alongside other parameters like the rolling resistance of the turf, the weight of the ball, and its starting velocity, to simulate 3,000 random shots from various starting points.
This data is used to train a neural network that can predict how hard and in what direction to hit the ball to get it in the hole from anywhere on the green. While it’s possible to solve this problem by combining the physics-based model with classical optimization, says Junker, it’s far more computationally expensive. And training the robot on simulated golf shots takes just 5 minutes, compared to around 30 to 40 hours if they collected data on real-world strokes, she adds.
Before it can make its shot, though, the robot first has to line its putter up with the ball just right, which requires it to work out where on the green both itself and the ball are. To do so, it uses a neural network that has been trained to spot golf balls and a hard-coded object-detection algorithm that picks out colored dots on the top of the robot to work out its orientation. This positioning data is then combined with a physical model of the robot and fed into an optimization algorithm that works out how to control its wheel motors to navigate to the ball.
Junker admits that the approach isn’t flawless. The current setup relies on a bird’s-eye view, which would be hard to replicate on a real golf course, and switching to cameras on the robot would present major challenges, she says. The researchers also didn’t report how often Golfi successfully sinks the putt in their paper, because the figures were thrown off by the fact that it occasionally drove over the ball, knocking it out of position. When that didn’t happen, Junker says it was successful 6 or 7 times out of 10, and since they submitted the paper a colleague has reworked the navigation system to avoid the ball.
Golfi isn’t the first machine to try its hand at the sport. In 2016, a robot called LDRICK hit a hole in one at Arizona’s TPC Scottsdale course, and several devices have been built to test golf clubs. But Noel Rousseau, a golf coach with a Ph.D. in motor learning, says that typically they require an operator painstakingly setting them up for each shot, and any adjustments take considerable time. “The most impressive part to me is that the golf robot is able to find the ball, sight the hole, and move itself into position for an accurate stoke,” he says.
Beyond mastering putting, the hope is that the underlying techniques the researchers have developed could translate to other robotics problems, says Niklas Fittkau, a doctoral student at Paderborn University and colead author of the paper. “You can also transfer that to other problems, where you have some knowledge about the system and could model parts of it to obtain some data, but you can’t model everything,” he says.
- Next-Gen Sensors Make Golf Clubs, Tennis Rackets, and Baseball Bats Smarter Than Ever ›
- Video Friday: Japan's Space Humanoid, Robot Golfer, and Most Destructive Bot Ever ›
Edd Gent is a freelance science and technology writer based in Bangalore, India. His writing focuses on emerging technologies across computing, engineering, energy and bioscience. He's on Twitter at @EddytheGent and email at edd dot gent at outlook dot com. His PGP fingerprint is ABB8 6BB3 3E69 C4A7 EC91 611B 5C12 193D 5DFC C01B. His public key is here. DM for Signal info.