Computing upper bounds for densest packings with congruent

Computing upper bounds for densest
packings with congruent copies of a
convex body
Fernando Mario de Oliveira Filho (FU Berlin)
Frank Vallentin (TU Delft, CWI Amsterdam)
ERC Workshop: High complexity discrete geometry, FU Berlin
October 26, 2011
The beginning of the story
tetrahedra tetris
image credit: Torquato, Jiao
the search for the densest packing of tetrahedra
This talk: Let’s start the race!
Overview
1. Packing problems in discrete geometry
2. Spectral bounds & convex optimization
3. Computational strategies
1. Packing problems
α(G) = 4
vertices:
S n−1 = {x ∈ Rn : x · x = 1}
edges:
x ∼ y if α < x · y < 1
pack spherical caps into S n−1 to maximize fraction of covered space
vertices:
Rn
edges:
x ∼ y if 0 < "x − y" < 2
pack balls into Rn to maximize fraction of covered space
vertices:
Rn ! SO(n)
edges:
image credit: Torquato, Jiao
(x, A) ∼ (y, B) if
(x + AKo ) ∩ (y + BKo ) "= ∅
pack bodies into Rn to maximize fraction of covered space
2. Spectral bounds &
convex optimization
G = (V, E) be finite graph,
K : V × V → R be a symmetric matrix such that
(1) K is positive semidefinite
(2) K(x, y) ≤ 0 if {x, y} "∈ E
(3) K1 = λ1
Then,
Hoffman (1970)
Delsarte (1973)
Lovász (1979)
|V |
α(G) ≤
max K(x, x).
λ x∈V
λ
T
11 " 0
Spectral decomposition: K −
|V |
I ⊆ V independent set
!
λ
2
|I| ≤
K(x, y) ≤ |I| max K(x, x)
x∈V
|V |
x,y∈I
G = (V, E) be finite graph,
K : V × V → R be a symmetric matrix such that
(1) K is positive semidefinite
(2) K(x, y) ≤ 0 if {x, y} "∈ E
(3) K1 = λ1
Then,
|V |
α(G) ≤
max K(x, x).
λ x∈V
Hoffman (1970)
Delsarte (1973)
Lovász (1979)
! Finding optimal K can be done by SDP
! Also works if V is compact measure space
! If V is not compact, then (3) makes trouble.
! Symmetries of G and harmonic analysis on V help to simplify the SDP
packing
problem
authors
n−1
compact, nonabelian
Delsarte, Goethals, Seidel (1977),
Kabatiansky, Levenshtein (1978)
n
non-compact,
abelian
Cohn, Elkies (2003)
non-compact,
non-abelian
Oliveira, V. (2011)
vertex set
spherical caps
S
R
sphere packing
body packing
harmonic
analysis
R ! SO(n)
n
Main theorem
Let P be a packing with body K, and
f ∈ L1 (Rn ! SO(n)) be continuous such that
(1) f is of positive type:
∀N ∈ N ∀(x1 , A1 ), . . . , (xN , AN ) ∈ Rn ! SO(n):
!
"
f ((xi , Ai )(xj , Aj )−1 ) i,j ! 0
(2) f (x, A) ≤ 0 if Ko ∩ (x + AKo ) = ∅
!
(3) λ = Rn !SO(n) f (x, A)d(x, A) > 0.
Then,
δ(P) ≤
f (0,I)
λ
· vol K
Approximate P by periodic packing P !
!
P =
N
! !
v + xi + Ai K
v∈L i=1
for some lattice L ⊆ Rn and (xi , Ai ) ∈ Rn ! SO(n)
compact
Define
K : (Rn ! SO(n))/L × (Rn ! SO(n))/L → R
by
K((x, A), (y, B)) =
!
f ((y − v, B)−1 (x, A))
v∈L
and ”apply” previous theorem.
3. Computational strategies
image credit: wikipedia
Question: How to find a good function f ?
Main technical step:
Parametrize functions using its Fourier coefficients.
Here: n = 2, other n only on demand. . .
Fourier coefficients are Hilbert Schmidt operators
!!
" !
""
a cos φ
cos θ − sin θ
f
,
=
a sin φ
sin θ
cos θ
Fourier basis
! ∞ "
∞
s−r −i(sθ+(r−s)φ)
#
frs (p)i e
Js−r (pa)pdp
0
r,s=−∞
#
!
#0
∀p ≥ 0 : f"rs (p)
rs
Answer: Finding an optimal f is an ∞-dimensional SDP.
Use tools from polynomial optimization
Now
to approximate optimal solution
of this ∞-dimensional SDP.
Main trick
p ∈ R[x] is sum of squares (SOS)
 T  
1
1
x
x
 
 
iff p(x) =  .  Q  . 
 .. 
 .. 
xd
xd
p(x) =
n
!
i=1
for Q ! 0.
2
(qi (x))
Case K = B(0, 1)
Case K = B(0, 1); reproving Cohn-Elkies
!
Instead of
with
#
f"rs (p)
f!00 (p) =
then
f (a) =
!
0
d
"
!0
use
f!00 (p) ≥ 0
rs
Laguerre polynomials
2k −p2
f2k p e
k=0
∞
f"00 (p)J0 (pa)pdp =
d
#
k=0
k!
2
−a2
f2k Lk (a /4)e
2
Conditions
(1) : ∀p ∈ R : f!00 (p) ≥ 0
(2) : ∀a ∈ R≥2 : f (a) ≤ 0
are equivalent to SOS conditions.
(Differs from numerical scheme of Cohn-Elkies and gives global optima)
Numerical results
0.28867493155 . . .
0.18615073311 . . .
0.13125261809 . . .
0.09973444216 . . .
0.08082433040 . . .
0.06930754913 . . .
0.06250430042 . . .
0.05898945087 . . .
with d = 40 and high accuracy SDP solver
and numerical help from Hans Mittelmann
Case K = C5
Step 1: Making things of positive type
Restrict to ”polynomial” Fourier coefficients
d
"
2
2k
−t
f!rs (t) =
frs,2k t e
k=0
Then
#
P (t) = f"rs (t)
!
−N ≤r,s≤N
!0
∀t ∈ R
is a univariate PSD matrix inequality.
This is equivalent to: Multivariate polynomial
p(t, y) = y T P (t)y ∈ R[t, y−N , . . . , yN ]
is a sum of squares
Step 2: Evaluating the function
f (a, φ, θ) =
N
!
d
!
!
frs,2k is−r e−i(sθ+(r−s)φ)
r,s=−N k=0
∞
t
2k+1 −t2
e
Js−r (at)dt
0
if 2k + 2 + s − r > 0
AAR, page 222 (4.11.24)
s−r −a2 /4
If s − r even and (s − r − 2k − 2)/2 + 1 ≤ 0, then polynomial in a:
α
Ln (a)
(α + 1)n
=
1 F1
n!
!
Γ((2k + 2 + s − r)/2)(a/2) e
=
2Γ(s − r + 1)
!
"
2
(s − r − 2k − 2)/2 + 1 a
;
1 F1
s−r+1
4
"
−n
;a
α
Laguerre polynomial, orthogonal on [0, ∞) wrt aα e−a dx
So f is a polynomial in a and trigonometric in φ, θ.
linear combination of ”monomials”: ak sin rφ cos tθ
Step 3: Dealing with the geometry
(2) f (x, A) ≤ 0 if K ∩ (x + AK ) = ∅
o
o
Fix A ∈ SO(n).
x ∈ Rn with K o ∩ x + AK o #= ∅ is Minkowski difference K o − AK o
If K is a polytope, this is a linear condition in x.
Ko − AKo is an open 10-gon
x ∈ R2 , θ ∈ [−2π/10, 2π/10] with
x ∈ Ko − A(θ)Ko
(If K is the ball, then shape is a round cylinder.)
f ≤ 0 on the ten ”semialgebraic” sets
{(a, φ, θ) : gi (a, φ, θ) ≥ 0}
gi (a, φ, θ) < 0 ”facet” defining ”polynomial”
Can be relaxed as SOS condition.
Numerical results
image credit: WWW
Conclusions
!
We are developing the first step of an algorithmic solution
for a large class of packing problems
!
Complexity of body K is reflected in the complexity
of the computation
!
Numerical calculations are challenging
but seem to be in reach (in dimensions 2, 3)