the following code works fine and gives me the optimal solution for the given input, but when I change m = 1 and r = [11 6] the problem becomes infeasible which is not!!!
any idea what am I missing here?
r = [11 6; 11 6];
m = 2; % Stations
n = 2; % APs
f1 = sum(log(sum(tp(1:m,1:n).*r)));
0 <= tp <= 1;
sum(tp,2) <= 1;
sum(tp,1) == 1;
See Edit below: Otherwise, i have preserved my original post for thread context.
Using SeDuMi in CVX Build 2.1, m=2,r=[11 6;11 6]; worked for me, and m=1,r=[11 6]; incorrectly reported infeasible.
Using SDPT3, both cases were successfully solved.
Moreover, success or lack thereof was unaffected when I removed log from the objective function (f1), thereby making the problem into an LP. So the problem is not with CVX’s successive approximation method for dealing with log.
It looks to me like a bug somewhere in CVX or SeDuMi. It seems like the combination m=1, n > 1 is not being handled properly. We will have to wait to see what @mcg says.
For now, i think you can specify SDPT3 as the solver. Or you can try other solvers if you have them available.
Edit: Sorry, it was late and I was tired. Looking back at my runs, I did not have any successful (not reported infeasible) runs with m = 1 and n > 1 using SeDuMi or SDPT3, with or without the log.