How to skip paretosearch iteration

3 views (last 30 days)
Volodymyr Rodin
Volodymyr Rodin on 4 Jul 2019
Commented: Gifari Zulkarnaen on 26 Feb 2020
Hi everyone,
I am using paretosearch for multi-objective optimization based on another program output.
However, some certain values of variables, that I am optimizing may cause 0 or a blank result of the function.
Can I somehow skip these iterations in further analysis or I just need to make boundaries tighter?
Best wishes,
Volodymyr Rodin

Answers (1)

Gifari Zulkarnaen
Gifari Zulkarnaen on 26 Feb 2020
In the objective function, you can put a large penalty or result to make it like a bad result, so pattern search won't consider it and move to next step. For example:
function fval = objective(x)
program_output = function_to_call_your_program(x);
if iszero(program_output) | isempty(program_output)
fval = 1000; % large value
else
fval = program_output;
end
end
  2 Comments
Volodymyr Rodin
Volodymyr Rodin on 26 Feb 2020
Hi,
That's actually what I did to continue optimization.
Thanks, for reply.
Gifari Zulkarnaen
Gifari Zulkarnaen on 26 Feb 2020
There is a "Revival" badge for answering question more than a month old. So I looked around for an unanswered question and came to yours for the badge. I didn't expect you would even check :D

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!