2020-06-13T02:02:46Zhttps:/www.ncbi.nlm.nih.gov/pmc/oai/oai.cgi
oai:pubmedcentral.nih.gov:70941602020-03-25pheelsevierpmc-open
J Theor Biol J. Theor. Biol Journal of Theoretical Biology 0022-5193 1095-8541 Published by Elsevier Ltd. PMC7094160 PMC7094160 7094160 20025888 S0022-5193(09)00579-7 10.1016/j.jtbi.2009.12.012 Article New method for global alignment of 2 DNA sequences by the tree data structure Qi Zhao-Hui zhqi_yh2004@yahoo.com.cn ⁎ Qi Xiao-Qin Liu Chen-Chen School of Computer and Information Engineering, Shijiazhuang Railway Institute, Shijiazhuang, Hebei 050043, People's Republic of China Corresponding author. zhqi_yh2004@yahoo.com.cn 16 12 2009 21 3 2010 16 12 2009 263 2 227 236 5 8 2009 4 12 2009 4 12 2009 Crown copyright © 2009 Published by Elsevier Ltd. All rights reserved. 2009 Since January 2020 Elsevier has created a COVID-19 resource centre with free information in English and Mandarin on the novel coronavirus COVID-19. The COVID-19 resource centre is hosted on Elsevier Connect, the company's public news and information website. Elsevier hereby grants permission to make all its COVID-19-related research that is available on the COVID-19 resource centre - including this research content - immediately available in PubMed Central and other publicly funded repositories, such as the WHO COVID database with rights for unrestricted research re-use and analyses in any form or by any means with acknowledgement of the original source. These permissions are granted for free by Elsevier for as long as the COVID-19 resource centre remains active.

We introduce a new approach to investigate problem of DNA sequence alignment. The method consists of three parts: (i) simple alignment algorithm, (ii) extension algorithm for largest common substring, (iii) graphical simple alignment tree (GSA tree). The approach firstly obtains a graphical representation of scores of DNA sequences by the scoring equation R0*R−S0*S−T0*(a+bk). Then a GSA tree is constructed to facilitate solving the problem for global alignment of 2 DNA sequences. Finally we give several practical examples to illustrate the utility and practicality of the approach.

Keywords Scoring curve Gaps Alignment tree Post-order traversal Global alignment
Introduction

The decoding of different genomes, in particular the human genomes has triggered a great deal of bioinformatics research. The research of sequence similarity to a known protein sequence or DNA sequence has been an important method to provide the first clues about the function of a newly sequenced gene. The research becomes increasingly useful in the analysis of newly sequenced genes as the sequence databases, such as DNA and protein databases, continue to grow in size. There are a number of standard schemes widely used to search for homologous sequences in nucleotide and protein databases to distinguish biologically significant relationships from chance similarities (Smith and Waterman, 1981; Waterman, 1984; Pearson and Lipman, 1988; Altschul et al., 1990, Altschul et al., 1997; Tatiana and Thomas, 1999). The dynamic programming algorithms (Smith and Waterman, 1981; Waterman, 1984) assign scores to insertions, deletions and replacement, and compute an alignment of two sequences. These algorithms are impractical for searching large database because of their computational requirements. Rapid heuristic algorithms (Pearson and Lipman, 1988; Altschul et al., 1990, Altschul et al., 1997) compare protein and DNA sequences much faster than the above methods. They are widely used for large database searches. However, a number of important scientific contexts involve the comparison of only two sequences and do not require a time-consuming database search. In order to meet these needs, many important tools for large database searches (Tatiana and Thomas, 1999; http://www.ebi.ac.uk/Tools/emboss/align/index.html; http://blast.ncbi.nlm.nih.gov/bl2seq/wblast2.cgi) are further developed to employ global alignment of 2 protein and nucleotide sequences. These methods can provide the global profile of similarity degree. Recently, many graphical methods have also been used to examine the global similarities/dissimilarities among the coding sequences of different species (Qi et al., 2007; Qi and Qi, 2007, Qi and Qi, 2009; Qi and Fan, 2007; Yao et al., 2006, Yao et al., 2008a, Yao et al., 2008b; Randić et al., 2003a, Randić et al., 2003b). Because of the advantages in visualization, graphical methods have become a powerful bioinformatics tool for the analysis of complicated biological systems, such as enzyme-catalyzed system (Chou et al., 1979; Chou, 1980; Chou and Forsen, 1980, Chou and Forsen, 1981; Chou and Liu, 1981; Myers and Palmer, 1985; Zhou and Deng, 1984; Chou, 1989, Chou, 1990; Kuzmic et al., 1992; Andraos, 2008), protein folding kinetics (Chou, 1990, Chou, 1993), condon usage (Chou and Zhang, 1992; Zhang and Chou, 1994), HIV reverse transcriptase inhibition mechanisms (see Althaus et al., 1993a, Althaus et al., 1993b, Althaus et al., 1993c, as well as a review article (Chou et al., 1994)), base frequency distribution in the anti-sense strands (Chou et al., 1996) and classifying organisms (Sorimachi and Okayasu, 2008; Okayasu and Sorimachi, 2009; Qi et al., 2009). Recently, the images of cellular automata were used to represent biological sequences (Xiao et al., 2005a), predict protein subcellular location (Xiao et al., 2006a), investigate HBV virus gene missense mutation (Xiao et al., 2005b) and HBV viral infections (Xiao et al., 2006b), predicting protein structural classes (Xiao et al., 2008) and G-protein-coupled receptor functional classes (Xiao et al., 2009), as well as analyze the fingerprint of SARS coronavirus (Wang et al., 2005; Gao et al., 2006).

In this paper, we suggest a heuristic approach to align a pair of DNA sequences with the tree data structure. Some graphical descriptions are also used to intuitively explain the scheme. The method consists of three parts: (i) simple alignment algorithm, (ii) extension algorithm for largest common substring, (iii) graphical simple alignment tree (GSA tree). Here, we firstly obtain a 2-dimension (2D) graphical curve by graphical representation of scores of DNA sequences. A good simple alignment of the DNA sequences is generated when the score of the scoring curve reaches its peak value. The 2D graphical curve can intuitively show the global change of simple alignment scores based on scoring matrix. Then the largest common substrings of the good simple alignment are found out. Because of the limit of the initial alignment reaching peak score, the largest common substrings of original two sequences may be split by the largest common substrings of the good simple alignment. In order to protect these common substrings from being split, an extension algorithm for the largest common substring is suggested. Then all largest common substrings are found out when the initial alignment reaches peak score. The process is repeatedly done until GSA tree comes into being. The tree can facilitate solving the problem for global alignment of 2 DNA sequences. At last, we give several practical examples to illustrate the utility and practicality of the approach.

Simple alignment algorithm and graphical representation of scores of DNA sequences based on scoring matrix The scoring equation based on scoring matrix

In bioinformatics, scoring matrix is also called as substitution matrix. As for protein sequences, the matrix is often based on observed substitution rates, derived from the substitution frequencies seen in multiple alignments of sequences. Every possible identity and substitution is assigned a score based on the observed frequencies in alignments of related proteins. Similarly, every possible identity and substitution in alignments of related DNA sequences is also assigned a score. However, the scoring matrix in alignment of DNA sequences is relatively simple and intuitional. Table 1 is a scoring matrix. An identity in scoring matrix is assigned a positive score R (R>0). A substitution is assigned a positive score S (S>0). But the score S must be subtracted from the total score of an alignment. For example, an alignment of two short DNA sequences ATGGTGCAACTGACT and ATGGTGCACTTGACT is the following:The score of alignment should be 13R−2S.

A usual scoring matrix.

ACGT
AR−S−S−S
C−SR−S−S
G−S−SR−S
T−S−S−SR

Another important problem for alignment is the treatment of gaps, i.e., spaces inserted to optimize the alignment score. A ‘gap open’ penalty is one that is the cost for the first space of each gap spaces. A ‘gap extension’ penalty is one that is the cost for one of each gap spaces except for the first space. Typically, the cost of extending a gap is set to be 5–10 times lower than the cost for opening a gap (http://www.ebi.ac.uk/Tools/emboss/align/index.html). There is one way to compute a penalty for a gap of n positions: gap opening penalty + (n−1)* gap extension penalty. Now, let parameter a be gap opening penalty and parameter b be gap extension penalty. And let parameter k be n−1. Then we have the scoring equation: R0*R−S0*S−T0*(a+bk), where R is the score of each match, and S is the score of each mismatch and a+bk is the score of each gap. The parameters R 0, S 0 and T 0 denote the total amount of matches, the total amount of mismatches and the total amount of gaps, respectively.

Simple alignment algorithm and graphical representation of scores of DNA sequences based on scoring matrix

There are two primary DNA sequences: G 1 (g1g2⋯gM) and G 2 (g1g2⋯gN), where M and N denote the length of G 1 and G 2, respectively. Fig. 1 shows the building steps of all possible simple alignments without spaces within G 1 and G 2. The gap formed by spaces lies in the hanging ends of the overlap. Step 1 of Fig. 1 gives the initial alignment that the last base of G 1 overlaps the first base of G 2. Then every time G 1 moves one base position along the direction of G 2. Step M+N−1 of Fig. 1 gives the last alignment that the first base of G 1 overlaps the last base of G 2. Every alignment has a score according to the scoring equation R0*R−S0*S−T0*(a+bk). Then we can obtain a serial of dots (x,y), where x denotes index of steps and y denotes the score value corresponding to x. When one connects adjacent dots with lines, then one obtains a zigzag like curve of definite geometrical shape. In Fig. 2 we illustrate the graphical score representation of simple alignments of sequences G 1 and G 2 (G 1, GGCCTCTGCCTAATCACACAGATCTAACAGGATTATTTC; G 2, GGCCTCT GCCTTATTACACAAATCTTAACAGGACTATTTC). The scoring equation is R0*R−S0*S−T0*(a+bk), where identity score R is 9, substitution score S is 1, gap opening penalty a is 15, and gap extension penalty b is 1.

The building steps of all possible alignments without spaces within G1 and G2.

The figure illustrates the graphical score representation of simple alignments of sequences G1 and G2. The scoring equation is ∑R−∑S−∑(a+bk), where identity score R is 9, substitution score S is 1, gap opening penalty a is 15, and gap extension penalty b is 1.

The values about the parameters in the above scoring equation are chosen according to a choice of ‘EMBOSS Pairwise Alignment Algorithms-needle’ (http://www.ebi.ac.uk/Tools/emboss/align/index.html). It is well known that changing the values of the parameters may change the number and length of gaps in an alignment. However, there is no analytical formula that determines the ‘best’ gap values to use, so that one may wish to experiment with values in order to explore more of the alignment ‘space’ (Tatiana and Thomas, 1999). As for needle, one can experiment with different combinations of parameters. Here, we choose some typical values of parameters, such as R=9, S=1, a=15 and b=1. Of course, one can choose different values by his experiment. In this paper, we choose these values anywhere in order to maintain consistency in the context.

Fig. 2 clearly shows the graphical ‘signatures’ of simple alignments of sequences G 1 and G 2. Obviously, graphical ‘signatures’ enable much easier visual inspection of simple alignments of DNA sequences than their representation by strings over the DNA alphabet {A, T, G, C}. A close look at Fig. 2, one can easily find out that the score of the simple alignment reaches its peak score when the index is 39. In this paper, we call the simple alignment with peak score as a good simple alignment of sequences G 1 and G 2.

The 2D scoring curve can intuitively show the global change of simple alignment scores based on scoring matrix. One can easily obtain the peak point by observing the curve. Of course, it is not necessary to draw the graphical scoring curve when one dose not want to observe the global change of simple alignment scores or need deal with thousands of pairs of DNA sequences. He can also determine the peak point by doing data comparison.

Improved simple alignment algorithm with less consuming time

The above simple alignment algorithm shown in Fig. 1 is a time-consuming algorithm. Its time complexity is O(N2) if the two aligned sequences have equal length N. Here, we provide an improved alignment process to obtain a lower time complexity. A close look at Fig. 1 shows that the beginning steps and the ending steps of the sliding process are not necessary. These unnecessary steps consume some time. Now, we need to find out the unnecessary steps to save time.

Fig. 3 shows the improved process. Step (1) of Fig. 3 gives the initial alignment that the first base of G 1 overlaps the first base of G 2. Then the sliding process is done along the left and the right, respectively. Firstly, we consider the sliding process is done along the right, as shown in step (2). Every alignment has a score S according to the scoring equation R0*R−S0*S−T0*(a+bk). Let score Si be the score of the ith step. Let Smax be the top score within all the scores (i.e., Smax=max{S1,S2,…,Si−1}, i>1). As for every step, we still define another score Si′. The score Si′ is obtained by another scoring equation R0*R+S0*R−T0*(a+bk). In the new scoring equation we assume all overlapped bases are matched each other. The sliding process is stopped when Smax≥Si′. Obviously, the remaining steps along the right are unnecessary because all scores of the remaining steps have no chance to obtain a higher score than Smax.

Improved simple alignment process with less consuming time (The length of G1 is M. The length of G2 is N. And let M≤N).

Then we consider the sliding process is done along the left. The top score within all the scores Smax′ is max{Smax,S1,S2,…,Sj−1} (j>1). The score Sj′ is obtained by the scoring equation R0*R+S0*S−T0*(a+bk). The sliding process is stopped when Smax′≥Sj′. The remaining steps along the left are unnecessary.

By the above sliding process the improved simple alignment algorithm can save some time. Now we discuss the time complexity. Let N and M be the length of sequences G 1 and G 2, respectively. Let k be the total amount of the sliding steps when the sliding process is stopped. Then we can draw a conclusion that the time complexity is O(k*M) if M≤N. Obviously, the more two sequences are similar, the smaller the parameter k is. Especially, the time complexity is O(N) if G1=G2.

Methods Extension algorithm for the largest common substring

By the simple alignment algorithm a good simple alignment R of G 1 and G 2 is determined when the score of the simple alignment reaches its peak. Let C be the largest common substrings of R, where C=ϕ∪{C1,C2,…,Cm}. If C=ϕ, there is no largest common substring. When C={C1,C2,…,Cm}, there are m largest common substrings, where |C1|=|C2|=⋯=|Cm|=k and k denotes the number of matches within a largest common substring. Here, we can see that the largest common substring Ci (i=1,2,…,m) of R devotes its maximal score to the initial alignment reaching peak score. The alignment shows the approximate overall alignment feature of G 1 and G 2. However, some Ci of the largest common substrings of R may be a part of a larger common substring than Ci because of the limit of the initial alignment reaching peak score. In order to protect a larger common substring than Ci from being split by Ci and find out the substring, an extension algorithm for the largest common substring is suggested as the following.

Let K be the length of the largest common substring of G 1 and G 2. Its value is generated when the simple alignment algorithm applies to the sequences G 1 and G 2.

When k=K, none of the largest common substrings Ci of R can be extended into larger common substring. The largest common substrings of R are, C1,C2,…Cm.

When k<K, there exists at least a larger common substring than Ci. There are several sub-steps to find out the larger common substrings as the following:

Let LL be the number of mismatches from the right end of Ci−1 to the left end of Ci. When i=1, LL denotes the number of mismatches from the left end of G 1 and G 2 to the left end of C 1. Similarly, let LR be the number of mismatches from the right end of Ci to the left end of Ci+1. When i=1, LR denotes the number of mismatches from the right end of C 1 to the right end of G 1 and G 2.

When K<LL, the K mismatches are extracted from the left of Ci. Otherwise, the LL mismatches are extracted from the left of Ci. Similarly, when K<LR, the K mismatches are extracted from the right of Ci. Otherwise, the LR mismatches are extracted from the right of Ci. Then the sequences extracted from the left of Ci, Ci and from the right of Ci are connected into two new sub-sequences Si1 and Si2.

Now, we apply the simple alignment algorithm to Si1 and Si2. If there exist a new larger common substring within Si1 and Si2 than Ci, we will face a choice: the new larger common substring or Ci. If there is an increment of sore when the new larger common substring comes into being, we will replace the original Ci with the new substring also called as Ci.

As for every Ci of R, the original Ci is replaced by the new largest common substring if the new substring exists.

Now, we give a practical example to illustrate the above steps for a better understanding. There are two random sequences: G 1 (GCCTAGTTCCCCCA) and G 2 (GCCTCGCATCCCCCA). By the simple alignment algorithm a good simple alignment R of G 1 and G 2 is determined, where the alignment R is GCCTAGTTCCCCCAGCCTCGCATCCCCCA.The largest common substring C of R is “GCCT” (C 1) and “CCCC” (C 2). However, the largest common substring of G 1 and G 2 is “TCCCCCA”. Its length K is 7. Obviously, there exists at least a larger common substring than “GCCT” or “CCCC”. As for “GCCT”, the two new sub-sequences are “GCCTAGTTC” (S11) and “GCCTCGCAT” (S12), respectively. Because there is no increment of sore, the original common substring “GCCT” (C 1) is unchanged. As for “CCCC”, the two new sub-sequences are “AGTTCCCCCA” (S21) and “CGCATCCCCCA” (S22), respectively. Because there is an increment of sore, the original common substring “CCCC” (C 2) is replaced with the new largest common substring “TCCCCCA”.

In sum, the extension algorithm for largest common substring protects a larger common substring than Ci from being split by Ci.

Now, we let U denote the substrings spaced by C, where U=ϕ∪{U1,U2,…,Un}. Then the strings G 1 and G 2 are aligned into two types of substrings: (i) The largest common substrings C with continuous matches: G1[i]=G2[i] (of course, a single match is also permitted) and (ii) The substrings U with continuous mismatches: G1[i]≠G2[i] and both without spaces. Obviously, a good simple alignment R of G 1 and G 2 is alternately organized by C and U (e.g. R=C11U21C31U41, where |C11|=|C31|. Here, the superscript of C or U denotes the level of sub-alignment. The superscript “1” denotes the first level. And the subscript denotes the index of substrings in the current sub-alignment. The alignment R is the result of the first level sub-alignment).

In order to expressly explain the above parameters, we give a practical example. There are two random sequences: G 1 (GCCTAGTTCCCCCA) and G 2 (GCCTCGCATCCCCCA). The G1[i] and G2[i] denote the base of G 1 and G 2, respectively. They become a match when G1[i]=G2[i]. By the simple alignment algorithm a good simple alignment R of G 1 and G 2 is determined, where the alignment R is GCCTAGTTCCCCCAGCCTCGCATCCCCCA.And by the extension algorithm the largest common substring C of R is “GCCT” and “TCCCCCA”. Then G 1 and G 2 are organized by C into three substrings: C11 is “GCCT”, U21 is “AGT” and “CGCA”, C31 is “TCCCCCA”.

Graphical simple alignment tree (GSA tree)

Given sequences G 1 and G 2, a graphical simple alignment (GSA) tree is built up by the aforesaid simple alignment algorithm and extension algorithm for largest common substring. In the following, we will show how to use the algorithms to construct a GSA tree of G 1 and G 2.

Let R be a good simple alignment of G 1 and G 2. Let Ci1 and Uj1 be the largest common substring of R and be the substring spaced by Ci1, respectively. We can see that the largest common substring Ci1 of R devotes its maximal score to the global alignment. However, the Uj1 of R may provide a increment of the score to the global alignment if given appropriate gaps within Uj1, though the scores of these Uj1 are low in the first level sub-alignment.

In order to explore the appropriate gaps in Uj1, we give the following several operation steps.

Compute the scores of all simple alignments of Uj1 by the simple alignment algorithm. A good simple alignment Rj1 of Uj1 is generated when its score reaches its peak.

If there is a increment of the score due to appropriate gaps within Uj1, Uj1 can be further divided into the second level sub-alignment. When and how to add the gaps in the sequences? Now, let Ci2 be the largest common substrings of Rj1, where Ci2=ϕ∪{Ci+12,Ci+22,…,Ci+m2}. Then there are two sub-steps as the following:

If Ci2={Ci+12,Ci+22,…,Ci+m2}, there are m largest common substrings. Then Uj1 can be further divided into the second level sub-alignment by Ci2. Let Uj2 be the substrings spaced by Ci2, where Uj2=ϕ∪{Uj+12,Uj+22,…,Uj+n2}. Then every substring Ci+k2 (k=1,2,…,m) of Ci2 becomes a leaf node in GSA tree. There are no gaps within them. As for every substring Uj+k2 (k=1,2,…,n) of Uj2, the operation flow goes back to the step (1). And the level of sub-alignment enters the next.

If Ci2=ϕ, there is no the largest common substrings in Rj1. Then Uj1 can not be further broken down. The good simple alignment Rj1 of Uj1 becomes a leaf node in GSA tree. The two sequences of Rj1 might be entirely overlapping, or partially overlapping, or one sequence might be aligned entirely internally to the other. When the two sequences of Rj1 are entirely overlapping, there are no gaps within Rj1. Otherwise, the hanging ends of the overlap come into being the gaps of Rj1. The relative position of these gaps is fixed, and becomes the gaps within the final global alignment.

We repeatedly do the above steps until all U in the last level sub-alignment cannot be further decomposed by the simple alignment algorithm and the extension algorithm. Then we can obtain a graphical simple alignment tree for strings G 1 and G 2, consisting of a series of substrings. The Fig. 4 illustrates an example of GSA tree.

An example of graphical simple alignment tree (Strings G1 and G2 includes 6 substrings in the first level sub-alignment: U11C21U31C41U51C61. The substring U11 includes 3 substrings in the second level sub-alignment: C12U22C32. The substring U31 includes 2 substrings in the second level sub-alignment: U42C52. The substring U51 includes 3 substrings in the second level sub-alignment: U62C72U82. The substring U22 includes 2 substrings in the third level sub-alignment: U13C23. The substring U82 includes 2 substrings in the third level sub-alignment: C33U43).

The global alignment problem based on GSA tree

We can obtain a global alignment of strings G 1 and G 2 when their GSA tree is generated. In the following, we will show how to use GSA tree to generate a global alignment. Observing the GSA tree (e.g. Fig. 4), we can see that there are two types of nodes: inner nodes and leaf nodes. The inner nodes consist of substrings U that can be aligned to more substrings. The leaf nodes include substrings C and U, where U cannot be further aligned by the GSA tree method. The global alignment of strings G 1 and G 2 should be composed of all leaf nodes. In order to obtain the global alignment, the GSA tree is traversed by post-order traversal of tree. Then all inner nodes are deleted from the result of post-order traversal. We will achieve the global alignment of strings G 1 and G 2. For example, the result of post-order traversal of Fig. 4 is C12U13C23U22C32U11C21U42C52U31C41U62C72C33U43U82U51C61.The global alignment is C12U13C23C32C21U42C52C41U62C72C33U43C61 by removing all of inner nodes.

Application and discussion The application of GSA tree

In this section, we give three examples to see the validity of GSA tree for the global alignment of 2 DNA sequences. As for every example, we compare the results by GSA tree with the results by the important heuristic approach “EMBOSS Pairwise Alignment Algorithms—needle” (http://www.ebi.ac.uk/Tools/emboss/align/index.html).

We firstly apply the proposed method to the discussed 2 sequences: G 1 (GGCCTCTGCCTAATCACACAGATCTAACAGGATTATTTC) and G 2 (GGCC TCTGCCTTATTACACAAATCTTAACAGGACTATTTC). The scoring equation is R0*R−S0*S−T0*(a+bk), where identity score R is 9, substitution score S is 1, gap opening penalty a is 15, and gap extension penalty b is 1. Of course, one may also choose other values as the parameters of the scoring equation according to practical requirement. Here, we choose the same values in order to keep the context consistency. In Fig. 2, we have described the graphical score representation of simple alignments of sequences G 1 and G 2. One can easily find out that the score of the simple alignment reaches its peak when index of step in Fig. 1 is 39. Then we can obtain the first level sub-alignment results according to the simple alignment algorithm and the extension algorithm. By similar rules, we can get all possible sub-alignment results. Fig. 5 shows the GSA tree to be used to align the sequences G 1 and G 2. Table 2 lists all substrings of Fig. 5 and the max score of each pair of substrings. Then we obtain the global alignment of the sequences: C11U14C24U34C23U44C54U64C22U43C53. According to the results of Table 2, we illustrate the global alignment results as the following:The notation “‐” denotes the gap within sequence. Then we apply “needle” program to G 1 and G 2. The values about gap opening penalty a and gap extension penalty b are the same as the values proposed the GSA tree algorithm. The default values about identity score R and substitution score S are chosen because of no other choice. The alignment results are shown as the following:Obviously, we get consistent results by two different methods. Moreover, similar results can be found out in Table 1 of Randić et al. (2006).

The graphical simple alignment tree to be used to align the sequences G1 and G2 (G1, GGCCTCTGCCTAATCACACAGATCTAACAGGATTATTTC; G2, GGCCTCTGCCTTATTACACAAATCTTAACAGGACTATTTC).

All substrings in Fig. 5 and the max score of each substring.

SubstringsThe max score
Level 1G1, G2C11(G1)=C11(G2): GGCCTCTGCCT_99
U21(G1): AATCACACAGATCTAACAGGATTATTTC127
U21(G2): TATTACACAAATCTTAACAGGACTATTTC
Level 2U21(G1)U12(G1): AATCACACAGATC72
U21(G2)U12(G2): TATTACACAAATCT
C22(G1)=C22(G2): TAACAGGA_72
U32(G1): TTATTTCU32(G2): CTATTTC53
Level 3U12(G1)U13(G1): AATCU13(G2): TATT16
U12(G2)C23(G1)=C23(G2): ACACA_45
U33(G1): GATCU33(G2): AATCT11
U32(G1)U32(G2)U43(G1): TU43(G2): C−1
C53(G1)=C53(G2): TATTTC_54
Level4U13(G1)U13(G2)U14(G1): AU14(G2): T−1
C24(G1)=C24(G2): AT_18
U34(G1): CU34(G2): T−1
U33(G1)U33(G2)U44(G1): GU44(G2): A−1
C54(G1)=C54(G2): ATC_27
U64(G1): –U64(G2): T−15

The aforesaid example about the validity examination gives rise to a question: Is it possible to use the GSA tree in order to facilitate solving less similar or longer DNA sequence alignment problem? The answer is positive. Now, we randomly give two less similar sequences: G 1 and G 2 (G 1, GCCCTCGCGGGCAACATTTAATTCACAGCCAGTTCTCTCAACAGTGATTATC; G 2, CTGGGTCTTCAGGTCCTTTATGCTTAACACAAATCTATCGTTA ACAGGACTATTCT). Like the above example, the scoring equation is R0*R−S0*S−T0*(a+bk), where identity score R is 9, substitution score S is 1, gap existence penalty a is 15, and gap extension penalty b is 1. By GSA tree algorithm, we can get the GSA tree and all possible sub-alignment results. Fig. 6 shows the GSA tree to be used to align the sequences G 1 and G 2. Table 3 lists all substrings in Fig. 6 and the max score of each pair of substrings. Then we obtain the global alignment of the sequences:U14C24U34C44U54C23U33C22U64C74U84C53U63C42U52C21U73C83U93C103U113C72U94C104U114C133U143C92U102C41U51.According to Table 3, we illustrate the global alignment results as the following:According to the results, we can obtain some conclusions of the global alignment between the sequences G 1 and G 2: Length: 61; Identities: 31/61 (50.8%); Gaps: 14/61 (22.9%); Score: 169. Then we apply “needle” program to G 1 and G 2. The alignment results are shown as the following:Then we can obtain some conclusions of the global alignment between the sequences G 1 and G 2: Length: 64; Identities: 32/64 (50%); Gaps: 20/64 (31.2%); Score: 29.

The graphical simple alignment tree to be used to align the sequences G1 and G2 (G1, GCCCTCGCGGGCAACATTTAATTCACAGCCAGTTCTCTCAACAG TGATTATC; G2, CTGGGTCTTCAGGTCCTTTATGCTTAACACAAATCTATC GTTAACAGGACTATTCT).

All substrings in Fig. 6 and the max score of each substring.

SubstringsThe max score
Level 1G1, G2U11(G1): GCCCTCGCGGGCAACATTTAATTC40
U11(G2): CTGGGTCTTCAGGTCCTTTATGCTTA
C21(G1)=C21(G2): ACA_27
U31(G1): GCCAGTTCTCTCAACAGTGAT49
U31(G2): CAAATCTATCGTTAACAGGAC
C41(G1)=C41(G2): TAT_27
U51(G1): C–;U51(G2): TCT−17



Level 2U11(G1)U12(G1): GCCCTCGCGU12(G2): CTGGGTCTTCA−1
U11(G2)C22(G1)=C22(G2): GG_18
U32(G1): CAACATTTAAU32(G2): TCCTTTATGC10
C42(G1)=C42(G2): TT_18
U52(G1): CU52(G2): A−1
U31(G1)U62(G1): GCCAGTTCU62(G2):CAAATCTA12
U31(G2)C72(G1)=C72(G2): TC_18
U82(G1): TCAACAGTU82(G2): GTTAACAG23
C92(G1)=C92(G2): GA_18
U102(G1): TU102(G2): C−1



Level 3U12(G1)U13(G1): GCCCU13(G2): CTGGGTCT−2
U12(G2)C23(G1)=C23(G2): TC_18
U33(G1): GCGU33(G2): A–−17
U32(G1)U43(G1): CAACAU43(G2): TCC−9
U32(G2)C53(G1)=C53(G2): TTTA_36
U63(G1): A–U63(G2):TGC−17
U62(G1)U73(G1):GCCU73(G1): CAA−3
U62(G2)C83(G1)=C83(G2):A_9
U93(G1):GTU93(G1):TC−2
C103(G1)=C103(G2): T_9
U113(G1): CU113(G2): A−1
U82(G1)U123(G1): TCU123(G2): GTT−7
U82(G2)C133(G1)=C133(G2): AACAG_45
U143(G1): TU143(G2): –−15



Level 4U13(G1)U14(G1): –U14(G2): CTGG−18
U13(G2)C24(G1)=C24(G2): G_9
U34(G1): CU34(G2): T−1
C44(G1)=C44(G2): C_9
U54(G1): CU54(G2): T−1
U43(G1)U64(G1): CAAU64(G2): T–−17
U43(G2)C74(G1)=C74(G2): C_9
U84(G1): AU84(G2): C−1
U123(G1)U123(G2)U94(G1): –U94(G2): G−15
C104(G1)=C104(G2): T_9
U114(G1): CU114(G2): T−1

Obviously, in this example we get different results by two different methods. A close look at the alignments reveals that there are two different areas (the bold areas illustrate the almost identical ones): the bases from 1 to 20 by GSA tree vs. the bases from 1 to 21 by needle, and the bases from 34 to 46 by GSA tree vs. the bases from 35 to 49 by needle. As for the first area, GSA tree obtains 7 matches by 3 gap openings and 5 gap extensions while needle gets 6 matches by 2 gap openings and 8 gap extensions. In the second area GSA tree gets 5 matches by 1 gap openings and 0 gap extensions while needle obtains 7 matches by 2 gap openings and 3 gap extensions. From the global view, GSA tree receives 31 matches by 7 gap openings and 7 gap extensions while needle gets 32 matches by 7 gap openings and 13 gap extensions. However, it is difficult for us to determine which one is the better when it comes to the best global alignment of the sequences considered. In fact, a close look at the alignments discovers that both of the methods can find out those very similar local areas, such as the bold areas of the alignments.

Finally, we give the third example with two long and very similar sequences to see the validity of GSA tree for the global alignment of 2 DNA sequences. Here, we apply the proposed method to the complete coding sequence part of beta globin gene of Human (ACCESSION U01317) and Opossum (ACCESSION J03643) as shown in Table 4 . The scoring equation is R0*R−S0*S−T0*(a+bk), where identity score R is 9, substitution score S is 1, gap existence penalty a is 15, and gap extension penalty b is 1. For simplification, we do not show the detail of GSA tree and the results of all substrings. In Fig. 7 , we illustrate the final result. The notation “‐” denotes the gap within sequence. According to the figure, we can obtain some conclusions of the global alignment between string G 1 (the complete coding sequence of ACCESSION U01317) and string G 2 (the complete coding sequence of ACCESSION J03643): Length: 448; Identities: 328/448 (73.2%); Gaps: 8/448 (1.8%); Score: 2772. Then we apply the web tool for “needle” program to G 1 and G 2. The conclusions about the global alignment is the following: Length: 448; Identities: 328/448 (73.2%); Gaps: 8/448 (1.8%); Score: 1128.0. From the global view, the two methods almost get the same statistics results except for their scores. There is only one different area: the bases from 33 to 34 by GSA tree vs. the bases from 33 to 34 by needle. In fact, the two different areas are equivalent to each other. This example shows that it is possible to use the GSA tree in order to facilitate solving long and very similar DNA sequence alignment problem.

The complete coding sequence part of beta globin gene of Human (ACCESSION U01317) and Opossum (ACCESSION J03643).

SpeciesComplete coding sequence
HumanACCESSION U01317; ATGGTGCACCTGACTCCTGAGGAGAAGTCTGCCGTTACTGCCCTGTGGGGCAAGGTGAACGTGGATGAAGTTGGTGGTGAGGCCCTGGGCAGGCTGCTGGTGGTCTACCCTTGGACCCAGAGGTTCTTTGAGTCCTTTGGGGATCTGTCCACTCCTGATGCTGTTATGGGCAACCCTAAGGTGAAGGCTCATGGCAAGAAAGTGCTCGGTGCCTTTAGTGATGGCCTGGCTCACCTGGACAACCTCAAGGGCACCTTTGCCACACTGAGTGAGCTGCACTGTGACAAGCTGCACGTGGATCCTGAGAACTTCAGGCTCCTGGGCAACGTGCTGGTCTGTGTGCTGGCCCATCACTTTGGCAAAGAATTCACCCCACCAGTGCAGGCTGCCTATCAGAAAGTGGTGGCTGGTGTGGCTAATGCCCTGGCCCACAAGTATCACTAA
OpossumACCESSION J03643; ATGGTGCACTTGACTTCTGAGGAGAAGAACTGCATCACTACCATCTGGTCTAAGGTGCAGGTTGACCAGACTGGTGGTGAGGCCCTTGGCAGGATGCTCGTTGTCTACCCCTGGACCACCAGGTTTTTTGGGAGCTTTGGTGATCTGTCCTCTCCTGGCGCTGTCATGTCAAATTCTAAGGTTCAAGCCCATGGTGCTAAGGTGTTGACCTCCTTCGGTGAAGCAGTCAAGCATTTGGACAACCTGAAGGGTACTTATGCCAAGTTGAGTGAGCTCCACTGTGACAAGCTGCATGTGGACCCTGAGAACTTCAAGATGCTGGGGAATATCATTGTGATCTGCCTGGCTGAGCACTTTGGCAAGGATTTTACTCCTGAATGTCAGGTTGCTTGGCAGAAGCTCGTGGCTGGAGTTGCCCATGCCCTGGCCCACAAGTACCACTAA

The global alignment between string a and string b. Identities: 328/448 (73.2%); Gaps: 8/448 (1.8%); Score: 2772.

Discussion

The GSA tree algorithm is a gradual algorithm that step by step explores suitable gaps to improve the score of the alignment between 2 DNA sequences. The scheme firstly uses the simple alignment algorithm and the extension algorithm to construct a GSA tree. The substrings denoted by leaf node of GSA tree are looked on as a part of the final global alignment. Obviously, GSA tree method is a heuristic algorithm. There is no analytical formula to determine the ‘best’ gap values. Though GSA tree algorithm is a heuristic method, and could not always get the optimal alignment, the validity and practicality of the results can be ensured.

Firstly, we discuss the influence about the initial simple alignment of GSA tree algorithm. In Section 3.2, we describe in detail the construction steps of GSA tree by the initial simple alignment. As for the overall result, the initial simple alignment is very important. It determines the extent to which the consolidated results close to optimal results. Next, we discuss the initial simple alignment and its optimized features.

By the simple alignment algorithm a good simple alignment R of sequences G 1 and G 2 is determined when the score of the simple alignment reaches its peak. Then the largest common substrings C of R is determined, where C=ϕ∪{C1,C2,…,Cm}. When C={C1,C2,…,Cm}, there are m the largest common substrings. Because of the limit of the initial alignment reaching peak score, some Ci of the largest common substrings of R may be a part of a larger common substring than Ci. An extension algorithm for the largest common substring is suggested to protect a larger common substring than Ci from being split by Ci if the larger common substring exists. Then we replace the original Ci with the new larger common substring also called as Ci. Once the largest common substrings Ci is determined, it is looked on as a part of the overall result. Then in an optimal alignment of G 1 and G 2 (This hypothetical alignment may be obtained by an absolutely optimized algorithm), the two sequences of Ci by GSA tree might be entirely overlapping in the optimal alignment, or partially overlapping, or one sequence might be entirely isolated from the other. Obviously, for the latter two cases, a great deal of gaps and mismatches may be introduced. So the substring Ci is most likely to appear in the optimal alignment.

The above explanation gives some approximate analysis instead of strict mathematical reasoning, but the conclusion is reasonable from the biological point of view. As the sequences under comparison are protein coding, gaps with lengths other than multiples of three are highly unlikely, whereas the GSA tree algorithm can avoid many single or two-base gaps by the approximate approach. Unlike “EMBOSS Pairwise Alignment Algorithms—needle (global)” or “—water (local)”, the proposed GSA tree algorithm is to find a balance between the global and local. The algorithm is for aligning two sequences over their entire length. The match areas with local superiority are produced in the global context. In bioinformatics, it may be reasonable to assume that in the global context the local areas with closely related sequences should be reflected because of the stability of these areas. As for two possibly related sequences, giving priority to these local areas may be a better choice. The accurate optimization result could not show these local features because of the global optimization. The proposed GSA tree algorithm is for aligning two sequences over their entire length. This works best with closely related sequences. If one uses GSA tree to align very distantly related sequences, it will produce a result but much of the alignment may have little or no biological significance. The three examples of 4.1 give practical proofs for the validity and practicality of the GSA tree algorithm. The Example 1 gives two very similar but very short sequences. The GSA tree achieves the same results as needle. The Example 3 gives two similar and long sequences. There is only one different area:

This example shows that giving priority to these local areas may be a better choice. The Example 2 gives two random sequences. There are two different areas in their results. A close look at the alignments discovers that both of the methods can find out those very similar local areas. The main differences between them lie in the very distantly related areas.

Finally, the following analysis shows why we consider the substring Ci in the only initial alignment reaching peak score. Because of the limit of the initial alignment reaching peak score, some Ci of the largest common substrings of R may be a part of a larger common substring than Ci. Then an extension algorithm for the largest common substring is suggested to protect a larger common substring than Ci from being split by Ci if the larger common substring exists. In the extension algorithm we introduce three parameters: K, LL and LR, where K be the length of the largest common substring of G1 and G2. When k=K(k=|Ci|), none of the largest common substrings Ci of R can be extended into larger common substring. The largest common substrings of R are C1,C2,…,Cm, respectively. There is no larger common substring than Ci split by Ci. Otherwise, when k<K, there exists at least a larger common substring than Ci. The larger common substring and Ci might be partially overlapping, or one might be entirely isolated from the other. When they are entirely isolated from each other, the larger common substring can be completely preserved and found out in the next sub-alignment. As for being partially overlapping, we face a choice: the larger common substring or Ci. In order to give a better choice, we use parameters K, LL and LR to construct two new sub-sequences Si1 and Si2. We will replace the original Ci with the new substring also called as Ci if there is an increment of sore when the new larger common substring comes into being. So we can protect a larger common substring than Ci1 from being split by Ci1 and eliminate the limitations caused by the only initial alignment reaching peak score.

References Althaus I.W. Chou J.J. Gonzales A.J. Diebel M.R. Chou K.C. Kezdy F.J. Romero D.L. Aristoff P.A. Tarpley W.G. Reusser F. Kinetic studies with the nonnucleoside HIV-1 reverse transcriptase inhibitor U-88204E Biochemistry 32 1993 6548 6554 7687145 Althaus I.W. Chou J.J. Gonzales A.J. Diebel M.R. Chou K.C. Kezdy F.J. Romero D.L. Aristoff P.A. Tarpley W.G. Reusser F. Steady-state kinetic studies with the non-nucleoside HIV-1 reverse transcriptase inhibitor U-87201E Journal of Biological Chemistry 268 1993 6119 6124 7681060 Althaus I.W. Chou J.J. Gonzales A.J. Diebel M.R. Chou K.C. Kezdy F.J. Romero D.L. Aristoff P.A. Tarpley W.G. Reusser F. The quinoline U-78036 is a potent inhibitor of HIV-1 reverse transcriptase Journal of Biological Chemistry 268 1993 14875 14880 7686907 Altschul S.F. Gish W. Miller W. Myers E.W. Lipman D.J. Basic local alignment search tool Journal of Molecular Biology 215 1990 403 410 2231712 Altschul S.F. Madden T.L. Schäffer A.A. Zhang J. Zhang Z. Miller W. Lipman D.J. Gapped BLAST and PSI-BLAST: A new generation of protein database search programs Nucleic Acids Research 25 1997 3389 3402 9254694 Andraos J. Kinetic plasticity and the determination of product ratios for kinetic schemes leading to multiple products without rate laws: new methods based on directed graphs Canadian Journal of Chemistry 86 2008 342 357 Chou K.C. A new schematic method in enzyme kinetics European Journal of Biochemistry 113 1980 195 198 7460947 Chou K.C. Graphical rules in steady and non-steady enzyme kinetics Journal of Biological Chemistry 264 1989 12074 12079 2745429 Chou K.C. Review: applications of graph theory to enzyme kinetics and protein folding kinetics. Steady and non-steady state systems Biophysical Chemistry 35 1990 1 24 2183882 Chou K.C. Graphic rule for non-steady-state enzyme kinetics and protein folding kinetics Journal of Mathematical Chemistry 12 1993 97 108 Chou K.C. Forsen S. Graphical rules for enzyme-catalyzed rate laws Biochemical Journal 187 1980 829 835 7188428 Chou K.C. Forsen S. Graphical rules of steady-state reaction systems Canadian Journal of Chemistry 59 1981 737 755 Chou K.C. Jiang S.P. Liu W.M. Fee C.H. Graph theory of enzyme kinetics: 1. Steady-state reaction system Scientia Sinica 22 1979 341 358 Chou K.C. Kezdy F.J. Reusser F. Review: steady-state inhibition kinetics of processive nucleic acid polymerases and nucleases Analytical Biochemistry 221 1994 217 230 7529005 Chou K.C. Liu W.M. Graphical rules for non-steady state enzyme kinetics Journal of Theoretical Biology 91 1981 637 654 7329076 Chou K.C. Zhang C.T. Diagrammatization of codon usage in 339 HIV proteins and its biological implication AIDS Research and Human Retroviruses 8 1992 1967 1976 1493047 Chou K.C. Zhang C.T. Elrod D.W. Do antisense proteins exist? Journal of Protein Chemistry 15 1996 59 61 8838590 Gao L. Ding Y.S. Dai H. Shao S.H. Huang Z.D. Chou K.C. A novel fingerprint map for detecting SARS-CoV Journal of Pharmaceutical and Biomedical Analysis 41 2006 246 250 16289934 〈http://blast.ncbi.nlm.nih.gov/bl2seq/wblast2.cgi〉. 〈http://www.ebi.ac.uk/Tools/emboss/align/index.html〉. Kuzmic P. Ng K.Y. Heath T.D. Mixtures of tight-binding enzyme inhibitors. Kinetic analysis by a recursive rate equation Analytical Biochemistry 200 1992 68 73 1595902 Myers D. Palmer G. Microcomputer tools for steady-state enzyme kinetics Bioinformatics (Original: Computer Applied Bioscience) 1 1985 105 110 Okayasu T. Sorimachi K. Organisms can essentially be classified according to two codon patterns Amino Acids 36 2 2009 261 271 18379857 Pearson, W.R., Lipman, D.J., 1988. Improved tools for biological sequence comparison. In: Proceedings of the National Academy of Sciences of the United States of America, vol. 85, pp. 2444–2448. Qi X.Q. Wen J. Qi Z.H. New 3D graphical representation of DNA sequence based on dual nucleotides Journal of Theoretical Biology 249 2007 681 690 17931659 Qi Z.H. Qi X.Q. Novel 2D graphical representation of DNA sequence based on dual nucleotides Chemical Physics Letters 440 2007 139 144 Qi Z.H. Fan T.R. PN-curve: a 3D graphical representation of DNA sequences and their numerical characterization Chemical Physics Letters 442 2007 434 440 Qi Z.H. Qi X.Q. Numerical characterization of DNA sequences based on digital signal method Computers in Biology and Medicine 39 2009 388 391 19261267 Qi Z.H. Wang J.M. Qi X.Q. Classification analysis of dual nucleotides using dimension reduction Journal of Theoretical Biology 206 2009 104 109 Randić M. Vracko M. Lers N. Plavsic D. Analysis of similarity/dissimilarity of DNA sequences based on novel 2-D graphical representation Chemical Physics Letters 371 2003 202 207 Randić M. Vracko M. Lers N. Plavsic D. Novel 2-D graphical representation of DNA sequences and their numerical characterization Chemical Physics Letters 368 1–2 2003 1 6 Randić M. Zupan J. Drazen V.T. Plavsic D. A novel unexpected use of a graphical representation of DNA: Graphical alignment of DNA sequences Chemical Physics Letters 431 2006 375 379 Smith T.F. Waterman M.S. Identification of common molecular subsequences Journal of Molecular Biology 147 1981 195 197 7265238 Sorimachi K. Okayasu T. Universal rules governing genome evolution expressed by linear formulas Open Genomics Journal 1 2008 33 43 Tatiana A.T. Thomas L.M. Blast 2 sequences—a new tool for comparing protein and nucleotide sequences FEMS Microbiology Letters 174 1999 247 250 10339815 Waterman M.S. General methods of sequence comparison Bulletin of Mathematical Biology 46 1984 473 500 Wang M. Yao J.S. Huang Z.D. Xu Z.J. Liu G.P. Zhao H.Y. Wang X.Y. Yang J. Zhu Y.S. Chou K.C. A new nucleotide-composition based fingerprint of SARS-CoV with visualization analysis Medicinal Chemistry 1 2005 39 47 16789884 Xiao X. Shao S. Ding Y. Huang Z. Chen X. Chou K.C. Using cellular automata to generate image representation for biological sequences Amino Acids 28 2005 29 35 15700108 Xiao X. Shao S. Ding Y. Huang Z. Chen X. Chou K.C. An application of gene comparative image for predicting the effect on replication ratio by HBV virus gene missense mutation Journal of Theoretical Biology 235 2005 555 565 15935173 Xiao X. Shao S.H. Ding Y.S. Huang Z.D. Chou K.C. Using cellular automata images and pseudo amino acid composition to predict protein subcellular location Amino Acids 30 2006 49 54 16044193 Xiao X. Shao S.H. Chou K.C. A probability cellular automaton model for hepatitis B viral infections Biochemical and Biophysical Research Communication 342 2006 605 610 Xiao X. Wang P. Chou K.C. Predicting protein structural classes with pseudo amino acid composition: an approach using geometric moments of cellular automaton image Journal of Theoretical Biology 254 2008 691 696 18634802 Xiao X. Wang P. Chou K.C. GPCR-CA: a cellular automaton image approach for predicting G-protein-coupled receptor functional classes Journal of Computational Chemistry 30 2009 1414 1423 19037861 Yao Y.H. Nan X.Y. Wang T.M. A new 2D graphical representation-classification curve and the analysis of similarity/dissimilarity of DNA sequences Journal of Molecular Structure: THEOCHEM 764 2006 101 108 Yao Y.H. Qi D. Nan X.Y. He P.A. Nie Z.M. Zhou S.P. Zhang Y.Z. Analysis of similarity/dissimilarity of DNA sequences based on a class of 2D graphical representation Journal of Computational Chemistry 29 2008 1632 1639 18293304 Yao Y.H. Qi D. Li C. He P.A. Zhang Y.Z. Analysis of similarity/dissimilarity of protein sequences PROTEINS: Structure, Function, and Bioinformatics 73 2008 864 871 Zhang C.T. Chou K.C. Analysis of codon usage in 1562 E. coli protein coding sequences Journal of Molecular Biology 238 1994 1 8 8145249 Zhou G.P. Deng M.H. An extension of Chou's graphical rules for deriving enzyme kinetic equations to system involving parallel reaction pathways Biochemical Journal 222 1984 169 176 6477507