This AI Can Beat You at Battleship by Learning How to Ask Smart Questions
Researchers at NYU have apparently decided to ruin childhoods and taught an artificial-intelligence system to play the game of Battleship with amazing skill.
In the somewhat modified version of Battleship that this AI can play, it has to find an opponent’s ships hidden on a small grid of squares. All it can do to accomplish that is ask a series of questions that can be answered with a word or a single number.
The AI program demonstrates how machines can learn by asking questions. As reported by Will Knight of MIT Technology Review, the system looks at each question as a miniature program. After it processes what it learns, the program comes up with new and more precise questions.
Researchers Brenden Lake and Todd Gureckis, assistant professors at NYU, as well as Anselm Rothe, a graduate student, translated questions a human would ask to find the ships using a programming language. The questions included such inquiries as “How long is the blue ship?” and “Does the blue ship have four tiles?” or “Do the blue and red ships touch?” The machine then used a probabilistic model to determine which questions were the most useful and how to construct new questions to win the game.
This method of programming AI to generate smart questions is different from the usual approach where machines are simply fed a ton of data from which to come up with their own examples. The researchers see an application of their technology in fields like customer service.
“Having dialogue systems that generate novel questions so that they can get more informative answers on the fly is going to make human-computer interaction more effortless and make these systems more useful and fun to use,” said Brenden Lake.
The AI created by the researchers was actually able to construct “the ultimate question” for the game. It’s not a question a person would be able to follow or answer easily as it uses mathematical logic. But theoretically, answering it would allow the AI to back-calculate the whole board.
You can read the new paper “Question Asking as Program Generation”here.