Opened 6 months ago

Last modified 12 days ago

#2686 reviewing feature request

Support for time lags in constant optimizer

Reported by: gkronber Owned by: mkommend
Priority: medium Milestone: HeuristicLab 3.3.15
Component: Problems.DataAnalysis.Symbolic Version: 3.3.14
Keywords: Cc:

Description


Attachments (1)

CoOp Test.hl (5.2 KB) - added by mkommend 4 months ago.
TestScript for constant optimization

Download all attachments as: .zip

Change History (10)

comment:1 Changed 6 months ago by gkronber

  • Owner set to gkronber
  • Status changed from new to accepted

comment:2 Changed 6 months ago by gkronber

r14349: added support for lagged variables to constants optimizer

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

comment:3 Changed 6 months ago by gkronber

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

comment:4 Changed 6 months ago by gkronber

r14358: in the constants optimizer the variable weight must be multiplied to the variable value even when variable weights are not updated by the constants optimizer

Changed 4 months ago by mkommend

TestScript for constant optimization

comment:5 follow-up: Changed 4 months ago by mkommend

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

ConstantOptimization of lagged variables does not work! The issue is that the symbol LaggedVariable is derived from Variable and as a result of using the is operator (check if the type is in the inheritance hierarchy) all lags are always 0. The if block in line 311 is never executed.

Any easy solution would be to switch the if blocks for variable and lagged variable. I haven't performed this change due to refactoring of the CoOp / AutoDiff transformation.

The attached script CoOp Test also illustrates this bug. In the current implementation a R² value of 1 could not be reached and the constants are tuned incorrectly. If the update is performed 0.999999999... is reached.

Last edited 4 months ago by mkommend (previous) (diff)

comment:6 Changed 4 months ago by mkommend

Reviewed r14349 and r14358.

Thanks for r14358. This was a bug in the CoOp.

comment:7 in reply to: ↑ 5 ; follow-up: Changed 2 months ago by gkronber

Replying to mkommend:

ConstantOptimization of lagged variables does not work! The issue is that the symbol LaggedVariable is derived from Variable and as a result of using the is operator (check if the type is in the inheritance hierarchy) all lags are always 0. The if block in line 311 is never executed.

This should be fixed once the factors-branch (#2650) is integrated. After integration of the factors branch this problem should be tested again.

comment:8 in reply to: ↑ 7 Changed 12 days ago by gkronber

Replying to gkronber:

Replying to mkommend:

ConstantOptimization of lagged variables does not work! The issue is that the symbol LaggedVariable is derived from Variable and as a result of using the is operator (check if the type is in the inheritance hierarchy) all lags are always 0. The if block in line 311 is never executed.

This should be fixed once the factors-branch (#2650) is integrated. After integration of the factors branch this problem should be tested again.

I just checked this again and it works now.

comment:9 Changed 12 days ago by gkronber

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

Please set ticket to ready for release if there are no further issues.

Note: See TracTickets for help on using tickets.