Opened 5 years ago

Closed 4 years ago

#1976 closed feature request (done)

Implement ConstantOptimizationAnalyzer to perform constant optimization after a generation is completed

Reported by: mkommend Owned by: gkronber
Priority: high Milestone: HeuristicLab 3.3.8
Component: Problems.DataAnalysis.Symbolic Version: 3.3.8
Keywords: Cc:

Description


Change History (18)

comment:1 Changed 5 years ago by mkommend

  • Status changed from new to accepted

comment:2 Changed 5 years ago by mkommend

r8823: Updated constant optimization evaluator to allow optimization of subtraction and added a parameter stating if constants should be updated in the tree.

comment:3 Changed 5 years ago by mkommend

I had a more detailed look at the constant optimization evaluator and I don't think we should skip the optimization of variables with a weight of 1.0, just because this could have been set by the simplifier.

comment:4 Changed 5 years ago by mkommend

r8828: Allowed constant optimization for variable with a weight of 1.0 and made the constant optimization thread-safe (access to evaluated node results).

comment:5 Changed 5 years ago by mkommend

r8844: Added constant optimization analyzer.

comment:6 Changed 5 years ago by mkommend

r8845: Corrected access modifiers in cloning and storable ctor of ConstantOptimizationAnalyzer.

comment:7 Changed 5 years ago by mkommend

r8849: Added code to clean up the state of the ConstantOptimizationAnalyzer.

comment:8 Changed 5 years ago by mkommend

r8893: Added median value to the datatable containing the constant optimization improvments.

comment:10 Changed 5 years ago by mkommend

r8938: Removed obsolete code in SymbolicRegressionConstantOptimizationEvaluator.

comment:11 Changed 4 years ago by mkommend

  • Owner changed from mkommend to gkronber
  • Status changed from accepted to reviewing

r8976: Minor code clean up in constant optimization analyzer.

comment:14 follow-up: Changed 4 years ago by gkronber

SymbolicRegressionConstantOptimizationEvaluator line 134: shouldn't we call const opt evaluator here? In the exception handlers it would be better to return originalQuality?

Last edited 4 years ago by gkronber (previous) (diff)

comment:15 Changed 4 years ago by gkronber

  • Owner changed from gkronber to mkommend

comment:16 Changed 4 years ago by mkommend

r8984: Returned original quality in case of an exception in the SymbolicRegressionConstantOptimizationEvaluator.

comment:17 in reply to: ↑ 14 Changed 4 years ago by mkommend

Replying to gkronber:

SymbolicRegressionConstantOptimizationEvaluator line 134: shouldn't we call const opt evaluator here?

In the evaluate method (line 134) the pearson R² evaluator is used on purpose instead of the const opt evaluator, because this method is used to get the quality of evolved models on different partitions of the dataset (e.g., best validation model).

comment:18 Changed 4 years ago by mkommend

  • Owner changed from mkommend to gkronber

comment:19 Changed 4 years ago by gkronber

r8985: comment about call to R² evaluator in const-opt evaluator

comment:20 Changed 4 years ago by gkronber

  • Status changed from reviewing to readytorelease

comment:21 Changed 4 years ago by swagner

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