How to express a constraint with fmincon

1 view (last 30 days)
John
John on 11 Oct 2014
Commented: John on 13 Oct 2014
I want to use fmincon and i have this constraint:
0<x(1)<5
0<x(2)<5
0<x(3)<x(4)
0<x(4)<1
I use this syntax:
x0=[ 1 1 0.2 0.5];
lb=[0 0 0 0];
ub=[5 5 ? 1];
x=fmincon(fun,x0,[],[],[],[],lb,ub);
How can i express x(3)<x(4)?

Accepted Answer

Matt J
Matt J on 12 Oct 2014
Edited: Matt J on 12 Oct 2014
Using linear inequalities
A=[0 0 1 -1];
b=0;
lb=[0 0 0 0];
ub=[5 5 inf 1];
x=fmincon(fun,x0,A,b,[],[],lb,ub);
  3 Comments
Matt J
Matt J on 12 Oct 2014
Edited: Matt J on 12 Oct 2014
No, I can't see how that would make the problem infeasible. What happened when you tried it?
John
John on 13 Oct 2014
fmincon failed but i used patternsearch instead (with the same constraints) and it worked.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!