求助:Julia 0.6.4.1版本无法添加LKH包,需技术支持
解决Julia 0.6.4.1中安装LKH包的问题
方案1:手动安装兼容Julia 0.6的LKH.jl旧版本
Julia 0.6属于老旧版本,当前LKH.jl的最新版本已不再支持它。你可以找到仓库中兼容Julia 0.6的历史提交,手动克隆并切换到对应版本:
- 打开Julia 0.6的REPL,执行以下命令克隆仓库:
Pkg.clone("https://github.com/JuliaOpt/LKH.jl.git") - 前往LKH.jl的GitHub仓库,找到2018年及以前的历史提交(Julia 0.6发布于2017年,这类提交大概率兼容),复制对应的提交哈希值(如
abc1234)。 - 在REPL中切换到该提交:
Pkg.checkout("LKH", "abc1234") - 执行
Pkg.build("LKH")完成构建,之后即可正常使用包。
方案2:直接调用LKH二进制程序绕开Julia包依赖
如果上述方法失败,你可以直接使用LKH的独立二进制文件,在Julia中通过外部调用完成TSP求解:
- 下载对应你操作系统的LKH二进制程序(推荐LKH 2.x版本,兼容性更好)。
- 在Julia代码中生成符合LKH要求的TSP输入文件(参考TSPLIB标准格式),同时编写参数文件(.par),指定输入输出路径、求解参数等。
- 使用Julia的
run函数调用二进制程序:# 假设LKH二进制在当前目录,参数文件名为tsp_params.par run(`./LKH tsp_params.par`) - 读取LKH输出的路径文件,解析成Julia可处理的数组格式。
方案3:使用兼容Julia 0.6的替代TSP包
如果LKH实在无法安装,你可以尝试其他支持Julia 0.6的TSP求解包:
- 比如
TravelingSalesmanHeuristics.jl,同样需要安装兼容旧版本的历史提交:Pkg.clone("https://github.com/JuliaOpt/TravelingSalesmanHeuristics.jl.git") Pkg.checkout("TravelingSalesmanHeuristics", "兼容0.6的提交哈希") - 或者
TSP.jl,同样通过历史版本安装。
内容的提问来源于stack exchange,提问作者Soma
相关产品推荐
相关产品推荐

