Solving a MINLP Optimization Problem
59 views (last 30 days)
I have a mixed integer nonlinear optimization problem containing "log" function, and by the way it's convex if we relaxed the integer variables.
Can I solve it using Matlab Optimization toolbox efficiently or there will be some issues?
Is there a difference in solving such optimization problems if I used problem-based and used solver-based approaches?
Alan Weiss on 10 Aug 2021
There are two MINLP solvers in Global Optimization Toolbox: ga and surrogateopt. Either should work for you. The surrogateopt solver is primarily for time-consuming functions. Both solvers work best on relatively low-dimensional problems, up to 100 variables or so, but there are no built-in limits, so you can try larger problems.
There is also an example showing how intlinprog can sometimes be used iteratively to solve otherwise convex mixed-integer problems: Mixed-Integer Quadratic Programming Portfolio Optimization: Problem-Based or the nearly identical Mixed-Integer Quadratic Programming Portfolio Optimization: Solver-Based.
MATLAB mathematical toolbox documentation