Sophie

Sophie

distrib > Mageia > 6 > armv5tl > by-pkgid > 76ea0ccf225a621cf556ebddae91ae3e > files > 24

biogenesis-0.8.1.42.1-2.mga6.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
	<title>Biogenesis</title>
	<meta name="description" content="Biogenesis is a program that simulates in
	a visual fashion the processes involved in the evolution of unicellular
	organisms at nature." />
	<meta name="author" content="Joan Queralt Molina" />
	<meta name="keywords" content="biogenesis, evolution, organism, simulation,
	microbiology, life, game" />
	<meta name="date" content="2010-03-08T" />
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	<style type="text/css" media="screen">
		@import url( style.css );
	</style>
	<script type="text/javascript">
	<!-- Begin
	var timer;
	var resume_image1 = new Image();
	resume_image1.src="images/menu_start.png";
	var resume_image2 = new Image();
	resume_image2.src="images/menu_stop.png";
	var track_image1 = new Image();
	track_image1.src="images/menu_track.png";
	var track_image2 = new Image();
	track_image2.src="images/menu_stop_tracking.png";
	var state = 0;
	
	function toogleImages() {
		if (state == 0) {
			document.getElementById("resume_image").src = resume_image2.src;
			document.getElementById("track_image").src = track_image2.src;
			state = 1;		
		}
		else {
			document.getElementById("resume_image").src = resume_image1.src;
			document.getElementById("track_image").src = track_image1.src;
			state = 0;
		}
	}
	function init() {
		timer=setInterval("toogleImages()", 5000);
	}
	function dispose() {
		clearInterval(timer);
	}
	// End -->
	</script>
</head>

<body onload="init()" onunload="dispose()">
<div id="rap">
<h1 id="header"><a href="#" title="Biogenesis">Biogenesis</a></h1>

<div id="content">

<h2>User&nbsp;Manual</h2>

<div class="post">
	<h3 class="storytitle">Index</h3>
	<div class="storycontent">
	<ul>
	<li>
		<p><span class="option"><a href="#intro">Introduction</a></span></p>
	</li>
	<li>
		<p><span class="option"><a href="#basic">Basic use</a></span></p>
		<ul>
		<li>
			<p><span class="option"><a href="#exec">Execution</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#rend">Performance</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#uninst">Uninstall</a></span></p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option"><a href="#use">Program use</a></span></p>
		<ul>
		<li>
			<p><span class="option"><a href="#oppals">Main options</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#mon">The world</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#interacting">Interacting with the world</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#estadis">Statistics window</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#estat">State panel</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#vgens">The genes viewer</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#cparam">Parameters configuration window</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#lab">The genetic laboratory</a></span></p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option"><a href="#met">Metabolism</a></span></p>
		<ul>
		<li>
			<p><span class="option"><a href="#sol">Photosynthesis</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#morg">Organic matter</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#breath">Respiration</a></span></p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option"><a href="#gens">Genetic code</a></span></p>
		<ul>
		<li>
			<p><span class="option"><a href="#segs">Segments</a></span></p>
		</li>
		<li>
			<p><span class="option"><a href="#mut">Mutations</a></span></p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option"><a href="#param">Parameters</a></span></p>
	</li>
	<li>
		<p><span class="option"><a href="#credits">Credits and license</a></span></p>
	</li>
	<li>
		<p><span class="option"><a href="#comen">Downloads, bugs and collaborations</a></span></p>
	</li>
	</ul>
	</div>
</div>

<div class="post">
	<h3 class="storytitle"><a id="intro"></a>Introduction</h3>
	<div class="storycontent">
	<p>This program imitates the evolutionary processes that happens on
	unicellular organism populations in nature. It has been tried to create an
	example of the elemental bacterial processes, simplifying them a lot and
	presenting them in a visual and comprehensible manner. Although it is not
	scientifically exact, regular mechanisms on bacterial evolution and life can
	be observed and it can be interesting as a didactic approximation to
	concepts like mutation, evolution or photosynthesis. It is also a good
	entertainment.</p>
	<p>The organisms that will populate this <a href="#mon">world</a> are not
	representations of natural unicellular organisms, but an abstraction has
	been used to be able to look more clearly at their virtual life. These
	organisms are formed by <a href="#segs">segments</a> of different colors and
	lengths. The organism's segments color and length establish its properties,
	so that we can know what can an organism do only by looking at it on
	the screen. Moreover, these segments' configuration is a representation in
	the world of its <a href="#gens">genetic code</a>, which its descendants
	will inherit in an identical form, with the exception of random
	<a href="#mut">mutations</a> that can happen in each generation.</p>
	<p>Organisms that obtain beneficial mutations will be the most successful
	ones, on the reproductive point of view, and will create a large number of
	descendants that will propagate its genes and its mutation in the future.
	However, those that suffer from a less appropriate mutation will not take a
	long time to die without being able to extend their species' lives longer
	than their own lives.</p>
	</div>
</div>

<div class="post">
	<h3 class="storytitle"><a id="basic"></a>Basic use</h3>
	<div class="storycontent">
	<h4><a id="exec"></a>Execution</h4>
	<p>In order to execute this program it is necessary to have a Java Virtual
	Machine installed in your computer. This version will only work with a 6 or
	later version, such as the official Sun machine, which can be downloaded from
	<a href="http://java.com/en/">http://java.com/en/</a>. Once the virtual
	machine is installed you only need to double click on the
	<span class="file">biogenesis.jar</span> file in order to
	execute it. It is not necessary to do any program installation. Alternatively, 
	you can right-click on the file and select <span class="option">Open with
	Java Runtime</span>, or run it from the command line with the command
	<span class="option">java -jar biogenesis.jar</span>.</p>
	<p>It is also possible to indicate a number following the file name. This
	number determines the sequence of the random numbers that will be generated.
	This way it is possible to recreate several times the same scenario if the
	same number is introduced. The call would be: <span	class="option">java -jar
	biogenesis.jar 12345</span>.</p>
	<p>See the <a href="#rend">performance</a> section to know how to improve
	program's performance for your computer.</p>
	<h4><a id="rend"></a>Performance</h4>
	<p>This program has a high CPU consumption. You need to set a few parameters
	in order to adapt it to your hardware.</p>
	<p>These are the parameters that you should configure. Remember that you
	can do this by selecting the <span class="option">Parameters</span> option
	under the <span class="option">World</span> menu.</p>
	<ul>
	<li>
		<p><span class="option">OpenGL</span>: The use of the OpenGL libraries
		greatly increases program's	speed. This option is deselected by default
		because it doesn't work on all hardware and drivers combinations. You
		should try to enable it and restart the program. If it crashes or doesn't
		work, OpenGL will be disabled next time you run it.</p>
		<ul>
		<li>
		<p><span class="option">Disable fbobject</span>: Due to a bug in some
		graphic drivers, it may be necessary to activate this option for the
		OpenGL to work. If the first time that you try to activate them they
		don't work, try to activate them with this option.</p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option">Time per frame</span>: This parameter controls
		the speed that the program will try to reach. If it is consuming a lot
		of CPU you should raise it, and if it is not and you want the process to
		execute faster, you should lower it.</p>
	</li>
	<li>
		<p><span class="option">Initial carbon dioxide</span>: The CO2 is the
		limiting factor to life expansion. More CO2 means more organisms will
		populate the world, and more CPU needed to calculate their moves and draw
		them. If you change this parameter, it may be a good idea to change the
		world size accordingly to keep the same CO2 concentration.</p>
	</li>
	</ul>
	<p>See the <a href="#param">parameters</a> section for a full explanation of
	all existing parameters.</p>
	<h4><a id="uninst"></a>Uninstall</h4>
	<p>Biogenesis stores parameters in your hard drive (in the Windows registry
	or in a hidden file in Linux). The <span class="file">uninstall.jar</span>
	file can be used to remove this information from your disk, if you don't want
	to use Biogenesis any more.</p>
	<p>This can also be used if, for some reason, hardware acceleration stops
	working and Biogenesis crashes when started (for example, if you changed
	your graphics card and the new one is not supported). Then, you only need
	to uninstall the program and it will start again without hardware
	acceleration.</p>
	</div>
</div>

<div class="post">
	<h3 class="storytitle"><a id="use"></a>Program use</h3>
	<div class="storycontent">
	<h4><a id="oppals"></a>Main options</h4>
	<p>The program is easily controlled through the menu and tool bar that appears on the top
	of the application window and through context menus. The available menu
	options and their effect are described as follows:</p>
	<ul>
	<li>
        <p><span class="option">Game</span></p>
        <ul>
        <li>
        	<p><img class="context" alt="New world" src="images/menu_new.png"
        	/><span class="option">New</span>: this button allows you to create
        	a new <a href="#mon">world</a> from the beginning. All existing
        	organisms will be eliminated and new ones created.</p>
        </li>
		<li>
			<p><img class="context" id="resume_image" alt="Resume process"
			src="images/menu_start.png" /><span class="option">Start/pause</span>:
			this button allows you
			to make a pause in any moment without loosing the progress done and
			to continue again.</p>
			<p>This option can be activated at any time by pressing the P key.</p>
		</li>
		<li>
			<p><span class="option">Open</span>: it allows you to recover a
			previously saved world. At the dialog that appears, make double
			click over the file that you want to recover.</p>
		</li>
		<li>
			<p><img class="context" alt="Save world" src="images/menu_save.png"
			/><span class="option">Save</span> and <span class="option">Save
			as</span>: they allow you to save the current world to a file, in
			order to continue with its execution later.</p>
			<p>This option can be activated at any time by pressing the S key.</p>
		</li>
		<li>
			<p><span class="option">Quit</span>: it quits the program
			immediately and all unsaved changes of the world are discarded.</p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option">World</span></p>
		<ul>
		<li>
			<p><span class="option">Statistics</span>: when it is pressed, the
			<a href="#estadis">statistics window</a> will be shown. Through it
			you can obtain general information about the world, like the time it
			has been active or the population that it has.</p>
		</li>
		<li>
			<p><span class="option">Genetic Laboratory</span>: it shows the
			<a href="#lab">genetic laboratory window</a>. Through it you can
			create new beings with a new or modified genetic code.</p>
		</li>
		<li>
			<p><img class="context" alt="Increase CO2"
			src="images/menu_increase_co2.png" /><span class="option">Increase
			CO2</span>: it adds 500 units of
			CO2 to the atmosphere.</p>
		</li>
		<li>
			<p><img class="context" alt="Decrease CO2"
			src="images/menu_decrease_co2.png" /><span class="option">Decrease
			CO2</span>: it reduces 500 units
			to the CO2 in the atmosphere, if there isn't less.</p>
		</li>
		<li>
			<p><span class="option">Kill all</span>: it kills all alive organisms.</p>
		</li>
		<li>
			<p><span class="option">Disperse all</span>: it recovers the carbon
			dioxide inside all dead bodies and returns it to the atmosphere.</p>
		</li>
		<li>
			<p><span class="option">Parameters</span>: it shows the
			<a href="#cparam">parameters configuration window</a>. Through it
			you can change different values that affect at the world
			development. In the <a href="#param">parameters</a> section the
			meaning of each of these numbers is explained.</p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option">Network</span></p>
		<p>Starting from version 0.5, it is possible to connect different ecosystems
		together over a network. In order to do this, an spare open port is needed
		and you need to know the IP address of the computer that you want to connect to.</p>
		<ul>
		<li>
			<p><span class="option">Configure network</span>:</p>
			<p>This option shows a dialog that can be used to configure the
			network settings.</p>
			<p>Activate <span class="option">Allow connections from other
			users</span> if you want to let in connection requests from other
			Biogenesis users.</p>
			<p>Set the <span class="option">maximum number of allowed
			connections</span> and the <span class="option">local port to
			receive connections</span>. Remember that this port must be open.</p>
		</li>
		<li>
			<p><img class="context" alt="Manage connections"
			src="images/menu_manage_connections.png" /><span
			class="option">Manage connections</span>:</p>
			<p>Use this dialog when you want to set a new connection to another
			Biogenesis instance or when you want to close an existing connection.</p>
			<p>Write the IP address and port to the other program instance and
			click <span class="option">New connection</span> to start a connection.</p>
			<p>The other program must have its <span class="option">Allow
			connections from other users</span> option activated in order to
			stablish the connection.</p>
			<p>A pair of rectangles will appear at random positions in the world,
			one red and one blue. Organisms entering the blue rectangle will fall
			into the other connection side. Organisms coming from the
			other instance will appear inside the red rectangle.</p>
			<p>If at any moment the connection is closed or is lost, the rectangles
			will disappear.</p>
			<p>If you want to close an existing connection click on the corresponding
			<span class="option">Disconnect</span> button next to the connection
			information.</p>
			<p>Only genetic codes travel through the network. The amount of O2
			and CO2 remains constant in your world.</p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option">Help</span></p>
		<ul>
		<li>
			<p><span class="option">User Manual</span>: it opens the web
			navigator and connects to Biogenesis web page, at the user manual
			section.</p>
		</li>
		<li>
			<p><span class="option">Check last version</span>: it connects to the
			Biogenesis web to check the last released version and shows it
			together with the version you are using.</p>
		</li>
		<li>
			<p><span class="option">About Biogenesis</span>: it shows the
			program version number.</p>
		</li>
		</ul>
	</li>
	</ul>
	<h4><a id="mon"></a>The world</h4>
	<p>The main window central part is the place that represents the world,
	where organisms are born, reproduce and die. World process is autonomous
	but the user can participate in what is going on by using the contextual
	menus that are called clicking the mouse right button over any world
	element. Moreover, he can examine with more detail any of the organisms,
	simply by clicking over it. In this case, the selected organism's
	<a href="#estat">state window</a> will appear, and it will be marked with a
	surrounding orange rectangle.</p>
	<p>The world can be much larger than the application window. The lateral
	bars allow you to move through the whole world.</p>
	<p>The world is considered fluid, so organisms can move around using their
	cyan <a href="#segs">segments</a>, which work as cilia. A rubbing
	coefficient, which is applied on organisms speed in every frame, makes sure
	that they will stop.</p>
	<p>At the bottom of this window, basic statistics about the state of the world
	are shown: the time elapsed since it began, the current population and the
	amount of oxygen and carbon dioxide. You can obtain more information about
	these values at the <a href="#estadis">statistics</a> window section.</p>
	<h4><a id="interacting"></a>Interacting with the world</h4>
	<p>It is possible to do a lot of actions over the game's world directly and
	to change what is happening. All of these actions can be done by right
	clicking over the world elements: living organisms, dead organisms or empty
	space. In each of these cases, a set of different options will be shown:</p>
	<ul>
	<li>
		<p class="option">Actions over living beings:</p>
		<ul>
		<li>
			<p><img class="context" id="track_image" alt="Track organism"
			src="images/menu_track.png"	/><span class="option">Track/Abort
			tracking</span>: it causes that
			the application window centers on the selected organism and follows
			it. To stop following it a being you can select the
			<span class="option">Abort tracking</span> option or follow another
			one. When a being dies it is not tracked anymore.</p>
		</li>
		<li>
			<p><img class="context" alt="Feed organism" src="images/menu_feed.png"
			/><span class="option">Feed</span>: it give 10 additional energy
			points to this being. An equivalent amount of carbon is consumed
			from atmosphere.</p>
		</li>
		<li>
			<p><img class="context" alt="Weaken organism" src="images/menu_weaken.png"
			/><span class="option">Weaken</span>: 10 energy points are
			subtracted from this being and the same amount of carbon are freed
			to the atmosphere, in form of carbonate dioxide.</p>
		</li>
		<li>
			<p><span class="option">Force reproduction</span>: it forces the
			organism reproduction, even if it hasn't enough energy to do it.</p>
		</li>
		<li>
			<p><span class="option">Rejuvenate</span>: the age counter of this
			being is reseted to 0, as it has just been created.</p>
		</li>
		<li>
			<p><img class="context" alt="Kill organism" src="images/menu_kill.png"
			/><span class="option">Kill</span>: it kills the organism
			immediately, leaving its lifeless corpse in the world.</p>
		</li>
		<li>
			<p><img class="context" alt="Copy genetic code" src="images/menu_copy.png"
			/><span class="option">Copy</span>: it save a copy of an organism's
			genetic code that can be cloned later with the paste option in a
			world empty space.</p>
		</li>
		<li>
			<p><span class="option">Export</span>: it allows you to save an
			organism's genetic code to a file. This file can be recovered later
			with the import option in an empty&nbsp;space. File format follows
			the XML standard and can be modified using any text editor.</p>
		</li>
		<li>
			<p><img class="context" alt="Save an image" src="images/menu_save_image.png"
			/><span class="option">Save an image</span>: it allows you to save
			an image of the being in JPG format.</p>
		</li>
		</ul>
	</li>
	<li>
		<p class="option">Actions over dead beings:</p>
		<ul>
		<li>
			<p><img class="context" alt="Revive organism" src="images/menu_revive.png"
			/><span class="option">Revive</span>: it takes the being back to
			live, with the remaining energy that the corpse has at that
			moment.</p>
		</li>
		<li>
			<p><img class="context" alt="Disperse organism" src="images/menu_disperse.png"
			/><span class="option">Disperse</span>: it returns all the carbon
			to the atmosphere immediately. The corpse disappears.</p>
		</li>
		</ul>
	</li>
	<li>
		<p class="option">Actions over empty space:</p>
		<ul>
		<li>
			<p><span class="option">Paste</span>: it creates a new being having
			the genetic code that has been previously selected with the
			<span class="option">copy</span> option.</p>
		</li>
		<li>
			<p><span class="option">Create randomly</span>: it generates a new
			being having a randomly created genetic code.</p>
		</li>
		<li>
			<p><span class="option">Import</span>: it creates a new being having
			a genetic code restored from a file that has been saved before with
			the <span class="option">export</span> option.</p>
		</li>
		</ul>
	</li>
	</ul>
	<h4><a id="estadis"></a>Statistics window</h4>
	<p>The statistics window shows general information about the process that is
	being executed. This window can be seen through the statistics button on the
	<a href="#oppals">main window</a> and contains the following information:</p>
	<ul>
	<li>
		<p><span class="option">Current state</span>: this section shows
		information about the current state of the world.</p>
		<ul>
		<li>
			<p><span class="option">Time</span>: it is the time spent since the
			first organisms began to populate the world. As no all computer can
			execute the program at the same speed, this time is not represented in
			hours and minutes but in a unit that allows you to compare the time in
			different worlds and in different computers. This time unit is
			equivalent to 256 frames.</p>	
		</li>
		<li>
			<p><span class="option">Population</span>: it is the number of
			living organisms at that moment.</p>
		</li>
		<li>
			<p><span class="option">Remains of beings</span>: it is the number of
			dead (brown) organisms at that moment. Some organisms can feed
			from these bodies organic matter.</p>
		</li>
		<li>
			<p><span class="option">Oxygen</span>: it is the amount of this
			substance that is dispersed in the atmosphere. Oxygen is produced as a
			derivative product of the <a href="#sol">photosynthesis</a> of the
			organisms that posses green <a href="#segs">segments</a> and it is used
			by all organisms in the respiration process.</p>		
		</li>
		<li>
			<p><span class="option">Carbon dioxide</span>: it is the amount of this
			substance that is dispersed in the atmosphere. The carbon dioxide is the
			main source of carbon for the organisms and it is a key factor in every
			<a href="#met">metabolism</a>. It's produced as a result of
			<a href="#breath">respiration</a> and it is consumed in the
			<a href="#sol">photosynthesis</a>.</p>		
		</li>
		<li>
			<p><span class="option">Color proportion</span>: it is a graphical
			representation of the proportion of colors present in alive organisms
			segments.</p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option">Remarkable organisms</span>: this section shows
		the organisms that have achieved a current world record, either by
		being the one that have the most children, the one that have killed more
		organisms or the one that have infected more organisms.</p>
	</li>
	<li>
		<p><span class="option">Population</span>: this section shows demography
		information.</p>
		<ul>
		<li>
			<p><span class="option">Population graph</span>: the graph shows the
			population and the number of births and deaths occurred in the last 100
			time units.</p>
		</li>
		<li>
			<p><span class="option">Average population</span>: the average population
			in the world.</p>
		</li>
		<li>
			<p><span class="option">Average birth rate</span>: the average births
			per unit of time.</p>
		</li>
		<li>
			<p><span class="option">Average mortality rate</span>: the average deaths
			per unit of time.</p>
		</li>
		<li>
			<p><span class="option">Average infections rate</span>: the average
			infections per unit of time.</p>
		</li>
		<li>
			<p><span class="option">Generated organisms</span>: the total number
			of organisms created since life began in that world.</p>
		</li>
		<li>
			<p><span class="option">Maximum population</span>: shows the maximum
			population reached and the time when it was reached.</p>
		</li>
		<li>
			<p><span class="option">Minimum population</span>: shows the minimum
			population reached and the time when it was reached.</p>
		</li>
		<li>
			<p><span class="option">Mass extintions</span>: the number of
			massive extintions occurred since the world began. It is considered
			that a mass extintion occurs when the number of deaths per unit of
			time is greater than the average deaths number during a period of
			time.</p>
		</li>
		</ul>
	</li>
	<li>
		<p><span class="option">Atmosphere</span>: this section shows information
		on the atmosphere composition.</p>
		<ul>
		<li>
			<p><span class="option">Atmosphere graph</span>: this graph shows the
			amount of oxygen and carbon dioxide present at the atmposhere in the
			last 100 units of time.</p>
		</li>
		<li>
			<p><span class="option">Maximum carbon dioxide</span>: the maximum
			amount of carbon dioxide reached and the time when it was reached.</p>
		</li>
		<li>
			<p><span class="option">Minimum carbon dioxide</span>: the minimum
			amount of carbon dioxide reached and the time when it was reached.</p>
		</li>
		<li>
			<p><span class="option">Maximum oxygen</span>: the maximum amount of
			oxygen reached and the time when it was reached.</p>
		</li>
		<li>
			<p><span class="option">Minimum oxygen</span>: the minimum amount of
			oxygen reached and the time when it was reached.</p>
		</li>
		</ul>
	</li>
	</ul>
	<h4><a id="estat"></a>State panel</h4>
	<p>The state panel shows information about the organism that has been
	selected using the mouse and that is shown at the <a href="#mon">world</a>
	surrounded by an orange rectangle. The following information is
	displayed:</p>
	<ul>
	<li>
		<p><span class="option">ID</span>: it is a number that identifies the
		organism in a unique form in the world.</p>
	</li>
	<li>
		<p><span class="option">Generation</span>: it is the number of
		generations that have exist in its evolutionary line since the world
		began, counting its own.</p>
	</li>
	<li>
		<p><span class="option">Age</span>: it is the time that has gone by
		since the organism is in the world and it's measured in the same manner
		than the <a href="#estadis">world time</a>. Organisms have a maximum
		life time, after which they die.</p>
	</li>
	<li>
		<p><span class="option">Energy</span>: it is the amount of
		<a href="#met">energy</a> the organism has. Energy can be obtained from
		different sources, depending on the color of organism segments, and it
		is consumed in order to maintain the organism alive and when they
		reproduce. Each <a href="#segs">segment</a> has a constant energy
		consume that only depends on its length.</p>
	</li>
	<li>
		<p><span class="option">Children</span>: it is the number of direct
		descendants that this organism has produced, independently of them
		staying alive or not. The number of children that an organism can
		produce before its death is a simple measurement of its biological
		success.</p>
	</li>
	<li>
		<p><span class="option">Victims</span>: it is the number of organisms
		killed by this organism.</p>
	</li>
	<li>
		<p><span class="option">Infected</span>: it is the number of organisms
		infected with this organism's genetic code.</p>
	</li>
	<li>
		<p><span class="option">Mass</span>: it is the total mass of the organism.</p>
	</li>
	<li>
		<p><span class="option">Reproduction</span>: the energy that this
		organism needs in order to reproduce.</p>
	</li>
	</ul>
	<p>The <span class="option">examine genes</span> button that appears next to
	this information allow you to open the <a href="#lab">genetic labortory</a> where
	you can examine in detail the <a href="#gens">genetic code</a> of the selected organism,
	or make modified version of it.</p>
	<h4><a id="cparam"></a>Parameters configuration window</h4>
	<p>In this window all <a href="#param">parameters</a> that
	affect the application's execution can be modified. The
	<span class="option">OK</span> button saves the preferences, which will be
	used from now on every time that the same user runs the program. The
	<span class="option">Cancel</span> button cancels all changes you have made.
	The <span class="option">Default values</span> button allows you to assign
	the original values that have been assigned to this program's version.</p>
	<p>As there are important changes in this version of the program, parameters
	assigned to old program versions will not be kept.</p>
	<p>All changes, except world size, have immediately effect. However, world
	size will only be applied when creating a new world.</p>
	<p>Any parameter that is assigned an invalid value will keep the value it
	had until then.</p>
	<h4><a id="lab"></a>The genetic laboratory</h4>
	<p>From the genetic laboratory it's possible to change the <a
	href="#gens">genetic code</a> of organisms or to create new ones.
	When it opens, the window shows the last genetic code that was copied to the
	clipboard, or a void genetic code if none had been copied.</p>
	<p>The following information is shown in this window:</p>
	<ul>
	<li>
		<p><span class="option">Symmetry</span>: it indicates how many times the
		segment pattern will be repeated. An organism with symmetry 4, will have
		all of his segments repeated 4 times and distributed in a symmetrical
		way around a central point. The following organisms has a very similar
		genetic code, but the first one presents a symmetry of 4 while the last
		has an 8 one. As a consequence, the first organism has half of the
		segments than the last.</p>
	</li>
	</ul>
	<table class="manual-table">
	<tbody>
	<tr>
		<td style="width: 49%;"><p><img style="width: 51px; height: 52px;"
		alt="Organism with symmetry 4" src="images/sim4.png"/></p></td>
		<td><p><img style="width: 51px; height: 51px;"
		alt="Organism with symmetry 8" src="images/sim8.png"/></p></td>
	</tr>
	<tr>
		<td><p>Symmetry 4</p></td>
		<td><p>Symmetry 8</p></td>
	</tr>
	</tbody>
	</table>
	<ul>
	<li>
		<p><span class="option">Mirror</span>: it indicates if the organism has
		symmetry respect a straight that crosses the center or not. Two
		organisms that have exactly the same genetic code, except that the first
		has mirror and the second not, are shown as follows:</p>
	</li>
	</ul>
	<table class="manual-table">
	<tbody>
	<tr>
		<td style="width: 49%;"><p><img style="width: 50px; height: 51px;"
		alt="Organism with mirror" src="images/mirror.png"/></p></td>
		<td><p><img style="width: 53px; height: 51px;"
		alt="Organism without mirror" src="images/no_mirror.png"/></p></td>
	</tr>
	<tr>
		<td><p>With mirror</p></td>
		<td><p>Without mirror</p></td>
	</tr>
	</tbody>
	</table>
	<ul>
	<li>
		<p><span class="option">Disperse children</span>: it indicates if
		descendants will be provided with a different speed and direction than
		this organism, in order to spread them out the surroundings, or if they
		will have the same speed and direction, keeping them together.</p>
	</li>
	<li>
		<p><span class="option">Energy to reproduce</span>: it is the
		<a href="#met">energy</a> needed by this organism to reproduce. An
		organism needs 40 energy points plus 3 points per gene in its genetic
		code: more complex organism needs more energy to reproduce than simpler
		ones.</p>
	</li>
	<li>
		<p><span class="option">Life expectancy</span>: it is the time that
		takes to the organism to naturally die. When the organism exceed this
		age, it dies and its corpse stays in the world, slowly dispersing on the
		environment. All organisms have the same life expectancy.</p>
	</li>
	</ul>
	<p>Next, a list of all organism's
	<a href="#segs">segments</a> are shown. For each segment,
	its coordinates, which indicate direction and length, and color are shown.</p>
	<p>Using the different controls that appear, you can change code's
	characteristics (symmetry, mirror and children dispersion) and, with the
	buttons in the central section, you can add, delete or modify the different
	segments that conform the genetic code</p>
	<p>To the right part of the window, an organism with the genetic code you are
	editing is always shown.</p>
	<p>To the bottom, the <span class="option">Copy to clipboard</span> button
	allows you to save the genetic code created. You can create new being with
	this genetic code by selection the <span class="option">Paste</span> option
	at the world window.</p>
	<p>The <span class="option">Cancel</span> button closes the laboratory
	without saving the changes that you might have done, and the
	<span class="option">Clean</span> button removes all segments and allows you
	to create a new genetic code from the beginning.</p>
	<p>The <span class="option">Import</span> button let you load an organism
	from a previously created file into the laboratory, in order to edit it or
	copy it to the clipboard.</p>
	</div>
</div>

<div class="post">
	<h3 class="storytitle"><a id="met"></a>Metabolism</h3>
	<div class="storycontent">
	<p>Metabolism is the set of chemical processes that an organism does and has
	as its main objective to obtain energy from available matters in the
	environment.</p>
	<p>All organisms need energy to subsist and reproduce. Energy can be
	obtained from the Sun when carrying out <a href="#sol">photosynthesis</a> or
	through <a href="#morg">organic matter</a> processing. In order to store
	energy that is not needed immediately, organism synthesize sugars, for which
	they need carbon. Carbon can be obtained by decomposition of the carbon
	dioxide spread in the atmosphere or by the processing of organic matter.
	Energy stored this way is called chemical energy, and to consume it, sugars
	must be decomposed again. In the process called respiration, environmental
	oxygen is absorbed and it is used to make sugars react and decompose them,
	obtaining effective energy and releasing the resulting carbon dioxide back
	to the atmosphere.</p>
	<p>Even though there are many different metabolisms in nature, in this
	program's version there are only two:</p>
	<ul>
	<li>
		<p><span class="option">Photosynthetic metabolism</span>: it is done by
		those organisms that have green segments. They obtain energy from the
		Sun (photosynthetic), the carbon from the atmosphere (autotroph) and the
		reducing power from inorganic compounds (lithotroph).</p>
	</li>
	<li>
		<p><span class="option">Chemoorganotrophic metabolism</span>: it is done
		by those organisms that have red segments. They obtain energy, carbon
		and reducing power from organic matter previously synthesized by other
		organisms.</p>
	</li>
	</ul>
	<p>Energy is necessary for different reasons:</p>
	<ul>
	<li>
		<p>Each <a href="#segs">segment</a> has a constant energy consumption
		that depends only on its length.</p>
	</li>
	<li>
		<p>Energy can be lost by entering in contact with specific segments of
		other organisms.</p>
	</li>
	<li>
		<p>The energy that an organism has at the moment of reproduction is
		shared between it and its descendants.</p>
	</li>
	</ul>
	<p>Organisms death can happen due to different circumstances:</p>
	<ul>
	<li>
		<p>The organism cannot carry out respiration process, either because it
		has not enough chemical energy stored, either because there is not
		enough oxygen in the environment.</p>
	</li>
	<li>
		<p>The organism has exceeded its life expectancy. Organism's metabolism
		fails and it dies.</p>
	</li>
	<li>
		<p>The organism gets in touch with substances that are harmful to it, as
		other organism's red or gray segments.</p>
	</li>
	</ul>
	<p>When an organism dies but still has energy, its body stays in the world
	and it is shown in brown. Other organisms can absorb its energy before the
	corpse slowly dissolves with the environment.</p>
	<p>An organism can only accumulate the double of the energy that needs to
	procreate, and this can only happen if its reproduction attempts have failed
	because there is not enough space around it. If an organism has space to
	reproduce and enough energy, it always will do it.</p>
	<p>Organisms reproduction is always asexual, so the descendants of an
	organism will have exactly the same <a href="#gens">genetic code</a>, with
	the exception of <a href="#mut">mutations</a> that may happen.</p>
	<h4><a id="sol"></a>Photosynthesis</h4>
	<p>Solar energy is absorbed in a process called photosynthesis that requires
	the presence of carbon dioxide in the environment. Carbon dioxide is
	transformed with the help of solar energy in more complex chemical compounds
	that store this energy in a chemical way. As a photosynthesis by-product
	oxygen is released to the environment. When stored chemical energy is
	necessary, previous chemical compounds are decomposed again, which frees the
	energy that was remained stored. Solar energy is the first origin of all
	organisms energy. The amount of carbon dioxide present in the atmosphere is
	the limiting factor to the organisms number growth.</p>
	<p>Green <a href="#segs">segments</a> are the ones that give the skill of
	carrying out photosynthesis to an organism. The amount of energy that it can
	obtain is proportional to the length of the photosynthetic segments.</p>
	<h4><a id="morg"></a>Organic matter</h4>
	<p>Energy obtained through organic matter is elevated, but can only be
	obtained when contact with other beings happens. Instead of obtaining needed
	carbon for living from atmosphere, beings that live on organic matter absorb
	the carbon that other organisms have by contacting them. Carbon can be taken
	from either living or dead organisms, although in general dead ones are
	better victims because they can neither defend nor flee.</p>
	<p>Organic matter processing never generates more energy than existed
	before, but only causes an energy transfer from the predated organism to the
	predator. Moreover, organic matter processing has not absolute
	effectiveness: a part of the extracted energy is not directly transformed
	into energy for the predator, but it is liberated in carbon dioxide form to
	the atmosphere again.</p>
	<p>Red <a href="#segs">segments</a> can absorb energy from other beings and
	they always do it in a way proportional to their lengths; blue segments are
	invulnerable to red segments effects.</p>
	<h4><a id="breath"></a>Respiration</h4>
	<p>Organisms carry out the respiration process in order to convert stored
	chemical energy to the effective energy they need at every moment. Through
	respiration environment oxygen is consumed and carbon dioxide released. This
	process has to be done continuously by them to keep alive; if it cannot be
	done, either because lacking of chemical energy, either because lacking of
	oxygen, the organism dies.</p>
	</div>
</div>

<div class="post">
	<h3 class="storytitle"><a id="gens"></a>Genetic code</h3>
	<div class="storycontent">
	<p>You can see an explanation of the genetic code operation at the section
	<a href="#lab">the genetic laboratory</a>.</p>
	<h4><a id="segs"></a>Segments</h4>
	<p>Every organism has a number of segments that varies from 4 to 64. The
	color and effect of segments are the following:</p>
	<ul>
	<li>
		<p><span class="option" style="color: rgb(0, 255, 0);">Green</span>:
		they obtain energy from the <a href="#sol">Sun</a> and the carbon
		dioxide and release oxygen. The quantity of energy obtained depends on
		the amount of carbon dioxide present at the environment and on the
		segment's length. The oxygen amount released is the same as the carbon
		dioxide absorbed.</p>
	</li>
	<li>
		<p><span class="option" style="color: rgb(255, 0, 0);">Red</span>: they
		obtain energy from <a href="#morg">organic matter</a>. They steel energy
		from other organisms when they touch each other. A part of absorbed
		energy is released in the form of carbon dioxide. Red segments are
		effective against any other segment with the exception of the blue ones.
		The amount of energy absorbed is proportional to the segment size. When
		a red segment gets activated, the organism will be momentarily shown in
		red and its victim in yellow.</p>
	</li>
	<li>
		<p><span class="option" style="color: rgb(0, 0, 255);">Blue</span>: they
		are invulnerable to the effects of red, white and gray segments. When a
		blue segment gets activated, the organism will be momentarily shown in
		blue.</p>
	</li>
	<li>
		<p><span class="option" style="color: rgb(0, 255, 255);">Cyan</span>:
		they allow the organism to move through the surroundings. They get
		randomly activated and impel the being in the direction the segments
		points to with a speed proportional to its length. The environment has a
		rubbing coefficient that reduces the being speed progressively.</p>
	</li>
	<li>
		<p><span class="option" style="color: rgb(255, 255, 255);">White</span>:
		they infect the organisms they contact. The infected organism first
		descendant will be a member of the species that have infected it instead
		of its own. Genes' injection into another organism has an energetic cost
		and the infection will only happen if the infecting organism has at
		least this energy. An organism can only be infected once, so if the same
		organism is infected by two different organisms, only the last one will
		take effect. Moreover, if an organism infects another one two
		consecutive times, the second one has no effect and the needed energy
		for the infection is not spent. White segments are effective against any
		other segment with the exception of blue ones. When a white segment is
		activated, the organism will be momentarily shown in white and its
		victim in yellow.</p>
	</li>
	<li>
		<p><span class="option" style="color: rgb(128, 128, 128);">Gray</span>:
		they are harmful. When they touch another organism, it dies. When a gray
		segment gets activated the organism will be momentarily shown in
		gray.</p>
	</li>
	<li>
		<p><span class="option" style="color: rgb(255, 255, 0);">Yellow</span>:
		they increase fertility. Organisms produce a descendant every time that
		reproduce. For each yellow segment that they have, they produce one more
		descendant, at a maximum of 8. The number of descendants produced is
		always limited by the available space surrounding the reproducing
		being.</p>
	</li>
	</ul>
	<h4><a id="mut"></a>Mutations</h4>
	<p>There is a fixed percentage of a mutation happening for each of the
	<a href="#vgens">genes</a> every time that an organism produce a descendant.
	Its default value is 5%.</p>
	<p>When a new organism is created a random number is generated for each gene
	and the ones that are mutated are randomly created again. It is also
	possible for the total amount of <a href="#segs">segments</a> of the
	individual to be raised or lowered.</p>
	</div>
</div>

<div class="post">
	<h3 class="storytitle"><a id="param"></a>Parameters</h3>
	<div class="storycontent">
	<p>There are a few parameters that define different aspects of the program's
	operation and that you can modify at your own taste. All of these parameters
	can be modified at the <a href="#cparam">parameters configuration window</a>,
	where you can get through the <span class="option">Parameters</span> option
	of the world menu.</p>
	<p>The aspects that can be modified are:</p>
	<table class="param-table">
	<tbody>
	<tr style="font-weight: bold;">
	<td><p>Name</p></td>
	<td><p>Description</p></td>
	<td><p>Permitted values</p></td>
	<td><p>Default value</p></td>
	</tr>
	<tr>
	<td colspan="4"><p class="option">General</p></td>
	</tr>
	<tr>
	<td><p>Language</p></td>
	<td><p>The language used on all application messages.</p></td>
	<td><p>English, Spanish and Catalan</p></td>
	<td><p>System default</p></td>
	</tr>
	<tr>
	<td><p>Time per frame</p></td>
	<td><p>Number of milliseconds that pass between two frames. This quantity is
	basic to adjust the program's performance to your computer.</p></td>
	<td><p>From 1</p></td>
	<td><p>50</p></td>
	</tr>
	<tr>
	<td><p>Hardware acceleration</p></td>
	<td><p>If OpenGL should be used to accelerate graphic drawing or not.</p></td>
	<td><p>OpenGL or none</p></td>
	<td><p>None</p></td>
	</tr>
	<tr>
	<td colspan="4"><p class="option">World</p></td>
	</tr>
	<tr>
	<td><p>Width</p></td>
	<td><p>World's width in pixels.</p></td>
	<td><p>From 1</p></td>
	<td><p>1000</p></td>
	</tr>
	<tr>
	<td><p>Height</p></td>
	<td><p>World's height in pixels.</p></td>
	<td><p>From 1</p></td>
	<td><p>1000</p></td>
	</tr>
	<tr>
	<td><p>Initial oxygen</p></td>
	<td><p>Amount of oxygen that there is in the atmosphere of a new world.</p></td>
	<td><p>From 0</p></td>
	<td><p>0</p></td>
	</tr>
	<tr>
	<td><p>Initial carbon dioxide</p></td>
	<td><p>Amount of carbon dioxide that there is in the atmosphere of a new world.</p></td>
	<td><p>From 0</p></td>
	<td><p>5000</p></td>
	</tr>
	<tr>
	<td><p>Rubbing coefficient</p></td>
	<td><p>It determines the amount of movement that is kept at every frame. If
	it equals 1, organisms never stop. If it equals 0, movement is not kept
	between two frames.</p></td>
	<td><p>Between 0 and 1</p></td>
	<td><p>0,98</p></td>
	</tr>
	<tr>
	<td><p>Elasticity coefficient</p></td>
	<td><p>It determines the amount of movement that is kept after a collision.
	If it equals 1, no energy is lost when a collision happens. If it equals 0
	organisms stop after a collision.</p></td>
	<td><p>Between 0 and 1</p></td>
	<td><p>0,8</p></td>
	</tr>
	<tr>
	<td colspan="4"><p class="option">Organisms</p></td>
	</tr>
	<tr>
	<td><p>Initial number</p></td>
	<td><p>Number of organisms that are created in a new world.</p></td>
	<td><p>From 1</p></td>
	<td><p>15</p></td>
	</tr>
	<tr>
	<td><p>Initial energy</p></td>
	<td><p>Energy points that have organisms created at the beginning of the world.</p></td>
	<td><p>From 1</p></td>
	<td><p>50</p></td>
	</tr>
	<tr>
	<td><p>Life expectancy</p></td>
	<td><p>Maximum time of life for an organism.</p></td>
	<td><p>From 1</p></td>
	<td><p>30</p></td>
	</tr>
	<tr>
	<td><p>Mutation coefficient</p></td>
	<td><p>Probability that a mutation happens when a descendant is created, for
	each of its characteristics.</p></td>
	<td><p>Between 0 and 1</p></td>
	<td><p>0.05 (5%)</p></td>
	</tr>
	<tr>
	<td><p>Segment upkeep cost divisor</p></td>
	<td><p>Number that divides segment lengths to establish the amount of energy
	that is consumed per frame.</p></td>
	<td><p>From 1</p></td>
	<td><p>5000</p></td>
	</tr>
	<tr>
	<td><p>Substances drainage divisor</p></td>
	<td><p>Number that divides the amount of carbon dioxide present in the
	environment to establish how much can drain organisms in a single frame.</p></td>
	<td><p>From 1</p></td>
	<td><p>5000</p></td>
	</tr>
	<tr>
	<td><p>Energy lost by dead organisms</p></td>
	<td><p>It is the amount of energy that a dead organism lost in every frame.
	This energy fall off the body and move to the atmosphere in the form of
	CO2.</p></td>
	<td><p>From 0</p></td>
	<td><p>0.1</p></td>
	</tr>
	<tr>
	<td colspan="4"><p class="option">Photosynthetic metabolism</p></td>
	</tr>
	<tr>
	<td><p>Obtained energy divisor</p></td>
	<td><p>Green segments length is divided by this number to establish the
	amount of solar energy that can be obtained in a single frame.</p></td>
	<td><p>From 1</p></td>
	<td><p>500</p></td>
	</tr>
	<tr>
	<td colspan="4"><p class="option">Chemoorganotrophic metabolism</p></td>
	</tr>
	<tr>
	<td><p>Obtained energy</p></td>
	<td><p>Red segments length is multiplied by this number to establish the
	amount of energy that is stolen to another organism when it is touched.</p></td>
	<td><p>From 0</p></td>
	<td><p>0,5</p></td>
	</tr>
	<tr>
	<td><p>Released energy proportion</p></td>
	<td><p>Proportion of obtained organic energy that is released in carbon
	dioxide form instead of going directly to the organism's energy.</p></td>
	<td><p>Between 0 and 1</p></td>
	<td><p>0,1</p></td>
	</tr>
	<tr>
	<td colspan="4"><p class="option">Genes</p></td>
	</tr>
	<tr>
	<td><p>Probability</p></td>
	<td><p>For each segment color, which is the probability that this color appears
	when a mutation occurs or when a new random being is created. Probabilities
	are calculated out of the sum of all color probabilities (for example,
	if the sum of all probabilities is 100 then the probability of each segment
	is given in a percentage.).</p></td>
	<td><p>From 0</p></td>
	<td><p>30% for green, 20% for cyan i 10% for the rest.</p></td>
	</tr>
	<tr>
	<td><p>Cost</p></td>
	<td><p>For each segment color, the energy cost that implies to use a segment
	of this color. Note that green segments are used at every frame and cyan ones
	are also used very often, so a little cost in these segments harms organisms
	that have some of them a lot.</p></td>
	<td><p>From 0</p></td>
	<td><p>1 for white and gray segments and 0 for the rest</p></td>
	</tr>
	</tbody>
	</table>
	</div>
</div>

<div class="post">
	<h3 class="storytitle"><a id="credits"></a>Credits and license</h3>
	<div class="storycontent">
	<p>This program is free software and it is distributed under the terms of
	the <span class="option">GNU General Public License</span>. Take a look to
	<span class="option">copyright</span> and <span class="option">gpl.txt</span>
	files for further information.</p>
	<p>I want to thank the people who has contributed to this project, such as
	<span class="option">&Aacute;lvaro Esteban</span> and <span
	class="option">Iv&aacute;n Garc&iacute;a</span> for involving in the
	development and testing of Biogenesis,
	<span class="option">Eva Rebollo</span> for her advice in biology themes,
	<span class="option">Ananda Daydream</span> and <span class="option"><a
	href="http://toolbaricons.sourceforge.net/">Florian Haag</a></span> for
	their artwork and to <span class="option">Laura	Feliu</span> for her
	revision of some English translations.</p>
	<p>This program is based on <span class="option">Jason
	Spofford</span>'s <span class="option"><a
	href="http://www.io.com/%7Espofford/">Primordial Life</a></span>. I
	would like to thank him specially for giving me permission to study the
	source code of his program.</p>
	</div>
</div>

<div class="post">
	<h3 class="storytitle"><a id="comen"></a>Downloads, bugs and collaborations</h3>
	<div class="storycontent">
	<p>Biogenesis executable and source code can be downloaded from <a
	href="http://biogenesis.sourceforge.net">http://biogenesis.sourceforge.net</a>.
	Please, report any bug you find at the Biogenesis <a
	href="http://biogenesis.sourceforge.net/forum/">forums</a>, or send an
	email to <strong>joanq</strong> at <strong>users.sourceforge.net</strong>.</p>
	</div>
</div>

</div>
</div>
<p class="credit">Copyright &copy; 2006-2010 Joan Queralt Molina</p>
</body>
</html>