Opened 17 months ago

Last modified 17 months ago

#2554 new feature request

Allow to extend programmable problem with encoding specific operations

Reported by: abeham Owned by:
Priority: medium Milestone: HeuristicLab 4.0
Component: Problems.Programmable Version: 3.3.13
Keywords: Cc:

Description

When combining a programmable problem with a multi encoding often the use case arises that the elements of the multi encoding should be manipulated jointly. The multi encoding provides only independent manipulations and the programmable problem cannot provide additional means to specify such manipulations currently. Such joint manipulations are assumed to be of high complexity and would need to be provided by the user as C# code.

It has been discussed (mkommend, jkarder, abeham), that this feature can be realized by allowing the dynamically created problem instance to implement several interfaces. The interface ISingleObjectiveProblemDefinition should be limited to just Maximize, Evaluate and Analyze. The method GetNeighbors, which was never fully fit in its current place anyway, and several other such operations (Crossover, Manipulate, etc.) should be delegated to other interfaces which must be implemented by the problem. To each interface an operator exists that is instantiated by the programmable problem host if the compiled instance implements it.

Change History (1)

comment:1 Changed 17 months ago by abeham

  • Milestone changed from HeuristicLab 3.3.14 to HeuristicLab 4.0
Note: See TracTickets for help on using tickets.