GA Optimization - Error Message

Hello.
I have an optimization problem that is to be solved through 3 iteration "t".
Starting from the 2nd iteration, the constraint function follows some conditions.
My problem is that my code runs only for the 1st iteration while for 2 remaining iterations, I always get the error message as indicated by the attached screenshot "Error Message".
Can you anyone help me dealing with and fixing the error I'm having?
Regards.
===============
NB:
Optimization code => OptimCode.m
Constraint Function => ConstFun.m (it calls the 2 functions, Layer_L_Fcn and Layer_U_Fcn to formulate some constraints)
Objective Function => ObjFun.m

 Accepted Answer

C_Geom = [100 - x(7+(t-1)*m); ...
x(2+(t-1)*m)+x(7+(t-1)*m)*cos(deg2rad(x(8+(t-1)*m))) - 9500; ...
x(3+(t-1)*m)+x(7+(t-1)*m)*sin(deg2rad(x(8+(t-1)*m))) - 4500; ...
];
emits 4 non-linear constraints in that case, where-as the other two branches emit 10. The code is expecting that the same number be emitted each time. You should put another 6 zeros on the bottom of that case.

1 Comment

Thanks Walter for your answer.
That really works: starting from the 2nd condition, the sizes of my two constraints have to be the same for my code to run.
Thanks a lot again

Sign in to comment.

More Answers (1)

Matt J
Matt J on 31 Aug 2019
Edited: Matt J on 31 Aug 2019
Execute dbstop if error at the command line
>>dbstop if error
and then re-run the optimization. The code will pause execution where the error has occurred. Go inside your objective function using the Function Call Stack in the DEBUG panel and observe what has caused the error.

8 Comments

Thanks Matt for your answer.
I have followed the steps you mentionned znd it looks like there's an error at line 69 which point to: "rethrow(userFcn_ME)".
Still don't know how to deal with this error: Any advice from your behalf?
I see no such line in your OBJFun.m file. Your OBJfun.m file only has 10 lines.
Try
>> dbstop if caught error
instead.
When Ifollowed your instruction, the "makeSate.m" function poped out.
It is in that function where you can find that line.
But my advice to you was to use the Function Call Stack drop down menu in the image I posted to go to your objective function.
Matt.
I have followed all the steps you have indicated to me and when I opened the Function Call Stack drop down menu, my objective functioned is not part of the dropdown menu. Plus, the erorr points to the "makeSate.m" function (line 69) I have attached in my latest post.
I have made a video that shows all the steps yuou have recommanded. Please find it via this link: OptimCode - Error
Did you try
>> dbstop if caught error
Thanks a lot Matt for your support.
The answer given wy Walter has worked for me.

Sign in to comment.

Categories

Products

Release

R2017a

Community Treasure Hunt

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

Start Hunting!