Originally posted by: EdKlotz
>
> when I used the matlab optimization toolbox, there is user function in fmincon
>
> But I didn't find the user function in Cplex. Anyone has the experience about it in cplex, or some mix-integer linear programming.
MATLAB's fmincon function minimizes an arbitrary nonlinear function subject to linear constraints.
The only nonlinear functions CPLEX currently optimizes are quadratic ones, so CPLEX's toolkit functions
don't offer an fmincon function at this time. And, certain other nonlinear functions can be formulated as MIPs or secord order cone programs, both of which CPLEX supports. Finally, CPLEX
allows you to approximate nonlinear functions using piecewise linear functions. But, those are easier to formulate using the C++, Java or C# APIs, as you just need to specify the slopes and breakpoints of
the piecewise linear function. In MATLAB, Python or the C API, you need to formulate the piecewise linear functions yourself.
I think you need to assess the nature of the nonlinear functions you wish to solve, then decide
whether to try to make use of CPLEX's faster solver speed but having to reformulate or approximate your nonlinear function, or instead using a method such as MATLAB's fmincon which may not be as fast, but has algorithms more specifically suited for the problems you want to solve.
#CPLEXOptimizers#DecisionOptimization