- Timestamp:
- 09/15/11 16:32:43 (13 years ago)
- Location:
- branches/VRP/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/General/Moves
- Files:
-
- 2 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/VRP/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/General/Moves/Interfaces/IVRPMove.cs
r4370 r6772 30 30 VRPMoveEvaluator GetMoveEvaluator(); 31 31 VRPMoveMaker GetMoveMaker(); 32 ITabuMaker GetTabuMaker(); 33 ITabuChecker GetTabuChecker(); 34 ITabuChecker GetSoftTabuChecker(); 32 35 } 33 36 } -
branches/VRP/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/General/Moves/MultiVRPMoveOperator/MultiVRPMoveEvaluator.cs
r5867 r6772 52 52 } 53 53 54 protected override void EvaluateMove() { 54 protected override void EvaluateMove() { } 55 56 public override IOperation Apply() { 55 57 IVRPMove move = VRPMoveParameter.ActualValue as IVRPMove; 56 58 57 59 VRPMoveEvaluator moveEvaluator = move.GetMoveEvaluator(); 58 60 moveEvaluator.VRPMoveParameter.ActualName = VRPMoveParameter.Name; 59 IAtomicOperation op = this.ExecutionContext.CreateOperation(moveEvaluator); 60 op.Operator.Execute((IExecutionContext)op, CancellationToken); 61 62 OperationCollection next = new OperationCollection(base.Apply()); 63 next.Insert(0, ExecutionContext.CreateOperation(moveEvaluator)); 64 65 return next; 61 66 } 62 67 } -
branches/VRP/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/General/Moves/MultiVRPMoveOperator/MultiVRPMoveGenerator.cs
r4752 r6772 39 39 [StorableClass] 40 40 public class MultiVRPMoveGenerator : CheckedMultiOperator<IMultiVRPMoveGenerator>, IMultiVRPMoveOperator, 41 IStochasticOperator, IM ultiMoveGenerator, IGeneralVRPOperator, IMultiVRPOperator{41 IStochasticOperator, IMoveGenerator, IGeneralVRPOperator, IMultiVRPOperator { 42 42 public override bool CanChangeName { 43 43 get { return false; } 44 44 } 45 45 46 public IValueLookupParameter<IntValue> S ampleSizeParameter {47 get { return (IValueLookupParameter<IntValue>)Parameters["S ampleSize"]; }46 public IValueLookupParameter<IntValue> SelectedOperatorsParameter { 47 get { return (IValueLookupParameter<IntValue>)Parameters["SelectedOperators"]; } 48 48 } 49 49 … … 80 80 public MultiVRPMoveGenerator() 81 81 : base() { 82 Parameters.Add(new ValueLookupParameter<IntValue>("S ampleSize", "The number of moves to generate."));82 Parameters.Add(new ValueLookupParameter<IntValue>("SelectedOperators", "The number of selected operators.", new IntValue(1))); 83 83 Parameters.Add(new LookupParameter<IRandom>("Random", "The pseudo random number generator which should be used for stochastic manipulation operators.")); 84 84 Parameters.Add(new ValueLookupParameter<DoubleArray>("Probabilities", "The array of relative probabilities for each operator.", new DoubleArray())); … … 158 158 OperationCollection next = new OperationCollection(base.Apply()); 159 159 160 for (int i = 0; i < S ampleSizeParameter.ActualValue.Value; i++) {160 for (int i = 0; i < SelectedOperatorsParameter.ActualValue.Value; i++) { 161 161 IRandom random = RandomParameter.ActualValue; 162 162 DoubleArray probabilities = ProbabilitiesParameter.ActualValue;
Note: See TracChangeset
for help on using the changeset viewer.