栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Lecture 007-Optimization tools

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Lecture 007-Optimization tools

Outline •Python+ Gurobi •Mathematical Programming Language •Demo cases •Practical cases •Java+ Cplex

网络上的一些参考资料

Gurobi对 Python 支持得最好,对Java 等支持的类和方法相对较少。如果对其他编程语言没有强烈倾向的话,官方推荐使用Python:“If you don’t have a strong preference, we recommend that you use our Python interfaces, which provides a number of benefits. First, Python is a very nice programming language that can be used for anything from experimentation to prototyping to deployment. Beyond this, though, our Python interface includes a set of higher-level modeling constructs that make it much easier to build optimization models.”

Cplex 不仅有自己的建模环境 Ilog,对 Java、C++、C 等支持也比较充分,但Cplex 对 Python的类和方法目前不多。

Gurobi可以申请商业试用许可和免费学术许可,学术版没有规模限制。

Cplex可以下载免费版,但求解问题规模有限制,提供的免费学术版也有规模限制。

Gurobi 的三个创始人(Zonghao Gu, Edward Rothberg and Robert Bixby)之前都在 Cplex 工作过,其中Bixby是Cplex 的创始人,Zonghao Gu和Edward Rothberg在Cplex领导开发团队将近十年。创始人兼CTO顾宗浩博士是运筹学领域顶尖华裔科学家,毕业于佐治亚理工工业工程系。

-----------------------

• CPLEX Java Reference Manual ,里面有两个包 ilog.concert 与 ilog.cplex • 用到 API 大致上分为两类 • ilog.concert.* 里面都是些各种接口 interfaces • ilog.cplex.* 里面都是些各种类,主要是 IloCplex 类, IloCplexModeler 类以及内部嵌套类

---------------------------------

• 基本结构包含以下三个部分 • 构造 IloCplex 对象 • 在 IloCplex 对象上添加变量,目标函数和约束条件。其中目标函数和约束条件都是 表达式 的形式。 • 求解模型,分析结果 • • 构造 IloCplex 对象 • IloCplex model = new IloCplex(); • IloCplex 继承了 IloCplexModeler, 两者包含了很多方法,但是侧重点不同,后者实现了很多接口。 • IloCplex 侧重于包含与算法有关的方法。 • IloCplexModeler 侧重于包含一些基本的操作性质的方法,例如 add, addLe , addGe 等。 • • 有了这个 IloCplex 对象之后,开始添加变量,表达式,目标函数和约束条件。 • 这里有 4 个接口类 • IloNumVar  变量 • IloNumExpr  表达式 • IloRange  约束范围 • IloObjective  目标函数 • 定义一个变量 x • IloNumVar x = model.numVar (lb, ub, IloNumVarType.Float, “ xname ”); • 参数分别是下界,上界,变量类型,变量名称 • 变量类型只有 IloNumVarType.Float, Int, Bool 三种基本类型 • 定义一组变量 • IloNumVar[ ] x = model.numVarArray (int n, double[ ] lb, double[ ] ub, IloNumVarType [ ] type, String[ ] name) •

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/946159.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号