2020-08-09 Pyomoとか プログラミング 最適化 技術書典9の新刊で使うPythonのモデリングツールとして、PuLPじゃなくてPyomoを使おうと思っていろいろ調べてた。 けど、かなり微妙・・・ もうちょい調べたらPICOSというのもあるみたいで、こっちの方がいいかもとなった。 PuLP メリット シンプルで分かりやすい デメリット 非線形最適化が扱えない オブジェクト指向っぽくない 公式ドキュメントが貧弱 Pyomo メリット オブジェクト指向っぽい モデルとデータの分離が可能 非線形最適化もできる(IPOPTを使う) デメリット ソルバーのインストールが別途必要 書き方にクセが強い モデルとデータを分離しようとすると目的関数と制約の書き方が煩雑になる PICOS メリット オブジェクト指向っぽい 書き方が素直 非線形最適化もできる(CVXOPTを使う) デメリット 知名度が低そう (上に関連して)バグが多く隠れてないか不安 Pyomoを調べるのにけっこう時間使ったのでもったいない気もするけど、PICOSを調べてみようかなぁ。 ではまた明日。