solving traveling salesman problem in the adleman–lipton model

4
Solving traveling salesman problem in the Adleman–Lipton model Zhaocai Wang a,, Yiming Zhang b , Weihua Zhou c , Haifeng Liu a a College of Information, Shanghai Ocean University, Shanghai 201306, PR China b School of Economics and Management, Yancheng Institute of Technology, Yancheng 224051, PR China c The Central Laboratory, Shandong Vocational College of Science and Technology, Weifang 261053, PR China article info Keywords: DNA computing The traveling salesman problem Adleman–Lipton model NP-complete problem abstract The traveling salesman problem is to find a minimum cost (weight) path for a given set of cities (vertices) and roads (edges). The path must start at a specified city and end there after going through all the other given cites only once. It is a classical NP-complete problem in graph theory. In this paper, we consider a DNA procedure for solving the traveling sales- man problem in the Adleman–Lipton model. The procedure works in OðnÞ steps for the traveling salesman of an edge-weighted graph with n vertices. Crown Copyright Ó 2012 Published by Elsevier Inc. All rights reserved. 1. Introduction DNA computing is a newly emerging interdisciplinary science that uses DNA molecular biotechnologies to solve problems in computer science or mathematics. DNA computing can execute billions of operations simultaneously. DNA also provides a huge storage capacity since they encode information on the molecular scale. As the first work for DNA computing, Adleman [1] presented an idea of solving the Hamiltonian path problem of size n in OðnÞ steps using DNA molecules. Lipton [2] dem- onstrated that Adleman’s experiment could be used to determine the NP-complete satisfiability problem. In recent years, lots of papers have occurred for designing DNA procedures and algorithms to solve various NP-complete problems [3–9]. In this paper, a DNA procedure is introduced for figuring out solutions of the traveling salesman problem: for an edge- weighted graph G ¼ðV ; EÞ find a minimum cost (weight) path. The path must begin at a specified city (vertice) and end there after going through all the other given cites (vertices) only once. For instance, the edge-weighted graph G in Fig. 1 defines such a problem. We assume that the starting and ending vertice is v 1 . It is not difficult to find that the path v 1 ! v 7 ! v 6 ! v 5 ! v 4 ! v 3 ! v 2 ! v 1 with total weight 21 is a solution to the traveling salesman problem for graph G in Fig. 1. The rest of this paper is organized as follows. In Section 2, the Adleman–Lipton model is introduced in detail. Section 3 introduces a DNA algorithm for solving the traveling salesman problem and the complexity of the proposed algorithm is de- scribed. We give conclusions in Section 4. 2. The Adleman–Lipton model The DNA operations proposed by Aldeman [1] and Lipton [2] are described below. These operations will be used for fig- uring out solutions of the traveling salesman problem in this paper. The Adleman–Lipton model: A (test) tube is a set of mol- ecules of DNA (i.e., a multi-set of finite strings over the alphabet {A, C, G, T}). Given a tube, one can perform the following operations [9]: Merge, Copy, Detect, Separation, Selection, Cleavage, Annealing, Denaturation, Discard and Read. Since these 0096-3003/$ - see front matter Crown Copyright Ó 2012 Published by Elsevier Inc. All rights reserved. http://dx.doi.org/10.1016/j.amc.2012.08.073 Corresponding author. E-mail address: [email protected] (Z. Wang). Applied Mathematics and Computation 219 (2012) 2267–2270 Contents lists available at SciVerse ScienceDirect Applied Mathematics and Computation journal homepage: www.elsevier.com/locate/amc

Upload: zhaocai-wang

Post on 23-Nov-2016

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Solving traveling salesman problem in the Adleman–Lipton model

Applied Mathematics and Computation 219 (2012) 2267–2270

Contents lists available at SciVerse ScienceDirect

Applied Mathematics and Computation

journal homepage: www.elsevier .com/ locate/amc

Solving traveling salesman problem in the Adleman–Lipton model

Zhaocai Wang a,⇑, Yiming Zhang b, Weihua Zhou c, Haifeng Liu a

a College of Information, Shanghai Ocean University, Shanghai 201306, PR Chinab School of Economics and Management, Yancheng Institute of Technology, Yancheng 224051, PR Chinac The Central Laboratory, Shandong Vocational College of Science and Technology, Weifang 261053, PR China

a r t i c l e i n f o

Keywords:DNA computingThe traveling salesman problemAdleman–Lipton modelNP-complete problem

0096-3003/$ - see front matter Crown Copyright �http://dx.doi.org/10.1016/j.amc.2012.08.073

⇑ Corresponding author.E-mail address: [email protected] (Z. Wang).

a b s t r a c t

The traveling salesman problem is to find a minimum cost (weight) path for a given set ofcities (vertices) and roads (edges). The path must start at a specified city and end thereafter going through all the other given cites only once. It is a classical NP-complete problemin graph theory. In this paper, we consider a DNA procedure for solving the traveling sales-man problem in the Adleman–Lipton model. The procedure works in OðnÞ steps for thetraveling salesman of an edge-weighted graph with n vertices.

Crown Copyright � 2012 Published by Elsevier Inc. All rights reserved.

1. Introduction

DNA computing is a newly emerging interdisciplinary science that uses DNA molecular biotechnologies to solve problemsin computer science or mathematics. DNA computing can execute billions of operations simultaneously. DNA also provides ahuge storage capacity since they encode information on the molecular scale. As the first work for DNA computing, Adleman[1] presented an idea of solving the Hamiltonian path problem of size n in OðnÞ steps using DNA molecules. Lipton [2] dem-onstrated that Adleman’s experiment could be used to determine the NP-complete satisfiability problem. In recent years, lotsof papers have occurred for designing DNA procedures and algorithms to solve various NP-complete problems [3–9].

In this paper, a DNA procedure is introduced for figuring out solutions of the traveling salesman problem: for an edge-weighted graph G ¼ ðV ; EÞ find a minimum cost (weight) path. The path must begin at a specified city (vertice) and end thereafter going through all the other given cites (vertices) only once. For instance, the edge-weighted graph G in Fig. 1 definessuch a problem. We assume that the starting and ending vertice is v1. It is not difficult to find that the pathv1 ! v7 ! v6 ! v5 ! v4 ! v3 ! v2 ! v1 with total weight 21 is a solution to the traveling salesman problem forgraph G in Fig. 1.

The rest of this paper is organized as follows. In Section 2, the Adleman–Lipton model is introduced in detail. Section 3introduces a DNA algorithm for solving the traveling salesman problem and the complexity of the proposed algorithm is de-scribed. We give conclusions in Section 4.

2. The Adleman–Lipton model

The DNA operations proposed by Aldeman [1] and Lipton [2] are described below. These operations will be used for fig-uring out solutions of the traveling salesman problem in this paper. The Adleman–Lipton model: A (test) tube is a set of mol-ecules of DNA (i.e., a multi-set of finite strings over the alphabet {A,C,G,T}). Given a tube, one can perform the followingoperations [9]: Merge, Copy, Detect, Separation, Selection, Cleavage, Annealing, Denaturation, Discard and Read. Since these

2012 Published by Elsevier Inc. All rights reserved.

Page 2: Solving traveling salesman problem in the Adleman–Lipton model

Fig. 1. An edge-weighted graph G with 7 vertices.

2268 Z. Wang et al. / Applied Mathematics and Computation 219 (2012) 2267–2270

10 manipulations are implemented with a constant number of biological steps for DNA strands [3], we assume that the com-plexity of each manipulation is Oð1Þ steps.

3. DNA algorithm for the traveling salesman problem

Let G ¼ ðV ; EÞ be a edge-weighted graph with the set of vertices V ¼ fvkjk ¼ 1;2; . . . ;ng and the set of edgesE ¼ fei;jj1 6 i; j 6 n; i – jg. Note that both ei;j and ej;i are in E if the vertices v i and v j are connected by an edge. Without lossof generality, we assume that v1 is the starting and ending vertex. Let jEj ¼ s, Then, s 6 1

2 nðnþ 1Þ.In the following, we use the symbols #;Ak;Bkðk ¼ 1;2 . . . ;nÞ and wi;j to denote distinct DNA singled strands for which

jj#jj ¼ jjAkjj ¼ jjBkjj, where jj � jj denotes the length of the DNA singled strand. The symbols AkBkðk ¼ 2;3; . . . ;nÞ denote thevertex vk. Meanwhile the symbols #A1B1;A1B1# denote the starting and ending vertex v1 which the symbol # is the signalof starting and ending. Suppose that all weights in the given graph are commensurable. The DNA singled strands wi;j are usedto denote the weights ki;j on the edges ei;j 2 E with jjwi;jjj ¼ ki;jw where w is a constant, e.g., take w ¼ 5 mer in the followingdiscussion, Then, the jjwi;jjj ¼ 5ki;j. Let m ¼maxei;j2E5ki;j and jj#jj ¼ jjAkjj ¼ jjBkjj ¼ n �m ¼ t. For example, for the graph inFig. 1. We can let m ¼maxf5 � 3;5 � 5;5 � 7;5 � 9;5 � 10g ¼ 50 mer, Then jj#jj ¼ jjAkjj ¼ jjBkjj ¼ n �m ¼ t ¼ 7 � 50 ¼ 350mer. Let

P ¼ fwi;j;#A1B1;A1B1#;AkBkjei;j 2 E; k ¼ 2;3; . . . ;ng;Q ¼ f#;A1;B1;Biwi;jAjjei;j 2 E;1 6 i; j 6 n; i – jg:

We design the following algorithm to solve the traveling salesman problem and give the corresponding DNA operationsas follows:

(1) We choose all possible paths, which start at v1 and end at v1.

(1-1) MergeðP;QÞ;(1-2) AnnealingðPÞ;(1-3) DenaturationðPÞ;(1-4) SeparationðP; f#A1B1g; TtmpÞ;(1-5) DiscardðPÞ;(1-6) SeparationðTtmp; fA1B1#g; PÞ;After the above six steps of manipulations, the singled strands in tube P will encode all paths which start and end at v1.For example, for the graph in Fig. 1, we have singled strands: #A1B1w1;2A2B2w2;7A7B7w7;6 A6B6w6;4A4B4w4;3A3B3w3;1

A1B1# 2 P which correspond to the path v1 ! v2 ! v7 ! v6 ! v4 ! v3 ! v1 respectively. This operation can be fin-ished in Oð1Þ steps since each manipulation above works in Oð1Þ steps.

(2) We choose all possible paths which pass all the other vertices (cities) at least once.

For k ¼ 2 to k ¼ n.(2-1) SeparationðP; fAkBkg; TÞ;(2-2) DiscardðPÞ;(2-3) MergeðT; PÞ;End forIn the above operations, we get the strands that denote starting and ending specified vertex v1, synchronously goingthrough all the other vertices at least once. For example, for the graph in Fig. 1, we have singled strands:
Page 3: Solving traveling salesman problem in the Adleman–Lipton model

Z. Wang et al. / Applied Mathematics and Computation 219 (2012) 2267–2270 2269

#A1B1w1;2A2B2w2;7A7B7w7;6A6B6w6;5A5B5w5;4A4B4w4;3 A3B3w3;2A2B2w2;1A1B1# 2 P which denote the pathv1 ! v2 ! v7 ! v6 ! v5 ! v4 ! v3 ! v2 ! v1. Of course, it cannot be the optimum solution because thepath passes the vertex v2 twice. In the above operation we use a ‘‘For’’ clause. Thus this operation can be finishedin OðnÞ steps since each single manipulation above works in Oð1Þ steps.

(3) Each singled strand in tube P denotes the path starting and ending at v1, synchronously passing the other n� 1 ver-tices at least once. While the traveling salesman problem requires going through all the other given vertices only once.So first of all, we set the length of DNA stands as following: m ¼maxei;j2E5ki;j and jj#jj ¼ jjAkjj ¼ jjBkjj ¼ nm ¼ t. Thelength of Strands AkBk denoting the vertex vk is 2t. The length of the strands # denoting the starting and ending signalis t. Consequently the length of DNA strands which denote starting and ending vertex v1 then passing the other n� 1vertices one time in tube P must be between ð2nþ 4Þt and ð2nþ 5Þt. We can get the strands denoting the optimumsolution in this length range. This is done by the following manipulations.

For k ¼ 1 to k ¼ t.(3-1) SelectionðP; ð2nþ 4Þt þ k; TÞ;(3-2) If DetectðTÞ is ‘‘yes’’, then End For and the minimum cost (weight) path is obtained, else continue the circulation.In the above operation we use a ‘‘For’’ clause. Thus If k is independent of n, then this operation can be finished in OðnÞsteps since each single manipulation above works in Oð1Þ steps.End for

(4) Finally the Read operation is applied to giving the exact edges in the traveling salesman problem. For example, for thegraph in Fig. 1, the minimum cost (weight) paths are v1 ! v2 ! v3 ! v4 ! v5 ! v6 ! v7 ! v1 andv1 ! v7 ! v6 ! v5 ! v4 ! v3 ! v2 ! v1 with total weights 21.

(4-1) readðTÞ;The following theorem tells that the algorithm proposed above really can get solutions of the traveling salesman prob-lem in OðnÞ steps using DNA molecules.

Theorem 1. Suppose m is a limit quantity having nothing to do with n, So m ¼ Oð1Þ. We can get the solution of traveling salesmanproblem with n vertices in OðnÞ steps.

Proof. After the operations of second step, all the singled strands in tube P denote starting and ending vertex v1, synchro-nously passing the other vertices at least one time. We reasonably design the length of #;Ak;Bk and wi;j, For

jjwi;jjj ¼ 5 � ki;j ðki;j is the weights of edge ei;j 2 EÞ;m ¼maxf5 � ki;jg ¼maxfjjwi;jjjg;jj#jj ¼ jjAkjj ¼ jjBkjj ¼ n �m ¼ t:

So we define S as the strands which denote starting and ending vertex v1, then going through the other n� 1 vertices onlyonce. Then, S can be described:

#A1B1w1;d2Ad2

Bd2� � �Adn Bdn wdn ;1A1B1#:

So

jjSjj ¼ jj#jj þ jjA1jj þ jjB1jj þ jjw1;d2jj þ � � � þ jjwdn ;1jj þ jjA1jj þ jjB1jj þ jj#jj

¼ jj#jj þ jjA1jj þ jjB1jj þX

edi ;dj2E

jjwdi ;djjj þ

Xn

dk¼2

jjAdkBdkjj þ jjA1jj þ jjB1jj þ jj#jj

¼ t þ t þ t þX

edi ;dj2E

jjwdi ;djjj þ 2ðn� 1Þt þ t þ t þ t

¼ ð2nþ 4Þt þX

edi ;dj2E

jjwdi ;djjj

*0 6X

edi ;dj2E

jjwdi ;djjj 6 t

)ð2nþ 4Þt 6 jjSjj 6 ð2nþ 5Þt:

The length of strands which denote passing the other vertices more than once must be longer than ð2nþ 5Þt. So we canget the solution in step ð3Þ in appropriate length range. h

Besides, the manipulates of algorithm can be entirely finished in finite operations. Such as step (1), (4) in Oð1Þ, step (2) inOðnÞ, Simultaneity step (3) in OðtÞ. Because OðnÞ ¼ OðmnÞ and OðmÞ ¼ Oð1Þ, then OðtÞ ¼ OðnÞ. In conclusion, We can getthe solution of traveling salesman problem with n vertices in OðnÞ.

4. Conclusions

In this paper, we propose a procedure for the traveling salesman NP-complete problem in the Adleman–Lipton model. Theprocedure works in OðnÞ steps for the traveling salesman problem of an edge-weighted graph with n vertices. All our results

Page 4: Solving traveling salesman problem in the Adleman–Lipton model

2270 Z. Wang et al. / Applied Mathematics and Computation 219 (2012) 2267–2270

in this paper are based on a theoretical model. However, the proposed procedure can be implemented practically since everyDNA manipulation used in this model has been already realized in lab level.

References

[1] L.M. Adleman, Molecular computation of solution to combinatorial problems, Science 266 (1994) 1021–1024.[2] R.J. Lipton, DNA solution of HARD computational problems, Science 268 (1995) 542–545.[3] A. Narayanan, S. Zorbalas, et al, DNA algorithms for computing shortest paths, in: J.R. Koza (Ed.), Proceedings of the Genetic Programming 1998, Morgan

Kaufmann, 1998, pp. 718–723.[4] F. Guarnieri, M. Fliss, C. Bancroft, Making DNA add, Science 273 (1996) 220–223.[5] H. Hug, R. Schuler, DNA-based parallel computation of simple arithmetic, in: Proceedings of the 7th International Meeting on DNA Based Computers,

2001, pp. 159–166.[6] S. Kamio, A. Takehara, A. Fujiwara, Procedures for computing the maximum with DNA strands, in: Humid R. Arabnia, Youngsong Mun (Eds.),

Proceedings of the International Conference on DNA Based Computers, 2003.[7] W.X. Li, D.M. Xiao, L. He, DNA ternary addition, Applied Mathematics and Computation 182 (2006) 977–986.[8] D.M. Xiao, W.X. Li, J. Yu, X.D. Zhang, Z.Z. Zhang, L. He, Procedures for a dynamical system on {0,1}n with DNA molecules, BioSystems 84 (2006) 207–216.[9] Z.C. Wang, D.M. Xiao, W.X. Li, L. He, A DNA procedure for solving the shortest path problem, Applied Mathematics and Computation 183 (2006) 79–84.