O CVXOPT resolve apenas problemas convexos (suaves e não suaves), dando acesso a vários solucionadores convexos de terceiros com garantia de pior complexidade do estado da arte. Você pode apresentar restrições lineares, quadráticas convexas, semidefinidas lineares e muitos outros tipos de restrições convexas.
O OpenOpt resolve programas não lineares gerais (suaves e não suaves), incluindo problemas com restrições de número inteiro. Ao contrário do CVXOPT, ele não possui software para resolver programas semidefinidos. Os solucionadores foram todos escritos pelo próprio Dmitrey Kroshko e não têm uma longa história, portanto os testes provavelmente foram limitados. O próprio OpenOpt não faz interface com solucionadores de terceiros em geral.
No entanto, existe o '' OpenOpt Framework '' (http://openopt.org/OOFramework) que faz interface com o IPOPT (mencionado em outro comentário; ele não pode resolver problemas não suaves), o CVXOPT e alguns outros solucionadores disponíveis no Python.
Além dessa interface, não há relação entre esses pacotes. Os métodos são completamente diferentes; as únicas coisas comuns podem muito bem ser a linguagem Python e o acesso ao LAPACK.
Para problemas convexos, eu também gostaria de recomendar o
CVX: Software Matlab para programação convexa disciplinada
http://cvxr.com/cvx ,
pelo qual os autores obtiveram o prestigiado prêmio Beale-Hays-Orchard deste ano por excelência em programação matemática computacional . Está escrito em Matlab, no entanto.
Eles também têm uma '' versão '' Python chamada CVXPY
http://www.stanford.edu/~ttinoco/cvxpy/ , mas o CVXPY é efetivamente apenas uma interface 'disciplinada' muito agradável e útil para o CVXOPT, na qual uma pode garantir que, quando um programa estiver sintaticamente correto, seja um problema de otimização convexa.