【发布时间】:2021-09-24 02:08:44
【问题描述】:
这并不完全是套索,因为我添加了一个额外的约束,但我不确定我应该如何使用 cvxpy 解决如下问题
import cvxpy as cp
import numpy as np
A = np.random.rand(5000,1000)
v0 = np.random.rand(1000,1)
v = cp.Variable(v0.shape)
iota = np.ones(v0.shape)
lam = 1
objective = cp.Minimize( (A@(v-v0)).T@(A@(v-v0)) + lam * cp.abs(v).T @ iota )
constraints = [v >= 0]
prob = cp.Problem(objective, constraints)
res = prob.solve()
我尝试了各种版本,但这是最清楚地表明我正在尝试做的事情的版本。我得到错误:
DCPError: Problem does not follow DCP rules. Specifically: The objective is not DCP. Its following subexpressions are not: ....
然后一个错误我不明白哈哈。
【问题讨论】:
标签: python cvxpy convex-optimization