问题标签 [ojalgo]
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.
ojalgo - 从 ojalgo 获得良好的次优解以进行线性优化
介绍
我正在尝试使用 ojalgo 库来生成一种解决方案,以控制放置在任意位置的推进器以生成整体请求的旋转和平移。有时请求的旋转和平移是不可能的,但我希望在这些情况下试一试。
问题
我已经创建了我设置的 ExpressionsBasedModel 的这个最小示例。
如果我请求一组可能的条件,我会得到一个很好的结果:
但如果我要求一些不太可能的事情
理想情况下,我想要一个好的次优解决方案(1,1),但它似乎放弃并返回 0.5,0.5
问题
对于不可能完全解决的问题,是否有可能获得良好的次优解决方案?
可能的问题是我想最小化表达式上的错误,但我认为它实际上最小化了值(同时试图满足约束)
java - 使用 OjAlgo 目标函数进行整数优化
我正在尝试在 Java 中使用 ojAlgo 库进行整数优化,但我无法为其提供我想要的目标函数。
我想最小化函数:(A - BX)'(A - BX),其中A是(nx 1)矩阵,B是(nxn)对角矩阵,X是(nx 1)矩阵优化变量。我希望 X 中的结果仅包含 integers 。
我能够设置一个不同的目标函数来最大化 BX 如何将其更改为 (A - BX)'(A - BX)?这是到目前为止的代码。
java - 当条件数很大并且矩阵是对称且不定的时,是否有任何 ojAlgo 求解器?
我使用 ojAlgo 来求解线性方程组。在一种情况下,我得到一个 RecoverableCondition 异常。可能是因为矩阵是病态的,所以条件数大约是1e15。
我使用 ojAlgo 来解决它,如下面的代码所示。它通常有效,但在这种情况下无效。
是否有任何其他求解器可以用于对称不定(病态)矩阵?
当前失败的大小是 18x18,但以后可能需要 1000x1000。由于它是迭代算法的一部分,因此准确性并不是非常重要。
我试图在一个自包含的示例中重现这一点,但失败了,因为它在那里工作。也许我没有得到完全相同的矩阵直到最后一位。
java - 如何在 ExpressionsBasedModel 上制定优化
我正在尝试找到加载工作站的最佳解决方案。为此,我想使用 OjAlgo 库中的“ExpressionsBasedModel”。当需要的物品位于那里并且成本较低时,应使用工作站。这已经适用于下面附加的代码。我现在想添加另一个优化。
工作站被分组为字符串。即使这会增加成本,我也希望使用尽可能少的字符串。
我该如何制定这种优化?
欢迎提出改进建议
linear-programming - 如何在 ojAlgo ExpressionBasedModel 中鼓励平衡解决方案
我有以下模型:
虽然ei
和ek
权重相同,但我得到的解决方案是:
ei == 720, ek == 0
.
我更喜欢一个尽可能平衡的解决方案,(ei
)。是否有某种方法可以将“尽可能平衡”的要求编码为加权表达式?ek
ei == 360, ek == 360
在这个具体的例子中,我已经注释掉了实际上导致我想要的行为的较低值约束。在现实生活中,模型是动态的,我可能有 5 个等权重的表达式。为了设置较低的约束,我不会知道正确的值。