deadzone.m
来自「斯坦福大学Grant和Boyd教授等开发的凸优化matlab工具箱」· M 代码 · 共 34 行
M
34 行
% Section 6.1.2: Residual minimization with deadzone penalty% Boyd & Vandenberghe "Convex Optimization"% Joelle Skaf - 08/17/05%% The penalty function approximation problem has the form:% minimize sum(deadzone(Ax - b))% where 'deadzone' is the deadzone penalty function% deadzone(y) = max(abs(y)-1,0)% Input datarandn('state',0);m = 16; n = 8;A = randn(m,n);b = randn(m,1);% deadzone penalty% original formulationfprintf(1,'Computing the optimal solution of the deadzone approximation problem: \n');cvx_begin variable x(n) minimize( sum(max(abs(A*x-b)-1,0)) )cvx_endfprintf(1,'Done! \n');% Comparedisp( sprintf( '\nResults:\n--------\nsum(max(abs(A*x-b)-1,0)): %6.4f\ncvx_optval: %6.4f\ncvx_status: %s\n', sum(max(abs(A*x-b)-1,0)), cvx_optval, cvx_status ) );disp( 'Optimal vector:' );disp( [ ' x = [ ', sprintf( '%7.4f ', x ), ']' ] );disp( 'Residual vector:' );disp( [ ' A*x-b = [ ', sprintf( '%7.4f ', A*x-b ), ']' ] );disp( ' ' );
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?