A DNA-Based Genetic Algorithm Implementation for ... - Springer Link

1 downloads 322 Views 315KB Size Report
out evolutionary computation using DNA, but only a few implementations have been presented. ... present a solution for t
A DNA-Based Genetic Algorithm Implementation for Graph Coloring Problem Xiaoming Liu1, Jianwei Yin1, Jung-Sing Jwo1, Zhilin Feng1,2, and Jinxiang Dong1 1

Department of Computer Science and Technology, Zhejiang University, HangZhou 310027, China 2 College of Zhijiang, Zhejiang University of Technology, Hangzhou 310024, China {liuxiaoming, zjuyjw, djx}@cs.zju.edu.cn

Abstract. This paper presents an implementation of Croitoru’s genetic algorithm for graph coloring problem, and some necessary modification and simplifying are made by using DNA operations. In this algorithm, each vertex and edge is encoded with a series of encodings incorporating position information, and the initial diverse candidate population is generated using POA. One crossover operator, two mutation operators, evaluation and selection operators are all implemented using basic operations on DNA. It is shown that the algorithm can be implemented with space complexity much decreased and time complexity O(mn2) to get a new generation, where n is the number of vertices and m is the number of edges. Moreover, borrowing ideas from the above implementation, an algorithm for Maximal Clique problem is also presented.

1 Introduction The graph coloring problem is, for a given graph G=(V,E), coloring the vertices with the property that for any pair vertices connected by an edge, they are colored differently, the minimum number of color required is called the chromatic number of G and is denoted by X(G). It is well known that it is NP-complete to decide whether for a given graph G and an integer k, there exists a k-coloring of G. There are many optimal methods for the problem, for example simulated annealing in [1] and genetic algorithm in [2]. In 1996 Amos et al. proposed a DNA algorithm to solve the 3-coloring problem based on a test tube [3]. In another approach, Bach et al. solving the 3-coloring problems through generating all subsets of vertices V whose size are less than n/3 [4]. Developing efficient DNA-based algorithms for solving NP-complete problems is one of the most important issues of DNA-based computing. Adleman [5] and many researchers have explored the possibility of solving NP-complete problems using DNA, but it is required to generate all the solution candidates for most algorithms, which means the quantity of DNA used grows exponentially with the size of problems. Thus, the size of instances that can be solved with these algorithms is quite limited. Several suggestions [4] have been proposed to reduce the amount of DNA to be used. Bach et al. [4] proposed methods for solving Clique and Independent Set, where solution candidates to the instance are generated by combining (in all possible D.S. Huang, X.-P. Zhang, G.-B. Huang (Eds.): ICIC 2005, Part II, LNCS 3645, pp. 99 – 108, 2005. © Springer-Verlag Berlin Heidelberg 2005

100

X. Liu et al.

combinations) solutions for its sub-problems. Cai et al.[6] proposed a surface-based method, and Sergio et al.[7] proposed an implementation of a random walk method for solving k-SAT problems with the space complexity O((2-2/k)n). Since the beginning of DNA computing concept was proposed, there have been calls [8] to consider carrying out evolutionary computation using DNA, but only a few implementations have been presented. In 1999 Chen et al. [9] proposed an implementation of genetic algorithm for Max-1 problems. Rose et al [10] proposed a genetic method for producing massively parallel, recombined gene libraries encoding for proteins. The purpose of this paper is to study a possible implementation of a genetic algorithm proposed by Croitoru et al [2]. for graph coloring problem. The paper is organized as follows. In section 2 we give a brief description of Croitoru’s algorithm. In section 3 we describe a DNA-based implementation of the algorithm. In section 4, we present a solution for the maximal clique problem. In section 5 we conclude the paper.

2 Brief Description of Croitoru’s Algorithm Let G=(V,E) be a graph with the vertices set V={1,2…n}. The set of all n! permutations on the set V is denoted by Sn. For an element v=v1…vi…vj…vn of Sn, if e=vivj, i

Suggest Documents