]> AND Private Git Repository - chloroplast13.git/blobdiff - annotated.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
add arnaud.
[chloroplast13.git] / annotated.tex
index 9d98987f93da1dcd098484538e1d31921123625b..3a97542e12805305f0e0939e760ea57f80a3626b 100644 (file)
@@ -47,11 +47,11 @@ that stores annotated and/or unannotated chloroplast genomes.  We have
 considered the GenBank-NCBI \cite{Sayers01012011} database as sequence
 database:  99~genomes of chloroplasts  were retrieved.   These genomes
 lie in  the eleven type  of chloroplast families and  Table \ref{Tab2}
 considered the GenBank-NCBI \cite{Sayers01012011} database as sequence
 database:  99~genomes of chloroplasts  were retrieved.   These genomes
 lie in  the eleven type  of chloroplast families and  Table \ref{Tab2}
-summarizes their distribution in our dataset.
+summarizes their distribution in our dataset.\\
 
 \begin{figure}[h]  
   \centering
 
 \begin{figure}[h]  
   \centering
-    \includegraphics[width=0.75\textwidth]{generalView}
+    \includegraphics[width=0.8\textwidth]{generalView}
 \caption{A general overview of the annotation-based approach}\label{Fig1}
 \end{figure}
 
 \caption{A general overview of the annotation-based approach}\label{Fig1}
 \end{figure}
 
@@ -207,7 +207,7 @@ and {\it reverse complement}. Algorithm~\ref{Alg3:genechk} gives the outline of
 geneChk subroutine.
 
 \begin{algorithm}[H]
 geneChk subroutine.
 
 \begin{algorithm}[H]
-\caption{Find the maximum similarity score between two sequences}
+\caption{Find the Maximum Similarity Score between two sequences}
 \label{Alg3:genechk}
 \begin{algorithmic} 
 \REQUIRE $gen1,gen2 \leftarrow \text{NCBI gene sequence, Dogma gene sequence}$
 \label{Alg3:genechk}
 \begin{algorithmic} 
 \REQUIRE $gen1,gen2 \leftarrow \text{NCBI gene sequence, Dogma gene sequence}$
@@ -220,6 +220,8 @@ geneChk subroutine.
 \end{algorithmic}
 \end{algorithm}  
 
 \end{algorithmic}
 \end{algorithm}  
 
+% THIS SUBSECTION MUST BE IMPROVED 
+
 \subsubsection{Intersection Core Matrix (\textit{ICM})}
 
 To extract  core genes, we  iteratively collect the maximum  number of
 \subsubsection{Intersection Core Matrix (\textit{ICM})}
 
 To extract  core genes, we  iteratively collect the maximum  number of
@@ -230,24 +232,23 @@ to   one   genome.   Hence,   an   element   of   the  matrix   stores
 the  \textit{Intersection Score}  (IS):  the cardinality  of the  core
 genes   set  obtained   by  intersecting   one  genome   with  another
 one. Maximum  cardinality results in selecting the  two genomes having
 the  \textit{Intersection Score}  (IS):  the cardinality  of the  core
 genes   set  obtained   by  intersecting   one  genome   with  another
 one. Maximum  cardinality results in selecting the  two genomes having
-the maximum score. Mathematically speaking, if we have an $n \times n$
-matrix where $n$ is the number  of genomes in local database, then let
-us consider:
-
+the maximum score. Mathematically speaking, if we have $n$ genomes in
+local database, the ICM is an $n \times n$ matrix whose elements
+satisfy: 
 \begin{equation}
 \begin{equation}
-Score=\max_{i<j}\vert x_i \cap x_j\vert
+score_{ij}=\vert g_i \cap g_j\vert
 \label{Eq1}
 \end{equation}
 \label{Eq1}
 \end{equation}
+\noindent where $1 \leq i \leq n$, $1 \leq j \leq n$, and $g_i, g_j$ are 
+genomes. The  generation of a new  core gene depends obviously on the
+value of intersection scores $score_{ij}$:
 
 % TO BE CONTINUED
 
 
 % TO BE CONTINUED
 
-\noindent where $x_i, x_j$ are elements in the matrix. The generation of 
-a new core genes is depending on the cardinality value of intersection 
-scores, we call it \textit{Score}:
 $$
 $$
-\text{New Core} = 
+\text{new Core} = 
 \begin{cases}
 \begin{cases}
-\text{Ignored} & \text{if $\textit{Score}=0$;} \\
+\text{Ignored} & \text{if $\textit{score}=0$;} \\
 \text{new Core id} & \text{if $\textit{Score}>0$.}
 \end{cases}
 $$
 \text{new Core id} & \text{if $\textit{Score}>0$.}
 \end{cases}
 $$
@@ -270,84 +271,71 @@ where \textit{GenomeList},  represents the database  where all genomes
 data are stored. At each iteration, it computes the maximum core genes
 with its two genomes parents.
 
 data are stored. At each iteration, it computes the maximum core genes
 with its two genomes parents.
 
+% ALGORITHM HAS BEEN REWRITTEN
+
 \begin{algorithm}[H]
 \caption{Extract Maximum Intersection Score}
 \label{Alg1:ICM}
 \begin{algorithmic} 
 \REQUIRE $L \leftarrow \text{genomes vectors}$
 \begin{algorithm}[H]
 \caption{Extract Maximum Intersection Score}
 \label{Alg1:ICM}
 \begin{algorithmic} 
 \REQUIRE $L \leftarrow \text{genomes vectors}$
-\ENSURE $B1 \leftarrow Max core vector$ 
+\ENSURE $B1 \leftarrow Max Core Vector$ 
 \FOR{$i \leftarrow 0:len(L)-1$}
 \FOR{$i \leftarrow 0:len(L)-1$}
+        \STATE $score \leftarrow 0$
        \STATE $core1 \leftarrow set(GenomeList[L[i]])$
        \STATE $core1 \leftarrow set(GenomeList[L[i]])$
-       \STATE $score1 \leftarrow 0$
-       \STATE $g1,g2 \leftarrow$ " "
+       \STATE $g1 \leftarrow L[i]$
        \FOR{$j \leftarrow i+1:len(L)$}
        \FOR{$j \leftarrow i+1:len(L)$}
-               \STATE $core2 \leftarrow set(GenomeList[L[i]])$
-               \IF{$i < j$}
-                       \STATE $Core \leftarrow core1 \cap core2$
-                       \IF{$len(Core) > score1$}
-                               \STATE $g1 \leftarrow L[i]$
-                               \STATE $g2 \leftarrow L[j]$
-                               \STATE $Score \leftarrow len(Core)$
-                       \ELSIF{$len(Core) == 0$}
-                               \STATE $g1 \leftarrow L[i]$
-                               \STATE $g2 \leftarrow L[j]$
-                               \STATE $Score \leftarrow -1$
-                       \ENDIF
-               \ENDIF
+               \STATE $core2 \leftarrow set(GenomeList[L[j]])$
+               \STATE $Core \leftarrow core1 \cap core2$
+               \IF{$len(Core) > score$}
+                  \STATE $score \leftarrow len(Core)$
+                 \STATE $g2 \leftarrow L[j]$
+                \ENDIF
        \ENDFOR
        \ENDFOR
-       \STATE $B1[score1] \leftarrow (g1,g2)$
+       \STATE $B1[score] \leftarrow (g1,g2)$
 \ENDFOR
 \RETURN $max(B1)$
 \end{algorithmic}
 \end{algorithm}
 
 \ENDFOR
 \RETURN $max(B1)$
 \end{algorithmic}
 \end{algorithm}
 
-\subsection{Features Visualization}
+\subsection{Features visualization}
 
 The goal is to visualize results  by building a tree of evolution. All
 core  genes generated  represent  important information  in the  tree,
 because they  provide information about  the ancestors of two  or more
 genomes. Each  node in the  tree represents one chloroplast  genome or
 one predicted core called \textit{(Genes count:Family name\_Scientific
 
 The goal is to visualize results  by building a tree of evolution. All
 core  genes generated  represent  important information  in the  tree,
 because they  provide information about  the ancestors of two  or more
 genomes. Each  node in the  tree represents one chloroplast  genome or
 one predicted core called \textit{(Genes count:Family name\_Scientific
-names\_Accession number)},  while an edge  is labeled with  the number
-genes lost from a leaf genome or an intermediate core gene.
-
-
-The number of lost genes here can represent an important factor
-for evolution:  it represents how much  is the lost of  genes from the
-species belongs  to same  or different families.  By the  principle of
-classification, a  small number of  gene lost among  species indicates
+names\_Accession number)}, while an edge is labeled with the number of
+lost  genes from  a leaf  genome or  an intermediate  core  gene. Such
+numbers are  very interesting because  they give an  information about
+the evolution:  how many genes  were lost between two  species whether
+they  belong  to  the  same  familie  or not.   By  the  principle  of
+classification, a  small number of genes lost  among species indicates
 that those species are close to  each other and belong to same family,
 that those species are close to  each other and belong to same family,
-while big genes  lost means that we have  an evolutionary relationship
-between species  from different families. To see  the picture clearly,
-Phylogenetic  tree  is an  evolutionary  tree  generated  also by  the
-system. Generating  this tree  is based on  the distances  among genes
-sequences. There are  many resources to build such  tree (for example:
+while a  large lost  means that we  have an  evolutionary relationship
+between species  from different families. To depict  the links between
+species   clearly,  we   built   a  phylogenetic   tree  showing   the
+relationships based on the distances among genes sequences. Many tools
+are    available   to    obtain    a   such    tree,   for    example:
 PHYML\cite{guindon2005phyml},
 PHYML\cite{guindon2005phyml},
-RAxML{\cite{stamatakis2008raxml,stamatakis2005raxml},   BioNJ,  and
-TNT\cite{goloboff2008tnt}}.       
-
-We use
-RAxML\cite{stamatakis2008raxml,stamatakis2005raxml} because it is fast
-and  accurate  for  build  large  trees for  large  count  of  genomes
-sequences. 
-
-The  procedure of constructing phylogenetic  tree stated in
-the following steps:
+RAxML{\cite{stamatakis2008raxml,stamatakis2005raxml},    BioNJ,    and
+TNT\cite{goloboff2008tnt}}.    In   this  work,   we   chose  to   use
+RAxML\cite{stamatakis2008raxml,stamatakis2005raxml}   because   it  is
+fast, accurate,  and can build large  trees when dealing  with a large
+number of genomic sequences.
 
 
+The procedure used to built a phylogenetic tree is as follows:
 \begin{enumerate}
 \begin{enumerate}
-\item Extract gene sequence for all gene in all core genes, store it in database.
-\item Use multiple alignment tool such as (****to be write after see christophe****) to align these sequences with each others.
-\item aligned genomes sequences then submitted to RAxML program to compute the distances and draw phylogenetic tree.
+\item For each gene in a core gene, extract its sequence and store it in the database.
+\item Use multiple alignment tools such as (****to be write after see christophe****) 
+to align these sequences with each others.
+\item Submit the resulting aligned sequences to RAxML program to compute the distances and finally draw the phylogenetic tree.
 \end{enumerate} 
 
 \begin{figure}[H]
 \end{enumerate} 
 
 \begin{figure}[H]
-  \centering
-    \includegraphics[width=0.7\textwidth]{Whole_system}
-    \caption{Total overview of the system pipeline}\label{wholesystem}
+  \centering \includegraphics[width=0.8\textwidth]{Whole_system}
+  \caption{Overview of the pipeline}\label{wholesystem}
 \end{figure}
 
 \end{figure}
 
-% STOP HERE
-
 \section{Implementation}
 We implemented four algorithms to extract maximum core genes from large amount of chloroplast genomes. Two algorithms used to extract core genes based on NCBI annotation, and the others based on dogma annotation tool. Evolutionary tree generated as a result from each method implementation. In this section, we will present the four methods, and how they can extract maximum core genes?, and how the developed code will generate the evolutionary tree.
 
 \section{Implementation}
 We implemented four algorithms to extract maximum core genes from large amount of chloroplast genomes. Two algorithms used to extract core genes based on NCBI annotation, and the others based on dogma annotation tool. Evolutionary tree generated as a result from each method implementation. In this section, we will present the four methods, and how they can extract maximum core genes?, and how the developed code will generate the evolutionary tree.