BioE147 - Principles of Synthetic Biology (4 units)


Course Overview

Summary

This course introduces students to the biological databases and file formats commonly used in computational biology, familiarizes students with the use of Unix scripting languages in bioinformatics workflows, and introduces common algorithms for sequence alignment, RNA structure prediction, phylogeny and clustering, along with fundamentals of probability, information theory and algorithmic complexity analysis.


Professors

  • Adam Arkin

  • Prerequisites

  • Bio 1A
  • CS 61A
  • CS 70
  • CS 61B

  • What's next?

  • BioE 145
  • CS 176


  • Choosing the course

    What concentration is this course relevant to?

  • Computational Biology

  • Topics covered

  • Computational approaches and techniques to gene structure and genome annotation
  • Sequence alignment using dynamic programming
  • Protein domain analysis
  • RNA folding and structure prediction
  • RNA sequence design for synthetic biology, genetic and biochemical pathways and networks
  • UNIX and scripting languages, basic probability and information theory
  • Case studies

  • When should I take the course?

    The course is intended for undergraduate Juniors and Seniors.


    Workload and Tips

    What is the workload and exam diffculty?

  • Weekly homework assignments, which take about 3-4 hours to complete
  • Optional lab assignments
  • Exams are open-note and difficult but manageable if the lectures are understood

  • What practical skills (for research/internship) can you gain from the class?

  • Good to get a feel of computational biology/Unix programming

  • Tips from students who have taken the class

  • Knowing concepts such as probability and algorithms makes the class easier

  • Quick links

    Professor Holmes's Fall 2019 Syllabus

    Professor Holmes's Fall 2020 Syllabus