MATLAB Answers

Mixed Integer (binary) Non-linear problem

19 views (last 30 days)
Mohammad Al ja'idi
Mohammad Al ja'idi on 15 Dec 2020
Answered: Alan Weiss on 15 Dec 2020
Dear all,
I am working on intger (binary) nonlinear problem which is only (0-1) variable, with equality constraint. I am using Genetic Algorithm in order to solve this problem but I got the this error ("GA does not solve problems with integer and equality constraints"), because I have two constraints, the variables solution should be integer and at the same time I have equality constraints.
I got an answer for this question before on the following link:
I reformulated the equality constraints to be as nonequality constraints as the following example, but the result I got is not accurate. Knowing that I have around 10 000 variables in my problem:
3x1 – 2x2 = 5,
create two inequality constraints:
3x1 – 2x2 ≤ 5
3x1 – 2x2 ≥ 5.
To write these constraints in the form A xb, multiply the second inequality by -1:
–3x1 + 2x2 ≤ –5.
How can I solve this problem, and is there any other functions in matlab can help or support this kind of problem (integer nonlinear problem with equality constraint)
Thanks,

  0 Comments

Sign in to comment.

Answers (1)

Alan Weiss
Alan Weiss on 15 Dec 2020
That is way too many variables for ga even if it handled integer equality constraints. I suggest that you would probably be best served by an iterative approach using intlinprog as a subproblem solver. See Mixed-Integer Quadratic Programming Portfolio Optimization: Solver-Based for an example.
Good luck,
Alan Weiss
MATLAB mathematical toolbox documentation

  0 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!