Originally posted by: Hosssein
Thank you so much for your reply. I added the following line to my code within the loop that I read the cuts generated by CPLEX.
status = CPXuncrushform (xenv, MIP_lp, nzcnt, arg->indbuf, arg->valbuf, &len, &offset, ind, val);
I am not sure about the second argument (MIP_lp) that is defined before the cuts loop as follows:
CPXCLPptr MIP_lp;
status = CPXgetcallbacklp (xenv, cbdata, wherefrom, &MIP_lp);
Is it correct? MIP_lp here presents the original model.
Also I have another question. In this link it is mentioned that to display cplex cuts the parameter MIPCBREDLP must be set to 1. When I set it to 1 I get the following error
CPLEX Error 1103: No presolve problem created
This error is returned from CPXuncrushform, while if I set it to 0 the code works well and displays cuts. I believe that the parameter MIPCBREDLP must be turned off (set to 0) because in this case CPXuncrushform uncrushes the cuts in terms of the original model, but if it is set to 1, MIP_lp will be the same as the presolved model and therefore CPLEX returns Error 1103.
Do you agree with me?
#CPLEXOptimizers#DecisionOptimization