I have an absolute value optimisation problem
$$\min_x \sum |r-Cx|$$
where $x$ is small around 200 dimension. But $C$ has lots of rows, $C_{30000\times200}$ and $r$ is $30000\times1$. So this will introduce large number of help variables for the absolute value.
Could someone recommend a package in Python that can solve it efficiently? I tried CVXOPT but it took 3 hours to solve a slimmed version of 5000 x 200.
Is it generally quite slow to solve this kind of problem?
Thanks.
Turns out that CVXOPT solving is not bad at all! Solving time in GLPK is just 12 seconds!
What has taken long is CVX modelling. I used their integrated modelling module
from cvxopt.modeling import variable, op, dot, matrix
and
y = abs(r-C*x) # quick
objfun = sum(y) # this line takes ages
I suppose the reason the last line is slow is that it is checking convexity.
By converting the problem myself
$$\min \sum v\quad s.t.\,-v\leq r-Cx\leq v$$
it's now good