chiark / gitweb /
put source code into src subdirectory
[nlopt.git] / src / algs / cobyla / README.orig
1 # COBYLA : constrained optimization by linear approximation
2 # Version 1.1
3 # Copyright (c) 1992, Michael J. D. Powell (M.J.D.Powell@damtp.cam.ac.uk)
4 # Copyright (c) 2004, J.S. Roy (js@jeannot.org)
5 # See the LICENSE file for copyright information.
6 # $Jeannot: README,v 1.7 2004/04/18 14:04:20 js Exp $
7
8 This software is a C version of COBYLA2, a contrained optimization by linear
9 approximation package developed by Michael J. D. Powell in Fortran.
10
11 The original source code can be found at :
12 http://plato.la.asu.edu/topics/problems/nlores.html
13
14 Reference article for the method: Powell, J.M.D. (1992), "A Direct Search
15 Optimization Method that Models the Objective and Constraint Functions by Linear
16 Interpolation", DAMTP/NA5, Cambridge, England.
17
18 This package was initially built by J.S. Roy to ease integration into SciPy.
19 See: http://www.scipy.org/
20 Many thanks to Michael J. D. Powell for allowing this to happen !
21
22 This software, a derivative free non-linear optimizer, aims at minimizing the
23 value of a nonlinear function subject to nonlinear constraints. It requires to
24 be able to evaluate the function and the value of the constraints.
25
26 COBYLA will try to make all the values of the constraints positive.
27 So if you want to input a constraint j such as variable x[i] <= MAX, set:
28   constraint[j] = MAX - x[i]
29
30 See the comments in cobyla.c for more details.
31
32 This software has been converted from the Fortran into C and provides the
33 following modifications :
34 - reentrancy, no global variables or functions ;
35 - ability to pass a pointer to the function to be optimized (to provide
36   access to constants) ;
37 - ability to end the minimization at any time ;
38 And other small changes.
39
40 The last version (and other software) is avalaible at the URL :
41 http://www.jeannot.org/~js/code/index.en.html
42
43 A Python interface module is also provided.
44
45 Contents :
46 - cobyla.c : Source
47 - cobyla.h : Header, and API documentation
48 - LICENSE : License and copyright information
49 - HISTORY : Release history
50 - README : This file
51 - example.c : A simple example
52 - Makefile : Make file used to build the examples
53 - moduleCobyla.c : the source of the python module
54 - cobyla.py : the python module wrapper
55 - example.py : an example for the python module
56 - setup.py : the python installer
57
58 Use is described in cobyla.h. For more information, see the example.
59 The example can be built and executed by doing :
60   make test
61
62 You may need to adjust the Makefile before building cobyla.
63
64 To install the module in the current directory, use:
65  python setup.py build_ext --inplace
66 To test it, execute:
67   python cobyla.py
68 To install it globaly, use:
69  python setup.py install
70
71 If you make use of this software, or if you make modifications to it (for a
72 specific platform for example), you are encouraged to contact the author of
73 this Fortran to C conversion at the following email : js@jeannot.org
74 Thanks !