Anonymous Graph Exploration with Binoculars Jrmie Chalopin - - PowerPoint PPT Presentation

anonymous graph exploration with binoculars
SMART_READER_LITE
LIVE PREVIEW

Anonymous Graph Exploration with Binoculars Jrmie Chalopin - - PowerPoint PPT Presentation

Anonymous Graph Exploration with Binoculars Jrmie Chalopin Emmanuel Godard Antoine Naudin LIF , CNRS & Aix-Marseille Universit GRASTA-MAC 2015 GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 1/23 Graph Exploration


slide-1
SLIDE 1

Anonymous Graph Exploration with Binoculars

Jérémie Chalopin Emmanuel Godard Antoine Naudin

LIF , CNRS & Aix-Marseille Université

GRASTA-MAC 2015

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 1/23

slide-2
SLIDE 2

Graph Exploration

◮ An agent is moving along the edges of a graph ◮ Goal : visit all the nodes and stop

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 2/23

slide-3
SLIDE 3

Graph Exploration

◮ An agent is moving along the edges of a graph ◮ Goal : visit all the nodes and stop

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 2/23

slide-4
SLIDE 4

Graph Exploration

◮ An agent is moving along the edges of a graph ◮ Goal : visit all the nodes and stop

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 2/23

slide-5
SLIDE 5

How to navigate in the graph ?

1 3 6 2 2 6 2 2 3 5 3 4 4 5 2 1 4 3 6 6 2

◮ Anonymous graph ◮ Port-numbering ◮ The agent knows its incoming port number ◮ It has an infinite memory

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 3/23

slide-6
SLIDE 6

Exploration without information

Exploration of a graph G

Visit every node of G and stop

Question

What graphs can we explore without information ?

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 4/23

slide-7
SLIDE 7

Exploration without information

Exploration of a graph G

Visit every node of G and stop

Question

What graphs can we explore without information ? An algorithm A is an exploration algorithm

◮ for every graph G, if A stops, then the agent has visited all

the nodes of G

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 4/23

slide-8
SLIDE 8

Exploration without information

Exploration of a graph G

Visit every node of G and stop

Question

What graphs can we explore without information ? An algorithm A is an exploration algorithm for a family F

◮ for every graph G, if A stops, then the agent has visited all

the nodes of G

◮ for every graph G ∈ F, A visits all nodes of G and stops

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 4/23

slide-9
SLIDE 9

Known Results [Folklore]

If nodes can be marked :

◮ every graph is explorable by a DFS in O(m) moves

If nodes cannot be marked :

◮ Trees can be explored by a DFS in O(n) moves ◮ Non tree graphs : it is impossible to detect when all nodes

have been visited

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 5/23

slide-10
SLIDE 10

Graph Coverings

Definition

A graph covering is a locally bijective homomorphism ϕ : G → H

4 2 3 4 2 3 3 3 4 4 2 2 4 2 3

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 6/23

slide-11
SLIDE 11

Lifting Lemma

Lifting Lemma (from Angluin)

If G is a graph cover of H, then an agent cannot decide if it starts on v ∈ V(G) or on ϕ(v) ∈ V(H)

4 2 3 4 2 3 3 3 4 4 2 2 4 2 3

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 7/23

slide-12
SLIDE 12

Lifting Lemma

Lifting Lemma (from Angluin)

If G is a graph cover of H, then an agent cannot decide if it starts on v ∈ V(G) or on ϕ(v) ∈ V(H)

4 2 3 4 2 3 3 3 4 4 2 2 4 2 3

Corollary

If an exploration algorithm A stops in r steps in H, r ≥ |V(G)|

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 7/23

slide-13
SLIDE 13

Explorable graphs without global information

G is explorable ⇐ ⇒ G has a unique graph cover (itself) ⇐ ⇒ G has no infinite graph cover ⇐ ⇒ G is a tree

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 8/23

slide-14
SLIDE 14

Our model : Mobile Agent with Binoculars

◮ the agent sees the graph induced by its neighbors 1 3 6 2 2 6 2 2 3 5 3 4 4 5 2 1 4 3 6 6 2

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 9/23

slide-15
SLIDE 15

Our model : Mobile Agent with Binoculars

◮ the agent sees the graph induced by its neighbors ◮ One can detect triangles ◮ Graph coverings are no longer the good notion 1 3 6 2 2 6 2 2 3 5 3 4 4 5 2 1 4 3 6 6 2

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 9/23

slide-16
SLIDE 16

What can we do with binoculars ?

◮ Can we explore every graph ?

◮ NO

Cycles of length ≥ 4 cannot be explored

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 10/23

slide-17
SLIDE 17

What can we do with binoculars ?

◮ Can we explore every graph ?

◮ NO

Cycles of length ≥ 4 cannot be explored

◮ Can we characterize explorable graphs ?

◮ YES ◮ using clique complexes and simplicial coverings ◮ a universal exploration algorithm GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 10/23

slide-18
SLIDE 18

What can we do with binoculars ?

◮ Can we explore every graph ?

◮ NO

Cycles of length ≥ 4 cannot be explored

◮ Can we characterize explorable graphs ?

◮ YES ◮ using clique complexes and simplicial coverings ◮ a universal exploration algorithm

◮ Can we find an efficient universal algorithm for explorable

graphs ?

◮ NO ◮ the exploration time cannot be bounded by a computable

function

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 10/23

slide-19
SLIDE 19

Clique complexes

Definition

The clique complex K(G) of G is a simplicial complex s.t. the simplices of K(G) are the cliques of G

G K(G)

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 11/23

slide-20
SLIDE 20

Simplicial coverings

Definition

A simplicial covering is a locally bijective simplicial map ψ : K → K ′ If K(G) is a simplicial cover of K(H), we say that G is a simplicial cover of H

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 12/23

slide-21
SLIDE 21

Simplicial Lifting Lemma

Simplicial Lifting Lemma

If K(G) is a simplicial cover of K(H), then an agent cannot decide if it starts on v ∈ V(G) or on ϕ(v) ∈ V(H)

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 13/23

slide-22
SLIDE 22

Simplicial Lifting Lemma

Simplicial Lifting Lemma

If K(G) is a simplicial cover of K(H), then an agent cannot decide if it starts on v ∈ V(G) or on ϕ(v) ∈ V(H)

Corollary

If an exploration algorithm A stops in r steps in H, r ≥ |V(G)|

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 13/23

slide-23
SLIDE 23

Exploration with binoculars : Characterization

Explorable

⇐ ⇒ K(G) has only finite simplicial covers

FC

G9 G5 G7 G8 G10 G6

ψ

G3

Not Explorable

⇐ ⇒ K(G) has an infinite simplicial cover

INF(All others) ψ

G13 G10 G6 G9 G5 G7 G8 G11 G12

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 14/23

slide-24
SLIDE 24

Examples

INF : K(G) has an infinite simplicial cover

ϕ

  • Fig. by Ag2gaeh via Wikimedia Commons

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 15/23

slide-25
SLIDE 25

Examples

SC : K(G) has a unique cover (itself)

1 2 3 4 6 7 8 5 6 4 3 2 1 8 7 5

  • Fig. by Tilman Piesk via Wikimedia Commons

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 15/23

slide-26
SLIDE 26

Examples

FC : K(G) has only finite covers

◮ in this case, K(G) has a finite number of covers ◮ SC FC

1 2 3 4 6 7 8 5 6 4 3 2 1 8 7 1 2 3 4 5 6 7 8

ϕ

5

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 15/23

slide-27
SLIDE 27

How to distinguish the two classes ?

◮ INF : {G | K(G) has an infinite simplicial cover} ◮ FC : {G | K(G) has only finite simplicial covers} ◮ SC : {G | K(G) has a unique finite simplicial cover}

Proposition (from Topology)

G is in FC ⇐ ⇒ G has a finite simplicial cover in SC

Theorem (from Topology)

G is in SC ⇐ ⇒ K(G) is simply connected

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 16/23

slide-28
SLIDE 28

Contractible Cycles

◮ a cycle is contractible if it is related with the empty cycle (a

vertex) by a sequence s of elementary deformations :

◮ Pushing across a triangle ◮ Pushing across an isolated vertex

◮ c is k-contractible if |s| ≤ k

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 17/23

slide-29
SLIDE 29

Contractible Cycles

◮ a cycle is contractible if it is related with the empty cycle (a

vertex) by a sequence s of elementary deformations :

◮ Pushing across a triangle ◮ Pushing across an isolated vertex

◮ c is k-contractible if |s| ≤ k

Simple Connectivity

K(G) is simply connected ⇐ ⇒ all cycles of G are contractible ⇐ ⇒ K(G) has a unique simplicial cover

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 17/23

slide-30
SLIDE 30

Our Exploration Algorithm

Explore B(v0, 2k) by computing the view TG(v0, 2k)

B(v0, 2k)

G v0 ˜ v0

compute look for the view

H?

2k

v0 Look for a graph H such that

◮ |V(H)| ≤ k ◮ ∃˜

v0 ∈ V(H) s.t. TH(˜ v0, 2k) ≃ TG(v0, 2k)

◮ simple cycles of H are k−contractible

If there is no such H, increment k and repeat the procedure

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 18/23

slide-31
SLIDE 31

Views

We compute the view TG(v) of v in G where every node u is labeled with BG(u, 1)

2 1 4 3 1 1 2 5 2 1 4 3 1 1 2 5

G v TG(v, k)

5 2 1 1 4 3

k

2 1 2 1 4 3 1 1 2 5 2 1 4 3 1 1 2 5

4 3 1 1 2 5 4 3 1 1 2 5 4 3 1 1 2 5 4 3 1 1 2 5

2 1

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 19/23

slide-32
SLIDE 32

Correctness of the algorithm

When the algorithm stops

◮ BG(v0, 2k) explored ◮ ∃H is found s.t.

◮ |V(H)| < k ◮ ∃˜

v0 ∈ V(H) s.t. TH(˜ v0, 2k) ≃ TG(v0, 2k)

◮ simple cycles of H are k−contractible

Lemma

K(H) is a simplicial cover of K(G)

Correctness

◮ coverings are surjective : |V(G)| ≤ |V(H)| < k ◮ all nodes of G have been visited ◮ we have an Exploration Algorithm

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 20/23

slide-33
SLIDE 33

Termination

For G ∈ FC, consider a simplicial cover G of G such that K( G) is simply connected

G is finite

◮ there exists s(

G) s.t. all cycles of G are s( G)-contractible

◮ if k ≥ |V(

G)| and k ≥ s( G), then G satisfies the halting conditions

Theorem

Our algorithm is an Exploration Algorithm for FC

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 21/23

slide-34
SLIDE 34

Lower bound for the exploration with binoculars

Our algorithm seems to be terribly inefficient but . . .

Theorem

For any Exploration Algorithm A for SC, for any computable function f : N → N, there exists G ∈ SC such that A performs strictly more than f(|V(G)|) moves on G By a reduction from the following problem that is undecidable [Haken, 1973]

◮ INPUT : A finite simplicial complex K ◮ QUESTION : Is K simply connected ?

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 22/23

slide-35
SLIDE 35

Conclusion

Summary

◮ Binoculars are a natural and interesting enhancement ◮ A large class of explorable graphs

◮ Triangulations of the sphere , Chordal graphs, Planar

triangulation of the projective plane, ...

◮ An amazing but unavoidable complexity

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 23/23

slide-36
SLIDE 36

Conclusion

Summary

◮ Binoculars are a natural and interesting enhancement ◮ A large class of explorable graphs

◮ Triangulations of the sphere , Chordal graphs, Planar

triangulation of the projective plane, ...

◮ An amazing but unavoidable complexity

Perspectives

◮ What happens if we enlarge the vision of the agent ?

◮ we believe the results would be qualitatively the same

◮ Find large subclasses that can be explored more efficiently

(with a linear or polynomial number of moves)

GRASTA-MAC 2015 Anonymous Graph Exploration with Binoculars 23/23