Name: Bug Brain
Author: Tom Morton
License: Freeware
Website:
http://www.biologic.com.au/bugbrain/This is part three of my five part series on programming logic games. This week's game, Bug Brain, uses
neural nets as its programming model. Neural nets are a mainstay of
machine learning in computer science and of science fiction stories. In each Bug Brain level, you have to construct a neural net to guide your bug to complete some task. For example, in the level pictured below, you program the lady bug, and your task to have it eat the three bugs without falling off the branch.
To program the lady bug, you create a neural net which drives the lady bug. In the picture below, the inputs (or sensors) to the neural net are the red nodes on the left: branch width, bump, and eye. Branch width ranges from 0.0 to 1.0 based on the width the branch directly ahead. Bump is 0 or 1 based on whether the lady bug just bumped her nose or not. Eye is 0 or 1 based on whether the lady bug sees a predator above. There are three outputs (or actions): move forward, turn right, turn left. These are the blue nodes on the right. You have to construct the wiring in between the inputs and outputs.
My "brain" for the lady bug consists of four neurons, the green nodes. Each neuron takes the values from its input wires, performs a computation, and passes that value on. The upper left neuron outputs 1.0 if the input>.9 and 0.0 otherwise. This keeps the lady bug moving forward so long as the branch is thick enough. You don't want to fall off. The lower left neuron, turns the lady bug around if the branch gets too thin. The two neurons on the right override these commands once lady bug completes her journey and bumps her nose on the trunk of the tree.
The lady bug will walk down the branch until it starts to thin out, turn around, and walk back to the trunk of the tree. See how easy it is! This brain will complete the level, but I did get lucky. The bug which starts on the leaf walks forward, and my lady bug eats it on the way back. And, notice how the eye sensor is not connected to anything. Luckily, there are no predators on this level or my lady bug would be in trouble.
Bug Brain starts with a nice tutorial. Then you move on to control lady bugs, human muscles, ants, and worms in turn. Each has a different set of tasks and sensors. If you have had some experience with neural nets, the levels are sometimes tricky but not too stressful. It is hard for me to judge how difficult this game is for those who are new to neural nets. My guess is that Bug Brain is probably a wonderful way to learn about them, but challenging at times. If you get stuck, you can download solutions to any of the levels.
Bug Brain has a few flaws. A couple of times, I set up a neural net which performed illegal operation, a divide by zero or something. This resulted in a cascading series of dialog boxes, and I had to use the task manager to kill the game. And the interface is a little clumsy. To delete one wire, you have to delete a neuron to which it is connected. Not a big deal. This is a fun game for both neural net mavens and newbies.