Free cookie consent management tool by TermsFeed Policy Generator

Opened 7 years ago

Closed 7 years ago

#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 7 years ago.
TestScript for constant optimization

Download all attachments as: .zip

Change History (18)

comment:1 Changed 7 years ago by gkronber

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

comment:2 Changed 7 years ago by gkronber

r14349: added support for lagged variables to constants optimizer

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

comment:3 Changed 7 years ago by gkronber

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

comment:4 Changed 7 years 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 7 years ago by mkommend

TestScript for constant optimization

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

comment:6 Changed 7 years 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 7 years 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 7 years 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 7 years 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 7 years 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 7 years 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 7 years ago by gkronber

Thanks for re-checking & fixing this.

comment:13 Changed 7 years ago by gkronber

  • Status changed from reviewing to readytorelease

comment:14 Changed 7 years ago by mkommend

r14951: Code clean up in ConstantOptimization.

comment:15 Changed 7 years 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 7 years ago by gkronber (previous) (diff)

comment:16 Changed 7 years ago by gkronber

r15136: merged r14946 and r14951 from trunk to stable

Version 0, edited 7 years ago by gkronber (next)

comment:17 Changed 7 years ago by gkronber

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