chiark / gitweb /
curveopt: try simple, but no good
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 8 Apr 2018 16:15:31 +0000 (17:15 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 8 Apr 2018 16:15:31 +0000 (17:15 +0100)
It seems to just shrink the simplex and then exit.  I think it doesn't
manage to find the narrow trench in configuration space in which
possible improvements lie.

Also tried gsl_multimin_fminimizer_nmsimplex but this is even slower
than siman.  So we will go back to siman now.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
curveopt.py
findcurve.c

index ab27e4458cc98e5fa41b4314229c58e0e07b99a2..5ce8cf7c1e6da88a2e61fae3c9e5b299ac4bc33c 100644 (file)
@@ -48,7 +48,7 @@ class OptimisedCurve():
 
     oc._dbg(repr(fc_input))
 
-    findcurve_epsilon = 0.0001
+    findcurve_epsilon = 1E-10
 
     cl = ['./findcurve', '%d' % (nt+1), '%.18g' % findcurve_epsilon]
     oc._dbg('STARTING FINDCURVE %s' % cl)
index dff770a105423bec8e9e52f5560f9e679874beba..ca3cd8fd4ae76c2ab12ddcd5cdccc7b4e0d1cb6a 100644 (file)
@@ -137,7 +137,7 @@ int main(int argc, const char *const *argv) {
   gsl_vector_set_all(step_size, 0.01);
 
   gsl_multimin_fminimizer *minimiser =
-    gsl_multimin_fminimizer_alloc(gsl_multimin_fminimizer_nmsimplex2, NX);
+    gsl_multimin_fminimizer_alloc(gsl_multimin_fminimizer_nmsimplex2rand, NX);
 
   for (;;) {
     /* NINPUT + 1 doubles: startpoint, epsilon for residual */