Java 用于if else状态的cplex

Java 用于if else状态的cplex,java,cplex,Java,Cplex,我是cplex的新手。在我的ilp中,我有几个if-else语句。我想使用cplex来解决我的问题,使用javaapi。我不知道如何在cplex中表达if-else。 例如: 我认为JavaAPI不支持if/then/else结构,但是可以实现if/then IloCplex cplex = new IloCplex(); IloNumVar x = cplex.numVar(-100, 100); IloNumVar a = cplex.intVar(0, 1); cplex.ifThen(

我是cplex的新手。在我的ilp中,我有几个if-else语句。我想使用cplex来解决我的问题,使用javaapi。我不知道如何在cplex中表达if-else。 例如:


我认为JavaAPI不支持if/then/else结构,但是可以实现if/then

IloCplex cplex = new IloCplex();
IloNumVar x = cplex.numVar(-100, 100);
IloNumVar a = cplex.intVar(0, 1);

cplex.ifThen(cplex.ge(x, 100), cplex.eq(a, 1));
cplex.ifThen(cplex.eq(x, 0), cplex.eq(a, 0));

谢谢。对于“or”语句,我使用了一个像“M”这样的大数字,并使statmenet线性化。你知道我能否在cplex中使用它吗?如果x+y=2,那么c+B或者ifThen()的第二个参数是一个约束,因此如果该约束是or语句,那么它应该可以工作。如果知道如何在python API中实现这一点,那就太好了
IloCplex cplex = new IloCplex();
IloNumVar x = cplex.numVar(-100, 100);
IloNumVar a = cplex.intVar(0, 1);

cplex.ifThen(cplex.ge(x, 100), cplex.eq(a, 1));
cplex.ifThen(cplex.eq(x, 0), cplex.eq(a, 0));