CPXPARAM_MIP_Display 1 Infeasible column 'x18'......

18 次查看(过去 30 天)
With the code below I get this result:
CPXPARAM_MIP_Display 1
Infeasible column 'x18'.
Presolve time = 0.00 sec. (0.02 ticks)
Does anyone can find what I am doing wrong? I appreciate any help.
clc
clear all;
%% data for the system
%generator
p=zeros(6,1);
p(1,1)=375;
p(2,1)=73;
p(3,1)=300;
p(4,1)=85;
p(5,1)=250;
p(6,1)=397;
%load
d=zeros(6,1);
d(1,1)=150;
d(2,1)=300;
d(3,1)=280;
d(4,1)=250;
d(5,1)=300;
d(6,1)=200;
%Shifting factor matrix
G=[0.4 -0.4 -0.4 0.2 0.8 0;
0.2 0.15 0.15 -0.4 -0.4 0;
0.4 0.25 0.25 0.2 -0.4 0;
0.25 0.4 -0.6 0.15 0.5 0;
0.15 0.2 0.2 0.05 0.3 0;
0.25 0.4 0.4 0.15 0.5 0;
0.2 0.15 0.15 0.6 -0.4 0;
0.6 0.4 0.4 0.8 0.2 0];
B=pinv(G);
% left null space
[V, pivot] = rref(G)
r = length(pivot)
cs = G(:,pivot)
ns = null(G,'r')
rs = V(1:r,:)'
lns = null(G','r')
H=lns'
c=[20;25;25;35;28.7;24];
delta_p_low=zeros(6,1);
for i=1:6
delta_p_low(i,1)=-2;
end
delta_p_up=zeros(6,1);
for i=1:6
delta_p_up(i,1)=0.1;
end
f_up=repmat(90,8,1);
f_low=repmat(-90,8,1);
M=10000;
%% variables
lamda_plus=sdpvar(6,1);
lamda_minus=sdpvar(6,1);
alpha=sdpvar(6,1);
f=sdpvar(8,1);
miu_minus=sdpvar(8,1);
miu_plus=sdpvar(8,1);
v=sdpvar(3,1);
ommiga_alphaminus_d=binvar(6,1);
ommiga_alphaplus_d=binvar(6,1);
ommiga_betaminus_l=binvar(8,1);
ommiga_betaplus_l=binvar(8,1);
%% objective
obj=-((c(1)+lamda_plus(1)-lamda_minus(1))*(p(1)-alpha(1))-c(1)*p(1));
%% constraints
F=[];
F=[F 0<=alpha(1)<=p(1)];
F=[F alpha(2,1)==0];
F=[F alpha(3,1)==0];
F=[F alpha(4,1)==0];
F=[F alpha(5,1)==0];
F=[F alpha(6,1)==0];
F=[F delta_p_low<=B*f-p+alpha+d<=delta_p_up];
F=[F f_low<=f<=f_up];
F=[F H*f==0];
F=[F lamda_minus>=0];
F=[F lamda_plus>=0];
F=[F miu_minus>=0];
F=[F miu_plus>=0];
F=[F B'*(c+lamda_plus-lamda_minus)+miu_plus-miu_minus+H'*v==0];
F=[F lamda_minus<=M*ommiga_alphaminus_d];
F=[F delta_p_low-(B*f)+p-alpha-d<=M*(1-ommiga_alphaminus_d)];
F=[F lamda_plus<=M*ommiga_alphaplus_d];
F=[F (B*f)-p+alpha+d-delta_p_up<=M*(1-ommiga_alphaplus_d)];
F=[F ommiga_alphaminus_d+ommiga_alphaplus_d<=1];
F=[F miu_minus<=M*ommiga_betaminus_l];
F=[F f_low-f<=M*(1-ommiga_betaminus_l)];
F=[F miu_plus<=M*ommiga_betaplus_l];
F=[F f-f_up<=M*(1-ommiga_betaplus_l)];
F=[F ommiga_betaminus_l+ommiga_betaplus_l<=1];
%% solution
option=sdpsettings('savesolveroutput',1);
diagnostics=optimize(F,obj,option);
result.obj=double(obj);

回答(1 个)

hongjiao xue
hongjiao xue 2019-8-19
  • I have the same problem. Have you solved your problem?
The operation feedback is as follows:
CPXPARAM_Read_APIEncoding "*"
CPXPARAM_MIP_Display 1
Dual infeasible due to empty column 'x1'.
Presolve time = 0.05 sec. (28.89 ticks)

类别

Help CenterFile Exchange 中查找有关 Filter Analysis 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by