mixed binary interger linear programming
Show older comments
i'm trying to minimise the following function f=Sum of (ai*xi+150)*di for i between 1 and 20 were di is a binary number (o or 1) and xi greather or equal to zero subject to both equality and inequality. i'm finding difficult to include the binary numbers di which are multiplying the rest of the function.
many thanks
2 Comments
Matt J
on 28 Jan 2013
xi greather or equal to zero subject to both equality and inequality
And the "equality and inequality" constraints on the xi are all linear?
ahmed-wali
on 28 Jan 2013
Accepted Answer
More Answers (2)
ahmed-wali
on 29 Jan 2013
0 votes
yes they are all linear. without the multiplying binary numbers (di) it will be a strait forward linear programming question.
It might at least be worth a try to enumerate all of the vertices of the feasible set of x, e.g., using
I've sometimes managed to get a tractable result for dimensions up to 20. You know that for each fixed binary vector d, the problem reduces to a linear program in x and a solution must therefore lie at one of the vertices. So, you can search over the vertices exhaustively for a solution.
Furthermore, for each fixed vertex, x, the minimizing binary variables di are easy to get analytically. Each di will be 1 whenever ai*xi+150<0 and 0 otherwise, since only those terms will tend to decrease the objective.
Categories
Find more on Surrogate Optimization in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!