public override DecisionNetDNA <T> crossover(DecisionNetDNA <T> p_crossover_object)
                {
                    DecisionNetDNA <T> crossovered = Clone();

                    crossovered.m_weights = MatrixCalc.crossover(m_weights, p_crossover_object.m_weights);
                    return(crossovered);
                }
                public override DecisionNetDNA <T> mutate()
                {
                    DecisionNetDNA <T> mutated = Clone();

                    mutated.m_weights = MatrixCalc.elementwiseRandomMultiply(m_weights, m_mutation_multiplier);
                    mutated.m_weights = MatrixCalc.columnNormalize(mutated.m_weights);
                    return(mutated);
                }
Esempio n. 3
0
 public MindBodyDNDNA(int p_species_id, TraitGenesDNA p_body, DecisionNetDNA <T> p_mind)
 {
     m_species_id = p_species_id;
     m_body       = p_body.Clone();
     m_mind       = p_mind.Clone();
 }