Problem running CVX efficiently


#1

Hi, I have the following CVX code that I am running with a matrix less than 10,000 x 10,000 and a respective size vector. When running, it calls for SDPT3 to solve but it takes ~40 minutes to run. My understanding is it should not take a long computational time.

Am I applying the equation wrong?

cvx_begin
cvx_solver
variable x(n)

minimize norm((A_matrixAx-b_vectorA),2)+norm((A_matrixDx-b_vectorD),2)

subject to

cvx_end

The information given by CVX is as follows:

Calling SDPT3 4.0: 15604 variables, 9925 equality constraints
   For improved efficiency, SDPT3 is solving the dual problem.
------------------------------------------------------------

 num. of constraints = 9925
 dim. of socp   var  = 15604,   num. of socp blk  =  2
*******************************************************************
   SDPT3: Infeasible path-following algorithms
*******************************************************************
 version  predcorr  gam  expon  scale_data
    NT      1      0.000   1        0

(Mark L. Stone) #2

How long is it taking until SDPT3: Infeasible path-following algorithms is displayed? if that is a large portion of the overall time, then you might get a much faster solution calling a solver without going through CVX. if the solver is taking most of the time, you can try another solver which might be faster, such as MOSEK or ECOS, and if there are no SDP constraints, Gurobi


#3

Thank you, Mark, for the response. Most of the time is consumed by the solver. I am taking your advice and apply for the license to get the solvers you’ve mentioned. Thanks!!
I’ll edit if the different solver worked.