Changeset 11873 for stable/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/ShakingOperators/IntegerVectorShakingOperator.cs
- Timestamp:
- 02/03/15 14:21:23 (10 years ago)
- Location:
- stable
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
stable
- Property svn:mergeinfo changed
/trunk/sources merged: 11756,11758
- Property svn:mergeinfo changed
-
stable/HeuristicLab.Encodings.IntegerVectorEncoding
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Encodings.IntegerVectorEncoding merged: 11756
- Property svn:mergeinfo changed
-
stable/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/ShakingOperators/IntegerVectorShakingOperator.cs
r11170 r11873 25 25 using HeuristicLab.Common; 26 26 using HeuristicLab.Core; 27 using HeuristicLab.Data; 27 28 using HeuristicLab.Optimization; 28 29 using HeuristicLab.Optimization.Operators; … … 37 38 [Item("IntegerVectorShakingOperator", "A shaking operator for VNS which uses available manipulation operators to perform the shaking.")] 38 39 [StorableClass] 39 public class IntegerVectorShakingOperator : ShakingOperator<IIntegerVectorManipulator>, IIntegerVectorMultiNeighborhoodShakingOperator, IStochasticOperator {40 public class IntegerVectorShakingOperator : ShakingOperator<IIntegerVectorManipulator>, IIntegerVectorMultiNeighborhoodShakingOperator, IStochasticOperator, IBoundedIntegerVectorOperator { 40 41 41 42 public ILookupParameter<IntegerVector> IntegerVectorParameter { … … 45 46 public ILookupParameter<IRandom> RandomParameter { 46 47 get { return (LookupParameter<IRandom>)Parameters["Random"]; } 48 } 49 50 public IValueLookupParameter<IntMatrix> BoundsParameter { 51 get { return (IValueLookupParameter<IntMatrix>)Parameters["Bounds"]; } 47 52 } 48 53 … … 57 62 Parameters.Add(new LookupParameter<IntegerVector>("IntegerVector", "The integer vector to shake.")); 58 63 Parameters.Add(new LookupParameter<IRandom>("Random", "The random number generator that will be used for stochastic shaking operators.")); 64 Parameters.Add(new ValueLookupParameter<IntMatrix>("Bounds", "A 2 column matrix specifying the lower and upper bound for each dimension. If there are less rows than dimension the bounds vector is cycled.")); 65 59 66 foreach (IIntegerVectorManipulator shaker in ApplicationManager.Manager.GetInstances<IIntegerVectorManipulator>().OrderBy(x => x.Name)) 60 67 if (!(shaker is ISelfAdaptiveManipulator)) Operators.Add(shaker); 68 } 69 70 [StorableHook(HookType.AfterDeserialization)] 71 private void AfterDeserialization() { 72 #region Backwards compatible code, remove with 3.4 73 if (!Parameters.ContainsKey("Bounds")) 74 Parameters.Add(new ValueLookupParameter<IntMatrix>("Bounds", "A 2 column matrix specifying the lower and upper bound for each dimension. If there are less rows than dimension the bounds vector is cycled.")); 75 #endregion 61 76 } 62 77
Note: See TracChangeset
for help on using the changeset viewer.