1
Simulating the Evolution of 2D Pattern Recognition on the CAM-Brain Machine, an Evolvable Hardware Tool for Building a 75 Million Neuron Arti cial Brain Hugo de GARIS (1) , Michael KORKIN (2) Padma GUTTIKONDA (3) and Donald COOLEY (3)
(1) STARLAB, Blvd. St Michel 47, B-1040, Brussels, Belgium, Europe. email:
[email protected], web: http://foobar.starlab.net/degaris tel. +32 2 740 0740, fax. +32 2 742 9654 (2) Genobyte, Inc., 1503 Spruce Street, Suite 3, Boulder CO 80302, USA. email:
[email protected], web: http://www.genobyte.com tel: +1-303-545-6790, fax: +1-303-449-1671 (3) Computer Science Dept, Utah State University, Logan, UT, USA. email:
[email protected], web: http://cc.usu.edu/sllh1/index.html email:
[email protected], web: http://www.usu.edu/faculty/cooleyd tel. +1 435 797 2451, fax. +1 435 797 3265
Abstract This paper presents some simulation results of the evolution of 2D visual pattern recognizers to be implemented very shortly on real hardware, namely the \CAM-Brain Machine" (CBM), an FPGA based piece of evolvable hardware which implements a genetic algorithm (GA) to evolve a 3D cellular automata (CA) based neural network circuit module, of approximately 1,000 neurons, in about a second, i.e. a complete run of a GA, with 10,000s of circuit growths and performance evaluations. Up to 65,000 of these modules, each of which is evolved with a humanly speci ed function, can be downloaded into a large RAM space, and interconnected according to humanly speci ed arti cial brain architectures. This RAM, containing an arti cial brain with up to 75 million neurons, is then updated by the CBM at a rate of 130 billion CA cells per second. Such speeds will enable real time control of robots and hopefully the birth of a new research eld that we call \brain building". The rst such arti cial brain, to be built at STARLAB in 2000 and beyond, will be used to control the behaviors of a life sized kitten robot called \Robokitty". This kitten robot will need 2D pattern recognizers in the visual section of its arti cial brain. This paper presents simulation results on the evolvability and generalization properties of such recognizers.
I. Introduction
This paper presents some simulation results of the evolution of 2D visual pattern recognizers to be implemented very shortly on real hardware, namely the the \CAM-Brain Machine"(CBM) [4] [1] [2], a Xilinx XC6264 FPGA based piece of hardware that is used to evolve 3D cellular automata based neural network circuit modules at electronic speeds, that is in about a second per module. 65,000 of these modules can then be assembled into a large RAM space according to humanly speci ed arti cial brain architectures. This RAM is updated by the CBM fast enough (130 billion CA cell updates/sec) for real time control of robots. The CBM was built and delivered to the rst author's previous lab (ATR) in November 1999 and to his present lab (STARLAB) in April 2000. The CBM is the essential tool in the \Arti cial Brain (CAM-Brain) Project" which at the time of writing (Nov 1999), has been running for 7 years. The rst author's web sites contain all his journal articles and conference papers concerning this project (in downloadable format) [5]. The basic aim of the CAM-Brain Project as rst stated in 1993 was to build an arti cial brain containing a billion arti cial neurons by the year 2001. The actual gure in 1999 was maximum 75 million. The billion
gure will have to wait for the construction of the second generation machine CBM-2, to be ready in about 3-4 years. The CBM is making practical the creation of arti cial brains, which are de ned to be assemblages of tens of thousands (and higher magnitudes) of evolved neural net modules into humanly de ned arti cial brain architectures. An arti cial brain consists of a large RAM memory space, into which individual CA modules are downloaded once they have been evolved, and interconnected according to the architectures of human BAs (brain architects). The CA cells in this RAM are updated by the CBM fast enough for real time control of a robot kitten \Robokitty". Since the neural net model used to t into state-of-the-art evolvable electronics had to be simple, the signaling states of the neural net were chosen to be 1 bit binary. We labeled this model \CoDi-1Bit" [3] (CoDi = Collect & Distribute). This 1 bit neural signaling model, which has been presented already in several papers [3] [1] [2] is implemented by the CBM. This paper reports on simulation results of the evolvability and generalizability of 2D visual pattern detector modules based on this CoDi model.
II. 2D Input Pattern Recognition Module (Analog)
This section describes the evolution of modules which recognize static 2D analog input patterns (although the approach is equally valid for dynamic pattern detection - a topic for future research). In earlier papers we have described how it is possible to convert back and forth between spiketrain (bitstring) and real (analog) time dependent formats [1] [2]. The CoDi module (a cube of 242424 3D cellular automata cells in which a neural net grows and evolves at electronic speeds) as implemented in the CAM-Brain Machine (CBM), has maximum 188 input points and maximum 4 output points, although usually in practice, only one output point is used, because it increases the evolvability of the module - a multi-output, multi-function module is tougher to evolve. These input and output points are distributed evenly over 3 faces of the cube (242424 CA cells). Due to wraparound of signals at opposite faces, only three connecting input faces are needed. The rst problem we were confronted with was how to map a 2D greyscale image of 1612 = 192 pixels into the 3 input faces of the cube. The mapping we chose, was fairly straightforward and is shown in the table below, where each symbol of the form Xi represents a block of 44 pixels. 2D Rectangle
A1 A3 B1 B3
A2 A4 B2 B4
Maps to 3 Faces of Cube A1 A2 A3 A4
C2 C4 C1 C3 B1 B2 B3 B4
C1 C2 C3 C4
Table 1. The mapping between the 2D image pixels, and the 3 input faces of the CoDi cube. We bought 3 plastic toys, a tank, a car, and a plane and took digital photos of them from 2 dierent side angles (0, -30 degrees), totaling 6 photos. For each toy, an image taken at 0 degrees (face on), was input (after conversion to spiketrains for each pixel) for the evolution (the training set). The aim of the exercise was to evolve a module which would give a high output value (at a single point) for a tank, and low values for the plane and car, i.e. the other 2 images. The other 3 images (-30 degrees) were used as the test set, to see if the evolved module would be capable of generalization, i.e. would give a high output signal for a tank, and low output signals for the other two toys, for those 3 images not used in the training set.
These digital images were transfered to the computer using CAMEDIA Master 1.0 software, and then converted into 1612 grey scale pixels using EZPix Image processing software. The pixels of the grey scale images were initially converted to have analog input values ranging from 200 for a black pixel to 600 for a white pixel. These input pixels where then converted to a bit stream for each pixel, using our analog to spiketrain conversion algorithm (the socalled H.S.A. spiker algorithm) [1] [2]. The output spike train was converted back to a time varying analog signal using our spiketrain to analog conversion algorithm (the socalled SIIC Convolution Algorithm) [1] [2]. The target (desired) output value for the tank was set at 600, and 200 for the plane and car. The tness function was the inverse of the sum of the absolute dierences between the target and actual output analog value at each clock tick for 60 ticks. Fig. 1 shows the original image of the car whose photo was taken at an angle of -30 degrees. Its corresponding 1612 pixel greyscale image that is input to the evolved module is shown in g. 2. The plane and tank images are not shown for reasons of space in this paper.
Fig. 1. Car, original test image, -30 degrees orientation
Fig. 2. Car, 1612 pixel test image, -30 degrees orientation
The remaining 2 gures show how well the elite module evolved for the training set and how well it generalized with the test set. Fig. 3 shows the 3 outputs for the face on (0 degrees) images of the training set (tank, plane, car). Fig. 4 shows the outputs for the test set, i.e. the input images taken at an angle of -30 degrees. The starred lines (*) are for the tank, the plus lines (+) are for the plane, and the solid lines (-) are for the car. We were happy with the evolved results. We feel that gs. 3 and 4 show that we achieved what we wanted.
700
600
500
400
300
200
100
0
0
10
20
30
40
50
60
Fig. 3. Evolved outputs for tank(*), plane(+), and car(-), face on 700
600
500
400
300
200
100
0
0
10
20
30
40
50
60
Fig. 4. Generalized outputs for tank(*), plane(+), and car(-), at -30 degrees
References
[1] Hugo de Garis, Felix Gers, Michael Korkin, Arvin Agah, and Norberto Eiji Nawa. Cam-brain, atr's billion neuron arti cial brain project : A three year progress report. Arti cial Life and Robotics Journal, 2, 1998. [2] Hugo de Garis, Michael Korkin, Felix Gers, Norberto Eiji Nawa, and Michael Hough. Building an arti cial brain using an FPGA based 'CAM-brain machine'. Applied Mathematics and Computation Journal, Special Issue on Arti cial Life and Robotics, Arti cial Brain, Brain Computing and Brainware, 2000. to appear. [3] Felix Gers, Hugo de Garis, and Michael Korkin. CoDi-1 Bit: A simpli ed cellular automata based neuron model. In Proceedings of AE97, Arti cial Evolution Conference, October 1997. [4] Michael Korkin, Hugo de Garis, Felix Gers, and Hitoshi Hemmi. CBM (CAM-Brain Machine): A hardware tool which evolves a neural net module in a fraction of a second and runs a million neuron arti cial brain in real time. In John R. Koza, Kalyanmoy Deb, Marco Dorigo, David B. Fogel, Max Garzon, Hitoshi Iba, and Rick L. Riolo, editors, Genetic Programming 1997: Proceedings of the Second Annual Conference, July 1997. [5] Hugo de Garis's and Michael Korkin's Websites, http://foobar.starlab.net/degaris, http://www.cs.usu.edu/degaris, http://www.hip.atr.co.jp/degaris, http://www.genobyte.com.