CVXOPT chỉ giải quyết các vấn đề lồi (trơn tru và không trơn tru), cho phép truy cập vào một số bộ giải lồi của bên thứ ba với trạng thái phức tạp nhất trong trường hợp xấu nhất. Bạn có thể đặt ra tuyến tính, bậc hai lồi, nửa cung tuyến tính và nhiều loại ràng buộc lồi khác.
OpenOpt giải quyết các chương trình phi tuyến tổng quát (mịn và không vô nghĩa), bao gồm các vấn đề với các ràng buộc số nguyên. Không giống như CVXOPT, nó không có phần mềm để giải các chương trình semidefinite. Những người giải quyết đều được viết bởi chính Dmitrey Kroshko và không có một lịch sử lâu dài, vì vậy việc kiểm tra có lẽ bị hạn chế. Bản thân OpenOpt có giao diện _not- cho người giải quyết bên thứ ba nói chung.
Tuy nhiên, có '' OpenOpt Framework '' (http://openopt.org/OOFramework) có giao diện với IPOPT (được đề cập trong một nhận xét khác; nó không thể giải quyết các vấn đề không liên quan), CVXOPT và một số bộ giải khác có sẵn trong Python.
Ngoài giao diện này, không có mối quan hệ giữa các gói này. Các phương pháp hoàn toàn khác nhau; những thứ phổ biến duy nhất có thể là ngôn ngữ Python và quyền truy cập vào LAPACK.
Đối với các vấn đề lồi, tôi cũng muốn giới thiệu
CVX: Phần mềm Matlab cho lập trình lồi có kỷ luật
http://cvxr.com/cvx ,
mà các tác giả đã giành được giải thưởng Beale-Hays-Orchard rất có uy tín trong năm nay về lập trình toán học tính toán . Nó được viết bằng Matlab, mặc dù.
Họ cũng có một phiên bản Python '' phiên bản 'được gọi là CVXPY
http://www.stanford.edu/~ttinoco/cvxpy/ , nhưng CVXPY thực sự chỉ là một giao diện' 'kỷ luật' rất hay và hữu ích cho CVXOPT, trong đó một giao diện có thể chắc chắn rằng khi một chương trình đúng về mặt cú pháp thì đó là một vấn đề tối ưu hóa lồi.