Download presentation

Presentation is loading. Please wait.

Published byRosa Sharon Ball Modified over 2 years ago

1
A Batch Algorithm for Maintaining a Topological Order David J. Pearce and Paul H.J. Kelly Victoria University of Wellington, New Zealand & Imperial College, London

2
Topological Orders 1 2 3 4 76 8 5 9

3
23 45678 1 9 1 2 3 4 76 8 5 9

4
Updating Topological Orders 1 2 3 4 76 8 5 9 23 45678 1 9

5
23 45678 1 9 Affected Region 1 2 3 4 76 8 5 9

6
Updating Topological Orders 23 45678 1 9 Affected Region

7
Updating Topological Orders Unit Change Problem 23 45678 1 9 2004: Pearce, et al. 1990: Alpern, et al. 1996: Marchetti-Spaccamela, et al. 2006: Ajwani, et al. 2009: Bender, et al. 2008: Haeupler, et al. 2005: Katriel, et al. 2007: Liu, et al.

8
123476859 12 3 456789

9
123476859 123456789

10
123476859 12 345 6789 123456789

11
123476859 12 345 6789 123456789 12 34 5 678 9

12
Batch Problem Definition: Given a batch of edge insertions, update the topological order Q) Can we do better than by processing them one at a time?

13
Batch Problem Definition: Given a batch of edge insertions, update the topological order Q) Can we do better than by processing them one at a time? A) Yes!

14
Previous MNR Algorithm 2 3 4 5 678 1 9 Discovery – DFS to identify nodes reachable from tail in affected region

15
Previous MNR Algorithm 23 4 5 67819 Discovery – DFS to identify nodes reachable from tail in affected region

16
Previous MNR Algorithm 23 4 5 6 7819 Discovery – DFS to identify nodes reachable from tail in affected region

17
Previous MNR Algorithm 23 4 5 6 7819 Discovery – DFS to identify nodes reachable from tail in affected region

18
Previous MNR Algorithm 23 4 5 6 7819 Discovery – DFS to identify nodes reachable from tail in affected region

19
Previous MNR Algorithm 23 4 5 6 781 9 Shift – marked nodes up the order, unmarked nodes down the order (in affected region)

20
Previous MNR Algorithm 23 4 5 6 781 9 Shift – marked nodes up the order, unmarked nodes down the order (in affected region)

21
Previous MNR Algorithm 23 4 5 6 781 9 Shift – marked nodes up the order, unmarked nodes down the order (in affected region)

22
Previous MNR Algorithm 23 4 5 6 781 9 Shift – marked nodes up the order, unmarked nodes down the order (in affected region)

23
Previous MNR Algorithm 23 4 5 6 781 9 Shift – marked nodes up the order, unmarked nodes down the order (in affected region)

24
Previous MNR Algorithm 23 4 5 6 781 9 Shift – marked nodes up the order, unmarked nodes down the order (in affected region)

25
MNR Algorithm 23 4 5 6 781 9 Shift – marked nodes up the order, unmarked nodes down the order (in affected region)

26
Our Novel Batch Algorithm Observation – edge insertions which overlap can be processed independently of others

27
Our Novel Batch Algorithm Observation – edge insertions which overlap can be processed independently of others Affected Region

28
Our Novel Batch Algorithm Discovery – identify “target node” for each node reachable from an insertion in affected region 4567213

29
Our Novel Batch Algorithm Discovery – identify “root node” for each node reachable from an insertion in affected region 4567213

30
Our Novel Batch Algorithm Discovery – identify “root node” for each node reachable from an insertion in affected region 4 567213

31
Our Novel Batch Algorithm Discovery – identify “root node” for each node reachable from an insertion in affected region 4567213 444

32
Our Novel Batch Algorithm Discovery – identify “root node” for each node reachable from an insertion in affected region 4567 2 1 3 44411

33
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 4567 2 1 3 44411

34
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 456 7 2 1 3 44 4 11

35
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 456 7 2 1 3 44 4 11

36
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 456 7 2 1 3 44 41 1

37
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 456 7 2 1 3 44 41 1

38
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 456 7 2 1 3 44 41 1

39
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 456 7 2 1 3 44 41 1

40
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 456 7 2 1 3 44 41

41
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 456 7 2 1 3 44 4

42
Our Novel Batch Algorithm Shift – marked nodes up order and unmarked nodes down order; marked nodes moved just past their target 4567 2 1 3

43
Results on Sparse Random Graphs

45
Results on Denser Random Graphs

47
Applications Extensions: –Incremental Cycle Detection Applications: –Pointer Analysis –Software Model Checking –Constraint-based Local Search Algorithms –Dead-lock Detection –Machine Learning –Multiple Sequence Alignment

48
Conclusion That’s all folks!

Similar presentations

OK

What is a graph? e = the number of edges v = the number of vertices C 3 is a 3-cycle C 4 is a 4-cycle.

What is a graph? e = the number of edges v = the number of vertices C 3 is a 3-cycle C 4 is a 4-cycle.

© 2018 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

Ppt on acid-base indicators worksheets Ppt on power line communication Ppt on 4g technology Ppt on trade fair crossword Ppt on south african cultures Ppt on job rotation process Ppt on power generation by speed breaker road Ppt on product advertising pitch Ppt on upcoming technologies in computer science Download ppt on coordinate geometry for class 9th physics