2018年8月22日 Baron求解过大规模非线性问题误差
北-敬一-计算机系统生物学:请问有谁用过Baron解过大规模非线性问题?我发现Baron得出来的解的误差明显大于设定的约束容差(feasibility tolerance),我的是一个混合整数双线性问题,两三万个连续变量,十几个整数变量,十几个非线性约束。MATLAB/Baron界面,Baron版本均为最新。
留-海德堡-组合优化AI:tolerance指的是MIP Gap,还是某个约束的tolerance呢。Baron没用过,向您学习一下。
北-敬一-计算机系统生物学:不是,我指的是对于一个约束的容差,就是你把解代入一个约束,得出来的值和约束的lhs,rhs(约束不等式两边的常数)的差值。
北-敬一-计算机系统生物学:其实我将这个问题问过Baron的开发者,但他也不知道为什么会这样。
留-海德堡-组合优化AI:试着改改这个tolerance,再跑跑。另外可以再试试其他minlp solver,比如Couenne。
北-敬一-计算机系统生物学:Tolerance 为10e-7或10e-6,有些约束的误差可以达到高于10e2,
目前只有Baron能求全局最优吧,还能怎么改容差差,我本来设定的容差就不高,对于非线性问题好像只有Baron能全局最优吧。
留-海德堡-组合优化AI:大家多读gurobi或者cplex关于分布式算法的文档吧,里面写的很清晰。minlp只是试图全局最优吧?nonconvex的时候,u never know。
2018年8月27日 海德堡大学Panda
王-东北大学-动态优化:Panda 是 Porta 的新版本 有用过Porta或者 Panda的小伙伴可以交流一下。
留-海德堡-组合优化AI:我在美国做硕士论文求convex hull所有facets的时候还用过Porta,去了海德堡才意识到原来是这里出品的。
王-东北大学-动态优化:最近有一篇论文 可以找到0-1混合整数规划凸包的一般描述,需要借助Porta软件来实现。不过貌似Porta的算法是暴力计算,决策变量维数超过30,计算时间就超长。所以我在考虑它的新版本Panda。
留-海德堡-组合优化AI:类似的还有polymake,还有一个Magdeburg大学出品的软件,忘了名字了。
ZHOU-Univ of kentucky:其他的软件还有parma polyhedra library, cddlib, lrslib, 以及新出的Normaliz。
华-统计-交通优化:panda是python的库?
Yin-SMU-Power Engineering Phd:这俩不是一个东西,py的库叫pandas。
2018年8月28日IBM CPLEX 求解binary变量做post processing
Zelene-大连理工-优化:求教各位前辈,我在用IBM ILOG CPLEX IDE求解一个混合整数规划模型时,把其中的一个二维决策变量定义为 float+ 类型,但在最后求得的结果里,该变量还是出现了负数值,请问这是为什么呢?如何可以修正?
留-海德堡-组合优化AI:决策变量不应该是binary么
Zelene-大连理工-优化:我求解的是一个混合整数规划模型,里面有部分变量是连续型的,其中有一个要求是大于零的实数,所以我按照opl建模语言教程把它定义为float+。但不知为何求出来还是有小于零的值。
李-南航大-机场交通优化:那是近似解,有Gap,小于0的值应该很小,接近于0.binary是0-1变量类型的决策变量,但好多VRP问题会有binary类型变量和float+类变量。
留-海德堡-组合优化AI:科学计算都有numerical error。可以做一下post processing~例如binary变量,解出来很有可能是+-0.0000000001,需要做一下post processing,加个判断语句,把这些变成0。
2018年8月29日 优化软件 CPLEX & GUROBI &SCIP
李-西南交大-运输优化系统:想问下我在用yalmip求解的时候,cplex和gurobi都能找到,可是为啥scip一直都是Solver not found,明明这三个软件我都装了~
小千-东普-数据分析:试试重新安装一下,可能是注册表信息损坏。
李-西南交大-运输优化系统:嗯嗯,就是重新装了两遍~,还把原来旧的5.0.1卸载了,装了新的6.0.0。然后我用path在matlab里面搜,确实没看到scip的path,cplex和gurobi的path都有,难道是scip没写matlab的接口?我确实在scip的安装文件夹里没找到跟matlab相关的,装完具体的solver软件还需要在matlab里面添加路径吗,我有点忘记了我之前装cplex和gurobi时候的了~
杨-西南交大-运筹优化:需要添加路径。
李-西南交大-运输优化系统:可是SCIP安装文件夹里面没有m文件。
杨-西南交大-运筹优化:用yalmiptest 命令看看对应的solver是否起作用。
李-西南交大-运输优化系统:添加了一堆空文件夹,yalmiptest查过了,SCIP就是 solver not found。
杨-西南交大-运筹优化:没用过scip,之前折腾过没成功。
李-西南交大-运输优化系统:那yalmip官网上都是骗人的,说可以支持scip,我之前折腾scip也没成功,现在又要用还是不行~我去看看SCIP主页上有没有说相关情况。
杨-西南交大-运筹优化:可以发邮件问问Johan。
李-西南交大-运输优化系统:哈哈,有道理!~可以试试,说不定下个release他就修复这个bug了
杨-西南交大-运筹优化:Scip对mip模型的效率没有gurobi和cplex高。
李-西南交大-运输优化系统:我主要看重SCIP能解nonlinea。但其实我感觉应该SCIP的问题,它安装文件里没写个m文件接入matlab,我看gurobi和cplex都有。
杨-西南交大-运筹优化:我用这两个都没问题。
李-西南交大-运输优化系统:嗯嗯,我也是,cplex和gurobi都没问题,但是这俩好像解不了nonlinear。
王-巴黎六大-运筹:有接口告诉我哈 我两年前试过 没找到接口
杨-西南交大-运筹优化:我之前scip没弄成功啊。
伍-杉数科技:https://www.inverseproblem.co.nz/OPTI/这个的学术版提供了来布接口。
李-西南交大-运输优化系统:
伍-杉数科技:yalmip应该是依赖这个工具包。
李-西南交大-运输优化系统:我好像看到了SCIP官网上说接口要自己整,附了code。
伍-杉数科技:
王-巴黎六大-运筹:这个只能windows用,其他平台不能用的 小心哈。
李-西南交大-运输优化系统:我先看看SCIP的官网的,它好像附了code
伍-杉数科技:可以自行调整编译,确实是依赖这个库。
王-巴黎六大-运筹:Opti是windows接口 其他都不能用。
伍-杉数科技:https://github.com/jonathancurrie/OPTI/tree/master/Solvers/Source/scip,这是接口源码,我想有源码可以调整调整,自己编译一下,不是什么难事
李-西南交大-运输优化系统:恩,我就是在windows的~谢谢,我瞅瞅~SCIP官方在GitHub上的代码已经放弃matlab了。。。
李-西南交大-运输优化系统:没放matlab的,SCIP Interfaces · GitHub,https://github.com/SCIP-Interfaces。
王-巴黎六大-运筹:没必要scip 好多替代的solver啊。
李-西南交大-运输优化系统:我刚刚看的scip官方的,除了lingo,其他解nonlinear的求解器我感觉我都用不了。scip是唯一开源的了。
王-巴黎六大-运筹:Ipopt
李-西南交大-运输优化系统:我的是minlp,就这几个里面选,Baron下来应该就到scip了。
伍-杉数科技:couenne目前只有ampl接口,opti也支持,当然也可以pyomo调用。
王-巴黎六大-运筹:Jump不支持吗?
伍-杉数科技:支持,也是hook的nl那套。以ampl接口为原型。
李-西南交大-运输优化系统:不过你说yalmip也用的OPTI Toolbox,为啥yalmip识别不出SCIP。
伍-杉数科技:不用来布,不用yalmip。
李-西南交大-运输优化系统:果然是要用它的code,不过不知道为什么只能识别linear,却识别不了nonlinear,应该还是它的bug,更新过一次patch的,
原文链接:https://mp.weixin.qq.com/s/OmYUQO0RodcvPQdYAtkjng
欢迎查看原文,获取更多讯息!
用户评论
哇,这篇文章真是太棒了!我一直用CPLEX和BARON,没想到还有这些“小心机”,可以提升效率好多!SCIP我也是最近才开始接触的,希望能早日上手,体验一下这款软件的厉害之处!
有9位网友表示赞同!
我之前优化模型的时候用的都是传统的暴力搜索法,速度太慢了。现在看这篇文章才知道CPLEX这种专业的优化工具可以用多大的功率来解决问题!真棒!
有10位网友表示赞同!
作为入门者,这篇博文对我有很大的帮助!很多专业术语解释的也很详细,让我更容易理解。希望作者以后能继续分享更多关于这些软件的使用技巧!
有17位网友表示赞同!
这篇文章写的太好了,把CPLEX、BARON和SCIP三个软件的一些核心功能都提了出来,而且还比较深入,能够帮助大家更好地理解如何使用它们。我特别关注了“设置启发式策略”这个部分,看来以后可以尝试一下!
有18位网友表示赞同!
这篇文章对我来说有些过于专业了,很多知识点我还不太明白。可能更适合有一定优化建模基础的人阅读吧!希望作者以后也能写一些针对初学者的入门教程!
有19位网友表示赞同!
涨姿势!我一直用的商业优化工具,现在看到这些开源软件的介绍,感觉很有机会尝试一下。尤其是SCIP这款软件,据说性价比很高,期待深入学习!
有15位网友表示赞同!
这篇文章只是提到了软件的功能,却没有具体案例分析,读起来有些抽象。希望作者能够添加一些实际应用案例,更加直观地展示这些软件的强大之处!
有5位网友表示赞同!
我觉得文章里提到的“设置禁忌策略”这个技巧,非常实用!我之前遇到过类似问题,使用了这项技巧后确实可以提高收敛速度,值得学习!
有16位网友表示赞同!
这篇博文让我对CPLEX、BARON和SCIP的了解程度提升了不少,这些软件在具体应用场景下各有优缺点。作者总结得不错,帮助大家选用合适的工具,而且能优化模型效率真的很重要!
有19位网友表示赞同!
"小心机"这个词用得真好!感觉就像是揭开了这些强大软件背后的秘密,读起来很有趣味性。感谢作者分享这些宝贵的经验!
有6位网友表示赞同!
我主要是做离线模型优化,这篇文章的内容对我的工作不太相关,不过还是感觉很有价值,至少扩展了我的知识面!
有14位网友表示赞同!
希望以后能看到关于CPLEX、BARON和SCIP更多实战案例的分享,那样更容易理解它们的应用场景和具体操作方法!
有20位网友表示赞同!
我用过一些开源优化工具,但这些软件的功能实在太强大! 感觉像个学习者的利器,希望能早日掌握他们的技能。
有10位网友表示赞同!
作者写的很详细,不过对于软件的安装和配置步骤并没有提及,希望文章后续能补充相关内容!
有12位网友表示赞同!
看了这篇博文以后,感觉优化软件真的是太重要了!不仅可以提高效率,还能解决很多复杂的实际问题,我要好好学习一下这些软件的使用技巧!
有18位网友表示赞同!
我最近也正在学习CPLEX和BARON,这篇博文章让我了解了很多新的知识点。作者的讲解非常清晰易懂,很有帮助!以后遇到问题了,可以来参考这篇文章!
有20位网友表示赞同!
个人觉得SCIP在某些特殊情况下表现可能更好一些,但需要深入测试才能得到确定性结论!
有20位网友表示赞同!
文章提到的"禁忌策略"技巧的确让我眼前一亮,这个方法很实用!我之前优化模型的时候也遇到过类似的问题,可以尝试用这种方法改善。感谢作者的分享!
有14位网友表示赞同!