I just started to learn CVX today. I have a minimum norm problem but the variable is 2D matrix instead of a vector in the example of CVX. I tried with the following code and it took “forever” without any error or warning displayed in matlab. Is it because the matrix is too big or just the way I use CVX was wrong?
%% CODE %%
m = size(M,2); % M is a 50250 matrix
n = size(G,2); % G is a 503000 matrix
variables J(n,m) gamma % J is a 2503000 matrix, gamma is a positive number
gamma >0 % I can also give a range like 0<gamma<10
%% CODE %%
This problem is very similar to the example ( An optimal trade-off curve) in the quick start. The differences are 1) the second norm in my case is L2 instead of L1. 2) I have 2D matrix as the variable instead of x(n) in the example.
In this example you defined a range for “gamma” and the final solution is found by plotting the trade-off curve. This for me sounds like the so called “L-curve” technique. My question is would it be possible that I define gamma as a variable (the range of gamma could be defined in subject to as a constrain instead of a list of certain values) and CVX will deal with two variables (J(n,m) and gamma) and find the optimal gamma? In this way, I would expect a optimized way to find gamma.
I also tried to set gamma as a certain number like 0.01 and the code was running without any indication and nothing happened after 30 minutes. Could you please help on this issues. Thank you very much.