Relationship between optimal k-distance dominating sets in a weighted graph and its spanning trees

https://doi.org/10.1016/j.ipl.2019.02.002Get rights and content

Highlights

  • It generalizes a result on optimal dominating sets of graphs to weighted graphs.

  • Optimal dominating sets (ODS) have many important applications.

  • The result may lead to efficient heuristics for an ODS in a weighted graph.

Abstract

We show that for each optimal k-distance dominating set D in connected graph G with link-weights w(x,y)0, there is a spanning tree T(G,D,k) of G for which D is an optimal k-distance dominating set. This generalizes a similar result for the case of constant link-weights.

Introduction

We consider here a generalized form of the optimal k-hop dominating set problem. Let G=(V,E) be a weighted graph with two or more nodes, where each link (x,y)E has a weight w(x,y)0. A subset of nodes DV is called a k-distance dominating set, in short, a k-ddset if each node y in G has distance dist(x,y)k from some node xD. Here, dist(u,v) is the shortest length of a path in G connecting the nodes u and v (in short, an uv-path) based on the link lengths w(x,y). We say D is an optimal k-ddset if |D| is the smallest among all k-ddsets. If each w(x,y)=1, then the optimal k-ddset problem becomes the optimal k-hop dominating set problem. We refer the reader to [2] for the literature review and the many applications of k-ddset. We study here the relationship between optimal k-ddset of a general connected graph and those of its spanning trees.

Let Δ(x) = {y:dist(x,y)k}; clearly, xΔ(x). We say x dominates y or, equivalently, y is dominated by x if yΔ(x). More generally, for SV, we write Δ(S)=xSΔ(x) and for yΔ(S) we say S dominates y. In particular, a set of nodes D is a k-ddset if and only if Δ(D)=V. For a disconnected graph G, a k-ddset of G is the union of a k-ddset for each of its connected components.

Let D(G) denote an optimal k-ddset of a weighted graph G. If G=(V,E), where EE, then every k-ddset of G is a k-ddset of G. Thus, |D(G)||D(G)|. In particular, for every spanning tree T in G, we have |D(T)||D(G)|. If the deletion of the links EE from G does not increase dist(x,y) for any node pair x,yV and, more generally, if dist(x,y)k in G implies dist(x,y)k in G, then Δ(x) in G is the same as Δ(x) in G for each node x and hence G and G have the k-ddsets and thus |D(G)|=|D(G)|. (Note that such a situation does not arise when w(x,y)=c for each (x,y)E for some c>0.) In particular, throwing away links (x,y)E which have w(x,y)>k does not affect the k-ddsets of G; more generally, if w(x,y)>dist(x,y), then we can throw away the link (x,y) without affecting the k-ddsets.

For an xy-path π(x,y)=x,z1,z2,,zn,y, where n0 and zi are the intermediate nodes, we denote its length by |π(x,y)|=i=0nw(zi,zi+1), where z0=x and zn+1=y.

Theorem 1

For each optimal k-ddset D of a connected graph G, there is a spanning tree T(G,D,k) of G such that D is an optimal k-ddset of T(G,D,k).

Proof

For the moment, let D={x1,x2,,xm} be an arbitrary k-ddset of G. First, we show the construction of the tree T(G,D,k). We use the optimality of D for G at the very end to show that D is also an optimal k-ddset of T(G,D,k).

We partition V into m disjoint subsets Vi{xi},1im, such that the subgraph Gi of G on Vi is connected and Di={xi} is an optimal k-ddset of Gi for each i. Let dj(y) = dist(xj,y) for 1jm and d(y) = min {dj(y):1jm}. For each yVD, 0d(y)k because D is a k-ddset of G. Fix a node yVD, let i be the smallest index such that di(y)=d(y). Let π(y)=xi,y1,y2,,yp1,y be a shortest xiy-path of length d(y)=1pw(yn1,yn), where y0=xi and yp=y. Clearly, each yqVD for 1qp1. We first show that each d(yq)=di(yq)=1qw(yn1,yn). Clearly, d(yq)di(yq). If possible, suppose for some q, we have d(yq)<di(yq)=1qw(yn1,yn) and i is the smallest index such that di(yq)=d(yq). This means d(y)di(y)di(yq) + dist(yq,y)<di(yq) + dist(yq,y)<1qw(yn1,yn)+q+1pw(yn1,yn)=di(y), a contradiction, and therefore we have d(yq)=di(yq). Now, if i<i, then as before we get di(y)di(yq)+ dist(yq,y)=di(yq)+ dist(yq,y)=di(y) and hence di(y)=di(y). This contradicts the choice of i for y and thus i=i for each node yqπ(y). We now let each Vi = {y:y=xi or yVD and i is the smallest index such that di(y)=d(y)}. The argument above shows that if yVi and yxi then there is an xiy-path π(y) in G such that all intermediate nodes in π(y) are also in Vi. Thus, the subgraph Gi of G on Vi is connected.

Now we build the spanning tree T(G,D,k). First, choose a spanning tree Ti of the subgraph Gi on Vi, rooted at xi, such that the xiy-path in Ti for each yGi is a shortest path of length d(y)k; let Li be the links in Ti. Because the sets Vi form a partition of V, the links L1L2Lm do not contain any cycle. We now add m1 other links L0 of G to L1L2Lm to form a spanning tree T(G,D,k) of G. Clearly, D is a k-ddset of T(G,D,k). Finally, if D is not an optimal k-ddset of T(G,D,k), then it has a k-ddset D such that |D|<|D|. This implies D is a k-ddset of G, a contradiction if D is an optimal k-ddset of G. This completes the proof. 

Example 1

Fig. 1(i) shows a weighted connected graph G. For k=4, no Δ(x) contains all the vertices and thus an optimal k-ddset has size ≥2. One of the many optimal 4-ddsets here is D={a,f}; the node b with any of {e,f,g,h,k} also gives an optimal 4-ddset. For D={a,f}, Fig. 1(ii) shows the tree Ta of shortest-paths from a to the nodes Δ(a)={a,b,c,i,j} and the tree Tf of shortest-paths from f to the nodes Δ(f)={d,e,f,g,h,k}, which is disjoint from Δ(a). We can obtain a spanning tree T(G,D,k) for which D is an optimal 4-ddset as shown in Fig. 1(ii), which consists of Ta, Tf and the link (c,d).

Corollary 1

If T(G,D,k) is a spanning tree of G as in Theorem 1, then every optimal k-ddset of T(G,D,k) is an optimal k-ddset of G.

Proof

Follows immediately from the argument in the last part of the proof of Theorem 1. 

We briefly mention the notion of an optimal k-ddset for a given exclusion-set of nodes XV, where we want to find an optimal k-ddset DX(G) in G which is disjoint from X. Here, although we do not need to dominate the nodes in X we may need them to form paths from DX(G) to nodes in VX. Thus, we cannot find DX(G) by simply considering the subgraph of G on the nodes VX. Typically, the optimal |DX(G)| will be larger than the optimal |D(G)|. We show below how to convert an exclusion-set version of the optimal k-ddset problem to the standard (unconstrained) form. If y,zVX and there is at least one yz-path πX(x,y) = y,x1,x2,,xn,z,n1, such that all its intermediate nodes are in X, then let dX(y,z) = min{w(y,z),|y,x1,x2,,xn,z|:xiX and n1}, where we take w(y,z)= if (y,z)E. In particular, dx(y,z) is undefined if and only if (y,z)E and πX(y,z) does not exist. Let GX(VX,EX) be the reduced graph with the nodes VX and the links EX={(y,z):y,zVX and either (y,z)E or dX(y,z)is defined}. We take the link-weight wX(y,z)=dX(y,z) in GX(VX,EX) if the latter is defined and, otherwise, wX(y,z)=w(y,z). It is clear that the distance between any two nodes in VX is the same in G and in GX. Thus, the k-ddsets of G with the exclusion-set X are exactly the same as the k-ddsets of GX, and hence the same is true from the optimal k-ddsets.

Example 2

For the graph G in Fig. 1(i) and X={a}, GX is the same as G{x} and {b,f} s an optimal 4-ddset of GX and is also an optimal 4-ddset of G which is disjoint from X. If we choose X={a,b}, then GX equals GX plus the link (c,j) with weight wX(c,j)=3 and {f,j} is an optimal 4-ddset of GX and is also an optimal 4-ddset of G which is disjoint from X.

Section snippets

Conclusion

Our main result in Theorem 1 might be useful in finding a heuristic for an optimal k-distance dominating set in a general weighted graph G, which is known to be an NP-complete problem [1] even when all link-weights w(x,y)=1. The first step in such a heuristic would be to create a spanning tree T of shortest paths from a node x. One can choose the node x such that max{dist(x,y):yG} is minimum, and this can be done by first finding dist(x,y) for all node-pairs. Next, we would determine an

References (2)

View full text