0
我要解决在MATLAB以下优化问题:L1范数最小化与Gurobi
Min sum(abs(x))
s.t. A*x = 0,
lb <= x <= ub
其中x是一个致密的矢量,A是稀疏矩阵,LB和UB是真实的下部和上部界限分别。
使用函数linprog()或LP求解器Gurobi可能会很方便。
你知道如何制定这个问题吗?
感谢
我要解决在MATLAB以下优化问题:L1范数最小化与Gurobi
Min sum(abs(x))
s.t. A*x = 0,
lb <= x <= ub
其中x是一个致密的矢量,A是稀疏矩阵,LB和UB是真实的下部和上部界限分别。
使用函数linprog()或LP求解器Gurobi可能会很方便。
你知道如何制定这个问题吗?
感谢
目标minimize sum(abs(x))
可以翻译成:
minimize sum(u)
-u_i <= x_i <= u_i
dim(x) == dim(u)
)
钝地指出。不过,我很难将其转换为代码。当我得到它时我会回复你。 –
最后,我用你的输入解决了这个问题,使用MATLAB的cvx工具箱和LP求解器gurobi 'cvx_begin cvx_solver gurobi 变量s(n); 变量x(n) 最小化sum(s); 受 A * x == 0; lb <= x <= ub; -s <= x <= s; cvx_end' –
@GeorgeC如果你使用cvx,那么你不需要我的重新配置,因为l1/sum_abs已经在这个库中可用! [见这里](http://cvxr.com/cvx/doc/funcref.html)(规范函数非常一般)。但如果我的答案有帮助,请考虑接受或提升它。 – sascha