Convex Approximation Techniques for Joint Multiuser Downlink Beamforming and Admission Control

Dear,

We have the following problem: http://www.ece.umn.edu/~nikos/MatSidLuoTasTWC2008.pdf.

We have just started working with CVX tool. However, we didn’t get the expected results for the first algorithm defined in the paper(D-SDR).

            cvx_clear;
            cvx_quiet(true);
            cvx_solver sedumi  
            cvx_begin 
                  variable W(N*K,N*K) symmetric;
                  variable S(2*K,2*K) symmetric;

                  minimize(e*trace(W)+(1-e)*trace(One_matrix*S));
                     subject to
                     %the constraints

                        %the power constraint
                         trace(W)<=P;

                        %the SINR constraint
                         for i=1:K
                             trace(H(1+(i-1)*N:i*N,1+(i-1)*N:i*N)*W(1+(i-1)*N:i*N,1+(i-1)*N:i*N))  +  1/delta*trace(ones(2)*S(2*i-1:2*i,2*i-1:2*i))  >=  c*(trace(H_k(:,:,i)*W)-trace(H(1+(i-1)*N:i*N,1+(i-1)*N:i*N)*W(1+(i-1)*N:i*N,1+(i-1)*N:i*N))+sigma);
                         end                              
                        %Construction of the beamforming big matrix
                         W(1:N,N+1:N*K) == zeros(N,N*(K-1));
                         W(N*(K-1)+1:N*K,1:N*(K-1)) == zeros(N,N*(K-1));
                         for i=N+1:N:N*(K-2)+1
                             W(i:i+N-1,1:i-1) == zeros(N,i-1);
                             W(i:i+N-1,i+N:N*K) == zeros(N,N*(K-1)-i+1);
                         end    

                         %Construction of the admission control big matrix
                         S(1:2,3:2*K) == zeros(2,2*K-2);
                         S(2*K-1:2*K,1:2*(K-1)) == zeros(2,2*K-2);
                         for i=3:2:2*K-3
                             S(i:i+1,1:i-1) == zeros(2,i-1);
                             S(i:i+1,i+2:2*K) == zeros(2,2*K-i-1);
                         end    
                         %the admission control constraint
                          for i=1:2*K
                              S(i,i) == 1 ;
                          end

                         %The semidefiniteness constraint
                          W == semidefinite(N*K);
                          S == semidefinite(2*K);

        cvx_end

Can you please help me to know if it is useful to optimize this code with this tool and how can i change it in order to be near the given solution or I have to use another tool(SeDuMi, YALMIP).

Thanks ahead.

1 Like

I think that the weight is complex, but you definite it is real matrix.