A nonlinear differential-semblance algorithm for waveform inversion
A nonlinear differential-semblance algorithm for waveform inversion
A nonlinear differential-semblance algorithm for waveform inversion
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
A <strong>nonlinear</strong> <strong>differential</strong>-<strong>semblance</strong> <strong>algorithm</strong> <strong>for</strong><br />
wave<strong>for</strong>m <strong>inversion</strong><br />
Dong Sun<br />
The Rice Inversion Project<br />
Annual Review Meeting<br />
March 30, 2012<br />
, 1/15
Agenda<br />
1 Full Wave<strong>for</strong>m Inversion<br />
2 Extension and Differential Semblance Optimization (DSO)<br />
3 Examples: Inversion in Layered Medium<br />
, 2/15
Full Wave<strong>for</strong>m Inversion (FWI)<br />
A usual set-up:<br />
M = a set of models ({m(x)}),<br />
F<br />
: M → D - <strong>for</strong>ward map<br />
D = a space of data<br />
FWI (least-squares <strong>inversion</strong>): given d o ∈ D, solve<br />
min J LS := 1<br />
m∈M<br />
2 ‖F[m] − d o‖ 2<br />
[+ regularizing term(s)]<br />
Note:<br />
FWI - globally minimize the objective using local methods<br />
observed data d o = ∏ s d o(x r , t; s) - highly redundant & band-limited<br />
– possibilities <strong>for</strong> acquisition parameter s include source position, offset,<br />
slowness (plane wave data),...<br />
, 3/15
Full Wave<strong>for</strong>m Inversion (FWI)<br />
Studied since the 80’s, becoming feasible in last 10 yrs:<br />
+ accommodates any modeling physics & provides quantitative inferences of<br />
subsurface (some spectacular successes)<br />
± applicable to long-offset surface data (diving and refracted waves); most of<br />
successful <strong>inversion</strong>s so far involve transmitted data<br />
−<br />
<strong>inversion</strong> with reflection data still a challenge<br />
fundamental obstacles:<br />
1. spectral data incompleteness - missing low frequencies in data leads to<br />
missing long scale components in estimated model<br />
2. strong <strong>nonlinear</strong>ity, many false local minima - descent methods fail<br />
, 3/15
Full Wave<strong>for</strong>m Inversion (FWI)<br />
Remedies <strong>for</strong> reflection <strong>inversion</strong>:<br />
automatic migration velocity analysis (MVA) (e.g., DSO variants):<br />
decompose model into slowly & fast varying parts (background &<br />
reflectivity), then alternately<br />
a. build reflectivity via migration or linearized LS-<strong>inversion</strong><br />
b. update background to reduce inconsistency of reflectivity gathers<br />
+ infer global changes in model (long-scale updates)<br />
− limited by linearization and scale separation assumptions<br />
̌ <strong>nonlinear</strong> DSO: import MVA’s concepts (image gathering, <strong>semblance</strong><br />
measuring) into FWI and drop MVA limitations<br />
, 3/15
Agenda<br />
1 Full Wave<strong>for</strong>m Inversion<br />
2 Extension and Differential Semblance Optimization (DSO)<br />
3 Examples: Inversion in Layered Medium<br />
, 4/15
Formulate FWI via DSO<br />
Concept: relax FWI via extension then demand coherence of extended model<br />
FWI - attempt to match all data simultaneously with one model<br />
1<br />
min ‖F[m] −<br />
m∈M<br />
2 d‖2 := 1 2<br />
∑ (<br />
‖F[m](s) − d(s)‖<br />
2 )<br />
Extended WI - fit subsets of data with non-physical extended models<br />
1<br />
min<br />
2<br />
¯m∈M<br />
∥<br />
∥F[ ¯m] − d ∥ ∥ 2 := 1 2<br />
Note:<br />
extended models M = { ¯m(x, s)}<br />
¯m(x, s) = m(x) <strong>for</strong> all s)<br />
s<br />
∑ (<br />
‖F[ ¯m(., s)](s) − d(s)‖<br />
2 )<br />
s<br />
(M ⊂ M, regarding ¯m = m iff<br />
extended modeling F : M → D by F[ ¯m](s) = F[ ¯m(·, s)](s)<br />
Equivalent problem to FWI - find coherent solution to extended WI<br />
, 5/15
Formulate FWI via DSO<br />
Differential Semblance (with surface oriented extension):<br />
s finely sampled ⇒ coherence criterion is ∂ ¯m/∂s = 0<br />
Differential Semblance Optimization:<br />
min<br />
¯m∈M<br />
s.t.<br />
J DS [ ¯m] := 1 ∥ ∂ ∥∥∥<br />
2<br />
2 ∥∂s ¯m ∥<br />
∥ F[ ¯m] − d ≈ 0<br />
(coherence measurement)<br />
(data-fitting constraints)<br />
Key to success: need a proper control in order to navigate through the feasible<br />
model set {<br />
¯m ∈ M :<br />
∥ ∥F[ ¯m] − d<br />
∥ ∥ ≈ 0<br />
}<br />
, 5/15
Using LF data as control<br />
Concept:<br />
Cannot use independent long-scale model as control, as in MVA: “low spatial<br />
frequency” not well defined, depends on velocity.<br />
However, temporal passband is well-defined, and observed data lacks very low<br />
frequency energy (0-3, 0-5,... Hz) with good s/n<br />
Generally, the impulsive inverse problem is solvable: LS <strong>inversion</strong> leads to<br />
“unique” model, if data d is not band-limited (good s/n down to 0 Hz)<br />
So: use low-frequency data as control (analogous to long-scale model in<br />
MVA)<br />
, 6/15
Using LF data as control<br />
Approach I: use low-frequency data as control<br />
- define low-frequency source complementary to missing passband,<br />
low-frequency modeling op F l and its extension F l<br />
- define complementary low-frequency data d l<br />
- define ¯m[d l ] to be minimizer of<br />
∥ ∥∥∥<br />
2<br />
‖F[ ¯m] + F l [ ¯m] − (d + d l )]‖ 2 + σ 2 ∂ ¯m<br />
∂s ∥<br />
- nDSO: determine d l by solving<br />
min<br />
d l<br />
∥ ∥∥∥ ∂<br />
∂s ¯m[d l]<br />
∥<br />
Initial exploration: D. Sun (2008), D. Sun & W. Symes (2009), <strong>for</strong> plane wave /<br />
layered medium modeling – slices of DS objective are convex, i.e., an<br />
enlargement of the domain of attraction of the global minimum is achieved<br />
Further thought: find a way to supply meaningful/consistent low<br />
frequency data<br />
2<br />
, 6/15
Using LF data as control<br />
Approach II: generate low-frequency data from model<br />
- Given low frequency control model m l ∈ M, define extended model<br />
¯m = ¯m[m l ] by minimizing<br />
∥ ∥∥∥<br />
2<br />
‖F[ ¯m] + F l [ ¯m] − (d + F l [m l ])]‖ 2 + σ 2 ∂ ¯m<br />
∂s ∥<br />
- nDSO: determine m l by solving<br />
min<br />
m l<br />
∥ ∥∥∥ ∂<br />
∂s ¯m[m l]<br />
∥<br />
Advantage of this approach: m l plays same role as migration velocity model,<br />
but no linearization, scale separation assumptions required by <strong>for</strong>mulation.<br />
Current project: 2D constant-density acoustics, plane-wave sources (to minimize<br />
edge artifacts)<br />
2<br />
, 6/15
DSO Algorithm<br />
Key step: compute m l gradient:<br />
where<br />
∇J DS [m l ] = −DF l [m l ] T −1 ∂2<br />
DF l [ ¯m[m l ]]H[ ¯m[m l ]]<br />
∂s 2 ¯m[m l]<br />
H[ ¯m] = ( DF [ ¯m] + DF l [ ¯m] ) T (<br />
DF [ ¯m] + DFl [ ¯m] )<br />
Computational procedure:<br />
1 initialize m l , etc.<br />
2 solve sub-LS problem <strong>for</strong> ¯m[m l ]<br />
3 evaluate J DS [ ¯m]. If stopping criterion satisfied, stop; else, continue.<br />
4 compute updating direction g = −∇J DS [m l ]<br />
5 update m l , cycle<br />
, 7/15
Agenda<br />
1 Full Wave<strong>for</strong>m Inversion<br />
2 Extension and Differential Semblance Optimization (DSO)<br />
3 Examples: Inversion in Layered Medium<br />
, 8/15
Model<br />
0<br />
x (km)<br />
0 2<br />
z (km)<br />
0.2<br />
0.4<br />
0.6 0.8 1.0 1.2<br />
MPa<br />
x10 4<br />
Three layer bulk modulus model.<br />
(acoustic velocity v = 1.5, 2.5, 2 km/s, density ρ = 1 g/cm 3 )<br />
Two sets of <strong>inversion</strong> exercises:<br />
absorbing surface<br />
free surface<br />
, 9/15
Absorbing Surf: LS Inversion (standard FWI)<br />
Time (s)<br />
0<br />
0.5<br />
1.0<br />
1.5<br />
2.0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
-5 0 5 10<br />
Band limited (5-12-36-45 Hz) plane wave source - 31 slowness panels<br />
, 10/15
Absorbing Surf: LS Inversion (standard FWI)<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
Time (s)<br />
0.5<br />
1.0<br />
-1000 0 1000<br />
time (s)<br />
0.2<br />
0.4<br />
0.6<br />
0.8<br />
1.0<br />
1.2<br />
sign(p)*p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
-500 0 500<br />
Target data (Top), Data residual (Bottom)<br />
: after 40 LBFGS iterations - RMS ∼ 32%<br />
, 10/15
Absorbing Surf: LS Inversion (standard FWI)<br />
0<br />
x (km)<br />
0 2<br />
x10 4<br />
1.2<br />
true:blk, init:blue, fnl:red<br />
0.2<br />
1.0<br />
z (km)<br />
0.4<br />
bulk modulus (Mpa)<br />
0.8<br />
0.6<br />
0.4<br />
3000 4000 5000 6000 7000<br />
MPa<br />
0 0.2 0.4<br />
Depth (km)<br />
Left: FWI estimate of bulk modulus after 40 LBFGS iterations; Right: final<br />
model slice at x = 1.5( km)<br />
, 10/15
Absorbing Surf: DS Inversion with LF control<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
z (km)<br />
0.2<br />
0.4<br />
3000 4000 5000 6000 7000<br />
MPa<br />
Inverted model ¯m[m l ], m l = homogeneous model<br />
, 11/15
Absorbing Surf: DS Inversion with LF control<br />
sign(p)p^2 (s^2/km^2)<br />
-0.10 -0.07 -0.05 -0.02 0.01 0.03 0.06 0.08<br />
0<br />
z (km)<br />
0.2<br />
0.4<br />
3000 4000 5000 6000<br />
MPa<br />
Inverted gather ¯m[m l ], m l = homogeneous model, x = 1.5 km<br />
, 11/15
Absorbing Surf: DS Inversion with LF control<br />
0<br />
x (km)<br />
0 2<br />
z (km)<br />
0.2<br />
0.4<br />
0.2 0.4 0.6 0.8 1.0 1.2<br />
MPa<br />
x10 4<br />
Low frequency control model m l after 7 updates<br />
, 11/15
Absorbing Surf: DS Inversion with LF control<br />
sign(p)p^2 (s^2/km^2)<br />
-0.10 -0.07 -0.05 -0.02 0.01 0.03 0.06 0.08<br />
0<br />
z (km)<br />
0.2<br />
0.4<br />
0.4 0.6 0.8 1.0 1.2<br />
MPa<br />
x10 4<br />
Inverted gather ¯m[m l ], 7 updates of m l , x = 1.5 km<br />
, 11/15
Absorbing Surf: DS Inversion with LF control<br />
x10 4 init-models (true:blk, 1:ylw, 2-6:grn, 7:red, 8:blue)<br />
x10 4 fnl-models (true:blk, 1:ylw, 2-6:grn, 7:red, 8:blue)<br />
1.2<br />
1.2<br />
1.0<br />
1.0<br />
bulk modulus (Mpa)<br />
0.8<br />
0.6<br />
bulk modulus (Mpa)<br />
0.8<br />
0.6<br />
0.4<br />
0.4<br />
0 0.2 0.4<br />
Depth (km)<br />
0 0.2 0.4<br />
Depth (km)<br />
Left: m l at x = 1.5( km); Right: final model at x = 1.5( km)<br />
, 11/15
Free Surf: DS Inversion with LF control<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
z (km)<br />
0.2<br />
0.4<br />
3000 4000 5000 6000 7000<br />
MPa<br />
Inverted model ¯m[m l ], m l = homogeneous model<br />
! multiple reflections got suppressed during LS <strong>inversion</strong><br />
, 12/15
Free Surf: DS Inversion with LF control<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
z (km)<br />
0.2<br />
0.4<br />
-1000 -500 0 500 1000<br />
MPa<br />
LS gradient in 1st iteration (i.e., residual migration)<br />
! lots of multiple reflections<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
Time (s)<br />
0.5<br />
1.0<br />
-1000 0 1000 2000<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
Time (s)<br />
0.5<br />
1.0<br />
-1000 0 1000 2000<br />
Target Data (Top), Predicted Data (Bottom)<br />
:after 60 LBFGS iterations<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
Time (s)<br />
0<br />
0.5<br />
1.0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
-100 -50 0 50 100<br />
Data residual after 60 LBFGS iterations - RMS ∼ 8%<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
0<br />
0.05<br />
0.10<br />
0.15<br />
0.20<br />
0.25<br />
sign(p)p^2 (s^2/km^2)<br />
-0.10 -0.07 -0.05 -0.02 0.01 0.03 0.06 0.08<br />
z (km)<br />
0.30<br />
0.35<br />
0.40<br />
0.45<br />
0.50<br />
0.55<br />
Inverted model gather ¯m[m l ], m l = homogeneous model, x = 1.5 km<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
0<br />
x (km)<br />
0 2<br />
z (km)<br />
0.2<br />
0.4<br />
0.4 0.6 0.8 1.0 1.2<br />
MPa<br />
x10 4<br />
Low frequency control model m l in the 3rd DS-iteration<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
z (km)<br />
0.2<br />
0.4<br />
0.2 0.4 0.6 0.8 1.0 1.2<br />
MPa<br />
x10 4<br />
Inverted model ¯m[m l ] in the 3rd DS-iteration<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
0<br />
0.05<br />
0.10<br />
0.15<br />
0.20<br />
0.25<br />
sign(p)p^2 (s^2/km^2)<br />
-0.10 -0.07 -0.05 -0.02 0.01 0.03 0.06 0.08<br />
z (km)<br />
0.30<br />
0.35<br />
0.40<br />
0.45<br />
0.50<br />
0.55<br />
Inverted model gather ¯m[m l ] after 3 DS-iterations, x = 1.5 km<br />
DS-objective value reduced by 60%<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
Time (s)<br />
0.5<br />
1.0<br />
-1000 0 1000 2000<br />
0<br />
sign(p)p^2 (s^2/km^2)<br />
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08<br />
Time (s)<br />
0.5<br />
1.0<br />
-200 -100 0 100<br />
Target Data (Top), Data Residual (Bottom)<br />
:after 60 LBFGS iterations - RMS ∼ 15% (in 3rd DS iteration)<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
init-mdl (true:blk, 1:grn, 2:blue, 3:red, 4:purp) fnl-mdl (true:blk, 1:grn, 2:blue, 3:red)<br />
x10 4<br />
x10 4<br />
1.2<br />
1.2<br />
1.0<br />
1.0<br />
bulk modulus (Mpa)<br />
0.8<br />
0.6<br />
bulk modulus (Mpa)<br />
0.8<br />
0.6<br />
0.4<br />
0.4<br />
0 0.2 0.4<br />
Depth (km)<br />
0 0.2 0.4<br />
Depth (km)<br />
Left: m l at x = 1.5( km); Right: final model at x = 1.5( km)<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
0<br />
x (km)<br />
0 2<br />
z (km)<br />
0.2<br />
0.4<br />
0.4 0.6 0.8 1.0 1.2<br />
MPa<br />
x10 4<br />
Inverted model stack (in 3rd DS iteration)<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
Standard LS <strong>inversion</strong> staring from the final model stack from nDSO<br />
0<br />
x (km)<br />
0 2<br />
z (km)<br />
0.2<br />
0.4<br />
0.5 1.0<br />
MPa<br />
x10 4<br />
Inverted model after 153 LBFGS iterations (RMS residual ∼ 6%)<br />
(initial RMS res ∼ 77%; after 30 LBFGS RMS res ∼ 14%)<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
Standard LS <strong>inversion</strong> staring from the homogeneous model<br />
0<br />
x (km)<br />
0 2<br />
z (km)<br />
0.2<br />
0.4<br />
4000 6000 8000<br />
MPa<br />
Inverted model after 30 LBFGS iterations (RMS residual ∼ 27%)<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
Time (s)<br />
0<br />
0.5<br />
1.0<br />
x (km)<br />
0 3 6 9<br />
-4 -2 0 2 4<br />
x10 4<br />
Data fitting (<strong>for</strong> shot with slowness 0): Left, target data; Middle, residual <strong>for</strong> LS<br />
inv from DS-fnl-stack; Right, residual <strong>for</strong> LS inv from homogeneous model<br />
, 12/15
Free Surf: DS Inversion with LF control<br />
true:blk, init:blue, fnl:red<br />
true:blk, init:blue, fnl:red<br />
x10 4<br />
x10 4<br />
1.2<br />
1.2<br />
1.0<br />
bulk modulus (Mpa)<br />
0.8<br />
bulk modulus (Mpa)<br />
1.0<br />
0.8<br />
0.6<br />
0.6<br />
0.4<br />
0.4<br />
0 0.2 0.4<br />
Depth (km)<br />
0 0.2 0.4<br />
Depth (km)<br />
Left: LS inv fnl model at x = 1.5( km); Right: nDS inv fnl model at x = 1.5( km)<br />
, 12/15
Remarks<br />
Pros:<br />
- successfully infers global model updates <strong>for</strong> both absorbing surface and free<br />
surface<br />
- stack at least gives a good initial model <strong>for</strong> LS-FWI<br />
, 13/15
Remarks<br />
Cost: 3-7 DS-iterations, mainly consisting of:<br />
1 LS <strong>inversion</strong> (<strong>for</strong> ¯m[m l ])<br />
direction computation g = DF l [m l ] T −1 ∂2<br />
DF l [ ¯m[m l ]]H[ ¯m[m l ]]<br />
∂s<br />
¯m[m 2 l ]<br />
solve H[ ¯m[m l ]]q = ∂2 ¯m[m<br />
∂s 2 l ] <strong>for</strong> q (∼ 30 CG iterations)<br />
to reduce cost: (a) pre-conditioning; (b) scaling strategies; (c) replacing H<br />
with I (might work) ...<br />
compute g = DF l [m l ] T DF l [ ¯m[m l ]] q (1 Born Sim + 1 Adj Comp)<br />
step-length computation (1 CG or Lin-LS + 1 Born Sim):<br />
, where ψ = ∂ ∂s<br />
α = − 〈ψ, ∂ ∂s ¯m[m l]〉<br />
〈ψ, ψ〉<br />
(<br />
DF [ ¯m[ml ]] † DF [m l ]g )<br />
, 13/15
Summary<br />
This approach may:<br />
combine best features of MVA and FWI (no linearization, scale separation<br />
assumptions required),<br />
address the spectral data incompleteness and local-minima issue,<br />
infer global changes in model and provide good initial model <strong>for</strong> FWI.<br />
Next to-do: explore this strategy with more tests, improve efficiency, ...<br />
, 14/15
Acknowledgements<br />
Great thanks to<br />
my Ph.D. committee:<br />
William Symes, Matthias Heinkenschloss, Yin Zhang, Colin Zelt<br />
Present and <strong>for</strong>mer TRIP team members:<br />
Xin Wang, Marco Enriquez, Igor Terentyev, Tanya Vdovina,<br />
Rami Nammour<br />
ExxonMobil URC FWI team<br />
especially Dave Hinkley, Jerry Krebs<br />
WesternGeco FWI Management <strong>for</strong> support and permission to present here<br />
Sponsors of The Rice Inversion Project<br />
NSF DMS 0620821<br />
Thank you!<br />
, 15/15