Gurobi 快速模型优化和测试指南.pdf

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Gurobi 快速模型优化和测试指南 本指南是为快速运行 Gurobi, 并在已有模型文件基础上(LP/MPS/REW 格式),对Gurobi 优 化参数进行调整和性能测试而制作。这个快速指南并不能代替详细的Gurobi 使用手册。 假设许可文件已经正确放置,Gurobi 可以正常运行。 (1) 启动 DOS 行命令方式。在左下角开始菜单中,在运行(RUN)或者提示输入框中, 输入 cmd, 启动 DOS 命令行方式。 (2 ) 通过 CD 命令,进入到模型数据文件所在的目录。Gurobi 支持的模型数据格式包括 MPS,LP,REW 等。 (3 ) 在提示符下,输入 gurobi ,启动 gurobi 交互环境,如下 (4 ) 读入数据模型文件,输入 m=read(‘abc.mps’) (5 ) 这样数据就读入到 m 变量中 如果采用所有默认优化参数,那么可以直接运行优化 m.optimize() (6 ) 用 ctrl-C 中断优化运行。 (7 ) 输出优化结果,可以将当前找到的可行解或者最优解输出,可以输入 m.write(‘output.sol’) 那么在当前目录下,输出一个 output.sol 文件,可以用文本编辑器打开。文件名称可以是 任何名称,只要后缀是 sol 就可以。 (8 ) 清除当前的最优解或者可行解,可以输入 m.reset() 这样再输入 m.optimize()时,会从头开始运行;否则,会从当前可行解再继续运行优化。 (9 ) Gurobi 默认优化参数已经可以取得较好的结果,但也提供了优化参数调整的功能, 更好地针对具体问题提升优化性能。常用的优化参数有 MIPFocus, Presolve,Method, ImproveStartGap, ImproveStartTime 等等. 我们并不建议过度调整参数,因为 Gurobi 已经将可调整的参数大大缩减。这些参数的使用方法都是一样的,就是在 运 行优化之前,设定这些参数,设置方法为 m.Params.XXXX=Y 例如:如果希望以取得可行解为优化策略,那么可以设定为 m.Params.MIPFocus=1 然后再运行 m.optimize() 如果希望将优化参数的数值恢复到默认数值,可以采用 m.Params.XXXX=’default’ 如果希望清除所有优化参数的数值,而恢复到默认数值,可以采用 m.resetParams() 手册中详细提供了这些参数的取值范围,默认数值和功能。 (10)一些常见情况的优化参数建议: MIPFocus:默认值0,试图在最优值和可行解之间取得平衡。1:以可行解为目标;2: 以证明最优性为目标;3:以优化边界为目标。 Presolve: 默认值:-1,自动决定预优化力度。0 :关闭预优化;1:保守;2:激进。 Method:默认值:-1,自动决定优化方法。0 :原始单纯型;1:对偶;2:Barrier; 3: 随机并行;4 :确定并行。如果模型巨大,可以考虑 2. ImproveStartTime 和 ImproveStartGap: 都是确定从什么条件开始,优化转向对可行 解质量的提升上。优化从 ImproveStartTime 设定的时间之后(以秒为单位),或者 ImproveStartGap 设定的收敛gap 达到之后开始进行可行解的提升。 NonConvex: 当模型提示是非凸模型时(Q 矩阵非半正定),需要将此参数设置为2。 NoRelHeurTime / NoRelHeurWork: 对于很难找到可

文档评论(0)

SC_aiXXK + 关注
实名认证
内容提供者

泥沙俱下

1亿VIP精品文档

相关文档