2
$\begingroup$

I am trying to solve a large-scale MIP problem. I have the following errors, I know, it's about the data, but I can't change the data. Is there a method to deal with it?

  • CPLEX Warning 1036: Decimal part of coefficient for variable 'x_9_18_0' in objective looks like 67/85 in single precision.

  • CPLEX Warning 1036: Decimal part of coefficient for variable 'x_9_18_2' in objective looks like 67/85 in single precision.

  • CPLEX Warning 1036: Too many warnings of this type have been detected. All further warnings of this type will be ignored.

  • CPLEX Warning 1057: the objective vector has almost equal coefficients for variable 'x_55_56_1' and variable 'x_42_43_1'.

$\endgroup$
1
  • 3
    $\begingroup$ Those are warnings, not errors. You are free to ignore them. You could probably get rid of the first couple at least by multiplying the objective function by 85. $\endgroup$ – prubin May 31 at 0:21
2
$\begingroup$

Assuming you are fine with turning the warnings off, you can change the verbosity level of the data consistency checks that you get from docplex by changing the value of datacheck parameter. You can read more about it in the IBM doc on data consistency.

from docplex.mp.model import Model

mdl = Model(name='my_model')
...
mdl.parameters.read.datacheck = 0  # possible values are 0, 1, 2 with 1 being default in python
mdl.solve()
$\endgroup$
1
$\begingroup$

If you really want to ignore them then you can often set the warning output to null (or similar) https://www.ibm.com/docs/en/icos/20.1.0?topic=cm-warning-method-1

From where/how are you calling cplex?

$\endgroup$
1
  • $\begingroup$ Ah, I see in the title it is from DOC. My knowledge of this is limited, but it should still be possible to interact with the actual CPLEX being called. $\endgroup$ – Tue Christensen May 31 at 18:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.