+ All Categories
Home > Documents > A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for...

A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for...

Date post: 23-Mar-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
31
Outline Biconvex Graphs Longest Path problem Literature Survey Workdone Ordering and Illustration The Lemma Algorithm and Complexity Algorithm Notations Used Correctness Argument Complexity Analysis A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and C. Pandu Rangan Dept of Computer Science and Engineering IIT Madras, Chennai 600036, India February 20 th , 2011 1 / 31
Transcript
Page 1: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

A Polynomial Time Algorithm for LongestPaths in Biconvex Graphs

ESHA GHOSHJoint work with

N. S. Narayanaswamy and C. Pandu Rangan

Dept of Computer Science and EngineeringIIT Madras, Chennai 600036, India

February 20th, 2011

1 / 31

Page 2: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Outline

1 Biconvex Graphs

2 Longest Path problem

3 Literature Survey

4 Workdone

Ordering and Illustration

The Lemma

5 Algorithm and Complexity

Algorithm

Notations Used

Correctness Argument

Complexity Analysis2 / 31

Page 3: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Outline

1 Biconvex Graphs

2 Longest Path problem

3 Literature Survey

4 Workdone

Ordering and Illustration

The Lemma

5 Algorithm and Complexity

Algorithm

Notations Used

Correctness Argument

Complexity Analysis3 / 31

Page 4: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Doubly Convex or Biconvex Graphs

Definition (Glover-1967)

A bipartite graph G = (S ∪ T,E) is doubly convex or biconvex

if ∃ a numbering 1, 2, . . . , |S| of the vertices in S and anumbering of the vertices 1, 2, . . . , |T | in T such that

∀v ∈ S ∪ T , N(v) is a set of consecutive integers.

4 / 31

Page 5: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Illustration

1

1

2

3

4

3

2

S-Partition T-Partition

5 / 31

Page 6: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Outline

1 Biconvex Graphs

2 Longest Path problem

3 Literature Survey

4 Workdone

Ordering and Illustration

The Lemma

5 Algorithm and Complexity

Algorithm

Notations Used

Correctness Argument

Complexity Analysis6 / 31

Page 7: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

The Longest Path problem

The problem

The longest path problem is the problem of finding a simplepath of maximum length in a given graph.

Importance

The well-known Travelling Salesman problem andHamiltonian Path problem are special cases of LongestPath problem.

The longest path in program activity graph is known ascritical path, which represents the sequence of programactivities that take the longest time to execute.

7 / 31

Page 8: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Outline

1 Biconvex Graphs

2 Longest Path problem

3 Literature Survey

4 Workdone

Ordering and Illustration

The Lemma

5 Algorithm and Complexity

Algorithm

Notations Used

Correctness Argument

Complexity Analysis8 / 31

Page 9: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Previous Work done

Polynomial Solution for longest path problem on somegraph classes

Polynomial time algorithms for longest path exist forgraph classes like Trees, Cacti, Ptolemic graphs, BipartitePermutation graphs, proposed by Uehera et al.

Recently polynomial time solutions for the longest pathproblem is proposed by Ioannidou et al. on interval graphsand cocomparability graphs.

9 / 31

Page 10: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Outline

1 Biconvex Graphs

2 Longest Path problem

3 Literature Survey

4 Workdone

Ordering and Illustration

The Lemma

5 Algorithm and Complexity

Algorithm

Notations Used

Correctness Argument

Complexity Analysis10 / 31

Page 11: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Our Contribution

Workdone

We have proposed a O(n6) time algorithm to find thelongest path on biconvex graphs, where n is the number ofvertices of the input graph.

We have used Dynamic Programming approach.

11 / 31

Page 12: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

The Ordering

Ordering the vertices

Let π1 = (s1, s2, · · · , s|S|) be the labelled vertices ofpartition S, and π2 = (t1, t2, · · · , t|T |) be that of partitionT

Initiliaze σS = π1.

Update σS as follows: For all ti in π2, insert tiimmediately after its rightmost neighbor.

12 / 31

Page 13: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Illustration

Figure: π1 = (s1, s2, s3, s4, s5) and π2 = (t1, t2, t3, t4)σs = (s1, s2, t1, s3, s4, t3, t4, s5, t2)

13 / 31

Page 14: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Monotonic Path

Definition

A S-Monotone path of a Biconvex graph G = (S ∪ T,E) is asimple path P = {sα1 , tβ1 , sα2 , . . . , tβj−1

, sαj , tβj} such that

sαk≺σS sαk+1

∀ k 3 1 ≤k≤ j.

Symmetrically, we define T-Monotone path.

14 / 31

Page 15: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Lemma

Lemma

Let

P = {sα1 , tβ1 , sα2 , tβ2 . . . sαj−1 , tβj−1, sαj , tβj

} be a simplepath of a biconvex graph G = (S ∪ T,E).Let Pmax denote the longest S-S sub path of P .

Then, the vertices on the path Pmax can be reordered to get apath P ′max on the same set of vertices, which is S-Monotone.

15 / 31

Page 16: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Illustration

Figure: Case β ≺ α ≺ γ(a)Non S-Monotone Path (b)S-Monotone Path

16 / 31

Page 17: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Outline

1 Biconvex Graphs

2 Longest Path problem

3 Literature Survey

4 Workdone

Ordering and Illustration

The Lemma

5 Algorithm and Complexity

Algorithm

Notations Used

Correctness Argument

Complexity Analysis17 / 31

Page 18: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Algorithm Overview

First Part of the Algorithm

Given the ordering ordering σS = (u1, u2, · · · , un), for all si, sj ,where, 1 ≤ i < j ≤ |S|, do the following:

Choose the subsequence σSij = (uk, uk+1, · · · , um) suchthat:

uk is the vertex si

um is sj , if sj+1 immediately suceeds sj in σS .Otherwise, um is the rightmost T-vertex that lies betweensj and sj+1 in σS .

Run the ”Longest Path” routine and remember themaximum path length obtained over these iterations andall the paths of that maximum length.

18 / 31

Page 19: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Illustration

Figure: σS = (s1, s2, t1, s3, s4, t3, t4, s5, t2)

19 / 31

Page 20: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Illustration

Figure: σS = (s1, s2, t1, s3, s4, t3, t4, s5, t2) andσS14 = (s1, s2, t1, s3, s4, t3, t4)Longest S-Bimonotone Path is P = {s3, t3, s4, t4}

20 / 31

Page 21: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Algorithm Overview(Cont.)

Second Part of the Algorithm

Symmetric to Part 1, this part is executed for vertices ofT-partition with the initial ordering σT = (u1, u2, · · · , un).

21 / 31

Page 22: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Algorithm Overview(Cont.)

Third Part of the Algorithm

Choose the maximum of the two lengths obtained asoutput from the first and second part of the algorithms.Let us denote this length as max

For all paths of length max, check if any of the endvertices have unvisited neighbor.

If such a neighbor exists, extend the path till that neighborand declare it as a longest path and max+ 1 as longestpath length.

Else declare max as the longest path length and all pathsof this lenth as longest paths.

22 / 31

Page 23: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Some Constructs and Notations

Notations

For every pair of indices i, j such that 1 ≤ i ≤ j ≤ n thegraph G(i, j) denotes the subgraph of G induced by theset {ui, ui+1, ...., uj}.A path P is called S-bimonotone if P is a S-Monotonepath with both endpoints in S-partiton.

P (uk; i, j) denotes the longest S-bimonotone path ofG(i, j) with uk as its right endpoint and l(uk; i, j) denotesthe number of vertices on P (uk; i, j).

23 / 31

Page 24: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

The ”Longest Path” Routine

Description

1 Iterate through all the vertices of σS1n from indices 1 to n

2 Initialize P (ui; i, i) with ui and l(ui; i, i) with 1.

3 For all uk , i ≤ k ≤ j− 1, which are S-vertices, initializeP (uk; i, j) with P (uk; i, j − 1) and l(uk; i, j) withl(uk; i, j − 1)

4 If uj is also a S-vertex , intialize l(uj ; i, j) with 1 andP (uk; i, j) with uj

5 If uj is a T-vertex and i ≤ f(uj) then executeprocess(G(i, j))

6 Compute the max{(uk; 1;n) : uk ∈ S(G)} and thecorresponding path P (uk; 1;n).

24 / 31

Page 25: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

The process(G(i, j)) subroutine

process(G(i, j))

For y = f(uj) + 1 to j − 1, iterate through x = f(uj) toy − 1 if both ux and uy are S-vertices, then update thepath as follows:

w1 ← l(ux; i, j − 1); P ′1 ← P (ux; i, j − 1)

w2 ← l(uy;x+ 1, j − 1); P ′2 ← P (uy;x+ 1, j − 1)

If w1 + w2 + 1 > l(uy; i, j), then

l(uy; i, j)← w1 + w2 + 1;P (uy; i, j) = (P ′

1, uj , P′2);

Return the value {l(uk; i, j)} and the path{P (uk; i, j),∀uk ∈ S(G(f(uj) + 1, j − 1))}

25 / 31

Page 26: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Illustration

Figure: σs = (s1, s2, t1, s3, s4, t3, t4, s5, t2)

26 / 31

Page 27: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Illustration

Figure: Path getting updated at call process(G(4, 6)) andx = 4, y = 5

27 / 31

Page 28: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Illustration(Cont.)

Figure: Path getting updated at call process(G(1, 9)) withx = 5, y = 8

28 / 31

Page 29: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Algorithm Correctness

Claim

At least one of the paths, obtained from First and Second partof the Algorithm is extendible if and only if a longer path exists.

Proof.

If possible, let a longer path Pnew of length x exist.

This path is either a ST or a TS path.

Due to the Lemma, we know for the longest S-S subpathof every path, we get a S-Monotone path on the same setof vertices.

Length of the longest S-S subpath of Pnew is x− 1.

max < x− 1⇒ contradiction to the correctness of the”Longest path” routine.max > x− 1⇒ Pnew is not the longest path.

29 / 31

Page 30: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

Time Complexity

Complexity Analysis

Generating the ordering σS and σT will take O(|S||T |)time.

The subroutine process() takes O(n2) time and is executedat most once for each subgraph G(i, j) of G. Hence takesO(n4) time.

Since the routine ”Longest Path” is called for eachordered pair si, sj (and ti, tj), and there can be O(n2)such ordered pairs, so the total running time is O(n6).

30 / 31

Page 31: A Polynomial Time Algorithm for Longest Paths in Biconvex ... · A Polynomial Time Algorithm for Longest Paths in Biconvex Graphs ESHA GHOSH Joint work with N. S. Narayanaswamy and

Outline

BiconvexGraphs

Longest Pathproblem

LiteratureSurvey

Workdone

Ordering andIllustration

The Lemma

Algorithm andComplexity

Algorithm

Notations Used

CorrectnessArgument

ComplexityAnalysis

THANK YOU

31 / 31


Recommended