We can mark the significant evolution of technology through 3 different milestones based on the game Pac-Man. For those who don’t know [Pac-Man], it is an arcade game where you control Pac-Man, who must eat all the dots inside an enclosed maze while avoiding four colored ghosts. The game was first released in Japan by Namco in 1980 and later became a global phenomenon worldwide. Seeing the game at my cousin’s house on the Atari 2600 between 1980 and 1981 triggered my passion for computers.

pacman and Tarek

Milestone 1 - developing games by humans and playing them by humans

In the 1980s, PacMan was released on all major home gaming consoles and microcomputers. People would play the game on Atari 2600, Commodore, and many other devices. The four ghosts in the game, Blinky (red), Pinky (pink), Inky (cyan), and Clyde (orange), had some distinctive artificial intelligence capabilities that made the game of chasing or avoiding the ghosts fun and challenging. Blinky would directly go toward Pac-Man, while Pinky and Inky would try to position themselves in front of Pac-Man, usually by cornering him, and Clyde will switch between chasing Pac-Man and fleeing from him (wiki). The game was so popular that it led to several sequels, variations (Ms. Pacman, Pac Land, Super Pac Land, to name a few), television series, and significant revenue-making franchises. The game inspired a lot of future gaming and more development of video games. Thanks to video games like Pac-Man in the 80s, gaming consoles and microcomputers in the 80s became everyday household items. But the game was mostly for fun. Its developer created the game, and the computer/game console users played it.

Milestone 2: developing games by humans and playing them by humans and machines

Computer technologies significantly evolved from the eighties to the millenniums. The last decade also saw the rise of artificial intelligence and machine learning algorithms. These software attempt to mimic human intelligence and sometimes exceed human intelligence to solve problems. One particular company, Deep Mind, which Google later acquired, was working on implementing an AI algorithm using artificial neural networks and reinforcement learning that learn on its own by learning through experimentation (trial and error) and observation. It developed the [Deep-Q Network algorithm](https://en.wikipedia.org/wiki/Q-learning], which, in simple terms, takes input as raw pixels (what you see on the screen), a set of available actions (move up, down, etc.), and a game score (positive values means gain) then decides on the next best course of action by estimating future rewards. In other words, the algorithm would learn to develop an optimum gaming strategy by thinking of short versus long-term rewards. It keeps playing games repeatedly, learning to determine what generates a positive score or causes a loss. DQN learned to play many Atari games in 2014 by mimicking how humans would do:

  • Looking at the monitoring.
  • Moving the game characters around.
  • Understanding what is good and what is bad.

Shortly after, such artificial intelligence algorithms started playing PacMan and ultimately made history when an advanced version of the algorithm AlphaGo became the strongest Go player in history. Artificial intelligence in games ultimately made games like PacMan an activity that is not only for humans but also for machines! For instance, the AI algorithm AlphaStar became a StarCraft grandmaster (video). A list of other games with AI vs. humans is available here. Suppose you are interested in getting deeper into AI in games. In that case, a book draft of “Artificial Intelligence and Games” by Georgios Yannakakis and Julian Togelius (2018) is available to download on their website.

Milestone 3 Developing and playing games by machines and humans

Algorithms similar to DQN became hugely popular in human vs. machine game competitions. Now, programmers can use machines are playing all sorts of games, such as Atari games, DOOM, and more. For instance, you can install OpenAI Gym Retro to let machines play on Atari, NEC, Nintendo, and Sega systems.

Today, Nvidia released an artificial intelligence algorithm called GameGAN that did not play Pac-Man but created one! By watching 50,000 Pac-Man games played, GameGAN learned that the game is a maze, has a set of pixels that makes the character Pac-Man, the ghosts, and the dots, and then generated implementation of the game without looking into the underlying game engine code of the game itself. The algorithm GameGAN learned to create the game mechanics and design the layout. It used a specific algorithm in AI called generative adversarial networks that were first invented by Ian Goodfellow in 2014 while still a Ph.D. student at the time. Even if the technical schema of the work was not publicly disclosed, it is built on top of computer algorithms that are publicly being shared with the world by major companies like DeepMind, OpenAI, Google, and Facebook. Having algorithms that play the game and create the game itself is a new milestone in computer science engineering. The makers of GameGAN, Seung Wook Kim, Yuhao Zhou, Jonah Philion, Antonio Torralba, and Sanja Fidler, put a web page, “Learning to Simulate Dynamic Environments with GameGAN” that provides more detail about their work and how they tackled the problem.

Koichiro Tsutsumi from Namco, which owns the right to Pac-Man, said: “We were blown away when we saw the results, in disbelief that AI could recreate the iconic PAC-MAN experience without a game engine. This research presents exciting possibilities to help game developers accelerate the creative process of developing new level layouts, characters, and even games.” blog post.

NVidia promises to release a playable version of the game on their Nvidia AI Playground website. That will be interesting to check out!

Not only playing the game is now for humans and machines, but developing the game is now for humans and machines!

NVIDIA GameGan in action

What a great way to celebrate Pac-Man’s 40th anniversary! From a game that was created by humans to be played by humans, we are now at the frontier of games that are created by machines and played by machines!