如何使用 JOptimizer 或任何其他 Java 库解决给定的优化任务?
How to solve a given optimization task with JOptimizer or any other Java library?
我有这样一个优化问题:
min a * x1^2 + b * x2^2 + c*x3^2 + d * x1*x2 + e * x1*x3 + f * x2*x3
s.t。
x1 + x2 + x3 + x4 = 1
x1, x2, x3, x4 >= 0
其中 a、b、c、d、e、f 为双精度数字
你能帮助我使用 Java 库(例如 JOptimizer)解决这个问题吗?最近一直想找点合适的,但是没找到..
看看 http://www.joptimizer.com/quadraticProgramming.html 中显示的第一个示例。
您的 P 矩阵是:
P={{a, d/2, e/2, 0},{d/2, b, f/2, 0},{e/2, f/2, c, 0},{0, 0, 0, 1}}
下面和例子中的几乎一样。
PS:为了有一个凸问题P矩阵必须是正的,即:
(c d^2)/4 - (b e^2)/4 + (d e f)/4 - (a f^2)/4 > 0
我有这样一个优化问题:
min a * x1^2 + b * x2^2 + c*x3^2 + d * x1*x2 + e * x1*x3 + f * x2*x3
s.t。
x1 + x2 + x3 + x4 = 1
x1, x2, x3, x4 >= 0
其中 a、b、c、d、e、f 为双精度数字
你能帮助我使用 Java 库(例如 JOptimizer)解决这个问题吗?最近一直想找点合适的,但是没找到..
看看 http://www.joptimizer.com/quadraticProgramming.html 中显示的第一个示例。
您的 P 矩阵是:
P={{a, d/2, e/2, 0},{d/2, b, f/2, 0},{e/2, f/2, c, 0},{0, 0, 0, 1}}
下面和例子中的几乎一样。 PS:为了有一个凸问题P矩阵必须是正的,即:
(c d^2)/4 - (b e^2)/4 + (d e f)/4 - (a f^2)/4 > 0