EAtemplate.ez 2.77 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11
/*_____________________________________________________________

Template for an EASEA evolutionary algorithm for easea v1.0.3
_______________________________________________________________*/

\User declarations : // This section is copied on top of the output file
\end

\User functions:
\end

12 13 14 15
\User CUDA:
//Transfert some variables to GPU here (cudaMalloc, MemCpy)
\end

16 17 18
\User classes :
GenomeClass { 
  // need to declare the genome here
19
  int i;
20 21 22
}
\end

23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
\Before everything else function:
//cout<<"Before everything else function called "<<endl;
\end

\After everything else function:
//cout << "After everything else function called" << endl;
\end

\At the beginning of each generation function:
//cout << "At the beginning of each generation function called" << endl;
\end

\At the end of each generation function:
//cout << "At the end of each generation function called" << endl;
\end

\At each generation before reduce function:
//cout << "At each generation before replacement function called" << endl;
\end

43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
\GenomeClass::display:
\end

\GenomeClass::initialiser : // "initializer" is also accepted
  // the genome to initialise is known as "Genome"
\end

\GenomeClass::crossover : 
  // must create "child" out of "parent1" and "parent2"
\end

\GenomeClass::mutator : // Must return the number of mutations
  // must mutate "Genome"
  return 0;
\end

\GenomeClass::evaluator : // Returns the score as a real value
  // uses Genome to evaluate the quality of the individual
  return 0.0;
\end

\User Makefile options: 
\end

\Default run parameters :        // Please let the parameters appear in this order
  Number of generations : 100    // NB_GEN
  Time limit: 0 			           // In seconds, 0 to deactivate
  Population size : 1024			   //POP_SIZE
  Offspring size : 1024 // or a xx%
  Mutation probability : 1       // MUT_PROB
  Crossover probability : 1      // XOVER_PROB
  Evaluator goal : maximize      // maximise
  Selection operator: Tournament 2.0
  Surviving parents: 100%        // Percentage or absolute  
  Surviving offspring: 100%      // Percentage or absolute  
  Reduce parents operator: Tournament 2
  Reduce offspring operator: Tournament 2
  Final reduce operator: Tournament 2

  Elitism: Strong			           // Weak or Strong
  Elite: 1
  Print stats: true				       // Default: 1
  Generate csv stats file:false			
  Generate gnuplot script:false
  Generate R script:false
  Plot stats:true				         // Default: 0

  Remote island model: false
  IP file: ip.txt 			         // List of IP:PORT of islands to send individuals to
  Migration probability: 0.33    // Probability of sending an individual per generation
93
  Server port : 2929
94 95 96 97 98

  Save population: false
  Start from file:false
\end