How to introduce constraints to my objective function (Genetic Algorithm)
3 views (last 30 days)
Azime Beyza Ari on 25 Mar 2022
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.
Alan Weiss on 25 Mar 2022
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;
xij(i,j) = 0;
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.
MATLAB mathematical toolbox documentation