예제 #1
0
 public override bool Equals(object obj)
 {
     return(Evolvable.Equals((obj as Evolver).Evolvable));
 }
예제 #2
0
 public override int GetHashCode()
 {
     return(Evolvable.GetHashCode());
 }
예제 #3
0
 protected override double differenceTo(IEvolvable other)
 {
     return(other is Evolver?Evolvable.DifferenceTo((other as Evolver).Evolvable) : Evolvable.DifferenceTo(other));
 }
예제 #4
0
 protected override IEvolvable clone()
 {
     return(new Evolver(population, Evolvable.Clone()));
 }
예제 #5
0
 protected override IEvolvable crossover(IEvolvable mate)
 {
     return(new Evolver(population, mate is Evolver ? Evolvable.Crossover((mate as Evolver).Evolvable) : Evolvable.Crossover(mate)));
 }
예제 #6
0
 protected override void leap()
 {
     Evolvable.Leap();
 }
예제 #7
0
 protected override void mutate()
 {
     Evolvable.Mutate();
 }
예제 #8
0
 protected override IEvolvable clone()
 {
     return(new FedEvolver((population as IndividualMutateAndCrossoverPopulation), Evolvable.Clone(), random));
 }
예제 #9
0
 protected override IEvolvable crossover(IEvolvable mate)
 {
     return(new FedEvolver((population as IndividualMutateAndCrossoverPopulation), mate is FedEvolver ? Evolvable.Crossover((mate as FedEvolver).Evolvable) : Evolvable.Crossover(mate), random));
 }