Neuronaler Architektur Generator
(Prototyp Küstlerhaus Wien 1999, update Neue Galerie Graz 2000,  update ZKM Karlsruhe 2004)

Plottegg & Maass; Programmierung:   Gruber / Burgsteiner

webcam ZKM            english text





Ein Neuron für den Computer nachgebildet, der output spike train gibt Signale an "DNA-Kette" des Formengenerators

Spike Trains Demo / download


Diese Installation ist eine Versuchsanordnung zur Demonstration eines Prinzips und zum Beweis unserer These zur digitalen Kreativität.

Das Prinzip ist die folgende Gleichung:
Pulsfolgen (spike trains) in biologischen Organismen =
= binäre Zeichenreihen (bit strings) =
= Daten (Koordinaten, Vektoren) interpretierbar als Körper (solids)

Diese Gleichung verknüpft drei traditionell als wesensfremd angesehene Wirklichkeitsbereiche:
- die Welt in unserem Kopf: Informationen, Vorstellungen und Ideen wie sie in biologischen Organismen tatsächlich kodiert sind
- die Welt der digitalen Datenverarbeitung, repräsentiert durch binäre Zeichenreihen als Vokabular der Kommunikation zwischen Computern
- die Welt der Generierung neuer Bilder / Räume / Architekturen.

Diese drei Wirklichkeitsbereiche werden hier auf dem gemeinsamen Nenner der Informationsverarbeitung miteinander verknüpft. Die Installation demonstriert auf diese Weise, dass die Generierung von Bildern/Räumen/Architekturen nicht mehr anthropozentrisch / expressionistisch gesehen werden muss. Durch die Computeranwendung wird sozusagen ein Schritt der Emanzipation von althergebrachten Verhaltens-, Evaluations- und Produktionsmustern ermöglicht.

Die Installation besteht aus zwei miteinander kommunizierenden PC's, deren Output projiziert wird.

PC 1 simuliert eine Urzelle der Informationsverarbeitung in unserem Kopf: ein Neuron. Genauer gesagt: er simuliert ein einfaches mathematisches Modell für die Arbeitsweise eines Neurons in unserem Kopf. Dieses Modell wird technisch als "integrate-and-fire neuron" oder "spiking neuron" bezeichnet.

Dieses Neuronenmodell hat mit einem wirklichen Neuron gemeinsam, dass es mittels Aktionspotentialen (spikes) mit anderen Neuronen kommuniziert: zu gewissen Zeitpunkten steigt die elektrische Spannung am soma des Neurons sprunghaft an (dargestellt durch Verfärbung des Neurons), um ca. eine Millisekunde später genauso plötzlich wieder abzusinken. Diese plötzlichen Spannungsänderungen werden über die vom Neuron ausgehenden Axone an andere Neurone weitergeleitet (in der Installation dargestellt durch wandernde spikes). Dabei handelt es sich um eine originelle Version eines digitalen Kodes, den die Natur in unserem Kopf verwendet: Jeder einzelne spike schaut genauso aus, es gibt also zu jedem Zeitpunkt entweder EINEN spike oder KEINEN spike - also keinen halben spike oder viertel spike.

Ein Neuron in unserem Kopf erhält als Input ebenfalls spike trains, also zeitliche Folgen von spikes, die von anderen Neuronen ausgesendet werden. Insbesondere alle Sinneseindrücke - zB. alle von uns gesehenen Gebäude - werden in die Form von spike trains kodiert bevor sie die Neuronen in unserer Hirnrinde (kortex) erreichen. In der Versuchsanordnung bekommt das simulierte Neuron 4 spike trains als Input. Bei den spike trains 1 und 2 handelt es sich um tatsächliche spike trains die von Hirnforschern (Krüger und Aiple) von Neuronen im Sehbereich des Gehirns von Affen aufgezeichnet wurden. (Statt von Affen könnten die Daten auch direkt von Besuchern abgenommen werden). Bei den spike trains 3 und 4 handelt es sich um Pulsfolgen (=spike trains) mittels derer der Zuschauer mit dem simulierten Neuron direkt in Kontakt tritt: durch Unterbrechen der Lichtschranke 1 (für spike train 3), bzw. durch Unterbrechen der Lichtschranke 2 (für spike train 4).

In einem biologischen Neuron haben manche der hereinkommenden spike trains eine exzitatorische Wirkung (d.h. sie erhöhen dessen Bereitschaft zu feuern), und andere eine inhibitorische Wirkung (d.h. sie hemmen seine Bereitschaft zu feuern). Dementsprechend haben in dieser Installation spike trains 1 und 3 eine exzitatorische Wirkung und spike trains 2 und 4 eine inhibitorische Wirkung auf das simulierte biologische Neuron. Das simulierte biologische Neuron verarbeitet die 4 auf das Neuron einströmenden spike trains zu einem einzigen output spike train. Dieser wird umkodiert in einen binären Kode, also in eine Folge von 1'n und 0'n (1 = 1 spike, 0 = kein spike, jeweils zu dem betreffenden Zeitpunkt), und in dieser für jeden künstlichen Rechner leicht verständlichen Form an den PC 2 weitergeleitet.

PC 2 ist ein Formprozessor, der die von PC 1 gelieferten binären Kodes zur Steuerung einer Kette von commands verwendet: mit Hilfe eines Script-Programmes werden die einströmenden spike trains sozusagen in Daten von 3-D Körpern umgewandelt und diese dann grafisch dargestellt. PC 2 interpretiert die von PC 1 gelieferten Daten zur Steuerung eines Programmes, zur Selektion und Parametrisierung der Kette der verfügbaren commands. Nicht veränderbar durch die von PC 1 gelieferten Daten sind die hardware, das mathematisch-geometrische Potential des 3D-Vektoren-Programmes und das steuernde script. Diese Invarianten prägen den erzeugten Bilder globale Muster auf, ähnlich wie die Invarianten unseres individuellen menschlichen Sehapparates und Gehirns den von uns wahrgenommen und reproduzierten Bildwelt globale Muster aufprägt, deren wir uns in der Regel nicht einmal bewusst sind. Die konkreten vom beamer projizierten Bilder sind edierte Informationen des jeweiligen Zustandes des bildererzeugenden Systems.

Man kann das Zusammenspiel von Zufälligkeiten und Gesetzmässigkeiten in der Bilderzeugung durch die beiden PC's vergleichen mit einem genetisches System. Vergleichbar einer DNA-Kette hat PC 2 eine Kette von genetischen Bausteinen (=commands), aus welchen durch den Leseraster der spike-trains die RNA als edierte Information herausgefiltert werden. Der bisherige Vorgang eines anthropozentrisch kreativen Entwurfes von Baukörpern wird – entsprechend unserer These - auf die Definition eines Genoms verlagert, welches seinerseits neue Baukörper generiert.

In der Version 2004 / ZKM ist das System als "bidirektional reagierend" programmiert, das kommt dem Anspruch einer intelligenten Anordnung noch näher: wenn über einen längeren Zeitraum keine spikes eintreffen - kann PC2 bei PC1 zusätzliche spikes stimulieren. Dies geschieht indem PC2 in einem der 4 spike trains von PC1 das Somapotential erhöht, so daß das Neuron zum unmittelbaren Feuern angeregt wird. Dies geschieht vorausschauend, indem PC2 signifikante Muster der zeitlichen Abfolge der spikes von PC1  erkennt. Folglich kann PC2 für prognostizierbare Zeitspannen der Inaktivität von PC1 zusätzliche spikes anfordern. Anzumerken ist, daß die Parameter mit welchen PC 2 arbeitet, ausschließlich aus der zeitlichen Abfolge der Einser des eingelesenen bitstrings ermittelt werden. Nicht das "Umlegen des Schalters", nicht die Einzelereignisse, sondern deren differenzierte zeitliche Abfolge ist maßgeblich. Insoferne ist diese als Äquivalent zum Somapotential-Aufbau interpretierbar.

Das Experiment zeigt, dass relativ wenige bits, repräsentiert duch die von einem einzigen Neuron erzeugte Pulsfolge, ausreichend Komplexität besitzen, um Entwürfe für vielfältige, uns manchmal sogar überraschende neue visuelle Vorstellungen zu erzeugen. Selbes gilt für die Operatoren des Scripts, welche auf einfachste geometrischen Befehlen basieren: polyline, extrude, union, intersect, rotate etc.

Das in dieser Installation simulierte biologische Neuron bzw. Genom ist von geradezu lächerlicher Primitivität verglichen mit der Informationsverarbeitungskapazität eines tatsächlichen biologischen Neurons. Ein Neuron in unserem Gehirn wird nicht nur von 4 anderen Neuronen oder Sensoren mit spike trains gefüttert, sondern erhält gleichzeitig 5000- 10000 spike trains als Input. Ferner ist die typische Frequenz dieser spike-trains nicht im Bereich von durchschnittlich 0.1 Hz, wie in dieser Installation, sondern im Bereich von 50 Hz. Die Informationsverarbeitung in einem biologischen Neuron läuft also ca 500 mal schneller ab als in dieser Installation, also so schnell, dass man die tatsächlichen spike trains nicht mehr mit dem blossen Auge verfolgen könnte.

Aus diesem Grunde sind auch die Freguenzen der Visualisierungen von PC 2 auf noch perzepierbare Grössen reduziert. Die Ablesbarkeit von Entwicklung / Wachstum / Bewegung wird als Abfolge von Einzelbildern (image rate < 15 i/sec) möglich. Ferner sind an dem Prozess der Verarbeitung und Erzeugung von Bildern in unserem Kopf nicht nur ein Neuron, sondern mehr als 40 Gehirnregionen, mit zusammen weit mehr als 10^10 (= 10 000 000 000) Neuronen beteiligt. Diese 10^10 Neuronen sind durch ca. 10^14 Verbindungen (Axone, Synapsen und Dendriten) miteinander verbunden. Alleine die in einem einzigen Kubikmillimeter der grauen Masse unserer Gehirnrinde enthaltenen Verbindungsleitungen haben eine Länge von ca. 4 km. Dies ergibt eine grobe Vorstellung von der Komplexität der "Datenverarbeitungmaschine" in unserem Kopf. Ähnlich bescheiden ist das Steuerungsskript des Formprozessors (hat ca. 100 Zeilen, verwendet 30 exec_commands, 256 farben/8-bit, etc.) verglichen mit dem menschlichen Genom (100.000 Gene, 10^9 Bausteine, etc.).

Dennoch wird schon in dieser einfachen Versuchsanordnung erkennbar:
(1) schon aus wenigen Elementen / kleinen Zahlen entstehen unvorhersehbare Resultate
(2) sie liegen in einer „systeminhärenten Bandbreite“
(3) unterschiedliche bit-string-inputs (ob vom Affen, Besucher, Lichtschranken oder auch generierte Zeichenketten) ändern nichts an dieser Unvorhersehbarkeit bzw. „Systemcharakteristik“
(4) Änderungen des outputs sind durch Änderungen im „Programm“ (skript) erzielbar.

Trotz der vergleichsweise geringen Komplexität des Prototyps des Neuronalen Architektur Prozessors erscheinen die daraus gewonnenen outputs differenzierter als die der bisherigen analogen Architektur-Produktion (bei gleichen Randbedingungen). Dies hat Konsequenzen für unsere Auffassung von Kunst, Architektur und menschlicher bzw. maschinell/digitaler Kreativität: es beweist unsere These, daß die Kreativität (hier Produktion von Architekturbildern) ein Produkt einer „neuronale Maschine“ ist und als solche durchaus vom „Hirn“ losgelöst werden kann.
 

99265.jpg (130472 Byte)99266.jpg (158045 Byte)99267.jpg (121500 Byte)99268.jpg (157138 Byte)

 



Neuronal Architecture Processor (Prototype 1999)
Wolfgang Maass / Manfred Wolff-Plottegg
Programming: Harry Fuchs / Andreas Gruber
Graz, June 1999

This installation is an experimental set-up for demonstrating a principle and for proving our thesis on digital creativity.

The principle is the following equation:
The sequence of pulses (spike trains) in biological organisms=
=binary streams of signs (bit strings) =
= data (coordinates, vectors) interpreted as geometric bodies (solids)

This equation brings together three spheres of reality that are traditionally considered as distinct:
- the world in our head: information, imagination and ideas in the way they are actually coded in biological organisms
-the world of digital data processing, represented by binary steams of signs as communication vocabulary between computers
- the world of generating new images / spaces / architecture.
These three spheres of reality are brought together here under the common denominator of information processing. Thus the installation demonstrates that the generation of images / spaces / architecture must no longer be perceived as anthropocentric / expressionistic. Through the use of the computer it is possible to make a step of emancipation from established patterns of behaviour, evalutation and production.

The installation constists of two PC´s communicating with each other, the output of which is projected.

PC 1 simulates the basic cell of information processing in our brain: a neuron. More precicely: it simulates a simple mathematical model for the mode of functioning of a neuron in our brain. This model is technically called "integrate-and-fire neuron" or "spiking neuron".

This neuronal model has in common with a real neuron that it communicates with other neurons by variations in electrical potential (spikes): at certain points in time, the electical tension rises instantaneously in the soma of the neuron (demonstrated through colour changes of the neuron), and subsequently falls equally quickly, approximately one millisecond later. These instantaneous variations in tension are transmitted to other neurons through axons (demonstrated in the installation by moving spikes). This constitutes an original version of the digital codes used by nature in our brain: every single spike is indeed such that at any point in time there is either a spike or no spike, - there being no such thing as a half or quarter spike.

Likewise, one neuron in our brain receives spike trains as inputs, i.e. sequences of spikes in time, sent by other neurons. In particular, sensorial perceptions - e.g. all built forms visually perceived by us - are coded in the form of spike trains before they reach the neurons in our cerebral cortex. In our experimental set-up, the simulated neuron receives 4 spike trains as input. Spike trains 1 and 2 represent real spike trains from neurons belonging to the visual region in the brain of apes, as recorded by brain researchers (Krueger and Aiple). Instead of apes, the data could be taken directly from visitors. As for spike trains 3 and 4, they consist of streams of pulses (= spike trains) by means of which the visitor gets into direct contact with the simulated neuron: by interrupting light sensor 1 for spike train 3 and, respectively, light sensor 2 for spike train 4.

In a biological neuron, some of the incoming spike trains have a stimulating effect (e.g. they increase its readiness to fire) whereas in others they have an inhibiting effect (e.g. they reduce its readiness to fire). Accordingly, in our installation, spike trains 1 and 3 have stimulating effects, while spike train 2 and 4 have inhibiting effects to the simulated biological neuron. The simulated biological neuron processes the 4 incoming spike trains into a single output spike train. This is recoded as a binary code, i.e. as a sequence of 1'n and 0'n (1 = one spike, 0 = no spike, at any particular point in time), and in this form, which is easily understandable to all artificial calculators, is it transmitted to PC 2.

PC 2 is a form processor, which uses the binary codes coming from PC 1 to control a chain of commands: by means of a script, the incoming spike trains are so to speak transformed into data sets for 3-D bodies which are then represented graphically. PC 2 interprets the incoming data from PC 1 in order to control a programme, by selecting and fixing the parameters in the chain of available commands. The core software, the mathematical-geometric potential of the 3D vector-programme and the controlling script, are not changed by the incoming data from PC 1. These invariants impose overall patterns on the generated pictures, similarly to the way in which the invariants of our individual human visual apparatus and brain impose overall patterns to the world of images which are perceived and reproduced by us, patterns of which we are not generally aware.

One can compare the interplay of random factors and fixed rules in the generation of images through the two PCs with the functioning of a genetic system. Similarly to a DNA chain, PC 2 offers a chain of genetic elements (= commands), from which the reading matrix of the spike trains filters out the RNA as edited information. The traditional procedure of anthropocentric creative design of built form is - according to our theory - shifted to the definition of a genome, which in turn generates new built forms.

In the version 2004 / ZKM the system is programmed as "bi-directional reactive", which gets even closer to the idea of an intelligent configuration: if - over a longer interval - no spikes are coming in, PC2 can stimulate additional spikes with PC1. PC2 is raising the soma-potential in one of the four spike trains of PC1, causing the neuron to immediate firing. This happens anticipatorially as PC2 recognizes significant patterns in the temporal sequence of PC1 spikes. Therefore PC2 is able to demand for additional spikes during previewable time-spans of inactivity of PC1. It has to be noted that the parameters with which PC2 is working are exclusively derived from the temporal sequence of Ones of the incoming bitstrings. Not the turning of the switch, not the singular event, but the differentiated temporal sequence is important. Insofar this can be interpreted as eqivalent to the build-up of the soma-potential

The experiment shows that relatively few bits, represented by the stream of pulses of a single neuron, have sufficient complexity to produce designs for extremly diverse and sometimes even astonishingly novel visual creations. The same is true for the operators of the script, based on simple geometric commands: polyline, extrude, union, intersect, rotate, etc.

In this installation, the simulated biological neuron and genome are of a ridiculous simplicity compared to the information processing capacity of a real biological neuron. A neuron in our brain is not fed with spike trains from only 4 other neurons or sensors, but simultaneously recieves 5000 to 10000 spike trains as inputs. Furthermore, the typical frequency of these spike trains is not in average in the order of 0,1 Hz, as in this installation, but in the order of 50 Hz. The processing of information in a biological neuron is 500 times faster than in this installation, in fact so fast that one could not follow the real spike trains with the naked eye.

This is also the reason why the visualisation frequency of PC 2 is reduced to a perceivable level. The readability of development / growth / movement becomes possible as a sequence of single frames (image rate < 15 i/sec). Furthermore, it is not only one neuron that is processing ond producing images in our brain, but more than 40 different regions in of the brain which together include more than 10^10 (= 10 000 000 000) neurons. These 10^10 neurons are interconnected by means of approximately 10^14 links (axons, synapses and dendrites). The extents of cabling within only one cubic millimeter of grey matter within our cerebral cortex already reaches a length of approximately 4 km. This is to give a rough idea of the complexity of the "data processing machine'' in our head. The controlling script of the form processor we have used (which has approximately 100 lines, uses 30 exec_commands, 256 colours/8bit, etc.) is of a similar simplicity when compared to the human genome (100.000 genes, 10^9 elements, etc.).

Nevertheless we can already draw the following observations from this simple experimental set-up:
(1) unforseen results already arise out of a few elements / small numbers
(2) they lie within a spectrum inherent to the system
(3) differet bit-string inputs (be it from apes, visitors, light sensors or generated data sets) do not affect the characteristics of the system and the unforseen nature of its results.
(4) modifications of the output can be obtained through modifications of the programme (script).

Despite the relatively low degree of complexity of this Neuronal Architecture Processor prototype, the results are more differenciated than those arising out of a traditional analogue architectural production (under the same base conditions). This has consequences for our understanding of Art, architecture and human versus machine/digital creativity: it proves our thesis that creativity (in this case production of architectural images) is the result of a „neuronal machine“ and as such can be released from the brain.



LINKS:
For further information about spiking neurons we refer to the article "Paradigms for computing with spiking neurons", which is online available as #110 from http://www.cis.tu-graz.ac.at/igi/maass#Publications and"Das menschliche Gehirn - nur ein Rechner?" by Wolfgang Maass,  #108 from http://www.cis.tu-graz.ac.at/igi/maass/#Publications; and  http://www.cis.tu-graz.ac.at/igi/tnatschl/3gen/3genlang.html
and
"Architektur Algorithmen" by M. Wolff-Plottegg buch_toc.htm


** projects **