Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.
Originally posted by: MachexC
Hi Alex,
The model with X variable is positive (X >= 0) so, Xis dvar float+. But why the result of model has a negative value of 8.5265e-13. Please explain.
Mac.
Hi,
this is because of tolerances.
You should consider those tiny negative values as 0.
See tech note https://www-01.ibm.com/support/docview.wss?uid=swg21400045 CPLEX appears to return a solution that violates some constraints or bounds
regards
PS:
https://www.ibm.com/developerworks/community/forums/html/topic?id=1bf1f4de-b6fa-4375-a397-741e9239513e&ps=25
It is tolerances. So, how do we ignore this value in the result?, I want it to be 0.
Thank you,
Mac
would you accept to handle that in postprocess ?
How to setup a number of tolerance settings is Parameter CPX_PARAM_EPRHS (IloCplex::EpRHS) to remove tolerance values?
Hi
execute { cplex.eprhs=1e-9; }
I setted up "execute" in model OPL but the result still has numbers of tolerance as following: 2.27373675443232E-13; -1.81898940354586E-12
Please help.
Again, why do not you handle this in postprocess ?
How to handle this in postprocess for these values, you process by hand?
dvar float x; minimize x; subject to { x==-1.81898940354586E-12; } float x2=(abs(x)<1e-9)?0:x; execute { writeln(x); writeln(x2); }
dvar float x;
minimize x; subject to {
x==-1.81898940354586E-12;
}
float x2=(abs(x)<1e-9)?0:x; execute { writeln(x);
writeln(x2); }