用Julia调用SCIP-程序员宅基地

技术标签: 算法  后端  

在网上搜了很多过时的英文教程,浪费了很多时间。可能之前用Julia调用SCIP还是比较繁琐的,因为我搜到的教程也都是官方的,可能就是太旧了,但是目前要用Julia调用SCIP就两步:
一、安装SCIP求解器
二、安装SCIP接口的包"SCIP.jl"

一、安装SCIP求解器:
SCIP求解器去官网下载exe文件,下完之后就下一步、下一步安装就行,不需要下载源码再手动编译,需要注意:
1)版本,最新版的求解器可能接口还没做好,所以我下的是7.0.0
2)环境变量一定要设置
具体过程参考:
https://www.cnblogs.com/dengfaheng/p/10041488.html

二、安装“SCIP.jl”
我安装的版本号是0.9.5

(@v1.5) pkg> add SCIP@v0.9.5
(@v1.5) pkg> build SCIP

按道理来讲这样应该就可以运行了
我的测试代码:

using JuMP
using SCIP

gp = Model(SCIP.Optimizer)
@variable(gp, a, Bin)
@variable(gp, b, Bin)
@objective(gp, Min, a+b)
optimize!(gp)

输出:

feasible solution found by trivial heuristic after 0.0 seconds, objective value 0.000000e+00
presolving:
presolving (1 rounds: 1 fast, 0 medium, 0 exhaustive):
 2 deleted vars, 0 deleted constraints, 0 added constraints, 0 tightened bounds, 0 added holes, 0 changed sides, 0 changed coefficients
 0 implications, 0 cliques
transformed 1/3 original solutions to the transformed problem space
Presolving Time: 0.00

SCIP Status        : problem is solved [optimal solution found]
Solving Time (sec) : 0.00
Solving Nodes      : 0
Primal Bound       : +0.00000000000000e+00 (3 solutions)
Dual Bound         : +0.00000000000000e+00
Gap                : 0.00 %

但是中途可能会有很多问题,比如报错说没有设置环境变量什么的可以去Julia论坛搜一搜,另外重启电脑、卸载重装都是解决问题的有效方法。。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Bepanono/article/details/117428719

智能推荐

Python读写xml文件_python xml读写保留编码-程序员宅基地

文章浏览阅读424次。python读写xml文件时会删除xml文件第一行的声明_python xml读写保留编码

( 图论专题 )【 最大费用最大流 】-程序员宅基地

文章浏览阅读2.6k次。( 图论专题 )【 最大费用最大流 】【 最大费用最大流 】只需要将【 最小费用最大流 】的w取相反数就好了,最后的mincost( 最小费用 )也取相反数就是最大费用了。( 图论专题 )【 最小费用最大流 】例题:HDU - 643710 3 1 101 5 1000 05 10 1000 1第一行n,m,K,M, 每天n个小时,m个视频,K个人,观看相同视频时失去W幸福值。接下来m行,每行S,T,w,op四个正整数,dii个视频的开始时间,结束时间,看完得到的幸福值,.._最大费用最大流

C语言再学习 -- 段错误(核心已转储)_c语言中的段错误是什么意思-程序员宅基地

文章浏览阅读6.1w次,点赞80次,收藏332次。参看:Linux下的段错误产生的原因及调试方法参看:Linux环境下段错误的产生原因及调试方法小结参看:维基百科--Segmentation fault参看:LINUX内核段错误调试详细指南精品培训PPT讲义一、什么是段错误?一旦一个程序发生了越界访问,cpu 就会产生相应的保护,于是 segmentation fault 就出现了,通过上面的解释,段错误应该就是访问了不可访问的内存,这个内存区要_c语言中的段错误是什么意思

密码学——欧几里得扩展算法(求模逆)_欧几里得算法求模逆元-程序员宅基地

文章浏览阅读1.6k次,点赞3次,收藏18次。刚刚咱们已知k = 19 求 k^(-1)的情况叫做求k的逆元求逆元的方法就叫做欧几里得扩展算法我这里还有几个k和它对应的k^(-1) 你们可以计算一下。_欧几里得算法求模逆元

基于Android的个人信息中心布局设计_安卓信息填写页面布局-程序员宅基地

文章浏览阅读1.1w次,点赞18次,收藏212次。1、总体布局总体布局借鉴了微信的_安卓信息填写页面布局

山东省东营市计算机考试,东营市2017年计算机应用能力考试报名通知-程序员宅基地

文章浏览阅读80次。东营市2017年计算机应用能力考试报名通知根据山东省人事考试中心《关于2017年专业技术人员计算机应用能力考试考务工作有关问题的.通知》(鲁人考函〔2017〕14号)文件精神,为做好我市2017年全国专业技术人员计算机应用能力考试考务组织实施工作,现将有关问题通知如下:一、考试科目(模块)参加2017年专业技术人员计算机应用能力考试的人员,请按照《2014版专业技术人员计算机应用能力考试科目(模块..._2017东营初中微机考试

随便推点

day01 windows编程入门-程序员宅基地

文章浏览阅读1.7k次,点赞5次,收藏16次。我们以前见过double,int,long,我们都可以很清晰的知道他们是什么意思,但是这玩意可读性这么差,而且还都是大写,怎么记得住啊。你可以会觉得,这是什么鬼,怎么这么多参数,我们以前写的C++的mina最多也就两个参数啊,但是,你必须接受这个现实,windows编程有非常多的复杂概念,和非常复杂的声明等等。Windows编程的本质就是使用好操作系统,想要用好操作系统必不可少的秘籍----MSDN。我们已经完成了第一个窗口的实例,接下来我们将学习如何编写一个正规的第一个窗口。_windows编程入门

给已有的linux系统增加磁盘容量_linux系统如何追加一个硬盘容量-程序员宅基地

文章浏览阅读309次。【代码】给已有的linux系统增加磁盘容量。_linux系统如何追加一个硬盘容量

操作系统的安全管理_安全操作系统设计技术(tcb)-程序员宅基地

文章浏览阅读1.1w次,点赞4次,收藏24次。OS的安全管理_安全操作系统设计技术(tcb)

Bash字符串处理(与Java对照) - 10.判断两个字符串是否相等(不等)-程序员宅基地

文章浏览阅读438次。Bash字符串处理(与Java对照) - 10.判断两个字符串是否相等(不等)In JavaString.equals & String.equalsIgnoreCaseboolean equals(Object anObject) 比较此字符串与指定的对象。 boolean equalsIgnoreCase(Strin..._bash字符串相等

Hadoop基础学习---3、HDFS概述、HDFS的Shell操作、HDFS的API操作_hadoop setrep-程序员宅基地

文章浏览阅读798次。Hadoop基础学习---3、HDFS概述、HDFS的Shell操作、HDFS的API操作_hadoop setrep

windows版本的免费sip软交换ippbx_windows用 免费pbx-程序员宅基地

文章浏览阅读250次。完全永久免费的sip软交换ippbx,下载包带有已编译可以直接使用的程序和vs工程源码_windows用 免费pbx