CS 234: Computational Methods for the Analysis of Biomolecular Data

Fall 2025

Overview

An unprecedented wealth of data is being generated by large genome/metagenome/epigenetic projects and other efforts to determine the structure and function of molecular biological systems. This advanced graduate class will focus on a selection of algorithms and data structures aimed at the analysis of biomolecular data.

Catalog Description

  • A study of computational and statistical methods aimed at automatically analyzing, clustering, and classifying biomolecular data. Includes combinatorial algorithms for pattern discovery; hidden Markov models for sequence analysis; analysis of expression data; and prediction of the three-dimensional structure of RNA and proteins.
  • Note: Credit is awarded for one of the following CS 144, CS 234, or CS 238.
  • Prerequisites

  • CS 111 (or equivalent)
  • CS 141 or CS 218 (or equivalent)
  • STAT 155 or STAT 160A (or equivalent)
  • Graduate standing
  • Note: Some programming experience is expected
  • Note: no biology background is assumed
  • Instructor

  • Stefano Lonardi, email, office MRB 3130
  • Class Meeting

  • TR 11:00am-12:20pm, Olmsted Hall, Room 1212
  • Office hours

  • Stefano: By appointment over Zoom
  • Preliminary list of topics

  • Intro to molecular and computational biology, including biotech tools
  • String matching and approx string matching (Z-algorithm, KMP, Boyer Moore)
  • Space-efficient data structures for sequences (suffix tries/trees, suffix arrays, B-W transform)
  • Hidden Markov models, Profile HMM, Viterbi and Baum-Welch learning
  • References

  • (HMMs) Richard Durbin, A. Krogh, G. Mitchison, and S. Eddy, Biological Sequence Analysis : Probabilistic Models of Proteins and Nucleic Acids, Cambridge University Press, 1999.
  • (Suffix Trees) Dan Gusfield, Algorithms on Strings, Trees and Sequences - Computer Science and Computational Biology, Cambridge University Press, 1997.
  • (Algorithms) Dan E. Krane, Michael L. Raymer, Fundamental Concepts of Bioinformatics, Benjamin Cummings 2002
  • (Algorithms) Neil C. Jones and Pavel Pevzner, An Introduction to Bioinformatics Algorithms, MIT Press, 2004
  • (Algorithms) Marketa Zvelebil, Jeremy O. Baum, Understanding Bioinformatics, Garland Science, 2007
  • Course Format

    The course will include lectures by the instructor and possibly guest lectures from senior PhD students. Students are expected to study the material covered in class. In addition to selected chapters from some of the books listed below, there may be handouts of research papers. There will be a few homework assignments, mostly of theoretical nature -- although some may require a bit of programming. There will be a midterm and a final presentation.

    Cheating

    We will not tolerate any kind of cheating in this course. Homework are to be completed on your own. The only external sources allowed are those mentioned above or by the instructor throughout the course. If you have a doubt or question, please just ASK. As per standard UCR policy, you may not submit answers (written or programming) to problem sets that contain material you did not produce yourself for the express purpose of this offering of this course. If we find that you have submitted work that is not your own or is work you submitted in a different course, I will assign you a zero on that assignment (and possibly a zero on the entire course, depending on the severity), and I will forward the case to Student Conduct and Academic Integrity Programs for campus-level consideration.

    Slides

    Slides will be posted on Canvas.

    Grades

    Grades will be posted on Canvas.

    Homework

    Homework will be released on Canvas. Homework will have to be submitted on Canvas. Each student is granted three "late days" which can be used (in integer units) on any of the homework. If a more dire situation arises, please contact the instructor.

    Calendar

    Week 0
  • Thursday, Sep 25: Intro, Molecular Biology
  • Week 1
  • Tuesday, Sep 30: Molecular Biology
  • Thursday, Oct 2:
  • Week 2
  • Tuesday, Oct 7:
  • Thursday, Oct 9:
  • Week 3
  • Tuesday, Oct 14:
  • Thursday, Oct 16:
  • Week 4
  • Tuesday, Oct 21:
  • Thursday, Oct 23:
  • Week 5
  • Tuesday, Oct 28:
  • Thursday, Oct 30:
  • Week 6
  • Tuesday, Nov 4:
  • Thursday, Nov 6:
  • Week 7
  • Tuesday, Nov 11:
  • Thursday, Nov 13:
  • Week 8
  • Tuesday, Nov 18:
  • Thursday, Nov 20: Students' presentations
  • Week 9
  • Tuesday, Nov 25: Students' presentations
  • Thursday, Nov 27: [no classes] Thanksgiving
  • Week 10
  • Tuesday, Dec 2: Students' presentations
  • Thursday, Dec 4: Students' presentations
  • Finals' Week
  • Additional resources

  • Learn how to Fold it! A great game about protein folding that can help the scientific community
  • Genomic Data Science Specialization (Coursera)
  • Bioconductor for Genomic Data Science (Coursera)
  • Genome Sequencing (Bioinformatics II) (Coursera)
  • Introduction to Genomics (NHGRI)
  • Fundamentals of Biology (on-line course)
  • Pevzner's bioinformatics courses (Coursera)