Skip to content

Add some local optimisers #933

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
MichaelClerx opened this issue Sep 18, 2019 · 1 comment
Closed

Add some local optimisers #933

MichaelClerx opened this issue Sep 18, 2019 · 1 comment

Comments

@MichaelClerx
Copy link
Member

See #684
Would like to prioritise local ones, as we've only got Nelder-Mead so far.

In particular, CMAES optimisations tend to look like this:

Population size: 10
Iter. Eval. Best      Time m:s
0     4      3.215762   0:00.8
1     10     3.033234   0:01.7
2     18     2.656997   0:02.6
3     26     2.393877   0:03.7
20    137    0.43       0:16.5
40    263    0.117      0:28.1
60    364    0.0955     0:38.8
80    461    0.0663     0:49.1
100   581    0.0555     1:02.8 <--- Switch to local method here?
120   716    0.0555     1:18.8
140   848    0.0554     1:38.6
160   990    0.0552     1:55.8
180   1123   0.0549     2:13.2
200   1242   0.0548     2:29.2
220   1359   0.0548     2:47.7
240   1479   0.0548     3:03.1
260   1601   0.0548     3:18.8
280   1711   0.054782   3:33.3
300   1832   0.0548     3:50.1
320   1943   0.0548     4:05.4
340   2038   0.0548     4:18.8
360   2142   0.0548     4:33.1
380   2257   0.0548     4:48.7
400   2376   0.0548     5:04.9
420   2514   0.0548     5:24.3
440   2630   0.0548     5:41.5
460   2764   0.0548     6:00.5
480   2910   0.0548     6:20.1
500   3079   0.0545     6:43.2
520   3242   0.0542     7:06.0
540   3383   0.0542     7:25.6
560   3513   0.0542     7:43.2
580   3656   0.0542     8:02.5
600   3796   0.0542     8:21.7
620   3939   0.0541     8:40.8
640   4062   0.0541     8:57.9
660   4185   0.0541     9:14.8

which suggests that there's some performance benefits to be had from investigating two stage methods (global, then local), hybrid methods (tiny local opt as part of each global iteration), or even just better stopping criteria (#932 )

@MichaelClerx
Copy link
Member Author

Duplicate of #572

@MichaelClerx MichaelClerx marked this as a duplicate of #572 Mar 31, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant