manbet体育手机客户端


poolsearch_vb.vb.


'版权所有2019,Gurobi O狗万app足彩ptimization,LLC'我们发现替代epsilon-eptoplyse opto opsappsack'问题通过池查找导入gurobi class poolsearch_vb共享子main()尝试'样本数据暗地作为整数= 10 dimbcoef为double()=新的双(){_ 32,32,15,15,6,6,6,1,1,1,1,1} Dim WhapasackCoef作为双()=新双(){_ 16,16,8,8,4,4,2,2,1,1,1} Dimp预算作为Double = 33 Dim e作为整数,状态为整数,nsolutions为整数'创建环境Dimen Env作为新Grbenv(“poolsearch_vb.log”)'创建初始模型昏暗模型新的GrbModel(env)model.modelname =“poolsearch_vb”'初始化地面集的决策变量:'x [e] == k如果选择元素e k次。DimeLeL作为GRBVAR()= Model.Addvars(GroundSetSize,GRB.Binary)型号。[SET](GRB.DoubleAttr.obj,Elem,Objcoef,0,Lindsetsize)对于e = 0到地面设计 -  1 elem(e)。varname = string.format(“el {0}”,e)下一步'约束:限制要选中的元素总数为大多数预算昏暗lhs作为e = 0到groundsetsize  -  1 lhs.adtterm(Knapsackcoef(e),elem(e))下一型Model.addConstr(LHS,GRB.Less_equal,预算,“预算”)'所有目标的全局意义模型Model.modelsense = grb.maximize'限制收集模型的解决方案.Poolsolutions = 1024'限制收集模型的解决方案.Parameters.Poolgap = 0.1'限制收集模型的解决方案.Parameters.PoolsearchMode = 2'保存问题模型.write(“poolsearch_vb.lp”)'优化模型.Optimize()'状态检查状态= model.status如果status = grb.status.inf_or_unbd orelse _ status = gr.status.infeasible orelse _ status = grb.status.unbounded然后inconole.writelint(“模型可以如果它是不可行或无界的“)返回结束如果status <> grb.status.optimal则返回结束,则控制台,然后使用状态{0}”,状态)返回结束如果'打印最佳选定的设置控制台.writeline(“最佳解决方案中的选定元素:”)控制台.WWBRITE(vbtab)对于e = 0到地面,1,如果ELEM(e).x <0.9然后继续结束如果console.write(“el {0}”继续结束,e)下一个console.writeline()'打印解决方案的lequents存储的nsolutions = model.solcount console.writeline(找到的解决方案数:“,nsolutions)'e = 0的e = 0的解决方案的物理值 -  1模型。parameters.solutionnumber = e console.write(“{0}”,model.poolobjval)如果e mod 15 = 14那么console.writeline()结束如果下一个console.writeline()model.dispose()env.dispose()catch e As GRBException Console.WriteLine("Error code: {0}. {1}", e.ErrorCode, e.Message) End Try End Sub End Class