数学优化库爪哇 - 免费或开源的建议? [关闭](mathematical optimizati

2019-07-18 04:24发布

有谁知道,执行优化数学(线性规划,凸优化,或者更一般类型的问题),这样的图书馆吗? 我正在寻找像MATLAB,但处理更大的问题的能力。 我必须写我自己的实现,还是买那些商业产品(CPLEX等)的一个?

Answer 1:

一个较好的答案取决于你所说的“凸”和“更普遍的”,如果你正在试图解决大或具有挑战性的线性或凸二次优化问题(特别是分立元件给他们),那么它是很难被击败的主要商业解算器, gurobi , CPLEX和短跑除非钱是你的一个大问题。 他们都有干净的JNI接口,并且可在大多数主要平台。

该硬币或项目有几个优化,并有JNI接口的项目。 它是完全免费的( EPL许可证),但需要更多的工作来建立,可能不会给你同样的性能。



Answer 2:

有一个叫线性优化工具lpsolve 。 它是用C写的(我认为),但附带了一个Java / JNI封装(API不是很OO,但它的工作)。 这是很容易使用,我有它在去年的实时系统相当愉快和稳定运行。



Answer 3:

您可以尝试JOptimizer ,开源和适合一般凸优化问题(线性规划,二次规划,qcqp,锥形规划,半定规划,ECT



Answer 4:

OptaPlanner (爪哇,开源,ASL)可以处理较大的问题,并且不具有约束类型的限制(如线性VS凸)。



Answer 5:

你可能想看看JScience ,它看起来相当完整。 (数学结构,线性代数求解,等等)



Answer 6:

IPOPT有一个用于Java接口 。 您可能还能够适应Java的APMonitor建模语言。 我开发这个平台,所以我会很高兴与人合作,如果他们想创建一个新的接口到Java。 它已经有一个Python的API和MATLAB的接口,包括解算器,如IPOPT,APOPT,BPOPT,和其他人可以处理大型系统。



Answer 7:

考虑AMPL 。 基本版是免费的,但对于较大的问题,要花钱的。 您不支付的语言; 一分钱一分货求解。 也可以上传你的代码,并将它自己的服务器上运行。



文章来源: mathematical optimization library for Java — free or open source recommendations? [closed]