Computational Biology

Joshua Gregory

1 - Introduction

Data

Interactions

Self-Organise

Dynamic

Comp Bio

Evolution

Tree of life

Inheritance

Mendel’s Peas Experiment

Inheritance

DNA

Base Pairs

DNA Replication

What does DNA do?

RNA and DNA

Transcription by RNA Polymerase

Exons and Introns

mRNA to Protein Translation

RNA Triplet to Amino Acids

To help remember(?):

What do proteins do?

Computational challenges

2 - Cell Regulation

Cells

Prokaryotes and Eukaryotes Cell Types

Understanding proteins

Protein Folding

(Primary Structure)

Secondary Structure

Folding

RNA Folding

The First Law of Protein Sequence

        Similar structures perform similar functions

Sequence Alignment

Finding Aligned Sequences

Cell Regulation

Promoter Region

Regulation by Signal

Regulation in Promoter Region

Binding Sites

?

TATA Box

Gene Regulation Networks

Motifs

Dynamics

Multicellular

3 - Sequencing

What is it?

Sequencing Revolution

Frederick Sanger

Sequencing DNA

Sanger Sequencing

Modified ddNTP

Fractionation

Shotgun Sequencing

Reconstruction

Human Genome Project

Improving Sanger

Sequencing Techniques

Synthesis vs Ligation

454 Sequencer

Water in Oil Emulsion PCR

Illumina

Bridge Amplification

Identifying Sequence

? low res :(

Cost Per Human Genome

100,000 Genome Project

Single Molecule DNA Sequencing

Zero Mode Waveguide

Nanopore Technology

4 - Sequence Re-assembly

DNA Sequencing

Overlapping the pieces to reconstruct. Need algorithms to do this

Reads and Contigs

Digital Trees or Tries

Trie example

General Use of Tries

Tries for Sequence Analysis

Example table

Disadvantages of Tries

Suffix Tree

Importance of Suffix Tree

String Matching

(Image above)

Complexity of Suffix Tree

Uses of Suffix Trees

New Generation Sequencers

Repeats

Repeats in Human Genome

Repeats Structure

Computing Repeats

5 - Sequence Matching

Alignment and Evolution

Practical Alignment

Synonymous Mutations

Amino Acid Similarity

Blosum50

Gaps

Inexact Sequence Matching

Algorithms for Matching

Dynamic Programming

A Toy Problem

Brute Force

Building a solution

Forward Algorithm

Example

Backward Algorithm

Time Complexity

Global Matching

Problem Definition

Example Table

Then backwards algorithm (basically follow the arrows from the bottom right):

Space Complexity

6 - Local Sequence Matching

Local Alignment

Dynamic Programming Solution

Example Table

Then backward algorithm starting from the highest number in the grid till zero

Difference to Global Assignment

Repeated and Overlapping Matches

Gaps

Dumb Gap Algorithm

Affine Gap

Affine Gap Algorithm

Update Equation

Matching with Gaps

Different FSA

Inexact Matching in Practice

Approximate Matching

FASTA

BLAST

Are Matches Real?

Probability of a Match

Extreme Values

Extreme Value Distribution

Using EVD