示例#1
0
 public String[] cruza_1_punto(IndividuoReal individuo, int puntoCruza)
 {
     String[] hijos      = new String[2];
     String[] genesPadre = this.cromosomaReal.GetGenes();
     String[] genesMadre = individuo.cromosomaReal.GetGenes();
     for (int i = 0; i < genesPadre.Length && i < genesMadre.Length; i++)
     {
         hijos[0] = genesPadre[i].Substring(0, puntoCruza) + genesMadre[i].Substring(puntoCruza, genesMadre[i].Length - 1);
         hijos[1] = genesMadre[i].Substring(0, puntoCruza) + genesPadre[i].Substring(puntoCruza, genesPadre[i].Length - 1);
     }
     return(hijos);
 }
示例#2
0
        static void Main(string[] args)
        {
            int min = 0, Max = 0, P = 0, numVariables = 0;

            while (true)
            {
                Console.WriteLine("===Representación Real===");
                Console.WriteLine("Ingresa el numero de variables: ");
                numVariables = int.Parse(Console.ReadLine());
                Console.WriteLine("valor Min: ");
                min = int.Parse(Console.ReadLine());
                Console.WriteLine("valor Max: ");
                Max = int.Parse(Console.ReadLine());
                Console.WriteLine("Numero de Particiones (P): ");
                P = int.Parse(Console.ReadLine());
                IndividuoReal individuo = new IndividuoReal(numVariables, min, Max, P);
                Console.WriteLine(individuo + "\n");
            }
        }