有谁知道如何使用 CVXOPT 模块在 Python 中进行凸优化?

Does anyone know how to do convex optimization in Python with CVXOPT module?

我想最大化 Ax = b,其中 A 是一个 m-by-n 矩阵,x 是一个 n-向量。 x 的约束是它的条目总和为 1 并且 A x >= 0.

改用CVXPY

from cvxpy import *
import numpy as np

m = 30
n = 10

# generate random data
np.random.seed(1)
A = np.random.randn(m,n)
b = np.random.randn(m)

# optimization variable
x = Variable(n)

# build optimization problem
prob = Problem( Maximize(sum(A*x)), [ sum(x) == 1, A*x >= 0 ])

# solve optimization problem and prints results
result = prob.solve()
print x.value

这个优化问题是无界,因此没有最优解。