Mixed Integer (binary) Non-linear problem

조회 수: 3 (최근 30일)
Mohammad Al ja'idi
Mohammad Al ja'idi 2020년 12월 15일
답변: Alan Weiss 2020년 12월 15일
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,

답변 (1개)

Alan Weiss
Alan Weiss 2020년 12월 15일
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

카테고리

Help CenterFile Exchange에서 Genetic Algorithm에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by