NAMEbugsx - display and evolve biomorphs
DESCRIPTIONbugsx runs under MIT's X11 window system. It was written under UNIX but should be easily portable. It is a program which draws the biomorphs based on parametric plots of Fourier sine and cosine series and let's you play with them using the genetic algorithm.
The original version which ran under Suntools and XViews was written by Joshua R. Smith sometime 1990. See the 'credits' section for more details.
For more information about the theoretic backgrounds of bugsx consult Joshua R. Smith's paper distributed with this program (in postscript format). It can also be gotten from: physics.www.media.mit.edu/~jrs/biomorphs.ps
COMMAND LINE PARAMETERS
bugsx accepts the following command line options:
+rv reverse video (use to override xrdb entry) +synchronous syncronous mode (use to override xrdb entry) -? help -background <arg> backgound color -batch run program in batch mode -bg <arg> same as -background -bordercolor <arg> border color -borderwidth <arg> border width -display display -extend_print show extended reproduction info while running -fg <arg> same as -forground -font <arg> font -foreground <arg> forground color (also file system bar color) -geometry <arg> geometry (will override extreme window sizes to apply reasonable settings) -help help -iconic iconic -interval <arg> interval used per turn -mb show menu border -name <arg> run bugsx under this name -nobreed do not breed when running in bactch mode -number <arg> number of biomorphs to draw (must be a square #) -printpop print the population when breeding -rv reverse video -seed <arg> use this seed for random number generator -segments <arg> use this many segments to draw an organism -showbreed show breeding subpopulation when in batch mode -showgenes show a graphic representation of the genes -synchronous synchronous mode -v verbose -xrm make no entry in resrouce database help help
bugsx can be controlled via the following resources:
background universal backgound color batch run program in batch mode batchbreed do not breed when running in bactch mode borderColor border color borderWidth border width display display extend_print show extended reproduction info while running font font foreground universal foreground color help show help mainWin.geometry main window geometry iconic start program in iconic mode interval interval used per turn minimize minimize window size menuborder draw menu borders name run bugsxunder this name number number of biomorphs to draw (must be a square #) printpop print the population when breeding reverseVideo reverse video seed use this seed for random number generator segments use this many segments to draw an organism showbreed show breeding subpopulation when in batch mode showgenes show a graphic representation of the genes synchronous syncronous mode verbose verbose mode
BRIEF USER'S GUIDEOnce you have started bugsx you will get a window containing the drawing windows and 3 menus. The Menus are:
Initialize - Initializes the gene pool Breed - Breed the selected organisms Quit - exits bugsx
Once you have chosen "Initialize" and the first set of drawings is shown, you can select the ones you wish to be included in the cross-breeding by clicking (with the left button) on a drawing window. The selected organisms will be drawn inverse.
Clicking on Breed will cross breed the selected organisms using the genetic algorithm. If you have not selected at least two organisms, a set of at least two will be randomly chosen and used for the breeding.
The following keys can be used to control bugsx:
q - quit bugsx i - initialize population b - breed