Hi, I’m using cvx as a part of an iterative optimization algorithm which does something like this:
while ~cond
cvx_begin
variable x(n,n);
% some more vars
minimize x' * C * x
A * x == b;
% some more constraints
cvx_end
% more calculations
[Am, bm, Cm]update(A, b, C, x);
A = Am;
b = bm;
C = Cm;
cond = check(A, b, C, x);
end
The thing is that A, b and C remains mostly unchanged from one iteration to the other, so I was wondering if there is some way to tell cvx to start from the previous solution instead of starting from scratch.
I worked previously with CPLEX and there are some objects that keep the state of the problem and solution and it saves a lot of time.
Besides from my experience (with this particular problem) it takes more time to “translate” the cvx code to the solver than to actually solve the problem once the solver gets to it.
Does someone has come to the same issue? What can I do?
Thanks,
Sebastian