Detection of common evolutionary origin (homology) is a primary means of inferring protein structure and function. At present, comparison of protein families represented as sequence profiles is arguably the most effective homology detection strategy. However, finding the best way to represent evolutionary information of a protein sequence family in the profile, to compare profiles and to estimate the biological significance of such comparisons, remains an active area of research.http://www.ibt.lt/bioinformatics/coma.Here, we present a new homology detection method based on sequence profile-profile comparison. The method has a number of new features including position-dependent gap penalties and a global score system. Position-dependent gap penalties provide a more biologically relevant way to represent and align protein families as sequence profiles. The global score system enables an analytical solution of the statistical parameters needed to estimate the statistical significance of profile-profile similarities. The new method, together with other state-of-the-art profile-based methods , is benchmarked in all-against-all comparison of a challenging set of SCOP domains that share at most 20% sequence identity. For benchmarking, we use a reference ("gold standard") free model-based evaluation framework. Evaluation results show that at the level of protein domains our method compares favorably to all other tested methods. We also provide examples of the new method outperforming structure-based similarity detection and alignment. The implementation of the new method both as a standalone software package and as a web server is available at Due to a number of developments, the new profile-profile comparison method shows an improved ability to match distantly related protein domains. Therefore, the method should be useful for annotation and homology modeling of uncharacterized proteins. Common evolutionary origin or homology is one of the key concepts in biology. Homologous proteins usually share similar three-dimensional shape and often perform identical or similar molecular functions. Therefore, detection of homology is now routinely used to make inferences regarding structure, function or evolution for the protein of interest. Protein sequence comparison is the primary means for establishing homology. For closely related proteins, sequence similarity can be detected even by an untrained eye, however, the similarity becomes weak and difficult to distinguish from random as the evolutionary distance increases. In many cases not until three-dimensional structures become available the homology between proteins can be established.Comparison of multiple sequence alignments instead of individual sequences can often facilitate inference of remote homology relationships. This should not be surprising, because in contrast to a single sequence, a set of aligned related sequences can tell much more about the conservation  of individual positions or regions within the polypeptide chain. For homology detection, multiple sequence alignments are generally converted into either of the two numerical forms: position-specific sequence profiles or Hidden Markov Models (HMMs) -7. The mAt present, profile-profile or HMM-HMM comparison represents arguably the most sensitive remote homology detection strategy. Although over the years profile-profile (HMM-HMM) comparison methods have improved significantly, they still lag behind methods based on protein structure comparison. On the other hand, there are a number of areas for potential improvement of such methods, including the way profiles (HMMs) are constructed, profile (HMM) similarity is scored and statistical significance of that score is estimated. For example, fixed gap opening and extension penalties, traditionally used in profile comparisons, is a poor representation of protein evolution. Thus, introduction of position-dependent variable gap penalties might be expected to lead to considerable improvement of profile-based methods. Further development of statistical framework is another promising area of improvement for both profile and HMM-based methods.Comparison Of Multiple Alignments), a new profile-profile search and comparison method that has a number of novel features. However, the two features that distinguish COMA from other profile-profile comparison methods most, are position-dependent gap penalties and a global score system, which enables analytical solution of the statistical parameters used in estimation of the significance of a match. We show that at the protein domain level COMA performs better than several other state-of-the art homology detection methods.Here, we present COMA (Methods that aim to detect relationship between protein families by comparing corresponding sequence profiles include three main components: 1) profile construction algorithm, 2) logic for profile comparison and 3) estimation of statistical significance of the profile-profile alignment score. In this section we describe underlying theoretical considerations and their implementation in COMA.Multiple sequence alignments are converted into profiles similarly as in PSI-BLAST , but witSometimes multiple sequence alignments have stretches of positions (columns) with highly divergent residue distribution, which means that the expected occurrence for nearly all residue types is about the same. These stretches, defined here as high complexity regions, often indicate either misaligned or structurally unrelated sequence regions and may negatively affect subsequent comparison of profiles. Comparison problems may also be caused by multiple alignment regions of low compositional complexity. These may include groups of columns with short periodic repeats or very similar residue distributions and often correspond to unstructured regions of aligned sequences. To deal with both extremes of compositional complexity, the SEG algorithm  has beenAs in PSI-BLAST, sequence weights are computed from the reduced multiple alignment that is compiled for every position of the input multiple alignment. However, in contrast to PSI-BLAST, sequences from the multiple alignment are included into the reduced multiple alignment only if the residues contributing to the corresponding position are not at the sequence termini. This is important, because in some cases, the reduced multiple alignment may consist of only a single column, leading to the assignment of incorrect sequence weights and subsequently to a dramatic deterioration of the overall performance in profile comparisons. In COMA, more stringent requirements for reduced multiple alignments help to avoid such situations. After reduced multiple alignments are compiled, sequence weights are calculated by the modified Henikoff & Henikoff sequence weighting algorithm .Profile scores are calculated using an initial score table such as that from BLOSUM  or PAM  series. The alignment score obtained using explicitly defined score table is related to its statistical significance . Thus, ei of the multiple alignment is expressed as 1-Σafa, where fa is the weighted observed frequency, calculated for the residue a at the position i. An exhaustive analysis of 4611 profiles showed that deletion probabilities can be accurately approximated linearly. Thus the generalized probability of a deletion at the profile position i is described by the linear function whose slope and intercept are determined from the probability values at the boundary positions of the deletion. The probability of an insertion at the profile position i is defined as the weighted observed frequency for the gap (f-) at the profile position i. Since the insertion always corresponds to a residue, which occupies a profile position, no generalization of probabilities of insertions is needed.Comparison of profiles in many cases is bound to produce gapped alignments. Therefore, an accurate estimation of insertion and deletion probabilities at every profile position is a significant factor that affects alignment quality. Currently, profile-based methods such as PSI-BLAST  and COMPIn COMA, a pair of profiles is aligned using a modified Smith-Waterman dynamic programming algorithm , the scosia of the residue a at the profile position i is defined as a at the profile position i, pa is the background probability of the residue a, λp is the reference statistical parameter of ungapped alignments of protein sequences such that the target probabilities The score sum to 1 ,16.a at profile positions i. Weighted observed frequencies are important measures of positional conservation and are also used to derive the target probabilities a at the profile position i of the first profile, and j of the second profile. Let a at the profile positions i and j of the first and second profile, respectively. We say that two positions i and j of two distinct profiles are more similar if the probability odds ratio sij of matching the position i of the first profile with the position j of the second profile is calculated as follows:Similar log-odds principle is used to construct a score system for a pair of profiles. An individual profile is the score table constructed for a single sequence using the processed information from the multiple alignment. The information from the multiple alignment is in part expressed with the weighted observed frequencies N is the normalizing term such that the background probabilities for a pair of profiles sum to 1:where λ in Equation 1 is a statistical parameter of profile-to-profile ungapped alignments such that the target probabilities of a pair of profiles (numerator of the odds in Equation 1) sum to 1:p(sij) is the background probability for a pair of profiles or, in other words, probability of the score sij, sk are the discrete values of sij andwhere sij from Equation 1 as follows:Having all terms defined, we can express the score λ is solved from the Equation 3 using the background probabilities in Equation 4 so that the target probabilities for a pair of profiles in Equation 1 sum to 1. To solve Equation 3, scores sij are multiplied by 2c (to rescue a precision of c bits) and rounded to the nearest integer value.Note that the statistical parameter sij are corrected as follows:Multiple sequence alignments, from which profiles are constructed, may carry very different amounts of evolutionary information. For example, the information extracted in one case from three and in other case from three hundred aligned diverse sequences cannot be considered to have the same value. Thus before the final alignment of a pair of profiles, assuming that probabilities do not change, scores ti) (and t'j) , the profile scores obtained from a "thin" alignment are down-weighted in comparison to the scores from a "thick" alignment. In the general case the scores of the "thin" profile are averaged over the observed weighted frequencies of the "thick" profile using higher weights, while the scores of the "thick" profile are averaged over the corresponding frequencies of the "thin" profile using lower weights. If one of the two profiles, say the first, is constructed from a single sequence, where i is characterized by the expression of relative entropy ri)  . The threshold is inversely proportional to -log E, where E is the pre-calculated E-value per hit. For compositionally similar profiles this threshold will be low. Scaling down of the scores for positions of low entropy is performed independently of the effective number of sequences ("thickness") comprising corresponding positions.In addition to "thickness", the information content of the profile position w of maximum scores is recorded and their autocorrelation is calculated. Since the autocorrelation is a sum of the products, the characteristic value of maximum scores for the corresponding position is calculated as the square root of the autocorrelation value divided by the number of summed products. This ensures that the characteristic value is within the similar range as the maximum scores. The final gap cost limit for the corresponding position is computed as the square root of the autocorrelation function of the characteristic values divided by the number of summed products. The goal of this procedure is to make the gap cost limit for the corresponding position dependent on the adjacent characteristic values. The formal description of this logic follows below.Position-dependent gap costs for a pair of profiles are defined by the insertion/deletion probabilities for every position of individual profiles and by the limits within which position-specific gap costs are allowed to vary. The high scoring positions of the score system are mostly conserved, and the probability for a gap to occur there is low. In contrast, the positions of low scores often match variable regions (e.g. loops in protein structure) where the probability of a gap becomes higher. Thus, gap cost limits should be more stringent for high scoring positions than for low scoring ones. Following this logic, gap cost limits for the first and the second profile are calculated using respectively the row and column maximum scores of the score system. For each position of the score system, the number sij denote the score for the positions i and j of the score system. Let w maximum scores at the position i of the score system such that w maximum scores at the position j such that ai}i be the periodic sequence such that i (window size ω > 0). Similarly, let j: Ai) ; ω (ω +1)/2 is the number of the summed products. If the condition in Equation 8 is not satisfied, Ai) (is assigned to 0.where Bj)   and its low values indicate low scores. By default, H is derived analytically for a pair of profiles . In the second step, an initial alignment and its E-value are computed. Based on this initial alignment, z is reevaluated as -y/(log E + x), where x and y are adjustable parameters and E is the initial estimated E-value per hit. This reevaluation implies narrowing of gap cost limits in case of small initial E-values that indicate possibly related profile pairs.The parameter Gi) (for the first profile at the position i of the score system is defined as a fraction of the size of the gap cost limit Ai) . The final gap cost Di)  (is the insertion probability of the second profile at the position j. Since the gap cost limits Ai)  (of that profile in the expression for Gi) (is reduced by the constant c (by default c = 0.6). The gap cost for the second profile Cj) (is computed in a similar way:where Pj)  (is the insertion probability of the first profile at the position i.where t u + v)), where t is the effective number of sequences in multiple sequence alignment at a given position, and u and v are the adjustable parameters. When the alignment is "thick" (the effective number of sequences is large), the factor approaches 1 and the adjustment essentially has no effect.If multiple sequence alignment is "thin", the effect of deletion and insertion probabilities may be disproportionally large. For example, consider a position of multiple sequence alignment consisting of just two aligned sequences where the second sequence contains a gap. The insertion probability for that position would be 50%. To avoid such situations, the insertion/deletion probabilities are adjusted by a factor of 1/ were optimized on the most structurally diverse and most difficult subset (200-300 profiles) of the dataset.All the heuristic parameters  are likely to be related or not.We use analytical estimation of statistical significance. The analytical approach was initially proposed  for any E  can be expressed as follows:If the distribution of the optimal alignment scores is approximated by EVD, the expected value m is a length of the query profile, n is a length of the database. This expression of E-value and the corresponding P-value (P = 1-exp(-E)) are the ones used in COMA to estimate statistical significance. Since the score system used in COMA is amenable to the Karlin-Altschul statistics, the statistical parameters are derived as follows: the scale parameter of the distribution λ, is solved from Equation 3, where the scores sk are calculated from Equation 6, K is found by the formula given in [H required to compute K is expressed as follows:where given in . Using tλ sij. Using the notations found in Equations 3 and 4, H is expressed as:It follows from Equation 1 that the target probabilities are equal to m n used in Equation 13 is valid asymptotically. Thus, the edge effect  is corrected by computing additional statistical parameters α and β [It is important to note that the search space  α and β .λ, H, K) may differ from pair to pair of profiles leading to adverse effects such as different statistical significance values for identical scores. To deal with this problem we apply composition based statistics using a newly introduced global score system. The idea of the composition-based statistics [λu* becomes equal to the reference value of λu, where λu is the statistical parameter of the distribution of ungapped alignment scores. For sequences the reference parameter corresponds to the known parameter of the residue substitution score table used, e.g. one of the BLOSUM [In COMA, statistical parameters are computed for each pair of profiles to be aligned. The exact values of solved statistical parameters  of the global score system contains the similarity score sij of two profile vectors. Solving Equation 3 for the parameter λ gives us the value of the required reference parameter λu. After the score system is constructed for a pair of profiles, its scores are transformed so that the parameter λu* of the score system becomes equal to the reference parameter λu. Making use of the global score system involved a non-trivial algorithmic approach , but it significantly improved the performance of COMA.Here, to make such an alphabet for profiles, we compile all unique profile vectors from the profile database used for profile comparisons and construct a global score system of profile vectors Figure . Each ceThe analytical theory of statistical significance estimation has been developed only for ungapped alignments . Since tOn the other hand, it has been shown empirically that the scores of gapped alignments are also distributed according to EVD . For proλg and Kg for gapped alignments, we compiled a set of unrelated COMA hits. This set comprises 160 513 hits that fulfil all of the following conditions: (a) profiles are from different SCOP [To derive the reference statistical parameters ent SCOP  superfament SCOP  accordinent SCOP  alignmenλ and μ, respectively, as follows. We progressively increase the lower bound of the alignment score threshold for alignments to be considered, each time re-estimating the statistical parameters for the resulting set. In this way we obtain a series of values for both λ and μ that in general show a significant variation . In other words, the empirically derived reference values of λ and μ are expected to accurately describe the statistics of score distribution in the region of higher scores (corresponding to the tail of EVD).Having compiled the set of unrelated hits, we then derive the scale and localization reference statistical parameters of the extreme value distribution, n Figure . Howeverλ u* solved and scaled for a pair of profiles is equal to the reference parameter λu of the global score system: λ u* ≡ λu. Only in rare cases, e.g. because of low absolute values of scores , λu* and λu might be slightly different. We then assume that the statistical parameter λu* of the score system for the pair of the profiles to be aligned with gaps differs from the reference parameter λg* exactly in the same ratio as λu* differs from λu. The same principle is applied for estimation of the statistical parameter Kg* of the score system for the pair of profiles to be aligned with gaps. However, in contrast to λ, the values of Ku and Ku are of ten different. Thus, Kg* is calculated by adjusting the empirically estimated Kg by the factor Ku*/Ku. The final expressions of λg* and Kg* are as follows:As a result of the composition-based statistics, the parameter To evaluate COMA, we compared its ability to detect remote relationships and produce accurate alignments with that of other state-of-the-art profile-based methods. We chose COMPASS  (version5) sequence inclusion threshold and with low complexity filter turned on. The resulting alignments were used in all-to-all comparison for all methods except for COMPASS. Before running COMPASS, alignment columns corresponding to gaps in the first (query) sequence were removed, substantially improving its performance.The assessment of distant relationships and corresponding alignments can be best done having three-dimensional (3D) structures of the test set proteins in hand. Here, we used SCOP  (1.71) pTraditionally, homology detection methods have been evaluated against a reference protein classification scheme and reference alignments serving as "gold standard". However, the more remote relationships are considered, the less straightforward becomes the use of "gold standard" classification schemes and alignments. For example, the original hierarchical SCOP classification scheme implies that protein domains assigned to different folds are unrelated and therefore should be considered as a false positive match in the benchmark. Yet, by now, it is commonly accepted that there are many evolutionary related proteins classified as having different folds. Perhaps most obvious examples include Rossmann-like domains, immunoglobulin-like β-sandwiches and β-propellers. Evolutionary relationships can be found even at the highest hierarchy level, between domains belonging to different SCOP classes (e.g. ).Reference alignments usually have to be derived separately, using some structure comparison method, e.g. DALI . HoweverTherefore, to bypass additional problems with reference classification and reference alignments we chose to use exclusively the reference-free evaluation framework based on structural models. In this framework, no other information except for the pairwise sequence alignment produced by the assessed method and 3D structures of aligned protein domains is needed. Alignment is used to generate a 3D model of the query sequence based on the structure of the match. The questions of whether the match is correct  and whether the alignment is accurate are automatically answered by evaluating the obtained model against the real structure. Such model evaluation framework has been very effective in Critical Assessment of Techniques for Protein Structure Prediction (CASP) experiments lasting over a decade . For assHere, pairwise alignments obtained by every tested method are converted into corresponding 3D models using a standard MODELLER  . Although in our evaluation framework the alignment, produced by a method being tested, by itself defines both the quality of the match and the alignment accuracy, two different evaluation modes, global and local, are possible. In a global mode, the alignment is evaluated with respect to the entire protein domain. This is equivalent to asking how useful the alignment is for generating a structural model of that domain. In a local mode, the alignment is evaluated within its boundaries. This mode measures how well a particular method can detect and align possibly short, but structurally similar fragments, without the requirement that these fragments come from overall similar domains. A caveat of this mode is that very short alignments would often score very high, independently whether the aligned fragments are related or not. Therefore, in the local evaluation mode we only consider fragments that include at least 15 aligned residues, the length that approximates the transition from individual secondary structure elements into supersecondary structure motifs.All-to-all comparison generates two matches between proteins A and B (AB and BA), scores of which in general may slightly differ. To reduce the redundancy, for each evaluated method we only consider one of the two matches producing a better statistical significance value. In both evaluation modes for every aligned pair AB we consider two models, A' and B' . Although the same AB alignment is used to generate both A' and B', their corresponding TM-scores in general differ, because they correspond to different structure pairs AA' and BB'. Of the two TM-scores for the AB pair we take the better one.Figure In the global evaluation mode, COMA is clearly better than the other methods included in the comparison. Within the high specificity range (low error rate) COMPASS is second, but in the lower specificity region (~26% error) is overtaken by the HHsearch version that uses secondary structure information. For the user of a particular homology detection method, the most important is the left-most region of the curve, because it corresponds to the statistically most significant matches. The significantly better performance by COMA in this region becomes even more apparent when the same data is plotted in a log-scale  comparison. Thus, we asked whether and, if so, to what extent alignments produced by individual methods in all-to-all comparison can be improved by using structure comparison? To answer this question, we realigned equal number of the top matching domain pairs for each method with DALI  and compAlthough structure-based methods such as DALI, often serving as providers of "gold standard" references, overall outperform profile (HMM)-based methods, they are not perfect either. Yet, in the reference-dependent evaluation, any disagreement with the "gold standard" is treated as an error. In contrast, using the reference-free setting, we can directly find cases when structure-based methods perform worse than the evaluated methods. Figure E-value = 2.6e-3 and TM-score = 0.4262). DALI superimposed the corresponding structures producing Z-score of just 2, which is at the borderline of significance  will fare well in the local evaluation mode, but would be very poor if evaluated at the domain level . In contrast, a method that tries to extend alignment into less structurally similar regions, may perform very well in the global mode, but will inevitably look worse if evaluated in the local mode. Certainly, for different tasks, different modes may be desired. For example, the accurate detection of short, structurally similar fragments is of great value in protein structure prediction by fragment assembly, regardless whether these fragments are homologous or simply reflect similar conformational preferences. However, if the method is to be used primarily for homology modeling or structural/functional annotation of protein domains, the good performance in the global mode is more appropriate.COMA performs best at the protein domain rather than at the fragment level. This may be linked to position-dependent gap penalty scheme that allows the extension of alignment into structurally similar regions through sizeable variable regions (e.g. long loops). The shape of the ROC curve in the global evaluation mode shows that COMA is also good in distinguishing related from unrelated matches, an important property from the user's perspective. This property may be attributed to the new procedures of compositional adjustment of scores and statistical significance estimation. In conclusion, we hope that our new profile-profile comparison tool will be useful in studies of protein structure, function and evolution.http://www.ibt.lt/bioinformatics/coma/. The standalone package also includes programs for constructing the global score system and computing/scaling its statistical parameters for any profile database of interest.The COMA software package and a web server are freely available for academic use at MM and ČV conceived of the study and designed research. MM carried out the research. MM and ČV analyzed data and wrote the manuscript. All authors read and approved the final manuscript.Supplementary table and figures. Supplementary table provides the analysis of alignments defined as "true positives" by the TM-score criterion using two independent schemes ("SCOP" and "SCOP/DALI"). Supplementary figures provide supporting data for the results of methods evaluation. Figures S1 and S2 display ROC curves using correspondingly an alternative  representation and alternative definitions for "true positives". Figure S3 provides a plot, showing how good is the agreement between the expected and observed P-values. Figure S4 represents evaluation results as Venn diagrams.Click here for file


While substitution matrices can readily be computed from reference alignments, it is challenging to compute optimal or approximately optimal gap penalties. It is also not well understood which substitution matrices are the most effective when alignment accuracy is the goal rather than homolog recognition. Here a new parameter optimization procedure, POP, is described and applied to the problems of optimizing gap penalties and selecting substitution matrices for pair-wise global protein alignments.POP is compared to a recent method due to Kim and Kececioglu and found to achieve from 0.2% to 1.3% higher accuracies on pair-wise benchmarks extracted from BALIBASE. The VTML matrix series is shown to be the most accurate on several global pair-wise alignment benchmarks, with VTML200 giving best or close to the best performance in all tests. BLOSUM matrices are found to be slightly inferior, even with the marginal improvements in the bug-fixed RBLOSUM series. The PAM series is significantly worse, giving accuracies typically 2% less than VTML. Integer rounding is found to cause slight degradations in accuracy. No evidence is found that selecting a matrix based on sequence divergence improves accuracy, suggesting that the use of this heuristic in CLUSTALW may be ineffective. Using VTML200 is found to improve the accuracy of CLUSTALW by 8% on BALIBASE and 5% on PREFAB.http://www.drive5.com/pop.The hypothesis that more accurate alignments of distantly related sequences may be achieved using low-identity matrices is shown to be false for commonly used matrix types. Source code and test data is freely available from the author's web site at  Most algorithmic formulations of the problem seek an alignment maximizing a function known as the objective score. Objective scores are usually defined as a sum of terms for matching pairs of letters (tabulated in a substitution matrix) and penalties for gaps. While the effects of different substitution matrices and gap parameters have been extensively studied in the context of local alignment and homolog recognition , and Q(w) be the function to be optimized . The goal is to find values wOPT = argmax(w) Q(w) that maximize Q. This optimization problem is challenging for several reasons. Sufficiently small changes in w will leave all alignments unchanged and hence most Q functions of interest have zero partial derivatives almost everywhere. Also, Q is typically expensive to compute, requiring seconds to hours to evaluate at a single point, and is non-convex with many local maxima . As theN-dimensional hypercuboid is explored by evaluating Q(w) at each point in a regularly spaced grid. Local maxima are identified as points at which Q is greater than all neighboring points, and the best of these are used as starting points for the second stage.  The second and third stages use a hill-climbing strategy to approach a local maximum given a starting point. The second stage uses a faster but less accurate variant of the hill-climbing method than the third stage, which starts from the best local optima found in the second stage. The final result is the best maximum found by the third stage. To save computation time, the three stages typically use increasingly large subsets of the training samples, with the first two stages using randomly chosen subsets and the third stage the entire training set.POP proceeds in three stages. In the first stage, an w, each axis i is explored in both the positive and negative direction; i.e., all parameters are held fixed but one (wi). Let δ be a proposed change in wi, wi + δ, w' = {wj, j ≠ i, Q' = Q(w'), i.e. Q' is the value of Q after a proposed move along one axis, and Δ = Q' - Q. In each direction a δ is found that gives Δ > 0 (improves Q), or, failing that, a δ that reduces Q by an amount that is small, but not too small, say in the range 0.1% to 1%. Very small changes are undesirable because they will tend to be dominated by "noise" . A heuristic designed to minimize these problems introduces a maximum (μ) and minimum (λ) reduction in Q . After computing the proposed changes, a new w is determined as described in Making a move below.Hill climbing repeats the following procedure until no improvement is found. Starting from a point δ is determined as follows. In the first iteration δ is set to a small fraction  of the absolute value of wi or a small value  if wi is zero, or a "hint" value set by the user. In subsequent iterations the initial value of δ is its final value from the previous iteration. Having set the initial value, the following procedure is then repeated. The value of Δ is computed. If Δ = 0, δ is multiplied by 4. If Δ < 0 and -Δ <λ, i.e. Q is reduced by too small an amount, δ is doubled. If Δ < 0 and -Δ >μ, i.e. Q is reduced by too much, δ is halved. Otherwise, Δ > 0 (Q is improved) and further exploration is tried. First, smaller values of δ  are evaluated in an attempt to discover an intermediate maximum; if one is found this is repeated to investigate increasingly small changes. If smaller values give no further improvement, larger values are tried  in a similar way. A maximum improvement in Q, denoted Γ, is imposed in order to avoid extreme changes in a single parameter when far from an optimum .A proposed change N values {δi+, δi-, i = 1 ... N} where the + and - superscripts indicate moves in the positive and negative directions respectively. All moves are considered that apply the proposed changes on from k = 1, 2 ... K axes simultaneously, where K is a user-settable parameter may be 1, 2 ... N. When k > 1, new evaluations of Q are required. For example, K = 2 considers eight moves for each pair of parameters: , , , , , , , and  where + or -indicates an increase or decrease in the parameter and 0 indicates no change. The move giving the best improvement in Q is accepted, otherwise the routine terminates. Naively, one might expect that consideration of single-axis moves only (K = 1) would suffice, but in practice it turns out that allowing moves on two or more axes sometimes gives a significantly better final result, with K = 2 sufficient in most cases. It is desirable to keep K small as the number d of evaluated moves per iteration grows very rapidly with K:The search for proposed changes yields a set of 2Q can, when combined with moves on other axes, improve Q and that allowing this possibility also gives significantly improved optimization in some cases. For example, a small increase in the gap open penalty and a small decrease in the gap extend penalty might each reduce Q, but increase Q when both changes are made simultaneously.It also turns out that allowing moves along axes that reduce K = 1 (no multi-axis moves) and immediately applies any proposed move that is found to improve Q. Speed is also improved by increasing μ, λ and Γ. These modifications reduce the number of times the Q function is invoked, saving execution time but sometimes yielding significantly inferior parameters. Directions to try, and the sign (+ or -) first tried, may be selected at random or cycled to minimize systematic bias.A "fast" variant of the hill-climbing procedure sets g2, in which the same affine penalties are applied to all gaps, and g4, in which internal and terminal gaps have different open and extend penalties. The parameters are g, e, G and E; the penalty for an internal gap of length L is g + (L - 1) e and G + (L - 1) E for a terminal gap. Thus g2 is a special case of g4 in which G = g and E = e. The objective score is then the sum of substitution scores minus gap penalties; a maximum-scoring global alignment is found using standard dynamic programming techniques.Let a model be the set of parameters associated with a given objective function. In this work the substitution matrix is regarded as fixed; only gap penalty parameters are included. A gap is a series of indel symbols; formally, a maximal consecutive sequence of indels. If a gap includes the first or last column of an alignment it is described as terminal; all other gaps are internal. While POP has been implemented for a wide variety of models, most of these are works in progress and I will therefore report results for just two models: The following substitution matrix types are considered: BLOSUM , RBLOSUMReference data was taken from three protein alignment benchmarks: PREFAB  version q) for a single pair is the number of correctly aligned residue pairs divided by the number of residue pairs in the reference alignment. The total accuracy score (Q) is the weighted average of q over all pairs, where the weighting is uniform in the case of PREFAB and the inverse of the number of pairs in the original multiple alignment in the case of BALIBASE. It would have been desirable to estimate error bars using a method such as the Bayesian bootstrap [The accuracy measure  and worst (BLOSUM30) is only 0.17%, yet trends observed at lower identities are still clearly discernible. The peak in each curve that identifies the best matrix in each family is at approximately the same evolutionary distance on each set, showing that the best choice of matrix is almost independent of sequence divergence. Similar results are found with g4 (not shown), suggesting that the best matrix is also approximately independent of the gap model, as might be expected.It has been suggested that different substitution matrices might be more effective at different evolutionary distances. For example, CLUSTALW uses more distant matrices to align more distant sequences, and Lassmann and Sonhammer  report tIn all the tests reported here, and others not shown, VTML200 is the best or close to best choice and is recommended as the general-purpose choice. In the VT and BLOSUM series, VT200 and BLOSUM70 respectively are recommended. In the clearly inferior PAM series, PAM100 to PAM150 appear to be best.The above results lead to the conclusion that CLUSTALW's heuristic use of distance-dependent matrices is probably not effective and suggest that a superior strategy would be to use a single high-accuracy matrix. I tested this in CLUSTALW v2.0.9  by settig4 model allows terminal gaps to be assigned different open and extend penalties versus internal gaps .RBLOSUM gave a small but again consistent improvement in accuracy over BLOSUM of around 0.1%. This result is surprising considering that the opposite effect was found when testing homolog recognition .ad hoc algorithm without a strong theoretical foundation and has more heuristic parameters than one would ideally like. It does not scale well to larger numbers of parameters. Implementing and using POP requires an understanding of the input data and some trial and error. However, consistency of trends across different benchmarks, even when differences are very small, and consistency when run with different random number seeds combine to suggest that POP may find a global optimum to within approximately three significant figures on the pair-wise global alignment tests considered here, and regardless provide strong evidence that POP provides a sensitive test of differences between models with the same number of parameters. It is also readily parallelized and, unlike some other approaches, can easily be applied to multiple alignment. The hill-climbing in POP can start from parameters proposed by some other method, such as IPA, providing a lower bound on the training set error. It should be noted that the reduced training set error achieved by POP may come at some cost in generalization error; this is a topic for further study.POP is an Compute resources required by POP are relatively modest Table , needinghttp://www.drive5.com/pop. This is designed for optimization of the g2 and g4 models described here, but can be modified relatively easily for other models by replacing the appropriate Q and alignment functions.An examination of Fig. As I can attest from an abundance of personal experience, manual optimization of alignment parameters is a tedious process that rarely leaves the practitioner feeling confident in the results. Having an automated method at one's experimentation with new and modified algorithms by enabling a relatively trustworthy and painless evaluation of their relative effectiveness. I plan to use POP to explore ideas for improved pair-wise and multiple global alignment algorithms.On the basis of this analysis, the VTML200 matrix is recommended as the most appropriate in general when global alignment accuracy is desired. My results suggest a bias in BALIBASE towards the BLOSUM series of matrices of around 1% in accuracy. While the effect is small, a bias of this magnitude could be significant in validations of multiple alignment methods because differences between the better methods on BALIBASE are of comparable size. Bias towards substitution matrices or gap penalty functions is not unexpected as only 13% of BALIBASE sequences have solved structures, and its alignments were therefore constructed mostly by the use of sequence rather than structure methods. Future studies of alignment accuracy should use data derived independently of sequence in order to avoid such biases.


Aligning RNA sequences with low sequence identity has been a challenging problem since such a computation essentially needs an algorithm with high complexities for taking structural conservation into account. Although many sophisticated algorithms for the purpose have been proposed to date, further improvement in efficiency is necessary to accelerate its large-scale applications including non-coding RNA (ncRNA) discovery.S. cerevisiae genome with six related genomes in a pairwise manner. By focusing our search to the relatively short regions  sandwiched by conserved sequences, we successfully predict 714 intergenic and 1,311 sense or antisense ncRNA candidates, which were found in the pairwise alignments with stable consensus secondary structure and low sequence identity (≤ 50%). By comparing with the previous predictions, we found that > 92% of the candidates is novel candidates. The estimated rate of false positives in the predicted candidates is 51%. Twenty-five percent of the intergenic candidates has supports for expression in cell, i.e. their genomic positions overlap those of the experimentally determined transcripts in literature. By manual inspection of the results, moreover, we obtained four multiple alignments with low sequence identity which reveal consensus structures shared by three species/sequences.We developed a new genetic algorithm, Cofolga2, for simultaneously computing pairwise RNA sequence alignment and consensus folding, and benchmarked it using BRAliBase 2.1. The benchmark results showed that our new algorithm is accurate and efficient in both time and memory usage. Then, combining with the originally trained SVM, we applied the new algorithm to novel ncRNA discovery where we compared The present method gives an efficient tool complementary to sequence-alignment-based ncRNA finders. The RNA worlds in both experimental and computational fields have recently grown rapidly, and non-coding RNAs (ncRNAs) have increased their importance in life sciences. One of the most important breakthrough from the experimental side is the high-throughput experiments which have unveiled the existence of many non-protein coding transcripts in various species ,2. WhileO(NM3) in time and O(NM2) in space, where N and M are the length and the number of RNA sequences to be aligned, respectively  = 1 for all i, where i indicates the column position of the alignment. Secondly, we scan the alignment with a sliding window of W columns. While scanning the alignment, we count the number of gaps in each window and add the number to the ρ[i] whose i is the center of the sliding window. Thirdly, a column position k is randomly selected in accordance with the probability proportional to ρ[i]. Finally, we define the region to be re-aligned around the k. The width of the region is randomly determined between lmin and lmax. When we meet a trivial case , this operator is rejected and a next GA operator is randomly invoked. In this procedure, the W, lmin and lmax are the parameters to be given by user.In 'local re-alignment with weighted stochastic backtracking', a randomly selected small region of the alignment is re-aligned using weighted stochastic backtracking. The region to be re-aligned is selected by the following gap-sensitive procedure. First, we initialize L. This L defines several parameters for the GA operators simultaneously through the following relationships: max_shift = lmax = L and lmin = (W - 1)/2 = ⌊L/2⌋. Hence once L is given, max_shift, lmax, lmin, and W are determined and only L is left as a free parameter. Unification parameter L controls the degree of modification, i.e. larger L leads to a wider search in the conformational space by the mutation operators. It is noted that too large L can cause a slow convergence of the GA.In general, GA has several free parameters such as population size and iteration number which have to be given before execution. To reduce the number of such free parameters, we introduced unification parameter ibid., subsection 2.3.6) is also not used in Cofolga2.In the nomenclature of the GA operators, a 'greedy' means that the operator increases the OF of the child individual compared to that of its parents. Cofolga2 uses 'greedy' operators while Cofolga1 uses 'semi-greedy' operators. The 'greedy' operators of Cofolga2 reject the child individuals which do not satisfy  > ) while the 'semi-greedy' operators of Cofolga1 does not. Cofolga2 does not utilize 'anchor point for mutation operators' which is used in Cofolga1 to avoid gap insertion into highly conserved regions of an alignment (subsection 2.3.2 in ). Local Cofolga2 predicts the consensus secondary structure for the final alignment by backtracking in the averaged BPP matrix as a postprocessing of the GA procedures. To more accurately predict a consensus secondary structure based on the alignment computed by Cofolga2, it is better to use an alignment folding program such as RNAalifold  or PfoldThe quality of pairwise alignments was assessed with structure conservation index (SCI) and sum-of-pairs score (SPS). SCI and SPS were evaluated by RNAz  and baliCmax, noise, w, gap opening and elongation penalties for s, and L . We optimized these six parameters with fourteen pairwise alignments taken from the k2 dataset of BRAliBase 2.1 [Cmax = 50, noise = 0.3, w = 50, gap opening = 30, gap elongation = 4, and L = 50). Throughout this optimization, we used a population size and maximum iteration number fixed to relatively large values, 150 and 150, respectively. The results presented at the Results and discussion section were obtained with this optimal parameter set. The population size and maximum iteration number are left as free parameters.In addition to the population size and maximum iteration number of the GA, Cofolga2 has six free parameters: Base 2.1 . The traWe performed an alignment quality benchmark using BRAliBase 2.1  from whiStramenopiles and "the original 5,000 sequences and structures"  database , where tS2.html, ) were usS2.html, ), CC, prTo predict ncRNAs on the basis of the pairwise alignment computed by Cofolga2, we trained SVM by using a SVM package software, LIVSVM (version 2.84) . The eleWhen the performance of prediction methods depends on their own cutoff value, comparison of the methods becomes not straight forward, since varying the cutoff value leads to a simultaneous change of sensitivity and specificity (i.e. there is a tradeoff between sensitivity and specificity).et al. to compare the performance of ncRNA finders [In the present study, we used receiver operating characteristic (ROC) curve for visualizing the tradeoff between sensitivity and specificity for a range of cutoff value. The ROC curve has been used by Uzilov  finders .sensitivity vs false positive rate plot; sensitivity and false positive rate are defined as follows:ROC curve is defined as TP, FP, TN and FN are the number of true positives, false positives, true negatives and false negatives, respectively. In the case of comparative ncRNA prediction, sensitivity indicates how many positive alignments  are correctly predicted as ncRNA; false positive rate represents how many negative alignments are misclassified as ncRNA. For example, false positive rate = 1% means that one false positive is found when we evaluate 100 negative alignments.where, S. cerevisiae and the contigs of other six fungi  were downloaded at Saccharomyces Genome Database (SGD) [S. cerevisiae  were also downloaded at SGD. We masked the genome sequences of S. cerevisiae according to the other_features_genomic.fasta file to remove repetitive sequences from the genome sequences.The genome sequences  of se (SGD) . Annotat-3) between S. cerevisiae and the other fugal genomes. Then we constructed 'target regions', which are the regions scanned by Cofolga2, as follows. First, the S. cerevisiae genome sequence was divided into intergenic (NotFeature), orf_coding, and rna_ coding sequences in accordance with the annotations in SGD [S. cerevisiae sequence as illustrated in Figure S. cerevisiae genome .To efficiently search for ncRNA candidates with low sequence identity, we focused on our scan to the relatively short  low-identity regions located between two regions which are conserved at sequence level. By exploring the regions neighboring such conserved regions, we can expect to find the ncRNAs hidden in a conserved synteny. The conserved regions were detected by using WU-BLAST  compariss in SGD . Then taet al. [et al. scanned the regions neighboring to singly conserved regions. In other words, our definition is a subset of that of Torarinsson et al..The present approach for generating the target regions is similar to that used in the genome comparison between human and mouse by Torarinsson et al. . CompareWe scanned each target region using a dual sliding window according to the following procedure. Let us call the two genome sequences belonging to a target region genome A and genome B. Subsequences were generated by moving a sliding window of 150 nt with a shift size of 50 nt on each genome sequence, and then all-vs-all pairwise alignment between the subsequences of genome A and those of genome B was performed with Cofolga2. After the comparison, each pairwise alignment was processed by the trained SVM to assign a SVM classification probability to discriminate whether the pairwise alignment contains ncRNA candidates or not.To know how the GA population size and iteration number affect the alignment quality, we studied the population size and iteration number dependence of the Cofolga2's performance, where we define population size = iteration number to reduce the number of free parameters. Figure Figure Since GA is a sampling method utilizing random number, it is important to know how an initial random number affects the alignment quality. To examine random number dependence of Cofolga2, we performed five independent runs for the k2 dataset with different initial random numbers. As a result, we confirmed that the differences between the benchmark results due to the difference in initial random number are very small for a wide range of sequence identity .In the benchmark with the ITS2 dataset, we found that Cofolga2 showed the best performance  measured for Cofolga2 and other structural RNA sequence alignment methods are shown in Figure For the RNA families shorter than approximately 85 nt, Foldalign showed computational times comparable with Cofolga2. For longer RNA families, Foldalign was much slower than Cofolga2 except for K_ chan_ RES  were 7.5 sec. and 13.2 sec., respectively.To examine the memory usage of Cofolga2, we performed a structural alignment of two SRP _euk _arch RNAs, AP003253.3 317 nt) and AC005275.1 (305 nt) taken from the BRAliBase 2.1 k2-dataset  not with the original SVM model trained in [In Figure ained in , but witained in , and thePSVM = 0.9 whose sensitivity and false positive rate are 25.3% and 0.06%, respectively. Cofogla2 with this cutoff PSVM gives a better false positive rate compared to RNAz .When one performs a genomic scan, it is important to use a cutoff value which gives a very low false positive rate, since genome-scale calculations usually process a number of sliding windows containing negative data. To reduce the false positive rate as small as possible, we chose a cutoff S. cerevisiae and the other fungi are 446 bp and 980 bp, respectively. These target regions cover 2,196,982 bp of S.cerevisiae and 2,885,670 bp of the other fungi. After processing the 2,383,802 sequence pairs  by Cofolga2 and the SVM we trained, we obtained 2,807 pairwise alignments which have SVM probabilities ≥ 0.9. The S. cerevisiae sequences of the obtained pairwise alignments were clustered into 'ncRNA candidate regions' by a single linkage clustering, where overlapped or neighboring sequences are clustered. The ncRNA search in yeast (with a PC cluster consisting of thirteen Pentium4 PCs) took approximately twenty days. The obtained candidate regions are summarized in Table S. cerevisiae genome. Based on the total number of alignments processed by Cofolga2 and the false positive rate (0.06%) obtained in the benchmark, we estimated the number of false positive alignments = 1430, leading to / = 51%. This value is almost same with the corresponding value obtained in the human ncRNA finding by CMfinder [We obtained 6,349 target regions whose average sequence lengths for CMfinder .In the present predictions, we obtained 53 intergenic regions, 43 protein-coding regions, and 12 known ncRNA regions as ncRNA candidates Table .S. cerevisiae auto chromosomes is approximately 37%).Figure PSVM ≥ 0.9. The detail of the predicted known ncRNAs is summarized in Additional File PSVM when PSVM ≥ 0.9 was assigned to the both strands.The target regions we obtained includes 82 known ncRNAs. Of these, eighteen loci were included in the alignments with et al. and those by Miura et al. significantly (≥ 50% of the nucleotides of a candidate) overlap 112 and 69 ncRNA candidates of the present study, respectively, while our results show fewer overlaps with the transcripts by Davis et al. and Samanta et al.. Consequently, it turned out that 176 intergenic ncRNA candidates (this corresponding to approximately 25% of our intergenic candidates of S. cerevisiae) have at least one experimental support for their expression. By comparing the genomic positions of our results and the annotation (orf_coding.fasta) of SGD, we found that 95 and 71 intergenic candidates are located within 120 bp from the 5'-end and 3'-end of a CDS, respectively. In addition, eight intergenic candidates  are found at within 120 bp from the 5'- and 3'-ends of two CDSs, i.e. these eight candidates are sandwiched by two protein-coding genes. It is noted that the 5' and 3' ends of our ncRNA candidates can have an ambiguity of a few tens of nucleotides due to the gapped 5' and/or 3' edges of the pairwise alignments.Table Recently, the ncRNAs found in protein-coding regions have been reported. In our prediction, we obtained more than one thousand ncRNA candidates in protein-coding regions. In these, 628 candidates are predicted at sense strand, and 684 candidates were predicted at antisense strand. One ncRNA candidate (SC000407F) simultaneously overlaps two protein-coding genes as sense and antisense since these two protein-coding genes overlap each other.The detail of our prediction results and annotations can be browsed at our web server  in whichS. cerevisiae sequence and two paralogous sequences of S. mikatae taken from the ncRNA candidate SC000056I. Since genomic separation between these two S. mikatae sequences are small (302 bp), these two S. mikatae sequences are a possible ncRNA cluster. Figure S. cerevisiae sequence of an intergenic ncRNA candidate (SC000383I) which was found at 39,052 bp to 39,158 bp of chromosome 3 and aligned with the sequences of S. mikatae and S. paradoxus. As can be seen from figures By manually inspecting our prediction results, we found four intriguing examples containing conserved secondary structures across multiple species/sequences which have characteristic secondary structures in spite of their low average sequence identities. Figure S. cerevisiae and S. kudriavzevii). It is noteworthy that almost all sequences contained in SC000983F are antisense sequences. The sequences of S. cerevisiae are antisense sequences of a gene CLN1 coding G1 cyclin which is involved in regulation of the cell cycle, and the sequences of S. kluyveri and S. kudriavzevii are antisense sequences of predicted ORFs according to the SGD annotation. These results imply that this ncRNA candidate is a functional antisense ncRNA with characteristic secondary structures.The ncRNA candidate SC000983F is one of the longest regions predicted in the present study. This candidate contains a consensus secondary structure motif shared by three species Figure . In addiS. cerevisiae sequence of ncRNA candidate SC01074F is located at the sense strand of PMS1, a verified ORF coding an ATP-binding protein. The sequences of S. paradoxus and S. bayanus, which overlap the predicted ORFs of each genome according to the SGD annotation, are structurally aligned to the S. cerevisiae sense sequence in SC01074F  have at least one experimental evidence for their expression according to the tilling array/cDNA data in literature -53.S. cerevisiae and related species using a SVM trained with the sequences and alignments taken from BRAliBase 2.1. As a result, we successfully obtained ncRNA candidates located at 714 intergenic regions and 1,311 protein-coding regions including antisense sequences, > 92% of which is novel candidates since they show no overlaps with the genomic positions of the previous predictions and known ncRNAs. Indeed, our approach is not suitable for identifying all ncRNA sequences embedded in a genome, it gives a valuable tool complementary to the sequence-alignment-based ncRNA finders such as RNAz and QRNA, since the present method often found the ncRNA candidates which cannot be found by such sequence-alignment-based ncRNA finders. The results of the present study indicate that still a number of structured RNA transcripts with significant structural and evolutional signals is hidden in genomic sequences, and further exploration for novel ncRNAs using computational methods is inevitable to unveil the RNomics of genomes.As can be known from a number of recent papers describing various structural RNA sequence alignment programs, it is a difficult problem to find a good RNA alignment with low sequence conservation. In the present study, we developed a new efficient GA for constructing structural RNA pairwise alignment with a new objective function and random alignment generation algorithm. The new GA is accurate and efficient in both time and memory usage, hence we applied it to the comparative ncRNA discovery between Non-profit, academic users can download and use the executable files at the Cofolga2 website .The file names of the RNA sequence pairs used in the GA parameter determination and memory usage test. The top fourteen files were used for the GA parameter determination and convergence test. The other one (denoted by *) was used only for examining the maximum memory usage.Click here for fileInitial random number dependence of the benchmark result. The benchmark results for the BRAliBase2.1 k2-dataset with five different initial random numbers. The results denoted by R = 12345 are same with those of Figure R = 12345.Click here for fileKnown ncRNAs predicted in the present comparative genomics. The 'ID' column indicates the index assigned for the predicted ncRNA candidates in the present study. The 'Same/Diff' column shows whether the strand of known RNAs are correctly predicted or not, where 'Same' and 'Diff' indicate "strand is correctly predicted" and "not correctly predicted", respectively. For snR63 and NME1, both strands are predicted as ncRNA candidates. The 'Chr.', 'begin', 'end', and 'strand' columns give the genomic positions and strand of the ncRNA candidates. The 'RNA name', 'SGDID', and 'SGD annotation' columns correspond to ncRNA gene names, IDs, and annotations given in SGD, respectively.Click here for fileConsensus structure and alignment of a sequence pair taken from ncRNA candidate SC000983F. This alignment is composed of a sequence of S. cerevisiae  and a sequence of S. kudriavzevii . The sequence identity of this alignment is 32%.Click here for file


The work showed that the integrated suite of software tools for detecting criminals using DNA databases has achieved the overall objective by providing a working platform for sequence analysis. The work also demonstrated that by integrating BLAST and FASTA , plus an additional implementation of PSA  and TR analysis tools (for detecting tandem repeats) with the rest of the utilities supporting tools (databases and files management) developed, it is entirely possible to have an initial working version of the software tool for criminal DNA analysis and detection work. The integrated software tool has great potential and that the results obtained during the tests were satisfactory. The recent South Asia Tsunami incident has renewed the need to establish a quick and reliable system for DNA matching and comparison. This work may also contribute towards the quick identification of victims in many disasters.Future works are to further enhance the existing tools by adding more options and controls, improve upon the visualisation display, and to build robust software architecture to better manage the system loadings. Fault tolerance enhancement to the system is one of the key areas that can further help to make the entire application efficient, robust and reliable. Apart from the victim, there are no other witnesses, but some evidence has been found at the crime scene. Blood and hairs were gathered by the crime scene investigators, and it was believed that it could be left by the suspect. From the evidence collected, would they be sufficient to provide a clue as to how the murder was committed and who was the murderer? Imagine a deoxyribonucleic acid (DNA) profile  a DNA fingerprint belonging to a specific person must have a high probability. In other words, the confidence level that a correct match is obtained must fall within an acceptable range, and (2) the DNA sample for analysis must not be contaminated by any external sources, therefore it is essential and important to ensure the integrity of the DNA sample. The result of the DNA analysis will be detrimental if the standard process is not being followed closely. Due to the importance of such systems, even a slight error can have a profound impact on the outcome.The aim of this study is to develop an integrated software tool, using the DNA typing concept and genetic sequence analysis algorithms  for detecting criminals using DNA databases. The initial phase of the study is to understand the requirements of building a DNA database system that can assist forensic experts to carry out an automated search and match operations on a DNA database. Once a general understanding is achieved, the next step is to design and build a software system that will fulfil such needs. A number of important sequence alignment algorithms will be reviewed in section 2 and chosen for the implementation of this software system. The end delivery of this study is a working DNA analysis tool, a cost effective one, which serves as a proof of concept application and will work on test data stored in the DNA databases.formatdb and Biojava.The DNA analysis application will be built using Netbeans Integrated Development Environment (IDE). Netbeans IDE (current version is 3.6) is an open source WYSIWYG Java development tool (current Java version is 1.4.2). The application is designed and developed to run on Microsoft Windows XP. Since the application  is written using Java programming language (version 1.4.2), it can be run on any computer platforms which has a Java Virtual Machine (JVM) installed. The database schema will conform to the FASTA format (i.e. a format that is commonly used for sequence search) and stored using facilities provided by The system architecture of the application has a database to contain all the criminal DNA data, a set of DNA sequence analysis algorithms, and a Java GUI based DNA analysis tool for results display and sequences manipulation facilities. However, due to the confidentiality and sensitivity nature of the data (i.e. involving human DNA), a high security clearance from the relevant authorities is required in order to have access to the real data, which makes it difficult to acquire real data for the testing. Therefore, in this work test data, a combination of self-generation data supplemented by data obtained from the Internet Genome Databases will be used. Nevertheless, it is sufficient for testing the software application and for the purpose of concept demonstration.Since the subject matter on DNA typing is wide, and with only limited resources and time, the emphasis of this study is therefore confined to the implementation of sequence alignment algorithms, such as pairwise sequence alignment (PSA), short tandem repeats search algorithm, BLAST and FASTA alignment algorithm, in the area of forensic science applications.2This section provides an overview of the concept of DNA Typing and its scientific basis. It also provides a detailed study into various DNA sequence alignment algorithms that are hitherto available.2.1Often, DNA fingerprinting deals with DNA sequences at the molecular level. Therefore, it is important to understand terminologies like locus, allele, polymorphism (and their different types) and tandem repeats. These are discussed in the following paragraphs.1) depicts the sequence polymorphism at the fifth base pair from the left.The physical location (i.e. at the molecular level) in the genome is called locus . The presence of multiple alleles  of a marker at a single locus is known as polymorphism. There are two kinds of variation (1) sequence polymorphisms and (2) length polymorphisms. Sequence polymorphisms are usually simple replacement of one or two bases in the genes themselves . For exa2).This is different in the case of length polymorphisms. Length polymorphisms are known as the variations in the length of the DNA molecule. For example, given three blocks of repeats (with similar DNA sequences), each block is known as a tandem repeat as shown in Fig. .Research has shown that only 5% of the human genome contains useful genes. Genes are portions (sub-units) of chromosome that contain useful information and serve as templates for the production of proteins. However, the rest of the 95% of the human genome does not contain genes that code for any proteins. Sometimes this section of the human genome is known to be “junk DNA”. Until recently, studies have shown that these “junk DNA” do have important functions such as regulating gene expression, assisting in cellular machinery and serving as chromosomal structure support .It is in these non-coding regions of the human genome where the VNTRs are mostly located. The number of copies of a VNTR determines the size of a DNA fragment, and each individual has a unique number of tandem repeats at specific molecular location (i.e. loci) on his or her chromosome. Essentially, this important principle serves as a building block of DNA evidence that is used today in many forensic works to allow unambiguous identification of suspects.2.2After gaining understanding of the scientific basis of DNA typing, we now turn to a few sequence alignment algorithms that perform appropriate tasks. In many applications of Bioinformatics, especially in the area of forensic studies, we need to examine the possible optimal alignment between two or more related sequences  and the close relationship between them. For this reason, it is important to include them in our studies and understand their vital roles and functions in forensic applications.2.3X’ if the same character can be found in sequence B. Next, the computation advances to the next character of sequence A and the same steps are performed. Stop when all the characters in sequence A have been compared with all the characters of sequence B. At the end of the computation, a dot plot is produced as illustrated in Fig. (3).One of the simplest methods for evaluating whether two sequences are similar is to use a dot plot approach -7]. Fir. Fir7]. 4). Whereas in Fig. (5), similar sequences tend to produce a broken diagonal line and the gaps in between them indicates that there are mismatches between the two sequences. If the two sequences are distantly related with very few similarities, it will not only contain more diagonal lines in the direction parallel to central diagonal, but also broken diagonal lines as in Fig. (6). The distance between the central diagonal line and the surrounding sub-diagonal lines represents the correction needed by introducing gaps to align the two sequences.One of the shortcomings of a dot plot is that it can be complex and overcrowded with dots when the sequences become too large and similar . Normally, identical sequences will give rise to a single diagonal line across the plot as shown in Fig. , which will be used and compared with other characters in another cart. If the total number of matches between these two carts is higher than or equal to the predefined cutoff threshold, a match is found, otherwise no match is found and the sliding window then advances to the next set of characters and the process is repeated. The sliding window with a cutoff threshold helps to reduce noise in the dot plot.2.41.An alignment between two sequences is defined as a pairwise match between the characters of each sequence. So, pairwise sequence alignment is a technique used to find the optimal pairing of sequences  that preserves the order of characters in each sequence. Gaps may be introduced in the alignment process so that the total score can be maximized -9. This via dynamic programming. Dynamic programming is a concept, which refers to solving an instance of a problem by taking advantage of computed solutions for smaller subparts of the problem. Three alignment methods will be reviewed in the following sections, namely global, semi-global and liner alignment algorithms. In addition, two penalty schemes, the linear and affine gap penalties, will be discussed for each alignment method.With the generalisation and understanding of pairwise sequence alignment, we are now ready to tackle more sophisticated algorithms. The algorithms described in the following sections perform sequence alignment 2.4.12.Regardless of the location of the gaps in a sequence, global alignment will give penalty to gaps identified during sequence comparison. As such, the entire sequence will be considered as a whole entity during the alignment process. The “Needleman and Wunsch Algorithm” is one such global sequence alignment algorithm. The algorithm is described in Table 2.4.23.If the aim is to use a shorter sequence to search for a larger sequence for a possible sub-sequence match, semiglobal alignment will be a better choice as compared to the global alignment as the latter will penalise gaps at either ends of the alignment. Semi-global alignment solves this problem by not penalising gaps found at either ends of a sequence. The semi-global alignment with linear gap penalty is described in Table 2.4.34.If the aim is to find sub-sequences that are similar to any part of a long sequence, both the global and semi-global alignments are not suitable because both penalise every non-matching position. Hence, the local alignment is proposed to solve this problem and one such method is the “Smith-Waterman Algorithm”, which is described in Table 2.4.4k is more probable than k gaps of length 1. This is especially so for a single mutation event that can insert or delete a stretch of characters in a sequence. In addition, distinct mutational events could also lead to separated gaps being produced. A linear gap penalty function treats all these events in the same fashion. However, the affine case distinguishes these events and treats them separately. The affine gap penalty function uses two penalties, which are the gap opening penalty, referred to as h, and the gap extension penalty referred to as g. The only difference between a global alignment with linear gap penalty and a global alignment with affine gap penalty is the penalty function being used, and instead of only one similarity matrix being computed , three similarity matrices are being computed . The rest are similar. The global alignment with affine gap penalty is tabulated in Table 5.In many occasions, gap of length 2.4.56 summarised the semi-global alignment with affine gap penalty.Table 2.4.67.The local alignment with affine gap penalty is detailed in Table 2.4.7et al.  and sequence B > threshold on a diagram. The output is a plot diagram indicating those sections with two identical sequences as illustrated in Fig. (9).The Dotplot software component has four input parameters as shown in Fig. (10).A GUI was developed using the Java Internal Frame (Java Swing Library) and integrated with the Dotplot algorithm. The user specifies the input parameters, such as sequences to be compared, the window size and the threshold, and the type of file to be imported (i.e. either DNA or protein sequence file) and click on the <Apply> button to run the Dotplot program. The result of the plot is displayed on the “Results” panel as presented in Fig. (11). The PSA component was implemented to perform three different types of alignment with either linear or affine gap penalty function depending on the user’s selection. They are (1) Global Alignment with linear or affine gap penalty, (2) Semi-Global Alignment with linear or affine gap penalty and (3) Local Alignment with linear or affine gap penalty.The PSA software component has a number of input parameters that can be set .The PSA GUI was implemented as a Java Internal Frame. It has controls to handle all the three types of PSA discussed earlier on. That is, the user is able to select a single query sequence to search against a database containing many target sequences, or to search against a file containing multiple target sequences, or to search only one target sequence. Once the user has selected the desired option, he/she will be prompted to enter the desired values. Finally, to execute the application, the user can click on the <OK> button to run the PSA operation. The result is displayed on the “Results” text area, as seen in Fig. .The GUI was developed from ground up. The layout was designed to accommodate a partial list of BLAST input parameters (not the full parameter list). Hitherto, the remaining input parameters are left out. However, the GUI was developed to allow future expansion in mind without too much hassle. If needed, the GUI can be extended using the Netbeans IDE GUI Editor Tool. The BLAST GUI is shown in Fig. .The inputs to TR search tool are: (1) suspect’s DNA sequence; and (2) minimum and maximum TR word size. During stage 1, the suspect’s DNA sequence is analysed and the TR tool will locate all possible ETRs found within the nucleotide sequence based on the selected TR word size. The tool allows the TR word size to be configured freely, as well as to shorten or widen the sliding window size . Once all the possible TRs are identified, the user is able to select one or more TRs to scan the selected databases for a possible match. If one or more matches are found, the results are displayed on the MMI. See Fig. (15) depicts the GUI layout of the tandem repeats search tool. To upload a suspect’s DNA sequence, click on the “folder” button. A file selector dialog will be prompted. Enter a minimum and maximum word size for the TR search. Click on the “Enter” button to start analysing the DNA sequence. The TR algorithm will perform TR analysis on the sequence being entered. All the possible ETRs are displayed in the STR Word Text Area. For instance, “ATG (3)” means that “ATG” is found to be a continuous TR within the sequence and “(3)” means that there are three such TRs.Fig. . Click <OK> to execute the database scan and the final results of the suspect’s ID and the associated DNA sequence in the databases.As Bioinformatics advances, there is an ever-increasing need to store large amounts of biological data for analysis work. It is common to work with very large sequence databases that are unable to fit into the current physical memory available. Hence, the preferred way to handle large amounts of biological sequence is to use a dedicated database system. FASTA and BLAST provides a “Fasta” format database for this purpose. They use the “formatdb” routine to create their databases. BioJava also provides a set of library APIs (Application Programming Interfaces) for data creation, update and modification.As such, a number of database tools have been developed in this work for such purposes and are summarised as follows:Tool to create “Fasta” format database:The “Fasta” format is widely accepted by FASTA and BLAST applications. In fact, it is one of the most widely used data format in many of the third-party applications.In this work, both of the FASTA and BLAST use this format.Tool to create BioJava compatible format database:BioJava offers a simple and efficient sequence database implementation backed by one or more sequence files on disk. These files can be in any format, as long as a suitable sequence format class exists.The current PSA software component uses this format.Text File Editor:To create, modify and update sequence or database files.via the command line input. Therefore, a GUI is developed to provide a more user-friendly interaction.To create a local customised database for BLAST and FASTA applications, the “formatdb” routine, which is provided by the BLAST and FASTA packages, is used. However, it is rather inconvenient to use the “formatdb” command manually To upload a file containing the sequences, click on the “folder” icon. After that, select the appropriate file type. Choose either “NUCLEOTIDE” for DNA sequences or “PROTEIN” for protein sequences. By default, it is set to “FALSE” for parse output. Click the <OK> button when done to initiate database creation.For the PSA component, the BioJava compatible format database is used. However, BioJava Library only provides a list of APIs, and hence there is a need to build these database tools.16) depicts the GUI layout.The first database tool is the “Create DB Index” routine. This routine is responsible for creating a BioJava DB Index for storing all the sequences on disk. It functions like a schema. Fig.  shows the program has four parameters, which are:The data used for testing the software tools is generated from a custom-built software program. Fig.  shows the results obtained for the experiment.The sequence alignment test uses PSA, BLAST and FASTA. Each sequence alignment algorithm performs an alignment of sequences taken from the test datasets. Each test data starts from as small as ten records and can generate up to a maximum of one thousand records. Each record contains a number of tandem repeat patterns with a maximum of one thousand “AATG” tandem repeat patterns being generated. For the three sequence alignment algorithms, they are subjected to the same datasets and individual algorithm performance (time in milli-seconds) for each dataset recorded in a spreadsheet. Fig. .The result obtained from the test, using the query sequence and the target sequence, indicates that PSA performs the alignment correctly when benchmarked against BLAST and FASTA. The sequence alignment results from the three algorithms indicating the correct alignment, which starts from positions 9 – 24 as presented in Figs. (22) depicts the time taken for searching the exact tandem repeats within a given test sequence. A dataset that contains a number of sequences with different sequence lengths was used for the test. As the length of the sequence increases, the time taken to search the exact tandem repeats within a sequence increases exponentially. This is as expected due to the number of tandem repeats getting larger with longer sequence length as it would take a longer time to process all the possible ETRs with a sequence.Fig. (23) depicts the results obtained.The following test has been conducted to search through the different sets of sequences (within a dataset) to locate a possible match for the given TR pattern. For example, “AATG” is the TR pattern and the number of TRs within the query sequence is known. The test is to search through the databases (which contain many sequences) given the query sequence detail to find a possible match. Fig.  is the result generated by the Dotplot program. An “=” sign indicates that there is an alignment. The diagonal lines formed by the “=” sign represent the alignment of the sequences.Fig.  during runtime; in this event, the software hangs. It would be desirable to enhance the robustness of the system for real operation needs.Adding more analysis tools to the existing system to provide a comprehensive software environment for sequence analysis.Enhancement to the system results visualisation. Current implementation is rather rudimentary as the work focus is on the overall software architecture and integration.As BLAST and FASTA are techniques for relating homologies, which are useful for finding relationships between sequences that are less identical. Thus one should look at EXACT match, to avoid identifying an innocent person as a criminal.Finding of similarities using BLAST and FASTA is commonly used, one should not restrict to only for NOT identical match. These algorithms come with a confidence level between 0-100%. Unless a 100% level is obtained, one does not normally convict a person using only 85-95% confidence level. Having said that, bear in mind that DNA evidence is circumstantial which means that it can strongly suggest something but does not prove it. In all, one does not convict a person based on DNA evidence since current law does not support this method of conviction either.8The results obtained from the tests have shown that the integrated software tool performs as expected. The work suggested that by integrating BLAST and FASTA , plus an additional implementation of PSA and TR analysis tools, with the rest of the supporting tools (database management) developed, it is entirely possible to have an initial working version of the software tool for criminal DNA analysis and detection work. The system has great potential and that the results obtained during the tests were satisfactory. The following observations can be made:PSA algorithm is suitable for smaller sequence alignments as compared to BLAST and FASTA, which are designed for large sequence database searches.All three-sequence alignment algorithms produced the same results using the given set of test data. This verified the correctness of the algorithms.PSA is capable of running in multi-threading mode. This may help to improve its performance if the algorithm is executed under multiple processors.The TR search tool has produced promising results for TR analysis within a sequence  and found matches against multiple TRs databases. However, the limiting factor of the tool is its performance using large data sets.The Dotplot works well using the test data. It is a good tool for performing preliminary sequence alignments, helping to locate segments of sequence similarities. Subsequently, these segments can be further examined using PSA, BLAST or FASTA.The administration tools provide user-friendly files and databases manipulation capabilities, which quicken the process of data management and persistent storage.