C を使用して非線形最適化アルゴリズムを実行したいと考えています。
問題は 、ベクトル X にある 5 つの点についてです。
X、Y(X)、下限と上限は既知です。
C でnloptライブラリを見つけましたが、5 つの離散点で最適化を実行できるかどうかはわかりません。
別のライブラリでさえ、提案するものはありますか?
ありがとう!
C を使用して非線形最適化アルゴリズムを実行したいと考えています。
問題は 、ベクトル X にある 5 つの点についてです。
X、Y(X)、下限と上限は既知です。
C でnloptライブラリを見つけましたが、5 つの離散点で最適化を実行できるかどうかはわかりません。
別のライブラリでさえ、提案するものはありますか?
ありがとう!
Octaveをお勧めします。Octave での非線形プログラミングについては、 Octave Optimizationを参照してください。matlab のような言語を使用して実装できます。
また、C/C++ API も備えています。
この投稿を参照してください: GNU Octave を C/C++ プログラムに埋め込むには? .
また、このpdf
別の言語でアルゴリズムを再実装する代わりに、matlab コードを最適化することを検討してください。適切に最適化されていれば、matlab はかなり高速になります (for ループの使用を避け、ベクトル化された計算を使用し、メモリを事前に割り当てます)。
http://www.mathworks.com/company/newsletters/news_notes/june07/patterns.htmlを ご覧ください。