c# - Microsoft Solver foundation 与 Matlab fmincon 中的约束非线性优化

标签 c# .net matlab f# mathematical-optimization

任何人都可以向我展示 Microsoft Solver foundation 3.0 中约束非线性优化的示例或评论吗?与 Matlab 的 fmincon 相比如何?或者是否有更好的 .net 库用于约束非线性优化?谢谢,

最佳答案

2012 年 2 月 25 日的重要更新:

MSF 3.1 现在通过其 NelderMeadSolver 求解器支持使用有界变量的非线性优化:http://msdn.microsoft.com/en-us/library/hh404037(v=vs.93).aspx

对于一般的线性约束,Microsoft solver foundation 仅通过其内点求解器支持线性规划和二次规划。对于此求解器,请参阅 Tomas 提到的 SVM 帖子。

MSF 有一个通用的非线性规划求解器 Limited-Memory-BFGS,但它不支持任何约束。该求解器还需要一个显式梯度函数。对于此求解器,请参阅:

Logistic regression in F# using MSF

Tomas提到的F# ODSL只支持线性规划。我有它的 QP 扩展,可在 codexplex 获得.

回到您的问题 - 使用线性约束优化 f(x)(类似于 fmincon),我还没有看到任何具有此功能的免费库。 NMath.NET (商业)似乎有一个。我尝试用它来解决高度非线性优化问题,但它对我不起作用。最后我求助于在 DotNumerics 中实现的 B-LBFGS。

我想您也会对以下 SO 问题感兴趣:

Open source alternative to MATLAB's fmincon function?

答案指向SciPy. optimize. cobyla,这似乎是类似于fmincon的东西。但主要信息是,对于您的特定问题,fmincon 可能过于笼统。您可以使用更具体的求解器,例如LBFGS 或 QP。如果您的初始值不好,一般求解器有时也不起作用。

关于c# - Microsoft Solver foundation 与 Matlab fmincon 中的约束非线性优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6318609/

相关文章:

c# - 如何在不传入连接名称的情况下在 Entities ObjectContext 上设置 EF Trace

c# - ViewBag、viewdata 和模型属性

c# - MySQL 的非 GPL ADO.NET 提供程序?

arrays - 从数组中生成坐标

c# - 如何获取 ListView 数据模板项目双击WPF MVVM

c# - Razor:声明式 HTML 助手

c# - 什么会导致不为 UDP 数据报计算 IP header 校验和?

c# - 在 .Net 中测试复杂的 T-SQL 脚本?

matlab - 你能为血压与特定年龄创建箱线图吗 (MATLAB)

matlab clc命令