Changeset 12276 for stable/HeuristicLab.Optimization.Operators/3.3/MultiObjective/RankAndCrowdingSorter.cs
- Timestamp:
- 04/01/15 15:44:13 (9 years ago)
- Location:
- stable
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
stable
- Property svn:mergeinfo changed
/branches/NSGA-II Changes (added) merged: 12033-12034,12044 /trunk/sources merged: 12123,12144
- Property svn:mergeinfo changed
-
stable/HeuristicLab.Optimization.Operators/3.3/MultiObjective/RankAndCrowdingSorter.cs
r12009 r12276 30 30 namespace HeuristicLab.Optimization.Operators { 31 31 public class RankAndCrowdingSorter : AlgorithmOperator, IMultiObjectiveOperator { 32 #region Parameter properties 32 33 public ValueLookupParameter<BoolArray> MaximizationParameter { 33 34 get { return (ValueLookupParameter<BoolArray>)Parameters["Maximization"]; } … … 42 43 get { return (ScopeTreeLookupParameter<DoubleValue>)Parameters["CrowdingDistance"]; } 43 44 } 45 public IValueLookupParameter<BoolValue> DominateOnEqualQualitiesParameter { 46 get { return (ValueLookupParameter<BoolValue>)Parameters["DominateOnEqualQualities"]; } 47 } 48 #endregion 44 49 45 50 [StorableConstructor] … … 49 54 : base() { 50 55 Parameters.Add(new ValueLookupParameter<BoolArray>("Maximization", "For each objective a value that is true if that objective should be maximized, or false if it should be minimized.")); 56 Parameters.Add(new ValueLookupParameter<BoolValue>("DominateOnEqualQualities", "Flag which determines wether solutions with equal quality values should be treated as dominated.")); 51 57 Parameters.Add(new ScopeTreeLookupParameter<DoubleArray>("Qualities", "The vector of quality values.")); 52 58 Parameters.Add(new ScopeTreeLookupParameter<IntValue>("Rank", "The rank of a solution (to which front it belongs).")); … … 60 66 61 67 fastNonDominatedSort.MaximizationParameter.ActualName = MaximizationParameter.Name; 68 fastNonDominatedSort.DominateOnEqualQualitiesParameter.ActualName = DominateOnEqualQualitiesParameter.Name; 62 69 fastNonDominatedSort.QualitiesParameter.ActualName = QualitiesParameter.Name; 63 70 fastNonDominatedSort.RankParameter.ActualName = RankParameter.Name; … … 81 88 return new RankAndCrowdingSorter(this, cloner); 82 89 } 90 91 [StorableHook(HookType.AfterDeserialization)] 92 private void AfterDeserialization() { 93 // BackwardsCompatibility3.3 94 #region Backwards compatible code, remove with 3.4 95 if (!Parameters.ContainsKey("DominateOnEqualQualities")) 96 Parameters.Add(new ValueLookupParameter<BoolValue>("DominateOnEqualQualities", "Flag which determines wether solutions with equal quality values should be treated as dominated.")); 97 #endregion 98 } 83 99 } 84 100 }
Note: See TracChangeset
for help on using the changeset viewer.