[Avida-SVN] r2378 - development/source/main

barrick at myxo.css.msu.edu barrick at myxo.css.msu.edu
Mon Feb 25 13:22:42 PST 2008


Author: barrick
Date: 2008-02-25 16:22:42 -0500 (Mon, 25 Feb 2008)
New Revision: 2378

Modified:
   development/source/main/cEnvironment.cc
   development/source/main/cPopulation.cc
   development/source/main/cStats.cc
   development/source/main/cStats.h
Log:
Added some brackets in a switch statement to make compilers happy.

Extra stats for PrintCompetitionData.



Modified: development/source/main/cEnvironment.cc
===================================================================
--- development/source/main/cEnvironment.cc	2008-02-25 21:05:39 UTC (rev 2377)
+++ development/source/main/cEnvironment.cc	2008-02-25 21:22:42 UTC (rev 2378)
@@ -1036,20 +1036,24 @@
         result.AddEnergy(bonus);
         break;
       case nReaction::PROCTYPE_ENZYME: //@JEB
+      {
         const int res_id = in_resource->GetID();
         assert(cur_process->GetMaxFraction() != 0);
         assert(resource_count[res_id] != 0);
         double reward = cur_process->GetValue() * resource_count[res_id] / (resource_count[res_id] + cur_process->GetMaxFraction());
         result.AddBonus( reward , reaction_id);
         break;
+      }
       case nReaction::PROCTYPE_EXP: //@JEB
+      {
         // Cumulative rewards are Value * integral (exp (-MaxFraction * TaskCount))
         // Evaluate to get stepwise amount to add per task executed.
         assert(task_count >= 1);
         const double decay = cur_process->GetMaxFraction();
         const double value = cur_process->GetValue();
         result.AddBonus( value * (1.0 / decay) * ( exp((task_count-1) * decay) - exp(task_count * decay)), reaction_id );
-      break;
+        break;
+      }
           
       default:
         assert(false);  // Should not get here!

Modified: development/source/main/cPopulation.cc
===================================================================
--- development/source/main/cPopulation.cc	2008-02-25 21:05:39 UTC (rev 2377)
+++ development/source/main/cPopulation.cc	2008-02-25 21:22:42 UTC (rev 2378)
@@ -3799,7 +3799,7 @@
   
   // copy stats to cStats, so that these can be remembered and printed
   m_world->GetStats().SetCompetitionTrialFitnesses(avg_trial_fitnesses);
-  m_world->GetStats().SetCompetitionFitness(average_fitness);
+  m_world->GetStats().SetCompetitionFitnesses(average_fitness, lowest_fitness, highest_fitness, average_fitness_copied, lowest_fitness_copied, highest_fitness_copied);
   m_world->GetStats().SetCompetitionOrgsReplicated(different_orgs_copied);
   
   NewTrial();

Modified: development/source/main/cStats.cc
===================================================================
--- development/source/main/cStats.cc	2008-02-25 21:05:39 UTC (rev 2377)
+++ development/source/main/cStats.cc	2008-02-25 21:22:42 UTC (rev 2378)
@@ -119,6 +119,11 @@
   , num_own_used(0)
   , sense_size(0)
   , avg_competition_fitness(0)
+  , min_competition_fitness(0)
+  , max_competition_fitness(0)
+  , avg_competition_copied_fitness(0)
+  , min_competition_copied_fitness(0)
+  , max_competition_copied_fitness(0)
   , num_orgs_replicated(0)
   , m_spec_total(0)
   , m_spec_num(0)
@@ -1138,7 +1143,12 @@
   df.WriteComment( "results of the current competitions" );
   
   df.Write( GetUpdate(), "update" );
-  df.Write( avg_competition_fitness, "overall competition fitness" );
+  df.Write( avg_competition_fitness, "average competition fitness" );
+  df.Write( min_competition_fitness, "min competition fitness" );
+  df.Write( max_competition_fitness, "max competition fitness" );
+  df.Write( avg_competition_copied_fitness, "average copied fitness" );
+  df.Write( min_competition_copied_fitness, "min copied fitness" );
+  df.Write( max_competition_copied_fitness, "max copied fitness" );
   df.Write( num_orgs_replicated, "number of organisms copied" );
 
   // Only print trial info if there were multiple trials.

Modified: development/source/main/cStats.h
===================================================================
--- development/source/main/cStats.h	2008-02-25 21:05:39 UTC (rev 2377)
+++ development/source/main/cStats.h	2008-02-25 21:22:42 UTC (rev 2378)
@@ -256,6 +256,11 @@
   // Stats for competitions
   tArray<double> avg_trial_fitnesses;
   double avg_competition_fitness;
+  double min_competition_fitness;
+  double max_competition_fitness;
+  double avg_competition_copied_fitness;
+  double min_competition_copied_fitness;
+  double max_competition_copied_fitness;  
   int num_orgs_replicated;
 
   tArray<int> numAsleep;
@@ -507,7 +512,9 @@
   void SetResourceName(int id, const cString & name) { resource_names[id] = name; }
 
   void SetCompetitionTrialFitnesses(tArray<double> _in) { avg_trial_fitnesses = _in; }
-  void SetCompetitionFitness(double _in) { avg_competition_fitness = _in; }
+  void SetCompetitionFitnesses(double _in_avg, double _in_min, double _in_max, double _in_cp_avg, double _in_cp_min, double _in_cp_max) 
+    { avg_competition_fitness = _in_avg; min_competition_fitness = _in_min; max_competition_fitness = _in_max; 
+      avg_competition_copied_fitness = _in_cp_avg; min_competition_copied_fitness = _in_cp_min; max_competition_copied_fitness = _in_cp_max; }
   void SetCompetitionOrgsReplicated(int _in) { num_orgs_replicated = _in; }
 
   //market info




More information about the Avida-cvs mailing list