\documentstyle{article}
\begin{document}
\section{Drug Design}

 With the advances in DNA cloning and sequencing technologies,
biologists today can determine the sequence of amino acids that make
up a protein more easily than they can determine its three-dimensional
structure, and hence its function. The current technique used for
determining the structure of new proteins is to compare their
sequences with those of known proteins.

DNA and protein sequence
comparison involves comparing a single query sequence against a
library of sequences to determine its relationship to known proteins
or DNA. For the computer scientist, the basic problem is simple: DNA
and protein sequences can be represented as strings of characters that
must be compared. Biologists wish to know the degree of relationship
of two sequences. Two given sequences are compared and, by using one of
several algorithms, a score is generated reflecting commonality. Three
popular algorithms are Smith-Waterman, FASTA, and Blast.
The latter two algorithms are heuristics; the quality of the
score is traded for speed. Smith-Waterman is the benchmark algorithm,
generating the most reliable scores although at considerable time
expense. FASTA is less accurate but is twenty to fifty times faster
than Smith-Waterman.

An important attribute of the comparison algorithms is that all
comparisons are independent of one another and, if many sequences are
to be compared, they can be compared in any order. This natural
data-parallelism is easy to exploit and results in very little
overhead.

A common operation is to compare a single sequence against an entire
database of sequences. This is the scanlib problem. In scanlib, a
source sequence is compared against each target sequence in the
sequence library. A sorted list of scores is generated and the
sequence names of the top n, usually 20, sequences and a score
histogram are generated for the user.  A second common operation is to
compare two sequence libraries, that is, to compare every sequence in a
source library against every sequence in the target library. For each
sequence in the source library, statistics are generated on how the
sequence compares with the target library as a whole. This is known as
the {\it complib problem}.









