Package com.cureos.numerics
Class Cobyla
- java.lang.Object
-
- com.cureos.numerics.Cobyla
-
public class Cobyla extends java.lang.Object
Constrained Optimization BY Linear Approximation in Java. COBYLA2 is an implementation of Powell's nonlinear derivative-free constrained optimization that uses a linear approximation approach. The algorithm is a sequential trust-region algorithm that employs linear approximations to the objective and constraint functions, where the approximations are formed by linear interpolation at n + 1 points in the space of the variables and tries to maintain a regular-shaped simplex over iterations. It solves non-smooth NLP with a moderate number of variables (about 100). Inequality constraints only. The initial point X is taken as one vertex of the initial simplex with zero being another, so, X should not be entered as the zero vector.- Author:
- Anders Gustafsson, Cureos AB.
-
-
Constructor Summary
Constructors Constructor Description Cobyla()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static CobylaExitStatus
FindMinimum(Calcfc calcfc, int n, int m, double[] x, double rhobeg, double rhoend, int iprint, int maxfun, boolean[] terminate)
Minimizes the objective function F with respect to a set of inequality constraints CON, and returns the optimal variable array.
-
-
-
Method Detail
-
FindMinimum
public static CobylaExitStatus FindMinimum(Calcfc calcfc, int n, int m, double[] x, double rhobeg, double rhoend, int iprint, int maxfun, boolean[] terminate) throws IllegalActionException
Minimizes the objective function F with respect to a set of inequality constraints CON, and returns the optimal variable array. F and CON may be non-linear, and should preferably be smooth.- Parameters:
calcfc
- Interface implementation for calculating objective function and constraints.n
- Number of variables.m
- Number of constraints.x
- On input initial values of the variables (zero-based array). On output optimal values of the variables obtained in the COBYLA minimization.rhobeg
- Initial size of the simplex.rhoend
- Final value of the simplex.iprint
- Print level, 0 <= iprint <= 3, where 0 provides no output and 3 provides full output to the console.maxfun
- Maximum number of function evaluations before terminating.terminate
- An array of booleans indicating whether to terminate.- Returns:
- Exit status of the COBYLA2 optimization.
- Throws:
IllegalActionException
- If thrown by the cobylb() method.
-
-