Solving the GPS Problem in Almost Linear Complexityshamgar/SETA12-June5-2012.pdfOded Schwartz (EE &...
Transcript of Solving the GPS Problem in Almost Linear Complexityshamgar/SETA12-June5-2012.pdfOded Schwartz (EE &...
Solving the GPS Problem in Almost Linear Complexity
Shamgar Gurevich
Madison
SETA2012
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 1 / 21
CONGRATULATIONS
MAZEL TOV SOL
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 2 / 21
Joint work with:
Alexander Fish (Math, Sydney)
Ronny Hadani (Math, Austin)
Akbar Sayeed (EE & CE, Madison)
Oded Schwartz (EE & CS, Berkeley)
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 3 / 21
(0) MOTIVATION - GPS
CLIENT WANT: Coordinates of satellite and time delay (enables tocalculate distance to a satellite)?
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 4 / 21
Motivation - GPS
S , R ∈ H = CN —Hilbert space of digital sequences, N � 1000.
S , R : ZN = {0, ....,N − 1} → C.
Satellite transmits b · S , b ∈ {1,−1} coordinates.
FactClient receives
R [n] = b · α0 · e2πiN ω0 ·n · S [n− τ0] +W [n], n ∈ ZN ,
α0 ∈ C attenuation, ω0 ∈ ZN Doppler, τ0 ∈ ZN delay, W ∈ H randomwhite noise.
Problem (The GPS Problem)
Design S ∈ H, and effective method to extract (b, τ0), using R and S .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 5 / 21
Motivation - GPS
S , R ∈ H = CN —Hilbert space of digital sequences, N � 1000.
S , R : ZN = {0, ....,N − 1} → C.
Satellite transmits b · S , b ∈ {1,−1} coordinates.
FactClient receives
R [n] = b · α0 · e2πiN ω0 ·n · S [n− τ0] +W [n], n ∈ ZN ,
α0 ∈ C attenuation, ω0 ∈ ZN Doppler, τ0 ∈ ZN delay, W ∈ H randomwhite noise.
Problem (The GPS Problem)
Design S ∈ H, and effective method to extract (b, τ0), using R and S .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 5 / 21
Motivation - GPS
S , R ∈ H = CN —Hilbert space of digital sequences, N � 1000.
S , R : ZN = {0, ....,N − 1} → C.
Satellite transmits b · S , b ∈ {1,−1} coordinates.
FactClient receives
R [n] = b · α0 · e2πiN ω0 ·n · S [n− τ0] +W [n], n ∈ ZN ,
α0 ∈ C attenuation, ω0 ∈ ZN Doppler, τ0 ∈ ZN delay, W ∈ H randomwhite noise.
Problem (The GPS Problem)
Design S ∈ H, and effective method to extract (b, τ0), using R and S .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 5 / 21
Motivation - GPS
S , R ∈ H = CN —Hilbert space of digital sequences, N � 1000.
S , R : ZN = {0, ....,N − 1} → C.
Satellite transmits b · S , b ∈ {1,−1} coordinates.
FactClient receives
R [n] = b · α0 · e2πiN ω0 ·n · S [n− τ0] +W [n], n ∈ ZN ,
α0 ∈ C attenuation, ω0 ∈ ZN Doppler, τ0 ∈ ZN delay, W ∈ H randomwhite noise.
Problem (The GPS Problem)
Design S ∈ H, and effective method to extract (b, τ0), using R and S .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 5 / 21
Motivation - GPS
S , R ∈ H = CN —Hilbert space of digital sequences, N � 1000.
S , R : ZN = {0, ....,N − 1} → C.
Satellite transmits b · S , b ∈ {1,−1} coordinates.
FactClient receives
R [n] = b · α0 · e2πiN ω0 ·n · S [n− τ0] +W [n], n ∈ ZN ,
α0 ∈ C attenuation, ω0 ∈ ZN Doppler, τ0 ∈ ZN delay, W ∈ H randomwhite noise.
Problem (The GPS Problem)
Design S ∈ H, and effective method to extract (b, τ0), using R and S .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 5 / 21
Motivation - TIME-FREQUENCY SHIFT
Simpler scenario
R [n] = e2πiN ω0 ·n · S [n− τ0] + W [n].
Problem (Time-Frequency Shift)
Design S ∈ H, and method of extracting (τ0,ω0), using R and S .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 6 / 21
Motivation - TIME-FREQUENCY SHIFT
Simpler scenario
R [n] = e2πiN ω0 ·n · S [n− τ0] + W [n].
Problem (Time-Frequency Shift)
Design S ∈ H, and method of extracting (τ0,ω0), using R and S .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 6 / 21
(I) SOLUTION - Matched Filter
DefinitionMatched filter M(R, S) :
Time-Frequency︷ ︸︸ ︷ZN ×ZN → C,
M(R,S)[τ,ω] =⟨R [n] , e
2πiN ω·n · S [n− τ]
⟩.
Question: What S to use for extracting (τ0,ω0) fromM(R,S) ?
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 7 / 21
(I) SOLUTION - Matched Filter
DefinitionMatched filter M(R, S) :
Time-Frequency︷ ︸︸ ︷ZN ×ZN → C,
M(R,S)[τ,ω] =⟨R [n] , e
2πiN ω·n · S [n− τ]
⟩.
Question: What S to use for extracting (τ0,ω0) fromM(R,S) ?
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 7 / 21
Solution - MATCHED FILTER
Typical solution: S = pseudo-random.
Figure: |M(R, S)|, (τ0,ω0) = (50, 50).
Using FFT computeM(R,S) in O(N2 · log(N)) operations.
Question (Goresky—Klapper, SETA08): Can you design S andmethod to make almost linear number of operations?
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 8 / 21
Solution - MATCHED FILTER
Typical solution: S = pseudo-random.
Figure: |M(R, S)|, (τ0,ω0) = (50, 50).
Using FFT computeM(R,S) in O(N2 · log(N)) operations.
Question (Goresky—Klapper, SETA08): Can you design S andmethod to make almost linear number of operations?
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 8 / 21
Solution - MATCHED FILTER
Typical solution: S = pseudo-random.
Figure: |M(R, S)|, (τ0,ω0) = (50, 50).
Using FFT computeM(R,S) in O(N2 · log(N)) operations.
Question (Goresky—Klapper, SETA08): Can you design S andmethod to make almost linear number of operations?
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 8 / 21
(II) FLAG ALGORITHM - Idea
For every line L ⊂ ZN ×ZN we will construct a sequence SL ∈ H withM(R,SL) of the form
Figure: |M(R, SL)|, L = {(0,ω)}, (τ0,ω0) = (50, 50).
Then we have algorithm of complexity O(N · log(N)) !!Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 9 / 21
(III) SEQUENCE DESIGN - Heisenberg (Line) Sequences
Heisenberg operators on H = CN
π(τ,ω)f [n] = e2πiN ω·n · f [n+ τ], τ,ω ∈ ZN .
Property:
π(τ,ω) ◦ π(τ′,ω′) = e2πiN
det︷ ︸︸ ︷(τω′ −ωτ′) · π(τ′,ω′) ◦ π(τ,ω).
Mechanism to generate ’good sequences’:
Take any line L ⊂ ZN ×ZN ;
Restrict π to L get commutative collection of Heisenberg operators
π(`) : H → H, ` ∈ L;
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 10 / 21
(III) SEQUENCE DESIGN - Heisenberg (Line) Sequences
Heisenberg operators on H = CN
π(τ,ω)f [n] = e2πiN ω·n · f [n+ τ], τ,ω ∈ ZN .
Property:
π(τ,ω) ◦ π(τ′,ω′) = e2πiN
det︷ ︸︸ ︷(τω′ −ωτ′) · π(τ′,ω′) ◦ π(τ,ω).
Mechanism to generate ’good sequences’:
Take any line L ⊂ ZN ×ZN ;
Restrict π to L get commutative collection of Heisenberg operators
π(`) : H → H, ` ∈ L;
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 10 / 21
(III) SEQUENCE DESIGN - Heisenberg (Line) Sequences
Heisenberg operators on H = CN
π(τ,ω)f [n] = e2πiN ω·n · f [n+ τ], τ,ω ∈ ZN .
Property:
π(τ,ω) ◦ π(τ′,ω′) = e2πiN
det︷ ︸︸ ︷(τω′ −ωτ′) · π(τ′,ω′) ◦ π(τ,ω).
Mechanism to generate ’good sequences’:
Take any line L ⊂ ZN ×ZN ;
Restrict π to L get commutative collection of Heisenberg operators
π(`) : H → H, ` ∈ L;
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 10 / 21
(III) SEQUENCE DESIGN - Heisenberg (Line) Sequences
Heisenberg operators on H = CN
π(τ,ω)f [n] = e2πiN ω·n · f [n+ τ], τ,ω ∈ ZN .
Property:
π(τ,ω) ◦ π(τ′,ω′) = e2πiN
det︷ ︸︸ ︷(τω′ −ωτ′) · π(τ′,ω′) ◦ π(τ,ω).
Mechanism to generate ’good sequences’:
Take any line L ⊂ ZN ×ZN ;
Restrict π to L get commutative collection of Heisenberg operators
π(`) : H → H, ` ∈ L;
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 10 / 21
(III) SEQUENCE DESIGN - Heisenberg (Line) Sequences
Heisenberg operators on H = CN
π(τ,ω)f [n] = e2πiN ω·n · f [n+ τ], τ,ω ∈ ZN .
Property:
π(τ,ω) ◦ π(τ′,ω′) = e2πiN
det︷ ︸︸ ︷(τω′ −ωτ′) · π(τ′,ω′) ◦ π(τ,ω).
Mechanism to generate ’good sequences’:
Take any line L ⊂ ZN ×ZN ;
Restrict π to L get commutative collection of Heisenberg operators
π(`) : H → H, ` ∈ L;
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 10 / 21
Sequence Design - HEISENBERG (LINE) SEQUENCES
Theorem (Linear Algebra —Simultaneous Diagonalization)We have a basis for H of common eigen-sequences
BL = {fLψ ; π(`)[ fLψ ] =
e.v.︷︸︸︷ψ(`) · fLψ , for every ` ∈ L}.
Theorem (Support, [Calderbank—Howard—Moran, Howe])For fL ∈ BL
|M(fL, fL)[τ,ω]| ={1, (τ,ω) ∈ L;0, (τ,ω) /∈ L.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 11 / 21
Sequence Design - HEISENBERG (LINE) SEQUENCES
Theorem (Linear Algebra —Simultaneous Diagonalization)We have a basis for H of common eigen-sequences
BL = {fLψ ; π(`)[ fLψ ] =
e.v.︷︸︸︷ψ(`) · fLψ , for every ` ∈ L}.
Theorem (Support, [Calderbank—Howard—Moran, Howe])For fL ∈ BL
|M(fL, fL)[τ,ω]| ={1, (τ,ω) ∈ L;0, (τ,ω) /∈ L.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 11 / 21
Heisenberg (Line) Sequences —NUMERICS
Figure: |M(fL, fL)| , L = {(τ, τ)}.
What is next?
Just add any pseudo-random sequence.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 12 / 21
Heisenberg (Line) Sequences —NUMERICS
Figure: |M(fL, fL)| , L = {(τ, τ)}.
What is next?
Just add any pseudo-random sequence.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 12 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Group SL2(ZN ) = {g =(a bc d
); a, b, c, d ∈ ZN , ad − bc = 1}.
Theorem (Fourier—Weil representation)
There exists a collection of unitary operators ρ(g) : H → H,g ∈ SL2(ZN ), with
1 ρ(g · h) = ρ(g) ◦ ρ(h);
2 ρ
(0 −11 0
)=Fourier Transform.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 13 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Group SL2(ZN ) = {g =(a bc d
); a, b, c, d ∈ ZN , ad − bc = 1}.
Theorem (Fourier—Weil representation)
There exists a collection of unitary operators ρ(g) : H → H,g ∈ SL2(ZN ), with
1 ρ(g · h) = ρ(g) ◦ ρ(h);
2 ρ
(0 −11 0
)=Fourier Transform.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 13 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Group SL2(ZN ) = {g =(a bc d
); a, b, c, d ∈ ZN , ad − bc = 1}.
Theorem (Fourier—Weil representation)
There exists a collection of unitary operators ρ(g) : H → H,g ∈ SL2(ZN ), with
1 ρ(g · h) = ρ(g) ◦ ρ(h);
2 ρ
(0 −11 0
)=Fourier Transform.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 13 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Group SL2(ZN ) = {g =(a bc d
); a, b, c, d ∈ ZN , ad − bc = 1}.
Theorem (Fourier—Weil representation)
There exists a collection of unitary operators ρ(g) : H → H,g ∈ SL2(ZN ), with
1 ρ(g · h) = ρ(g) ◦ ρ(h);
2 ρ
(0 −11 0
)=Fourier Transform.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 13 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Mechanism to generate ’good sequences’:
Take maximal commutative subgroup T ⊂ SL2(ZN ), i.e., gh = hg forevery g , h ∈ T .Get a commutative collection of Weil operators
ρ(g) : H → H, g ∈ T .
Get a basis for H of common eigen-sequences
BT = {ϕTχ; ρ(g)[ ϕTχ
] =
e.v.︷︸︸︷χ(g) · ϕTχ
, for every g ∈ T}.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 14 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Mechanism to generate ’good sequences’:
Take maximal commutative subgroup T ⊂ SL2(ZN ), i.e., gh = hg forevery g , h ∈ T .
Get a commutative collection of Weil operators
ρ(g) : H → H, g ∈ T .
Get a basis for H of common eigen-sequences
BT = {ϕTχ; ρ(g)[ ϕTχ
] =
e.v.︷︸︸︷χ(g) · ϕTχ
, for every g ∈ T}.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 14 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Mechanism to generate ’good sequences’:
Take maximal commutative subgroup T ⊂ SL2(ZN ), i.e., gh = hg forevery g , h ∈ T .Get a commutative collection of Weil operators
ρ(g) : H → H, g ∈ T .
Get a basis for H of common eigen-sequences
BT = {ϕTχ; ρ(g)[ ϕTχ
] =
e.v.︷︸︸︷χ(g) · ϕTχ
, for every g ∈ T}.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 14 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Mechanism to generate ’good sequences’:
Take maximal commutative subgroup T ⊂ SL2(ZN ), i.e., gh = hg forevery g , h ∈ T .Get a commutative collection of Weil operators
ρ(g) : H → H, g ∈ T .
Get a basis for H of common eigen-sequences
BT = {ϕTχ; ρ(g)[ ϕTχ
] =
e.v.︷︸︸︷χ(g) · ϕTχ
, for every g ∈ T}.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 14 / 21
Sequence Design - WEIL (SPIKE) SEQUENCES
Theorem (Pseudo-Randomness [G—Hadani—Sochen, 2008])For ϕT ∈ BT we have
|M(ϕT , ϕT )[τ,ω]| ={1, (τ,ω) = (0, 0);≤ 2√
N, (τ,ω) 6= (0, 0).
Figure: M(ϕT , ϕT ), T = {(a 00 a−1
); 0 6= a ∈ ZN }.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 15 / 21
HEISENBERG+WEIL (FLAG) SEQUENCES
Theorem ([Fish—G—Hadani—Sayeed—Schwartz, 2012])Take SL = fL︸︷︷︸
∈BL
+ ϕT︸︷︷︸∈BT
. Then
1 Flag. We have
|M(SL,SL)[τ,ω]| ≈
2, if (τ,ω) = (0, 0);1, if (τ,ω) ∈ Lr (0, 0);≤ 7√
N, otherwise.
2 Almost orthogonality. For L 6= M we have|M(SL,SM )[τ,ω]| ≤ 7√
N, for every (τ,ω) ∈ ZN× ZN .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 16 / 21
HEISENBERG+WEIL (FLAG) SEQUENCES
Theorem ([Fish—G—Hadani—Sayeed—Schwartz, 2012])Take SL = fL︸︷︷︸
∈BL
+ ϕT︸︷︷︸∈BT
. Then
1 Flag. We have
|M(SL,SL)[τ,ω]| ≈
2, if (τ,ω) = (0, 0);1, if (τ,ω) ∈ Lr (0, 0);≤ 7√
N, otherwise.
2 Almost orthogonality. For L 6= M we have|M(SL,SM )[τ,ω]| ≤ 7√
N, for every (τ,ω) ∈ ZN× ZN .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 16 / 21
Heisenberg+Weil (Flag) Sequences - NUMERICS
Figure: |M(SL, SL)| for Heisenberg—Weil flag with L = {(τ, τ)}.
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 17 / 21
(IV) APPLICATION - GPS
Satellite transmits waveform SL + b · SM .
Client receives
R [n] = α0 · e2πiN ω0 ·n︸ ︷︷ ︸Doppler
·SL[n− τ0︸︷︷︸delay
]+b · α0 · e2πiN ω0 ·n ·SM [n− τ0]+W [n].
Goal: Extract (b, τ0), using R, SL, and SM .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 18 / 21
(IV) APPLICATION - GPS
Satellite transmits waveform SL + b · SM .Client receives
R [n] = α0 · e2πiN ω0 ·n︸ ︷︷ ︸Doppler
·SL[n− τ0︸︷︷︸delay
]+b · α0 · e2πiN ω0 ·n ·SM [n− τ0]+W [n].
Goal: Extract (b, τ0), using R, SL, and SM .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 18 / 21
(IV) APPLICATION - GPS
Satellite transmits waveform SL + b · SM .Client receives
R [n] = α0 · e2πiN ω0 ·n︸ ︷︷ ︸Doppler
·SL[n− τ0︸︷︷︸delay
]+b · α0 · e2πiN ω0 ·n ·SM [n− τ0]+W [n].
Goal: Extract (b, τ0), using R, SL, and SM .
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 18 / 21
Application - GPS
We have
R [n] = α0 · e2πiN ω0 ·n · SL[n− τ0] + b · α0 · e
2πiN ω0 ·n · SM [n− τ0] +W [n].
Compute
M(R, SL)[τ,ω] ≈
2 · α0, if (τ,ω) = (τ0,ω0);1 · α0, if (τ,ω) ∈ L+ (τ0,ω0)r (τ0,ω0);≤ O( 1√
N), otherwise,
=⇒ get (α0, τ0,ω0).
ComputeM(R, SM )[τ,ω],=⇒ get b · α0;=⇒ get b.
Flag method solves The GPS Problem in O(N log(N)) !!
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 19 / 21
Application - GPS
We have
R [n] = α0 · e2πiN ω0 ·n · SL[n− τ0] + b · α0 · e
2πiN ω0 ·n · SM [n− τ0] +W [n].
Compute
M(R, SL)[τ,ω] ≈
2 · α0, if (τ,ω) = (τ0,ω0);1 · α0, if (τ,ω) ∈ L+ (τ0,ω0)r (τ0,ω0);≤ O( 1√
N), otherwise,
=⇒ get (α0, τ0,ω0).
ComputeM(R, SM )[τ,ω],=⇒ get b · α0;=⇒ get b.
Flag method solves The GPS Problem in O(N log(N)) !!
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 19 / 21
Application - GPS
We have
R [n] = α0 · e2πiN ω0 ·n · SL[n− τ0] + b · α0 · e
2πiN ω0 ·n · SM [n− τ0] +W [n].
Compute
M(R, SL)[τ,ω] ≈
2 · α0, if (τ,ω) = (τ0,ω0);1 · α0, if (τ,ω) ∈ L+ (τ0,ω0)r (τ0,ω0);≤ O( 1√
N), otherwise,
=⇒ get (α0, τ0,ω0).
ComputeM(R, SM )[τ,ω],=⇒ get b · α0;=⇒ get b.
Flag method solves The GPS Problem in O(N log(N)) !!
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 19 / 21
Application - GPS
We have
R [n] = α0 · e2πiN ω0 ·n · SL[n− τ0] + b · α0 · e
2πiN ω0 ·n · SM [n− τ0] +W [n].
Compute
M(R, SL)[τ,ω] ≈
2 · α0, if (τ,ω) = (τ0,ω0);1 · α0, if (τ,ω) ∈ L+ (τ0,ω0)r (τ0,ω0);≤ O( 1√
N), otherwise,
=⇒ get (α0, τ0,ω0).
ComputeM(R, SM )[τ,ω],=⇒ get b · α0;=⇒ get b.
Flag method solves The GPS Problem in O(N log(N)) !!
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 19 / 21
THANK YOU
Sasha Ronny
Akbar Oded
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 20 / 21
CONGRATULATIONS
MAZEL TOV SOL
Shamgar Gurevich (Madison) GPS in Linear Complexity SETA2012 21 / 21