For the most part, the text interface to avida is simple and straightforward to use; most of the options available are listed on the screen. For example, at all times there is a menu-bar at the top of the screen which lists the current update, and the keys to press to go to any of the most used avida screens. This section further defines the function of each of these options.
The Map screen displays the spatial representation of the population of organisms in avida. The grid itself is toroidal and typically will not fit entirely on the screen. The arrow keys will allow the users to adjust the portion of the map viewed. On computers using a ``curses'' interface, the arrow keys will often not function properly, in which case the number keys 8, 2, 4, and 6 can be used to move up, down, left, and right respectively. Here is an example map screen (showing genotype mode on a noncolor terminal):
+----------------+----------------------------------------------+-----------+
| Update: 97 | [M]ap [S]tats [O]ptions [Z]oom [Q]uit | Avida |
+----------------+----------------------------------------------+-----------+
A A A A . I A A A A K . . . K K A A + K K K
A A A A A I I A A . A K K . . + K A K K K . K A A A
A . A A A A A A A . A A K A A + K K A A A K K A A A
A A A A A A A I . . A K A . A K K K K A K K K A A
A A . A . A A I A A A A A . A A K K K K A . A .
A A A A A A A A A A A . . A A A A A A . . K A . A .
A A . A A A A A A A A A . A K K A . A A . A . K A A
A A A A A A . A A A A A A A . A A . . K A A A A + A
A A A A A . A A A A . A . A F A A A A A A A F A A A +
A A A . A . A A A A A . A F A A A A . . A F A A A +
A A A A + A A A A A A A A F A A A A A F F F F A A A
A A A . . A A A . A A A A F A . + A A A A + F F F . .
A A A . . A A A A A A A A . A . + F A F A F F F F F
A . A A A A . A A A A A A A A A F A F F F . + . A . .
. A A A A A A . A A . A A A A F . . F F F F . F . A
A A + A . A A . H H H A A A . F A . F F F F F A A
A A A A A A + A A A H . . A . A F F . F F A F +
A A A A . A A A A A A A A A A A . A A A F F F A
A A A . . A A A A A . A A A A . A A A A F F F .
A A A A A A A A A . . A A . . B G G A G .
* Clipping last 40 line(s) * [<] Genotype View [>]
Many different features can be displayed by the different map modes (which can be cycled through using the `<' and `>' keys). The available map viewing styles are:
This screen displays all of the current statistics about the ongoing run. A typical snapshot of the screen looks like this:
+----------------+----------------------------------------------+-----------+
| Update: 97 | [M]ap [S]tats [O]ptions [Z]oom [Q]uit | Avida |
+----------------+----------------------------------------------+-----------+
Tot Births.: 2 -- Dominant Genotype -- Dominant Average
Breed True.: 475 Name........: 031-aaaaa Fitness..: 0.2213 0.1893
Parasites..: 0 ID..........: 1 Merit....: 31 31
Energy.....: 0.16 Species ID..: 0 Gestation: 140 140.3
Max Fitness: 0.3115 Age.........: 97 Size.....: 31 30.8
Max Merit..: 3.8e+01 Copy Size: 31 30.8
Exec Size: 25 24.9
Current Total Ave Age Entropy Abundance: 415 5.85
Creatures: 655 2.1e+03 4.5 6.48 Births...: 0 0.018
Genotypes: 112 3.2e+02 71.3 0.68 BirthRate: 0.214 0.183
Threshold: 15 1.6e+01 83.8
Species..: 9 9.0e+00 89.0 0.41
+---------------------------------------------------------------------------+
| Input...: 19 Not.....: 0 Nor.....: 0 |
| Output..: 1 And.....: 0 Xor.....: 0 |
| I/O.....: 0 ~A Or B.: 0 Equals..: 0 |
| Echo....: 0 ~A And B: 0 |
| Nand....: 0 Or......: 0 |
+---------------------------------------------------------------------------+
Starting at the upper left column of the screen, the first block of statistics describes the current state of the soup. These statistics are defined as follows:
To the right of the soup status column, we have some information about the dominant genotype. This section simply lists the name of this genotype, its ID, its species ID, and its age (how many updates it has existed for). The first three of these statistics are purely for identification purposes.
On the right side of the screen, more statistics are given for a number of common measurements on the dominant genotype, as well as the average across all genotypes. All of these statistics are described in the Glossary.
In the middle left side of the screen, we have information about the various taxonomic levels in avida; we give the current abundance of each in the Current column, the total number of each that have existed over the entire run in the Total column, the average number of updates each have existed in the Ave Age column, and finally the entropy of each in the Entropy column.
Finally, along the bottom of this screen, we list the total number of creatures which have completed each of the assortment of tasks available in avida. These numbers reflect only those creatures which have actually finished the task, so even if every creature in the soup is capable of completing a task, not all of them may be listed because the newborns would not have finished it for the first time.
This screen is a histogram of the most abundant genotypes in the population. A typical screen looks like this:
+----------------+----------------------------------------------+-----------+ | Update: 97 | [M]ap [S]tats [O]ptions [Z]oom [Q]uit | Avida | +----------------+----------------------------------------------+-----------+ Fitness Name Histogram: [<] Genotype Abundance [>] 0.2213 031-aaaaa: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 415 0.2204 031-aaaad: A 4 0.1845 031-aaaah: A 5 0.2727 029-aaaac: H 3 0.2251 031-aaaaf: A 5 0.2227 031-aaaab: AAAAAA 47 0.2236 031-aaaac: C 4 0.2214 031-aaaag: A 4 0.2192 029-aaaaa: D 5 0.2190 030-aaaaa: BBBBBB 44
The first number here represents the fitness of the creature; this is the relative replication rate as compared to the other creatures in the population.
Next comes the name of the genotype (for example 109-aaaad). This is an identifier for the genotype, and the name of the file it will be saved under if it is extracted. The number portion (before the dash) of the name is the length of the code for that genotype, and the letter sequence after the dash gives a unique identifier for it. These are never repeated throughout a single run.
The repeated letter after the name is the actual histogram; the number of letters which appear here is the relative current abundance of the genotype. This allows quick recognition of which genotypes are dominant in the soup. The letter itself represents the species of this genotype, so any two lines with the same letter are of the same species.
Finally, each line ends with a number which is the exact abundance of creatures currently within this genotype.
This screen lists all of the options which are both currently available, and were used to initialize this run. A typical screen looks like this:
+----------------+----------------------------------------------+-----------+
| Update: 97 | [M]ap [S]tats [O]ptions [Z]oom [Q]uit | Avida |
+----------------+----------------------------------------------+-----------+
Current CPU..: (0, 0) Time Slicing.: Constant
Genotype.....: 031-aaaaa Task Merit...: Exponential
ID #.........: 0 Size Merit...: Full Size
Birth Method.: Replace max age
Max Updates..: 50000 Ave TimeSlice: 30
World Size...: 60x60
Random Seed..: 1 Point Mut: 0
Threshold....: 3 Copy Mut: 50
Divide Mut: 0 Ins: 0 Del: 0
Debug Level..: OFF
Inst Set.....: inst_set.24.base
Task Set.....: task_set
Events File..: event_list
+---------------------------------------------------------------------------+
| [H]istogram Screen [C]hoose New CPU Un-[P]ause |
| [B]lank Screen [E]xtract Creature [N]ext Update |
| [R]edraw Screen |
+---------------------------------------------------------------------------+
The upper left corner of this screen gives information about the active genotype in the soup, and the remainder of the upper portions of the screen list values from the genesis file, and what they were initialized to.
The lower part of the screen (within a box) shows the special options available to the user. They are:
This screen contains all of the information about the state of the active CPU. Here is a typical screenshot:
+----------------+----------------------------------------------+-----------+
| Update: 97 | [M]ap [S]tats [O]ptions [Z]oom [Q]uit | Avida |
+----------------+----------------------------------------------+-----------+
Current CPU.: (0, 0) +--------------+-------------+-----------------+
Genotype....: 031-aaaaa | Memory: 62 | Stack A | A A A A A A A |
Species.....: spec-0 +--------------+-------------+ A A . A . A F |
| 16: nop-A | 0 | A A A . A F A |
Gestation...: 140 | 17: nop-B | 0 | A A A[A]A A F |
CurrentMerit: 31 | 18: copy | 0 | . A A A A F A |
LastMerit...: 31 | 19: inc | 0 | A A A A A A . |
Fitness.....: 0.2214 | 20: if-n-equ | 0 | A A A A A A A |
Offspring...: 0 | 21: jump-b | 0 |[<] Genotypes [>]|
Errors......: 0 | 22: nop-C | 0 +-----------------+
Age.........: 3 | 23: nop-A | 0 | AX: 31 |
Executed....: 69 | 24: nop-C | 0 | BX: 15 |
Last Divide.: 69 | 25: nop-A | 0 | CX: 31 |
Flags.......: A +--------------+-------------+-----------------+
Facing......: (59, 58) | Inputs | Get.: 0 Not.: 0 Nor.: 0 |
+--------------+ Put.: 0 And.: 0 Xor.: 0 |
Un-[P]ause | 343139087 | GGP.: 0 ~Or.: 0 Equ.: 0 |
[N]ext Update | 314146099 | Echo: 0 ~And: 0 |
[Space] Next Instruction | 81633365 | Nand: 0 Or..: 0 |
[-] and [+] Scroll Memory +--------------+-------------------------------+
The column on the left of the screen gives all of the current statistics for this CPU, and the right of the screen contains information about the actual hardware in the CPU; the memory, the stack, the registers, and the I/O buffers.
The execution statistics recorded here are:
This screen is especially useful while avida is paused. The space bar will cause the active creature to advance a single instruction, and the return key will cause it to advance a full update. In this way, the execution of the creature can be fully examined.
NEXT: Configuring Avida Runs
PREV: Installing Avida
Page maintained by Charles Ofria
Send all comments to
charles@krl.caltech.edu