How to index lmi constraints?
1 view (last 30 days)
Show older comments
Dear Sir/Madam I have a nx1 index set Code for sdpvar object K and want to constrain elements of K to be pairwise distinct. I am using yalmip with the following constaint. F =[F, implies(a1, K(i)-K(ii)<= -.5*rand(1)), implies(a2, K(i)-K(ii) >= .5*rand(1)), a1+a2==1]; where a1 and a2 are binary. I want to include this constraint inside nested loops for all pairs (i,ii) with ii>i both belonging to Code. What is the easiest way to do this preferably in a vectorized manner?
0 Comments
Accepted Answer
Johan Löfberg
on 1 Apr 2014
Something like this would be a complete vectorization
n = 3;
[i,ii] = find(triu(ones(n),1));
index = sub2ind([n n],i,ii)
a1 = binvar(length(i),1);
a2 = binvar(length(i),1);
K = sdpvar(n);
F = [implies(a1, K(index) <= -0.1), implies(a2, K(index) >= 0.1), a1 + a2 == 1]
0 Comments
More Answers (0)
See Also
Categories
Find more on Linear Matrix Inequalities in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!