nonlinear integer(boolean) programming problem

Respuestas (1)

Alan Weiss
Alan Weiss el 30 de Jul. de 2020
Editada: Alan Weiss el 30 de Jul. de 2020

0 votos

Is the cost linear in the decision variables? If so, use intlinprog. I assume that you have other constraints that you did not list, such as all variables are positive. All Optimization Toolbox™ solvers minimize; to maximize, use the negative of your cost function.
If the cost cannot be made linear, you can try ga or surrogateopt, which try to minimize nonlinear functions over integer variables.
Alan Weiss
MATLAB mathematical toolbox documentation

3 comentarios

R yan
R yan el 30 de Jul. de 2020
Thank you for your answer. The cost function is already computed and stored in a matrix. The decision variables are binary.
R yan
R yan el 30 de Jul. de 2020
Also the objective function is non-linear.
Alan Weiss
Alan Weiss el 30 de Jul. de 2020
I am not at all sure how to solve this problem efficiently, sorry. I didn't read carefully your problem description at first. Our nonlinear integer solvers do not allow equality constraints, so while you can represent equality constraints as two inequalities, I doubt that the solvers would perform well.
I hope that someone else has better ideas for you.
I could imagine that a greedy search would give a bound that might be not too bad, but this would not be optimal, and would not generalize to an iterative algorithm.
Alan Weiss
MATLAB mathematical toolbox documentation

Iniciar sesión para comentar.

Categorías

Preguntada:

el 30 de Jul. de 2020

Comentada:

el 30 de Jul. de 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by