manbet体育手机客户端


bilinear_vb.vb.


'版权所有2019,Gurobi优化狗万app足彩,LLC * /'此示例制定并解决以下简单的双线性模型:'最大化x'对x + y + z <= 10'x * y <= 2(双线性不等式)'x* z + y * z == 1(双线性相等)'x,y,z非负(x积分在第二版中)导入gurobi类bilinear_vb共享子main()尝试将Dimen Env作为新的Grbenv(“bilinear.log”)昏暗的模型作为新的grbmodel(env)'创建变量暗淡x作为grbvar = model.addvar(0,grb.invinity,0,grb.continuous,“x”)暗y为grbvar = model.advar(0,grb。Infinity,0,Grb.Continuous,“Y”)Dim Z为GRBVAR = Model.Addvar(0,Grb.invinity,0,Grb.Conured,“Z”)'将目标Dim Obj设置为GrblineXPR = X Model.setObjective(obj,grb.maximize)'添加线性约束:x + y + z <= 10 model.addconstr(x + y + z <= 10,“c0”)'添加双线性不等式:x * y <= 2 model.addqconstr(x * y <= 2,“bilinear0”)'添加双线性平等:x * z + y * z == 1 model.addqconstr(x * z + y * z = 1,“bilinear1”)'优化modEL TRY MODEM.OPTIMIZE()捕获e作为grbException console.writeline(“失败(按预期)”)结束尝试模型.set(grb.intparam.nonconvex,2)model.optimize()console.writeline(x.varname&" " & x.X) Console.WriteLine(y.VarName & " " & y.X) Console.WriteLine(z.VarName & " " & z.X) Console.WriteLine("Obj: " & model.ObjVal & " " & obj.Value) x.Set(GRB.CharAttr.VType, GRB.INTEGER) model.Optimize() Console.WriteLine(x.VarName & " " & x.X) Console.WriteLine(y.VarName & " " & y.X) Console.WriteLine(z.VarName & " " & z.X) Console.WriteLine("Obj: " & model.ObjVal & " " & obj.Value) ' Dispose of model and env model.Dispose() env.Dispose() Catch e As GRBException Console.WriteLine("Error code: " & e.ErrorCode & ". " & e.Message) End Try End Sub End Class