示例#1
0
 public WinnerDistance(double dist, SOM.Neuron neuron)
 {
     winner = neuron;
     distance = dist;
 }
示例#2
0
 //public static void Main()
 //{
 //    //  Crossover		= 80%
 //    //  Mutation		=  5%
 //    //  Population size = 100
 //    //  Generations		= 2000
 //    //  Genome size		= 2
 //    GA ga = new GA(0.8, 0.05, 100, 2000, 2);
 //    ga.FitnessFunction = new GAFunction(theActualFunction);
 //    //ga.FitnessFile = @"H:\fitness.csv";
 //    ga.Elitism = true;
 //    ga.Go();
 //    double[] values;
 //    double fitness;
 //    ga.GetBest(out values, out fitness);
 //    System.Console.WriteLine("Best ({0}):", fitness);
 //    for (int i = 0; i < values.Length; i++)
 //        System.Console.WriteLine("{0} ", values[i]);
 //    //ga.GetWorst(out values, out fitness);
 //    //System.Console.WriteLine("\nWorst ({0}):", fitness);
 //    //for (int i = 0 ; i < values.Length ; i++)
 //    //    System.Console.WriteLine("{0} ", values[i]);
 //    System.Console.ReadLine();
 //}
 private void Initialise()
 {
     iteration = 0;
     outputs = null;
     outputs = new SOM.Neuron[length, length];
     for (int i = 0; i < length; i++)
     {
         for (int j = 0; j < length; j++)
         {
             outputs[i, j] = new SOM.Neuron(i, j, length);
             outputs[i, j].Weights = new double[dimensions];
             for (int k = 0; k < dimensions; k++)
             {
                 outputs[i, j].Weights[k] = rnd.NextDouble();
             }
         }
     }
 }