Next Article in Journal
Unique Determination of the Shape of a Scattering Screen from a Passive Measurement
Previous Article in Journal
Analytical and Approximate Solution for Solving the Vibration String Equation with a Fractional Derivative
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Improved Memetic Algorithm for Solving the Minimum Weight Vertex Independent Dominating Set

1
Key Laboratory of Symbolic Computation and Knowledge Engineering of Ministry of Education, Jilin University, Changchun 130012, China
2
School of Computer Science and Information Technology, Northeast Normal University, Changchun 130117, China
3
Urban Construction Archives, Changchun 130000, China
4
College of Computer Science and Technology, Jilin University, Changchun 130012, China
*
Author to whom correspondence should be addressed.
Mathematics 2020, 8(7), 1155; https://doi.org/10.3390/math8071155
Submission received: 3 July 2020 / Revised: 11 July 2020 / Accepted: 13 July 2020 / Published: 15 July 2020
(This article belongs to the Section Mathematics and Computer Science)

Abstract

:
The minimum weight vertex independent dominating set (MWVIDS) problem is an important version of the minimum independent dominating set. The MWVIDS problem has a number of applications in many fields. However, the MWVIDS problem is known to be NP-hard and thus computationally challenging. In this work, we present the improved memetic algorithm called MSSAS for solving the MWVIDS problem. The proposed MSSAS algorithm combines probability-based dynamic optimization (PDO) (to generate good and diverse offspring solutions by assembling elements of existing good solutions) as well as a local search phase named C_LS (to seek high-quality local optima by combining the idea of constrained-based two-level configuration checking strategy and tabu mechanism). The extensive results on popular DIMACS and BHOLIB benchmarks demonstrate that MSSAS competes favorably with the state-of-the-art algorithms. In addition, we analyze the benefits of the newly raised components including two above proposed ideas with our memetic framework. It is worth mentioning that the combination of both components has excellent effects for the MWVIDS problem.

1. Introduction

Given an undirected graph G, an independent dominating set (IDS) is a subset of vertices D such that every vertex that is not in D is adjacent to a vertex that is in D and there are no pairs of adjacent vertices in D. The minimum independent dominating set (MIDS) problem consists in finding an independent dominating set with the minimum size. There are many variants of MIDS, consisting of minimum weight independent dominating set (MWIDS), minimum weight vertex independent dominating set (MWVIDS) and minimum weight edge independent dominating set (MWEIDS). Among these different versions of MIDS, MWIDS considers both vertex and edge weights, while MWEIDS only considers the weight of edge. Similarly, MWVIDS only considers vertex weight and ignores edge weight, i.e., each vertex has a positive weight. The aim of MWVIDS is to identify the minimum weight of IDS in the given graph. To greatly illustrate these problems, an example is shown in Figure 1. MIDS and its variants are NP-hard (non-deterministic polynomial hard) problems [1], which means that, there are no polynomial-time algorithms for these problems unless P = NP.
Its extended versions are combinatorial optimization problems, which are widely used in many fields, such as wireless network [2], warehouse location [3] and virtual machine integration [4]. In practice, the majority of them have to consider vertex weights, which belongs to MWVIDS. In this way, we choose MWVIDS as the object of our study because of its great significance.
An important problem in wireless sensor networks [5,6] is the deployment of the sink vertex. The problem is to find the appropriate location of the sink vertex to minimize the network maintenance cost. The sensor vertex is used to monitor the situation in the surrounding area, while the sink vertex is responsible for receiving and processing information from the surrounding sensor vertices. If the network is modeled as a graph, the maintenance cost of the vertex can be regarded as the vertex weight, and the cost of communication between vertices is considered as the weight of the edge. In large-scale wireless sensor network environment nowadays, multi-sink vertex [7] is adopted to improve the accuracy and efficiency of information collection; however, compared with the traditional single sink vertex, it also increases the cost of network maintenance. The maintenance cost of the vertex is far greater than the communication cost between vertices, so this problem can be regarded as MWVIDS.
The layout of the city express station [8] can also make use of the MWVIDS idea. Each city will set up a courier station, responsible for distributing delivery into the surrounding area. How to arrange the courier station reasonably is the key to achieve high efficiency and save money. When modeling the delivery process of a city, the cost of express warehouse management is regarded as vertex weight and the cost of express distribution is regarded as edge weight. Compared with the express delivery process, the warehouse management cost is much more expensive; in other words, the edge weight can be ignored, so the essence of this problem is also to find MWVIDS to some degree.
For MIDS and its variants, many algorithms have been proposed to solve the related problems. A branch-and-reduce MIDS algorithm based on some well-designed branching rules was offered by Gaspers and Liedloff [9], as well as it can reach a very close lower bound on running time. According to Wang et al. [10], a greedy randomized adaptive search procedure (GRASP) combined with tabu strategy was proposed for MIDS, which can find a better solution based on the information of path cost. Subsequently, Wang et al. introduced a tabu search-based memetic MIDS algorithm [11], in which tabu method was used to prevent cycling problems and a repairing-based crossover strategy was added to compensate for infeasible solutions. For MWIDS, Davidson et al. [12] built three different integer linear programming (ILP) models. At the same time, they put forward two different greedy heuristics, where one does not consider the weight of the edge and the other considers the weight of the edge. A biased random key genetic algorithm is proposed for MWIDS [13]. The decoder in the algorithm can transform any real value vector into an effective solution to the problem. Recently, a local search algorithm with a reinforcement learning-based repair procedure was designed [14], which combines the idea of reinforcement learning, local search and repair process to improve the solution of the MWIDS.
For MWVIDS, we designed a memetic algorithm to solve it. Memetic algorithm (MA) is formally proposed in [15] and used to solve the TSP problem. The framework of memetic algorithm is described as follows: the outstanding offspring is selected from the parent solutions through performing a series of optimizations to obtain a higher quality solution. Recently, memetic algorithms have been widely used in optimization problems [16,17,18,19]. For example, the dynamic optimization problems are proposed to combine an adaptive hill climbing method as the local search technique [16]. An improved MA for the partial vertex cover problem is designed [17], in which adaptive mutation and crossover strategies skip local optima. A MA for solving the problem of graph coloring is provided in [18], where a distance-and-quality based replacement criterion is used for pool updating. In [11], a tabu search-based MA is proposed to solve MIDS, in which a repairing-based crossover strategy is added to compensate for the infeasible solutions. A MA is proposed for a vehicle routing problem in [19], which uses different local search algorithms to solve it.
The contributions of the work are highlighted as follows.
Firstly, we propose an improved memetic algorithm called sequential self-adaptive search (MSSAS) for solving the MWVIDS problem, which explores the synergy between the process of local search process (C_LS) and a combination operator (PDO). The algorithm also integrates the construction of initial solutions generated by a kind of greedy randomized construction heuristic and an effective pool updating procedure.
Secondly, in the stage of local search improvement, we adapt the constrained-CC 2 strategy for MWVIDS problem based on CC 2 [20] to prevent from the cycling problem. In addition, each choice of removal vertices is accompanied by tabu restriction [21,22] to refrain from exploring visited solutions. Furthermore, our scoring function takes the frequency of vertices into consideration for searching for high-quality solutions. With strategies above, we get an improved vertex selection strategy for evaluating which vertex to be added or removed in this process. Then, we develop a procedure called C_LS which combines constrained-based CC 2 , scoring function and tabu strategy with local search.
Thirdly, we propose a combination operator called probability-based dynamic optimization (PDO) to generate offspring solutions by combining vertices of existing good solutions. The PDO process is accompanied by a pool updating dynamically to maintain a space of optimal solutions. In this way, the diversity of our solutions would be effectively increased.
Finally, we carried out extensive experiments to evaluate the performance of our proposed MSSAS algorithm on two benchmarks DIMACS [23] and BHOLIB [24]. The results show that MSSAS performs better than competitors for almost all instances.
The rest of the paper is organized as follows. Some definitions and notations are introduced in Section 2. The general framework of our algorithm is proposed in Section 3.1. The construction phase is described in Section 3.2. Then, we put forward local search procedure in Section 3.3. We elaborate the process of probability-based dynamic optimization (PDO) in Section 3.4. After that, we recommend our pool updating strategy in Section 3.5. In Section 4, our experiment results compared with two competitors are displayed and analyzed. Finally, the conclusions and acknowledgment are shown.

2. Preliminaries

At first, we list some necessary notations for MWVIDS. An undirected graph G = ( V , E ) comprises a vertex set V = { v 1 , v 2 , , v n } of n vertices together with a set E = { e 1 , e 2 , , e m } of m edges, where each edge e = { v , u } connects two vertices u and v, and these two vertices are called the endpoints of edge e. If there is an edge between two vertices, these two vertices are defined as neighbors. The distance between two vertices u and v is expressed as d i s t ( u , v ) , which means the number of edges in the shortest path from u to v. For a vertex v, we define its ith level neighborhood as N i ( v ) = { u | d i s t ( u , v ) = i } . We use N ( v ) to denote a collection of vertices with d i s t ( u , v ) = 1, i.e., N ( v ) = N 1 ( v ) . In addition, N i [ v ] = N i ( v ) { v } . For a broader definition, we define N [ S ] = v S N [ v ] as an assemble of neighbors of vertices in S, where S V . For a vertex set V V , a vertex v is dominated by V if: (1) v V ; and (2) v V , but there exists u V with v N [ u ] .
A dominating set of G is a subset D V such that every vertex in G either belongs to D or is adjacent to a vertex in D, while an independent set of G is a subset I S V where no two vertices in I S are adjacent. Thus, a subset I D S of V is called as an independent dominating set, if I D S is both a dominating set and an independent set. In a graph G, when each vertex v is associated with a positive weight w ( v ) , G is called an undirected weight graph. The task of minimum weight vertex independent dominating set (MWVIDS) problem is to find an independent dominating set I D S , which minimizes the total weight of vertices in I D S .

3. The Improved Memetic Algorithm for MWVIDS

3.1. Discussion of the Capabilities of Some Previous Evolutionary-Based Metaheuristics

Recently, there are various evolutionary-based metaheuristics to solve some hard optimization problems. We can learn from the paper [25] that, to reduce the amount of data, it is an efficient idea to choose swarm intelligence (SI) for feature selection process of data. This is proved as a technique for solving NP-hard computational problems. In addition, a multiple swarm intelligence optimization algorithm is used for effectively addressing the wind speed data, obtaining an optimal forecasting performance in paper [26]. While in paper [27] the particle swarm optimization (PSO) algorithm and the ant colony optimization (ACO) method act as the representatives of the SI approach. Afterwards, the proposed technique SCH-SpecPSO justifies the data communication for making dynamic network handover decisions through machine learning methods in [28]. The usage of bio-inspired swarm intelligence provides more ideas for robust communication networks. When it comes to the question of truck scheduling at cross-docking terminals, on the one hand, it is proved efficient to combine the strong mutation, which is dedicated to altering solutions in searching process, with the weak mutation, which has little ground of concrete strategies in [29]. On the other hand, a novel delayed start parallel evolutionary algorithm is proposed in paper [30], which executes separate evolutionary algorithms exchanging the promising solutions for an excellent result. The memetic algorithm, which is introduced below, is very suitable for our problem. Thus, we choose MAs as our framework.

3.2. General Approach

In our paper, we propose an algorithm for MWVIDS based on MA. Memetic algorithms (MAs) are hybrid search methods that combine the population-based search framework and local search framework. In the context of combinatorial optimization, Cowling et al. introduced the term “hyperheuristic” as a strategy that views the process of searching as an evolution, which needs to make choices which elements could be added in the result set [31]. In this way, we consider population-based search more as a container for our search with better performance. The basic implementation of initial construct is memoryless, since computations in a construct iteration do not make use of information collected in previous iterations. The idea of population-based search is based on memory structures, such as path relinking [32], which is an intensification strategy that can be applied to introduce memory structures to solution construction [33,34].
Generally speaking, MAs maintain a search space of candidate solutions, make great use of solutions and explore better components of solutions step by step with designed operators such as combination and improvement. In addition, it is always followed with an evaluation function for choosing suitable components. We put forward our sequential self-adaptive search called MSSAS, which is a constantly sequential process with an evolving solution. In detail, our improvement process is a sequential iteration by combing probability-based dynamic optimization namely PDO which works as a constructor to generate superior solution at a particular rate as well as a local search phase to seek high-quality local optima with ideas of constrained-based CC 2 and tabu mechanism. With the group of combination operator and improvement operator taking into account the solution structure, our algorithm definitely achieves a high performance in quality and diversity compared with other algorithms.
First, we present the general framework of our algorithm in Algorithm 1 as follows.
Algorithm 1: MSSAS(G)
Mathematics 08 01155 i001
In the beginning, the algorithm starts with an initial population set P. In our work, the size of P is set to 10. All of the elite solutions are generated by the construct procedure, which is a greedy randomized construction heuristic (Line 3) and the following improved function local search (Line 4). In this loop (Line 2–7), with | P | times, we generate an initial population set P. During each iteration, we add the local best solution C S l b into P (Line 5), along with updating the global best solution C S * (Line 6–7). Afterwards, two solutions are randomly selected from the P, and then recombined by the PDO, which is described in Section 3.4 to generate a new offspring solution C S (Lines 8–9). The loop on Lines 10–16 persistently executes until the total time of the process reaches a given time limit. By using the local search process to improve the solution, we would obtain a local best solution C S l b . If C S l b is better than C S * , then C S * should be updated accordingly (Lines 12–13). Meanwhile, the algorithm uses C S l b to update the population P (Line 14). At the end of loop, we use PDO like a constructor to build a new initial solution C S by modifying the structure of solutions provided by a random solution p i from P and C S l b when the local search procedure finds a better solution than C S * . Otherwise, the PDO process will use two random solutions p i and p j from population P as the input parameters. This new generated solution C S in the current loop will be the inception of the next local search repeatedly for better performance.

3.3. Construction Phase

The construction phase is similar to the semi-greedy heuristic proposed by Hart and Shogan [35]. For implementing this phase, we constantly maintain the candidate set with a particular order called restricted candidate list (RCL), which is measured by the benefit of adding the next vertex. During each selection process, we choose to pick vertices with more benefits in RCL list for better solution composition.
In this section, we propose the covering cardinality τ to measure which vertex will be picked as the next element. For v j V and a current candidate solution C S , the covering cardinality τ j is defined as the number of vertices not yet dominated by C S that will become domination if v j is added into C S . Meanwhile, each vertex has a property, i.e., a ratio ρ j = w ( j ) / τ j between its weight and covering cardinality. Obviously, a vertex with a smaller value of ρ j is more likely to have more neighbors, with a lower weight value.
We present the pseudo-code of the construction phase in Algorithm 2. At first, the algorithm initializes the candidate list L, covering cardinality τ and ratio ρ accordingly (Line 1). During each loop of Lines 2–8, the algorithm adds one vertex into C S , until C S becomes an independent dominating set. The minimum ρ and maximum ρ + greedy function values of the candidate vertices are computed (Lines 3–4), respectively. The restricted candidate list (RCL), formed by all candidate vertices whose greedy function value is less than or equal to ρ + α ( ρ + ρ ) , is built (Line 5), where α is a real-valued parameter between 0 and 1. A vertex e is chosen at random from the RCL (Line 6) and then is added to C S (Line 7). At the end of each loop (Line 8), the covering cardinalities are recomputed and the greedy function values are updated for all candidate vertices for the next iteration.
Algorithm 2: Construct()
Mathematics 08 01155 i002

3.4. Local Search Procedure

Local search shows great performance on seeking good solutions. By exploring the neighborhood structure, the searching process is accomplished by allowing one vertex to move from one solution to a better one intelligently. Based on the idea that better neighboring solutions are usually accepted, while much worse neighboring solutions are accepted with a low probability. Especially, we combine local search process with a corresponding population solution pool which acts as a container of excellent solutions to recompose newly better solutions. We introduce the principle of population solution pool below. In the case of circulation problem, the constrained-CC 2 strategy based on CC 2 [20] is proposed to improve the efficiency of the local search. Meanwhile, each iteration is attached with tabu restriction [21] to avoid exploring visited solutions.

3.4.1. Scoring Function

Based on the limited local information, the evaluation function greatly influences the quality of the solution. Some vertices are selected by following vertex selection strategy rule, which combines the proposed constrained-based CC 2 with our scoring function here. We take the frequency of each vertex into account referring to the idea in [20]. At the start, each vertex v initializes the frequency variable p ( v ) = 1 . After each iteration, for all vertices still not be dominated by the candidate solution, the corresponding p ( v ) will be increased by 1. On this account, we encourage the algorithm to dominate those undominated vertices in the next time. Based on this idea, we propose our scoring function as below.
Considering a graph G = ( V , E ) and a candidate solution S, for each vertex v, we express the value of score by s c ( v ) . w [ v ] is a positive value indicating the weight of v. We use a list i n d e to identify if v is independent. i n d e [ v ] = 1 indicates v is independent, which means none of v’s neighbors is in S. On the contrary, i n d e [ v ] = 0 means v is not independent.
s c [ v ] = 1 / w [ v ] u C 1 p [ u ] , f o r v S i n d e [ v ] = 1 , 1 / w [ v ] u C 2 p [ u ] , f o r v S i n d e [ v ] = 1
where t [ v ] is denoted as the number of vertices in N [ v ] which are in S, C 1 = { u | u N [ v ] , t [ v ] = 0 } and C 2 = { u | u N [ v ] , t [ v ] = 1 } . Indeed, C 1 is a set of vertices which are the neighbors of v, under the constraint that they have not been dominated by S but would be dominated by adding v. C 2 is a set of vertices which are the neighbors of v, along with the constraint that they have been dominated by S and would be undominated by removing v.

3.4.2. Constrained-Based CC 2 and Vertex Selection Strategy

During the process of searching, we choose a vertex by assessment of configuration and score value. It is more likely to have a circulation problem in the searching process of local search. The phenomenon often manifests as visiting one solution repeatedly, or even caught in a poor local result. In consideration of this cause, the two-level configuration checking (CC 2 for short) strategy [20] was proposed to handle this problem in local search. Therefore, we adapt this strategy to constrained-CC 2 for MWIDS problem during the local search process. We choose a vertex by checking the configuration, which means, when adding a vertex without changing the configuration compared with before, there is no need to append it. At the same time, we need to check respectively to guarantee every vertex is independent. In detail, we implement C C 2 with a boolean array c o n f , which indicates whether a vertex can be chosen. c o n f [ v ] = 1 means v is a configuration changed vertex and is allowed to be added to the candidate solution S. On the contrary, we cannot add a vertex with c o n f [ v ] = 0 . At the beginning, we initialize c o n f [ v ] as 1 for all the vertex in S. When c o n f [ v ] is changed, the c o n f value of its neighbors will be adjusted as well. In this process, the configuration changing should take both its state and its neighbors’ states into consideration.
The quality of candidate solutions largely depends on the evaluation function. We choose which vertices to add or remove on the basis of limited local information each time. Here, we evaluate vertices by scoring function, constrained-based CC 2 and tabu strategy. The tabu strategy [21,22] aims to avoid visiting previous solutions. It is implemented by a list named t a b u _ l i s t to prevent adding the vertex which has just been removed. In other words, we use the state of vertex about whether in t a b u _ l i s t to mark which one can be picked up. Further, we tend to choose a vertex older with more steps since the last time it changes its state (be removed from or added into the candidate solution). Thus, we give priority to the oldest one while picking a vertex. We define some rules for different situations as below.
  • Remove-Rule1: Choose the vertex with the highest score value, then remove the oldest one by breaking ties randomly and update the configuration accordingly.
  • Remove-Rule2: Choose the vertex not in t a b u _ l i s t with the highest score value, then remove the oldest one by breaking ties randomly and update the configuration accordingly.
  • Add-Rule: Choose a vertex v which could be allowed to add into the solution with c o n f [ v ] = 1 and the highest score value and update the configuration accordingly.

3.4.3. The Main Procedure of the Local Search

We develop a procedure called C_LS (Algorithm 3) which combines constrained-based CC 2 and tabu strategy with local search. At first, we should initialize i t e r , t a b u _ l i s t , c o n f , weight and score values for all vertices (Line 1). Then, candidate solution C S and local best solution C S l b are both set to an empty set (Line 2).
While the non-improvement number of iteration n o i m p r o _ i t e r is not reached, the search process works for a dominating set and then swaps some vertices for the final best solution (Lines 3–20). Then, if the algorithm gets to an IDS in which all vertices are dominated (Lines 4–9), then we update the local best solution C S l b by using C S (Lines 5–6). We select a vertex v, and then remove it from C S according to Remove-Rule1 (Lines 7). Then, the algorithm updates the configuration of its neighbors by constrained-based CC 2 (Line 8).
The algorithm removes a vertex not in the t a b u _ l i s t according to Remove-Rule2 (Line 10). Afterwards, the configuration is updated accordingly (Line 11). The t a b u _ l i s t should be cleared up in order that the forbidden vertices would be available for the next circulation (Line 12). The aim of the following loop on Lines 13–19 is to add vertices into the candidate set until there are no undominated vertices. A vertex m a x c is selected according to Add-Rule and the algorithm makes sure the vertex m a x c is independent (Line 14). Here, if the weight of C S plus the just selected added vertex m a x c is larger than the global best solution C S * (Lines 15–16), the algorithm obviously abandons this vertex and then breaks this adding process. Otherwise, the suitable vertex m a x c is added in the candidate solution and the c o n f value is updated according to constrained-based CC 2 (Line 17). The current added vertex will be put into the t a b u _ l i s t as well (Line 18). For each undominated vertex v, the frequency value p [ v ] is increased by 1 (Line 19). Finally, when reaching n o i m p r o _ i t e r , the local best solution of the problem C S l b will be returned.
Algorithm 3: C_LS( n o i m p r o _ i t e r )
Mathematics 08 01155 i003

3.5. Probability-Based Dynamic Optimization

Our combination operator is particularly designed based on probability, which elevates the property of offspring acceptation with more possibility of exploring new promising solutions. From a general perspective, our proposed algorithm is composed of a number of basic components: a pool of candidate solutions which is effective to maintain a search space and a combination operator called the process of probability-based dynamic optimization (PDO) to generate better solutions by combining vertices of existing good solutions.
In this section, we take both the quality and the diversity of population P into account. When selecting the parents for recombination, we tend to consider the quality of the candidate solutions as a crucial factor. It is based on an idea that the shared vertices contained in both good parent solutions are more likely to exist in an optimal solution. The recombination mechanism can make great use of the good properties from parents to offspring. Our mechanism named PDO (Algorithm 4) is a kind of algorithm to recompose existing solutions with a certain probability, with the process of checking the composition of the existing good solutions. The vertices concluded in both parent solutions will be chosen at a bigger rate β 1 , while vertices concluded in one parent solution will be picked up at a lower rate ( 100 % β 1 ) .
In addition, considering the parents selection may make a difference to the diversity of population. Exploring more new search areas in a diverse and random way for seeking promising solutions is vital. More specifically, to ensure the heritage of good properties from parents to offspring, we generate a circulation that begins with a local search process and is followed by PDO to combine two solutions p i and p j randomly, which may be from solution pool or from the improved solution from local search. If a vertex v which is assumed to be independent is concluded in both p i and p j , we add v into C S at rate β 1 (Lines 2–3). On the other hand, if v is concluded in p i or p j , we add v in C S at rate ( 100 % β 1 ) ; at the same time, we need to assure v is independent (Line 5–6). Otherwise, if the vertex v is not independent, we remove all neighbors of v in C S at a rate of β 2 and then add v into C S (Lines 8–11). We come up with this idea to add as many independent vertices as possible instead of skipping this possibility.
Algorithm 4: PDO( p i , p j )
Mathematics 08 01155 i004
After offspring elements selection, we recompose current solution by the construction procedure until all vertices are dominated, which is very similar to the construction process (Lines 12–18). In addition, there are some adjustments following the birth of offspring. If the returned solution is already an IDS, we find a better solution (Line 19). Otherwise, C S which is not a feasible solution will be returned (Line 17), i.e., failing to obtain a better solution, compared with C S * . In addition, the offspring obtained would be the inception of the next local search procedure repeatedly for a better performance. At the same time, updating the composition of population with local optimal solutions accordingly, we also propose a technique to clear or exchange the worst elements of population P to keep high-quality solution set.

3.6. Population Updating Strategy

Our population updating strategy is shown here, which is proved to conduct well for maintaining top solutions. Population updating is a crucial factor for exploring a promising, high-quality solution area. First, we combine local search process with population updating for improving the solution quality as much as possible. Local search is used to pursue high-quality results by exploring the neighbor structure, while population provides a container to maintain optimal solutions. Population updating is used to decide whether a solution could be a member of it and which one would be replaced. Moreover, considering a poor diversity may attribute to situations such as repetitions of solution components or stopping with poor local optima [36]. Thus, we need to manage population diversity by the offspring acceptance and replacement strategies.
In this section, we introduce our pool updating strategy, namely PoolUpdate, that manages the composition of pool and decides which existing solution should be replaced. At the very beginning, we initiate | P | preferable solutions of population by random generation construction followed with local search improvement. Along with the search process, the pool constantly maintains the top | P | optimal solutions. It is realized according to the idea of basic quality-based pool updating [36]; we come up with the mechanism that replaces the worst solution of the pool for a better population structure. In detail, in each circulation, if the weight of local optimal solution C S l b from improvement of local search is lower than the worst one in the pool, we replace the worst one with C S l b . When the weight value of C S l b is equivalent to the worst one in the pool, we execute replacement at a rate of 50%. In short, the population quality is increased by the dynamic replacement strategy above.

3.7. Discussion of MSSAS’s Complexity

In this subsection, we discuss the complexity of each component of MSSAS, including the construct, local search and population updating procedures. The complexity of the construct procedure is O( | V | 2 ). The complexity of one iteration in local search procedure is O( | C S | ( | V | | C S | ) 2 ). The complexity of population updating procedure is O( | V | 2 ).

4. Experimental Results

In this section, to verify the effectiveness of our proposed algorithm, we compare MSSAS with two algorithms: CC 2 FS [20] and CPLEX. Specially, CC 2 FS is an efficient algorithm for the minimum weight dominating set problem. The authors of the improved CC 2 FS [20] provided us with their source code, which had been modified for greatly solving MWIDS problem. In addition, we compare solution values with those of CPLEX, which is a high-performance mathematical programming solver for linear programming, mixed-integer programming and quadratic programming. In our work, the version of CPLEX that we used is CPLEX 12.6.
Our proposed algorithm was implemented in C++ and compiled by g++ with option -O3 in Intel Xeon E5-2640 v4 @ 2.40GHz CPU with 128GB RAM under CentOS 7.5. Many previous works use the time limit as the stopping criterion of tested algorithms [37,38,39]. For the MSSAS and competitors, the time limit was set to 100 s. All algorithms were executed 10 times under the same time limit. The MIN column is denoted as the minimal solution values, while the AVG column is denoted as the average solution value over 10 run times. The bold values of the following tables indicate the best values in the comparison of other algorithms.
We evaluated the performance of our proposed algorithm on two sets of benchmarks, namely DIMACS [23] and BHOLIB [24], where DIMACS has already used for testing several graph problems, such as vertex cover [40], dominating set [20] and clique [39], while BHOSLIB is the famous benchmark for graph problems which has many crafted hard instances with hidden optimum solutions. For generating the corresponding weighting instances, we used the same weighting function as the authors of [20,39], i.e., w ( v i ) = ( i mod 200) + 1, for each vertex v i V .

4.1. Parameter Settings

To obtain the suitable parameter settings of our proposed algorithm, the automatic configuration tool irace [41] was applied for α , β 1 , β 2 , i n i t _ n o i m p r o _ i t e r and n o i m p r o _ i t e r . We restricted the training set to include 20 training instances chosen from DIMACS and BHOLIB benchmarks. The tuning process was given a budget of 9000 runs of the proposed algorithm. For each execution, the time limit was set to 100 s. Table 1 represents the values tuning of parameters.

4.2. Experimental Evaluation of MSSAS on DIMACS and BHOLIB Benchmarks

Table 2 and Table 3 show that the results obtained by CC 2 FS can match with the results of MSSAS for only three instances, but the run time of CC 2 FS is always slower than MSSAS. Except for these three instances, MSSAS can steadily find better solutions than CC 2 FS. For all tested instances, the average number of MSSAS iterations is 6,011,056.71, while the average number of CC 2 FS iterations is 6,916,590.65. Because our proposed MSSAS needs to maintain some candidate solutions during the search process, it is obvious that the average iteration number of MSSAS is larger than that of CC 2 FS. Now, we focus on the comparison between CPLEX and MSSAS. For 12 instances, MSSAS obtains better solution values than CPLEX, while, for the remaining instances, both of them can obtain the same solution quality. From the analysis of Table 2 and Table 3, we can draw a conclusion that for DIMACS Benchmark the quality of solution found by MSSAS is always better than those of the other algorithms.
The experiment results of BHOSLIB Benchmarks are shown in Table 4. It is obvious that MSSAS has outstanding performance than other algorithms in comparison. Only the results of frb30-15-3 and frb30-15-5 are equivalent to those of CPLEX. Therefore, MSSAS performed the best.

4.3. The Effectiveness of the Components of MSSAS

To show the effectiveness of two components of MSSAS including our local search procedure and probability-based dynamic optimization, we designed two alternative algorithms, i.e., MSSAS1 and MSSAS2. To be specific, when adding vertices into the candidate solution, MSSAS1 adopts tabu mechanism (in our work, the added forbidden length esd set to 7 based on preliminary experiments) without using the constrained CC 2 . MSSAS2 uses a simple strategy, i.e., randomly selecting a random solution from population and then removing some vertices from this solution as the input of local search, making sure the weight of input solution is always smaller than that of the global best solution, rather than our probability-based dynamic optimization.
The time-to-target plot [42] was used to compare MSSAS with MSSAS1 and MSSAS2 on four instances and their respective targets. To get the time-to-target plots, we performed 200 independent runs of MSSAS, MSSAS1 and MSSAS2 on these four instances. Figure 2 and Figure 3 illustrate the efficiency contribution of our two proposed components. Figure 2 shows that the probabilities of obtaining a solution of the target value by MSSAS are approximately 10% and 30% in at most 0.22 and 0.89 s, respectively, whereas the probabilities of obtaining a solution of the target value are approximately 10% and 30% in almost 32.46 and 98.28 s by MSSAS1, as well as at least 0.35 and 1.04 s by MSSAS2, which are considerably more than MSSAS.

5. Conclusions and Future Work

In this work, we introduced a novel algorithm for solving the NP-hard minimum weight vertex independent dominating set problem. Firstly, an improved mimetic algorithm called sequential self-adaptive search is proposed for solving the denoted problem, which explores the synergy between the process of local search process and a combination operator. The algorithm also integrates the construction of initial solutions generated by a kind of greedy randomized construction heuristic and an effective pool updating procedure. Secondly, in the stage of local search improvement, the constrained-CC 2 strategy for MWVIDS problem based on CC 2 is adapted to prevent from the cycling problem. In addition, each choice of removal vertices is accompanied by tabu restriction to refrain from exploring visited solutions. Furthermore, the proposed scoring function takes the frequency of vertices into consideration for searching high-quality solutions. With the strategies above, an improved vertex selection strategy for evaluating which vertex to be added or removed in this process is obtained. Then, a procedure called C_LS is developed which combines constrained-based CC 2 , scoring function and tabu strategy with local search. Thirdly, the research indicates a combination operator called probability-based dynamic optimization (PDO) to generate offspring solutions by combining vertices of existing good solutions. The PDO process is accompanied by a pool updating dynamically to maintain a space of optimal solutions. In this way, the diversity of solutions can be effectively increased. Extensive experiments were carried out to evaluate the performance of proposed MSSAS algorithm on two benchmarks DIMACS and BHOLIB. The results show that MSSAS performs better than competitors for almost all instances.
In the future, we will focus on improving the performance of our algorithm on solving massive graphs regarding some real applications, because, with the increase of instance scale, our proposed method may not scale very well. In addition, we would find some other important properties and improve scoring function. In addition, we may explore a better way [43,44] to estimate the size of the search space and improve corresponding strategies in our algorithm with more creative ideas.

Author Contributions

Conceptualization, Y.Z. and Y.L. (Yong Lai); methodology, J.L. and Y.L. (Yang Liu); validation, S.L. and J.W.; writing-original draft preparation, S.L., J.W., and Y.L. (Yong Lai); writing-review and editing, Y.Z., J.L., Y.L. (Yang Liu), and Y.L. (Yong Lai). All authors have read and agreed to the published version of the manuscript.

Funding

This work is supported by the Fundamental Research Funds for the Central Universities 2412020FZ030 and 2412018ZD017, project of Jilin Provincial Science and Technology Department under Grant No. 20190302109GX, Jilin Province Natural Science Foundation under grant 20190103005JH and NSFC (under grant nos. 61806050, 61972063, 61976050, 61972384).

Conflicts of Interest

The authors declare that they have no conflicts of interest to this work. We declare that we do not have any commercial or associative interest that represents a conflict of interest in connection with the work submitted.

References

  1. Hartmanis, J. Computers and intractability: A guide to the theory of NP-completeness (michael r. garey and david s. johnson). Siam Rev. 1982, 24, 90. [Google Scholar] [CrossRef]
  2. Lin, C.R.; Gerla, M. Adaptive clustering for mobile wireless networks. IEEE J. Sel. Areas Commun. 1997, 15, 1265–1275. [Google Scholar] [CrossRef] [Green Version]
  3. Khumawala, B.M. An efficient branch and bound algorithm for the warehouse location problem. Manag. Sci. 1972, 18, B-718. [Google Scholar] [CrossRef]
  4. Terra-Neves, M.; Lynce, I.; Manquinho, V. Virtual machine consolidation using constraint-based multi-objective optimization. J. Heuristics 2019, 25, 339–375. [Google Scholar] [CrossRef]
  5. Nocetti, F.G.; Gonzalez, J.S.; Stojmenovic, I. Connectivity based k-hop clustering in wireless networks. Telecommun. Syst. 2003, 22, 205–220. [Google Scholar] [CrossRef]
  6. Tree, S. Wireless sensor networks. Self 2014, 1, C0. [Google Scholar]
  7. Dai, S.; Tang, C.; Qiao, S.; Xu, K.; Li, H.; Zhu, J. Optimal multiple sink nodes deployment in wireless sensor networks based on gene expression programming. In Proceedings of the 2010 Second International Conference on Communication Software and Networks, Singapore, 26–28 February 2010; pp. 355–359. [Google Scholar]
  8. Ji, Y.; Yang, H.; Zhang, Y.; Zhong, W. Location optimization model of regional express distribution center. Procedia-Soc. Behav. Sci. 2013, 96, 1008–1013. [Google Scholar] [CrossRef] [Green Version]
  9. Gaspers, S.; Liedloff, M. A branch-and-reduce algorithm for finding a minimum independent dominating set in graphs. In International Workshop on Graph-Theoretic Concepts in Computer Science; Springer: Berlin, Germany, 2006; pp. 78–89. [Google Scholar]
  10. Wang, Y.; Li, R.; Zhou, Y.; Yin, M. A path cost-based GRASP for minimum independent dominating set problem. Neural Comput. Appl. 2017, 28, 143–151. [Google Scholar] [CrossRef]
  11. Wang, Y.; Chen, J.; Sun, H.; Yin, M. A memetic algorithm for minimum independent dominating set problem. Neural Comput. Appl. 2018, 30, 2519–2529. [Google Scholar] [CrossRef]
  12. Davidson, P.P.; Blum, C.; Lozano, J.A. The weighted independent domination problem: Integer linear programming models and metaheuristic approaches. Eur. J. Oper. Res. 2018, 265, 860–871. [Google Scholar] [CrossRef]
  13. Corominas, G.R.; Blum, C.; Blesa, M.J. A biased random key genetic algorithm for the weighted independent domination problem. In Proceedings of the Genetic and Evolutionary Computation Conference Companion, Prague, Czech Republic, 13–17 July 2019; pp. 2052–2055. [Google Scholar]
  14. Wang, Y.; Pan, S.; Li, C.; Yin, M. A local search algorithm with reinforcement learning based repair procedure for minimum weight independent dominating set. Inf. Sci. 2020, 512, 533–548. [Google Scholar] [CrossRef]
  15. Moscato, P.; Norman, M.G. A memetic approach for the traveling salesman problem implementation of a computational ecology for combinatorial optimization on message-passing systems. Parallel Comput. Transput. Appl. 1992, 1, 177–186. [Google Scholar]
  16. Wang, H.; Wang, D.; Yang, S. A memetic algorithm with adaptive hill climbing strategy for dynamic optimization problems. Soft Comput. 2009, 13, 763–780. [Google Scholar] [CrossRef]
  17. Zhou, Y.; Qiu, C.; Wang, Y.; Fan, M.; Yin, M. An improved memetic algorithm for the partial vertex cover problem. IEEE Access 2019, 7, 17389–17402. [Google Scholar] [CrossRef]
  18. Lü, Z.; Hao, J.K. A memetic algorithm for graph coloring. Eur. J. Oper. Res. 2010, 203, 241–250. [Google Scholar] [CrossRef] [Green Version]
  19. Tavakkoli-Moghaddam, R.; Saremi, A.; Ziaee, M. A memetic algorithm for a vehicle routing problem with backhauls. Appl. Math. Comput. 2006, 181, 1049–1060. [Google Scholar] [CrossRef]
  20. Wang, Y.; Cai, S.; Yin, M. Local search for minimum weight dominating set with two-level configuration checking and frequency based scoring function. J. Artif. Intell. Res. 2017, 58, 267–295. [Google Scholar] [CrossRef]
  21. Dawei, L.; Li, W.; Mengguang, W. Genetic algorithm and tabu search: A hybrid strategy. J. Syst. Eng. 1998, 13, 28–34. [Google Scholar]
  22. Glover, F.W.; Kochenberger, G.A. Handbook of Metaheuristics; Springer Science & Business Media: Berlin, Germany, 2006; Volume 57. [Google Scholar]
  23. Johnson, D.S. Cliques, coloring, and satisfiability: Second DIMACS implementation challenge. DIMACS Ser. Discret. Math. Theor. Comput. Sci. 1993, 26, 11–13. [Google Scholar]
  24. Xu, K.; Boussemart, F.e.e.; Hemery, F.; Lecoutre, C. A simple model to generate hard satisfiable instances. In Proceedings of the 19th International Joint Conference on Artificial Intelligence, Jeju Island, Korea, 11–13 October 2005; pp. 337–342. [Google Scholar]
  25. Brezočnik, L.; Fister, I.; Podgorelec, V. Swarm Intelligence Algorithms for Feature Selection: A Review. Appl. Sci. 2018, 8, 1521. [Google Scholar] [CrossRef] [Green Version]
  26. Zhao, X.; Wang, C.; Su, J.; Wang, J. Research and Application Based on the Swarm Intelligence Algorithm and Artificial Intelligence for Wind Farm Decision System. Renew. Energy 2018, 134, 681–697. [Google Scholar] [CrossRef]
  27. Slowik, A.; Kwasnicka, H. Nature Inspired Methods and Their Industry Applications - Swarm Intelligence Algorithms. IEEE Trans. Ind. Inform. 2018, 14, 1004–1015. [Google Scholar] [CrossRef]
  28. Anandakumar, H.; Umamaheswari, K. A bio-inspired swarm intelligence technique for social aware cognitive radio handovers. Comput. Electr. Eng. 2017, 71, 925–937. [Google Scholar] [CrossRef]
  29. Dulebenets, M.A. A Comprehensive Evaluation of Weak and Strong Mutation Mechanisms in Evolutionary Algorithms for Truck Scheduling at Cross-Docking Terminals. IEEE Access 2018, 6, 65635–65650. [Google Scholar] [CrossRef]
  30. Dulebenets, M.A. A Delayed Start Parallel Evolutionary Algorithm for just-in-time truck scheduling at a cross-docking facility. Int. J. Prod. Econ. 2019, 212, 236–258. [Google Scholar] [CrossRef]
  31. Cowling, P.; Kendall, G.; Soubeiga, E. A hyperheuristic approach to scheduling a sales summit. In Practice and Theory of Automated Timetabling III, Proceedings of the International Conference on the Practice and Theory of Automated Timetabling, Konstanz, Germany, 16–18 August 2000; Springer: Berlin, Germany, 2000; pp. 176–190. [Google Scholar]
  32. Pessoa, L.S.; Resende, M.G.C.; Ribeiro, C.C. A hybrid Lagrangean heuristic with GRASP and path-relinking for set k-covering. Comput. Oper. Res. 2013, 40, 3132–3146. [Google Scholar] [CrossRef] [Green Version]
  33. Resendel, M.G.; Ribeiro, C.C. GRASP with path-relinking: Recent advances and applications. In Metaheuristics: Progress as Real Problem Solvers; Springer: Berlin, Germany, 2005; pp. 29–63. [Google Scholar]
  34. Resende, M.G.; Ribeiro, C.C. Greedy randomized adaptive search procedures: Advances and applications. Handbook Metaheuristics 2010, 146, 281–317. [Google Scholar]
  35. Shogan, A.W. Semi-greedy heuristics: An empirical study. Oper. Res. Lett. 1987, 6, 107–114. [Google Scholar]
  36. Hao, J.K. Memetic algorithms in discrete optimization. In Handbook of Memetic Algorithms; Springer: Berlin/Heidelberg, Germany, 2012; pp. 73–94. [Google Scholar]
  37. Wang, Y.; Li, C.; Yin, M. A two phase removing algorithm for minimum independent dominating set problem. Appl. Soft Comput. 2020, 88, 105949. [Google Scholar] [CrossRef]
  38. Cai, S.; Li, Y.; Hou, W.; Wang, H. Towards faster local search for minimum weight vertex cover on massive graphs. Inf. Sci. 2019, 471, 64–79. [Google Scholar] [CrossRef]
  39. Wang, Y.; Cai, S.; Chen, J.; Yin, M. SCCWalk: An efficient local search algorithm and its improvements for maximum weight clique problem. Artif. Intell. 2020, 280, 103230. [Google Scholar] [CrossRef]
  40. Cai, S.; Su, K.; Luo, C.; Sattar, A. NuMVC: An efficient local search algorithm for minimum vertex cover. J. Artif. Intell. Res. 2013, 46, 687–716. [Google Scholar] [CrossRef] [Green Version]
  41. López-Ibá nez, M.; Dubois-Lacoste, J.; Cáceres, L.P.; Birattari, M.; Stützle, T. The irace package: Iterated racing for automatic algorithm configuration. Oper. Res. Perspect. 2016, 3, 43–58. [Google Scholar] [CrossRef]
  42. Aiex, R.M.; Resende, M.G.C.; Ribeiro, C.C. TTT plots: A perl program to create time-to-target plots. Optim. Lett. 2007, 1, 355–366. [Google Scholar] [CrossRef]
  43. Abdelmaguid, T.F. An Efficient Mixed Integer Linear Programming Model for the Minimum Spanning Tree Problem. Mathematics 2018, 6, 183. [Google Scholar] [CrossRef] [Green Version]
  44. Yuan, F.; Li, C.; Gao, X.; Yin, M.; Wang, Y. A novel hybrid algorithm for minimum total dominating set problem. Mathematics 2019, 7, 222. [Google Scholar] [CrossRef] [Green Version]
Figure 1. An illustration of the relation between four IDS related problems. Given a graph G = ( V , E ) where V = { A , B , C , D , E } : (a) assuming that the weight values of all vertices is 1, then { A , E } is one MIDS solution of this given graph; (b) assuming each vertex has weight value such that w ( A ) = 1 , w ( B ) = 2 , w ( C ) = 2 , w ( D ) = 3 , w ( E ) = 4 and each edge has a weight value such that w ( e A B ) = 5 , w ( e A C ) = 3 , w ( e A D ) = 4 , w ( e B D ) = 1 , w ( e B E ) = 3 , then the one MWIDS solution is { B , C } and its total weight is 11; (c) if the weight value of each vertex has still followed by (b) and each edge’s weight is 0, then the MWVIDS solution is { B , C } with the total weight value of 4; and (d) when only considering the weight of edges, the solution MWEIDS value is { B , C } and the sum of its weight value is 7.
Figure 1. An illustration of the relation between four IDS related problems. Given a graph G = ( V , E ) where V = { A , B , C , D , E } : (a) assuming that the weight values of all vertices is 1, then { A , E } is one MIDS solution of this given graph; (b) assuming each vertex has weight value such that w ( A ) = 1 , w ( B ) = 2 , w ( C ) = 2 , w ( D ) = 3 , w ( E ) = 4 and each edge has a weight value such that w ( e A B ) = 5 , w ( e A C ) = 3 , w ( e A D ) = 4 , w ( e B D ) = 1 , w ( e B E ) = 3 , then the one MWIDS solution is { B , C } and its total weight is 11; (c) if the weight value of each vertex has still followed by (b) and each edge’s weight is 0, then the MWVIDS solution is { B , C } with the total weight value of 4; and (d) when only considering the weight of edges, the solution MWEIDS value is { B , C } and the sum of its weight value is 7.
Mathematics 08 01155 g001
Figure 2. Time-to-target plot comparing MSSAS with MSSAS1 and MSSAS2 on instance C125.9 and its target 512.
Figure 2. Time-to-target plot comparing MSSAS with MSSAS1 and MSSAS2 on instance C125.9 and its target 512.
Mathematics 08 01155 g002
Figure 3. Time-to-target plot comparing MSSAS with MSSAS1 and MSSAS2 on instance frb30-15-1 and its target 500.
Figure 3. Time-to-target plot comparing MSSAS with MSSAS1 and MSSAS2 on instance frb30-15-1 and its target 500.
Mathematics 08 01155 g003
Table 1. The parameter settings of our proposed algorithm.
Table 1. The parameter settings of our proposed algorithm.
ParameterDescriptionRange of ValuesFinal Value
α the parameter of Construct()(0.7, 0.8, 0.9, 0.95)0.8
β 1 the parameter of PDO()(60, 70, 80)80
β 2 the parameter of PDO()(2, 5, 15)5
i n i t _ n o i m p r o _ i t e r the parameter of C_LS()(500, 1000, 1500)1000
n o i m p r o _ i t e r the parameter of C_LS()(2000, 5000, 50,000, 70,000)50,000
Table 2. Experimental results of CPLEX, CC 2 FS and MSSAS I.
Table 2. Experimental results of CPLEX, CC 2 FS and MSSAS I.
InstanceCPLEXCC 2 FSMSSAS
UBMINAVGMINAVG
brock200_2871831838787
brock200_4198235235198198.3
brock400_2200587587200235.1
brock400_4162481487162181.5
brock800_2140156156126131.9
brock800_4852002008586.2
C1000.9102624072407743915.8
C125.9512841841512512.2
C2000.51141551555357.6
C2000.9137314891489718844.4
C250.948412741274484528.9
C4000.51273333334556.1
C500.95526901068.6540592.2
c-fat200-1226226226226226
c-fat200-25761615757
c-fat200-51010101010
c-fat500-1524531531524534
c-fat500-2262266266262262
c-fat500-52020202020
DSJC1000.54880804848.1
DSJC500.57492927474
gen200_p0.9_4474017311731740838.3
gen200_p0.9_5585813401340858929.2
gen400_p0.9_5558514561456585667.7
gen400_p0.9_6573213281328713896.4
gen400_p0.9_75875154615468281103.5
hamming10-4268465473.5197260.2
hamming6-2402553557.9402402
hamming6-4351341343535
hamming8-2223238763985.222322764.5
hamming8-4118145145118118
Table 3. Experimental results of CPLEX, CC 2 FS and MSSAS II.
Table 3. Experimental results of CPLEX, CC 2 FS and MSSAS II.
InstanceCPLEXCC 2 FSMSSAS
UBMINAVGMINAVG
johnson16-2-4380380380380380
johnson32-2-4698732732698710
johnson8-2-45454545454
johnson8-4-4213252252213213.2
keller4224337337224224.9
keller5283414414283301.6
keller62038808824.2418534.4
MANN_a2740516031603405405
MANN_a451080134541415410801254.3
MANN_a8134026916069160340211284
MANN_a95454545454
p_hat1500-155415521552382472.8
p_hat1500-232411951195315519
p_hat1500-33035353030
p_hat300-131410141014314366.9
p_hat300-2164569569164199.2
p_hat300-32941412929
p_hat700-143814681468406517.1
p_hat700-2255669669230392.8
p_hat700-33358583333
san10001616161616
san200_0.7_1207219219207216.6
san200_0.7_2932182189393
san200_0.9_174620792079746766.6
san200_0.9_287324562456873977.7
san200_0.9_3489489489489489
san400_0.5_13030303030
san400_0.7_1138301301138139.4
san400_0.7_2126206206126167.4
san400_0.7_39898989898.7
Table 4. Experimental results of CPLEX, CC 2 FS and MSSAS III.
Table 4. Experimental results of CPLEX, CC 2 FS and MSSAS III.
InstanceCPLEXCC 2 FSMSSAS
UBMINAVGMINAVG
frb30-15-1517804804490504.3
frb30-15-2534769769464510.2
frb30-15-354311401140543620.8
frb30-15-457112091209559588.7
frb30-15-547410881088474553.9
frb35-17-177211781178650716.5
frb35-17-282811701170748845.3
frb35-17-380213111311747810.4
frb35-17-480111941194723795.9
frb35-17-579712441244724778.2
frb40-19-184913441344814886.1
frb40-19-290410291029818877.3
frb40-19-385913631363810865.5
frb40-19-489614131456.2833883.6
frb40-19-584211961196781857.8
frb45-21-1105913311331872949.6
frb45-21-291914301430777903.7
frb45-21-3103817541754928988.6
frb45-21-41046169216929481029.5
frb45-21-594314341434847927.3
frb50-23-110871903190310081090.8
frb50-23-2129218311934.611511218.2
frb50-23-3112814161416903975.2
frb50-23-410911795179510021078.6
frb50-23-512061786178610241138.8
frb53-24-11153214321439891123.6
frb53-24-21050161416149651044.8
frb53-24-398114291429878969.5
frb53-24-411441605160510371131.5
frb53-24-51128160016009811049.6
frb56-25-114451947194710571191.8
frb56-25-216101953195311191211.9
frb56-25-31207155115519971078.5
frb56-25-413541549154910571177.5
frb56-25-51499160616069311009.1
frb59-26-114672016201612261365.8
frb59-26-214161704170410711179.4
frb59-26-314371902190211701266.3
frb59-26-415722174217411651275.7
frb59-26-517601897189711171203.4
frb100-4057882959295918052057.4

Share and Cite

MDPI and ACS Style

Zhou, Y.; Li, J.; Liu, Y.; Lv, S.; Lai, Y.; Wang, J. Improved Memetic Algorithm for Solving the Minimum Weight Vertex Independent Dominating Set. Mathematics 2020, 8, 1155. https://doi.org/10.3390/math8071155

AMA Style

Zhou Y, Li J, Liu Y, Lv S, Lai Y, Wang J. Improved Memetic Algorithm for Solving the Minimum Weight Vertex Independent Dominating Set. Mathematics. 2020; 8(7):1155. https://doi.org/10.3390/math8071155

Chicago/Turabian Style

Zhou, Yupeng, Jinshu Li, Yang Liu, Shuai Lv, Yong Lai, and Jianan Wang. 2020. "Improved Memetic Algorithm for Solving the Minimum Weight Vertex Independent Dominating Set" Mathematics 8, no. 7: 1155. https://doi.org/10.3390/math8071155

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop