GRBVar#

GRBVar#

Gurobi 变量对象。变量总是与特定模型相关联。您通过向模型添加变量来创建变量对象(使用 GRBModel.addVar),而不是通过使用 GRBVar 构造函数。

变量对象上的方法用于获取和设置变量属性。例如,可以通过调用get (GRB.DoubleAttr.X)来查询解决方案信息。但请注意,通常更高效的做法是一次性查询一组变量的属性。这是通过在GRBModel对象上使用属性查询方法(GRBModel.get)来完成的。

char get(GRB.CharAttr attr)#

查询一个字符值属性的值。

Arguments:

attr – 被查询的属性。

Return value:

请求属性的当前值。

Example:
// Get VType value
char vtype = var.get(GRB.CharAttr.VType);
double get(GRB.DoubleAttr attr)#

查询一个双值属性的值。

Arguments:

attr – 被查询的属性。

Return value:

请求属性的当前值。

Example:
// Get lower bound value
double lb = var.get(GRB.DoubleAttr.LB);
int get(GRB.IntAttr attr)#

查询一个整数值属性的值。

Arguments:

attr – 被查询的属性。

Return value:

请求属性的当前值。

Example:
// Get VBasis value
int vbasis = var.get(GRB.IntAttr.VBasis);
String get(GRB.StringAttr attr)#

查询字符串值属性的值。

Arguments:

attr – 被查询的属性。

Return value:

请求属性的当前值。

Example:
// Get variable name
String name = var.get(GRB.StringAttr.VarName);
int index()#

此方法返回变量在基础约束矩阵中的当前索引或顺序。

请注意,变量的索引可能会在后续模型修改后发生变化。

Return value:

-2: 已移除, -1: 不在模型中, 否则: 变量在模型中的索引

Example:
// Get variable index
int index = var.index();
boolean sameAs(GRBVar otherVar)#

检查两个变量对象是否引用同一个变量。

Arguments:

otherVar – 另一个变量。

Return value:

布尔结果指示两个变量对象是否引用相同的模型变量。

Example:
// Compare to a second variable
boolean isSame = var.sameAs(var2);
void set(GRB.CharAttr attr, char newval)#

设置一个字符类型属性的值。

Arguments:
  • attr – 正在修改的属性。

  • newval – 属性的期望新值。

Example:
// Set VType value
var.set(GRB.CharAttr.VType, 'B');
void set(GRB.DoubleAttr attr, double newval)#

设置一个双精度值属性的值。

Arguments:
  • attr – 正在修改的属性。

  • newval – 属性的期望新值。

Example:
// Set lower bound value
var.set(GRB.DoubleAttr.LB, 0.1);
void set(GRB.IntAttr attr, int newval)#

设置一个整数值属性的值。

Arguments:
  • attr – 正在修改的属性。

  • newval – 属性的期望新值。

Example:
// Set VBasis value
var.set(GRB.IntAttr.VBasis, -1);
void set(GRB.StringAttr attr, String newval)#

设置字符串类型属性的值。

Arguments:
  • attr – 正在修改的属性。

  • newval – 属性的期望新值。

Example:
// Set variable name
var.set(GRB.StringAttr.VarName, "newName");