I Want to solve a MIP Mathematical Program without some of the constraints by use GMP::Row::Deactivate, but the Program Status return Integer infeasible. However, when I Replace
GMP::Row::Deactivate with GMP::Row::Delete, the Program can be solved. I could’t understand the difference between GMP::Row::Deactivate and GMP::Row::Delete.
My code is as follows:
SCUC_Instance := GMP::Instance::generate(MarketDA_MP);
GMP::Solution::DeleteAll(SCUC_Instance);
SCUC_InstancePre := GMP::Instance::CreatePresolved(SCUC_Instance,"SCUC");
GMP::Solution::DeleteAll(SCUC_InstancePre);
NFGConstraintsSetRowNum := GMP::Instance::GetRowNumbers(SCUC_InstancePre, NFGConstraintsSet);!NFGConstraintsSetRowNum is a Subset of Integer with index as nk
for nk do
GMP::Row::Deactivate(SCUC_InstancePre,nk);
endfor;
endif;
NFGVariablesSetColumnNum := GMP::Instance::GetColumnNumbers(SCUC_InstancePre, NFGVariablesSet);!NFGVariablesSetColumnNum is a Subset of Integer with index as nv
for nv do
GMP::Column::Freeze(SCUC_InstancePre,nv,0);
endfor;
endif;
UCSolver := GMP::Instance::CreateSolverSession(SCUC_InstancePre , "UCSolver" , 'CPLEX 12.3');
GMP::SolverSession::Execute(UCSolver);
Do you know how can I solve a Mathematical Program when the constraints do not take effect but remains in the instance?