回答:
CVXOPTは(滑らかおよび滑らかでない)凸問題のみを解くため、最先端のワーストケースの複雑さが保証された複数のサードパーティの凸ソルバーにアクセスできます。線形、凸の2次、線形の半正定、およびその他の多くの凸タイプの制約を設定できます。
OpenOptは、整数制約の問題を含む、一般的な(スムーズおよび非スムーズ)非線形プログラムを解決します。CVXOPTとは異なり、半正定値プログラムを解くためのソフトウェアはありません。ソルバーはすべてDmitrey Kroshko自身が書いたものであり、長い歴史がないため、テストはおそらく制限されていました。OpenOpt自体は、一般的なサードパーティのソルバーとはインターフェイスしません。
ただし、IPOPT(別のコメントに記載されています;滑らかでない問題は解決できません)、CVXOPT、およびPythonで使用可能な他のソルバーとインターフェイスする '' OpenOpt Framework ''(http://openopt.org/OOFramework)があります。
このインターフェースとは別に、これらのパッケージ間に関係はありません。方法はまったく異なります。唯一一般的なものは、Python言語とLAPACKへのアクセスです。
凸問題については、私はまたのようなお勧めするだろう
CVXを:ディシプリン凸のためのMatlabのソフトウェアはプログラミング
http://cvxr.com/cvxを、
著者は計算数理プログラミングに優秀今年の非常に権威のあるビール・ヘイズ・オーチャード賞を得ています。ただし、Matlabで記述されています。
また、CVXPY http://www.stanford.edu/~ttinoco/cvxpy/と呼ばれるPythonの ''バージョン ''もあり
ますが、CVXPYは事実上、CVXOPTへの非常に素晴らしく便利な ''規律のある ''インターフェースです。プログラムが構文的に正しい場合、それが凸最適化問題であることを確認できます。
OpenOptは、ほとんどの場合、他のソルバーへの単なるインターフェイスです。CVXOPTはOpenOptの基礎となるオープンソースソルバーの1つです。そのため、使用する商用ソルバーがない限り、CVXOPTをインストールすることをお勧めします。知る限りでは、CVXOPTは、少なくとも2次コーンプログラミングおよび半確定プログラミング向けのオープンソースライブラリの中でも最先端です。