In fmincon function, how can I impose non-strict constraints?

3 views (last 30 days)
In fmincon, I know MATLAB can set constraints like a+b<=1 and a<=1, but what about a+b<1 and a<1?

Accepted Answer

Alan Weiss
Alan Weiss on 24 Feb 2016
There is a tolerance called TolCon that gives the wiggle room for constraint violation. So, if you have options such as
options = optimoptions('fmincon');
then, similar to Walter's suggestion, you can try to enforce
a + b <= 1 - options.TolCon; % in a linear inequality constraint
a <= 1 - options.TolCon; % in a bound
Alan Weiss
MATLAB mathematical toolbox documentation

More Answers (2)

Torsten
Torsten on 24 Feb 2016
Strict constraints (like a<1 or a+b<1) don't make sense in optimization.
Usually, you can only guarantee solutions over compact (i.e. closed and bounded) feasible regions.
Conditions like a<1 or a+b<1 lead to open (i.e. non-closed) regions.
Best wishes
Torsten.

Walter Roberson
Walter Roberson on 24 Feb 2016
a+b <= 1-eps
a <= 1-eps

Tags

Community Treasure Hunt

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

Start Hunting!