Towards faster local search for minimum weight vertex cover on massive graphs☆
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 V∖C 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)
- et al.
A population-based iterated greedy algorithm for the minimum weight vertex cover problem
Appl. Soft Comput.
(2012) A greedy heuristic for the set-covering problem
Math. Oper. Res.
(1979)- et al.
Systematic exploration of larger local search neighborhoods for the minimum vertex cover problem
Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence, San Francisco, California, USA.
(2017) - et al.
Random walk in large real-world graphs for finding smaller vertex cover
Proceedings of the IEEE International Conference on TOOLS with Artificial Intelligence
(2016) - et al.
The network data repository with interactive graph analytics and visualization
Proceedings of the Twenty-Ninth AAAI Conference on Artificial Intelligence
(2015) Balance between complexity and quality: local search for minimum vertex cover in massive graphs
Proceedings of the Twenty-Fourth International Joint Conference on Artificial Intelligence, IJCAI, Buenos Aires, Argentina
(2015)- et al.
NuMVC: an efficient local search algorithm for minimum vertex cover
J. Artif. Intell. Res.
(2013) - et al.
Local search with edge weighting and configuration checking heuristics for minimum vertex cover
Artif. Intell.
(2011) - et al.
On the hardness of approximating minimum vertex cover
Ann. Math.
(2005) Tabu search – part I
ORSA J. Comput.
(1989)
Cited by (25)
A new local search algorithm with greedy crossover restart for the dominating tree problem
2023, Expert Systems with ApplicationsIdentifying the cardinality-constrained critical nodes with a hybrid evolutionary algorithm
2023, Information SciencesA greedy randomized adaptive search procedure (GRASP) for minimum weakly connected dominating set problem
2023, Expert Systems with ApplicationsCitation 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 InstituteCitation 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 SciencesCitation 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.
Local search for weighted sum coloring problem
2021, Applied Soft Computing