Computers Learn and Teach Each Other by Playing Pac-Man

Knowing when to give advice is the key to success

2 min read
Computers Learn and Teach Each Other by Playing Pac-Man
Photo: AP

Video games can be educational—for computers.  Researchers at Washington State University developed an algorithm that helps computers learn and teach each other by playing Pac-Man, an iconic video game that has eaten up the spare time of gamers since the 1980s. Advances in robot intelligence could potentially lead to robots teaching humans. Matthew E. Taylor, an expert in artificial intelligence at WSU, published these findings online in the journal Connection Science.   

The virtual robots, nicknamed "student agent" and "teacher agent," learn from each other as the student agent navigates through a dizzying maze trying to outrun four colorful ghosts all while gobbling up pellets. When the teacher agent detects its disciple is in trouble, it jumps in to give advice.

Knowing the precise moment to give advice is a skill most teachers and parents have crashed and burned trying to master. Unlike its human counterpart, this new algorithm developed by Taylor’s team recognizes the fine line between inattentiveness and micromanagement. With this refined version of action advice, researchers found that several "student agent" players soon outshone their teachers because they learned to think independently.  This was illustrated when student agents played against imperfect teachers and won.

"We designed algorithms for advice giving, and we are trying to figure out when our advice makes the biggest difference," Taylor said in a press release.

According to Taylor, the easiest way to teach a robot new skills is to swap out its old 'brain' for a new one.   But, it's not as easy as it seems because hardware and software isn't always compatible with the new version.  Robots’ ability to teach each other is an important area of research, because someday robots could be put in charge of training successors, saving humans from the arduous task.  

Beyond the more immediate goal of computers teaching each other, Taylor says his ultimate goal is to have a robot teach humans. “Anything we can do to speed up human learning will be great for education, for training,” he says.

The Conversation (0)

Why Functional Programming Should Be the Future of Software Development

It’s hard to learn, but your code will produce fewer nasty surprises

11 min read
Vertical
A plate of spaghetti made from code
Shira Inbar
DarkBlue1

You’d expectthe longest and most costly phase in the lifecycle of a software product to be the initial development of the system, when all those great features are first imagined and then created. In fact, the hardest part comes later, during the maintenance phase. That’s when programmers pay the price for the shortcuts they took during development.

So why did they take shortcuts? Maybe they didn’t realize that they were cutting any corners. Only when their code was deployed and exercised by a lot of users did its hidden flaws come to light. And maybe the developers were rushed. Time-to-market pressures would almost guarantee that their software will contain more bugs than it would otherwise.

Keep Reading ↓Show less
{"imageShortcodeIds":["31996907"]}