问题标签 [gurobi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Gurobi python获取定义变量的值
如何获取我之前在 gurobi python 中定义的变量的值(使用 addVar)?我需要比较 gurobi 变量的值,然后执行计算以达到我的目标变量。在优化之前也必须这样做。
gurobi - 使用 Gurobi 求解器的 Web 版本时出错
我正在尝试使用 Gurobi 求解器网络版本来解决线性规划问题。这是链接: http: //www.neos-server.org/neos/solvers/index.html 但无论我提交的问题如何,我都会收到以下错误:
---------- 开始求解器输出 -----------
在时间执行 /opt/neos/Drivers/gurobi/gurobi-mps-wrapper-driver.py:2013-06- 10 14:17:48.434197
错误:/usr/bin/env:/opt/gurobi/latest/linux64/bin/python2.5: 没有这样的文件或目录
我正在提交 MPS 格式的文件。
为什么我会收到此错误?
python - PyDev + gurobipy + Fedora 18 = ImportError
我正在尝试在 Fedora 18 安装上使用 Gurobi 的 python 模块 gurobipy。
到目前为止,我通过执行与 Gurobi 一起分发的 Python 二进制文件,使 Gurobi 下载的提取和未修改版本“工作”。
但是,我无法让它包含 gurobipy 模块:
由于这是发行版的 Python2.7 版本,我不知道如何继续,更不用说将库集成到我系统的 Python2.7 64 位版本中。
ipython - 在 Linux 上的 Enthought Canopy 编辑器中使用 Gurobi 求解器
我目前正在使用 python 使用 Gurobi 求解器。以前,我只是混合使用文本编辑器和终端来编写和运行我的模型,但我目前正在尝试使用 Enthought Canopy Editor。我有一个模型,当我在终端中运行时可以使用python model.py
,但是当我尝试%run model.py
在 Canopy 的 iPython shell 中运行时,我得到:
我的猜测是终端和 Canopy 在不同的地方寻找模块,但我不知道如何纠正它。我在 Gurobi 组网站上找到了有关 OS X 10.8 上的 Enthought Canopy 和 Gurobi 的参考资料,但不知道这些指令与在 Linux 上执行它有多大不同,甚至不知道他在 Canopy 的站点包中安装 Gurobi 的意思。
更新:根据我点击的第一个链接找到的信息,我确实留下了框住的点击,使 Canopy 成为我的默认目录。您必须手动添加 PATH 变量,我想念他们说我必须这样做。所以我就这么做了。我现在在我的终端中运行 Canopy 的 iPython 版本(使用 sys.path 检查);但是,当我尝试运行 python 时,我得到了一个巨大的错误列表。
建议?
并回答@Jonathan 的问题:
sys.prefix
='/usr'
sys.path
:
/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/local/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages/PILcompat
/usr/lib/python2.7/dist-packages/gtk-2.0
/usr/lib/pymodules/python2.7
/usr/lib/python2.7/dist-packages/ubuntu-sso-client
gurobipy.__file__
= '/usr/local/lib/python2.7/dist-packages/gurobipy/gurobipy.so'
python - AMPL 与 Python - 导入表(多维字典?)
我是一名 AMPL 用户,尝试使用 Python(我的第一个 Python 代码)编写线性编程优化模型。我试图找到如何在复合集上声明索引参数。例如,在 AMPL 中,我会说: Set A Set B Set C param x{A, B, C} param y{A, B, C} param z{A, B, C} 以上的集合和参数可以是通过 AMPL 从数据库中轻松读取。
我从数据库中读取的表有六个字段,即 A、B、C、x、y、z。其中三个是主键(A、B、C),其余的(x、y、z)是在主键上索引的值。
PYTHON PART:我正在使用 PYODBC 模块与 SQL Server 连接。我试过“dict”,但它只能索引一个键。我不确定应该使用哪个 python 功能将前三个字段声明为复合集,并将 x、y 和 z 声明为复合集上的索引值。
当然这是不正确的。我想不出办法来做到这一点。
请帮助我:)提前谢谢!
python - ILOG OPL 与 Python
我正在尝试使用 Gurobi Python API 将我的 OPL 模型转换为 Python。我想知道 Python 中是否存在等效的 OPL 元组结构。最好举个例子:
Route 和 Leg 是我的优化模型中的集合;Curr_Time、Min_Time、Max_Time 和 Cube 是在 Route 和 Leg 集上索引的参数。
在 OPL 中,由于我将 Route 和 Leg 定义为键,因此可以将它们视为集合,并且可以对参数进行索引。例如,要解决 Curr_Time,我可以这样做:
我一直在努力在 Python 中找到类似的东西。到目前为止,我在 Python 中有以下内容:
我不确定如何处理 Curr_Time 或 Min_Time?到目前为止,我有:
除了听写,还有更好的方法吗?我想知道是否还有其他选项可以让我以 OPL 允许的方式处理表字段。
linear-programming - Gurobi 花了很长时间为 LP 建立模型
我一直在用 gurobi 解决一些 LP,我注意到对于我遇到的大多数情况,构建模型比实际解决它花费的时间更长。也许这是标准,但对我来说似乎很奇怪。
一个特定的实例需要 1.75 秒来解决,但用于构建模型的以下代码部分需要 13.6 秒:
在上述示例中,numSeq1 = 7475、numSeq2 = 7475、numIS2 = 2517,最终 LP 有 9992 行和 9992 列。我知道这相当大,但构建模型所需的时间几乎是解决模型的 10 倍,这似乎很奇怪。
我尝试了 expr.clear() 而不是为每个约束创建一个新的 GRBLinExpr (注释掉),但它没有帮助。
有什么方法可以让 gurobi 更快地构建模型?如果瓶颈在于构建模型,cplex 在这方面会比 gurobi 更好吗?
谢谢!
optimization - k个连续整数约束
如何在约束编程中陈述以下约束?(最好在 Gurobi 或 Comet 中)。
S 是一个大小为 n 的整数数组。我可以用来填充数组的整数集在 1-k 范围内。每个可以使用的整数都有一个约束ci 。ci表示连续整数i的最小数量。
例如,如果 c1 = 3, c2 = 2,则 1112211112111 不是有效序列,因为必须有两个连续的 2,而 1112211122111 是有效序列。
python - 在 Win 7 上的 Enthought Canopy 中使用 Gurobi 时 Python 内核死机
我试图使用 Gurobi for Python 来解决一个混合整数优化问题,但是每次运行我按照 Gurobi 教程编写的代码时,都会弹出一条消息,说:“内核已死,您要重新启动它吗? ? 如果你不重新启动内核,你将能够保存笔记本,但运行代码将无法工作,直到笔记本重新打开。
我在 Win 7 上将 Enthought Canopy 与 Python 2.7 和 Gurobi 的 Gurobipy 一起使用。
这是我尝试解决的一个小试优化问题,运行后出现了上面的消息:
有人会帮我解决这个问题吗?非常感谢!