46
A NEW APPROACH MINIMUM SPANNING TREE

A NEW APPROACH

  • Upload
    sun

  • View
    41

  • Download
    0

Embed Size (px)

DESCRIPTION

MINIMUM SPANNING TREE. A NEW APPROACH. Types of network. THE INTERPRETATION. BACKUP PATHS. b. c. a. d. f. e. THE PROBLEM. Occurring of loops. EXISTING SOLUTIONS. Prim’s algorithm. Kruskal algorithm. Both of them take time O(n lg n) . - PowerPoint PPT Presentation

Citation preview

Page 1: A  NEW  APPROACH

A NEW

APPROACH

MINIMUMSPANNING

TREE

Page 2: A  NEW  APPROACH

TYPES OF NETWORK

LAN WAN Internet

Page 3: A  NEW  APPROACH

THE INTERPRETATION

Page 4: A  NEW  APPROACH

a

b

e

c

d

f

BACKUP PATHS

Page 5: A  NEW  APPROACH

OCCURRING OF LOOPS

THE PROBLEM

Page 6: A  NEW  APPROACH

EXISTING SOLUTIONS

PRIM’S ALGORITHM

KRUSKAL ALGORITHM

Both of them take timeO(n lg n)

Page 7: A  NEW  APPROACH

A SPANNING TREE All the routers are included

Cycles are eliminated

Each router has knowledge of some Spanning Tree

Page 8: A  NEW  APPROACH

THE TASK

Generating a Spanning Treehaving least cost

Different MST algorithmsare used

Page 9: A  NEW  APPROACH

THE CHALLENGE

DESIGNING A MST ALGORITHM HAVINGLEAST COMPLEXITY

Page 10: A  NEW  APPROACH

PREREQUISITES

The algorithm must not exceed the order O(n lg n) , desirable. It must be practically implementable

Page 11: A  NEW  APPROACH

KEY IDEA

GREEDY APPROACH

At every stage make a locally optimal choice Leads to globally optimal solution

Page 12: A  NEW  APPROACH

IMPLEMENTATION Each router maintains 2 data structures

A Disjoint Set for maintaining set of connected routers

A Priority Queue for all the routers connected to it

Page 13: A  NEW  APPROACH

ON A GRAPH Each vertex maintains a Min- Priority Queue, based on a key field

A Disjoint-Set data structure is maintained

Page 14: A  NEW  APPROACH

1. S<- NULL2. FOR EACH VERTEX, v V[G]3. MAINTAIN A MINIMUM PRIORITY

QUEUE VG

4. MAKE SET(v)

THE ALGORITHM - MBA

THE STEPS

Page 15: A  NEW  APPROACH

5. FOR EACH VERTEX V V[G]6. U <- EXTRACT-MIN (QV)7. IF(u,v) S8. S<- S U {(u,v)}9. FOR EACH EDGE (u,v) E(S)10. IF FIND-SET(u) ≠ FIND-SET(v)11. UNION(u,v)

Page 16: A  NEW  APPROACH

12. FOR EACH EDGE, (u,v) E(G)13. IF FIND-SET(u)= FIND-SET(v)14. w(u,v)=∞15.FOR EACH VERTEX, v V[G]16. u<- EXTRACT-MIN( QV)17. IF (u,v) S18. S<- S U {(u,v)}

Page 17: A  NEW  APPROACH

19. IF FIND-SET (u)≠ FIND-SET (v)20. UNION (u,v)21. ELSE22. S<- MAX{(x,y)}, (xy)

SET(u)23. RETURN S

Page 18: A  NEW  APPROACH

WORKING

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 19: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 20: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 21: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 22: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 23: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 24: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 25: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 26: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 27: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 28: A  NEW  APPROACH

28

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14

Page 29: A  NEW  APPROACH

29

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14∞

∞ ∞

Page 30: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14∞ ∞

∞∞

Page 31: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14∞

∞∞

Page 32: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14∞ ∞

Page 33: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

10

218

117 6

2

4 14∞

∞∞

Page 34: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

1021

8

117 6

2

4 14∞

∞∞

∞∞

Page 35: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

1021

8

117 6

2

4 14∞

∞∞

∞∞

Page 36: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

1021

8

117 6

2

4 14∞

∞∞

∞∞

Page 37: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

1021

8

117 6

2

4 14∞

Page 38: A  NEW  APPROACH

a

b

h

c d

e

fg

i

49 7

9

1021

8

117 6

2

4 14∞

∞∞

Page 39: A  NEW  APPROACH

ANALYSIS Running time depends upon

Implementation of Disjoint Set Data Structure

Implementation of Priority

Queue

Page 40: A  NEW  APPROACH

Disjoint-Set uses :

Union by Rank Path Compression

Priority Queue : Min-Priority Queue

ANALYSIS

Page 41: A  NEW  APPROACH

ANALYSIS Time taken at each step :

Line 1 : O(1) Lines 2 & 5 : O(V)

Make Set operation : O(V)

Build Heap : O(log2V) For ‘V’ vertices : O(V log2V)

Page 42: A  NEW  APPROACH

Extract – min : O(log2V) For all vertices : O(V log2V)

for loops in lines 9-11 & 12-14 : O(E)

Page 43: A  NEW  APPROACH

ORDER TILL LINE 14 :

O ( V LOG2V )

Page 44: A  NEW  APPROACH

Same process is repeatedonce more

Overall complexity : O ( V log2V )

Page 45: A  NEW  APPROACH

NEWER DIMENSIONS

WHEN USED WITH PARALLEL PROCESSORSO(E) CAN BE ACHIEVED

Page 46: A  NEW  APPROACH

BACKUP PATHS CAN BE FOUND FASTER

CYCLES CAN BE ELIMINATED

MORE EFFICIENTLY