예제 #1
0
 public CartesianIndividual(CartesianIndividual other)
 {
     Name   = IndividualTools.CreateName();
     Values = new double[other.Values.Length];
     for (int i = 0; i < Values.Length; ++i)
     {
         Values[i] = other.Values[i];
     }
 }
예제 #2
0
 public GotchaIndividual(GotchaIndividual other)
 {
     mGradient = new float[4][];
     for (var ii = 0; ii < 4; ++ii)
     {
         mGradient[ii] = new float[4];
         for (var jj = 0; jj < 4; ++jj)
         {
             mGradient[ii][jj] = other.mGradient[ii][jj];
         }
     }
     mName = IndividualTools.CreateName();
 }
예제 #3
0
 public GotchaIndividual()
 {
     mGradient = new float[4][];
     for (var ii = 0; ii < 4; ++ii)
     {
         mGradient[ii] = new float[4];
         for (var jj = 0; jj < 4; ++jj)
         {
             mGradient[ii][jj] = (float)(Utils.GaussianNoise(6) + 6);
         }
     }
     mName = IndividualTools.CreateName();
 }
예제 #4
0
 public CartesianIndividual(int order, int sigma, Random r, bool empty = false)
 {
     r      = r ?? Utils.ThreadRandom;
     Name   = IndividualTools.CreateName();
     Values = new double[order];
     if (empty)
     {
         return;
     }
     for (int i = 0; i < Values.Length; ++i)
     {
         Values[i] = r.GausianNoise(sigma);
     }
 }