Back | Home

LightChaser help

LightChaser is a program that simulates a light-sensitive "creature" whose movement is controlled by ANN.

This is what our creature looks like (after being magnified). It has three light sensors. Each sensor reads the light intensity exatly from the center of sensor (the black dot surrounded by a blue circle). So the creature doesn't actually "see" like we do, it just senses the intensity of light on it. It is similar to the situation when you close your eyes: you don't see anything, but you sense the intensity of light on your eyes. For example when you are in a dark room with your eyes closed and somebody points a flashlight at your face, you can sense it. The creature has three sensors, so it can figure out if the light intesity changes in some direction. For example if the upper sensor gives higher light intensity readings than the other two sensors, then most probably the light intensity rises towards "up" direction.

Creature's movement is controlled by ANN. This ANN reads in sensor readings (which should be in range from 0 to 1) and returns movement information. Currently it works this way:

The description of outputs may look a bit weird at first. The catch is that our neurons can only output a value from 0 to 1, but not any negative values. So if we want the creature to be able to move both to the left and to the right, we can calculate the horizontal speed this way:
speed_x = speed_right - speed_left
Similar principle applies to the vertical speed.

It is apparent that speed_x and speed_y can only be in a range from -1 to +1. If this is too slow, then it is possible to speed up the creature by multiplying both speeds with a speedup_factor. You can do it by pressing some keys, described later on this page.

So the creature needs ANN with exactly 3 inputs and 4 outputs. If these values are different, LightChaser will say so and ask to load correct ANN.

OK, now we have enough information to start the LightChaser program. It should look something like this:


However, it is very likely that you immediately get an error message about incorrect configuration file. This is because LightChaser tries to read config_generated.txt, which is the same file that Trainer usually modifies, and which often doesn't contain what LightChaser needs. To load a correct ANN, press "L" and choose some other configuration file. Examples for LightChaser usually begin with config_lc_ and also contain a short description (read it with Notepad or any other text editor).

On the screen you will see the same creature described before and a moving spotlight. When creature is under the spotlight, it will usually do something (depending on the ANN it contains).

The help about keys in LightChaser:

Back | Home