january 2006 - the mathworks a multilevel method for ill-posed problems malena i. español tufts...
TRANSCRIPT
January 2006 - The Mathworks
A Multilevel Method for Ill-Posed Problems
Malena I. EspañolTufts University
January 2006 - The Mathworks
Outline
Problem Regularization Multilevel method Implementation Future work
January 2006 - The Mathworks
Discrete Ill-Posed problem
holds condition Picard Discrete
noise (white)unknown is
gap without aluessingular v Decaying
:Properties
e
matrix dconditione-ill large, a is where
,
model theand ,given , Find
nm
true
true
RA
ebbAx
bAx
0 10 20 30 4010
-15
10-10
10-5
100
105
i
i|uiTbtrue|
January 2006 - The Mathworks
Need for regularization
n
ii
eui
bu
n
i
Tiii
T
i
Ti
i
trueTix
uVUA
1
1
bygiven issolution exact The
.SVD thebe Let
0 10 20 30 4010
-15
10-10
10-5
100
105
i| uiTbtrue|
| uiTe|
January 2006 - The Mathworks
Regularization methods
n
i i
T
i
iTik
k
i i
T
TSVD
bux
bux
i
i
1i22
2
1i
:tionRegulariza Tikhonov
: (TSVD) SVD Truncated
January 2006 - The Mathworks
LSQR: Regularization method
0 5 10 15 20 25 300
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
),( :solution LSQR bAAAKx TTk
iterations
rela
tive e
rror
January 2006 - The Mathworks
Multilevel: Introduction
hhh bxA
hhh bxA 222
hhh bxA 444
January 2006 - The Mathworks
Downsampling (“going down”)
)2(4
112212
2 hj
hj
hj
hj vvvv
h
h
hD
v
v
v
v
v
v
v
vv
v
vP
23
2
1
7
6
5
4
3
2
1
2
1210 000
0012 100
0000 121
4
1
January 2006 - The Mathworks
Interpolation (“going up”)
h
h
hI
v
v
v
v
vv
v
v
v
v
vP
7
6
5
4
3
2
1
23
2
1
2
100
200
1 10
020
01 1
002
00 1
2
1
)(2
1 21
212
22
hj
hj
hj
hj
hj
vvv
vv
January 2006 - The Mathworks
Basic multilevel algorithm
hII xPPx 4hhh bxA
hDDhIIhDD bPPxPPAPP 4
Solve small system
downsampling
A and b
interpolating
x
January 2006 - The Mathworks
Implementation
xPPx II~bAx
bxPAPPP IIDD
~~ Solve small system
downsampling
b
interpolating
function x=nm(A,b,iter)n=size(A,1);while length(b)>31 b=fwei(b);endx=lsqr(@pap,b,1e-8,iter,[],[],[],A);while length(x)<n x=interpol(x);end
x~
January 2006 - The Mathworks
Implementation
bAx
downsampling
b
3
2
1
7
6
5
4
3
2
1
1210 000
0012 100
0000 121
2
1
b
b
b
b
b
b
b
bb
b
bPD
function z=fwei(y)n=length(y);m=floor(n/2);z=zeros(m,1);z(1:m)=.5*y(2:2:n-1) + .25*(y(1:2:n-2)+y(3:2:n));
January 2006 - The Mathworks
Implementation
)))))~((((( xPPAPP IIDD
bAx
bxPAPPP IIDD
~~
downsampling
b
Solve small system using LSQR
x=lsqr(@pap,b,1e-8,iter,[],[],[],A);
xAxA T~~ and ~~
needs LSQR
)))))~((((( xPPAPP TTTTD
TD II
function y = pap(x,A,transp_flag)n=size(A,1);m=length(x);if (nargin > 2) & strcmp(transp_flag,'transp') while length(x)>n x=interpol(x); end y=A'*x; while length(y)>m y=fwei(y); endelse while length(x)>n x=interpol(x); end y=A*x; while length(y)<m y=fwei(y); endend
January 2006 - The Mathworks
Implementation
bAx
bxPAPPP IIDD
~~
downsampling
b
Solve small system using LSQR
xPPx II~
interpolating
x~
function z=interpol(x)n=length(x);m=2*n+1;z=zeros(m,1);z(1)=x(1)/2;z(m)=x(n)/2;z(2:2:m-1)=x(1:n);z(3:2:m-2)=.5*(x(1:n-1) +x(2:n));
January 2006 - The Mathworks
Results
0 5 10 15 20 25 30 3510
-3
10-2
10-1
100
pmrnsd
lsqrmultilevel
January 2006 - The Mathworks
Future Work
Fine tune parameters Find where it can be used as a
preconditioner Extend to 2D, 3D