44 2033180199
All submissions of the EM system will be redirected to Online Manuscript Submission System. Authors are requested to submit articles directly to Online Manuscript Submission System of respective journal.
Journal of Pure and Applied Mathematics

Sign up for email alert when new content gets added: Sign up

Sukumar Mondal*
 
Department Of Mathematics, Raja NL Khan Women’s College, West Bengal, India, Email: sm5971@rediffmail.com
 
*Correspondence: Sukumar Mondal, Department Of Mathematics, Raja NL Khan Women’s College, West Bengal, India, Tel: 9733056212, Email: sm5971@rediffmail.com

Received: 19-Nov-2018 Accepted Date: Nov 28, 2018; Published: 07-Dec-2018, DOI: 10.37532/2752-8081.18.2.10

Citation: Mondal S. A sequential and parallel algorithm for disjoint cliques problem on interval graphs. J Pur Appl Math. 2018;2(3):05-7.

This open-access article is distributed under the terms of the Creative Commons Attribution Non-Commercial License (CC BY-NC) (http://creativecommons.org/licenses/by-nc/4.0/), which permits reuse, distribution and reproduction of the article, provided that the original work is properly cited and the reuse is restricted to noncommercial purposes. For commercial reuse, contact reprints@pulsus.com

Abstract

Using DAG approach,A sequential algorithm is presented to solve disjoint cliques problem on interval graph G which takes O(n^2) time where n is the number of vertices of the graph. For the same problem a O(log2n) time parallel algorithm is presented which takes image processors on an EREW PRAM model. Also, on a CREW model it takes O(logn) time with O(n^(3+ε) ),ε>0 processors.

Keywords

Design of algorithms; Analysis of algorithms; Cliques; Disjoint cliques; Interval graphs.

AMS Mathematics Subject Classification (2010): 05C62, 05C78, 05C85, 68Q22, 68Q25, 68R10

An undirected graph G=(V,E) is an interval graph if the vertex set V can be put into one-to-one correspondence with a set I of intervals on the real line such that two vertices are adjacent in G iff their corresponding intervals in I have non-empty intersection. The set I is called an interval representation of the graph G and G is referred to as the intersection graph of I [1].

Interval graphs arise in the process of modeling real life situations, specially involving time dependencies or other restrictions that are linear in nature [2-7]. This graph models are convenient for analysis of electric circuits, VLSI design and layout routing process, scheduling, design of complex data structures, archeology, molecular biology, psychology, scheduling transportation etc. Recently Interval graphs have found applications in protein sequencing [8], macro substitution [9], circuit routing [10], file organization and job scheduling [11], resister allocation, routing of two points nets [12] and many others.

For a simple connected graph G=(V,E), a subset of V is said to be a clique in G if every pair of vertices of this subset is connected by an edge of E. A maximal clique is a clique to which no further vertex of the graph can be can be added so that it remains clique. A maximum clique is maximal clique cardinality. The cardinality of the maximum clique is called the clique number. If k be the total number of maximal cliques of the graph G and C={C_1,C_2,… C_k} be the set of all maximal cliques of the graph, then a subset D of C (D ⊆ C) is said to be a ‘set of pairwise disjoint cliques if every pair of cliques in D is disjoint.

Survey

For an arbitrary undirected graphs, disjoint union of cliques is easily seen to be NP-complete. As the disjoint union of the cliques problem is a ‘hard’ problem, so, we can explore its restrictions to special class of graphs and we hope to detect computationally better tractable cases. The motivation for this approach comes from the NP-completeness table of Johnson [13], where the complexity of ten different graph problems restricted to a series of graph classes is given. Two problems in the table of Johnson are the above mentioned ‘clique’ and ‘partition into cliques’ problem.

The problem ‘disjoint union of cliques’ was analyzed first by Frank [14]. He considered comparability graphs and its complement graphs (cocomparability graphs) and given an algorithm for both graph classes with complexity O(a b n2),where a is the cardinality of a maximum clique and b is the cardinality of a maximum independent set. Gavril et al. [15] proposed a slightly better algorithm which needs O (Dn2) time steps for comparibility graphs and O (n3+ b n2 log n) for co-comparability graphs. In [16], for subclass like the interval graphs, bipartite graphs and co graphs with n vertices, Jansen et al. have designed an algorithm for finding D paiwise disjoint union cliques in O(Dn2), O(m√n) and O(n2) time respectively.

In this paper, a sequential algorithm and a parallel algorithm are presented to find a set of pairwise disjoint cliques in the interval graph with maximum overall number of vertices. The time complexity of the proposed sequential algorithm is O(n2) whereas the parallel algorithm takes O(log2n) time with image processors on an EREW PRAM model and on a CREW model it takes O(log n) time with O(n3+ε),ε>0 processors, where n is the number of vertices of the graph.

Data Structure and Preliminaries

Let I= {I1, I2,… In}, be the interval representation of the interval graph G= (V,E), where ar is the left endpoint and br is the right endpoint of the interval Ir=[ar,br] for all r=1,2,… n. Without loss of generality, we assume the following:

1. the intervals in I are indexed by increasing right endpoint, i.e., b_1<b_2<⋯<b_n,

2. the intervals are closed, i.e., contains both of its endpoints and that no two intervals share a common endpoint,

3. vertices of the interval graph and the intervals on the real line are one and the same thing,

4. the interval graph G is connected, and the list of sorted end points is given.

Considering the location of 2n endpoints of the n intervals on the real line in increasing order and the array e= {e(1),e(2),. . . , e(2n)} is formed. For each element e (i) of e, two fields e (i).ver and e (i).type are defined as follows:

e(i).ver=k, if e(i) is the end point of the interval Ik.

e(i).type={a, if the end point e (i) is left end point

            ={b, if the end point e (i) is right end point.

Then, we define a new field e (i).max to the array e as

e (i).max=e(i).ver for i=1.

image Thus, the fields e(i).max

computes the maximum vertex between the end points e(1) and e(i).

For the graph of Figure 1, the array e is shown in the Table 1.

e e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 e12 e13 e14 e15 e16 e17 e18 e19 e20
e(i).ver 2 1 3 1 2 5 3 4 4 7 6 5 6 8 9 10 7 8 9 10
e(i).type a a a b b a b a b a a b b a a a b b b b
e(i).max 2 2 3 3 3 5 5 5 5 7 7 7 7 8 9 10 10 10 10 10

Table 1. To find the disjoint cliques on interval graphs, we have to first compute all maximal cliques and the time complexity of which given in the following lemma.

pure-applied-mathematics-interval-graph

Figure 1) An interval graph and its interval representation

Lemma-1

All maximal cliques of an interval graph can be computed sequentially in O(n+γ) time, where γ is the output size and in parallel in imagetime using p processors on an EREW PRAM [17].

One more important characterization of the interval graph with respect to cliques is given by Gilmore and Hoffman [18]. It is stated as follows:

Lemma-2

A graph G is an interval graph if and only if the maximal cliques of G can be linearly ordered in such a way that for every vertex v of G, the maximal cliques containing v occur consecutively [18].

Using Lemma-1, we can determine all maximal cliques. Let the total number of maximal cliques thus found be α. As the graph G is an interval graph, these α maximal cliques can be ordered by Lemma-2. Let the set of these ordered maximal cliques be {C1, C2,…Cα}. We also consider two fictitious cliques C0 and C (α+1) and take them as null set. Thus the ordered maximal cliques becomes {Cα,C1,C2,… Cα, Cα+1}.

Another array, denoted by max (Ci), is defined as

max (Ci ) =max{v: v∈C_i}.

This array gives the maximum vertex that the clique Ci contains.

From Lemma-2, it follows that if u∈Ci and u∈Ck where I ≤ k, then u∈C_j for all I ≤ j ≤ k. If p(u) is the largest subscript of the maximal cliques in which u belongs, then we call the clique Cp(u) as end clique of u, i.e., if p(u)=max∈{j: u∈Cj} then the end clique of u is Cp(u). We note that p(u) forms an array for all u∈V, and also we note that if j>p(u) then u ∉Cj.

Next, we define another important array First Disjoint (Ci), i=1,2,…,α is defined as follows:

FirstDisjoint (Ci) =p(max(Ci ) )+1.

From this definition and the ordering of maximal cliques done by Lemma-2, it follows that if j=FirstDisjoint (Ci) then all the cliques Cj,C(j+1),…,Cα are disjoint with Ci and Cj is the first disjoint clique of the clique Ci.

For any two consecutive cliques we have the following lemma.

Lemma-3

Any two consecutive cliques Ci and Ci+1 are non-disjoint cliques in G.

Proof: If possible let Cj and Cj+1 are disjoint cliques in G. Then from the ordering of maximal cliques, it is clear that Cj is disjoint with all cliques Cj+1, Cj+2, … , Cα. From Lemma-2, we have

for any ij, if uCi then the end clique of u cannot be ck where kj + 1, since in that case u must belongs to both Cj and Cj+1 contradicting the fact that Cj and Cj+1 are disjoint. As it

is true for any uCi, we have Ci is disjoint with ck for any kj + 1. Hence, any one among

C1, C2, … Cj is disjoint with any Cj+1, <Cj+2, … , Cα. This means the graph G is disconnected

which is not true. Hence, any two consecutive cliques Ci and Ci+1 are nondisjoint cliques in G.

This proves the lemma.

The array FirstDisjoint plays an important role for construction of the network N. An algorithm to compute this array is presented below:

Algorithm FD

Input: The array (i), i = 1, 2, … , 2n for interval graph.

Output: The array FirstDisjoint.

Step-1: Compute all maximal cliques , i = 1, 2,. . . , α.

Step-2: Compute all max ( ) , i = 1, 2, . . . , α.

Step-3: Compute all (i), i = 1, 2, . . . , n.

Step-4: For all i = 1, 2, . . . , α calculate

FirstDisjoint ( ) = ((C )) + 1. end FD

The complexity of Algorithm FD is given below:

Theorem-1: Algorithm FD can be computed in (n2) time in sequential.

Proof. Step-1 can be computed in (n + γ) time, where γ is the sum of cardinalities of all cliques which is known and to be (n + m) time, where m is the number of edges of the graph [7]. In step-2, for each i = 1, 2,. .. , α, the array max ( ) takes (|Ci |) time, i.e., (n) time. Hence, for all cliques it takes (α n) time, i.e., (n2) time as α is of (n). Similarly, Step-3 and Step-4 takes (n2) time. Therefore, overall time complexity of the Algorithm FD is of (n2). Hence the theorem.

Using the array FirstDisjoint anyone can construct the network N, called as Directed Acyclic

Graph (DAG).

A Network and its Properties

A Network

A network N consists of a finite set of nodes VN = {A0, A1, … Am} together with a set of arcs

EN of all ordered disjoint pairs (Ai, ), j > i; i, j = 0, 1, … , m. The network N has also a

special return arc (Am, A0) from the sink Am to the source A0. With each arc (Ai,) ∈ EN of the network N, a non-negative weight w(Ai,Aj ) is associated. A path having maximum total weight among all paths from A0 to Am is called the maximum weight path.

Let T be the set of all paths from the source A0 to the sink Am in N. Then T is a finite set. For any path PT let the sum of the weights for the arcs associated with the path P is (P).

The maximum weighted path problem for a network N is the problem of finding maximum weighted path, i.e., it is a problem of finding a path P from A0 to Am in the network N for which the total weight is maximum. So, it is a problem of finding a path PT such that

w(P) = max{w(P) ∶ PT}.

Construction of the Network

We now supposed to construct a network N so that a maximum weighted path of it leads to the solution of pairwise disjoint cliques problem in the interval graph G Figure 2.

pure-applied-mathematics-constructed-graph

Figure 2) The Network N constructed from the graph of Figure 1

The nodes of the network are taken as the set of all maximal cliques VN = {C0, C1, … Cα , Cα+1} and the set EN of arcs is formed by e −arcs, d −arcs and special return arc defined respectively as

i) all ordered disjoint pairs (Ci , Cj ), j > i, i, j = 0, 1, 2, … α + 1;

ii) all ordered non-disjoint pairs (Ci−1, Ci ), i = 1, 2, … , α; and

iii) the ordered pair (Cα+1, C0).

As from Lemma-3, the consecutive cliques are always non-disjoint, the weight of all d −arcs are taken zero. The weight of all e −arcs are taken as follows:

i) if the graph G is non-weighted then

w(Ci , Cj ) = w(Ci ) = |Ci |,

i.e., weight of the arc (Ci, ) is equal to the cardinality of the clique Ci; and

ii) if the graph G is weighted thenimage

i.e., weight of the arc (Ci, ) is equal to the weight of the node Ci which is the sum of the weights associated with each vertex of the maximal clique Ci.

In N, let the total number of paths from the source C0 to the sink Cα+1 be ℎ, and the set of all such paths be T = {P1, P2, …, P}. Then for any path PλT we have imageThe maximum weighted path problem is the problem of finding the path PT such that (P) = {(P) ∶ PT} = {(P1), (P2), . , w(P)}.

Next, we shall discuss about the total number of nodes and total computational time.

Lemma-4 The total number of nodes in N is α + 2 and the total number of arcs in N is of (α2) where α < n.

Proof: From definition and construction of N it is clear that the total number of nodes α + 2. The Number of e −arcs starting from each node Ci is at most α. As there are α + 2 nodes in N therefore, the total number of arcs in N is of (α2).

Lemma-5

If all the maximal cliques are given then the time taken to construct the network N is of (α2).

Proof : It follows directly from the Lemma-4.

If D be the set of maximal mutually disjoint cliques of the graph G, then the weight (D) of D is defined asimage.

Thus, ‘Disjoint Clique Problem’ reduces to find a set D of mutually disjoint cliques such that (D) is maximum among all possible (D)’s. Let D be the set of disjoint cliques giving maximum value of (D) then (D) = {(D): D is set of mutually disjoint cliques of G}.

Lemma-6

If ( , Cj ) and (Cj, ck ) are any two e −arcs of the network N then (Ci , ck ) is an e −arc.

Proof: Let ( , Cj ) and (Cj, ck ) be any two e −arcs of the network N. Therefore, it follows that Ci, Cj are disjoint cliques as well as Cj, k are disjoint cliques. From Lemma-3 we have jFirstDisjoint (Ci)>i+1andkFirstD(Cj) > j + 1. That implies k >

FirstD(Ci ) and hence Ci is disjoint with Ck. That is, (Ci, ) is an e −arc.

Let the set of arcs associated with the path P be Q. Now, if P is the path from C0 to Cα+1 whose weight is maximum among all other paths from C0 to Cα+1, then

image

w(P2), … , w(Pλ)},

where Q∗ is the set of arcs associated with the paths P. Let Q1∗ and Q2∗ be the set of e −arcs and d −arcs of Q∗, respectively. Hence,

image

image

where Cβ is the last node associated with the last arc ( , Cβ ) ∈Q∗.

Let the set of nodes associated with the e −arcs of the path P be PV, i.e., PV is the set of nodes Ck’s which form the set of ordered pair arcs Q1. Again, as the weight of the arc (Ci, Cj) is the weight of the node Ci, therefore, we may write

image

Now, from Lemma-6 we have the following lemma.

Lemma-7. All the cliques of the interval graph G on any path from any node Ci to any other node and Cj , 1 ≤ i, jα + 1 are disjoint.

The time complexity to find maximum weighted path from C0 to Cα+1 is proved in the following lemma.

Lemma-8.The maximum weighted path from C0 to Cα+1 can be computed in (α2) time.

Proof.Using the algorithms of Ahuja et al. [19] we can compute the maximum weighted path from C0 to Cα+1 in O(α2 + α√log C) time for a network N with a node and O(α2) arcs and nonnegative integer arc costs bounded by C.

There is another important result regarding weights of P and weight of D.

Lemma-9. The weight of P is equal to the weight of D i.e., (P) = (D).

Proof. From the definition of (D), we must have

(D) = {(D): D is set of mutually disjoint cliques of G}.

Each set D of maximal mutually disjoint cliques forms a path P from C0 to Cα+1. From definition of the weight of path and weight of maximal disjoint cliques, we see that weight of any path P is the weight of the corresponding set of disjoint cliques D, i.e., w(P) = W(D). Hence, if Dλ corresponds to Pλ, (λ = 1, 2, … ,ℎ) then W(Dλ) = w(Pλ), for all λ = 1, 2, … , ℎ. Therefore, w(P) = max{w(P1), w(P2), … , w(Pℎ)} = max{W(D1), W(D2), … , W(Dℎ)} = W(D). Hence the result.

The Algorithm And Its Complexity

The major steps of the proposed sequential algorithm are listed below:

Algorithm DC

Input: An interval graph G with its interval representation.

Output: A maximum weight disjoint clique’s D.

Step-1: Compute all maximal cliques Ci, i = 1, 2,. . . , α with C0 = Φ = Cα+1

Step-2: Construct a network N.

Step-3: Compute a maximum weighted path PV∗.

Step-4: Identify all the cliques from the path PV∗ and put them to the set D.

end FD

The complexity of Algorithm DC is given blow:

Theorem-2: The maximum disjoint cliques of an interval graph G can be computed in (n2) time in sequential, where n is the total number of vertices.

Proof: Step-1 of the Algorithm DC can be computed in (n + γ) time, where γ is the sum of cardinalities of all cliques which is known and to be (n + m) time, where m is the number of edges of the graph [7]. Running time of Step-2 is of (α2) where α = (n) (Lemma-5). By Lemma-8, Step-3 takes (α2) time for implementation. Also, Step-4 takes (α2) time.

Therefore, overall time complexity of the Algorithm DC is of (n2). Hence the theorem.

Parallel Implementation and its Complexity

The steps of parallel algorithm are exactly same as sequential algorithm. The parallel implementation of each step of Algorithm DC is described in this section.Using the algorithm of Pal et al. [24-26], we can compute all maximal cliques of the interval graph, in parallel, image time using p processors on an EREW PRAM where γ is the output size and n is the number of vertices of the interval graph. Thus, Step-1 can be carried out imagetime using p processors on an EREW PRAM. The algorithm is optimal if

image For an interval graph γ = (n + m) [20].A network N corresponding to an interval graph G can be constructed in (1) time using (α2) processors on an EREW PRAM, where α is the total number of maximal cliques of G.

Maximum weighted path in N of G can be computed in (log2 n) time with imageprocessors on an EREW PRAM model and in O(log n) time using O(n3+ε ), ε > 0 processors on a CREW model [21]. Hence, Step-3 and Step-4 requires same time.

Therefore, all the steps of Algorithm DC can be performed in O(log2n) time with0( n3 (log log n) / log3/2 n) processors on an EREW PRAM model and in O(log n) time using O(n3+ε ), ε > 0 processors on a CREW model.

Thus, we have the following theorem:

Theorem-3. All disjoint cliques of an interval graph with n vertices can be compute in O(log2 n) time with processors on an EREW PRAM model and in O(log n) time using O(n3+ε), ε > 0 processors on a CREW model.

Concluding Remarks

In this paper, an efficient algorithm is designed to solve the disjoint cliques problem on interval graphs. The time complexity of the sequential algorithm is (n2) time where n is the number of vertices of the graph. A parallel algorithm is also designed. The time complexity of the parallel algorithm is of (log2n) time with image processors on an EREW PRAM model and (log n) time with (n3+ ), ε > 0 processors on a CREW PRAM model. It may be mentioned that the DAG approach has been used to design this algorithm. It may be noted that our proposed algorithm is not cost optimal but efficient. So, a new technique is required to solve this problem in sequential as well as parallel. [22-26]

Acknowledgements

The author thankful to the anonymous referees for their valuable remarks which led to improvement of this paper I would like to acknowledge the Department of Higher Education, Science & Technology and Biotechnology, Govt. of West Bengal, India (245(Sanc.)/ST/P/S&T/16G-20/2017 dt.25/3/2018) for providing financial support during the project work. Also, I would like to thank my Research Guides, the Principal, all my colleagues and Research Scholar for their encouragement throughout this work.

REFERENCES

 
Google Scholar citation report
Citations : 7299

Journal of Pure and Applied Mathematics received 7299 citations as per Google Scholar report

Journal of Pure and Applied Mathematics peer review process verified at publons
pulsus-health-tech
Top