我在这里写了一个二维融合套索代码。
[m n] = size(circle);
cvx_begin
variable theta(m, n);
minimize( norm(circle-theta, 'fro'));
subject to
sum(sum(abs(theta(:,1:n-1)-theta(:,2:n)))) == 0;
sum(sum(abs(theta(1:m-1,:)-theta(2:m,:)))) == 0;
cvx_end
奇怪的是,节目报道,
在 cvxprob(第 28 行)中 在 cvx_begin(第 41 行)使用 cvxprob/newcnstr 时出错(第 192 行)有纪律的凸编程错误:
无效约束:{convex} == {constant}== 中的错误(第 12 行) b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '==' );
在我删除abs()
约束后,程序可以运行,但这不是我期望的约束。