Opened 2 years ago

Closed 2 years ago

#2439 closed defect (done)

Remove bugs in LM-BFGS

Reported by: mkommend Owned by: gkronber
Priority: medium Milestone: HeuristicLab 3.3.13
Component: Algorithms.GradientDescent Version: 3.3.12
Keywords: Cc:

Description (last modified by gkronber)

The following bugs were encountered in the LM-BFGS algorithm:

  • Bounds are ignored

    gkronber: BFGS doesn't support bounds. Use an algorithm that supports constraints instead (such as BLEIC in alglib). Also see #2217 for a similar issue in relation with CMAES.

  • Maximization flag is ignored

    fixed with r12794

  • Does not work with the programmable problem, because the operators are not wired to the new encoding
  • Best solution is not saved in the global scope and thus cannot be received by the best scope solution analyzer

    gkronber: I checked this. The point stored in the global scope is already the best solution. This might have been an indirect result of the problem with the maximization flag?

See attached HL file that demonstrates all those bugs.

Attachments (1)

LM-BFGS.hl (92.3 KB) - added by mkommend 2 years ago.
Faulty LM-BFGS configured with a programmable problem

Download all attachments as: .zip

Change History (17)

Changed 2 years ago by mkommend

Faulty LM-BFGS configured with a programmable problem

comment:1 Changed 2 years ago by gkronber

  • Summary changed from Removed bugs in LM-BFGS to Remove bugs in LM-BFGS

comment:2 Changed 2 years ago by gkronber

  • Description modified (diff)

comment:3 Changed 2 years ago by gkronber

  • Description modified (diff)

comment:4 Changed 2 years ago by gkronber

r12794: handle maximization problems correctly in BFGS

comment:5 Changed 2 years ago by gkronber

  • Description modified (diff)

comment:6 Changed 2 years ago by gkronber

  • Description modified (diff)

comment:7 Changed 2 years ago by gkronber

r12795: added wiring code to make BFGS work with programmable problem

comment:8 Changed 2 years ago by gkronber

  • Status changed from new to accepted

comment:9 Changed 2 years ago by gkronber

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

comment:10 Changed 2 years ago by gkronber

r12797 fixed problem in GaussianProcess algorithm after changes in BFGS

comment:11 follow-up: Changed 2 years ago by abeham

By our high standards of scientific rigor, I would encourage you to increase minor version number if the results are not reproducible anymore

comment:12 Changed 2 years ago by gkronber

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

comment:13 in reply to: ↑ 11 Changed 2 years ago by gkronber

Replying to abeham:

By our high standards of scientific rigor, I would encourage you to increase minor version number if the results are not reproducible anymore

Results of old experiments are reproducible even after the changes in this ticket. The comment relates to ticket #2435

comment:14 Changed 2 years ago by gkronber

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

comment:15 Changed 2 years ago by mkommend

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

Reviewed r12794, r12795, and r12797.

comment:16 Changed 2 years ago by gkronber

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

r13053: merged r12794:12795 and r12797 from trunk to stable

Note: See TracTickets for help on using tickets.