I am trying to solve a linearly constrained quadratic programming problem:
%---------------------------------------------------------------------------------------------------------------------------------
% For simplification, the known variables are omitted
% variables
e_p = sdpvar(N,n);
e_q = sdpvar(N,n);
e_v = sdpvar(N,n);
e_va = sdpvar(N,n);
C = sdpvar(2*n,1);
e_Y = [e_p e_q];
e_X = [e_va e_v];
e_B_T = sdpvar(n,n);
e_G_T = sdpvar(n,n);
e_Q_d = sdpvar(n,1);
e_P_d = sdpvar(n,1);
e_A = sdpvar(2*n,2*n,'full');
%constriants
Constraints = [];
Constraints = [Constraints,(Y+e_Y)' == A*X' + e_A*X' + A*e_X' + C*ones(1,N)];
Constraints = [Constraints, e_va(:,ref) == zeros(N,1)];
Constraints = [Constraints, -max(abs(data.P_noised))'<=e_P_d<=max(abs(data.P_noised))'];
Constraints = [Constraints, -max(abs(data.Q_noised))'<=e_Q_d<=max(abs(data.Q_noised))'];
Constraints = [Constraints, A_sum(zero.para==1) == 0];
%objective
if (is_sym == 1)
Objective = enlarge * sum(e_p.*e_p*(w_p_2.^-1) + e_q.*e_q*(w_q_2.^-1) + e_v.*e_v*(w_v_2.^-1) + e_va.*e_va * (w_va_2.^-1));
else
Objective = enlarge * sum(e_p.*e_p*(w_p_2.^-1) + e_q.*e_q*(w_q_2.^-1) + e_v.*e_v*(w_v_2.^-1) + e_va.*e_va * (w_va_2.^-1))...
+ lamda*sum(sum(abs(w_A.*e_A)));
end
%----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
The scale of the LCQP problem is N=1000 and n=118, but the necessary memory is approximately 26GB.
Is there any methods save the memory?
Thanks a lot!