This course begins a series of classes illustrating the power of computing in modern biology. Please join us on the frontier of bioinformatics to look for hidden messages in DNA without ever needing to put on a lab coat.
In the first half of the course, we investigate DNA replication, and ask the question, where in the genome does DNA replication begin? We will see that we can answer this question for many bacteria using only some straightforward algorithms to look for hidden messages in the genome.
In the second half of the course, we examine a different biological question, when we ask which DNA patterns play the role of molecular clocks. The cells in your body manage to maintain a circadian rhythm, but how is this achieved on the level of DNA? Once again, we will see that by knowing which hidden messages to look for, we can start to understand the amazingly complex language of DNA. Perhaps surprisingly, we will apply randomized algorithms, which roll dice and flip coins in order to solve problems.
Finally, you will get your hands dirty and apply existing software tools to find recurring biological motifs within genes that are responsible for helping Mycobacterium tuberculosis go "dormant" within a host for many years before causing an active infection.
This course is primarily aimed at undergraduate-level learners in computer science, biology, or a related field who are interested in learning about how the intersection of these two disciplines represents an important frontier in modern science.
This course will focus on two questions at the forefront of modern computational biology, along with the algorithmic approaches we will use to solve them in parentheses:
Weeks 1-2: Where in the Genome Does DNA Replication Begin? (Algorithmic Warmup)
Weeks 3-4: Which DNA Patterns Play the Role of Molecular Clocks? (Randomized Algorithms)
Week 5 will consist of a Bioinformatics Application Challenge in which you will get to apply software for finding DNA motifs to a real biological dataset.
Graded: Week 1 Quiz
Graded: Open in order to Sync Your Progress: Stepik Interactive Text for Week 1
Finding Replication Origins
This week, we will examine the biological details of how DNA replication is carried out in the cell. We will then see how to use these details to help us design an intelligent algorithmic approach looking for the replication origin in a bacterial genome.
Graded: Week 2 Quiz
Graded: Open in order to Sync Your Progress: Stepik Interactive Text for Week 2
Hunting for Regulatory Motifs
This week, we begin a new chapter, titled "Which DNA Patterns Play the Role of Molecular Clocks?" At the bottom of this message is this week's Bioinformatics Cartoon. What does a late night casino trip with two 18th Century French mathematicians have in common with finding molecular clocks? Start learning to find out...
Graded: Week 3 Quiz
Graded: Open in order to Sync Your Progress: Stepik Interactive Text for Week 3
How Rolling Dice Helps Us Find Regulatory Motifs
Last week, we encountered a few introductory motif-finding algorithms. This week, we will see how to improve upon these motif-finding approaches by designing randomized algorithms that can "roll dice" to find motifs.
Graded: Week 4 Quiz
Graded: Open in order to Sync Your Progress: Stepik Interactive Text for Week 4
Bioinformatics Application Challenge
Welcome to week 5 of the class! This week, we will apply popular motif-finding software in order to hunt for motifs in a real biological dataset.
A human-centered approach to the fundamentals of cell biology with a focus on the power plants of the cell - mitochondria. The cell is a powerful case study to help us explore the functional logic of living systems. All organisms, from single-celled algae to complex multicellular organisms like us, are made up of cells. In this course, you will learn the how and why of biology by exploring the function of the molecular components of cells, and how these cellular components are organized in a complex hierarchy.
This course introduces how the human body works and how it is more than the sum of its parts. The human body is made up of many individual parts that work together in a highly interactive and coordinated way. This course introduces the building blocks that make up the body, and how these are structured and maintained at a cellular level. We highlight the cardiovascular, hormonal and nervous systems, as critical coordination and control parts of the body. We investigate the structure of the musculoskeletal system, and how it helps us move through, and manipulate, our environment. We conclude by reviewing how the body replaces itself to create a new human being.
Come and explore the basics of Microbiology and Forensic Science so you can better understand the world around you. Have you ever thought about infectious diseases and why we get infected? What is the causative agent? In this course you will be touring through four modules, starting by taking a close look at the bacterial cell structure and functions which will then lead you to the study of viruses. You will go through the differences in the different types of cells which will allow you to distinguish the two major groups of bacteria and techniques. Next, you will focus on Forensic Microbiology, its history and how this discipline has evolved. Finally, we will look at the latest molecular techniques used for detecting microbes’ genetic material.
Biologists still cannot read the nucleotides of an entire genome as you would read a book from beginning to end. However, they can read short pieces of DNA. In this course, we will see how graph theory can be used to assemble genomes from these short pieces. We will further learn about brute force algorithms and apply them to sequencing mini-proteins called antibiotics. Finally, you will learn how to apply popular bioinformatics software tools to sequence the genome of a deadly Staphylococcus bacterium.
How does Google Maps plan the best route for getting around town given current traffic conditions? How does an internet router forward packets of network traffic to minimize delay? How does an aid group allocate resources to its affiliated local partners? To solve such problems, we first represent the key pieces of data in a complex data structure. In this course, you’ll learn about data structures, like graphs, that are fundamental for working with structured real world data.
This course introduces you to the basic biology of modern genomics and the experimental tools that we use to measure it. We'll introduce the Central Dogma of Molecular Biology and cover how next-generation sequencing can be used to measure DNA, RNA, and epigenetic patterns. You'll also get an introduction to the key concepts in computing and data science that you'll need to understand how data from next-generation sequencing experiments are generated and analyzed.
With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread. In this course, you'll learn the fundamentals of parallel programming, from task parallelism to data parallelism. In particular, you'll see how many familiar ideas from functional programming map perfectly to to the data parallel paradigm.
World and internet is full of textual information. We search for information using textual queries, we read websites, books, e-mails. All those are strings from the point of view of computer science. To make sense of all that information and make search efficient, search engines use many string algorithms. Moreover, the emerging field of personalized medicine uses many search algorithms to find disease-causing mutations in the human genome.
You've learned the basic algorithms now and are ready to step into the area of more complex problems and algorithms to solve them. Advanced algorithms build upon basic ones and use new ideas. We will start with networks flows which are used in more obvious applications such as optimal matchings, finding disjoint paths and flight scheduling as well as more surprising ones like image segmentation in computer vision or finding dense clusters in the advertiser-search query graphs at search engines. We then proceed to linear programming with applications in optimizing budget allocation, portfolio optimization, finding the cheapest diet satisfying all requirements, call routing in telecommunications and many others. Next we discuss inherently hard problems for which no exact good solutions are known (and not likely to be found) and how to solve them approximately in a reasonable time. We finish with some applications to Big Data and Machine Learning which are heavy on algorithms right now.
Case Study - Predicting Housing Prices In our first case study, predicting house prices, you will create models that predict a continuous value (price) from input features (square footage, number of bedrooms and bathrooms,...). This is just one of the many places where regression can be applied. Other applications range from predicting health outcomes in medicine, stock prices in finance, and power usage in high-performance computing, to analyzing which regulators are important for gene expression.In this course, you will explore regularized linear regression models for the task of prediction and feature selection. You will be able to handle very large sets of features and select between models of various complexity. You will also analyze the impact of aspects of your data -- such as outliers -- on your selected models and predictions. To fit these models, you will implement optimization algorithms that scale to large datasets.
MOOCs – Massive Open Online Courses – enable students around the world to take university courses online. This guide, by the instructors of edX’s most successful MOOC in 2013-2014, Principles of Written English (based on both enrollments and rate of completion), advises current and future students how to get the most out of their online study, covering areas such as what types of courses are offered and who offers them, what resources students need, how to register, how to work effectively with other students, how to interact with professors and staff, and how to handle assignments. This second edition offers a new chapter on how to stay motivated. This book is suitable for both native and non-native speakers of English, and is applicable to MOOC classes on any subject (and indeed, for just about any type of online study).