Opened 18 months ago

Last modified 2 months ago

#2866 readytorelease enhancement

Hyperbolic functions for symbolic regression

Reported by: bwerth Owned by: gkronber
Priority: medium Milestone: HeuristicLab 3.3.16
Component: Problems.DataAnalysis.Symbolic Version: trunk
Keywords: mergewith-2966 Cc: gkronber@heuristiclab.com, maffenze@heuristiclab.com

Description

Since the integrals of some hyperbolic functions are already included but not the functions themselves, and the hyperbolic tangent / logistic function is a widely used symbol in regression, they should be made available for non-linear/symbolic-regression.

Change History (21)

comment:1 Changed 7 months ago by gkronber

  • Cc gkronber@heuristiclab.com maffenze@heuristiclab.com added
  • Owner changed from bwerth to msemenki
  • Status changed from new to assigned

Please see the changes that were necessary for the integration of Abs(), AQ(), cube() and cuberoot() in ticket #2915 and add tanh() as a new symbol for symbolic regression.

comment:2 Changed 6 months ago by msemenki

  • Owner changed from msemenki to gkronber
  • Status changed from assigned to reviewing

r16375: Add support for hyperbolic tangent symbol.

comment:3 Changed 6 months ago by gkronber

  • Version set to branch

comment:4 Changed 6 months ago by gkronber

I reviewed the changes in r16375.

Please, also add support for the new symbol to the NativeInterpreter, BatchedInterpreter, and TreeToAutoDiffTermConverter.

comment:5 Changed 6 months ago by gkronber

  • Owner changed from gkronber to msemenki
  • Status changed from reviewing to assigned

comment:6 Changed 5 months ago by msemenki

Support of new symbol to the BatchedInterpreter and TreeToAutoDiffTermConverter has been added in r16531

Last edited 5 months ago by msemenki (previous) (diff)

comment:7 Changed 4 months ago by gkronber

r16654: merged r16364:16653 from trunk to branch to prepare for trunk reintegration (resolving conflicts in the project file)

comment:8 Changed 4 months ago by gkronber

r16655: converted class HyperbolicTangent for new persistence

comment:9 Changed 4 months ago by gkronber

  • Owner changed from msemenki to gkronber
  • Status changed from assigned to reviewing
  • Version changed from branch to trunk

r16656: merged r16375, r16531, r16655 from branch to trunk (using "Merge two different trees" because I was not able to automatically merge changesets)

comment:10 Changed 4 months ago by gkronber

@msemenki: if you have further local changes for the branch in your working copy please commit to the branch so we can merge remaining changes to the trunk. I'm going to delete the branch once the changes are merged to stable.

comment:11 Changed 4 months ago by gkronber

r16668: added support for tanh to the remaining interpreters (native is missing)

comment:12 Changed 4 months ago by gkronber

r16670: bugfixes for r16668

Last edited 3 months ago by gkronber (previous) (diff)

comment:13 Changed 3 months ago by bburlacu

r16701: Support hyperbolic tangent in native interpreter.

comment:14 follow-up: Changed 3 months ago by mkommend

I have accidentally tested this new symbol yesterday because I have modeled a problem with all trigonometric functions enabled and was not aware that the hyperbolic tangent is already included. An issue exists that the excel exporter does not work. It exits without producing a file, displaying an error or an exception if a model containing a hyperbolic tangent should be exported.

comment:15 Changed 3 months ago by gkronber

Ok, we should check all formatters / exporters. Should be straight-forward to add tanh.

comment:16 Changed 3 months ago by bburlacu

r16702: Add tanh to all formatters except the TSQLExpressionFormatter, since TSQL does not have a TANH function (could be approximated but ugly).

comment:17 Changed 3 months ago by gkronber

Reviewed r16701. The only minor comment I have is that the macro hl_inv(x) = 1./x can be improved to 1./(x)

comment:18 Changed 3 months ago by gkronber

  • Status changed from reviewing to readytorelease

Reviewed r16702.

comment:19 Changed 3 months ago by gkronber

merge together with: #2966

comment:20 in reply to: ↑ 14 Changed 3 months ago by gkronber

Replying to mkommend:

I have accidentally tested this new symbol yesterday because I have modeled a problem with all trigonometric functions enabled and was not aware that the hyperbolic tangent is already included. An issue exists that the excel exporter does not work. It exits without producing a file, displaying an error or an exception if a model containing a hyperbolic tangent should be exported.

I tested all formatters, interpreters and the Excel export after r16702 and found no more issues.

comment:21 Changed 2 months ago by abeham

  • Keywords mergewith-2966 added
Note: See TracTickets for help on using tickets.