问题标签 [ms-solver-foundation]

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 投票
1 回答
153 浏览

c# - MissingMethodException 使用 MS Solver Foundation v2.1

我是 MS Solver Foundation 的新手,正在尝试从 C# 运行 CompactQuasiNewtonSolver,但出现错误。

我在 main 方法中的唯一代码是:

但我收到以下错误:

未处理的异常:System.MissingMethodException:找不到方法:'Void Microsoft.SolverFoundation.Solvers.CompactQuasiNewtonSolver..ctor(Int32)'。在 VAR.Program.Main(String[] args)

任何人都知道为什么?

0 投票
4 回答
7182 浏览

c# - 在 C# 中使用 Microsoft Solver Foundation

我正在尝试在 VS2010 Ultimate 的 C# 应用程序中使用 Microsoft Solver Foundation。我已经安装了 MSF(64 位版本),据我所知,我应该能够在声明后使用这些服务:

但是,我收到错误“命名空间‘Microsoft’中不存在类型或命名空间名称‘SolverFoundation’”。

我看到 Microsoft.Solver.Foundation.dll 位于 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0

最初我认为 64 位版本可能是问题,所以我卸载并切换到 32 位版本。但也没有成功。

如何将 MSF 集成到我的 C# 应用程序中?

0 投票
3 回答
474 浏览

c# - 自动参数调整

我有一个音频处理应用程序,它接受输入音频文件,对其进行处理,然后输出修改后的输出音频文件。此音频处理应用程序有 10-15 个参数,这些参数会影响其处理音频的方式,从而影响输出音频文件的内容(例如,它可能具有不同的频率响应、更响亮、更安静等)。所有这些参数都有限制范围(例如,x0 必须 < 1 和 > -1)。

输出音频文件由一个给它打分的工具评估。这个工具知道“理想”的输出应该是什么样子,并相应地对输出文件进行评分。1.0 分意味着输出是理想的,即输入文件是用最好的参数集处理的。0 分意味着输出完全错误。

因此,使用 10-15 个参数及其有效范围,组合是无穷无尽的!我会一直坐在这里手动调整这些参数,直到我得到最好的解决方案。我已经检查了一些 LP/MIP 求解器(CBC、MS Solver Foundation、GKLP),但这些求解器使用数学方程作为目标函数......据我所知,您不会“插入”外部评估函数.

LP/MIP 求解器是帮助参数调整的正确工具吗?有任何想法吗?

谢谢,

阿克万

0 投票
1 回答
1046 浏览

optimization - 使用 Microsoft Solver Foundation 3.0 进行团队建设优化

我正在开发一个学生项目团队建设应用程序。我熟悉优化,但以前没有使用过 Microsoft Solver Foundation。我已经解决了我的限制,但是在使用 Solver 语法识别我的目标时遇到了麻烦。这是应用程序的基本摘要:

教授对每个项目的某些技能进行加权。学生列出哪些技能是他们的优势和劣势,并对他们想做的项目进行排名。一个项目必须有 3-5 名学生分配给它。必须为每个学生分配一个项目。

  • 主要目标是最大化满足的技能要求数量
  • 次要目标是最大化学生的偏好

我一直在玩基于这个混合整数问题教程的SimplexSolver 类,并且能够毫无问题地最大化学生的偏好。

我了解如何为每个项目技能要求添加行,并为每个学生在该技能上的优势/劣势设置系数,并为该项目的技能权重设置下限。不过,这给了我两个问题。

  1. 我不相信所有项目技能要求都会得到满足。这就是为什么我想设定一个目标,以最大限度地提高技能要求的数量,而不是将技能权重最小值设置为约束。即使一支球队在某项技能上落后 1 分,它仍然比所有将这项技能列为弱点的球队要好。
  2. 如果团队中有 4 名学生的编程技能权重为 3,其中 3 人的编程被列为优势 (+1) 而另一个学生的编程被列为劣势 (-1),那么我的模型将不正确表明没有满足编程要求,因为 (1+1+1-1)<3。

有人有什么想法吗?SimplexSolver 是解决此问题的最佳方法吗?看起来解决方案基金会有很多不同的求解器/工具。我有解决方案基础的 Express 版本,但如果需要,可能会获得 Academic Enterprise 版本。

谢谢, - 格雷格

*最终申请将需要解决具有大约 100 名学生、20-30 个项目和约 30 个潜在技能(每个项目约 5 个)的模型。

0 投票
0 回答
218 浏览

unit-testing - 单元测试和求解器基础

我目前正在开发一个大型业务应用程序,我将使用 Solver Foundation 和 Solver Foundation Services 来解决用户定义的约束和输入的巨大投资组合优化问题。问题通常是大约 5-10 000 个变量和几千个约束。

我已经开始使用 SFS 进行开发,但是在单元测试我的代码时遇到了严重的问题。我想测试我设置的问题是否正确,所有约束都有正确的输入并且所有参数设置正确。但要做到这一点,我需要针对 SolverContext 编写单元测试,更具体地说,是 Parameter 对象和 Constraint 对象。而这些类是完全封闭的。除了它们的名称、表达式和索引集之外,我似乎无法从它们那里得到任何信息。

有没有办法测试给定索引的参数值?

IE

我似乎找不到任何有关 Solver Foundation 和单元测试的文档或文章。

有什么想法或意见吗?

朱利安

0 投票
3 回答
1325 浏览

c# - 如何:求解器基础二次最小二乘法

我有两个自变量,GSHGls。使用这两个变量,我试图预测结果,prob. 使用形式的函数:

数据样本:

我想找到系数的最佳值以最小化最小二乘之和。

我已经阅读了很多关于基础求解器的内容,但我无法弄清楚如何在 c# Solver Foundation 中设置这个问题。非常感谢所有代码建议。

谢谢

0 投票
1 回答
510 浏览

ms-solver-foundation - Microsoft Solver Foundation 的 InteriorPointSolver 最小化了哪些功能?

我正在尝试使用InteriorPointSolver来解决具有线性约束的标准二次规划问题(根据可以在此处找到的定义)。我的问题没有线性项(定义中的“c”向量)。我通过在所有变量中使用SetCoefficient(Int32, Rational, Int32, Int32)来设置“Q”矩阵(将“目标”行作为 vidRow 传递)。我是否正确假设 InteriorPointSolver 正在最小化二次规划问题的标准定义中定义的目标函数?

我问这个是因为当我自己计算 x^T * Q * x 时(使用我从求解器获得的 x 的最优解),我得到的值与求解器声称的最优目标函数值大不相同(通过 Statistics.Primal 或 GetValue(goal))。唯一一次我的计算和求解器的最佳值一致是当我对 Q 使用单位矩阵时。我猜我设置错误或者我不完全理解正在最小化的函数。

我已经查阅了所有我能找到的文档,但找不到关于内点求解器正在最小化的确切功能的一个很好的解释。谁能指导我正确的方向?

0 投票
1 回答
266 浏览

c# - 简单的最小化,但传递给方法

我正在尝试使用 Solver Foundation 来解决一个简单的单变量最小化问题(C#),但我是这个库的新手,我发现一个简单的例子很难找到......

我正在尝试使用变量 x 最小化:

MIN[const - method(x)],其中 method(x) 是在同一类中定义的方法。我还可以选择用其他类的实例替换 method(x),其中包含“给定 x 的结果”类型的方法。

有没有办法做到这一点?

非常感谢

0 投票
1 回答
918 浏览

.net - F# Microsoft Solver Foundation - NelderMeadSolver 类

谁能给我看一个在 F# 中使用 NelderMeadSolver 类的示例代码?

例如,我想最小化以下函数:F(X, Y)

F = (X-1)^2 + (y-1)^2 where 0< X < 2 , 0< Y < 2 答案显然是 X = 1, Y = 1

我找到了 C# 的示例:http:
//msdn.microsoft.com/en-us/library/hh404040 (v=VS.93).aspx

如果有人能给我简单的 F# 代码以最小化上述功能,我将不胜感激。谢谢你。

0 投票
1 回答
149 浏览

optimization - 我怎样才能找到 k 最佳解决方案?

我正在使用 Microsoft 求解器,并想问我如何找到

使用 LP 的 K 最佳解决方案,而不仅仅是最优解决方案?

例如,我知道 CPLEX 具有解决方案池功能。

感谢您的帮助。

保罗。