- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 GPLK 的新手,我正在尝试通过它解决 Steiner Tree 问题。我使用的数学公式是这样的:
这是我正在测试的代码片段:
# Number of terminal vertexes
param p, integer;
# Number of steiner vertexes
param s, integer;
# Terminal vertexes set
set P := 1..p;
# Steiner vertexes set
set S := (p+1)..(p+s);
# Vertexes set
set V := P union S;
# Edges set
set E, within V cross V;
# Edges cost
param c{(i,j) in E} default 0;
# Variable y
var y{(i,j) in E}, binary;
# Variable x
var x{(i,j) in E} >= 0;
# x constraint
s.t. Xconstraint{(i,j) in E}: x[i,j] <= (p) * y[i,j];
# Steiner vertexes constraints
s.t. Sconstraint{i in S}: sum{(i,j) in E} x[i,j] - sum{(k,i) in E} x[k,i] = 0;
# Terminal vertexes constraints
s.t. Pconstraint{i in P}: sum{(i,j) in E} x[i,j] - sum{(k,i) in E} x[k,i] = -1;
# Minimize vertexes cost
minimize cost: sum{(i,j) in E} c[i,j]*y[i,j];
solve;
printf "The tree cost is:\n",
sum{(i,j) in E} c[i,j] * y[i,j];
printf "\n";
data;
param p := 10;
param s := 8;
param : E : c :=
1 16 1340771
2 18 2783118
2 14 1534253
2 17 71057
3 12 1439171
3 15 1921785
4 11 3793393
4 13 573690
5 18 1268333
6 17 2907508
7 11 1981430
8 11 1205285
8 12 3190105
9 12 393839
10 16 461534
10 18 1072719
11 4 3793393
11 7 1981430
11 8 1205285
12 3 1439171
13 4 573690
12 8 3190105
12 9 393839
13 14 776147
13 17 2239343
14 2 1534253
14 13 776147
14 15 2613116
15 3 1921785
15 14 2613116
15 16 170002
16 1 1340771
16 10 461534
16 15 170002
17 2 71057
17 6 2907508
17 13 2239343
18 2 2783118
18 5 1268333
18 10 1072719
;
end;
我已经使用这个网站测试了这个例子: http://www3.nd.edu/~jeff/mathprog/mathprog.html并显示此消息:“问题没有可行的解决方案”。我认为这个示例不好或约束错误,有人可以帮助我吗?
最佳答案
您需要更改此约束:
# Terminal vertexes constraints
s.t. Pconstraint{i in P: i != 1}: sum{(i,j) in E} x[i,j] - sum{(k,i) in E} x[k,i] = -1;
那是因为在这个基于流的公式中,第一个节点是流的来源。
关于graph - 用 GLPK 求解 Steiner 树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30686068/
我的代码中发生了一些奇怪的事情。我创建了一个函数来动态创建 MIP 问题以供 GLPK 解决。问题是在代码的某些部分 JVM 崩溃了。 调试后,我发现崩溃恰好发生在我创建 intArray (GLPK
我需要编写一个整数程序。它非常简单,但问题是几乎没有关于如何使用可调用库为 GLPK 编写整数程序的好信息,更不用说 GLPK# 了。 我的整数程序看起来非常像这样: Maximise: X[0] +
我正在尝试解决 GLPK 中的问题,但它给了我这个消息“问题没有主要可行的解决方案”。您将在下面找到该程序。给我错误的约束是“约束 6”,但我不知道如何修复它。谢谢你们的帮助 param n, int
我希望这对某人来说是显而易见的。我只使用过 GLPK/MathProg。 我无法弄清楚 GNU MathProg(在 GLPK 内)中的语法来执行以下操作,例如: set PartsOfWeek; s
我刚刚编写了一个 python 脚本来使用 igraph 模块执行优化模块,这个函数使用了 GLPK 库,但是即使在安装了 python-glpk 和几乎所有与 glpk 相关的包之后我也会收到这个错
我无法在一个名为 dist 的包含示例上运行我通过 apt-get 安装的 GLPK 求解器 (glpsol)。它抛出以下内容: $ glpsol dist.mod GLPSOL: GLPK LP/M
我有一个线性问题,我想在 Java 上使用 GLPK 获得最佳对偶解决方案。我试过这个: parm = new glp_smcp(); parm.setMeth(GLPKConstants.GLP_D
我一直在尝试在我的 Haskell 项目中使用glpk-hs,但我完全不知道如何去做。我正在使用 stack 来运行我的程序,我的困惑很可能来自于我对其工作原理缺乏了解。 话虽这么说,我已经下载了gl
我在 Linux 下使用 GLPK 来解决一些线性规划问题。在我的一个限制中,我有: s.t. example: binary_var+binary_val 0 还是 1? 最佳答案 如果binary
我正在尝试在我的 java 项目中使用 GLPK。我点击了这里的链接https://wiki.nps.edu/pages/viewpage.action?pageId=113606659安装和配置 j
我正在使用 Glpk java,我必须解决这个问题(原始) \* Problem: Branch and Bound Problem *\ Maximize z: + 0.5 x1 + 0.5 x2
如何在我的控制台或文件上打印 java-glpk 中所有已解决的问题? 类似这样的事情:(此输出来自 gusek) ------ ------------ ------------- -----
GLPK 是否可以将解决方案分散到多个等成本变量上? 假设我在 myprog 中有这段代码: from pymprog import * begin() loads = var('loads', 3)
我在我的程序中使用 GNU 线性编程工具包。一切正常,但是当我用 valgrind 检查程序时,我发现了一些内存泄漏: ==7051== 160 bytes in 1 blocks are still
我正在使用 Glpk java 来解决 LP 松弛问题。 奇怪的是,有时它可以工作,但有时 JVM 会崩溃。当它崩溃时,我遇到了这个错误: # A fatal error has been detec
较新版本的 glpk 没有 LPX api,而旧版软件包需要它。我如何将旧包(如 COBRA )与新版本的 glpk 一起使用? 请注意,COBRA 可用于 MATLAB 和 Python。两者都需要
我正在尝试安装 sparkTable在依赖于 Rglpk 的 R 3.1.0 中.我在系统上手动安装了 GPLK 并将 libs 文件夹添加到 LD_LIBRARY_PATH在为 install.pa
我正在使用 GLPK C API 来解决混合整数规划问题。有没有办法以人类可读的格式打印目标/约束以进行调试? 最佳答案 也许最好的格式是 CPLEX LP format 。它看起来像这样: Maxi
我正在尝试在我的 java 项目中使用 GLPK。我点击了这里的链接https://wiki.nps.edu/pages/viewpage.action?pageId=113606659安装和配置 j
我找到了很多关于如何为求解器指定模型(问题/约束)和从数据文件读取参数的 GLPK for Java 示例,但关于编程参数输入/输出的内容很少。在我的例子中,我需要以编程方式将值(权重和值的数组)提交
我是一名优秀的程序员,十分优秀!