each i,j ∈ V : (i , j) ∉ E, where E is the edge set of
graph. The way in which the problem is encoded to
use genetic algorithm, is given in the next section.
In solving the maximum independent set
problem, we also have a solution for another graph
problem: The minimum vertex cover problem (exact
definition of this problem can be found in West
(2001), for example). The close relationship between
these problems is shown by the following Lemma
(see e.g. Papadimitriou and Steiglitz (1982)):
Lemma 2. For any graph G = (V , E) and V' ⊆ V,
the following statements are equivalent:
● V' is the maximum independent set in G.
● V – V' is the minimum vertex cover of G.
Consequently, one can obtain a solution of the
minimum vertex cover problem by taking the
complement of the solution to the maximum
independent set problem, (Hifi, 1997).
2 OUR HYBRID GENETIC
ALGORITHM
In this section, we will present our algorithm. We
just modified the basic GA described in previous
section in such a way that some heuristics is
considered. Our modified GA for MISP is as
follows:
2.1 Representation and Fitness
Function
The first step in designing a genetic algorithm for a
particular problem is to develop a suitable
representation scheme, that's, a way to represent
individuals in the GA population. The standard GA
0-1 binary representation (see e.g. Chu and Beasley
(2004) or Lio, Sakamato and Shimamoto (1997)), is
an obvious choice for MISP. Hence, we use an n-bit
binary string (called chromosome), where n is the
number of vertices in the underlying graph for
MISP. In this representation, a value 0 or 1 at the j
th
bit (called gene in GA literature) implies that j
th
vertex of graph is excluded or included in this
solution, respectively.
For unweighted MISP, there is a simple fitness
function that is used. As usual, (see e.g. Chu and
Beasley (2004) or Khuri and Bäck (1994)), we
define the fitness value of an individual, say S, in
GA population as the number of vertices in the
solution, that's:
∑
=
=
n
j
jSSf
1
][)( (1)
2.2 Parent Selection
Parent selection is the task of giving reproductive
opportunities to some or all individuals in the
population. Typically, in a GA we need to generate
two parents (according to some policies) who have
one or more children. There are many parent
selection methods in the GA literature, such as
roulette wheel (Goldberg, 1989), tournament
selection method (Chu and Beasley, 2004), steady
state selection and so on. Here, we used a steady
state like selection method, since in successive
generations only 50 % of the current population
changes.
2.3 Heuristic Independent Crossover
and Mutation Operators
Our heuristic crossover operator (HIX), which plays
an important role in our algorithm, can be divided in
two phases, as follows: suppose that two parents P
1
and P
2
are selected for crossover. At first phase, we
group up all vertices in either P
1
or P
2
into a
temporary set, say M, and sort them in increasing
order by their degrees in underlying graph. At
second phase, we generate our offspring by a simple
greedy approach as follows: successively selecting
lowest degree vertices first from M and setting
corresponding position to 1 in offspring until the
selected vertex can not add to the child solution. In
fact, selecting lower degree vertices first gives more
chance to other vertices to be included into the
solution, so improving the offspring reproductivity
in future generations. As we will see, this simple
greedy algorithm speeds up the convergence rate of
solutions to optimum solution. Figure 2 outlines the
Algorithm HIX.
2.4 Repair Operator
Clearly, the child solution produced by the mutation
operator may not be feasible, because the selected
vertices after mutation may not constitute an
independent set in graph. In order to guarantee
feasibility, a heuristic, called repair operator, based
on a simple greedy algorithm is applied. Since its
greedy approach activity is mostly like one that used
in crossover operator, along some subtle differences,
we don't mention it in a separate code fragment.
Instead, we give comments for differences.
A NEW HYBRID GENETIC ALGORITHM FOR MAXIMUM INDEPENDENT SET PROBLEM
315