Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0000822 [ALGLIB] Optimization minor have not tried 2018-08-20 17:49 2018-12-27 18:12
Reporter SergeyB View Status public  
Assigned To SergeyB
Priority normal Resolution fixed  
Status resolved   Product Version
Summary 0000822: FIXED: gradient checking functionality in nonlinear optimizers does not handle scaling properly
Description === ORIGINAL REPORT BY USER ===
Problem: When I run minlbfgssetgradientcheck(state, 1e-4) to verify that the numerical gradient is accurate enough, I only get a good result when the scale is set to 1 for each variable. If I first set the scale the way I think is desirable using minlbfgssetscale(state, s), I always get the -7 status. My hypothesis is that the gradient check does not take the scale into account properly. More specifically, I think that the line

 

    if( !derivativecheck(state->fm1, state->fp1, state->fm2, state->fp2, state->f, state->g.ptr.p_double[i], 2*state->teststep, _state) )

 

should be:

 

    if( !derivativecheck(state->fm1, state->fp1, state->fm2, state->fp2, state->f, state->g.ptr.p_double[i], 2*state->teststep * state->s.ptr.p_double[i], _state) )

 

to take the scaling properly into account.

=== SOLUTION ===

Switched everything to new OptGuard API which has this error fixed.
Additional Information
Programming language Unspecified
Attached Files

- Relationships

There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2018-08-20 17:49 SergeyB New Issue
2018-08-20 17:49 SergeyB Status new => assigned
2018-08-20 17:49 SergeyB Assigned To => SergeyB
2018-08-20 17:49 SergeyB Programming language => Unspecified
2018-12-24 16:57 SergeyB Summary gradient checking functionality in nonlinear optimizers does not handle scaling properly => FIXED: gradient checking functionality in nonlinear optimizers does not handle scaling properly
2018-12-24 16:57 SergeyB Description Updated
2018-12-24 16:57 SergeyB Status assigned => resolved
2018-12-24 16:57 SergeyB Fixed in Version => 3.15.0
2018-12-24 16:57 SergeyB Resolution open => fixed
2018-12-27 18:12 SergeyB Category General => Optimization


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker