问题标签 [linear-programming]

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.

0 投票
6 回答
14797 浏览

python - 我应该使用哪些库在 python 中进行线性编程?

快速搜索“python 线性编程”会发现很多命中(例如这个)。通过它们,我看到了很多关于过时的依赖项、糟糕的文档等的抱怨。

任何人都可以为python推荐一个无头痛的(例如,快速、有据可查、易于安装、干净的API)线性编程库吗?

0 投票
4 回答
384 浏览

algorithm - 这是整数规划吗?

问题:n 个变量 (x) 加起来是一个常数。x1+x2+..+xn = const,其中每个 x 只能取 p(比如 5)个正整数值。我们希望找到 x 之间的差异最小化的解决方案,即它们分布最均匀。这是一个整数规划问题吗?

dlm

0 投票
1 回答
468 浏览

math - 一个数学规划问题

我有一个优化问题如下。

给定一个正整数数组,例如(y1 = 2, y2 = 3, y3 = 1, y4 = 4, y5 = 3),我的目标是最大化 functions 的值的总和f(x), wheref(x) = x if x + y <= mf(x) = 0else 。(m是一个正整数)

例如,在上面的这个特定示例中(使用m = 5),最佳x值是2,因为总和是2 + 2 + 2 + 0 + 2 = 8,它是其他可能值中最高的x(隐式地,可能x范围为05

我当然可以详尽地计算并比较所有可能的 x 值产生的总和,并选择给出最高总和的 x,前提是 x 的范围相当小。然而,如果范围变大,这种方法可能变得过于昂贵。

我想知道我是否可以从线性规划之类的东西中使用任何东西来更普遍、更正确地解决这个问题。

0 投票
3 回答
4309 浏览

language-agnostic - 解决LP(和QP)的“内点法”的实现

我想看看 IPM 的几个实现。首选语言是 C/C++、Java 或任何脚本语言,如 python、perl。其他的也很好。

我正在寻找可以帮助我的好资源,

  1. 优化技术基础,
  2. 内点法的基础知识及其与其他技术的基础差异,
  3. IPM 的类型,
  4. 算法细节,以及
  5. 示例实现。

作为我项目的一部分,我对此很感兴趣,我将使用这些想法/逻辑来解决线性或二次方程的系统。

如果您对上述资源有任何信息,请告诉我。

0 投票
1 回答
1311 浏览

algorithm - 单纯形法/线性规划帮助

在编写实现单纯形法的算法之前,我想我会在实际编程工作开始之前解决一个问题。

出于某种原因,我永远无法得到正确的答案。我已经理解了这个方法,但是问题出在行操作上——你试图让一列的值都为 0,除了值为 '1' 的枢轴元素。

为此,我通过执行 R1-R2、R2+5R1 等来处理行。我总是设法让枢轴列为 1,其余为 0,但是我的答案永远不会匹配正确的答案。我已将其缩小到行操作的问题 - 是否有任何与此相关的规则,或者我可以随心所欲地玩弄行吗?另外,我可以在旧的画面和现在的画面之间混合吗?

谢谢

0 投票
2 回答
887 浏览

c# - 有界变量的 C# LP/拉格朗日

摘要:我将如何解决这个问题?

你好呀,

我正在研究一个混合式最大化问题,其中我的变量将受到最小值和最大值的限制。我的问题的一个代表性例子可能是:

我的最终项目涉及一个与上述类似的更复杂的问题。问题的结构不会改变——只有系数和输入会改变。因此,对于上面的示例,我将寻找一组函数,这些函数可能允许 C# 程序快速确定x,然后y,然后z像:

很想听听你对这个的想法!

谢谢!

0 投票
2 回答
3973 浏览

python - testing pulp installation fails

Following instructions from http://www.coin-or.org/PuLP/main/installing_pulp_at_home.html#installation , I installed PuLP using "Windows Installation from source"

When I tried to run the test on the page ( Instructions on the page : "To test that that you pulp installation is working correctly please type the following into a python interpreter and note that the output should be similar. The output below is what you would expect if you have not installed any other solvers and the CoinMP solver bundled with pulp works.")

My Results :

import pulp pulp.pulpTestAll() Solver pulp.solvers.CPLEX_DLL unavailable. Solver pulp.solvers.CPLEX_CMD unavailable. Solver pulp.solvers.COIN_CMD unavailable. Solver pulp.solvers.COINMP_DLL unavailable. Solver pulp.solvers.GLPK_CMD unavailable. Solver pulp.solvers.XPRESS unavailable. Solver pulp.solvers.GUROBI unavailable.

According to the webpage,this should be my output :

import pulp pulp.pulpTestAll()
Solver pulp.pulp.COIN_MEM unavailable. Solver pulp.pulp.COIN_CMD unavailable. Testing continuous LP solution Testing maximize continuous LP solution Testing unbounded continuous LP solution Testing MIP solution Testing MIP relaxation Testing feasibility problem (no objective) Testing an infeasible problem Testing an integer infeasible problem (Error to be fixed) Testing column based modelling Testing column based modelling with empty constraints Testing dual variables and slacks reporting Testing resolve of problem Testing Sequential Solves Testing fractional constraints Testing elastic constraints (no change) Testing elastic constraints (freebound) Testing elastic constraints (penalty unchanged) Testing elastic constraints (penalty unbounded) * Solver pulp.pulp.COINMP_DLL passed. Solver pulp.pulp.GLPK_MEM unavailable. Solver pulp.pulp.GLPK_CMD unavailable. Solver pulp.pulp.XPRESS unavailable.

I am using Python 2.7.1, PuLP 1.4.7 on Windows 7 64 bit.

I guess it is because the CoinMP solver bundled with PuLP is not working. I just started working on Python a week back, I am just an amateur in programming.

0 投票
1 回答
200 浏览

java - Java - LP求解器动态链接错误

在我正在从事的项目中,我遇到了线性规划求解器的问题。首先,我尝试使用 Ajanta,但这并不能解决我需要解决的问题。所以我尝试了 GLPK 和 lp_solve,但似乎我无法让 Windows 了解动态库的位置。

我将存根(将代码与 java 链接的 .dll)和库的实际代码(它们似乎通常是分开的)放在 C:\Windows\System32 上,并检查了以下内容:
- 路径变量是正确的设置为在此目录上搜索。
- 我正确地将 java 库与我的程序相关联。
- 我用 Dependency Walker 检查了依赖关系,这个程序找到了所有东西。(http://www.dependencywalker.com/)

我正在使用 JRE/JDK 6 更新 26 在 Windows 7 上工作。我也在 E​​clipse 上编码。

我做错了什么?

0 投票
2 回答
776 浏览

algorithm - 求解线性丢番图不等式系统的算法

是否有一个相当快的算法来解决线性丢番图不等式系统?

0 投票
3 回答
326 浏览

algorithm - 这是一个线性规划问题吗?

我一直在努力解决一个问题......整个问题很复杂......但让我尽力解释真正重要的部分......

我有一个图表,其中每条边代表连接的两个节点之间的相关性。每个节点都是一个时间过程(TC)(即400个时间点),其中事件将在不同的时间点发生。两个节点之间的相关性定义为重叠事件的百分比。为简单起见,让我们假设每个节点上发生的事件总数与 $tn$ 相同。如果两个 TC(节点)有 $on$ 重叠事件(即,发生在完全相同的时间点的事件)。然后,相关性可以简单地定义为$on$/$tn$。

现在,我有一个由 11 个节点组成的网络;我知道每两个节点之间的相关性。如何为所有满足相关约束的 11 个节点生成 TC?

当您知道两者之间的相关性时,很容易对两个节点执行此操作。假设 TC_1 和 TC_2 的相关值为 0.6,这意味着两个 TC 中有 60% 的重叠事件。此外,假设 TC_1 和 TC_2 的事件总数与 $tn$ 相同。将事件放置在两个 TC 中的一个简单算法是首先随机选择 0.6*$tn$ 个时间点,并将这些时间点视为两个 TC 中发生重叠事件的时间段。接下来,在 TC_1 中随机选择 (1-0.6)*$tn$ 时间点,以放置 TC_1 的其余事件。最后,随机选择 TC_2 中的 (1-0.6)*$tn$ 时间点,其中 TC_1 中对应的时间点没有发生任何事件。

然而,当你考虑一个 3 节点网络时,它开始变得越来越难,其中生成的三个 TC 需要满足所有三个相关约束(即 3 条边)......对于 11 节点网络来说几乎不可能做到这一点...

这对你有意义吗?如果不是请告诉我...

我在想这只是一个诡计的计算机科学编程问题......但我越想它,它更像是一个线性编程问题,不是吗?

有人有合理的解决方案吗?我在 R 中这样做,但任何代码都可以......