Skip to main content

EGNAS: an exhaustive DNA sequence design algorithm



The molecular recognition based on the complementary base pairing of deoxyribonucleic acid (DNA) is the fundamental principle in the fields of genetics, DNA nanotechnology and DNA computing. We present an exhaustive DNA sequence design algorithm that allows to generate sets containing a maximum number of sequences with defined properties. EGNAS (Exhaustive Generation of Nucleic Acid Sequences) offers the possibility of controlling both interstrand and intrastrand properties. The guanine-cytosine content can be adjusted. Sequences can be forced to start and end with guanine or cytosine. This option reduces the risk of “fraying” of DNA strands. It is possible to limit cross hybridizations of a defined length, and to adjust the uniqueness of sequences. Self-complementarity and hairpin structures of certain length can be avoided. Sequences and subsequences can optionally be forbidden. Furthermore, sequences can be designed to have minimum interactions with predefined strands and neighboring sequences.


The algorithm is realized in a C++ program. TAG sequences can be generated and combined with primers for single-base extension reactions, which were described for multiplexed genotyping of single nucleotide polymorphisms. Thereby, possible foldback through intrastrand interaction of TAG-primer pairs can be limited. The design of sequences for specific attachment of molecular constructs to DNA origami is presented.


We developed a new software tool called EGNAS for the design of unique nucleic acid sequences. The presented exhaustive algorithm allows to generate greater sets of sequences than with previous software and equal constraints. EGNAS is freely available for noncommercial use at


Deoxyribonucleic acid (DNA) has the remarkable ability of specific molecular recognition with regard to its sequence of the nucleic bases adenine (A), thymine (T), guanine (G) and cytosine (C). This sequence recognition is based on the Watson-Crick base pairing of complementary bases A-T and G-C[1].

However, in mixtures of many different DNA strands in solution or on surfaces a correct hybridization is crucial for most applications referring to genetics, DNA nanotechnology, DNA origami, and DNA computing[28]. Cross hybridizations have to be minimized by controlling the uniqueness of all possible subsequence motifs in the set of used sequences. Additionally, specific care has to be taken with regard to secondary structures that can occur by folding due to intrastrand interactions. Hairpin structures reduce the hybridization efficiency, the binding rates, and thus, the detection limits on DNA microarrays[9].

Here we describe the exhaustive DNA sequence design algorithm EGNAS (Exhaustive Generation of Nucleic Acid Sequences). This algorithm is realized in a C++ program and is used to generate sequences with controlled intra- and interstrand properties. EGNAS is compared with previous tools. Data from selected publications are reanalyzed by applying EGNAS to proof the viability of this new algorithm.


We realized the sequence design algorithm EGNAS in a program written in C++. It is currently a command line program that was compiled by GNU Compiler Collection for Linux, Mac OS X and Microsoft Windows operating systems. EGNAS is freely available for noncommercial use at A manual and the first version of EGNAS are attached as additional files [see Additional files1,2,3 and4].

For comparison of computing time, sequence generations were performed on one and the same computer system with IntelCoreTM i5 CPU 3.20 GHz and 4 GB RAM. The operating system was a 32-bit Ubuntu 10.04 (Linux). The intra- and interstrand properties were verified by the analysis option of the software Seed[10, 11].

Results and discussion

Previous software and algorithms

Numerous strategies for the DNA sequence design are described in literature[24, 1025]. We do not intend to analyze all algorithms, but we evaluate our results directly by comparing with previously published data. Brenneman and Codon gave a brief overview to the topic of strand design[26]. To our best knowledge, so far, there is no software tool available offering the possibility to design oligonucleotide sequences with adequate consideration of intra- and interstrand interactions. Furthermore, a maximum set size of generated sequences is desirable for microarrays or DNA strands used as TAGs for addressing a high number of different targets.

Sets of sequences with defined properties can be achieved with the program Seed developed by Seiffert et al.[10, 11], as well as with the software tools DNASequenceGenerator and CANADA by Feldkamp et al.[15, 20, 22, 25]. These programs are freely available, work efficiently, provide satisfactory set sizes and meet the criteria of uniqueness among all sequences of a set concerning interstrand properties. However, it is difficult to achieve a big set size with these tools and concurrently to control intrastrand properties. It is hardly possible to avoid at the same time self-complementary subsequences, stem-loop structures and repetitions within one and the same strand, as these intrastrand properties can not be defined separately from the interstrand properties.

Both Seiffert and Feldkamp use the criton concept introduced by Seeman[2, 3]. Critons are all L c bases long overlapping parts of a sequence strand. Their complements are termed anti-critons. Based on the criton rules, strands are generated consisting of unique basic sequences. There are 4 L c critons and anti-critons. This fact limits the maximum possible number of valid sequences N s with the length of L s bases. Every sequence consists of (L s L c + 1) overlapping segments. To obey the criton rules, every basic sequence is used only once in the whole set and its complement is not allowed. If L c is even, one half of all possible sequences is complementary to the other half, and N s can be estimated using

N s = 4 L c 2 ( L s L c + 1 ) .

If L c is odd, the maximum set size is estimated applying Equation (2), because there are 4 L c 2 self-complementary basic sequences that are not allowed.

N s = 4 L c 4 L c 2 2 ( L s L c + 1 )

Further limitations result from restrictions with respect to the guanine-cytosine content (GC content) and forbidden sequence motifs defined by the user.

Figure 1
figure 1

Sliding. Example for the sliding of a complementary sequence pair due to the repetition of 7 bases long subsequences.

A novel sequence design algorithm

Sequence design criteria and options

The sequence design algorithm EGNAS offers the user different options. Consequently, the generated sequences meet certain criteria:

  1. 1.

    Sequence length L s .

  2. 2.

    Length of basic sequences (criton length) L c .

  3. 3.

    Exact GC content or its range.

  4. 4.

    No terminal adenine or thymine in the strand./The demand on “GC ends”.

  5. 5.

    Forbidden sequences./Included sequences.

  6. 6.

    Length of forbidden self-complementary subsequences L sc .

  7. 7.

    Forbidden stem length of hairpin structures L hp .

  8. 8.

    Length of subsequences that are not allowed to be repeated within one and the same sequence (“sliding”) L sl .

  9. 9.

    Forbidden length of subsequences that could interact with complementary neighboring sequences L ni .

The EGNAS software provides the option to calculate the molar free enthalpy of DNA duplex formation. This calculation is based on the nearest-neighbor model[27] with parameters taken from SantaLucia et al.[28]. Marky et al. investigated the helix-to-coil transition and described the “fraying” of a DNA double strand at the terminal T-A base pairs[29]. In the nearest-neighbor model, SantaLucia et al. assigned a penalty of 0.4 kcal/mol for strands with a thymine base at the 5’ end[28]. Thus, with EGNAS it is possible to generate sequences that do not contain terminal adenine or thymine. The risk of fraying in the designed DNA strands can be reduced by only allowing guanine or cytosine at the terminal strand positions. We refer to this option as the demand on “GC ends”.

Guanine-rich motifs in DNA can form parallel four-stranded complexes[30]. Furthermore, it is known that telomeric ends of eukaryotic chromosomes contain guanine-rich overhangs and form intra- and intermolecular structures[31]. Therefore, the subsequences “GGG” or “CCC” are often forbidden in DNA strand design to circumvent the formation of guanine tetrads between hairpins.

Figure 2
figure 2

Flowchart of the exhaustive design algorithm. Simplified description of the exhaustive design algorithm of EGNAS. The input of the design criteria and options is used to generate basic sequences and the filter. The filter extracts valid basic sequences before the set generation. Additionally, strings are filtered within the sequence generation.

Homopolymeric runs of adenine or thymine are unwanted for certain applications requiring DNA polymerization. This process depends on the fidelity of DNA polymerases, which is influenced by the strand sequence that should be replicated. The repeat of one and the same base in the sequence can lead to error-prone replication through template-primer slippage[32]. Therefore, adenine or thymine runs, starting from four repeats, are preferentially forbidden for the sequence design. Forbidden sequences or subsequence motifs are specified by listing each of them in a set that is denoted further on in curly brackets. For instance, if both subsequences “GGG” and “CCC” are not allowed, the set containing the forbidden elements will be {GGG;CCC}.

Intrastrand properties

EGNAS offers novel options concerning the intrastrand properties. These are essential prerequisites to avoid secondary structures due to self-complementary sequences and hairpin formation. In contrast to the criton concept[2, 3], as applied by Seiffert et al.[10, 11] and Feldkamp et al.[15, 20, 22], the novel algorithm treats intrastrand properties separately. Below, we define the used terms and describe these properties.

Hairpins and self-complementarity

Hairpin structures are also called stem-and-loop structures. They consist of two complementary arm sequences and the loop sequence. The arm sequences are able to form the double-stranded stem while being connected by the single-stranded loop sequence. Self-complementarity is treated as a special case of a hairpin when the loop size is zero. Therefore, a self-complementary sequence has always an odd number of bases. If hairpin structures with a L hp bases long stem are forbidden, self-complementary subsequences that are equal to or longer than 2L hp bases will consequentially be omitted.


We use the term “sliding” for an intrastrand property of a sequence. Sliding denotes that a subsequence can be found several times at different positions of one and the same strand. If a complementary strand hybridizes with such a strand, different positions will be possible. Thus, sliding between the hybridizing strands would take place. For example, the sequence pair in Figure1 allows sliding due to the repetition of 7 bases long subsequences (L sl = 8).

Interaction with the neighboring sequences

If primers are paired with TAGs, a special criterion for the TAG sequences will arise. In this case, primer foldback can become a problem. For example, the formation of hairpins will cause signals in single-base extension (SBE) reactions even lacking a template.

In the literature different approaches are given for the primer-TAG pairing. Those methods work with sets of previously found TAGs. Hirschhorn et al. suggested the calculation of an empirical foldback score[7]. Accordingly, if a foldback score is greater than a threshold value, the SBE primer will be paired with another TAG. Kaderali et al. used a free energy alignment algorithm for primer-TAG pairing[19].

We limit the interaction with neighboring strands already during the sequence generation. Therefore, all possible L ni bases long complementary subsequences of a neighboring strand are forbidden for the generation of the corresponding TAG. This is especially intended for designing strands where a molecular spacer is located between the neighboring sequence and the TAG. For example, such a spacer could be a hexaethylene glycol moiety[9]. Actually, overlapping subsequences, which would evolve through directly attaching one neighboring sequence to either the 3’ or 5’ end of a TAG, are not considered. Nevertheless, in Section “Combination of TAGs with primers” we show that even if TAGs are attached to neighboring sequences without an intended spacer, hairpin formation will still be diminished significantly.

Description of the exhaustive design algorithm

In the following section we describe, how EGNAS provides a set of valid sequences. A simplified flowchart of the underlying algorithm is given in Figure2. Initially, all L c bases long subsequences in the included and neighboring sequences are read out and saved together with their complements as forbidden sequences. The included and neighboring sequences are predefined by the user, meaning that L c bases long cross-hybridizations are not allowed to occur between one of them and any of the generated sequences. Subsequently, all possible basic sequences with the length L c are generated in such a way that they obey the criteria specified by the user. Thereafter, a string is formed stepwise from left to right by randomly combining allowed basic sequences. If the sequence length is not divisible by the criton length, additional basic sequences of the remainder length will be generated and used for the termination of the sequence design. After each step, the growing sequence is checked against the criteria chosen by the user.

Figure 3
figure 3

Influence of the GC content and GC ends on the set size. Dependence of the set sizes on the GC content. Sets of 10 bases long sequences with L c = 4 for global criton rules were generated. Averages ± standard deviations were calculated from 1,000 sets for restricted and from 10,000 sets for unrestricted conditions [0; 100]. The maximum set size N(max) = 17 is shown.

After trying all of the valid basic sequences as suffixes, there can still be combinations of basic sequences that do not allow appending of any remaining basic sequence, because the forming strings do not meet at least one of the necessary criteria. In such a case, this combination is forbidden to occur at the beginning of a string. Thus, a new trail will skip the basic sequences leading to the forbidden ones.

A sequence will be saved, if it has the defined length and meets all criteria. Every L c bases long subsequence and its complement within this generated strand are forbidden and removed from the list of basic sequences. Then, the next sequence generation starts by the analog combination of the remaining basic sequences.

If all basic sequences are either forbidden or used, the sequence generation of the current set will be finished. Furthermore, the user can force every set to be complete. Namely, no additional sequences exist with the same user-defined restrictions of the set. The generation of a complete set is at the expense of computing time. Hence, limiting the maximum number of generated sequences can reduce the computing time significantly.

Software comparison and performance tests

Global criton rules and intrastrand properties

In order to compare the novel algorithm with other available software tools, it was necessary to distinguish between two different settings of options for the sequence generation. On the one hand, the preassigned criton rules in Section “Intrastrand properties” are valid for the whole set of generated sequences. This holds for Seed[10, 11], CANADA[25] and DNASequenceGenerator[15, 20]. In this cases, we refer to “global criton rules”. It means for the intrastrand properties (L sc , L sl and L hp that they are treated equally to interstrand criteria. In detail, if the criton length is L c , L sc bases long self-complementary subsequences will be forbidden, as well as sliding of L sl bases long subsequences. Hairpin structures with a stem lengths of L hp bases and longer will not be allowed. Thereby, the following relations hold:

  1. 1.

    L c = L sl = L hp

  2. 2.

    If L c is odd: L sc = L c

  3. 3.

    If L c is even: L sc = L c + 1

On the other hand, EGNAS offers a control of intrastrand properties independent of the criton rules. In this case, the criton rules only control the cross hybridization among different sequences not taking into account self-complementarity, hairpins or sliding.

Influence of the GC content and GC ends on the set size

The influence of the GC content and GC ends were investigated by generating sets of sequences with global criton rules, L c = 4. Those sets were generated for every possible GC content of 10 bases long sequences.

The restriction of the GC content can lead to a reduced set size as shown in Figure3. While 50% GC content is not necessarily a restriction to the set size, extreme values of the GC content limit the set size significantly. At GC contents of 30% and 70%, the set size is almost half compared with the set sizes achieved without restrictions or with 50% GC content.

The demand on GC ends in combination with the restriction of the GC content to exactly 50% lowers the set size significantly. Otherwise, no evident reduction of the set size is observed. With Equation (2), the maximum number of sequences is 17. With 16 sequences a yield of 94% could be achieved where no restrictions were set or only the GC content was forced to be 50%. These are high set sizes in relation to other calculations performed by Feldkamp[22] and those that are presented in Table1.

Table 1 Influence of the criton and sequence length on the set size

Influence of the criton and sequence length on the set size

Table1 shows the dependence of the set size from the combination of sequence and criton length. For each of the 124 combinations, 10 sets were calculated with L c for global criton rules. In accordance with Equations (1) and (2), the set sizes grow with higher criton length and lower sequence length. Of course, the criton length has the highest influence, as it is in the exponent of those equations. Feldkamp presented an analog table[22].

In average, Feldkamp generated 84.4 ± 4.3% of the maximum possible numbers of sequences per set. Our new approach has a slightly higher average yield of 87.0 ± 4.6%. In 120 of the 124 different combinations of criton and sequence lengths, examined in Table1, set sizes equal to or higher than those of Feldkamp’s tool were calculated with EGNAS.

Variation of the set size

Another interesting issue of sequence sets is, how their sizes will be distributed, if the same options are chosen for multiple sequence generations. Figure4 compares the results of Feldkamp’s[22] and of our software. The combination of L c = 6 and 20 bases long sequences was chosen for global criton rules. Feldkamp generated 100 sets with these settings. However, we evaluated 10,000 sets to gain a higher confidence level. The most of Feldkamp’s sets have 112 sequences, whereas the most of our completed sets contain 114 sequences. In both cases, these set sizes appear with a relative frequency of about 30%.

Figure 4
figure 4

Variation of the set size. Histogram of the relative frequency of the set sizes. The results of EGNAS and Feldkamp[22] are compared with each other 10,000 sets of 20 bases long sequences with L c = 6 for a global criton rule were generated.

Sliding and its influence on the set size

Within one and same strand, EGNAS can control the repetition of subsequences of a certain length. As an example, we generated sets of sequences with L c = 6 for global criton rules but with varying L sl . The results of this calculations are shown in Figure5. For L sl = 6, the global criton rules are valid, and in average, 113.8 ± 1.1 sequences are generated. Significant reduction of the set size to 100.4 ± 1.1 sequences is observable for L sl = 3. This is because the decrease of L sl reduces the number of usable basic sequences. A considerable increase of the set size to 142.7 ± 3.5 sequences is obtained by setting L sl = 13. In this case, L sl is large enough to allow the repetition of one basic sequence. Thus, for a complete strand, less basic sequences are used, and consequently, more usable basic sequences are left for the generation of further strands.

Figure 5
figure 5

Sliding and its influence on the set size. Dependence of the set size on the sliding length (L sl ). The sequence length is 20 and L c = 6 was used for global criton rules but with varying L sl . Averages ± standard deviation of 10 sets were calculated for each L sl .

Controlling intrastrand properties

Self-complementarity and hairpins are the major reasons for the formation of secondary structures. Such structure formation competes against the hybridization with target DNA strands. Hence, a fast and sensitive detection on microarrays is hindered by secondary structures[9]. Accordingly, we generated sequences not only with minimum criton length L c for a global criton rule but we also prevented self-complementarity and the risk of hairpin formation. The DINAMelt Web Server was used to estimate the stability of secondary structures[33] ( (February 1, 2012)). The stabilities were calculated as the molar free enthalpies (ΔG) of the most stable hairpins at 37°C and 1 mol/l sodium ions.

Feldkamp et al. had generated 22 bases long sequences with the uniqueness L c = 5 and chose sequences with the most unstable secondary structures afterwards[34]. In Table2 the generated sequences of Feldkamp et al. and our program are shown to compare the stabilities of possible secondary structures. Hairpins could be avoided by choosing L hp = 2. Even so, enough sequences could be generated to compete with Feldkamp’s sequence set. Feldkamp’s software tool is not able to treat intrastrand properties separately. For instance, a stem length of 4 bases can be found in sequence No. 11 (5'‐CAAGgtctgCTTG.....‐3').

Table 2 Avoiding hairpin formation in 22 bases long sequences

The restriction of L hp will improve sequence quality significantly, if no strand folding is desired. However, smaller values for L hp result in smaller set sizes. Calculations of 10 sets were performed with varying L hp and L c = L sc = L sl = 6 for 20 bases long sequences. A clear reduction of the set size can be found from 111.6 ± 1.3 (L hp = 3) to 61.8 ± 1.2 (L hp = 2). For L hp = 6, the set size is 113.8 ± 1.5 and not greater than the set sizes with L hp = 4 or 5.

Further examples for preventing hairpins are given in Tables3,4 and5. Tanaka et al.[17] and Feldkamp et al.[20] published sets of 20 bases long sequences that we compare with our results with respect to the stabilities of hairpin structures (Table3). Sequences with lower stabilities of hairpins were designed by applying EGNAS. Additionally, the set size could be increased from 14 to 16 sequences.

Table 3 Avoiding hairpin formation in 20 bases long sequences
Table 4 Calculations with included sequences to design additional 20 bases long sequences
Table 5 Calculations with included sequences to design additional 15 bases long sequences

Calculations with included sequences

Another useful feature of a sequence design algorithm is the possibility to include already existing sequences into the calculations. As a result, the cross hybridization of newly formed sequences with the included strands is controllable. The EGNAS user may include naturally occurring sequences of genomic DNA, plasmids, cloning vectors, primers or previously designed sets of sequences with certain properties. For instance, we performed stepwise generation of sequences shown in Table4. In the first step nine 15 bases long sequences were found. These sequences were included in the second run to design four additional 20 bases long sequences. With EGNAS, one more 20 bases long sequence was generated in comparison to sequences suggested by Arita et al.[13] and Feldkamp et al.[20]. This was possible in spite of extra restrictions according to GC ends and secondary structure. Possible hairpin structures could be completely eliminated in these computations.

The optimization of sequences is also possible with a different stepwise strategy. Here we first start with strong restrictions on sequence properties and weaken them until the desired set size is achieved.

Accordingly, the maximum stem length of hairpins were first limited to one base pair by setting L hp = 2. A set size of maximum 14 sequences was possible with this restriction. Finally, in the next sequence generation hairpins with stem length of 2 base pairs were allowed by setting L hp = 3 and guanine was forbidden. Through higher L hp , more variability of sequences is possible. Nevertheless, by forbidding guanine, there are only stem structures possible consisting of two consecutive adenine/thymine base pairs. These structures are less stable than those comprising guanine/cytosine base pairs. Therefore, other authors presented design algorithms that only use {A T C} for the sequence generation, and this aims to minimize the risk of hairpin formation[14, 35]. In practice, this concept was realized for the TAG/anti-TAG system offered by Luminex[36]. For our calculations, the 14 previously generated sequences were included in order to expand the sequence set. Consequently, six further sequences could be generated. The result of this approach is shown in Table5. It depicts a comparison between sets of 15 bases long sequences generated by Faulhammer et al.[14], Feldkamp et al.[20] and EGNAS. EGNAS offers better sequences with respect to secondary structures, as the minimum molar free enthalpies of the most stable hairpin structures are -0.7, 0.1 and 1.8 kcal/mol for Feldkamp et al., Faulhammer et al. and EGNAS, respectively. Comparing the criton length L c = 5 and the GC content of 40%, there is no improvement versus Feldkamp’s sequences. But a significant reduction of the secondary structure stabilities is evident, since the forbidden stem length was reduced from L hp = 5 to L hp = 3. Moreover, in contrast to Feldkamp’s sequences, only GC ends were allowed. In spite of this further restriction, an equal set size was achieved.

Balancing cross hybridization, sliding and hairpins

We investigated further advantages of discriminating between global criton rules and intrastrand properties. The results are summarized in Table6. The generated sequences are compared with those of Shin et al.[16] and of Feldkamp et al.[20]. There are only seven 20 bases long sequences in one set. We show that the user of EGNAS can balance intra- and interstrand properties to achieve a required set size.

Table 6 Balancing cross hybridization, sliding and hairpins

Because with L c = 5, L hp = 2 and L sl = 5, the set sizes clearly extended seven sequences, sliding could be decreased to L sl = 3 and even only GC ends were allowed for the first set. For the second set of sequences, we raised L sl from 3 to 6, L hp from 2 to 3 and lowered the criton length L c from 5 to 4. Consequently, we have to accept sliding of 5 bases long subsequences. Additionally, adenine or thymine had to be allowed as terminal bases to generate seven sequences. Indeed, this is against the global criton rule with L c = 5. However, no cross hybridization between different strands would take place with 4 bases long subsequences.

In both of our sets, the formation of hairpins is less probable then in the sets published by Shin et al.[16] and by Feldkamp et al.[20].

Computing time

In this section we demonstrate that the sequence generation lasts only a few seconds, if the user limits the set size reasonably. To this aim, 10 sets of 20 bases long sequences were generated for each set size with L c = 6 for a global criton rule. We varied the maximum number of sequences to be generated starting from 100. The highest defined set size was 109 sequences, since we know from calculations concerning the set size distribution that this is the minimum set size that could be generated for a complete set.

After the defined set size had been achieved, the sequence generation stopped and the computing time was saved. Insisting on the completeness of a set leads to considerable increase of the computing time from a few seconds (4 to 9 s) to approximately one minute (56.2 s ± 12.9 s). Nevertheless, this is still in reasonable computing time for a complete set size. Actually, the computing time grows considerably with L c . The generation of a complete set with L c ≥ 8 can last hours, as the number of basic sequences also grows exponentially with L c (Equations (1) and (2)).

Combination of TAGs with primers

Genotyping of single nucleotide polymorphisms (SNPs) is one example for a particular application of SBE reactions (Figure6). This technique, as described by Fan et al., requires SBE-TAG primers[8]. Marker-specific polymerase chain reaction (PCR) primers are needed for the amplification of SNPcontaining regions. Thereafter, the PCR products are used as templates for the SBE reaction with SBE-TAG primers. The 3’ ends of these primers are complementary to the specifically flanking regions of the SNP loci and the 5’ ends are complementary to specific probes on an array. The generation of suitable SBE-TAGs was performed with the EGNAS algorithm. In this case, the TAG sequences were generated with respect to minimal interaction with the neighboring SNP flanking sequence. Consequently, no 3 bases long subsequences were complementary between one SNP flanking sequence and its corresponding TAG sequence (L ni = 3). The primers and SNP flanking sequences were taken from Fan et al.[8] to generate 148 TAGs that were 20 bases long with L c = 8, L sl = 8, L hp = 2 and GC content 50%. The subsequences {GGG;CCC;AAAAA;TTTTT} were forbidden and GC ends were demanded. Forward and reverse primers as well as the flanking regions of the SNPs were chosen as included sequences. Thus, no cross hybridizations with 8 bases long subsequences occur among the TAGs and included sequences, secondary structures were avoided within the TAGs and foldback due to interactions with SNP flanking sequences were minimized.

Figure 6
figure 6

Principle of a TAG-SBE genotyping assay. Principle of a TAG-SBE genotyping assay to detect an A/G SNP. TAG sequences were designed and paired with primers by using EGNAS.

We generated TAGs without stable hairpins (L hp = 2, ΔG > 0.4 kcal/mol) by using EGNAS. In contrast, the TAGs presented by Fan et al. show one very stable hairpin with a stem length of 3 base pairs (L hp = 4, ΔG =−2.7 kcal/mol). Moreover, with regard to foldbacks, the TAG-primer pairing with EGNAS is better (L ni = 3) than presented by Fan et al. (L ni = 7) for 148 SBE-TAG primers. The advantages of EGNAS become also apparent by comparing the uniqueness of the TAG sequences. Fan et al. used TAGs with L c = 11 and EGNAS provided TAGs with L c = 8. Thus, the quality of the TAGs can be evaluated by the values of L hp , L ni and L c , when hairpins, TAG-primer pairing and cross hybridization are in the focus, respectively. Corresponding results are shown in Tables7 and8. All TAGs and primer sequences as well as the molar free enthalpies of the most stable hairpins are given in additional files [see Additional file5 and Additional file6].

Table 7 Combination of TAGs with Primers — comparison of TAGs

TAGs for staple strands of DNA origami

Self-assembled structures are fundamental in the field of nanotechnology. DNA allows the assembly of programmable building blocks. One promising method to control and organize functional materials is based on DNA origami[37]. The underlying concept requires an accurate design of DNA sequences. A spatially precise functionalization is accessible through the unique addressability of DNA origami on the nanometer scale. The DNA origami scaffold is a long single strand of DNA, which is folded by hundreds of short synthetic oligonucleotides called staple strands. The staple strands are designed to bind several desired parts of the scaffold, and thus, to connect otherwise distant sites of this long single-stranded DNA. Rothemund presented a variety of different shapes based on this concept[6].

There is software available for the design of 3D DNA origami shapes, for instance the caDNAno software[38]. However, we show that EGNAS will be useful to find proper sequences, if staple strands have to be extended by anti-TAGs that stay single-stranded during origami formation. These anti-TAGs are used as sticky ends or capture probes to bind the TAGs of DNA-modified nanoparticles or peptide-DNA conjugates to a given DNA origami structure. In the following, we examine two examples with single-stranded circular M13mp18 viral DNA as scaffold. Its sequence[39] was included in the calculations below.

Sticky ends for triangular DNA origami

In the work of Ding et al., triangular DNA origami is used for the assembly of six gold nanoparticles through DNA hybridization (Figure7)[40]. The particles have sizes of either 5, 10 or 15 nm. Each particle is captured by three probes on the DNA origami with the M13mp18 DNA as a scaffold. To this aim, 18 staple strands are modified with 24 bases long sticky ends (anti-TAGs). Ding et al. designed four different TAG sequences to label the 10 and 15 nm gold particles each with one sequences, and to modify two differently labeled 5 nm particles.

Table 8 Combination of TAGs with Primers — TAG-primer pairing
Figure 7
figure 7

Principle of the arrangement of gold nanoparticles on a triangular DNA origami. Principle of the arrangement of gold nanoparticles on a triangular DNA origami by extending staple strands with sticky ends. The corresponding sequences of the sticky ends were designed and paired by using EGNAS.

Table 9 Modification of staple strands for DNA origami

We analyzed possible cross hybridization of the sticky ends with the staple strands and with the scaffold. As a result, the 9 bases long sequence 5’-GAATCCTGA-3’ is identical in the staple strand “C28” and in the TAG “S5a” of the 5 nm gold nanoparticles. This could result in a cross hybridization of three modified staple strands with the unmodified “C28” strand. There are also numerous 8 and 9 bases long sequences that could cause cross hybridizations with the scaffold strand. Additionally, we found possible hairpin structures with a 4 base pairs long stem (5’-AGTC-3’) in the sequences of the TAG “S5b” and the corresponding anti-TAG. Hairpin structures lower the hybridization efficiency of the TAGs and anti-TAGs. This could be one explanation for missing 5 nm particles on the DNA origami. Actually, Ding et al. mentioned this problem when only two sticky ends per particle were used.

We tried to improve the sequences of the sticky ends by applying EGNAS. To this aim, we included the scaffold and all staple strand sequences in the calculations. More precisely, we chose L c = 8, and thus, avoided cross hybridizations with more than 7 consecutive base pairs of the sticky ends with the modified and unmodified staple strands, as well as with the scaffold. Secondary structures were evaded by setting L hp = 2. We generated the sticky ends stepwise and included the previously designed sequences of the modified staple strands for the design of the next sticky end. Furthermore, all 4 bases long sequences that were partly complementary to the neighboring staple strands were forbidden for the current generation of the corresponding sticky end (L ni = 4). The risk of foldbacks is minimized by that procedure.

Consequently, the sequences used by Ding et al. to modify staple strands exhibit the possibility of more stable cross hybridizations and secondary structures compared with sequences that were generated with EGNAS (Table9). The sequences of staple strands before and after modification as well as their molar free enthalpies of the most stable hairpins are given in an additional file [see Additional file7].

Capture probes for six-helix bundle nanotubes

Stearns et al. tried to organize a peptide-DNA conjugate on a six-helix bundle forming DNA origami (Figure8)[41]. The peptide A3 was used for in situ nucleation and growth of gold nanoparticles, as it recognizes gold surfaces and reduces soluble gold ions. Only one sequence for capture probes was used to modify 10 staple strands to fold the M13mp18 DNA as a scaffold. Again, we analyzed the cross hybridization of the probe sequence with the staple strands and with the scaffold. Only one 8 base pairs long possible cross hybridization with the sequence 5’-GCCGTTGA-3’ of the staple strand “70” with the peptide-DNA conjugate was found. There are possible hairpin structures with a 5 base pairs long stem (5’-CGTTG-3’) in the probe sequences. Furthermore, foldback structures are possible through 5 bases long complementary subsequences (5’-AACGG-3’) of the probe and the staple strand “122”.

Figure 8
figure 8

Principle of in situ nucleation and growth of gold nanoparicles on a six-helix bundle nanotube. Principle of in situ nucleation and growth of gold nanoparicles on a six-helix bundle nanotube with extended staple strands. The corresponding sequence of a capture probe was designed and paired by using EGNAS.

Here, we optimized the probe sequence with equal parameters like presented above for the sticky ends for triangular DNA origami. As a result, to avoid secondary structures, the sequences that were generated by using EGNAS are more suitable to capture the peptide-DNA conjugate compared with those used by Stearns et al. to modify the staple strands (Table9). Sequences of staple strands before and after modification as well as their molar free enthalpies of the most stable hairpins are given in an additional file [see Additional file8]. Stearns et al. reported that the particles were not organized in the designed 27 nm intervals. Hence, the peptide was probably immobilized not efficiently enough. Hairpin formation of the probe and foldback with the staple strands might be the reasons for the low density of nanoparticles on the DNA origami.


We developed a new software tool called EGNAS for the design of unique nucleic acid sequences. Sets of sequences with defined intra- and interstrand properties can be generated in reasonable computing time. A maximum set size with given constraints can be achieved. The presented exhaustive algorithm allows to generate greater sets of sequences than with previous software and equal constraints.

In the present stage, the developed program is suitable for generating sequences for DNA-TAGs avoiding secondary structures and cross hybridizations. Furthermore, predefined sequences can be taken into consideration. This is in principle useful for applications where no interaction of TAGs with template strands is desired. The offered option of TAG-primer pairing with regard to minimal foldback facilitates the generation of TAG sequences for multiplexed genotyping of SNPs. This kind of genotyping can be performed with PCR and SBE reactions on microarrays or bead surfaces. Additionally, EGNAS affords the computer aided design of sequences for specific attachment of molecular constructs to DNA origami. In further development the novel algorithm could be optimized to efficiently include large gene sequences. An extension of EGNAS to design branched structures like nucleic acid junctions is possible.

Availability and requirements

Project name: EGNAS

Project home page:

Operating systems: Linux, Mac OS X, and Microsoft Windows

Programming language: C++

Other requirements: None

License: Free for noncommercial use

Any restrictions to use by nonacademics: License needed



Exhaustive generation of nucleic acid sequences


Deoxyribonucleic acid










Content, Guanine-cytosine content


Single-base extension


Single nucleotide polymorphism


Polymerase chain reaction


Dideoxyuridine triphosphate


Dideoxycytosine triphosphate.


  1. Watson JD, Crick FH: Molecular structure of nucleic acids: A structure for deoxyribose nucleic acid. Nature 1953, 171(4356):737–738. 10.1038/171737a0

    Article  CAS  PubMed  Google Scholar 

  2. Seeman NC: Nucleic acid junctions and lattices. J Theor Biol 1982, 99(2):237–247. 10.1016/0022-5193(82)90002-9

    Article  CAS  PubMed  Google Scholar 

  3. Seeman NC, Kallenbach NR: Design of immobile nucleic acid junctions. Biophys J 1983, 44(2):201–209. 10.1016/S0006-3495(83)84292-1

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  4. Seeman NC: De novo design of sequences for nucleic acid structural engineering. J Biomol Struct Dyn 1990, 8(3):573–581. 10.1080/07391102.1990.10507829

    Article  CAS  PubMed  Google Scholar 

  5. Adleman LM: Molecular computation of solutions to combinatorial problems. Science 1994, 266(5187):1021–1024. 10.1126/science.7973651

    Article  CAS  PubMed  Google Scholar 

  6. Rothemund PWK: Folding DNA to create nanoscale shapes and patterns. Nature 2006, 440(7082):297–302. 10.1038/nature04586

    Article  CAS  PubMed  Google Scholar 

  7. Hirschhorn JN, Sklar P, Lindblad-Toh K, Lim YM, Ruiz-Gutierrez M, Bolk S, Langhorst B, Schaffner S, Winchester E, Lander ES: SBE-TAGS: An array-based method for efficient single-nucleotide polymorphism genotyping. Proc Natl Acad Sci USA 2000, 97(22):12164–12169. 10.1073/pnas.210394597

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  8. Fan JB, Chen X, Halushka MK, Berno A, Huang X, Ryder T, Lipshutz RJ, Lockhart DJ, Chakravarti A: Parallel Genotyping of human SNPs using generic high-density oligonucleotide tag arrays. Genome Res 2000, 10(6):853–860. 10.1101/gr.10.6.853

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  9. Kick A, Bönsch M, Katzschner B, Voigt J, Herr A, Brabetz W, Jung M, Sonntag F, Klotzbach U, Danz N, Howitz S, Mertig M: DNA microarrays for hybridization detection by surface plasmon resonance spectroscopy. Biosens Bioelectron 2010, 26(4):1543–1547. 10.1016/j.bios.2010.07.108

    Article  CAS  PubMed  Google Scholar 

  10. Seiffert J: Ein Sequenzdesign-Algorithmus für verzweigte DNA-Strukturen. PhD thesis. Technischen Universität Dresden, Fakultät Informatik 2008 Technischen Universität Dresden, Fakultät Informatik 2008

  11. Seiffert J, Huhle A: A full-automatic sequence design algorithm for branched DNA structures. J Biomol Struct Dyn 2008, 25(5):453–466. 10.1080/07391102.2008.10507193

    Article  CAS  PubMed  Google Scholar 

  12. Deaton R, Garzon M, Murphy RC, Rose JA, Franceschetti DR, Stevens JrSE: Genetic search of reliable encodings for DNA-based computation. In Late Breaking Papers at the Genetic Programming 1996 Conference Stanford University July 28–31, 1996. Edited by: Koza JR. Stanford University, CA, USA: Stanford Bookstore; 1996:9–15.

    Google Scholar 

  13. Arita M, Nishikawa A, Hagiya M, Komiya K, Gouzu H, Sakamoto K: Improving sequence design for DNA computing. In Proceedings of Genetic and Evolutionary Computation Conference 2000 (GECCO ’00) July 8–12, 2000. Edited by: Whitley LD, Goldberg DE, Cantú-Paz E, Spector L, Parmee IC, Vegas BeyerH-G. Las. Nevada, USA: Morgan Kaufmann; 2000:875–882.

    Google Scholar 

  14. Faulhammer D, Cukras AR, Lipton RJ, Landweber LF: Molecular computation: RNA solutions to chess problems. Proc Natl Acad Sci USA 2000, 97(4):1385–1389. 10.1073/pnas.97.4.1385

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  15. Feldkamp U, Saghafi S, Banzhaf W, Rauhe H: DNA Sequence Generator: A program for the construction of DNA sequences DNA computing. In DNA Computing Volume 2340 of Lecture Notes in Computer Science. Edited by: Jonoska N, Seeman N. Berlin, Heidelberg: Springer Berlin /Heidelberg; 2002:23–32.

    Google Scholar 

  16. Shin SY, Kim DM, Lee IH, Zhang BT: Evolutionary sequence generation for reliable DNA computing. In Proceedings of the 2002 Congress on Evolutionary Computation (CEC ’02) May 12–17 2002, Volume 1. Hilton, Hawaiian Village Hotel, Honolulu, Hawaii, USA; 2002:79–84.

    Google Scholar 

  17. Tanaka F, Nakatsugawa M, Yamamoto M, Shiba T, Ohuchi A: Towards a general-purpose sequence design system in DNA computing, Volume 1. In Proceedings of the 2002 Congress on Evolutionary Computation (CEC ’02) May 12–17, 2002. Hilton, Hawaiian Village Hotel, Honolulu, Hawaii, USA; 2002:73–78.

    Google Scholar 

  18. Tanaka F, Nakatsugawa M, Yamamoto M, Shiba T, Ohuchi1 A: Developing support system for sequence design in DNA computing. In DNA Computing Volume 2340 of Lecture Notes in Computer Science. Edited by: Jonoska N, Seeman N. Berlin, Heidelberg: Springer Berlin /Heidelberg; 2002:129–137.

    Google Scholar 

  19. Kaderali L, Deshpande A, Nolan JP, White PS: Primer-design for multiplexed genotyping. Nucleic Acids Res 2003, 31(6):1796–1802. 10.1093/nar/gkg267

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  20. Feldkamp U, Rauhe H, Banzhaf W: Software tools for DNA sequence design. Genet Programming Evolvable Machines 2003, 4(2):153–171. 10.1023/A:1023985029398

    Article  Google Scholar 

  21. Yin P, Guo B, Belmore C, Palmeri W, Winfree E, LaBean TH, Reif JH: TileSoft: Sequence optimization software for designing DNA secondary structures. 2004. (February 1, 2012). []

    Google Scholar 

  22. Feldkamp U: Computer aided DNA sequence design. PhD thesis. Universität Dortmund, Fachbereich Informatik 2005 Universität Dortmund, Fachbereich Informatik 2005

  23. Feldkamp U, Niemeyer CM: Rational design of DNA nanoarchitectures. Angew Chem Int Ed 2006, 45(12):1856–1876. 10.1002/anie.200502358

    Article  CAS  Google Scholar 

  24. Zhu J, Wei B, Yuan Y, Mi Y: UNIQUIMER 3D, a software system for structural DNA nanotechnology design, analysis and evaluation. Nucleic Acids Res 2009, 37(7):2164–2175. 10.1093/nar/gkp005

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  25. Feldkamp U: CANADA: Designing nucleic acid sequences for nanobiotechnology applications. J Comput Chem 2010, 31(3):660–663.

    CAS  PubMed  Google Scholar 

  26. Brenneman A, Condon A: Strand design for biomolecular computation. Theor Comput Sci 2002, 287: 39–58. 10.1016/S0304-3975(02)00135-4

    Article  Google Scholar 

  27. Breslauer KJ, Frank R, Blöcker H, Marky LA: Predicting DNA duplex stability from the base sequence. Proc Nat Acad Sci 1986, 83(11):3746–3750. 10.1073/pnas.83.11.3746

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  28. SantaLucia JJr, Allawi HT, Seneviratne PA: Improved nearest-neighbor parameters for predicting DNA duplex stability. Biochemistry 1996, 35(11):3555–3562. 10.1021/bi951907q

    Article  CAS  PubMed  Google Scholar 

  29. Marky LA, Canuel L, Jones RA, Breslauer KJ: Calorimetric and spectroscopic investigation of the helix-to-coil transition of the self-complementary deoxyribonucleotide ATGCAT. Biophys Chem 1981, 13(2):141–149. 10.1016/0301-4622(81)80013-0

    Article  CAS  PubMed  Google Scholar 

  30. Sen D, Gilbert W: Formation of parallel four-stranded complexes by guanine-rich motifs in DNA and its implications for meiosis. Nature 1988, 334(6180):364–366. 10.1038/334364a0

    Article  CAS  PubMed  Google Scholar 

  31. Sundquist WI, Klug A: Telomeric DNA dimerizes by formation of guanine tetrads between hairpin loops. Nature 1989, 342(6251):825–829. 10.1038/342825a0

    Article  CAS  PubMed  Google Scholar 

  32. Kunkel TA: Misalignment-mediated DNA synthesis errors. Biochemistry 1990, 29(35):8003–8011. 10.1021/bi00487a001

    Article  CAS  PubMed  Google Scholar 

  33. Markham NR, Zuker M: DINAMelt web server for nucleic acid melting prediction. Nucleic Acids Res 2005, 33(Web Server issue):W577—W581.

    PubMed Central  PubMed  Google Scholar 

  34. Feldkamp U, Wacker R, Schroeder H, Banzhaf W, Niemeyer CM: Microarray-based in vitro evaluation of DNA oligomer libraries designed in silico. ChemPhysChem 2004, 5(3):367–372. 10.1002/cphc.200300978

    Article  CAS  PubMed  Google Scholar 

  35. Penchovsky R, Ackermann J: DNA library design for molecular computation. J Comput Biol 2003, 10(2):215–229. 10.1089/106652703321825973

    Article  CAS  PubMed  Google Scholar 

  36. Dunbar SA: Applications of Luminex xMAPTM technology for rapid, high-throughput multiplexed nucleic acid detection. Clin Chim Acta 2006, 363: 71–82. 10.1016/j.cccn.2005.06.023

    Article  CAS  PubMed  Google Scholar 

  37. Tørring T, Voigt NV, Nangreave J, Yan H, Gothelf KV: DNA origami: a quantum leap for self-assembly of complex structures. Chem Soc Rev 2011, 40(12):5636–5646. 10.1039/c1cs15057j

    Article  PubMed Central  PubMed  Google Scholar 

  38. Douglas SM, Marblestone AH, Teerapittayanon S, Vazquez A, Church GM, Shih WM: Rapid prototyping of 3D DNA-origami shapes with caDNAno. Nucleic Acids Res 2009, 37(15):5001–5006. 10.1093/nar/gkp436

    Article  PubMed Central  CAS  PubMed  Google Scholar 

  39. Yanisch-Perron C, Vieira J, Messing J: Improved M13 phage cloning vectors and host strains: nucleotide sequences of the M13mp18 and pUC19 vectors. Gene 1985, 33: 103–119. 10.1016/0378-1119(85)90120-9

    Article  CAS  PubMed  Google Scholar 

  40. Ding B, Deng Z, Yan H, Cabrini S, Zuckermann RN, Bokor J: Gold nanoparticle self-similar chain structure organized by DNA origami. J Am Chem Soc 2010, 132(10):3248–3249. 10.1021/ja9101198

    Article  CAS  PubMed  Google Scholar 

  41. Stearns LA, Chhabra R, Sharma J, Liu Y, Petuskey WT, Yan H, Chaput JC: Template-directed nucleation and growth of inorganic nanoparticles on DNA scaffolds. Angew Chem, Int Ed 2009, 48(45):8494–8496. 10.1002/anie.200903319

    Article  CAS  Google Scholar 

Download references


This work was financially supported by the Deutsche Forschungsgemeinschaft (Contract No.: ME 1256/10-1) and the Sächsische Aufbaubank (Contract No.: 14120/2447).

Author information

Authors and Affiliations


Corresponding author

Correspondence to Michael Mertig.

Additional information

Competing interests

The authors declare that they have no competing interests.

Authors’ contributions

AK conceived the algorithm, performed the calculations and drafted the manuscript. MB participated in developing the algorithm and wrote the software program in C++. MM helped to draft the manuscript and revised it critically. All authors read and approved the final manuscript.

Electronic supplementary material


Additional file 1:Manual for the use of EGNAS. This DOC file contains the manual for the use of EGNAS. The sequence design criteria and options are explained[27, 28]. (DOC 20 KB)

Additional file 2:Executable file for Linux operating systems. This ZIP file contains the executable file of EGNAS for Linux operating systems. (ZIP 51 KB)

Additional file 3:Executable file for Mac OS X operating systems. This ZIP file contains the executable file of EGNAS for Mac OS X operating systems. (ZIP 46 KB)

Additional file 4:Executable file for Microsoft Windows operating systems. This ZIP file contains the executable file of EGNAS for Microsoft Windows operating systems. (ZIP 196 KB)


Additional file 5:SBE-TAGs and primer sequences. This Microsoft Office Excel 2003 sheet contains SBE-TAGs and primer sequences as well as the molar free enthalpies of the most stable hairpins. (XLS 63 KB)


Additional file 6:SNPs and PCR primer sequences. This Microsoft Office Excel 2003 sheet contains SNPs and PCR primer sequences as well as the molar free enthalpies of the most stable hairpins. (XLS 34 KB)


Additional file 7:Sequences for triangular DNA origami. This Microsoft Office Excel 2003 sheet contains the sticky end sequences for triangular DNA origami. The sequences of staple strands are shown before and after modification. Their molar free enthalpies of the most stable hairpins are presented. (XLS 15 KB)


Additional file 8:Sequences for DNA origami forming six-helix bundle nanotubes. This Microsoft Office Excel 2003 sheet contains the capture probe sequences for DNA origami forming six-helix bundle nanotubes. The sequences of staple strands are shown before and after modification. Their molar free enthalpies of the most stable hairpins are presented. (XLS 11 KB)

Authors’ original submitted files for images

Rights and permissions

Open Access This article is published under license to BioMed Central Ltd. This is an Open Access article is distributed under the terms of the Creative Commons Attribution License ( ), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Reprints and Permissions

About this article

Cite this article

Kick, A., Bönsch, M. & Mertig, M. EGNAS: an exhaustive DNA sequence design algorithm. BMC Bioinformatics 13, 138 (2012).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI:


  • DNA sequence design algorithm
  • Hairpin
  • stem-and-loop structure
  • Single nucleotide polymorphism (SNP)
  • Single-base extension (SBE)
  • Polymerase chain reaction (PCR)
  • DNA computing
  • DNA origami