#2686 closed feature request (done)

Support for time lags in constant optimizer

Reported by: gkronber Owned by: gkronber
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 16 months ago.
TestScript for constant optimization

Download all attachments as: .zip

Change History (18)

comment:1 Changed 18 months ago by gkronber

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

comment:2 Changed 18 months ago by gkronber

r14349: added support for lagged variables to constants optimizer

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

comment:3 Changed 18 months ago by gkronber

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

comment:4 Changed 18 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 16 months ago by mkommend

TestScript for constant optimization

comment:5 follow-up: Changed 16 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 16 months ago by mkommend (previous) (diff)

comment:6 Changed 16 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 14 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 ; follow-up: Changed 13 months 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 13 months 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.

comment:10 in reply to: ↑ 8 Changed 12 months ago by mkommend

Replying to 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.

This is not true. The script still does not give an R² value of ~ 1 when variable weights are tuned.

comment:11 Changed 12 months ago by mkommend

  • Owner changed from mkommend to gkronber

r14946: Fixed updating of constants / variable weights if lagged variables are used within constants optimization.

comment:12 Changed 12 months ago by gkronber

Thanks for re-checking & fixing this.

comment:13 Changed 12 months ago by gkronber

  • Status changed from reviewing to readytorelease

comment:14 Changed 12 months ago by mkommend

r14951: Code clean up in ConstantOptimization.

comment:15 Changed 12 months ago by gkronber

r14962 merged r14349 and r14358 from trunk to stable (NOTE: note completely merged to stable yet)

Remaining changes should be merged after r14826 in #2650.

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

comment:16 Changed 10 months ago by gkronber

r15136: merged r14946 and r14951 from trunk to stable (all changesets merged)

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

comment:17 Changed 10 months ago by gkronber

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