Elsevier

Information Sciences

Volume 471, January 2019, Pages 64-79
Information Sciences

Towards faster local search for minimum weight vertex cover on massive graphs

https://doi.org/10.1016/j.ins.2018.08.052Get rights and content

Abstract

The minimum weight vertex cover (MWVC) problem is a well known NP-hard problem with various real-world applications. In this paper, we design an efficient algorithm named FastWVC to solve MWVC problem in massive graphs. To this end, we propose a construction procedure, which aims to generate a quality initial vertex cover in short time. We also propose a new exchange step for reconstructing a vertex cover. Additionally, a cost-effective strategy is used for choosing adding vertices, which can accelerate the algorithm. Experiments on 102 instances were conducted to confirm the effectiveness of our algorithm. The results show that the FastWVC algorithm outperforms other algorithms in terms of both solution quality and computational time in most of the instances. We also carry out experiments that analyze the effectiveness of the underlying ideas.

Introduction

The minimum vertex cover (MVC) problem is to find a minimum sized vertex cover in a graph, where a vertex cover is a subset of vertices that contains at least one endpoint of each edge. The minimum weight vertex cover (MWVC) problem is a generalization of MVC. In a vertex weighted graph, each vertex has a positive weight and the purpose of the MWVC problem is to find a vertex cover with the minimum weight. The MWVC problem has applications in various fields such as network flow, circuit design, transportation and telecommunication.

The MVC problem is NP hard. Moreover, it is NP-hard to approximate MVC within any factors smaller than 1.3606 [6]. Due to the computational intractability of the MVC problem, various heuristic algorithms have been proposed to find approximate solutions within reasonable time. Among them, the most successful ones share the same method called local search, which moves from solution to solution based on the iterative use of certain criterion until a deemed optimal solution is found or a time bound is elapsed. Typical local search algorithms for MVC include COVER [15], EWCC [4] and NuMVC [3]. Particularly, NuMVC made a significant improvement on solving the popular DIMACS and BHOSLIB benchmarks. Its main ideas include two-stage exchange step and the forgetting mechanism for edge weighting, as well as the configuration checking strategy [4] . However, these algorithms do not perform well on massive graphs. Some researchers have been working on algorithms that are tailored to massive graphs. The most representative one is FastVC algorithm [2]. It uses a fast heuristic for constructing a vertex cover and a probabilistic sampling heuristic for choosing the vertex. Since the introduction of FastVC, several algorithms have been proposed for solving MVC on large graphs [9], [12], [19], most of which are improved from FastVC.

Research on MWVC problem is relatively less, which may be due to the fact that MWVC is more complicated than MVC. Most works on MWVC are also focused on heuristic algorithms. In [5], a greedy algorithm was used to find a feasible solution. A population-based iterated greedy algorithm [1] refines a population of solutions at each iteration. Ant colony optimization was also used to get a quality approximate solution [8], [17]. In [18], the authors proposed an algorithm which combined genetic algorithms and greedy heuristic. A hybrid intelligent algorithm that integrates stochastic simulation with genetic algorithm was designed to solve the MWVC problem under stochastic environments [13]. Recently, a tabu search algorithm named Multi-Start Iterated Tabu Search algorithm (MS-ITS) [20] achieved state-of-the-art performance on a broad range of benchmarks. As for solving MWVC on massive graphs, a recent algorithm named Diversion Local Search based on Weighted Configuration Checking (DLSWCC) [10] has made a significant improvement. DLSWCC combines the Weighted Configuration Checking (WCC) strategy with a dynamic scoring function.

The direction of solving MWVC on massive graphs calls for more efficient algorithms. There are several shortcomings in existing algorithms. Firstly, they use simple strategies to obtain one initial vertex cover [10], [20]. This initial vertex cover may be far from the optimal solution, taking the search process much time to move closer to the final solution. Secondly, in each exchange step of local search, most of them remove just one vertex from the candidate solution and then reconstruct the candidate solution to a vertex cover. However, the number of uncovered edges resulted by removing just one vertex from the candidate solution may be too small, making the search range in the search phase narrow. Thirdly, in the vertex cover reconstruction phase, some vertices need to be added into the candidate solution. Previous algorithms mainly achieve this by searching all vertices that are not in the candidate solution, and then choosing vertices based on some rules. This strategy is time-consuming especially when the size of the instance is very large.

We try to address the shortcomings mentioned above. Firstly, we propose an efficient construction procedure called ConstructWVC, which is an improved and iterative version of ConstructVC in FastVC [2]. This construction procedure is used to produce a high quality initial solution. It consists of two phases. Different vertex covers are constructed according to an edge scanning heuristic with different orders, and the best one is selected, which is then shrunk by removing redundant vertices. The intention of this strategy is to take the advantage of the low complexity of the construction process to get a competitive initial candidate solution.

Secondly, we propose a new exchange step for reconstructing a vertex cover. As with previous local search algorithms for MWVC, our algorithm moves from a vertex cover to another vertex cover in each step. In the beginning of each step, the current candidate solution C is a vertex cover, and the algorithm moves to a new vertex cover by removing two vertices from C and adding vertices to it until C becomes a vertex cover again. The first removed vertex is selected according to a greedy strategy, while the second is chosen according to a balanced strategy.

Thirdly, we use a cost-effective strategy for choosing adding vertices. When selecting a vertex to add into the candidate solution, we simply scan the closed neighborhood of the removed vertices in this step. Each time a vertex with the largest gain is picked to add into C, until C becomes a vertex cover. This strategy is equal to the time-consuming strategy that scans all vertices not in C, but is much more efficient. Here gain represents the contribution of adding the vertex to the candidate solution, and will be introduced in Section 2.

Based on these techniques, we develop a local search algorithm named FastWVC for MWVC. We conducted an extensive experiment study on a large range of benchmarks, covering a variety of fields such as biological networks, collaboration networks, social networks. We compare FastWVC algorithm with state-of-the-art algorithms including MS-ITS, DLSWCC and ILS-VND [14]. The results show that FastWVC algorithm outperforms them on most benchmark graphs.

The reminder of this paper is organized as follows: Section 2 presents some preliminary knowledge. Section 3 presents the framework of the FastWVC algorithm. Section 4 explains the three main ideas. Detailed description of our FastWVC algorithm is showed in Section 5. Section 6 presents the empirical results. Finally, Section 7 gives our conclusions and future works.

Section snippets

Preliminaries

In this section, we introduce some basic definitions and background knowledge. We also introduce the popular techniques that will be used in our algorithm.

Algorithmic framework

This section describes the general framework of the FastWVC algorithm. Detailed description and analysis will be presented in Section 5.

At the beginning, an initial vertex cover C is constructed by function ConstructWVC. Then the algorithm repeats the main loop until reaching time limit. In each step, the algorithm firstly removes two vertices, according to two different strategies. After that, the algorithm reconstructs a vertex cover by adding vertices into C until all edges are covered.

Main ideas

This section presents the main ideas used in FastWVC, including a construction procedure, a new exchange step, and a cost-effective strategy for choosing the adding vertices.

The FastWVCalgorithm

In this section, we present the FastWVC algorithm and give a detailed description. Our algorithm is outlined in Algorithm 3, as described below.

The initial solution C is constructed by ConstructWVC. The best found solution C* is initialized as C. The weight of each edge is set to 1, confChange(v) is set to 1 for each v ∈ V and then gain of vertices in VC and and loss of vertices in C are calculated respectively. Finally, the tabu list is set empty.

After the initialization, the algorithm

Empirical results

In this section, we present the experimental results. We compare FastWVC with three state-of-the-art algorithms, and show that our algorithm has better performance.

Conclusions and future work

In this paper, we developed a new local search algorithm for MWVC problem called FastWVC, which works particularly well for massive graphs. A new construction procedure, namely ConstructWVC, was proposed to produce a competitive initial candidate solution. A new exchange step was introduced for making the search more effective on massive sparse graphs.

We carried out extensive experiments to compare FastWVC with state-of-the-art algorithms on a board range of benchmarks from real world networks.

Acknowledgment

This work is supported by National Natural Science Foundation of China 61502464. Shaowei Cai is also supported by Youth Innovation Promotion Association, Chinese Academy of Sciences.

References (20)

There are more references available in the full text version of this article.

Cited by (25)

  • A greedy randomized adaptive search procedure (GRASP) for minimum weakly connected dominating set problem

    2023, Expert Systems with Applications
    Citation Excerpt :

    Tabu strategy is one of the above strategies and used to forbid reversing the recent changes. Tabu strategy has been used to significantly improve the corresponding local search procedures in many combinatorial optimization problems solving, such as minimum weight vertex cover problem (Cai et al., 2019), minimum connected dominating set problem (Li et al., 2017), minimum weight dominating set (Wang, Cai et al., 2018; Wang et al., 2017), maximum weight clique problem (Wang et al., 2020) etc. Usually, a tabu list is introduced, and the statuses of elements in the tabu list are not allowed to be changed within the tabu tenure.

  • An approximation lagrangian-based algorithm for the maximum clique problem via deterministic annealing neural network

    2022, Journal of the Franklin Institute
    Citation Excerpt :

    Subsequently, Cai et al. continued to propose a two-stage exchange and an edge weighting with forgetting to improve the performance of the algorithm and proposed the NuMVC algorithm [30]. Aiming at the problem of minimum vertex cover on large-scale graphs, Cai proposed a simple and fast local search algorithm called FastWVC [31]. For the weighted maximum clique problem, Dai et al. handled the problem of unlabeled EEG time-series clustering and proposed a novel EEG clustering algorithm [32], Sun et al. proposed the MLPR algorithm [33].

  • Emphasis on the flipping variable: Towards effective local search for hard random satisfiability

    2021, Information Sciences
    Citation Excerpt :

    In ProbSAT, it may result in selecting the same variable in consecutive steps by adopting only the probability function f to pick a variable to be flipped, so that it causes useless work in consecutive steps. Therefore, based on one idea of CC strategy [13,38], it is expected to remember each variable’s circumstance information and prevents a variable from being flipped if its circumstance has not been changed since its last flip, which has been proved to be effective in the SLS algorithm for solving URS instances [17,35]. CC strategy is technically hard to track and realized by selecting a variable from all variables in a SAT formula, while our algorithm selects a variable from an unsatisfied clause chosen by the biased random walk, i.e., CC-based SLS solvers [13,14,16,17,35] have only the variable selection, while our algorithm needs to select a clause and then select a variable from this selected clause.

View all citing articles on Scopus

This is an improved and extended version of a conference paper [11].

View full text