Free cookie consent management tool by TermsFeed Policy Generator

Opened 12 years ago

Closed 12 years ago

#1663 closed enhancement (done)

Expose the problem's operators list in a parameter

Reported by: abeham Owned by: abeham
Priority: medium Milestone: HeuristicLab 3.3.6
Component: Optimization Version: 3.3.6
Keywords: Cc:


Currently the operators list stored in the problem is not visible and cannot be modified by the user. Sometimes however it makes sense to delete certain operators or add new ones.

Change History (8)

comment:1 Changed 12 years ago by abeham

  • Status changed from new to accepted

comment:2 Changed 12 years ago by abeham


  • Added an Operators parameter in Problem
  • Adapted KnapsackProblem, OnemaxProblem, SingleObjectiveTestFunctionProblem, TravelingSalesmanProblem, and VehicleRoutingProblem to derive from SingleObjectiveHeuristicOptimizationProblem<U, V>, renamed and marked old list as obsolete. Note that QuadraticAssignmentProblem, as well as the new DataAnalysisProblems already derived from that class. ArtificialAntProblem was not yet modified.
  • Added some test lists and adapted SamplesTest
  • Added plugin dependencies that the unit test was complaining about
Last edited 12 years ago by abeham (previous) (diff)

comment:3 Changed 12 years ago by abeham

  • Milestone changed from HeuristicLab 3.3.x Backlog to HeuristicLab 3.3.6
  • Owner changed from abeham to mkommend
  • Status changed from accepted to assigned

Can you take a look at the changes? The change to use the new base class are similar in each problem. I removed the parameters, parameter properties and properties of those parameters that are already defined, renamed the operators list and made it an obsolete serialization property that would forward the call to Set to Operators.AddRange() and which would always return null. ArtificialAntProblem still needs to be modified, I'll do that after you tell me the changes are okay or you can do it yourself if you have the time.

comment:4 Changed 12 years ago by mkommend

  • Owner changed from mkommend to abeham

All the changes look good, except one minor mistake in the KnapsackProblem. The condition in the after deserialization hook should be equal zero instead of larger than zero, to avoid multiple initialization of the operators collection.

comment:5 Changed 12 years ago by abeham

  • Owner changed from abeham to mkommend
  • Status changed from assigned to reviewing


  • Added hiding of Maximization parameter
  • Fixed AfterDeserializationHook in KnapsackProblem
  • Ported ArtificialAntProblem to use the SingleObjectiveHeuristicOptimizationProblem base class

comment:6 Changed 12 years ago by abeham


  • fixed problem with ArtificialAntProblem

comment:7 Changed 12 years ago by mkommend

  • Owner changed from mkommend to abeham
  • Status changed from reviewing to readytorelease

comment:8 Changed 12 years ago by swagner

  • Resolution set to done
  • Status changed from readytorelease to closed
  • Version changed from 3.3.5 to 3.3.6
Note: See TracTickets for help on using tickets.