[英]CPLEX Java - getting minimum value between an IloNumExpr and a number
[英]Cplex using Java - adding a constant number into IloNumExpr
我正在嘗試向IloNumExpr
添加一個常量值,但obj.addTerm()
不接受double
類型,我找不到 function 來向IloNumExpr
添加double
精度值。
例如:
如果我的目標是min p + some variables
。 我如何將double
類型的 p 添加到IloLinearNumExpr obj = cplex.linearNumExpr()
?
這對求解器/解決方案沒有影響(假設我們正在談論目標偏移量。)並且可以跳過它並通過將偏移量重新添加到最終目標值來對其進行后處理。
如果有人對 model 中的這個感興趣(出於某種原因),總是可以向目標添加一個額外變量並修復它(例如通過設置 lower_bound = upper_bound = offset)。
但是根據文檔,cplex 似乎為此提供了一些專用功能:
設定目標有多種方法,但您需要:
IloObjective
object(鏈接到模型)從來沒有使用過我期望它看起來類似於的 java 接口(代碼可能已損壞):
IloCplex cplex = new IloCplex();
double constant = 1.0; // your objective offset constant
IloNumExpr obj_expr = ... // your linear objective
IloObjective obj = cplex.addMinimize();
obj.setConstant(constant);
obj.setExpr(obj_expr);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.