mip1_remote.py


进口gurobipy从gurobipy gp进口伽马线暴# mip1变化。py,关注远程服务# #当远程资源的优化过程,如令牌#服务器计算服务器,或即时云,应采取额外的照顾#确保狗万app足彩这些资源被释放,一旦他们不再需要。#从技术上讲,这些资源是由gurobip狗万app足彩y管理。Env对象#(“环境”)。这个例子显示了获得最佳实践和#通过Env对象释放这些共享资源。狗万app足彩# #参见//m.a-toku.com/documentmanbet体育手机客户端ation/9.1/refman/environments.html def populate_and_solve (m): #这个函数制定和解决以下MIP模型(见mip1.py): #最大化# x + y z + 2 #话题# x + 2 y + 3 z < = 4 # x + y > = 1 # x, y, z二进制#创建变量x = m.addVar (vtype =伽马线暴。二进制name = " x "), y = m.addVar (vtype =伽马线暴。二进制,name = " y ") z = m.addVar (vtype =伽马线暴。二进制,name = " z ") #设置目标。setObjective (x + y + 2 * z, GRB.MAXIMIZE) #添加约束:x + 2 y + 3 z < = 4米。addConstr (x + 2 * y + 3 * z < = 4, c0) #添加约束:x + y > = 1米。addConstr (x + y > = 1, c1) # m.optimize优化模型在m.getVars v的()():打印(“% s % g”% (v。VarName, v.X)打印(“Obj: % g”% m.ObjVal) #连接参数的任何Gurobi计算服务器,集群Gurobi #经理或Gurobi令牌服务器在这里,除非他们已经设置#通过许可文件。connection_params ={#计算服务器你至少需要这个#“ComputeServer”:“<服务器名>”,“用户名”:“<用户名>”#“ServerPassword”:“<密码>”,#集群管理器你至少需要这个#“CSManager”:“<经理名称>”#“CSAPIAccessID”:“<访问ID >”#“CSAPISecret”:“<秘密>”,#即时云你至少需要这个#“CloudAccessID”:“<访问ID >”#“CloudSecretKey”:“<秘密>}与gp.Env env (params = connection_params): #“env”现在是根据连接参数设置。#环境通过上下文管理器自动处理#离开这个街区。 with gp.Model(env=env) as model: # 'model' is now an instance tied to the enclosing Env object 'env'. # The model is disposed of automatically through the context manager # upon leaving this block. try: populate_and_solve(model) except: # Add appropriate error handling here. raise