На страницу четвертого семестра


Моделирование эволюции гена



  1. В данном задании мы рассматривали искусственную эволюцию гена carB, кодирующего белок большую цепь карбамоилфосфатсинтетазы (CARB_ECOLI), соответствующую скобочной формуле:

    (((А:70,В:70):10,((С:33,D:33):17,Е:50):30):30,F:110);
    

    Ниже находится изображение дерева, соответствующее вышеуказанной формуле, созданное в программе Paint:



  2. Описание ветвей дерева как разбиения множества листьев, считая дерево бескорневым:

    A B C D E F
    . . * * . .
    . . * * * .
    . . * * * *


    Здесь знаками . и * обозначаются листья по одну и по другую сторону рассматриваемой ветви, соответственно.

  3. Последовательность гена carB (ID записи EMBL V01500) находится здесь . Длина последовательности 3674 нуклеотида (мы рассматривали не только кодирующую последовательность, а весь ген в целом). С помощью программы msbar мы создали мутантные последовательности согласно вышеприведенной скобочной формуле, считая, что в корне находится последовательность нашего гена. Длины ветвей соответствуют количеству мутаций на 100 нуклеотидов, что в пересчете на длину гена составляет: 30 мутаций - 1102, 10 - 367, 70 - 2572, 17 - 625, 33 - 1212, 50 - 1837, 110 - 4041, то есть общая формула для пересчета: (количество мутаций* длина гена)/100.
    Мы написали скрипт, создающий мутантные последовательности, с необходимым количествам мутаций, и поместили эти последовательности в один файл. Скрипт:

    msbar v01500.txt ABCDE.txt -point 4 -count 1102 -auto
    msbar ABCDE.txt AB.txt -point 4 -count 367 -auto
    msbar AB.txt A.txt -point 4 -count 2572 -auto
    cat A.txt >> evolution.txt
    msbar AB.txt B.txt -point 4 -count 2572 -auto
    cat B.txt >> evolution.txt
    msbar ABCDE.txt CDE.txt -point 4 -count 1102 -auto
    msbar CDE.txt CD.txt -point 4 -count 625 -auto
    msbar CD.txt C.txt -point 4 -count 1212 -auto
    cat C.txt >> evolution.txt
    msbar CD.txt D.txt -point 4 -count 1212 -auto
    cat D.txt >> evolution.txt
    msbar CDE.txt E.txt -point 4 -count 1837 -auto
    cat E.txt >> evolution.txt
    msbar v01500.txt F.txt -point 4 -count 4041 -auto
    cat F.txt >> evolution.txt
    

    Файл с последоватальностями находится здесь

  4. С помощью программы fdnmal было реконструировано дерево алгоритмом максимального правдоподобия. Команда:

    fdnaml evolution.fasta -ttratio 1 -auto, где:

    опция ttratio - отношение количества транзиций к количеству трансверсий.

    В результате было получено дерево:

      +---------------B  
      |  
      |  +----------------------------------F  
      1--4  
      |  |       +-----------E  
      |  +-------3  
      |          |    +-------D  
      |          +----2  
      |               +-------C  
      |  
      +----------------A  
    

    Для реконструирования дерева алгоритмом UPGMA и Neighbor-joining были посчитаны попарные расстояния между последовательностями программой fdnadist командой:

    fdnadist evolution.fasta -ttratio 1 -auto

    Полученный файл evolution.fdnadist быд подан на вход программе fneighbor:

    fneighbor evolution.fdnadist -auto

    Дерево, полученное алгоритмом Neighbor-joining:

     +---------------B  
      ! 
      !               +-------C  
      !          +----1 
      !  +-------2    +-------D  
      !  !       ! 
      3--4       +-----------E  
      !  ! 
      !  +------------------------------------F  
      ! 
      +----------------A  
    
    


    Для реконструкции дерева алгоритмом UPGMA была выполнена команда:

    fneighbor evolution.fdnadist -treetype u evolution1.fneighbor -auto, где:

    treetype - алгоритм, по кторому стоится дерево, в данном случае параметр u - алгоритм UPGMA.

    Полученное дерево:

    
    
                              +-------------------------------A  
                       +------3 
                       !      +-------------------------------B  
      +----------------4 
      !                !                       +--------------C  
      !                !              +--------1 
    --5                +--------------2        +--------------D  
      !                               ! 
      !                               +-----------------------E  
      ! 
      +-------------------------------------------------------F  
    
    
    


  5. Сравнение полученных результатов

    Рассмотрим ветви деревьев:

    Ветви Реальное дерево Алгоритм максимального правдоподобия Алгоритм Neighbor-joining Алгоритм UPGMA
    ..**.. + + + +
    ..***. + + + +
    ..**** + + + +


    Итак, видно, что во всех четырех деревьях одинаковые ветви, и три реконструированных дерева схожи по топологии с реальным.
    Реальное дерево ультраметричное, то есть скорость эволюции для каждой из ветвей одинакова, и расстояния от корня до любого из листьев одинаковы. Поэтому дерево, построенное по алгоритму UPGMA, совпадает с этим деревом по топологии. Данный алгоритм состоит в том, что из матрицы попарных расстояний выбирается пара с наименьшим расстоянием и длина ветвей от этих последовательностей до узла считается равной половине расстояния между данными последовательностями, затем в матрице данные последовательности заменяются клатером, опять выбирается пара с наименьшим расстоянием и так далее (мы выполняли такое задание с белковыми последовательностями во втором семестре). Таким образом, в данном алгоритме подразумевается, что скорость эволюции в ветвях идет с одинаковой скоростью и длина ветви, то есть количество мутаций, пропорционально времени.
    Программы, основанные на алгоритмах максимального правдоподобия и Neighbor-joining, строят неукоренные деревья. Два этих дерева не отличаются по топологии от реального. В методе максимального правдоподобия рассчитывается вероятность P(t)ij - вероятность замены i-ого нуклеотида на j-ый в данной позиции (под временем t подразумевается определенное количество этапов, иными словами число предполагаемых предков) и вероятность L(k)i - вероятность i-ого нуклеотида в определенной позиции в последовательности возможного предшественника (похоже на цепь Маркова). Для каждого узла вычислется L(k)i путем рекурсии.
    Дерево, построенное по алгоритму Neighbor-joining, совпадает по топологии с деревом, созданным по алгоритму максимального правдоподобия. Алгоритм состоит в том, что каждый раз выбираются два близких узла, причем они должны быть далекими от других узлов.

    Можно заметить, что деревья, построенные по двум последним алгоритмам, неультраметричные. Так, последовательности E, C, D произошли от предка ECD. Мутант E образовался за одну стадию из этого предка за 50 мутаций, C и D - за две стадии за 17 и 33 мутаций. Однако, из дерева можно предположить, что E образоваласю за меньшее, чем 50 количество мутаций. Это можно объяснить тем, что мы создавали последовательности искусственно, и программа msbar может делать изменение нуклеотида на тот же, считая это заменой.

  6. Bootstrap и drawtree

    С помощью программы Bootstrap мы получили 100 бутстреп-реплик выравниваний наших мутантных последовательноситей. Была выполнена команда:

    fseqboot evolution.txt -auto

    Полученный файл был дан на вход программе fdnaml:

    fdnaml evolution.fseqboot -ttratio 1 -auto; в полученном файле evolution.treefile находились 100 скобочных формул, соответствующих реконструкциям, сделанным по каждому из выравниваний.

    На вход программе fconsense был подан файл evolution.treefile. В результате было получно консенсусное дерево:

                   +--------------------E
             +100.0-|
             |      |      +-------------F
             |      +100.0-|
      +------|             |      +------A
      |      |             +-98.0-|
      |      |                    +------B
      |      |
      |      +---------------------------D
      |
      +----------------------------------C
    

    Программа также выдает описание ветвей данного дерева как разбиения множества листьев:

    A B C D E F
    . . * * * *
    . . * * * .
    . . * * . .


    На дереве указано число раз, которое всречалась каждая из ветвей. Видно, что во всех деревьях были разбиения ..**.. и ..***.; почти всегда в деревьях было разбиение ..**** (в 98 случаях, в остальных двух случаях было разбиение .****., поэтому ветви, соответствующей такому разбиению нет на дереве).
    Ветви консенусного дерева и реального совпадают, то есть, соответстенно, и бутсреп-значения для ветвей реального дерева такие же, что и для консенсусного. Видно, что мутантные последовательности здесь образовались такими же путми, что и в реальном дереве.

    Таким образом, ветви во всех построенных деревьях совпадают и не отличаются от ветвей исходного дерева, топология этих деревьев такая же, как и у реального. Дерево, созданное по алгоритму UPGMA, к тому же и укорененное, поэтому представляет собой копию нашего реального дерева. Все программы хорошо справились с поставленной перед ними задачей.


    Изображение неукорененного дерева, соответствующего нашей скобочной формуле можно создать с помощью программ fdrawtree:







©Шахбатян Римма Рубеновна