Opened 3 years ago

Closed 2 years ago

#2306 closed enhancement (done)

Integrate NK landscapes

Reported by: ascheibe Owned by: ascheibe
Priority: medium Milestone: HeuristicLab 3.3.12
Component: Problems.NK Version: 3.3.10
Keywords: Cc:

Description

The NK landscapes problem from epitzer from the FLA branch should be integrated into trunk. I think this is quite often used as a benchmark problem and therefore we should also ship this by default.

Change History (28)

comment:1 Changed 2 years ago by ascheibe

  • Status changed from new to accepted

comment:2 Changed 2 years ago by ascheibe

r12483 added a new project for NK landscapes and ported it to BasicProblem

comment:3 Changed 2 years ago by ascheibe

r12565 merged changes from copy of NK landscapes back into original plugin and deleted copy

comment:4 Changed 2 years ago by ascheibe

r12566

  • removed unused usings
  • renamed plugin.cs file
  • fixed prebuild event
  • fixed plugin dependencies
  • added license headers
  • updated assemblyinfo

comment:5 Changed 2 years ago by ascheibe

Some notes/observations:

  • Button for re-initialization of problem needs to be added
  • f_i could be removed if it is not needed
  • Is the bool matrix bitmap view still needed?
  • Decide if Maximization/Minimization. This is not consistent with BestKnownSolution atm.
  • Should random/hashAlgorithm be storable?
  • Should random/hashAlgorithm be cloneable?
  • Decide which functions for fitness calculation need to be public.
  • Default configuration of problem should just be standard NK landscape.
  • I think the WeightInitializers should be normal Items, not NamedItems. Also, one is a ParameterizedNamedItem, the other ones are just NamedItems. Because there is only an interface, I would opt for a base class that inherits from ParameterizedNamedItem.
  • All weight initializers should be sealed classes that do not handle CanChangeName, Name, ItemName, etc. by themselves.
  • The same also applies to InteractionInitializers
  • For the default problem configuration, I do not seem to get a better quality than 2.5. Shouldn't it be 0?
Last edited 2 years ago by ascheibe (previous) (diff)

comment:6 Changed 2 years ago by ascheibe

r12569 fixed typos and some cosmetic changes

comment:7 Changed 2 years ago by ascheibe

r12573 hopefully fixed random number generation problem

comment:8 Changed 2 years ago by ascheibe

r12574 improved BoolMatrix View

comment:9 Changed 2 years ago by ascheibe

Review Comments/TODO

  • Check if BinaryVectorEncoding parameter can be hidden
  • Local Analysis should be "Analysis" and not "Algorithm"
  • InteractionInitializerParameter ValueChanged is not always fired
  • GeneInteractionsInitializer should fire parameter changed events and notify the problem
  • Make BoolMatrix View Default View for BoolMatrices
  • Hide Weights/WeightInits/InteractionInits
  • Make BoolMatrixView toggable
  • Add row and column headers
Last edited 2 years ago by ascheibe (previous) (diff)

comment:10 Changed 2 years ago by epitzer

r12575 Add RealVectorDistanceCalculator (for neutral walks on real vector problems)

comment:11 Changed 2 years ago by epitzer

r12576 Implement NKq and NKp landscape (and fix Seed parameter clash with Algorithm's seed)

comment:12 Changed 2 years ago by ascheibe

r12582 made comparers and initializers consistent

comment:13 Changed 2 years ago by ascheibe

r12592

  • hide weight and interaction initializer parameters
  • hide encoding parameter
  • removed setting of BestKnownQuality
  • added wiring code for interaction and weight initializers that have parameters
  • made all interaction/weight initializers ParameterizedNamedItem

comment:14 Changed 2 years ago by ascheibe

r12593 fixed name of bool matrix view

comment:15 Changed 2 years ago by ascheibe

r12594 fixed pre-build event

comment:16 Changed 2 years ago by ascheibe

r12596 some cosmetic changes

comment:17 Changed 2 years ago by ascheibe

r12601 added missing modifier

comment:18 Changed 2 years ago by ascheibe

r12602 moved BoolMatrixView to trunk

comment:19 Changed 2 years ago by ascheibe

r12603 deleted NK.Views project from branch

comment:20 Changed 2 years ago by ascheibe

r12604 moved Problems.NK to trunk

comment:21 Changed 2 years ago by ascheibe

r12605 removed Problems.NK from branch

comment:22 Changed 2 years ago by ascheibe

r12606 fixed references of Problems.NK project

comment:23 Changed 2 years ago by ascheibe

  • Owner changed from ascheibe to epitzer
  • Status changed from accepted to reviewing

comment:24 Changed 2 years ago by ascheibe

  • Owner changed from epitzer to ascheibe
  • Status changed from reviewing to assigned

comment:25 Changed 2 years ago by ascheibe

  • Owner changed from ascheibe to epitzer
  • Status changed from assigned to reviewing

r12640 fixed Createable attribute of NK landscape

comment:26 Changed 2 years ago by ascheibe

  • Component changed from ### Undefined ### to Problems.NK

comment:27 Changed 2 years ago by epitzer

  • Owner changed from epitzer to ascheibe
  • Status changed from reviewing to readytorelease

comment:28 Changed 2 years ago by ascheibe

  • Resolution set to done
  • Status changed from readytorelease to closed

r12730 merged r12604, r12606, r12640 into stable

Note: See TracTickets for help on using tickets.