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

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

Модель судьбы моего гена описана в виде скобочной формулы (((А:27,В:27):23,((С:43,D:43):7,Е:50):10):40,F:100); Расстояния даны как число мутаций на 100 нуклеотидных остатков.

  1. Создание изображение дерева, описанного заданной мне формулой.

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

      A B C D E F
      . . * * * *
      * * . . * *
      . . * * * .
    
  3. Получение искуственных мутантных последовательностей, соответствующих листьям(C,D,E) и узлам дерева, считая, что в корне находится последовательность гена моего белка CARA ECOLI.

    Длина гена: 1149, формула для пересчёта расстояний в число мутаций в вашем гене:ОБЩЕЕ ЧИСЛО МУТАЦИЙ= 11,49*<длина ветви>, текст скрипта, которым получаются мутантные последовательности:

    msbar 1.fasta F.fasta  -point 4 -count 1149  -auto
    msbar 1.fasta 2.fasta  -point 4 -count 459  -auto
    msbar 2.fasta 3.fasta  -point 4 -count 264  -auto
    msbar 3.fasta A.fasta  -point 4 -count 310  -auto
    msbar 3.fasta B.fasta  -point 4 -count 310  -auto
    msbar 2.fasta 4.fasta  -point 4 -count 115  -auto
    msbar 4.fasta E.fasta  -point 4 -count 574  -auto
    msbar 4.fasta 5.fasta  -point 4 -count 80  -auto
    msbar 5.fasta C.fasta  -point 4 -count 494  -auto
    msbar 5.fasta D.fasta  -point 4 -count 494  -auto
    
    
  4. На основе последовательностей, соответствующих листьям, реконструировано дерево алгоритмами:

    UPGMA (программа fneighbor с параметром -treetype u)

    fdnadist list.fasta -ttratio 1 -auto
    fneighbor list.fdnadist -outfile UPGMA.fneighbor -treetype u -auto

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

    алгоритм Neighbor-joining (программа fneighbor с параметром -treetype n по умолчанию)

    fdnadist list.fasta -ttratio 1 -auto
    fneighbor list.fdnadist -outfile NJ.fneighbor -auto
    (программа fdnadist определяет попарные расстояния между последовательностями, выходной файл *.fdnadist)

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

    алгоритм максимального правдоподобия (программа fdnaml)

    fdnaml list.fasta -ttratio 1 -auto

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

    Топология всех трех деревьев совпадают с истинным. Деревья, построенные алгоритмами максимального правдоподобия и Neighbor-joining идентичны, незначительно отличаются только длины некоторых ветвей. UPGMA-дерево, в отличие от двух предыдущих, укорененное. Оно также ультраметрично, то есть длины всех "полных" ветвей равны (расстояния от корня до листьев одинаковы, в отличие от моего исходного). Так же для UPGMA и Neighbor-joining была использована программа fdnadist определяющая попарные расстояния между последовательностями. Итак, все использованные алгоритмы правильно восстановили ход эволюции.

    Сравнение деревьев между собой и с правильным деревом.

    A B C D E F Истинное дерево Максимальное правдоподобие Neighbor-joining UPGMA
    . . * * * * + + + +
    * * . . * * + + + +
    . . * * * . + + + +

  5. Бутстреп-анализ выравнивания мутированных последовательностей, соответствующих листьям моего дерева.

    Для этого используем программы fseqboot (построение 100 "бутстреп-реплик" дерева, при значении параметра -test b по умолчанию), fdnaml (получение скобочных структур для каждого дерева) и fconsense (вычисление "консенсусного" дерева).

    DCEFBA
    ....**                     100.00 Ветка АВ встретилась во всех случаях
    ...***                     86.00  FBA встретилась в 86 случаях
    ..****                     69.00  EFBA в 69
    
    
    
    Не вошедшие в дерево ветки (очень низкая частота встречи.)
    .*.***                     24.00
    ..*.**                      6.00
    .*.*..                      6.00
    ..**..                      6.00
    .**...                      2.00
    .**.**                      1.00
    
    Ветки оригинального дерева встречаются не во всех репликах.

    
                                  +------A
                           +100.0-|
                    +-86.0-|      +------B
                    |      |
             +-69.0-|      +-------------F
             |      |
      +------|      +--------------------E
      |      |
      |      +---------------------------C
      |
      +----------------------------------D
    
    
    
    Консенсусное дерево.Совпадает с реальным. Однако странно, что не сущуствующая в дереве ветка "предсказана" 24(!) раза.
  6. Изображение неукоренённого дерева программой fdrawtree


©Alexey Dubovenko