chiark / gitweb /
summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
stevenj [Thu, 6 Sep 2007 17:26:40 +0000 (13:26 -0400)]
stevenj [Thu, 6 Sep 2007 15:43:35 +0000 (11:43 -0400)]
use clever O(1) algorithm from Knuth to find rightmost zero bit (I doubt it's significantly faster, but it sure is cooler)
darcs-hash:
20070906154335-c8de0-
7d3f930d12b00a5d71a0406605cace694195e620.gz
stevenj [Thu, 6 Sep 2007 13:29:58 +0000 (09:29 -0400)]
include "nlopt.h", not <nlopt.h>
darcs-hash:
20070906132958-c8de0-
ee487c0dfb8390814acee28d48e57912b08195a5.gz
stevenj [Thu, 6 Sep 2007 02:00:18 +0000 (22:00 -0400)]
stevenj [Thu, 6 Sep 2007 01:54:28 +0000 (21:54 -0400)]
move redblack trees into libutil so they can be shared
darcs-hash:
20070906015428-c8de0-
47309e79f9b9610b7bd7b3c1098879d49fcc8eef.gz
stevenj [Thu, 6 Sep 2007 01:50:46 +0000 (21:50 -0400)]
allow NULL to be passed to sobol routines to fall back on pseudo-random
darcs-hash:
20070906015046-c8de0-
6a3da0b8e0b19d904995ceae6c5d798568a3c301.gz
stevenj [Thu, 6 Sep 2007 00:24:20 +0000 (20:24 -0400)]
fixed documentation to reflect latest algs.
darcs-hash:
20070906002420-c8de0-
52dc2c7d5e47001fa7f88af3e0270932f75c821d.gz
stevenj [Wed, 5 Sep 2007 21:29:10 +0000 (17:29 -0400)]
rename sobolseq.h to soboldata.h
darcs-hash:
20070905212910-c8de0-
d17e6db5865b4aa93ec15b6521e348e647e90abf.gz
stevenj [Wed, 5 Sep 2007 21:25:43 +0000 (17:25 -0400)]
stevenj [Wed, 5 Sep 2007 21:23:56 +0000 (17:23 -0400)]
stevenj [Wed, 5 Sep 2007 21:14:05 +0000 (17:14 -0400)]
bug fix - missing 0's in Sobol ... now matches published test integral results to 1111 dimensions
darcs-hash:
20070905211405-c8de0-
d3fc1fd6834a2ba40bfa40e10c652c4faa7316ed.gz
stevenj [Wed, 5 Sep 2007 18:24:12 +0000 (14:24 -0400)]
added test integrand, sobol_skip, checked whether lookup table makes rightzero32 faster (it doesn't)
darcs-hash:
20070905182412-c8de0-
2ff5c41960f9e7526831cfced27be56690a74888.gz
stevenj [Wed, 5 Sep 2007 17:27:46 +0000 (13:27 -0400)]
stevenj [Wed, 5 Sep 2007 17:23:58 +0000 (13:23 -0400)]
added sobol api to nlopt-util.h, split data into separate file
darcs-hash:
20070905172358-c8de0-
3b172cc335ef8a3705a34b7bb5b087100ded5d8e.gz
stevenj [Wed, 5 Sep 2007 00:19:14 +0000 (20:19 -0400)]
initial cut at Sobol sequence generator
darcs-hash:
20070905001914-c8de0-
9d8968118bcc77a63b44d8d56ebc54b24d5b2ed5.gz
stevenj [Tue, 4 Sep 2007 16:32:36 +0000 (12:32 -0400)]
added -C option to force contraints to be active
darcs-hash:
20070904163236-c8de0-
33897b41afe8d8fd4520b02c19100efeb3193d64.gz
stevenj [Tue, 4 Sep 2007 03:19:15 +0000 (23:19 -0400)]
added TNEWTON (pnet) code from luksan
darcs-hash:
20070904031915-c8de0-
c146f3a4b28f90444c299eb79f73e94b2d22586d.gz
stevenj [Tue, 4 Sep 2007 03:00:49 +0000 (23:00 -0400)]
stevenj [Tue, 4 Sep 2007 02:15:50 +0000 (22:15 -0400)]
support function handles from Matlab
darcs-hash:
20070904021550-c8de0-
49623cb50c1970965af5b72315b656c38025c367.gz
stevenj [Tue, 4 Sep 2007 01:37:14 +0000 (21:37 -0400)]
stevenj [Tue, 4 Sep 2007 01:35:45 +0000 (21:35 -0400)]
stevenj [Tue, 4 Sep 2007 01:20:15 +0000 (21:20 -0400)]
stevenj [Mon, 3 Sep 2007 21:25:23 +0000 (17:25 -0400)]
auto updating of constant .m files
darcs-hash:
20070903212523-c8de0-
bcc71ab76958e9ce4f845ed01a649bab501de705.gz
stevenj [Mon, 3 Sep 2007 20:42:10 +0000 (16:42 -0400)]
added PLIS variable-metric methods
darcs-hash:
20070903204210-c8de0-
428d0689b27e43df180260d820e68000db8bdc3a.gz
stevenj [Mon, 3 Sep 2007 20:32:24 +0000 (16:32 -0400)]
added original .for files; this will make it easier to diff the changes if upstream changes
darcs-hash:
20070903203224-c8de0-
be15e46393143c4d1c400ecacef548ff1fb4a01d.gz
stevenj [Mon, 3 Sep 2007 20:05:05 +0000 (16:05 -0400)]
stevenj [Mon, 3 Sep 2007 20:01:21 +0000 (16:01 -0400)]
got plip_ to compile, basic changes for NLopt, no wrapper yet
darcs-hash:
20070903200121-c8de0-
75721dba7e4c5dd4d21602f8335573d8bd81f670.gz
stevenj [Mon, 3 Sep 2007 19:46:01 +0000 (15:46 -0400)]
stevenj [Mon, 3 Sep 2007 19:45:32 +0000 (15:45 -0400)]
added initial f2c conversions of plip and pnet
darcs-hash:
20070903194532-c8de0-
725aba9fd7b6e3d4cba7c7f0f89f051a7fa2e60e.gz
stevenj [Mon, 3 Sep 2007 19:38:15 +0000 (15:38 -0400)]
added luksan/ directory, which will eventually contain several routines written by Prof. Luksan and made available under the LGPL. currently, I've converted the PLIN.FOR subroutine, which is a reimplementation of the LBFGS algorithm (and removed the lbfgs/ directory, since the code turns out to be non-free)
darcs-hash:
20070903193815-c8de0-
7428452045bf7147a8424cbd56af89de2e3efa66.gz
stevenj [Mon, 3 Sep 2007 19:22:07 +0000 (15:22 -0400)]
bug fix in grosenbrock gradient (no wonder StoGO etc. were so bad for this functioon)
darcs-hash:
20070903192207-c8de0-
cef32242ac0bc7308b24d07ae31e2e9e1c6c463a.gz
stevenj [Mon, 3 Sep 2007 15:53:55 +0000 (11:53 -0400)]
rename fmin to minf to avoid conflict with C99 fmin() function
darcs-hash:
20070903155355-c8de0-
573f0e3548646f08a7a2c2c2712375ff69307219.gz
stevenj [Sun, 2 Sep 2007 02:10:52 +0000 (22:10 -0400)]
stevenj [Sun, 2 Sep 2007 01:53:59 +0000 (21:53 -0400)]
stevenj [Sun, 2 Sep 2007 01:40:00 +0000 (21:40 -0400)]
support all termination conditions in praxis
darcs-hash:
20070902014000-c8de0-
62c7656d09bbdf241c57fcce96352d0a67f27e73.gz
stevenj [Sun, 2 Sep 2007 00:55:53 +0000 (20:55 -0400)]
minor bug fixes, praxis now supports maxeval/maxtime/fmin_max
darcs-hash:
20070902005553-c8de0-
36bf93ff122a2ee40cb6f80b748a0b0269170cdb.gz
stevenj [Sun, 2 Sep 2007 00:19:03 +0000 (20:19 -0400)]
dynamic allocation in praxis, pass stop parameter (not used yet)
darcs-hash:
20070902001903-c8de0-
4e82ae47b3eaf665dc3185dc38ff75c6d323a74b.gz
stevenj [Sat, 1 Sep 2007 21:06:25 +0000 (17:06 -0400)]
stevenj [Sat, 1 Sep 2007 20:51:35 +0000 (16:51 -0400)]
added first cut at Praxis, renamed constants
darcs-hash:
20070901205135-c8de0-
23fc5194f42a4bb5c52b8ecb88ab2f404af2907f.gz
stevenj [Thu, 30 Aug 2007 21:09:14 +0000 (17:09 -0400)]
stevenj [Thu, 30 Aug 2007 17:42:13 +0000 (13:42 -0400)]
stevenj [Thu, 30 Aug 2007 03:38:08 +0000 (23:38 -0400)]
stevenj [Thu, 30 Aug 2007 03:01:26 +0000 (23:01 -0400)]
reset age whenever we change a hyperrect
darcs-hash:
20070830030126-c8de0-
b7e915fb8c8e628b8a2eb186e2df4c44b5c634a5.gz
stevenj [Thu, 30 Aug 2007 02:50:59 +0000 (22:50 -0400)]
switch to "standard" DIRECT-L where we only pick one rect for each diameter in the hull, preferring older rects
darcs-hash:
20070830025059-c8de0-
e28f88821842469693ed466eae4669854f36d6f7.gz
stevenj [Thu, 30 Aug 2007 01:58:00 +0000 (21:58 -0400)]
-m option is now relative to exact minimum
darcs-hash:
20070830015800-c8de0-
36f49c5b05115ff4316955525f8f2eceb60122e7.gz
stevenj [Thu, 30 Aug 2007 01:07:20 +0000 (21:07 -0400)]
got rid of buggy f_recenter (Lagrange interpolation isn't guaranteed to be monotonic)
darcs-hash:
20070830010720-c8de0-
19c1e18baffbe16a121a8c968f2c0d2a31f27058.gz
stevenj [Thu, 30 Aug 2007 00:00:41 +0000 (20:00 -0400)]
change MAXDEEP (maxiter) more dynamically
darcs-hash:
20070830000041-c8de0-
33d70f5acd6d321365e0682e49a143b936528f48.gz
stevenj [Wed, 29 Aug 2007 23:49:28 +0000 (19:49 -0400)]
K can be arbitrarily large for rightmost point in hull
darcs-hash:
20070829234928-c8de0-
b0128297e8ddf4c7e169cf2569e7200d55e36572.gz
stevenj [Wed, 29 Aug 2007 23:41:11 +0000 (19:41 -0400)]
support calling both original and new DIRECT code, make direct limits more dynamic, eps != ftol in direct, fixed bugs in convex hull code for identical points
darcs-hash:
20070829234111-c8de0-
2ce2867d6444a75b3434ec6b971c0aafefd3d6b2.gz
stevenj [Wed, 29 Aug 2007 06:19:39 +0000 (02:19 -0400)]
add options to use either original Fortran-derived DIRECT code or new C version, use 1e-4 magic epsilon parameter of Jones, dynamically set max #func evals in direct code and increase defaults, and add another performance hack to cdirect
darcs-hash:
20070829061939-c8de0-
1294a9cc044efa3cb7b13e65aae18b45e18d1237.gz
stevenj [Wed, 29 Aug 2007 05:43:23 +0000 (01:43 -0400)]
fixed comment, added some basic argument checks
darcs-hash:
20070829054323-c8de0-
df6dfb55434e77aa9fb87aa0cdb7f14a516379e5.gz
stevenj [Wed, 29 Aug 2007 05:31:37 +0000 (01:31 -0400)]
return more descriptive error code
darcs-hash:
20070829053137-c8de0-
85589d746420853b8a4b73042e291455539e8801.gz
stevenj [Wed, 29 Aug 2007 05:26:15 +0000 (01:26 -0400)]
stevenj [Wed, 29 Aug 2007 05:24:35 +0000 (01:24 -0400)]
performance hack: exploit the fact that the x coordinates (diameters) of the hull in DIRECT fall into only a few different values (although this may change in future modifications); also, we weren't handling the case of equal (x,y) points correctly in the hull code
darcs-hash:
20070829052435-c8de0-
4d2204875b3f788d8884aa57f55cc76a5907bace.gz
stevenj [Wed, 29 Aug 2007 04:52:01 +0000 (00:52 -0400)]
only check ftol on iterations where fmin decreased; seems to make this stopping condition much more useful
darcs-hash:
20070829045201-c8de0-
241983936b8a9a08b449d4018baa6d6a9d226c22.gz
stevenj [Wed, 29 Aug 2007 04:45:08 +0000 (00:45 -0400)]
saner memory management (and better performance), improved handling of case when no potentially optimal rects are found (choose largest rect with smallest function val, greatly improving many test cases!)
darcs-hash:
20070829044508-c8de0-
635e1db270782d6b6741c27994cdc596c4cdde2c.gz
stevenj [Tue, 28 Aug 2007 16:48:06 +0000 (12:48 -0400)]
changed rect so that (x,y) = (d,f) are in order
darcs-hash:
20070828164806-c8de0-
afc6dd08e3d1e674ed6c4d202d165d2f3ee51994.gz
stevenj [Tue, 28 Aug 2007 04:06:52 +0000 (00:06 -0400)]
stevenj [Tue, 28 Aug 2007 04:03:49 +0000 (00:03 -0400)]
stevenj [Tue, 28 Aug 2007 03:47:29 +0000 (23:47 -0400)]
bug fix in cdirect - handle case where different indices have same (x,y)
darcs-hash:
20070828034729-c8de0-
af82fa8b6d60721808387791951cddc46e154067.gz
stevenj [Mon, 27 Aug 2007 15:14:07 +0000 (11:14 -0400)]
added f2c of Schabel tensor algorithm (still needs to be cleaned up for inclusion in NLopt api)
darcs-hash:
20070827151407-c8de0-
2f9b10f11a797034c8b8731d4eb76e7324eeaf1b.gz
stevenj [Mon, 27 Aug 2007 14:49:28 +0000 (10:49 -0400)]
use red-black tree in cdirect instead of repeatedly resorting ... convex_hull is still O(N), though, and needs to be changed to a dynamic-hull algorithm to reduce the overall complexity below O(N^2), ugh
darcs-hash:
20070827144928-c8de0-
1d7b7b1b20a5f1ca81fc7e9b31a79ee2bd4479c8.gz
stevenj [Sun, 26 Aug 2007 20:53:29 +0000 (16:53 -0400)]
stevenj [Sun, 26 Aug 2007 20:50:11 +0000 (16:50 -0400)]
implemented a couple more division strategies
darcs-hash:
20070826205011-c8de0-
cdd9659e0e0450c88566d5ceeabdbfbc7d04ec26.gz
stevenj [Sun, 26 Aug 2007 20:36:25 +0000 (16:36 -0400)]
bug fix in Gablonsky measure for cdirect
darcs-hash:
20070826203625-c8de0-
e0701d1fb83a9aacfcf1101042106fb22b7c85a2.gz
stevenj [Sun, 26 Aug 2007 14:49:57 +0000 (10:49 -0400)]
added option to StoGO (currently disabled) to use NLopt LBFGS for local minimization instead of StoGO's version
darcs-hash:
20070826144957-c8de0-
e4a51850c52e7b716ab954be83869a5e714de814.gz
stevenj [Sun, 26 Aug 2007 14:47:51 +0000 (10:47 -0400)]
add initial re-implementation of DIRECT (still too slow because convex hull is re-created from scratch each iter)
darcs-hash:
20070826144751-c8de0-
88f748e6b9430e210eac28a0258f5a03389b8865.gz
stevenj [Sat, 25 Aug 2007 19:43:42 +0000 (15:43 -0400)]
use HUGE_VAL instead of 1e6 for "infinity" in DIRECT
darcs-hash:
20070825194342-c8de0-
af10ca4f976f39dd3897e612d4554d1b1c1488f1.gz
stevenj [Sat, 25 Aug 2007 17:34:59 +0000 (13:34 -0400)]
added simple convex test function
darcs-hash:
20070825173459-c8de0-
c8c1a7b35e0a485dbc9dd535fd18fdab7cef9d00.gz
stevenj [Sat, 25 Aug 2007 17:34:33 +0000 (13:34 -0400)]
some rearrangement to allow us to swap in a different local optimizer
darcs-hash:
20070825173433-c8de0-
f7b21720bd8156639b7bae66482d73cff6e57bee.gz
stevenj [Sat, 25 Aug 2007 16:51:55 +0000 (12:51 -0400)]
use nlopt_stopping in StoGO (currently only for maxevals and maxtime)
darcs-hash:
20070825165155-c8de0-
f3a61c73a2e539e9751e4cacfa7fd03d1fe5aeb9.gz
stevenj [Sat, 25 Aug 2007 16:23:49 +0000 (12:23 -0400)]
prevent StoGO from redundant function evaluations
darcs-hash:
20070825162349-c8de0-
10254b27734bc071e6ec849bd333b858e79a6bbf.gz
stevenj [Sat, 25 Aug 2007 16:01:46 +0000 (12:01 -0400)]
recenter coords so that starting guess is utilized by global routines
darcs-hash:
20070825160146-c8de0-
27bd7e71a2e8ddcc6ab8e73c21f05e9e98a5dc8e.gz
stevenj [Sat, 25 Aug 2007 04:09:43 +0000 (00:09 -0400)]
support both randomized and deterministic versions of StoGO
darcs-hash:
20070825040943-c8de0-
dae271fcbf9097b206b94be55369be426b286935.gz
stevenj [Sat, 25 Aug 2007 03:42:29 +0000 (23:42 -0400)]
bug fix in stogo - rm uninitialized read (doesn't change results since result wasn't used, but still...)
darcs-hash:
20070825034229-c8de0-
170b718754d4e4401356876419d6cdb420da9b63.gz
stevenj [Sat, 25 Aug 2007 03:05:26 +0000 (23:05 -0400)]
transpose [*][maxfuncs] arrays to [maxfuncs][*], so that we can grow them dynamically using realloc in the future
darcs-hash:
20070825030526-c8de0-
286b58eb4ca2d434a1ad9a2294ef806ad0df0786.gz
stevenj [Fri, 24 Aug 2007 21:52:20 +0000 (17:52 -0400)]
remove hard-coded limit on number of dimensions from DIRECT
darcs-hash:
20070824215220-c8de0-
0401f9ca597c5fbfacd7e38546a96a705278f283.gz
stevenj [Fri, 24 Aug 2007 21:37:20 +0000 (17:37 -0400)]
clearer constants (but still hard-coded, ugh)
darcs-hash:
20070824213720-c8de0-
bc5d6b07322abcdfa4a992451fd6e6d97c87940e.gz
stevenj [Fri, 24 Aug 2007 21:29:19 +0000 (17:29 -0400)]
label maxfunc and maxdeep clearly
darcs-hash:
20070824212919-c8de0-
22ec8c1354172455716596bd0da168e9954261e5.gz
stevenj [Fri, 24 Aug 2007 21:26:29 +0000 (17:26 -0400)]
stevenj [Fri, 24 Aug 2007 21:15:57 +0000 (17:15 -0400)]
supported more stopping criteria in subplex (still a little too pessimistic)
darcs-hash:
20070824211557-c8de0-
f0f5566b654f5fd185b9459652ef0ea638d58707.gz
stevenj [Fri, 24 Aug 2007 17:49:12 +0000 (13:49 -0400)]
stevenj [Fri, 24 Aug 2007 17:27:32 +0000 (13:27 -0400)]
stevenj [Fri, 24 Aug 2007 17:24:59 +0000 (13:24 -0400)]
stevenj [Fri, 24 Aug 2007 16:54:54 +0000 (12:54 -0400)]
stevenj [Fri, 24 Aug 2007 16:36:19 +0000 (12:36 -0400)]
stevenj [Fri, 24 Aug 2007 16:35:15 +0000 (12:35 -0400)]
added common random-number generation and timer utilities
darcs-hash:
20070824163515-c8de0-
a83acc3d0d58d0e818fa27585dcefbc0c6a578b4.gz
stevenj [Fri, 24 Aug 2007 14:30:55 +0000 (10:30 -0400)]
support for bound constraints in NLOPT_LOCAL_SUBPLEX
darcs-hash:
20070824143055-c8de0-
048dcf3945ed5dfeba4bbc35ef754bc4459caa3b.gz
stevenj [Fri, 24 Aug 2007 13:37:27 +0000 (09:37 -0400)]
support both Jones and Gablonsky direct variants
darcs-hash:
20070824133727-c8de0-
7bc31c4491e8d18853f961ed48aba7c4c6c3ab77.gz
stevenj [Fri, 24 Aug 2007 13:10:28 +0000 (09:10 -0400)]
got MIT-license permission from K. Madsen, author of StooGO
darcs-hash:
20070824131028-c8de0-
5431d22d1dc66583f44192b6fac001e5dce42b02.gz
stevenj [Fri, 24 Aug 2007 03:51:20 +0000 (23:51 -0400)]
stevenj [Fri, 24 Aug 2007 03:41:51 +0000 (23:41 -0400)]
stevenj [Fri, 24 Aug 2007 02:53:47 +0000 (22:53 -0400)]
stevenj [Thu, 23 Aug 2007 22:02:38 +0000 (18:02 -0400)]
stevenj [Thu, 23 Aug 2007 20:25:06 +0000 (16:25 -0400)]
include copies of (unpublished) paper and technical report graciously sent to me by K. Madsen
darcs-hash:
20070823202506-c8de0-
6b6c8fd3051839bb40beb3118e7528c38b3bb7eb.gz
stevenj [Thu, 23 Aug 2007 20:17:09 +0000 (16:17 -0400)]
added test program and some test objectives
darcs-hash:
20070823201709-c8de0-
e8894aceee594f8bd61b5d13d85c7ae5d0692dfa.gz
stevenj [Thu, 23 Aug 2007 15:12:41 +0000 (11:12 -0400)]
autoconfiscated, and got to compile
darcs-hash:
20070823151241-c8de0-
892dec20933e93b9811997c9da167f4e2e40e16c.gz
stevenj [Thu, 23 Aug 2007 03:55:44 +0000 (23:55 -0400)]
stevenj [Wed, 22 Aug 2007 22:10:32 +0000 (18:10 -0400)]