Here is the matlab code to reproduce my problem.
target1_A = [7.99995669675181e-06 -8.03975747633764e-06 0 0;
-8.03975747633764e-06 0.497520517567215 0 0;
0 0 7.99995669675181e-06 -8.03975747633764e-06;
0 0 -8.03975747633764e-06 0.497520517567215];
target1_B_s1 = [5.4786924582329e-10 6.35177457508857e-13 -2.57705351589825e-11 -6.30413626577541e-11;
6.35177457508857e-13 1.26095524861251e-12 6.39977287162576e-15 -1.25149808424792e-10;
-2.57705351589825e-11 6.39977287162576e-15 3.10533520760511e-09 -6.35177457508857e-13;
-6.30413626577541e-11 -1.25149808424792e-10 -6.35177457508857e-13 1.24211184861606e-08];
target1_B_s2 = [1.88230545590483e-09 5.52035135357927e-11 -1.55785827265852e-09 -1.01458019994494e-10;
5.52035135357927e-11 4.33590670936381e-09 3.00363431778171e-11 -7.96892229201435e-09;
-1.55785827265852e-09 3.00363431778171e-11 3.89784473863295e-09 -5.52035135357927e-11;
-1.01458019994494e-10 -7.96892229201435e-09 -5.52035135357927e-11 1.46460075718467e-08];
target1_B_s3 = [1.02330422638801e-09 1.82607222090617e-11 -7.42695381881943e-10 -1.69795845837224e-11;
1.82607222090617e-11 3.67668784024726e-09 1.96385237785021e-11 -3.41873839690975e-09;
-7.42695381881943e-10 1.96385237785021e-11 9.15160537542683e-10 -1.82607222090617e-11;
-1.69795845837224e-11 -3.41873839690976e-09 -1.82607222090617e-11 3.17888619712656e-09];
target2_A = [7.99995669675181e-06 -8.03975747633764e-06 0 0;
-8.03975747633764e-06 0.497520517567215 0 0;
0 0 7.99995669675181e-06 -8.03975747633764e-06;
0 0 -8.03975747633764e-06 0.497520517567215];
target2_B_s1 = [5.64035654298123e-10 1.60948130730564e-11 5.62465169122037e-10 2.21233904553342e-11;
1.60948130730564e-11 1.85113331582138e-09 -1.17090103517189e-11 2.54450579481112e-09;
5.62465169122037e-10 -1.17090103517189e-11 9.27986825379898e-10 -1.60948130730564e-11;
2.21233904553342e-11 2.54450579481112e-09 -1.60948130730564e-11 3.49759235841667e-09];
target2_B_s2 = [2.09639991245474e-09 7.30760895546975e-11 1.54352691955118e-09 1.87995748196879e-10;
7.30760895546975e-11 3.18564170747668e-09 -2.84055087193446e-11 8.19539058444e-09;
1.54352691955118e-09 -2.84055087193446e-11 5.46729499225802e-09 -7.30760895546975e-11;
1.87995748196879e-10 8.19539058444e-09 -7.30760895546975e-11 2.10834842706552e-08];
target2_B_s3 = [2.2580799064e-09 -3.04378599845204e-11 -7.84825229556515e-10 2.11712226114553e-10;
-3.04378599845204e-11 6.2511251350135e-10 -4.3760501575189e-12 -4.34800481613161e-09;
-7.84825229556515e-10 -4.3760501575189e-12 7.60414109380293e-09 3.04378599845204e-11;
2.11712226114553e-10 -4.34800481613161e-09 3.04378599845204e-11 3.02427890544266e-08];
target3_A = [7.99995669675181e-06 -8.03975747633764e-06 0 0;
-8.03975747633764e-06 0.497520517567215 0 0;
0 0 7.99995669675181e-06 -8.03975747633764e-06;
0 0 -8.03975747633764e-06 0.497520517567215];
target3_B_s1 = [1.43840293444844e-10 1.51736067093141e-12 -8.19135562435095e-11 -2.02540553843076e-11;
1.51736067093141e-12 2.76208445629662e-11 1.1367518069854e-13 -3.68688951978879e-10;
-8.19135562435094e-11 1.1367518069854e-13 1.23110332732941e-09 -1.51736067093141e-12;
-2.02540553843076e-11 -3.68688951978879e-10 -1.51736067093141e-12 4.9213391357895e-09];
target3_B_s2 = [5.05035735969096e-10 1.24959519690227e-11 -5.8120083630651e-10 -2.54206866036491e-11;
1.24959519690227e-11 1.31353725412431e-09 6.14258843778465e-12 -2.67214686500778e-09;
-5.8120083630651e-10 6.14258843778465e-12 1.40168185018073e-09 -1.24959519690227e-11;
-2.54206866036491e-11 -2.67214686500778e-09 -1.24959519690227e-11 5.43598504401093e-09];
target3_B_s3 = [3.97366456044822e-10 5.88381226567152e-12 -3.63995327836505e-10 -6.58754161039662e-12;
5.88381226567152e-12 1.42869715222334e-09 5.25526043327448e-12 -1.59957549866732e-09;
-3.63995327836505e-10 5.25526043327448e-12 4.79786509904517e-10 -5.88381226567152e-12;
-6.58754161039662e-12 -1.59957549866732e-09 -5.88381226567152e-12 1.79089163295037e-09];
target4_A = [7.99995669675181e-06 -8.03975747633764e-06 0 0;
-8.03975747633764e-06 0.497520517567215 0 0;
0 0 7.99995669675181e-06 -8.03975747633764e-06;
0 0 -8.03975747633764e-06 0.497520517567215];
target4_B_s1 = [2.87158625001848e-11 3.1809715324394e-13 5.72693419379107e-11 8.8713761626921e-13;
3.1809715324394e-13 8.58673110436647e-11 -1.1405874020699e-13 2.39474389688443e-10;
5.72693419379107e-11 -1.1405874020699e-13 1.67898870102364e-10 -3.1809715324394e-13;
8.8713761626921e-13 2.39474389688443e-10 -3.1809715324394e-13 6.67867464575545e-10];
target4_B_s2 = [3.01492292991484e-11 4.61934501838872e-13 5.18288985202304e-11 2.99363359417514e-12;
4.61934501838872e-13 3.40506484542303e-11 -7.12790918716029e-14 2.20670170143705e-10;
5.18288985202304e-11 -7.12790918716029e-14 3.58036439146185e-10 -4.61934501838872e-13;
2.99363359417514e-12 2.20670170143705e-10 -4.61934501838872e-13 1.43008507038292e-09];
target4_B_s3 = [2.62854997889735e-11 -3.78261161104058e-13 -3.31591394128855e-11 3.99961406662133e-12;
-3.78261161104058e-13 1.33649085319876e-11 -3.57738280785321e-14 -1.41316322319806e-10;
-3.31591394128855e-11 -3.57738280785321e-14 3.7376376241739e-10 3.78261161104058e-13;
3.99961406662133e-12 -1.41316322319806e-10 3.78261161104058e-13 1.49423416600258e-09];
T1 = @(p) target1_A + p(1)*target1_B_s1+p(2)*target1_B_s2+p(3)*target1_B_s3;
T2 = @(p) target2_A + p(1)*target2_B_s1+p(2)*target2_B_s2+p(3)*target2_B_s3;
T3 = @(p) target3_A + p(1)*target3_B_s1+p(2)*target3_B_s2+p(3)*target3_B_s3;
T4 = @(p) target4_A + p(1)*target4_B_s1+p(2)*target4_B_s2+p(3)*target4_B_s3;
tv1 = [13460.8324799922; 6251.18916815389];
tv2 = [11559.1461555462; 3769.19060527909];
tv3 = [34872.2901982884; 8883.62735666326];
tv4 = [88276.4154079558; 22123.3756352467];
p_min = 10;
p_max = 1e5;
p_total = 1e5;
cvx_solver mosek
cvx_begin SDP
variables p_s1(4) p_s2(4) p_s3(4);
minimize( sum(p_s1)+sum(p_s2)+sum(p_s3) )
subject to
[T1([p_s1(1);p_s2(1);p_s3(1)]),[1;0;0;0];
[1,0,0,0],tv1(1)] == semidefinite(5);
[T1([p_s1(1);p_s2(1);p_s3(1)]),[0;0;1;0];
[0,0,1,0],tv1(2)] == semidefinite(5);
[T2([p_s1(2);p_s2(2);p_s3(2)]),[1;0;0;0];
[1,0,0,0],tv2(1)] == semidefinite(5);
[T2([p_s1(2);p_s2(2);p_s3(2)]),[0;0;1;0];
[0,0,1,0],tv2(2)] == semidefinite(5);
[T3([p_s1(3);p_s2(3);p_s3(3)]),[1;0;0;0];
[1,0,0,0],tv3(1)] == semidefinite(5);
[T3([p_s1(3);p_s2(1);p_s3(3)]),[0;0;1;0];
[0,0,1,0],tv3(2)] == semidefinite(5);
[T4([p_s1(4);p_s2(4);p_s3(4)]),[1;0;0;0];
[1,0,0,0],tv4(1)] == semidefinite(5);
[T4([p_s1(4);p_s2(4);p_s3(4)]),[0;0;1;0];
[0,0,1,0],tv4(2)] == semidefinite(5);
p_min <= p_s1 <= p_max;
p_min <= p_s2 <= p_max;
p_min <= p_s3 <= p_max;
sum(p_s1) <= p_total;
sum(p_s2) <= p_total;
sum(p_s3) <= p_total;
cvx_end
After running this code, I got “Problem status : ILL_POSED”. Is this the problem due to scaling? If so, how to rescale? Any hint will be appreciated. Thanks in advance.