Download presentation
Presentation is loading. Please wait.
Published bySherilyn Arnold Modified over 6 years ago
1
On the distributed complexity of computing maximal matching Michal Hanckowiak, Michal Karonski, Allesandro Panconesi Presented by Maya Levy January 2016
2
Maximal Matching
3
The model Undirected graph- vertices correspond to processors, edges to bidirectional communication links. Synchronous β in each round every processor receives messages from its neighbors, does any amount of calculations and sends messages to its neighbors. Each node has an integer from 1 to π as a unique identifier and it knows it. Time complexity is determined by the number of rounds.
4
The approach Χ ΧΧΧΧ¨ Χ©ΧΧΧΧ ΧΧΧ ΧΧΧΧͺΧΧ ΧΧΧΧ¨Χ Χ’Χ ΧΧΧΧ
5
Definitions Χ ΧΧΧΧ¨ Χ©ΧΧΧΧ ΧΧΧ ΧΧΧΧͺΧΧ ΧΧΧΧ¨Χ Χ’Χ ΧΧΧΧ
6
Definitions
7
Definitions πΊππ£ππ π ππππβ πΊ= π,πΈ , πβπΈ, πβπΈ:
π‘ππ’πβ π ππ π π’ππππ ππ π πππ π‘βπ π ππ‘ ππ πππππ "π‘ππ’πβππ" ππ¦ π π€ πΊ π ππ π‘βπ ππ’ππππ ππ πππππ "π‘ππ’πβππ" ππ¦ π
8
Definitions
9
Reduce to bipartite graph
Match Reduce to bipartite graph BipartiteMatch Generalize the bipartite matching
10
Reducing to bipartite graph
1 2 3 4 5 6 7 8 9 A B
11
Reducing to bipartite graph
2 3 1 ππ’π‘ 1 ππ 4 5 6 7 8 9 A B
12
Reducing to bipartite graph
3 1 ππ’π‘ 1 ππ 2 ππ’π‘ 2 ππ 4 5 6 7 8 9 A B
13
Reducing to bipartite graph
1 ππ’π‘ 1 ππ 2 ππ’π‘ 2 ππ 3 ππ’π‘ 3 ππ 4 ππ’π‘ 5 ππ’π‘ 4 ππ 5 ππ 7 ππ’π‘ 8 ππ 6 ππ 6 ππ’π‘ 7 ππ 8 ππ’π‘ 9 ππ 9 ππ’π‘ π΄ ππ π΅ ππ’π‘ π΄ ππ’π‘ π΅ ππ
14
Reducing to bipartite graph
1 ππ’π‘ 1 ππ 2 ππ’π‘ 2 ππ 3 ππ’π‘ 3 ππ 4 ππ’π‘ 5 ππ’π‘ 4 ππ 5 ππ 7 ππ’π‘ 8 ππ 6 ππ 6 ππ’π‘ 7 ππ 8 ππ’π‘ 9 ππ 9 ππ’π‘ π΄ ππ π΅ ππ’π‘ π΄ ππ’π‘ π΅ ππ
15
Reducing to bipartite graph
1 ππ 1 ππ’π‘ 2 ππ 2 ππ’π‘ 1 2 3 3 ππ 3 ππ’π‘ 4 ππ 4 5 4 ππ’π‘ 5 ππ 5 ππ’π‘ 6 7 8 6 ππ 6 ππ’π‘ 7 ππ 7 ππ’π‘ 9 A B 8 ππ 8 ππ’π‘ 9 ππ 9 ππ’π‘ π΄ ππ π΄ ππ’π‘ π΅ ππ π΅ ππ’π‘
16
Reducing to bipartite graph
17
Reducing to bipartite graph
18
Reducing to bipartite graph
19
Reducing to bipartite graph
20
Reducing to bipartite graph
21
Reducing to bipartite graph
22
Reducing to bipartite graph
23
Reducing to bipartite graph
24
Reducing to bipartite graph
25
Reducing to bipartite graph
26
π( log π β
π‘(π΅πππππ‘ππ‘ππππ‘πβ))
Match Reduce to bipartite graph by splitting to in and out vertices BipartiteMatch Generalize the bipartite matching: - Remove degree 1 vertices calculate maximal matching of degree 2 graph Drop matched edges Choose which edges to keep ΧΧΧΧΧ Χ©ΧΧ Χ©ΧΧ ΧΧΧΧΧ¨ π( log π β
π‘(π΅πππππ‘ππ‘ππππ‘πβ))
27
Matching a bipartite graph
πΊ=(πΏ, π
, πΈ) Χ Χ ΧΧ Χ©Χ¦ΧΧͺΧ Χ¦Χ Χ©ΧΧΧ ΧΧ‘ΧΧΧ¨ΧΧͺ ΧΧ€Χ ΧΧ¨ΧΧ, Χ‘ΧΧ¨ Χ’ΧΧΧ.
28
Matching a bipartite graph
πΊ=(πΏ, π
, πΈ) π― ππππ π» π =π’βπΏ: π 2 π+1 <π π’ β€ π 2 π π― π
29
Matching a bipartite graph
πΊ=(πΏ, π
, πΈ) π― ππππ π» π =π’βπΏ: π 2 π+1 <π π’ β€ π 2 π π΅ π ππ π‘βπ πππππ ππππ’πππ ππ¦ π» π πππππ π― π
30
Matching a bipartite graph
πΊ=(πΏ, π
, πΈ) π» π =π’βπΏ: π 2 π+1 <π π’ β€ π 2 π π΅ π ππ π‘βπ πππππ ππππ’πππ ππ¦ π» π πππππ
31
Matching a bipartite graph
πΊ=(πΏ, π
, πΈ) π» π =π’βπΏ: π 2 π+1 <π π’ β€ π 2 π π΅ π ππ π‘βπ πππππ ππππ’πππ ππ¦ π» π πππππ
32
Generate blocks Partition
BipartiteMatch Generate blocks Partition MatchBlock 1 MatchBlock 2 . MatchBlock D Global match
33
Matching a bipartite graph
34
Matching a bipartite graph
35
Matching a bipartite graph
36
Matching a bipartite graph
π€ π π€ 3 π=2 π π€ π 2 β€ π€ 1 π€ 2 ΧΧ© Χ¨Χ§ Χ©ΧΧΧΧ ΧΧΧ ΧΧΧ ΧΧΧΧͺΧ¨ ΧΧΧ ΧΧΧΧ§ π€ 1
37
Matching a bipartite graph
38
Generate blocks Partition
BipartiteMatch Generate blocks Partition MatchBlock 1 MatchBlock 2 . MatchBlock D Global match π(π‘ πππ‘πβπ΅ππππ(π) )
39
Matching a block
40
Matching a block
41
Matching a block
42
Matching a block
43
Spanner π© (π΅ππππ)
44
Spanner π© (π΅ππππ) πΊ (Spanner)
45
Spanner π΄π π,π
βπππππππ ππ π πππππ π΅= π» π ,π π» π , πΈ ππ π π π’πππππβ πβπ΅ π .π‘: πππ ππ£πππ¦ π’βπ π , π π π’ β 1,π πππ ππ£πππ¦ π’βπ, π π π’ β€ 1 2 π π΅ π π΅ π£ +1, π€βπππ π π΅ βππππ·β4 π π β₯π π» π π© (π΅ππππ) πΊ (Spanner)
46
Spanner π© (π΅ππππ) πΊ (Spanner) π· (Proposal)
47
Spanner π© (π΅ππππ) πΊ (Spanner) π· (Proposal) π΄ (Matching)
48
Matching a block β correctness
πβπ(π·) π
π© π β₯π π¬ π© ? π© πΊ π· π΄
49
Matching a block β correctness
|π π΄ |= π π β π£βπ(π) ( π π π£ β1) π© πΊ π· π΄ β₯π|π π΅ |β π£βπ(π) ( π π π£ β1) β₯π|π π΅ |β π£βπ(π) π π΅ π π΅ (π£) β₯π|π π΅ |β 1 2 π π΅ ππ β₯π|π π΅ |β 1 2 π π΅ ππ·|π π΅ | β₯(πβπππ)|π π© |
50
Matching a block β correctness
π π΄ β₯π|π π© | π© πΊ π· π΄ βπ’βπΏ: π· 2 β€π π΅ π’ β€π· π‘ππ’πβ π β₯ π π β
π· 2 β₯ πβ16π 2 π·|π π΅ | β₯ πβ16π 2 |πΈ π |
51
Match BipartiteMatch . MatchBlock
Generalize the bipartite matching Reduce to bipartite graph BipartiteMatch BipartiteMatch Generate blocks Partition MatchBlock 1 MatchBlock 2 MatchBlock D . Global match MatchBlock Create spanner Match Spanner
52
Create spanner β 2 decomposition graph
1 2 3 4 5 6 7 8 A 9 B C
53
Create spanner β 2 decomposition graph
1 1 2 3 4 5 6 7 8 A 9 B C
54
Create spanner β 2 decomposition graph
1 2 1 2 2 3 4 5 6 7 8 A 9 B C
55
Create spanner β long arrows
56
Create spanner β long arrows
57
Create spanner β long arrows
58
Create spanner β long arrows
59
Create spanner β long arrows
60
Create spanner β long arrows
61
Create spanner β long arrows
62
Create spanner
63
Create spanner
64
Create spanner 1 2 3 4 5 6 7 8 A 9 B C
65
Create spanner 1 2 3 4 5 6 7 8 A 9 B C
66
π( log π β
log 2 π) =π( log 3 π)
Create spanner Create 2- decomposition graph Create long arrows and partition to segments Perfect/near perfect match inside the segments Remove matched/bad edges π( log π β
log 2 π) =π( log 3 π)
67
Match BipartiteMatch . MatchBlock
Generalize the bipartite matching Reduce to bipartite graph BipartiteMatch BipartiteMatch Generate blocks Partition MatchBlock 1 MatchBlock 2 MatchBlock D . Global match MatchBlock Create spanner Match Spanner
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.