• Aucun résultat trouvé

Repr´ esentations succinctes optimales pour les maillages

N/A
N/A
Protected

Academic year: 2022

Partager "Repr´ esentations succinctes optimales pour les maillages"

Copied!
35
0
0

Texte intégral

(1)

Repr´ esentations succinctes optimales pour les maillages

Luca Castelli Aleardi

(en collaboration avec Olivier Devillers et Gilles Schaeffer)

19 octobre 2006, ENST Paris

Projet Geometrica LIX

INRIA Sophia-Antipolis Ecole Polytechnique

(2)

Succinct and compact representations

Given a class Cm of objects of size m, the goal is to design a space efficient data structure such that:

queries on objects are answered in constant time;

the encoding is succinct: the cost of an object R Cm

matches asymptotically the entropy of the class size(R) = log2 kCmk(1 + o(1))

or compact: we content of a cost

size(R) = O(log2 kCmk)

for dynamic data structures: updates are supported in O(lgc m) amortized time

(3)

Compact representations: an example

Rooted trees with n vertices

enumeration of binary trees with n vertices:

kBnk = 1 n + 1

2n

n

≈ 22nn32 (1)

(4)

Example

Optimal (implicit) encoding for compression

size: log2 kBnk = 2n + O(lg n) bits

no efficient navigation

11101010001101001100

(5)

Example: explicit representation

Pointers-based representation

size: 2n lg n bits

constant time navigation between nodes

Clef t Cright

/

Cright

parent

Clef tCright

parent

/ /

parent

/ /

parent Clef tCright

parent

/ /

parent

/ /

parent /

lgn

lgn lgn

lgn

lgn

(6)

Compact and succinct representations

(Jacobson Focs89, Munro et Raman Focs97)

size: O(n) bits - adjacency queries in O(lg n) time

size: 2n + o(n) bits - adjacency queries in O(1) time

01100 01000 11010

11101

lgn

(7)

Motivation

Combinatorial information describing incidence relations

Which information?

Connectivity

(8)

Motivation

Geometry information (vertex coordinates)

Geometric object

Geometric information

x y z

between 30 and 96 bits (192 bits ?)

(9)

Motivation

Usual triangle-based mesh representation

Geometric object

Connectivity information Geometric information

vertex:

triangle:

1 reference to triangle 3 references to vertices 3 references to triangles

logn to 32 bits

(10)

Motivation

Mesh compression algorithms

Touma Gotsman Edgebreaker [Rossignac]

Poulhalon Schaeffer General underlying idea

Encoding strategies based on a local (global) conquest

(11)

Graph encoding

(Similarities between spanning-tree based methods, Isenburg and Snoeyink)

Edgebreaker

CCCRCCRCCRECRRELCRE

C CC

R C

C R

C C R

S C

R R L E

C E R

V5V5V6V5V4V5V8V5V5V4S4V3V4

T ouma Gotsman(98)

Canonical orderings and multiple parentheses Chuang et al. (Icalp 98) - Chiang et al. (Soda 01)

( [ [ [ ) ( ] ( ] ( ] [ [ [ ) [ ) ( ] ] [ ) . . .

1101000110000010010000011001000000000

P oulalhon Schaef f er(2003)

(12)

Motivation

Mesh compression algorithms

Mesh

comp ress ion

Compact representation

VRML, 288 or 114 bits/vertex

[Touma Gotsman] 2bits/vertex (near-optimal)

Pointer based representation: 208 bits/triangle 2.175 bits/triangle

[Poulalhon Schaeffer] 3.24bits/vertex (optimal)

(13)

Tutte’s entropy (triangulations)

(information theory asymptotic lower bound)

enumeration of rooted planar triangulations on n vertices:

Ψn = 2(4n + 1)!

(3n + 2)!(n + 1)! 16 27

r 3

n5/2(256 27 )n Tutte’s entropy (1962):

e = 1

n log2 Ψn log2(256

27 ) 3.2451 bits/vertex

(14)

Planar Triangulations with a boundary

n + 1 internal vertices, m = 2n + k faces f(n, k) = 2 · (2k 3)! (2k + 4n 1)!

(k 1)! (k 3)! (n + 1)! (2k + 3n)!

f(m, k) = 2 · (2k 3)! (2m 1)!

(k 1)! (k 3)! (m2k + 1)!

counting planar triangulations with m faces F(m) = lg(

m

X

k3

f(m, k)) 2.175m

3.24 bits/vertex = 1.62 bits/face < 2.17 bits/face

(15)

Triangulations with a boundary

(Castelli Aleardi, Devillers and Schaeffer, WADS 2005) Theorem. For planar triangulations with a boundary having m faces, there exists an optimal succinct

representation supporting efficient navigation in O(1) time, requiring

2.175m + O(mlg lg m

lg m ) = 2.175m + o(m) bits

For triangulations of genus g surfaces (g = o(lgmm)) the same representation requires

2.175m + 36(g 1) lg m + O(mlg lg m

lg m + g lg lg m) bits

(16)

Comparison: space efficiency

graphs with n vertices, e edges, m faces, genus g

Encoding queries 3-conn. triangl. g > 0 dynamic Jacobson (Focs89) O(lg n) 64n 64n no

Munro Raman (Focs97) O(1) 8n + 2e 7m no Chuang et al. (Icalp98) O(1) 2e + 2n 3.5m no Chiang et al. (Soda01) O(1) 2e + 2n 4m no Blandford et al. (Soda03) O(1) O(n) O(m) O(n) Castelli et al. (Wads05

Cccg05)

O(1) no 2.175m 2.175m +O(g lg m Castelli et al. (SoCG06) O(1) 2e 1.62m no

(17)

Literary digression ”La le¸con”, (Eug`ene Ionesco, 1951)

Au cours d’une le¸con priv´ee en pr´eparation du doctorat total, une jeune fille discute d’arithm´etique avec son professeur.

(le professeur)Ecoutez-moi, Mademoiselle, si vous n’arrivez pas `a´ comprendre profond´ement ces principes, ces arch´etypes

arithm´etiques, vous n’arriverez jamais `a faire correctement un travail de polytechnicien... combien font, par exemple,

3.755.918.261 multipli´e par 5.162.303.508?

(l’´el`eve, tr`es vite) Ca fait 193891900145...¸

(le professeur, de plus en plus ´etonn´e calcule mentalement)Oui... Vous avez

raison... le produit est bien... (il bredouille inintelligiblement)...

Mais comment le savez-vous, si vous ne connaissez pas les principes du raisonnement arithm´etique?

(l’´el`eve) C’est simple. Ne pouvant me fier `a mon raisonnement, j’ai appris par coeur tous les r´esultats possibles de toutes les multiplications possibles.

(18)

Decomposing T into sub-triangulations

compute small triangulations of size bewteen 13 lg2 m and lg2 m;

decompose into tiny triangulations of size between

1

12 lg m and 14 lg m.

Initial triangulation with m triangles Tiny triangulations with Θ(lgm) triangles Small triangulations with Θ(lg2m) triangles

(19)

Decomposing T into sub-triangulations

we compute small triangulations having between 13 lg2 m and lg2 m triangles;

we decompose small triangulations into tiny

triangulations containing between 121 lg m and 14 lg m triangles.

Graph G linking tiny triangulations having Θ(lgmm) nodes

A sub-graph Gi linking Θ(lgm) tiny triangulations lying in the same small

Graph F linking small triangulations with Θ(lgm2m) nodes

(20)

Overview: representation of a small triangulation

adjacency relations are described by map Gi;

internal connectivity is implicitly represented (variable size pointers)

boundary neighboring relations are represented by boundary coloring (variable length bit-vector)

pointer to tiny triangulation of size t

pointer to rank-select of size b and weight s t, b, s

split small into tiny

first vertex

0

1 0

0 1 1

1

1 0

0

0 0

0

(21)

Graph G

i

linking adjacent tiny triangulations

Gi has a node for each tiny triangulation and an arc for each pair of adjacent tiny triangulations;

Gi is a planar map, having faces of degree at least 3, multiple edges and loops are allowed;

(22)

i

adjacency relations between tiny triangulations

Because of Euler’s formula, the overall number of arcs in maps Gi is:

X

i

kE(Gi)k = O( m lg m)

(23)

Dominant cost analysis

The Catalog Ar contains all triangulations with r triangles A reference to an element in Ar costs 2.17r bits

k A k = 2

2.17r

r

2.17r bits reference

(24)

Total space used

Catalog of all different tiny triangulations

O(m412.17 lg2 m lg lg m) = o(m)

catalog of bit-vectors (with Rank/Select)

O(m412.17 lg m lg lg m) = o(m)

representation of graph F: O( m

lg2 m lg m) = o(m)

graphs Gi

2.17m + O(mlg lg m lg m )

(25)

Optimality

(SoCG 2006)

Proposition (Castelli Aleardi, Devillers and Schaeffer).

For planar maps (triangulations and 3-connected graphs) it is possible to design two optimal succinct representations, supporting efficient navigation in O(1) time, whose storage requirements match asymptotically the entropy of the

respective classes. More precisely, our representations use:

1.62m bits, for triangulations (without boundary) with m faces;

2e bits, for 3-connected graphs with e edges.

(26)

Optimal encodings

(Poulalhon/Schaeffer 03, Fusy/Poulalhon/Schaeffer 05)

(27)

Original local closures

(28)

New ”color-based” closures

(29)

”color-based” closure for triangulations

11010001010000100000000000 00100100100001

n nodes, 2n stems

n nodes, 2n stems n nodes, 2n stems

n nodes, 2n stems

n nodes, 2n stems n nodes, 2n stems n nodes, 2n stems n nodes, 2n stems

(30)

New splitting strategies

carte G

(31)

New splitting strategies

(32)

Dominant cost analysis

The Catalog Ar contains all triangulations with r triangles A reference to an element in Ar costs 2.17r bits

k A k = 2

2.17r

r

2.17r bits reference

(33)

Dominant cost analysis

Catalog Ar,w: all trees with r nodes, 2r stems and w false stems A reference to an element in Ar,w costs 2.17r + w lg r bits

kAr,wk = 23.24r · 2wr

3.24r + w lg r bits index

(34)

Future and related works

Design of a practical efficient implementation (joint work with A. Mebarki and O. Devillers, CCCG ’06)

extension: realizers, canonical orderings and ”spanning tree” encodings for higher genus surfaces

(35)

Graph encodings

(higher genus triangulations)

Edgebreaker

CCCRCCRCCRECRRELCRE

C CC

R C

C R

C C R

S C

R R L E

C E R

V5V5V6V5V4V5V8V5V5V4S4V3V4

T ouma Gotsman(98)

Edgebreaker on a torus

Canonical orderings and multiple parentheses Chuang et al. (Icalp 98) - Chiang et al. (Soda 01)

( [ [ [ ) ( ] ( ] ( ] [ [ [ ) [ ) ( ] ] [ ) . . .

1101000110000010010000011001000000000

P oulalhon Schaef f er(2003)

?

Repr´esentations succinctes optimales pour les maillages – p.35/35

Références

Documents relatifs

For some classes of planar maps (triangulations and 3-connected pla- nar maps) there exists an optimal succinct representation, supporting navigation in O(1) time. The memory

For planar maps (triangulations and 3 -connected graphs) it is possible to design two optimal succinct representations, supporting efficient navigation in O (1) time, whose

For planar maps (triangulations and 3 -connected graphs) it is possible to design two optimal succinct representations, supporting efficient navigation in O(1) time, whose

For some classes of planar maps (triangulations and 3-connected pla- nar maps) there exists an optimal succinct representation, supporting navigation in O(1) time. The memory

Il existe donc un vecteur propre pour H, et ensuite il suffit de tout refaire comme dans la preuve dans le cas alg´ebriquement clos.. 4 Appendice : alg` ebres

Il suffit de montrer que |G| divise χ(1). On calcule htriv, χi, o` u triv d´ esigne la repr´ esentation triviale de G.. On suppose que φ est le seul caract` ere irr´ eductible de

On sait (comme dans le point pr´ ec´ edente) que V admet un produit scalaire hermitien (d´ efini positif) h., .i et invariant par G (obtenu en moyennant un produit hermitien

Donner le nombre de composantes connexes et de trous pour l’objet de la figure 1, en 4- et 8- connexit´e.. On rappelle qu’un trou est une composante connexe du compl´ementaire