model.setObjectiven()


model.setObjectiven()

setobjectiven.(expr,index,priority = 0,权重= 1,abstol = 1e-6,Reltol = 0,name =“”)

设置等于线性表达的替代优化目标。

请参阅讨论多目标有关使用替代目标的更多信息。

请注意,您还可以使用替代目标来修改objn.变量属性。如果您希望混合和匹配这两种方法,请注意,此方法替换整个现有目标,而objn.属性可用于修改各个术语。

论点:

expr(linexpr):新的替代目标。

索引(int):新目标的索引。如果使用索引0,则此例程将更改主要优化目标。

优先权(int,可选):替代目标的优先权。这初始化了objnpriority.这个目标的属性。

重量(浮动,可选):替代目标的重量。这初始化了objnweight.这个目标的属性。

ABSTOL(浮动,可选):替代目标的绝对容忍度。这初始化了objnabstol.这个目标的属性。

Reltol(Float,可选):替代目标的相对容忍。这初始化了objnreltol.这个目标的属性。

名称(字符串,可选):替代目标的名称。这初始化了objname.这个目标的属性。注意姓名将作为ASCII字符串存储。因此,一个名字'一种<span> $ </ span> {\ lightarrow} <span> $ </ span>B'会产生错误,因为'<span> $ </ span> {\ lightarrow} <span> $ </ span>'不能表示为ASCII字符。请注意,包含空格的名称强烈忽视,因为它们无法写入LP格式文件。

示例用法:

#主目标:x + 2 y model.setObjectiven(x + 2 * y,0,2)#替代,较低的优先级目标:3 y + z和x + z model.setObjectiven(3 * y + z,1,1)model.setObjectiven(x + z,2,0)