Abstract

Maximum weight independent set (MWIS) is a combinatorial optimization problem that naturally arises in many applications especially wireless networking. This paper studies distributed approximation algorithms for finding MWIS in a general graph. In the proposed algorithm, each node keeps exchanging messages with neighbors in which each message contains partial solutions of the MWIS optimization program. A parameter is introduced to achieve different tradeoff between approximation accuracy and space complexity. Theoretical analysis shows that the proposed algorithm is guaranteed to converge to an approximate solution after finite iterations; specifically, the proposed algorithm is guaranteed to converge to the optimal solution with . Simulation results confirm the effectiveness of the proposed distributed algorithm in terms of weight sum, message size, and convergence performance.

1. Introduction

Consider a graph with a set of nodes and a set of edges. For each node , there is a positive weight . A subset of can be represented by binary variable , , where is 1 if is in the subset and 0 otherwise. A subset is called an independent set if no two nodes in the subset are connected by an edge. We are interested in finding the maximum weight independent set (MWIS) [1], which can be expressed as an integer program:

The MWIS problem has been extensively studied in the literature. For example, it is known to be solvable in polynomial time for many cases including perfect graphs [2], interval graphs [2], disk graphs [3], claw-free graphs [4], fork-free graphs [5], trees [6], sparse random graphs [7, 8], circle graphs [9], and growth-bounded graphs [10]. Moreover, there has been extensive work on approximating the MWIS [11], and specialized algorithms have been developed for exactly computing the MWIS [1215].

Further, the MWIS problem naturally arises in many applications, especially wireless networking, which require distributed solutions. For example [1618], in scenarios involving resource scheduling in wireless networks that lack a centralized infrastructure and where nodes can only communicate with local neighbors, the MWIS problem needs to be solved in a distributed manner. Fundamentally, any two wireless nodes that transmit at the same resource will interfere with each other if they are located close-by. The scheduling problem is to decide which nodes should transmit at the given resource so that there is no interference and nodes with long queue length are given priority. If each node is given a weight equal to the queue length, it is optimal to schedule the set of nodes with the highest total weight. If a conflict graph is made, with an edge between each pair of interfering nodes, the scheduling problem is exactly the MWIS problem for the conflict graph. The lack of an infrastructure and the local nature of communication require a distributed algorithm for solving the MWIS problem.

There are three types of distributed algorithms for MWIS problem: greedy algorithms, carrier sense random multiple access (CSMA) algorithms, and message-passing algorithms.

For greedy algorithms, several simple distributed algorithms for MWIS have been proposed in the literature [1922]. These algorithms are based on the greedy principle and require only knowledge of the local topology at each node. However, due to the inherent difficulty of the MWIS problem, greedy algorithms are not guaranteed to obtain the optimal solution for general graph.

For random multiple access algorithms, several CSMA-based algorithms have been proposed [2326]. These algorithms are distributed, are of low complexity, and are easy to implement. They use a random access scheme according to which a link seizes the channel with a probability that increases exponentially with a certain link-dependent weight. As explained in [27], these schemes perform sampling over independent sets of the graph and converge to the optimal MWIS in graphs with large weights. However, according to [28], message-passing algorithms can achieve significantly smaller aggregate long-run average queue length than CSMA algorithms.

Several message-passing algorithms for producing a feasible solution to the MWIS were proposed in [2834]. For example, in [30], Sanghavi et al. show that a simple modification of max product becomes gradient descent on the dual of the linear programming associated with the MWIS problem and converges to the dual optimum. They also develop a message-passing algorithm that recovers the primal MWIS solution from the output of the descent algorithm and show that the MWIS estimate obtained using these two algorithms in conjunction is correct when the graph is bipartite and the MWIS is unique. In [31], it has been shown that polynomial time methods exist for perfect graphs which include bipartite graphs and many others. Further, in [29], message-passing methods were developed for perfect graphs. Additionally, it is worth mentioning that message-passing methods have also been successfully applied to solve the maximum weight matching (MWM) problem [3538].

This paper studies this problem and proposes a new distributed algorithm for the general graph. The proposed algorithm runs iteratively in which each node receives messages from its neighbors, updates the message of its own, and then broadcasts the message to the neighbors. During the message update procedure, each node shall first combine all received messages into a single one and then delete some elements from the message to control the size of the message. Theoretical analysis and computer simulation show that the proposed algorithm will converge after finite iterations and can achieve tradeoff between approximation accuracy and space complexity.

The rest of the paper is outlined as follows. In Section 2, some useful notations are introduced. In Section 3, a new distributed algorithm for MWIS is proposed. In Section 4, the theoretical analysis of the proposed distributed algorithm including convergence and optimality is presented. Section 5 reports simulation results of the proposed algorithm and its comparison to the existing distributed MWIS algorithms. Finally, concluding remarks are given in Section 6.

2. Notation

This section introduces some notations which will be used throughout this paper. The symbols used in this paper are summarized in the List of Symbols.

2.1. Partial Solution

Let denote the full variable set of the MWIS problem. Assuming is a subset of , a partial solution of the MWIS problem is expressed aswhere is 0 or 1. We call the partial variable set of the MWIS problem. The objective associated with is expressed asFurther, given a partial variable set , the partial solution set can be expressed aswhere

To help understand this, we use the graph shown in Figure 1 as an example. For this graph, there are four nodes and the weights are , , , and . The full variable set . Assuming the partial variable set , then is a partial solution of the MWIS problem. The objective associated with this partial solution is .

2.2. Combination

For any two partial solutions and , if there exists a common variable so that , then we say these two partial solutions are contradictory; otherwise, if there does not exist such common variable, we say these two partial solutions are compatible. For more than two partial solutions, if there exist two partial solutions which are contradictory, we say these partial solutions are contradictory; otherwise, we say these partial solutions are compatible.

Then, for a number of partial solutions , , the combination operation over them is defined as follows:Finally, for a number of partial solution sets , , the combination operation over them is defined as

We continue to use the graph shown in Figure 1 as the example. For convenience, let , , , and . Firstly, for and , since has different values in and (i.e., in and in ), we say and are contradictory and we have . Secondly, for and , since there is no common variable which has different values in and , we say and are compatible and we have . Thirdly, assuming and , it can be verified that .

2.3. Truncation

For a partial solution set , sort the elements in by the values of the objective so that . Define the truncation operation over aswhere is a parameter.

We continue to use the graph shown in Figure 1 as the example. Assume , where , , and . It can be verified that , , and . Therefore, we have . If we set , then we have . That is, is deleted from .

2.4. Feasible Partial Solution

Assuming is a subset of , define the associated constraint set aswhich contains all constraints involving variables in . Then, define the associated feasible partial solution setwhere and represents the notion that satisfies the constraints in . We have the following two lemmas.

Lemma 1. For two subsets and , one has

Proof. See Appendix A.

Lemma 2. For subsets , , one has

Proof. See Appendix B.

We continue to use the graph shown in Figure 1 as the example. For two subsets and , we have and . On the one hand, there are five elements in , , , , , and , and five elements in , , , , , and . It can be verified that contains eight elements: , , , , , , , and . On the other hand, we have and . It can be verified that also contains the same eight elements. Therefore, Lemma 1 is correct for this example.

3. The Proposed Algorithm

The proposed algorithm is performed in an iterative manner. Let denote the set of neighbors of node . At each iteration , node sends a message to each neighbor in , where message is actually a partial solution set. The details of the proposed distributed algorithm are presented as follows.

3.1. Algorithm

The operation of node consists of two steps, which are presented in sequence as follows.

Step 1 (the combination operation). Node receives the message from each neighbor and then generates a partial solution set asSpecifically, for , we setwhereFor convenience, we express aswhere is the partial variable set associated with node in the th iteration.

Step 2 (the truncation operation). The number of elements of can be very large. A parameter is introduced to control the space complexity. Node only keeps out of the total elements and generates the messagewhere is a parameter known by each node. Node broadcasts the message to its neighbors.

Each node shall repeat the above steps until convergence. As proved in Section 4 (Theorem 5), this process will converge after finite iterations. Upon convergence, assume the message node sending to each neighbor is . Let denote the partial variable set associated with . We can write and . Node shall determineand estimate

If we set , node will not delete any partial solution in the truncation operation, and the algorithm will converge to the optimal solution as proved in Section 4 (Theorem 6). However, the message size will increase exponentially with the node number as shown in Section 5 (Figure 2). On the other hand, for general , node will delete a part of the partial solutions in the truncation operation to keep the message size small, and the algorithm will converge to an approximate solution with acceptable loss of optimality as shown in Section 5 (Figures 3 and 4). Therefore, the proposed algorithm can achieve different tradeoff between optimality and complexity.

3.2. Example 1: The Synchronous Case

To illustrate the above procedure, we use the graph shown in Figure 1 as an example. It can be verified that the maximum weight independent set is (i.e., , , , and ) and the associated objective is 9. For this example, we assume all nodes operate synchronously.

For each node , it will send message to its neighbors at the th iteration. We will assume and , respectively.

Case 1 (). We take node 1 as the example. Initially, , message contains five elements: , , , , and . Then, node 1 performs the truncation operation to generate . Since , we have , as shown in Table 1(a). For , since , node 1 has in which there are seven elements, , , , , , , and , as shown in Table 1(b). For , the set does not change any more. We pick the solution with the highest objective, that is, the solution , , , and , which is exactly the optimal solution.

Case 2 (). We still take node 1 as the example. Initially, , message contains five elements: , , , , and . Then, node 1 performs the truncation operation to generate . Since , there are three elements in , , , and , as shown in Table 2(a). For , after similar operations, there is only one element in , , as shown in Table 2(b). For , the set does not change any more. We pick the solution with the highest objective, that is, the solution , , , and , which is exactly the optimal solution.

Comparing these two cases, we can observe that, for , the node will delete some partial solutions in the truncation operation to keep the message size small.

3.3. Example 2: The Asynchronous Case

The proposed algorithm can be run fully asynchronously. This is due to the fact that the combination operation, which is the core of the algorithm, does not require all nodes to act synchronously. We use the graph shown in Figure 1 again as the example. For this example, we assume node 1 is the one which is not synchronized with other nodes. Specifically, we assume that node 1 will not generate messages until . We use the proposed algorithm to solve this problem. To focus on the problem raised in this comment, we assume so that the proposed algorithm can be expressed as the following iterative equation:where is the message broadcasted by node in the th iteration. The running process of the algorithm is described as follows.

Initially, for , according to (14) and (15), the message generated by each node can be expressed as , , , and . Therefore, node 1 generates message which contains no elements, node 2 generates message which contains five elements, , , , , and , and so on, as shown in Table 3(a).

Then, for , according to (20), the message generated by each node can be expressed as , , , and . It can be verified that contains five elements: , , , , and ; contains eight elements; contains seven elements; and contains eight elements, as shown in Table 3(b).

For , according to (20), the message generated by each node can be expressed as , , , and . It can be verified that the message contains seven elements, and so on, as shown in Table 3(c). We pick the solution with the highest objective, that is, the solution , which is exactly the optimal solution.

4. Theoretical Analysis

This section presents the theoretical analysis results of the proposed distributed algorithm.

Recall that is the partial variable set associated with node in the th iteration. Firstly, we have the following two lemmas.

Lemma 3. For general , one has

Proof. We prove these two equations by induction on . Initially, , according to the algorithm, we have , where . Therefore, this lemma holds for . Suppose this lemma is correct for . For , we have . Assuming this lemma is correct for , we have . Applying Lemma 2, we then have . Since is the partial variable set associated with node in the th iteration, we know that , which means that (21) is correct for . Further, we have , which means that (22) is correct for . This completes the proof of this lemma.

Lemma 4. For , one has

Proof. We prove this equation by induction on . Initially, , according to the algorithm, since , we have , where . Therefore, this lemma holds for . Suppose this lemma is correct for . For , we firstly have . Assuming this lemma is correct for , we have . Applying Lemma 2, we then have . Since is the partial variable set associated with node in the th iteration, we have . Since , we finally have , which means that (23) is correct for . This completes the proof of this lemma.

Based on these two lemmas, we have the following two theorems. Let denote the diameter of the graph .

Theorem 5. For general , the proposed algorithm will converge to a feasible solution after iterations.

Proof. According to (21), contains nodes to which the shortest distance from is . Since is the longest distance between any two nodes, we have for . Therefore, since , we have . For convenience, define . Therefore, since , we have which will not change any more. Therefore, the proposed algorithm will converge after iterations.
According to (22), due to for , we have for . That is, each element in is a feasible full solution. Therefore, for , each element in is a feasible full solution. According to the algorithm, node will estimate , where and . Since each element contained in is a feasible full solution of the MWIS problem, must be feasible. Therefore, the proposed algorithm will converge to a feasible full solution after iterations.

Theorem 6. For , the proposed algorithm will converge to the optimal solution after iterations.

Proof. For , since is the longest distance between any two nodes, we have . Thus, according to (23), for , we have . Therefore, the algorithm is converged after iterations. Since node will estimate , where covers all feasible solutions of the MWIS problem, must be the optimal one. Therefore, the proposed algorithm will converge to the optimal solution after iterations.

Theoretical analysis results show that the proposed algorithm is guaranteed to converge to an independent set and the tradeoff between approximation accuracy and algorithm complexity is controlled by parameter , which are confirmed by the simulation results reported in Section 5.

5. Performance Evaluation

In this section, we evaluate the proposed algorithm via computer simulations. We first describe the simulation methodology and then present and analyze the simulation results.

We develop a simulator based on MATLAB. In the simulator, a total of nodes are randomly distributed over a 10-meter 10-meter flat field. For each node, the weight is a random number ranging from 0 to 1. For any two nodes, if the distance is less than 6 meters, there will be an edge connecting them. Thus, we have generated a general graph. For this graph, we use five methods to find its MWIS. The first is to use the full version of the proposed algorithm, the second is to use the general version of the proposed algorithm with parameter ranging from 5 to 30, the third is to use the greedy algorithm proposed in [19], the fourth is to use the message-passing algorithm proposed in [30], and the fifth is to use MATLAB function bintprog to solve the integer program in (1). For the first two methods, we collect four metrics that characterize the performance of the proposed algorithm: (1) the weight sum of the output set, (2) the iteration number needed to converge, (3) the diameter of the graph, and (4) the message size, that is, the number of ME contained in each message, upon convergence. For the other two methods, we only collect the weight sum of the output set. The procedure is repeated 1000 times for each value of , each time with a new generated graph and weights, and results are averaged out.

We first report that the proposed algorithm is convergent for all simulation runs, and the output set is always independent. Then, we present the simulation results obtained from computer experiments, which are organized in four figures. Figure 2 shows the average message size upon convergence as the node number varied. Specifically, it is worth mentioning that since the message-passing algorithm does not always converge and the output set is not always independent, we only collect the results when the message-passing algorithm converges and the output set is independent. In this figure, for , the message size grows exponentially with node number, while for general the message size is well controlled. Figures 3 and 4 show the average weight sum performance as the node number and parameter varied. In these two figures, the proposed algorithm with general will converge to an approximate solution with acceptable loss of optimality as parameter is appropriately selected. Additionally, in Figure 3, the curve corresponding to coincides with the curve of the optimal solution. Thus, the optimality part of Theorem 6 is verified. Finally, Figure 5 shows the average iteration number needed to converge as the node number varied. In this figure, the curve corresponding to is always under the upper bound predicted by Theorem 6 (i.e., the diameter plus 1), while the curves corresponding to the general are always under the upper bound predicted by Theorem 5 (i.e., two times the diameter plus 1). Thus, Theorem 5 and the convergence part of Theorem 6 are verified. Simulation results show that the proposed algorithm with is a distributed optimal algorithm, while the proposed algorithm with general is a distributed approximate algorithm which by changing parameter can achieve different tradeoff between approximation accuracy and space complexity.

Finally, we empirically study how to set value for the parameter . Actually, we need a way to estimate a good for a given weighted graph. We propose to set as the integer times of the number of nodes. The simulation results are summarized in Table 4. According to the simulation results, we suggest to set as 2–4 times the number of nodes.

6. Conclusions

A new distributed algorithm for finding the maximum weight independent set in a general graph is presented. The proposed algorithm runs iteratively in which each node receives a message form each neighbor, updates the message of its own, and sends it to each neighbor. It is shown that the proposed algorithm will converge to an independent set after finite iterations and can achieve different tradeoff between approximation accuracy and space complexity. Specifically, the proposed algorithm with is guaranteed to converge to the optimal solution.

Appendix

A. Proof of Lemma 1

Proof. Assume and , where and . We have and . According to the definition, we have , , = . This completes the proof of this lemma.

B. Proof of Lemma 2

Proof. We prove this lemma by induction on . According to Lemma 1, for , this lemma is correct. Suppose this lemma is correct for . By using Lemma 1 and hypothesis, we have = . Thus, this lemma is also correct for . This completes the proof of this lemma.

List of Symbols

:The graph
:The weight associated with each node
:The binary variable associated with each node
:The full variable set
:The partial solution
:The objective associated with
:The partial solution set
:The combination operation over partial solutions
:The combination operation over partial solution set
:The truncation operation over with parameter
:The set of neighbors of node
:A subset of
:The full constraint set associated with
:The feasible solution set associated with
:The message broadcasted by node in the th iteration
:The partial solution set generated by node after the combination operation in the th iteration
:The partial variable set associated with node in the th iteration
:The diameter of graph .

Competing Interests

The authors declare that there are no competing interests regarding the publication of this paper.

Acknowledgments

This work is supported by the National Natural Science Foundation of China (no. 61571111).