Opened 3 years ago

Closed 15 months ago

Last modified 13 months ago

#2866 closed enhancement (done)

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: merged 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 (25)

comment:1 Changed 23 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 22 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 22 months ago by gkronber

  • Version set to branch

comment:4 Changed 22 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 22 months ago by gkronber

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

comment:6 Changed 21 months ago by msemenki

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

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

comment:7 Changed 20 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 20 months ago by gkronber

r16655: converted class HyperbolicTangent for new persistence

comment:9 Changed 20 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 20 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 20 months ago by gkronber

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

comment:12 Changed 20 months ago by gkronber

r16670: bugfixes for r16668

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

comment:13 Changed 19 months ago by bburlacu

r16701: Support hyperbolic tangent in native interpreter.

comment:14 follow-up: Changed 19 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 19 months ago by gkronber

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

comment:16 Changed 19 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 19 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 19 months ago by gkronber

  • Status changed from reviewing to readytorelease

Reviewed r16702.

comment:19 Changed 19 months ago by gkronber

merge together with: #2966

comment:20 in reply to: ↑ 14 Changed 19 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 18 months ago by abeham

  • Keywords mergewith-2966 added

comment:22 Changed 16 months ago by abeham

  • Keywords depends-2520 mergewith-(2958 2915 2966) added; mergewith-2966 removed

comment:24 Changed 16 months ago by mkommend

  • Keywords merged added; depends-2520 mergewith-(2958 2915 2966) removed

r17101: Merge 16656, 16668, 16670, 16701, 16702 into stable

comment:25 Changed 15 months ago by abeham

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

comment:26 Changed 13 months ago by gkronber

r17285: delete branch for closed ticket

Note: See TracTickets for help on using tickets.