SlideShare a Scribd company logo
1 of 19
Совместное применение
        графов де Брѐйна, графов
        перекрытий и микросборки
        для de novo сборки генома
      Александров А. В., Казаков С. В.,
  Мельников С. В., Сергушичев А. А., Федотов
       П. В., Царев Ф. Н., Шалыто А. А.
Лаборатория «Алгоритмы сборки геномных
         последовательностей»
   Санкт-Петербургский национальный исследовательский
 университет информационных технологий, механики и оптики
                       Казань, 2012
Секвенирование генома
• Геном – строка над алфавитом {A, T, G, C}.
• Секвенаторы первого поколения читают «длинные»
  фрагментами (~1000 нуклеотидов).
   – Долго и дорого.
• Секвенаторы второго поколения читают «короткие» фрагменты.
   – Намного быстрее и дешевле.
• Необходимо покрыть геном чтениями несколько десятков раз.


                                  ДНК

                       Фрагмент (~500 нуклеотидов)


             Парные чтения (риды) (по ~100 нуклеотидов)


                                                              2
Алгоритм

                         Граф де Брѐйна




Исправление    Сборка     Начальная        Микро-
                                                        Сборка
  ошибок       квази-       сборка         сборка
                                                     скэффолдов
              контигов     контигов       контигов



                               Граф перекрытий




                                                              3
Исправление ошибок
• K-меры – подстроки длины k.
• «Надежные» и «ненадежные» k-меры.
• Исправить «ненадежные» k-меры на
  «надежные».
• Все k-меры не влезают в память.
   • Разделить их на корзины согласно
     префиксам.
   • Обрабатывать корзины отдельно.

                                        4
Сборка квазиконтигов

ATGC     ???     GTCC




ATGC ATGCATGCAGTG GTCC


                         5
Граф де Брѐйна




                 6
Пример графа де Брѐйна (1)




                       7
Пример графа де Брѐйна (2)

      GTC   TCA   CAT   ATC   TCC

AGT   GTG                     CCA
                        CAC   CAA
GAG   GGA   AGG   CAG   ACA   AAC



                              8
Сборка квазиконтигов
• Построим граф де Брѐйна.
• Для каждой пары чтений (r1, r2) найдем
  путь от первого k-мера r1 до последнего
  k-мера r2.
• Длина пути должна укладываться в
  априорные границы.
• Путь должен быть единственным.


                                            9
Пример графа де Брѐйна (3)




                       10
Пример графа де Брѐйна (4)




                       11
Уникальные пути преобразуются
        в квазиконтиги
Сборка первых версий
            контигов
• Overlap
  – Суффиксный массив
  – Неточные перекрытия
• Layout
  – Граф перекрытий
• Consensus




                             13
Микросборка



• Есть парные чтения, концы которых
  расположены на разных контигах.
• Промежуток между контигами покрыт
  чтениями, парными к расположенным на
  обоих контигах.

                                     14
Алгоритм микросборки
• Найдем позиции парных чтений в контигах
  (Bowtie).
• Найдем такие пары контигов, что их
  соединяет достаточно большое число чтений.
• Построим граф де Брѐйна из парных чтений,
  как минимум одно из которых расположено в
  одном из этих контигов.
• Воспользуемся алгоритмом сборки
  квазиконтигов для заполнения промежутка.

                                      15
Результаты
• Геном E. Coli – 4,5 миллионов нуклеотидов.
• Библиотека SRR001665, длина фрагмента –
  200 нуклеотидов, длина чтений – 36
  нуклеотидов, покрытие – 300.
• До микросборки – 525 контигов с N50 = 17804.
• После микросборки – 247 контигов с N50 =
  53720.
• ABySS – 632 контига с N50 = 64280.


                                       16
Интернет-сервис
• http://genome.ifmo.ru/cloud




                                17
Благодарности
• Академик РАН Скрябин К. Г., Центр
  «Биоинженерия» РАН.
• Докт. биол. наук Прохорчук Е. Б., Центр
  «Биоинженерия» РАН.
• Алексеев Д. Г., НИИ ФХМ.




                                            18
Вопросы?




           19

More Related Content

Similar to Совместное применение графов де Брёйна, графов перекрытий и микросборки для de novo сборки генома

DUMP-2012 - Только хардкор! - "Секреты сборки мусора в Java" Алексей Рагозин
DUMP-2012 - Только хардкор! - "Секреты сборки мусора в Java" Алексей РагозинDUMP-2012 - Только хардкор! - "Секреты сборки мусора в Java" Алексей Рагозин
DUMP-2012 - Только хардкор! - "Секреты сборки мусора в Java" Алексей Рагозин
it-people
 
якобовский - введение в параллельное программирование (2)
якобовский - введение в параллельное программирование (2)якобовский - введение в параллельное программирование (2)
якобовский - введение в параллельное программирование (2)
Michael Karpov
 
Guests 2011-10-04-pevzner-assembly
Guests 2011-10-04-pevzner-assemblyGuests 2011-10-04-pevzner-assembly
Guests 2011-10-04-pevzner-assembly
Nikolay Vyahhi
 
Методы поиска уязвимостей в программах
Методы поиска уязвимостей в программахМетоды поиска уязвимостей в программах
Методы поиска уязвимостей в программах
Vasiliy Shapovalov
 
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Platonov Sergey
 
Caching data outside Java Heap and using Shared Memory in Java
Caching data outside Java Heap and using Shared Memory in JavaCaching data outside Java Heap and using Shared Memory in Java
Caching data outside Java Heap and using Shared Memory in Java
Andrei Pangin
 
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кодаПоиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
corehard_by
 

Similar to Совместное применение графов де Брёйна, графов перекрытий и микросборки для de novo сборки генома (20)

Об одном подходе к реализации генетического алгоритма для решения сложных зад...
Об одном подходе к реализации генетического алгоритма для решения сложных зад...Об одном подходе к реализации генетического алгоритма для решения сложных зад...
Об одном подходе к реализации генетического алгоритма для решения сложных зад...
 
2 встреча — Биоинформатика (А. Фединцев)
2 встреча — Биоинформатика (А. Фединцев)2 встреча — Биоинформатика (А. Фединцев)
2 встреча — Биоинформатика (А. Фединцев)
 
Семинар 5. Многопоточное программирование на OpenMP (часть 5)
Семинар 5. Многопоточное программирование на OpenMP (часть 5)Семинар 5. Многопоточное программирование на OpenMP (часть 5)
Семинар 5. Многопоточное программирование на OpenMP (часть 5)
 
Секреты сборки мусора в Java [DUMP-IT 2012]
Секреты сборки мусора в Java [DUMP-IT 2012]Секреты сборки мусора в Java [DUMP-IT 2012]
Секреты сборки мусора в Java [DUMP-IT 2012]
 
DUMP-2012 - Только хардкор! - "Секреты сборки мусора в Java" Алексей Рагозин
DUMP-2012 - Только хардкор! - "Секреты сборки мусора в Java" Алексей РагозинDUMP-2012 - Только хардкор! - "Секреты сборки мусора в Java" Алексей Рагозин
DUMP-2012 - Только хардкор! - "Секреты сборки мусора в Java" Алексей Рагозин
 
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...
Кулагин И.И., Пазников А.А., Курносов М.Г. Оптимизация информационных обменов...
 
якобовский - введение в параллельное программирование (2)
якобовский - введение в параллельное программирование (2)якобовский - введение в параллельное программирование (2)
якобовский - введение в параллельное программирование (2)
 
Cassandra:Курс молодого бойца
Cassandra:Курс молодого бойцаCassandra:Курс молодого бойца
Cassandra:Курс молодого бойца
 
Принципы работы статического анализатора кода PVS-Studio
Принципы работы статического анализатора кода PVS-StudioПринципы работы статического анализатора кода PVS-Studio
Принципы работы статического анализатора кода PVS-Studio
 
2020 03-31-lection
2020 03-31-lection2020 03-31-lection
2020 03-31-lection
 
Genome Assembly
Genome AssemblyGenome Assembly
Genome Assembly
 
Guests 2011-10-04-pevzner-assembly
Guests 2011-10-04-pevzner-assemblyGuests 2011-10-04-pevzner-assembly
Guests 2011-10-04-pevzner-assembly
 
На что нужно обратить внимание при обзоре кода разрабатываемой библиотеки
На что нужно обратить внимание при обзоре кода разрабатываемой библиотекиНа что нужно обратить внимание при обзоре кода разрабатываемой библиотеки
На что нужно обратить внимание при обзоре кода разрабатываемой библиотеки
 
Методы поиска уязвимостей
Методы поиска уязвимостейМетоды поиска уязвимостей
Методы поиска уязвимостей
 
Методы поиска уязвимостей в программах
Методы поиска уязвимостей в программахМетоды поиска уязвимостей в программах
Методы поиска уязвимостей в программах
 
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
 
Caching data outside Java Heap and using Shared Memory in Java
Caching data outside Java Heap and using Shared Memory in JavaCaching data outside Java Heap and using Shared Memory in Java
Caching data outside Java Heap and using Shared Memory in Java
 
Приближенный метод решения практических задач рационального раскроя на основе...
Приближенный метод решения практических задач рационального раскроя на основе...Приближенный метод решения практических задач рационального раскроя на основе...
Приближенный метод решения практических задач рационального раскроя на основе...
 
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кодаПоиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
 
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кодаПоиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
 

Совместное применение графов де Брёйна, графов перекрытий и микросборки для de novo сборки генома

  • 1. Совместное применение графов де Брѐйна, графов перекрытий и микросборки для de novo сборки генома Александров А. В., Казаков С. В., Мельников С. В., Сергушичев А. А., Федотов П. В., Царев Ф. Н., Шалыто А. А. Лаборатория «Алгоритмы сборки геномных последовательностей» Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики Казань, 2012
  • 2. Секвенирование генома • Геном – строка над алфавитом {A, T, G, C}. • Секвенаторы первого поколения читают «длинные» фрагментами (~1000 нуклеотидов). – Долго и дорого. • Секвенаторы второго поколения читают «короткие» фрагменты. – Намного быстрее и дешевле. • Необходимо покрыть геном чтениями несколько десятков раз. ДНК Фрагмент (~500 нуклеотидов) Парные чтения (риды) (по ~100 нуклеотидов) 2
  • 3. Алгоритм Граф де Брѐйна Исправление Сборка Начальная Микро- Сборка ошибок квази- сборка сборка скэффолдов контигов контигов контигов Граф перекрытий 3
  • 4. Исправление ошибок • K-меры – подстроки длины k. • «Надежные» и «ненадежные» k-меры. • Исправить «ненадежные» k-меры на «надежные». • Все k-меры не влезают в память. • Разделить их на корзины согласно префиксам. • Обрабатывать корзины отдельно. 4
  • 5. Сборка квазиконтигов ATGC ??? GTCC ATGC ATGCATGCAGTG GTCC 5
  • 7. Пример графа де Брѐйна (1) 7
  • 8. Пример графа де Брѐйна (2) GTC TCA CAT ATC TCC AGT GTG CCA CAC CAA GAG GGA AGG CAG ACA AAC 8
  • 9. Сборка квазиконтигов • Построим граф де Брѐйна. • Для каждой пары чтений (r1, r2) найдем путь от первого k-мера r1 до последнего k-мера r2. • Длина пути должна укладываться в априорные границы. • Путь должен быть единственным. 9
  • 10. Пример графа де Брѐйна (3) 10
  • 11. Пример графа де Брѐйна (4) 11
  • 13. Сборка первых версий контигов • Overlap – Суффиксный массив – Неточные перекрытия • Layout – Граф перекрытий • Consensus 13
  • 14. Микросборка • Есть парные чтения, концы которых расположены на разных контигах. • Промежуток между контигами покрыт чтениями, парными к расположенным на обоих контигах. 14
  • 15. Алгоритм микросборки • Найдем позиции парных чтений в контигах (Bowtie). • Найдем такие пары контигов, что их соединяет достаточно большое число чтений. • Построим граф де Брѐйна из парных чтений, как минимум одно из которых расположено в одном из этих контигов. • Воспользуемся алгоритмом сборки квазиконтигов для заполнения промежутка. 15
  • 16. Результаты • Геном E. Coli – 4,5 миллионов нуклеотидов. • Библиотека SRR001665, длина фрагмента – 200 нуклеотидов, длина чтений – 36 нуклеотидов, покрытие – 300. • До микросборки – 525 контигов с N50 = 17804. • После микросборки – 247 контигов с N50 = 53720. • ABySS – 632 контига с N50 = 64280. 16
  • 18. Благодарности • Академик РАН Скрябин К. Г., Центр «Биоинженерия» РАН. • Докт. биол. наук Прохорчук Е. Б., Центр «Биоинженерия» РАН. • Алексеев Д. Г., НИИ ФХМ. 18