05.06.2015 Views

A nonlinear differential-semblance algorithm for waveform inversion

A nonlinear differential-semblance algorithm for waveform inversion

A nonlinear differential-semblance algorithm for waveform inversion

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!