-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Good afternoon,
I have an objective function for which no gradient is available. So I am currently testing three derivative-free, local optimizers available in the nlopt-package: COBYLA BOBYQA Sbplex via the c++-Wrapper. All three work quite well only with small differences on my function, so everything is great. But: After a code refactoring, COBYLA computes a different final result from before. The other two algorithms work fine again. To be precise: The input consists of e.g x=11 values (11 dimensions), each of them constrained by lower and upper bonds. When I observe the development of these 11 values over the course of the optimization, I can observe the same consecutive changes in x until step 97. Based on the same score for the same x, nlopt-COBYLA chooses diverging changes in step 98 for x in the fifth etc. digit after the dot. (See example below.) Thus, I checked through the pseudo-random step in nlopt-COBYLA and nlopt seems to compute a fully deterministic seed for this step. * n : number of variables (>=0) * m : number of constraints (>=0) .. and both have a fixed size - -> seed = n+m = 11 + 22 (or sth. similar) in both tries. Recompiling nlopt with a seed of 12345 resulted in the same behavior. I was not able to determine another random choice in COBYLA by Powell. Did I misunderstand how choices in COBYLA are made in general or how this algorithm was tweaked in nlopt? I would be grateful if somebody on this list could enlighten me. Thanks & greets Agnes Example: Software V1: X 0.0749661 0.0192328 -0.053719 -0.0263031 0.0175889 0.00720839 0.0183608 0.0284882 0.0251937 -0.00431795 -0.00957517 Scores: -66.2673 -80.9919 14.7247 97 (#steps) X 0.0745738 0.0192303 -0.053562 -0.0264908 0.0176959 0.00696263 0.0183886 0.0286858 0.0253243 -0.00428986 -0.00971649 Scores -66.2706 -80.9935 14.7229 98 (#steps) Software V2: X 0.0749661 0.0192328 -0.053719 -0.0263031 0.0175889 0.00720839 0.0183608 0.0284882 0.0251937 -0.00431795 -0.00957517 Scores -66.2673 -80.9919 14.7247 97 (#steps) X 0.0745132 0.0192907 -0.0535049 -0.0260577 0.017551 0.00691121 0.0182708 0.028576 0.0253385 -0.00429313 -0.00966163 Scores -66.2697 -80.9926 14.7229 98 (#steps) - -- Dipl.-Inform. (Bioinf.) Agnes Meyder 040-42838-7324 -- [email protected] Research Group for Computational Molecular Design Center for Bioinformatics Hamburg -- http://www.zbh.uni-hamburg.de -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.15 (GNU/Linux) Comment: Using GnuPG with undefined - http://www.enigmail.net/ iQEcBAEBAgAGBQJQ/8S7AAoJEBlObuxFIo7t+kYH/jWj/Sz76kQMPtTEXGI2DyGb kqxqAXauq5VDj218UAStm4nz15wVxdWZtDJ3fZl3h2lzfcGK1wV2y3VFxgRF7QPr i30fe1kV+mSE5XvjHAxJfgikCWvU7DeFu06867WvcYLcJkrjppw3ftgJOhEtgyTK qlr0Hw5Gfdm3OMn+wHtHoehJqiyWzGy31bF0bwEp1jLTDvfd8d1SA49nrYwLLbmf UFi2l180jWkI/wop0xbtMrrxyYNWH9F5tg1hZ3sYxSUWvExyJEG4C+W9UyLZY+9X TVoD/d4sbn96bPyA7Kq7mN2ilvE9XRR/nOK6VzjgkdJmZEqdq0rkDUSTEQ2XLCs= =tswd -----END PGP SIGNATURE----- _______________________________________________ NLopt-discuss mailing list [email protected] http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/nlopt-discuss
