Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
02/07/15 13:52:48 (9 years ago)
Author:
abeham
Message:

#2174:

  • Added ISingleObjectiveOperator and IMultiObjectiveOperator interfaces
    • Added interface to all operators that would fall in either of these categories (excluding MainLoop operators)
  • Added some checks in BasicProblem on whether the MultiEncoding is being used
    • A new event handler is added that reacts on encodings being removed or added to the MultiEncoding
  • Added code to remove the non-fit operators in (Single|Multi)ObjectiveBasicProblem
Location:
trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/Alba/LocalImprovement/AlbaLambdaInterchangeLocalImprovementOperator.cs

    r11300 r11970  
    3636  [Item("AlbaLambdaInterchangeLocalImprovementOperator", "Takes a solution and finds the local optimum with respect to the lambda interchange neighborhood by decending along the steepest gradient.")]
    3737  [StorableClass]
    38   public class AlbaLambdaInterchangeLocalImprovementOperator : VRPOperator, IStochasticOperator, ILocalImprovementOperator {
     38  public class AlbaLambdaInterchangeLocalImprovementOperator : VRPOperator, IStochasticOperator, ILocalImprovementOperator, ISingleObjectiveOperator {
    3939
    4040    public IValueLookupParameter<IntValue> MaximumIterationsParameter {
  • trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/General/Moves/MultiVRPMoveOperator/MultiVRPMoveTabuMaker.cs

    r11171 r11970  
    3333  [Item("MultiVRPMoveTabuMaker", "A multi VRP move tabu maker.")]
    3434  [StorableClass]
    35   public class MultiVRPMoveTabuMaker : SingleSuccessorOperator, IMultiVRPMoveOperator, ITabuMaker, IGeneralVRPOperator {
     35  public class MultiVRPMoveTabuMaker : SingleSuccessorOperator, IMultiVRPMoveOperator, ITabuMaker, IGeneralVRPOperator, ISingleObjectiveOperator {
    3636    public ILookupParameter VRPMoveParameter {
    3737      get { return (ILookupParameter)Parameters["VRPMove"]; }
  • trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/General/Moves/VRPMoveMaker.cs

    r11171 r11970  
    3232  [Item("VRPMoveMaker", "Performs a VRP move.")]
    3333  [StorableClass]
    34   public abstract class VRPMoveMaker : VRPMoveOperator, IMoveMaker {
     34  public abstract class VRPMoveMaker : VRPMoveOperator, IMoveMaker, ISingleObjectiveOperator {
    3535    public ILookupParameter<DoubleValue> QualityParameter {
    3636      get { return (ILookupParameter<DoubleValue>)Parameters["Quality"]; }
     
    9191          }
    9292        }
    93       }
    94       finally {
     93      } finally {
    9594        foreach (IParameter parameter in addedParameters) {
    9695          this.Parameters.Remove(parameter);
  • trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/Potvin/Moves/PickupDelivery/PDExchange/PotvinPDExchangeMoveTabuMaker.cs

    r11171 r11970  
    3232  [Item("PotvinPDExchangeMoveTabuMaker", "Declares a given exchange move as tabu.")]
    3333  [StorableClass]
    34   public class PotvinPDExchangeMoveTabuMaker : SingleSuccessorOperator, ITabuMaker, IPotvinPDExchangeMoveOperator, IPotvinOperator, IVRPMoveOperator {
     34  public class PotvinPDExchangeMoveTabuMaker : SingleSuccessorOperator, ITabuMaker, IPotvinPDExchangeMoveOperator, IPotvinOperator, ISingleObjectiveOperator {
    3535    public LookupParameter<ItemList<IItem>> TabuListParameter {
    3636      get { return (LookupParameter<ItemList<IItem>>)Parameters["TabuList"]; }
  • trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/Potvin/Moves/TwoOptStar/PotvinTwoOptStarMoveTabuMaker.cs

    r11171 r11970  
    3333  [Item("PotvinTwoOptStarMoveTabuMaker", "Declares a given two opt star move as tabu.")]
    3434  [StorableClass]
    35   public class PotvinTwoOptStarMoveTabuMaker : SingleSuccessorOperator, ITabuMaker, IPotvinTwoOptStarMoveOperator, IPotvinOperator, IVRPMoveOperator {
     35  public class PotvinTwoOptStarMoveTabuMaker : SingleSuccessorOperator, ITabuMaker, IPotvinTwoOptStarMoveOperator, IPotvinOperator, ISingleObjectiveOperator {
    3636    public LookupParameter<ItemList<IItem>> TabuListParameter {
    3737      get { return (LookupParameter<ItemList<IItem>>)Parameters["TabuList"]; }
  • trunk/sources/HeuristicLab.Problems.VehicleRouting/3.4/Encodings/Potvin/Moves/VehicleAssignment/PotvinVehicleAssignmentMoveTabuMaker.cs

    r11171 r11970  
    3232  [Item("PotvinVehicleAssignmentMoveTabuMaker", "Declares a given vehicle assignment move as tabu.")]
    3333  [StorableClass]
    34   public class PotvinVehicleAssignmentMoveTabuMaker : SingleSuccessorOperator, ITabuMaker, IPotvinVehicleAssignmentMoveOperator, IPotvinOperator, IVRPMoveOperator {
     34  public class PotvinVehicleAssignmentMoveTabuMaker : SingleSuccessorOperator, ITabuMaker, IPotvinVehicleAssignmentMoveOperator, IPotvinOperator, ISingleObjectiveOperator {
    3535    public LookupParameter<ItemList<IItem>> TabuListParameter {
    3636      get { return (LookupParameter<ItemList<IItem>>)Parameters["TabuList"]; }
Note: See TracChangeset for help on using the changeset viewer.