Noise is good

由来

噪声是信号处理和图像处理中很让人厌烦的东西,往往我们想方设法去消除噪声或者减弱噪声,恢复原来的信号或者图像。可是,在矩阵运算过程中,
我们可能会遇到一些特殊的矩阵,计算复杂度如噪声毛刺一般,比周围领域内的计算复杂度许多。(病态系统)这就象simplex algorithm算法一样,按照常规思维看的话
需要O(m^2n)的计算复杂度,可是往往我们实验结果是线性的。这是为什么呢?这可以用smoothedcomplexity来解释。

matlab病态矩阵实验

构造病态矩阵 A,例如 n = 5 时 A 如下

 1     0     0     0     1
-1     1     0     0     1
-1    -1     1     0     1
-1    -1    -1     1     1
-1    -1    -1    -1     1

Test Code

% The script for ill-conditioned system example.
% date: 2015-11-22
% author: Clython

n = 80;
b = randn(n,1);

A = tril(ones(n) - ones(n)*2 + 2*eye(n));
A(:,end) = 1;
x = A\b;
disp('The ill-condition error :');
disp(norm(A*x - b));

% add noise to the matrix A
A = A + rand(n,n,'double');
x = A\b;
disp('After add noise to matrix A error:');
disp(norm(A*x - b));

Test Result

The ill-condition error :
7.2116

After add noise to matrix A error:
7.6684e-14

结论

噪声有时也是好的,可以噪声对原有的病态系统进行平滑,取得意想不到效果。

Why the Simplex Algorithm Usually Takes Polynomial Time

ABSTRACT
We introduce the smoothed analysis of algorithms, which is a hybrid of the worst-case and average-case analysis of algorithms. Essentially , we study the performance of algorithms under small random perturbations of their inputs. We show that the shadow vertex simplex algorithm has polynomial smoothed complexity.

Somothed Analysis of Algorithm

这篇文章对单精度算法的时间复杂度进行了分析和解释,为什么实际使用的单精度算法非常好。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值