CVXOPT hanya menyelesaikan masalah cembung (mulus dan tidak mulus), memberikan akses ke beberapa pemecah cembung pihak ketiga dengan kompleksitas kasus terburuk yang dijamin canggih. Anda dapat menimbulkan linear, cembung kuadrat, semidefinit linier, dan banyak jenis kendala cembung lainnya.
OpenOpt memecahkan program nonlinier umum (halus dan tidak mulus), termasuk masalah dengan kendala bilangan bulat. Tidak seperti CVXOPT, ia tidak memiliki perangkat lunak untuk menyelesaikan program semidefinite. Semua solver ditulis oleh Dmitrey Kroshko sendiri dan tidak memiliki sejarah panjang, jadi pengujian mungkin terbatas. OpenOpt sendiri melakukan _not- antarmuka ke pemecah pihak ketiga umum.
Namun, ada '' Kerangka Kerja OpenOpt '' (http://openopt.org/OOFramework) yang berinteraksi dengan IPOPT (disebutkan dalam komentar lain; ia tidak dapat menyelesaikan masalah nonsmooth), CVXOPT, dan beberapa pemecah lain yang tersedia dengan Python.
Terlepas dari antarmuka ini, tidak ada hubungan antara paket-paket ini. Metodenya sangat berbeda; satu-satunya hal yang umum adalah bahasa Python dan akses ke LAPACK.
Untuk masalah cembung, saya juga ingin merekomendasikan
CVX: Perangkat Lunak Matlab untuk Pemrograman Cembung Disiplin
http://cvxr.com/cvx , di
mana penulis mendapatkan Hadiah Beale-Hays-Orchard tahun ini yang sangat bergengsi untuk Keunggulan dalam Pemrograman Matematika Komputasi . Itu ditulis dalam Matlab.
Mereka juga memiliki "versi" Python yang disebut CVXPY
http://www.stanford.edu/~ttinoco/cvxpy/ , tetapi CVXPY secara efektif hanya antarmuka '' disiplin '' yang sangat bagus dan berguna untuk CVXOPT, di mana dapat memastikan bahwa ketika suatu program secara sintaksis benar itu adalah masalah optimisasi cembung.