問題タブ [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.
c# - MS SolverFoundationv2.1を使用したMissingMethodException
MS Solver Foundationを初めて使用し、C#からCompactQuasiNewtonSolverを実行しようとしていますが、エラーが発生します。
私のメインメソッド内にある唯一のコードはこれです:
しかし、次のエラーが発生します。
未処理の例外:System.MissingMethodException:メソッドが見つかりません:'Void Microsoft.SolverFoundation.Solvers.CompactQuasiNewtonSolver..ctor(Int32)'。VAR.Program.Main(String [] args)で
誰もが理由を知っていますか?
c# - C# で Microsoft Solver Foundation を使用する
VS2010 Ultimate の C# アプリケーションで Microsoft Solver Foundation を使用しようとしています。私は MSF (64 ビット バージョン) をインストールしました。私が理解している限りでは、次のように宣言した後にサービスを使用できるはずです。
ただし、「型または名前空間名 'SolverFoundation' は名前空間 'Microsoft' に存在しません」というエラーが表示されます。
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0 に Microsoft.Solver.Foundation.dll があることがわかりました。
最初は64ビット版に問題があるのではないかと思ったので、アンインストールして32ビット版に切り替えました。しかし、どちらも成功しません。
MSF を C# アプリケーションに統合するにはどうすればよいですか?
c# - 自動パラメータ調整
入力オーディオ ファイルを取得して処理し、変更された出力オーディオ ファイルを吐き出すオーディオ処理アプリがあります。このオーディオ処理アプリには、オーディオの処理方法に影響を与える 10 ~ 15 のパラメーターがあり、出力オーディオ ファイルの内容に影響を与えます (たとえば、異なる周波数応答を持つ、音量を大きくする、小さくするなど)。これらすべてのパラメータには、制限された範囲があります (たとえば、x0 は < 1 かつ > -1 である必要があります)。
出力オーディオ ファイルは、スコアを与えるツールによって評価されます。このツールは、「理想的な」出力がどのように聞こえるかを認識しており、それに応じて出力ファイルにスコアを付けます。スコア 1.0 は、出力が理想的であることを意味します。つまり、入力ファイルが可能な限り最良のパラメーター セットで処理されたことを意味します。スコア 0 は、出力が完全に間違っていることを意味します。
したがって、有効な範囲を持つ 10 ~ 15 個のパラメーターを使用すると、組み合わせは無限大になります。最良の解決策が得られるまで、ここに座ってこれらのパラメーターを手動で微調整していました。いくつかの LP/MIP ソルバー (CBC、MS Solver Foundation、GKLP) を調べましたが、これらは目的関数として数式を使用しています... 私が見る限り、外部評価関数を「プラグイン」していません。 .
LP/MIP ソルバーは、パラメーターの調整を支援する適切なツールですか? 何か案は?
ありがとう、
アケバン
optimization - Microsoft Solver Foundation 3.0 を使用したチーム ビルディングの最適化
私は学生プロジェクト チーム ビルディング アプリケーションに取り組んでいます。最適化には精通していますが、Microsoft Solver Foundation を使用したことはありません。制約を解決しましたが、ソルバー構文で目標を特定するのに問題があります。アプリケーションの基本的な概要は次のとおりです。
教授は、プロジェクトごとに特定のスキルを重視します。学生は自分の長所と短所をリストアップし、やりたいプロジェクトをランク付けします。プロジェクトには、3 ~ 5 人の学生が割り当てられている必要があります。各学生にプロジェクトを割り当てる必要があります。
- 主な目標は、満たされるスキル要件の数を最大化することです
- 第二の目標は、学生の好みを最大化することです
この混合整数問題のチュートリアルに基づいてSimplexSolver クラスをいじってみましたが、生徒の好みを問題なく最大化することができました。
プロジェクトのスキル要件ごとに行を追加し、そのスキルに対する各学生の強み/弱みの係数を設定し、そのプロジェクトのスキルの重みの下限を設定する方法を確認しました。ただし、これにより2つの問題が発生します。
- プロジェクトのスキル要件がすべて満たされるとは思えません。そのため、スキルの最小値を制約として設定するのではなく、意味するスキル要件の数を最大化するという目標を設定したいと考えています。チームが特定のスキルで 1 ポイント不足していたとしても、すべてのチームがそのスキルを弱点として挙げているよりはましです。
- プログラミングスキルの重みが 3のチームに 4 人の学生がいて、そのうち 3 人がプログラミングを強み (+1) としてリストし、もう 1 人の学生がプログラミングを弱点 (-1) としてリストしている場合、私のモデルは正しくありません。(1+1+1-1)<3 であるため、プログラミング要件が満たされていないことを示します。
誰にもアイデアはありますか?SimplexSolver はこの問題を解決する最善の方法ですか? Solution Foundation には、さまざまなソルバー/ツールが多数あるようです。私は Solution Foundation の Express バージョンを持っていますが、必要に応じて Academic Enterprise バージョンを手に入れることができるでしょう。
ありがとう - グレッグ
*最終的なアプリケーションでは、約 100 人の学生、20 ~ 30 のプロジェクト、および最大 30 の潜在的なスキル (プロジェクトごとに最大 5) のモデルを解決する必要があります。
unit-testing - 単体テストと Solver Foundation
私は現在、大規模なビジネス アプリケーションに取り組んでおり、Solver Foundation と Solver Foundation Services を使用して、ユーザー定義の制約と入力による巨大なポートフォリオ最適化問題を解決しようとしています。問題は通常、約 5 ~ 10,000 の変数と数千の制約です。
SFS を使用して開発を開始しましたが、コードの単体テストで深刻な問題が発生しています。設定した問題が正しいこと、すべての制約に正しい入力があり、すべてのパラメーターが正しく設定されていることをテストしたいと思います。しかし、それを行うには、SolverContext、さらに具体的には、Parameter オブジェクトと Constraint オブジェクトに対する単体テストを作成する必要があります。そして、これらのクラスは完全に密閉されています。名前、式、およびインデックス セット以外の情報を取得できないようです。
特定のインデックスのパラメータの値をテストする方法はありますか?
いえ
Solver Foundation と単体テストに関するドキュメントや記事が見つからないようです。
アイデアやコメントはありますか?
ジュリアン
c# - 方法: ソルバーの基礎 2 次最小二乗法
2 つの独立変数と がGSH
ありGls
ます。これら 2 つの変数を使用して、結果を予測しようとしていprob
ます。次の形式の関数を使用します。
データのサンプル:
最小二乗和を最小化する係数の最適値を見つけたいと思います。
Foundation Solver について多くのことを読みましたが、c# Solver Foundation でこの問題を設定する方法がわかりませんでした。すべてのコードの提案は大歓迎です。
ありがとう
ms-solver-foundation - Microsoft Solver FoundationのInteriorPointSolverはどの機能を最小化しますか?
私はInteriorPointSolverを使用して、線形制約のある標準的な二次計画問題を解決しようとしています(ここにある定義に従って)。私の問題には線形項がありません(定義の「c」ベクトル)。すべての変数でSetCoefficient(Int32、Rational、Int32、Int32)を使用して「Q」マトリックスを設定しています(「goal」行をvidRowとして渡します)。InteriorPointSolverが二次計画問題の標準定義で定義されている目的関数を最小化していると仮定して正しいですか?
x ^ T * Q * xを自分で計算すると(ソルバーから取得したxの最適解を使用して)、ソルバーが最適な目的関数値であると主張する値とは大幅に異なる値が得られるため、これを尋ねます( Statistics.PrimalまたはGetValue(goal)を介して)。計算とソルバーの最適値が一致するのは、Qに単位行列を使用する場合のみです。何か間違った設定をしている、または最小化されている関数を正確に理解していないと推測しています。
私は見つけることができるすべてのドキュメントを調べましたが、内部ポイントソルバーが最小化している関数の正確な説明を見つけることができません。誰かが私を正しい方向に導くことができますか?
.net - F# Microsoft Solver Foundation - NelderMeadSolver クラス
F# で NelderMeadSolver クラスを使用するサンプル コードを教えてもらえますか?
たとえば、次の関数を最小化したい: F(X, Y)
F = (X-1)^2 + (y-1)^2 ここで 0< X < 2 , 0< Y < 2 答えは明らかに X = 1, Y = 1
C# の例を見つけました:
http://msdn.microsoft.com/en-us/library/hh404040(v=VS.93).aspx
上記の関数を最小化するための簡単な F# コードを教えていただければ幸いです。ありがとうございました。
optimization - k-best ソリューションを見つけるにはどうすればよいですか?
Microsoft ソルバーを使用していますが、どうすれば見つけられるか知りたいと思っていました
最適なソリューションだけでなく、LP を使用した K-best ソリューション?
たとえば、CPLEXにはソリューションプール機能があることを知っています。
お手伝いありがとう。
ポール。