How to constrain fmincon unknowns to itself
3 views (last 30 days)
Show older comments
I am attempting to use fmincon to solve a problem of multiple unknowns.
unknowns = fmincon(@(x)fun(x),initial,[],[],[],[],lb,ub)
I need four of the unknowns to be constrained such that
(unknowns(1) + unknowns(2)) < (unknowns(3) + unknowns(4))
I cannot hardcode this constraint into the upper and lower bounds of the problem, I was wondering if there was a way to implement it with the other options / nonlinear constraints?
Thanks for any input.
0 Comments
Accepted Answer
Alan Weiss
on 29 Oct 2021
Or maybe with linear constraints:
A = [1 1 -1 -1];
b = 0;
unknowns = fmincon(@(x)fun(x),initial,A,b,[],[],lb,ub)
What do the A and b arguments represent? Let x represent your unknowns argument.
A*x <= b
x(1) + x(2) -x(3) -x(4) <= 0
x(1) + x(2) <= x(3) + x(4)
unknowns = fmincon(@(x)fun(x),initial,[],[],[],[],lb,ub)
Alan Weiss
MATLAB mathematical toolbox documentation
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!