Changeset 10538 for branches/DataPreprocessing/HeuristicLab.Encodings.ScheduleEncoding/3.3/PermutationWithRepetition
- Timestamp:
- 03/05/14 14:48:13 (11 years ago)
- Location:
- branches/DataPreprocessing
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/DataPreprocessing
- Property svn:mergeinfo changed
-
branches/DataPreprocessing/HeuristicLab.Encodings.ScheduleEncoding/3.3/PermutationWithRepetition/Crossovers/PWRCrossover.cs
r9456 r10538 40 40 public abstract PWREncoding Cross(IRandom random, PWREncoding parent1, PWREncoding parent2); 41 41 42 public override IOperation Apply() {42 public override IOperation InstrumentedApply() { 43 43 var parents = ParentsParameter.ActualValue; 44 44 … … 46 46 Cross(RandomParameter.ActualValue, parents[0] as PWREncoding, parents[1] as PWREncoding); 47 47 48 return base. Apply();48 return base.InstrumentedApply(); 49 49 } 50 50 } -
branches/DataPreprocessing/HeuristicLab.Encodings.ScheduleEncoding/3.3/PermutationWithRepetition/Manipulators/PWRManipulator.cs
r9456 r10538 40 40 protected abstract void Manipulate(IRandom random, PWREncoding individual); 41 41 42 public override IOperation Apply() {42 public override IOperation InstrumentedApply() { 43 43 var solution = ScheduleEncodingParameter.ActualValue as PWREncoding; 44 44 if (solution == null) throw new InvalidOperationException("ScheduleEncoding was not found or is not of type PWREncoding."); 45 45 Manipulate(RandomParameter.ActualValue, solution); 46 return base. Apply();46 return base.InstrumentedApply(); 47 47 } 48 48 -
branches/DataPreprocessing/HeuristicLab.Encodings.ScheduleEncoding/3.3/PermutationWithRepetition/PWREncoding.cs
r9456 r10538 75 75 return sb.ToString(); 76 76 } 77 78 public override bool Equals(object obj) {79 if (obj.GetType() == typeof(PWREncoding))80 return AreEqual(this, obj as PWREncoding);81 else82 return base.Equals(obj);83 }84 85 public override int GetHashCode() {86 if (PermutationWithRepetition.Length == 1)87 return PermutationWithRepetition[0].GetHashCode();88 if (PermutationWithRepetition.Length == 2)89 return PermutationWithRepetition[0].GetHashCode() ^ PermutationWithRepetition[1].GetHashCode();90 return 0;91 }92 93 private bool AreEqual(PWREncoding pWREncoding1, PWREncoding pWREncoding2) {94 if (pWREncoding1.PermutationWithRepetition.Length != pWREncoding2.PermutationWithRepetition.Length)95 return false;96 for (int i = 0; i < pWREncoding1.PermutationWithRepetition.Length; i++) {97 if (pWREncoding1.PermutationWithRepetition[i] != pWREncoding2.PermutationWithRepetition[i])98 return false;99 }100 return true;101 }102 77 } 103 78 }
Note: See TracChangeset
for help on using the changeset viewer.