public void Run() { while (true) { io_cpq.Enqueue(InitialChromosomeFactory <T> .GenerateChromosome()); } }
/// <summary> /// Call ROG/LROG to get a Chromosome to use as one of the parents. /// </summary> /// <param name="ao_disappointingchild"></param> /// <returns></returns> private Chromosome <T> GetOrphanChild(Chromosome <T> ao_disappointingchild) { //Filing paper work... Chromosome <T> lo_orphanchild = null; if (Globals <T> .LROG) { lo_orphanchild = Globals <T> .CPQ.Dequeue(); } else if (Globals <T> .ROG) { lo_orphanchild = InitialChromosomeFactory <T> .GenerateChromosome(); } else { //Decided against trading away that disgrace of a child. lo_orphanchild = ao_disappointingchild; } //Take it home. return(lo_orphanchild); }