e-den user interface

e-den is a Windows application requiring Windows 3.1, Windows '95 or later versions. Although it was designed on a 486 lap-top, for tolerable simulation speed the program requires a Pentium processing chip. At least 32 megabytes of RAM are recommended.

The program simulates autonomous life in the Grid and, for most of the time, it is expected that the program will run without user input. It provides facilities for automatic adjustment of the climate, automatic repopulation in the event of universal extinction and, in response to the death of any designated organism, automatic replacement with its genetic sibling. Organisms downloaded from the internet are automatically queued at each border and inserted at appropriate intervals.

At any time, however, the user can change the features of the Grid. The inanimate world can be constructed according to the user's preferences and individual features, such as caves, tunnels and food dumps, can be arranged with the use of the mouse. Individual genomes can also be bred, designed, or retrieved from disk and assigned to new organisms. Organisms can be inserted or killed with the click of a mouse.

The moment by moment unfolding of Grid events is usually displayed in two views: the World Window, which allows the entire local Grid to be seen, and the Close-Up Window, which allows a detailed view of individual atoms and organisms. Optional windows can be opened which display the internal workings of a designated organism: its brain structure (the Net Window), the activity of individual neurons (the EEG Window) or the value of key metabolic parameters (the Status Window).

Finally, the Bug Laboratory allows the design of new genomes by providing step-by-step hints and automated decoding of the genetic syntax. Although editing facilities are not provided in the current software version, individual genomes can be saved as text files and edited using any standard text editor. An accompanying utility is provided (decode.exe) which breaks up existing text files into component genes, annotating the genes and interpreting the syntax for the user. This allows direct editing of each gene. The annotated text file can then be used to create new organisms.

Getting Started

The easiest way to get a general appreciation of e-den is to press the 'play' button in the upper left screen. Organisms, seen in the World window as small squiggles surrounded by a clear zone, will at once begin to move, grow and reproduce. A closer look at any of these can be obtained by right-clicking the region with the mouse; this centres the Close-Up view around the click point.

Alternatively, all existing organisms can be destroyed and the world can be designed anew. This is achieved by first pressing the 'env' button, then pressing 'Reset'. An uninhabited world filled with grass is provided. Clicking on the 'digital' insert button then allows neutral atoms to be inserted, whereas clicking on any of the other insert buttons allows a new spore to be inserted. As will be discussed, this spore may be genetically derived from a small list of default organisms, from a file stored on disk, from an existing organism or from a previously designed organism. Regardless of the current insert mode, the left mouse button can be clicked in either window to complete the insertion. If the insert mode is set to 'digital' and the cursor is dragged across the World window, whole clusters of atoms will be added at once, quickly forming barriers, enclosures or mazes. Pressing the 'cluster' button adds several clusters of inorganic atoms at once, distributed semi-randomly throughout the Grid. Individual organisms can then be placed strategically throughout the world and, as before, the 'play' button will then set biological time in motion. Alternatively, a gene pool can be selected in the 'open' dialogue, a starting population count can be specified, and the world repopulated by pressing the 'Repopulation' button.

When it is not displaying hints on the use of the tool bar buttons, the status bar at the base of the screen displays the current climate, population and the biological time. At any moment, the user may stop the passage of biological time, add or remove organisms or other features, and then resume. Pressing 'play' starts biological time and allows the user to observe events as they unfold. 'Fast forward', by contrast, starts biological time but turns off graphical output - depending on the display mode and the hardware being used, this may significantly improve the speed of the biological simulation and is therefore recommended for long evolutionary sessions. Pressing 'stop' causes biological time to be suspended and updates the display. Pressing 'pause', however, causes time to be suspended without updating the display (this is slightly quicker).

If you start the program and do nothing else, the world will switch into 'fast forward' after a few minutes and begin to run the world from where it was last left.

The Close-Up Window

Within the World window, the region currently on view in the Close-Up window is marked with a rectangular frame. The Close-Up window displays a region of the Grid that is about 30 x 30 spaces, depending on the size of the screen and the display mode. The three display modes are: 'digital', which is the quickest; 'graphic', which illustrates each atom as though it were a biological body part; and 'abstract', which is recommended. Users are free to modify the provided bitmaps with a utility such as 'Paint' (but be warned that the file names and bitmap sizes must not be altered.) The display mode can be altered by pressing the 'Display' button and selecting the desired options in the dialogue box.

Within the Close-Up Window, the mouse has the following actions: Left-clicking inserts a spore or atom at the click-point, according to the current 'insert' mode. If the 'insert' mode is set to digital, a single neutral atom of the chosen type is inserted.

Right-clicking selects a nearby organism, if one exists. This designates the organism as the one to be displayed in the Net, EEG and Status Windows and also clones its genome (producing a copy known as the 'selected genome').

Left-double-clicking inserts and then selects at the click point. Right-double-clicking selects at the click point and then centres the Close-Up Window around the selected organism. If no organism is near the click-point, the Close-Up Window is centred around the previously selected organism.

Dragging the mouse (moving the cursor while the left button is pressed) only has an effect if the 'insert' mode is digital, in which case it inserts a neutral atom of the specified type at each point the cursor is dragged through.

The World Window

The World window can be used to view the whole Grid at once, although individual features may not be well seen. Four display scales are available, which correspond to the number of pixels used to display the length of a single space in the Grid (1/2, 1, 2 or 5). Within the World Window, the mouse has the following actions: Left-clicking inserts a spore or atom at the click-point. Right-clicking moves the Close-Up view to the click-point. Left-double-clicking inserts at the click-point, selects at the click-point and then centres the Close-Up view around the selected organism.

Right-double-clicking selects at the click-point and then centres the Close-Up view around the selected organism. If no organism is near the click-point, the Close-Up view is centred around the previously selected organism. (This is one way to find the currently selected organism but the 'Find' button achieves the same purpose).

Dragging the mouse only has an effect if the 'insert' mode is digital, in which case it inserts a cluster of neutral atoms.

Modifying the Environment

The environment dialogue can be opened by pressing the 'env' button on the tool bar. It offers the following options:

The climate can be set to any value between 0 and 500.

The 'climate mode' can be set to fixed, automatic or seasonal. When fixed, the climate maintains the same value until manually changed. When set to automatic, the climate is adjusted to favour the expansion or contraction of the current population towards the specified target population. When set to seasonal, the climate is affected by two process: it meanders up and down in a random fashion but also, when the local Grid is connected to the internet, it drifts towards the values of the neighbouring Grids.

The difficulty parameter can be set. This parameter specifies the metabolic cost of living and was introduced in e-den version 0.52. It determines how reliant on food the organisms are and hence affects their exploratory range, starvation resistance, and so on.

The mutation rate can be set to any value between 0 and 100 (Higher values are treated as 100).

The target population can be set. This only affects the climate, and only if the climate mode is set to automatic. It is not possible to predict exactly what climate is needed to reach a given target and the target is often exceeded if successful organisms arise.

The start population can be set. This is the population limit that is used when repopulating from a previously saved gene pool (either spontaneously, because of universal extinction, or because the user has selected repopulation in the 'Open' dialogue). The number specified as the start population is the number of organisms that will be added during repopulation - the existing population is not counted. Automatic repopulation can be toggled on or off. When on, the specified gene pool is used to replenish the Grid whenever universal extinction occurs.

Automatic replacement can be toggled on or off. When on, and when 'insert mode' is selected, the currently selected organism is monitored and, in the event of its death, a new organism of the same type is added to the Grid at a random location and marked as the new selected organism. This option is useful when trying to design new organisms that are not quite viable in their current state but are thought to be only one or two mutations away from viability. By turning the mutation rate up high and choosing 'autoreplace', a series of similar organisms can be tried over several hours in the hope that one will eventually survive long enough to reproduce.

The use of default values for unspecified parameters can be toggled on or off. This option was discussed in the 'Genetics' section. The entire world can be reset, destroying all organisms and removing all atoms, replacing them all with grass.

The other major way of modifying the environment, apart from the addition or removal of organisms, is to fill it with inorganic features such as clusters of inorganic atoms, mazes, rocky grottoes and so on. As discussed above, this is most easily achieved by setting the 'insert mode' to digital and then dragging the mouse around the World Window. Only neutral atoms can be inserted in this way. Mistakes can be erased by inserting 'zeroes'.

Modifying the Display

In the display dialogue box, the scale of the World Window can be adjusted and a display mode for the Close-Up Window can be chosen.
If the 'Auto Follow' option is selected, the Close-Up view will follow the currently selected organism when it moves of screen.
If the 'Sprint Lines' option is selected and the information window is open, then it is possible to see whether the currently selected organism is sprinting. This organism will leave a red wake behind it as it moves if moving normally, a green wake if it is sprinting and a blue wake if it is trying to sprint but failing because of a low 'rest' level (as discussed on the biology page)

Inserting New Organisms

New organisms can be derived from a number of sources. In each case, one of the insert modes must be chosen and then spores of the specified type can be added by left-clicking the mouse. Apart from 'digital', which is used for adding inanimate features, the available insert modes are as follows:

Selected. At any time, the organism that was most recently right-clicked is designated as the selected organism. This organism can be studied in the Net, EEG and Status windows. It can also be used as the genetic source of new organisms. When this insert mode is chosen, cloning an organism is achieved by right-clicking it and then left-clicking somewhere else.

Disk. This allows insertion of a previously saved genome, usually stored in a file of type *.gnm but any text file can be used. Non-digital characters are simply stripped from the genome as it is created. Word-processing documents are not recommended as they usually contain hidden characters and are likely to give rise to unexpected results. The file used for creation of the new organism is that specified in the 'open' or 'save' dialogue boxes (which are linked to each other and always specify the same file); the file name is displayed at the top of the screen.

Bug Lab. If this is selected, the genome used for new spores is the one designed in the Bug Laboratory (see next section). If none has been designed during the current session, the text file "C:\biology\bug_lab.gnm" is consulted and used to make a genome.

Default. Up to ten default genomes will be supplied. These can be modified without recompiling. The names appearing in the dialogue box are those specified in the names.ini file and the genomes are those in the files org0.ini to org9.ini.

The Net and EEG Windows

These windows can be used to study the internal workings of the currently selected organism. The Net Window displays each neuron as a point in an array, with 25 neurons per horizontal row. Axons are shown in red, dendrites in blue and the number associated with each neuron appears in the Window title when the cursor passes over it. An individual neuron can be selected with the left mouse button and deselected with the right mouse button. The most recently selected neuron is marked as a filled black circle and is described in more detail below the array. When a second neuron is selected, the first is marked with a grey circle until it is explicitly deselected; this indicates that its excitation will be traced in the EEG Window. Right double-clicking brings up a guide to the default numbering of the motor neurons; repeating the double click brings up a similar guide for the sensory neurons.

The EEG window operates in two modes: in the default mode, it traces the excitation of all selected neurons against a horizontal time axis. The most recently selected neuron marked in black and the other selected neurons are marked in grey. Left-clicking on the EEG Window converts it to multi-mode, in which all neuronal excitations are displayed simultaneously but are not traced vs time. Left-clicking again restores the default mode.

The Information Window

The information button is marked with a lower case 'i' and can be used to check the current metabolic state, name and origin of the selected organism. Organisms inserted by the user are designated as 'Orphans' and organisms which have entered across the border of the local Grid are marked as coming from cyberspace (even if they were originally born locally).

Designing New Organisms

The Bug Laboratory, in its current form, is not user-friendly. It can be used, however, to create new species or to modify existing species. It automatically interprets the genetic syntax and provides explanatory prompts as each digit of the genome is added. The resulting genome is stored in a file named bug_lab.gnm and this can be decoded using the decode.exe utility to correct or delete individual genes.

When designing a specific neural structure, it is necessary to create an organism, insert it in the Grid and select it, then view it in the Net Window to see if the genome was interpreted as intended. Misplaced neural connections can be corrected with the decode utility or by adding to the existing genome - the last connection specified for each axon or dendrite is always the one that determines the actual brain structure. If the dynamic properties of a neuron or group of neurons need fine tuning, such as the threshold, drift, sensitivity and so on, the Net and EEG windows should be used together.

IT IS ALSO POSSIBLE TO STIMULATE OR INHIBIT INDIVIDUAL NEURONS to see the effect on the neural network. Just left click on a neuron with the shift key depressed, to stimulate it, or with the control key depressed, to inhibit it.

The 'sexual reproduction' button (joined male and female symbols) allows the user to choose two parents with the right mouse button and create multiple offspring with the left mouse button. For each of these offspring, their genome is a unique combination of the two parents' genomes. Unlike natural mating, the two parents are not required to have the same species designator.

It is deceptively difficult to design Bugs with any particular desired behaviour (although the author created the organism called "EatsThrees" in about half an hour, and it does just what its name suggests). Luckily, evolution is relatively forgiving and a combination of direct design, selective breeding and long evolutionary sessions can often achieve interesting results.

Remember, the true potential of e-den is unlikely to be realised without the parallelism provided by distributed simulation.

Getting Help

Unfortunately, no detailed Help is available within the application itself at this stage. The author is happy to answer queries by e-mail and this site (http://geocities.datacellar.net/ResearchTriangle/Forum/3830)
will be updated regularly. Limited sections of source code will be provided to answer specific queries about the detailed rules of e-den. These instructions, and the executable software, may be freely distributed to other users throughout 1999 provided it is done without commercial intent. All freeware licences will expire in the year 2000... After that the price will double :)


Contents

e-den introduction
e-den overview
e-den physics
e-den biology
e-den neurology
e-den genetics
e-den across cyberspace
e-den user interface
e-den FAQ
e-den download

1