How to introduce constraints to my objective function (Genetic Algorithm)

3 ビュー (過去 30 日間)
Azime Beyza Ari
Azime Beyza Ari 2022 年 3 月 25 日
コメント済み: Azime Beyza Ari 2022 年 3 月 26 日
Hello everyone,
I am trying to solve a optimization problem with constraints using genetic algorithm solver. I tried to write my constraints by looking over the documentation matlab provides but The results i am getting are not consistent with the results i expect. (My answer should be around 5k or 6k but the answer i am getting changes around 13k to 18k) I suspect that the solver does not recognizes my constraints. Here i will attach the file i am working on. If you can have a look and suggest a solution i will be very happy.
Thank you in advance.
Best,
Beyza.

採用された回答

Alan Weiss
Alan Weiss 2022 年 3 月 25 日
You have at least two errors that keep the constraint function from working properly. First, this section needs a loop such as for i = 1:something:
function [c] = constraintFunction(x,yj,p, M , r, aii, Kj)
if ci(i,1) > 0
xij(i,j) = 1;
else
xij(i,j) = 0;
end
Second, you never included this constraint function in the constraints in your script. It is just hanging there, never called. Put it in as a nonlinear constraint. Click the "Nonlinear constrants" button and then include the function. And if you mean for some variables to be integers, put that in as constraints as well.
Alan Weiss
MATLAB mathematical toolbox documentation
  1 件のコメント
Azime Beyza Ari
Azime Beyza Ari 2022 年 3 月 26 日
Thank you!
I knew i was doing something wrong (Or was not doing it). I did include my constraints to my code thanks to your advice. Now i have other errors but i will open an another question for it!

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by