Discrete Optimization
15 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi, is it possible to make an optimization with Matlab using discrete variable? Which kind of function can make it?
Thanks
2 Commenti
Walter Roberson
il 14 Ago 2011
Duplicate is at http://www.mathworks.com/matlabcentral/answers/13640-genetic-algorithm-optimization
Risposte (3)
Walter Roberson
il 10 Nov 2020
ga() and gamultiobj() support discrete variables with general functions.
intlinprog supports discrete variables with matrix instead of function describing the objective.
There is some work with quadratic optimization that I had the impression could handle discrete variables when using Problem Based Optimization, but I did not track down which solver it uses.
3 Commenti
Walter Roberson
il 10 Nov 2020
"Mixed-Integer Quadratic Programming Portfolio Optimization: Problem-Based"
Bruno Luong
il 10 Nov 2020
Modificato: Bruno Luong
il 10 Nov 2020
It's interesting, but sorry it's not a solver. It's an example of how to solve a particular MIQP using relaxation. And this page one can read the warning "While this technique works for this example, it might not apply to different problem or constraint types.'
btw this technique can be well implemented with solver-based approach. This page just uses problem-based for illustration, but it is not a requirement.
It's like saying quadprog is a non-linear solver since newton method solves quadratic subproblem at each step, or mtimes is linear system solver since Gauss-Seidel relaxation method requires matrix-vector multiplication at each step.
MATLAB lacks a real MIQP solver.
PA00
il 14 Ago 2011
Can you expose more your problem? You can use "bintprog" when state variables are "1" or "0" like on or off but the method of optimization always depends on the problem itself and on the way you find to create a function to be minimized.
0 Commenti
Vedere anche
Categorie
Scopri di più su Linear Least Squares in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!