[avida-cvs] avida CVS commits: /current/source/cpu head.cc /current/source/main phenotype.cc
mercere99
avida-cvs at alife.org
Mon Jun 9 03:36:10 PDT 2003
mercere99 Sun Jun 8 19:36:10 2003 EDT
Modified files:
/avida/current/source/cpu head.cc
/avida/current/source/main phenotype.cc
Log:
Fixed double declarations of default values in head.cc
Allow merits to go to zero in phenotype.cc
Index: avida/current/source/cpu/head.cc
diff -u avida/current/source/cpu/head.cc:1.21 avida/current/source/cpu/head.cc:1.22
--- avida/current/source/cpu/head.cc:1.21 Thu Jun 5 13:14:40 2003
+++ avida/current/source/cpu/head.cc Sun Jun 8 19:36:08 2003
@@ -473,7 +473,7 @@
c4StackHead::c4StackHead() : cCPUHead() { mem_space=0; }
-c4StackHead::c4StackHead(cHardwareBase * in_hardware, int in_pos = 0, int in_mem_space = 0)
+c4StackHead::c4StackHead(cHardwareBase * in_hardware, int in_pos, int in_mem_space)
: cCPUHead(in_hardware, in_pos) { mem_space = in_mem_space; }
c4StackHead::c4StackHead(const c4StackHead & in_head) : cCPUHead(in_head)
@@ -516,7 +516,7 @@
mem_space = 0;
}
-void c4StackHead::Set(int new_pos, cHardwareBase * in_hardware = NULL, int in_mem_space)
+void c4StackHead::Set(int new_pos, cHardwareBase * in_hardware, int in_mem_space)
{
position = new_pos;
if (in_hardware) cur_hardware = in_hardware;
Index: avida/current/source/main/phenotype.cc
diff -u avida/current/source/main/phenotype.cc:1.32 avida/current/source/main/phenotype.cc:1.33
--- avida/current/source/main/phenotype.cc:1.32 Sat May 17 14:23:26 2003
+++ avida/current/source/main/phenotype.cc Sun Jun 8 19:36:09 2003
@@ -210,7 +210,7 @@
// Update these values as needed...
int cur_merit_base = CalcSizeMerit(genome_length,copied_size,executed_size);
merit = cur_merit_base * cur_bonus;
- assert(merit.GetDouble() != 0);
+ assert(merit.GetDouble() >= 0.0);
genome_length = _length;
(void) copied_size; // Unchanged
@@ -378,6 +378,9 @@
// Update the merit bonus
cur_bonus *= result.GetMultBonus();
cur_bonus += result.GetAddBonus();
+
+ // Bonus should never go negative...
+ if (cur_bonus < 0.0) cur_bonus = 0.0;
// Denote consumed resources...
for (int i = 0; i < res_in.GetSize(); i++) {
More information about the Avida-cvs
mailing list