public virtual void Copy(MOOSolution rhs) { mObjectives.Clear(); mConstaints.Clear(); int objective_count = rhs.mObjectives.Count; for (int objective_index = 0; objective_index < objective_count; ++objective_index) { mObjectives.Add(rhs.mObjectives[objective_index]); } int constraint_count = rhs.mConstaints.Count; for (int constraint_index = 0; constraint_index < constraint_count; ++constraint_index) { mConstaints.Add(rhs.mConstaints[constraint_index]); } mTags.Clear(); Dictionary <string, object> tags = rhs.mTags; foreach (string tag_id in tags.Keys) { mTags[tag_id] = tags[tag_id]; } mRank = rhs.mRank; mCrowdingDistance = rhs.mCrowdingDistance; mPopulation = rhs.mPopulation; mProblem = rhs.mProblem; }
public virtual ISolution Clone() { MOOSolution clone = new MOOSolution(mPopulation, mProblem); clone.Copy(this); return(clone); }
public virtual void UniformCrossover(MOOSolution rhs) { }
public virtual void OnePointCrossover(MOOSolution rhs) { }