Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera)

Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera)

Once we have sequenced genomes in the previous course, we would like to compare them to determine how species have evolved and what makes them different. In the first half of the course, we will compare two short biological sequences, such as genes (i.e., short sequences of DNA) or proteins. We will encounter a powerful algorithmic tool called dynamic programming that will help us determine the number of mutations that have separated the two genes/proteins.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

In the second half of the course, we will "zoom out" to compare entire genomes, where we see large scale mutations called genome rearrangements, seismic events that have heaved around large blocks of DNA over millions of years of evolution. Looking at the human and mouse genomes, we will ask ourselves: just as earthquakes are much more likely to occur along fault lines, are there locations in our genome that are "fragile" and more susceptible to be broken as part of genome rearrangements? We will see how combinatorial algorithms will help us answer this question.
Finally, you will learn how to apply popular bioinformatics software tools to solve problems in sequence alignment, including BLAST.
Course 3 of 7 in the Bioinformatics Specialization.

Syllabus

WEEK 1
Introduction to Sequence Alignment
If you joined us in the previous course in this Specialization, then you became an expert at assembling genomes and sequencing antibiotics. The next natural question to ask is how to compare DNA and amino acid sequences. This question will motivate this week's discussion of sequence alignment, which is the first of two questions that we will ask in this class (the algorithmic methods used to answer them are shown in parentheses): How Do We Compare DNA Sequences? (Dynamic Programming)Are There Fragile Regions in the Human Genome? (Combinatorial Algorithms)

WEEK 2
From Finding a Longest Path to Aligning DNA Strings
Last week, we saw how touring around Manhattan and making change in a Roman shop help us find a longest common subsequence of two DNA or protein strings. This week, we will study how to find a highest scoring alignment of two strings. We will see that regardless of the underlying assumptions that we make regarding how the strings should be aligned, we will be able to phrase our alignment problem as an instance of finding the longest path in a directed acyclic graph.

WEEK 3
Advanced Topics in Sequence Alignment
Last week, we saw how a variety of different applications of sequence alignment can all be reduced to finding the longest path in a Manhattan-like graph. This week, we will conclude the current chapter by considering a few advanced topics in sequence alignment. For example, if we need to align long strings, our current algorithm will consume a huge amount of memory. Can we find a more memory-efficient approach? And what should we do when we move from aligning just two strings at a time to aligning many strings?

WEEK 4
Genome Rearrangements and Fragility
You now know how to compare two DNA (or protein) strings. But what if we wanted to compare entire genomes? When we "zoom out" to the genome level, we find that substitutions, insertions, and deletions don't tell the whole story of evolution: we need to model more dramatic evolutionary events known as genome rearrangements, which wrench apart chromosomes and put them back together in a new order. A natural question to ask is whether there are "fragile regions" hidden in your genome where chromosome breakage has occurred more often over millions of years. This week, we will begin addressing this question by asking how we can compute the number of rearrangements on the evolutionary path connecting two species.

WEEK 5
Applying Genome Rearrangement Analysis to Find Genome Fragility
Last week, we asked whether there are fragile regions in the human genome. Then, we took a lengthy detour to see how to compute a distance between species genomes, a discussion that we will continue this week. It is probably unclear how computing the distance between two genomes can help us understand whether fragile regions exist. If so, please stay tuned -- we will see that the connection between these two concepts will yield a surprising conclusion to the class.

WEEK 6
Bioinformatics Application Challenge
In the sixth and final week of the course, we will apply sequence alignment algorithms to infer the non-ribosomal code.

Suggested Readings:
Bioinformatics Algorithms An Active Learning Approach

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Programming for Everybody (Getting Started with Python) (Coursera) Coursera
University of Michigan

Programming for Everybody (Getting Started with Python) (Coursera)

This course aims to teach everyone the basics of programming computers using Python. We cover the basics of how one constructs a program from a series of simple instructions in Python. The course has no pre-requisites and avoids all but the simplest mathematics. Anyone with moderate computer experience should be able to master the materials in this course.

Sep 28th 2026
5-12 Weeks
Introduction to Genetics and Evolution (Coursera) Coursera
Duke University

Introduction to Genetics and Evolution (Coursera)

Introduction to Genetics and Evolution is a college-level class being offered simultaneously to new students at Duke University. The course gives interested people a very basic overview of some principles behind these very fundamental areas of biology. We often hear about new "genome sequences," commercial kits that can tell you about your ancestry (including pre-human) from your DNA or disease predispositions, debates about the truth of evolution, why animals behave the way they do, and how people found "genetic evidence for natural selection." This course provides the basic biology you need to understand all of these issues better, tries to clarify some misconceptions, and tries to prepare students for future, more advanced coursework in Biology (and especially evolutionary genetics). No prior coursework is assumed.

Sep 28th 2026
5-12 Weeks
Introduction to Psychology (Coursera) Coursera
Yale University

Introduction to Psychology (Coursera)

What are people most afraid of? What do our dreams mean? Are we natural-born racists? What makes us happy? What are the causes and cures of mental illness? This course tries to answer these questions and many others, providing a comprehensive overview of the scientific study of thought and behavior. It explores topics such as perception, communication, learning, memory, decision-making, persuasion, emotions, and social behavior. We will look at how these aspects of the mind develop in children, how they differ across people, how they are wired-up in the brain, and how they break down due to illness and injury.

Sep 28th 2026
5-12 Weeks
Computers, Waves, Simulations: A Practical Introduction to Numerical Methods using Python (Coursera) Coursera
Ludwig-Maximilians-Universität München

Computers, Waves, Simulations: A Practical Introduction to Numerical Methods using Python (Coursera)

Interested in learning how to solve partial differential equations with numerical methods and how to turn them into python codes? This course provides you with a basic introduction how to apply methods like the finite-difference method, the pseudospectral method, the linear and spectral element method to the 1D (or 2D) scalar wave equation.

Oct 5th 2026
5-12 Weeks
Applied Social Network Analysis in Python (Coursera) Coursera
University of Michigan

Applied Social Network Analysis in Python (Coursera)

This course will introduce the learner to network analysis through the NetworkX library. The course begins with an understanding of what network analysis is and motivations for why we might model phenomena as networks. The second week introduces the concept of connectivity and network robustness.. The third week will explore ways of measuring the importance or centrality of a node in a network. The final week will explore the evolution of networks over time and cover models of network generation and the link prediction problem.

Sep 28th 2026
4 Weeks
La science forensique au tribunal: témoin digne de foi? (Coursera) Coursera
University of Lausanne

La science forensique au tribunal: témoin digne de foi? (Coursera)

L’objectif de ce cours est d’encourager la réflexion critique en ce qui concerne la « science forensique », également appelée police technique et scientifique ou criminalistique. À l’heure actuelle, de manière générale, la plupart des gens sont fascinés par les possibilités techniques qu’offre la police scientifique. Ils sont bercés par une certaine illusion que les preuves de la science forensique sont infaillibles et fournissent des résultats factuels sûrs à 100 %. Ce cours – dispensé par des spécialistes du domaine – dépasse l’image conventionnelle véhiculée par des séries télévisées comme « Les Experts ».

Oct 5th 2026
5-12 Weeks
Advanced Neurobiology II (Coursera) Coursera
Peking University

Advanced Neurobiology II (Coursera)

Hello everyone! Welcome to advanced neurobiology! Neuroscience is a wonderful branch of science on how our brain perceives the external world, how our brain thinks, how our brain responds to the outside of the world, and how during disease or aging the neuronal connections deteriorate. We’re trying to understand the molecular, cellular nature and the circuitry arrangement of how nervous system works.

Oct 5th 2026
5-12 Weeks
An Introduction to Interactive Programming in Python (Part 1) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 1) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Oct 5th 2026
5-12 Weeks
Computing for Cancer Informatics (Coursera) Coursera
Johns Hopkins University

Computing for Cancer Informatics (Coursera)

One of the key cancer informatics challenges is dealing with and managing the explosion of large data from multiple sources that are often too large to work with on typical personal computers. This course is designed to help researchers and investigators to understand the basics of computing and to familiarize them with various computing options to ultimately help guide their decisions on the topic.

Oct 5th 2026
4 Weeks
Algorithmic Thinking (Part 1) (Coursera) Coursera
Rice University

Algorithmic Thinking (Part 1) (Coursera)

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Oct 5th 2026
4 Weeks
Applied Plotting, Charting & Data Representation in Python (Coursera) Coursera
University of Michigan

Applied Plotting, Charting & Data Representation in Python (Coursera)

This course will introduce the learner to information visualization basics, with a focus on reporting and charting using the matplotlib library. The course will start with a design and information literacy perspective, touching on what makes a good and bad visualization, and what statistical measures translate into in terms of visualizations. The second week will focus on the technology used to make visualizations in python, matplotlib, and introduce users to best practices when creating basic charts and how to realize design decisions in the framework.

Oct 5th 2026
4 Weeks