コード例 #1
0
ファイル: LessROG.cs プロジェクト: dam44/AI_SEM6120_A2
 public void Run()
 {
     while (true)
     {
         io_cpq.Enqueue(InitialChromosomeFactory <T> .GenerateChromosome());
     }
 }
コード例 #2
0
ファイル: Crossover.cs プロジェクト: dam44/AI_SEM6120_A2
        /// <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);
        }