Free cookie consent management tool by TermsFeed Policy Generator
wiki:ReviewHeuristicLab3.3.0ApplicationDone

Version 13 (modified by swagner, 14 years ago) (diff)

--

Reviews - HeuristicLab 3.3.0 Application Review - Implemented Review Comments

Reviewer: abeham

Priority: HIGH

  • Creating a new TSP problem and viewing the parameter "Coordinates": The view can be switched to an "OptionalValueParameterView" which adds a button to delete the value. However when clicked an exception is thrown that the value cannot be null. The OptionalValueParameterView should not be selectable (Coordinates is not an optional parameter). This also holds for other parameters like the SolutionCreator.
    • swagner: Changed in r2948.
  • When one creates a new user defined algorithm, the user finds a button called "Create User Defined Algorithm" button on the form. This feels strange.
    • swagner: Set the button to be invisible in r2947.
  • In the user defined algorithm:
    • On the parameter tab: I press "+" to add a new Parameter. I select a ValueParameter, term it "MutationRate" and select DoubleData as type I get a MissingMethodException (Constructor on type ValueParameter not found).
      • swagner: Fixed in r2948.
  • The operator graph view is a bit confusing:
    • Selecting an operator in "Operator Graph" does not bring up the details in the details view.
      • swagner: Fixed in r2949.
    • Should there really be a view host in the operator graph group box? It's confusing being able to switch views there (also because these are always just views on the initial operator which can be viewed with view host in the details group box as well).
      • swagner: Removed view host in r2947.
  • Creating a user defined algorithm from the SGA doesn't reconfigure the SGA operator with the parameters set in the SGA interface.
    • swagner: Fixed as described in ticket #898.
  • The successor parameter reads "Successor: ResultsCollector", "Successor: SubScopesSorter", ... It's more readable if "Successor" was not present all the time (in the operator graph group box).
    • swagner: "Successor" is required to identify an operator parameter. Of course, in the case of ResultsCollector, SubScopesSorter, etc. there is only one operator parameter, but there are other operators which have multiple operator parameters (e.g. branches). If we skip the parameter name, the user will not be able to tell which operator parameter is shown in the tree view.
      • abeham: After some while I got used to it
  • All Parameters have the same icon, can we have different ones for values and operators?
    • abeham: implemented this in r3106, fixed a related bug in r3105

Priority: MEDIUM

  • The TSP problem view:
    • How do I set the (allowed) evaluation operator?
      • swagner: Enabled changing values of value parameters in r2948.
    • Why do I want to change e.g. "TSPRoundedEuclideanPathEvaluator" in the textbox "Name" when viewing Parameter "Evaluator"?
      • swagner: In a discussion with abeham it was decided to allow name changes for all operators except for selection, crossover and manipulation operators (or any other operators which can be selected in a standard algorithm or problem view). This was implemented in r3034.
  • The ViewHost menu contains a lot of views which are quite similar. ItemView doesn't display anything, should it be selectable? ParameterView and NamedItemView are very similar. Sometimes there are only very fine differences between the views (e.g. a ParameterView and a NamedItemView).
    • mkommend: Changed in r2992 as described in ticket #902.
  • In my user defined algorithm:
    • After selecting CurrentScope, all further parameters will be displayed as ParameterView and appear as if they cannot be changed. I had to change the view manually in the view host. Sometimes it seems to select the "wrong" default views. It reverts back to ParameterView as default as soon as CurrentScope is clicked again.
      • swagner: Fixed in r2949.
    • InversionManipulator has the "correct" actual name set already (Permutation), however in OrderCrossover the default names are "Parents" and "Child" which have to be changed to Permutation. This isn't obvious right away when the string description of the parameter says: "Child: Child (Permutation)".
      • swagner: Set the actual name of the parents and child parameter to "Permutation" by default in r2947.
    • My initial expectations probably weren't correct regarding the user defined algorithm. The SGA operator is not a complete SGA, but just the main loop (yes we discussed this).
      • swagner: Renamed SGAOperator to SGAMainLoop in r3020.
  • LeftSelector and RightSelector should not be displayed as selection operators in an SGA (there is a related ticket #673).
    • swagner: Replaced LeftSelector and RightSelector by BestSelector and WorstSelector as described in ticket #926.
  • I'd wish there was just a value view as well. Sometimes I want to hide name, description, type, set, remove, ... elements and just display the value (e.g. when viewing the quality chart) (we discussed this)
    • swagner: Added VariableValueView in r2989.

Priority: LOW

  • Sequential engine should probably not be createable. At least currently there's nothing one could do with just an engine.
    • swagner: Removed Creatable attribute in r2924.
  • When creating e.g. a new TSP in the parameter collection view the tool tip doesn't really display the description of the parameter but just a very generic one.
    • swagner: Changed to more specific tool tips in r2947.
  • There is a typo in the description of the parameters (tooltips), it says "it" instead of "in".
    • swagner: Fixed in r2947.
  • "Breakpoint" doesn't explain if it breaks before or after executing the operator.
    • swagner: Added tool tip in r2949.
  • The available parameters view lists just one namespace which is collapsed by default (should be expanded if it's just this one).
    • swagner: Changed in r2953.
  • When you remove the value of the results (such as "BestQuality") the text in the box does not update.
    • swagner: Fixed updating in r2989.
  • The quality chart looks great!
    • "BestKnownQuality" is not displayed currently.
      • swagner: Implemented tracking of best and best known quality values as described in ticket #920.

Reviewer: gkronber

Priority: HIGH

Priority: MEDIUM

  • The execution state of an engine (e.g. Execution Time, Log...) is not persisted or restored correctly.
    • swagner: Fixed storing and loading of an engine's execution time and state in r2933. The log is not stored and loaded at the moment, as it is not persisted in an engine but is only generated and shown in the view.
  • Dropdown-boxes for crossover and mutation operator selection are empty.
    • swagner: They are empty as long as no problem has been selected as an algorithm cannot know a priori which crossover and mutation operators are allowed.

Priority: LOW

  • Are keyboard shortcuts for groupboxes necessary? E.g. Details groupbox and Description shortcuts are conflicting. Value groupbox and Value textbox are conflicting.
    • swagner: Removed keyboard shortcuts for all groupboxes in r2924.
  • Description of RandomCreator should contain a hint about the type of PRNG that is created.

Reviewer: swinkler

Priority: HIGH

  • After starting an SGA the user is able to add a new problem; the OK button in the following dialog is initially enabled, clicking it causes no (?) action.
    • swagner: Fixed in r2924.
  • Adding a new parameter, for example a ValueParameter<IntData>, leads to an exception.
    • swagner: Fixed in r2948.
  • After starting a SGA with 130 cities TSP and population size 100 the memory consumption is 1.2 GB after approx. 6500 generations.
    • swagner: Memory and runtime performance has been drastically improved in r2932.

Priority: MEDIUM

  • After starting the SGA the current generation index is not displayed; I have to switch to the qualities chart to see the current generation.
    • swagner: Added generations counter to results in r2924.
  • During the run of an algorithm the values displayed for the variables BestQuality, AverageQuality, and WorstQuality flicker.
    • swagner: Fixed in r2924.

Priority: LOW

  • Regarding the description of operators:
    • I would prefer to not to capitalize names of algorithms, i.e., for example I would prefer "... the standard genetic algorithm ..." over "... the Standard Genetic Algorithm ...".
      • swagner: Changed capitalization of algorithm names in r3026.
  • The name of an imported TSP instance is not stored / displayed.
    • swagner: Stored name of TSP instances imported from TSPLIB in r3147.

Reviewer: maffenze

Priority: HIGH

  • When no crossover is selected an error message is thrown which gives no hint about the reason.
    • swagner: Changed in r2924 that a selection and a crossover operator are automatically selected if available to avoid the cryptic error message.

Priority: MEDIUM

Priority: LOW

  • It is not obvious what is meant with the breakpoint option in an operator.
    • swagner: Added tool tip in r2949.