Algorithms for genome assembly
In this course, part of the Algorithms and Data Structures MicroMasters program, you will learn how graph algorithms are used in two fundamental problems in modern biology:
How do we sequence a genome?
How do we construct an evolutionary “Tree of Life?”
In the first part of the course, you will learn how genome sequencing relies on using a graph to assemble millions of tiny DNA fragments into a contiguous genome. We will then shift gears and learn how to construct an evolutionary tree of life from genome data.
Week 1: Introduction to Genome Sequencing and Graphs
Introduction to the basics of genome sequencing, and first attempts to model this problem using graphs.Weeks 2 and 3: Assembling Genomes from Tiny Fragments
Applying an Eulerian path approach to assemble a genome from small pieces of DNA, and adapting this theoretical solution to practical considerations.
Basic knowledge of:
at least one programming language: loops, arrays, stacks, recursion.
mathematics: proof by induction, proof by contradiction.