For catalog copy and pre-requisites, see the main page for BME205.
Lectures: MWF 2–3:10 PSB 305
On-line discussion: We have no forum set up for the class this year, but you can subscribe to a Google Groups mailing list firstname.lastname@example.org or view on the web at https://groups.google.com/a/soe.ucsc.edu/d/forum/bme205
This book is a tutorial introduction to the use of hidden Markov models and other probabilistic models for sequence analysis problems in computational molecular biology, but is aimed mainly at a graduate-student audience. We've been using it for years in this class, and have not yet found as detailed a text.
This is a text and reference book that every bioinformatics programmer should have. I don't follow the book very closely, so you will have to figure out for yourself when it is appropriate to read various sections (I have given suggestions below).
Get the third revision, if you can, which has made corrections as indicated on the errata page.
BME 205 will be using Python. You can use whatever book or online resource you need to learn the language. I recommend not buying Learning Python nor Programming Python by Mark Lutz, as both are really terrible for this class. It takes Lutz forever to get to the point of anything, and material is scattered in random order. I read over a hundred pages of Learning Python, was still not prepared to write even a short Python program, and was heartily sick of the Python boosterism. Python in a Nutshell is much better organized and gets to the point immediately, but is short on examples.
The best source I've found is the online documentation at http://docs.python.org/tutorial/, http://docs.python.org/reference/, and http://docs.python.org/library/. One Python user highly recommends the index http://docs.python.org/genindex.html, but I've done better using Google with "python" followed by the subject I'm interested in.
If you need a more tutorial introduction, I see that the undergrad course CMPS 5P has used Python for Software Design: How to think like a computer scientist by Allen Downey (Green Tea Press) as a text. An earlier manuscript of the book is available for free.
One of the Fall 2009 students recommended Dive into Python, a free on-line book for experienced programmers.
This is book came out in summer 2004. It looks like it may be a valuable supplementary text, as it seems to be easier to read and at a slightly less advanced level than the Durbin et al. book. The description of sequence-sequence alignment and HMMs does not seem quite detailed enough for this class though.
|Date||Have read these sections|
|30 Sept 2013||1.1–1.4|
|14 Oct 2013||11.1–11.6|
|21 Oct 2013||2.1–2.9|
|28 Oct 2013||3.1–3.6|
|4 Nov 2013||5.1–5.8|
|11 Nov 2013||4.1–4.5|
|18 Nov 2013||6.1–6.5|
|25 Nov 2013||7.1–7.6|
|Date (to be) released||Assignment||Date Due|
|2013 Sept 23||prereq survey||Mon 30 Sept 2013|
|2013 Sept 24||Python scaffold||Fri 4 Oct 2013|
|2013 Sept 29||parsing FASTA and FASTQ||Fri 11 Oct 2013|
|2013 Oct 10||fellowship application||Fri 18 Oct 2013|
|2013 Oct 16||Markov chains||Fri 25 Oct 2013|
|2013 Oct 24||finding under/over-represented palindromes||Fri 1 Nov 2013|
|2013 Nov 1||null models||Fri 8 Nov 2013|
|2013 Nov 7||protein information||Wed 20 Nov 2013|
|2013 Nov 15||affine-gap alignment||Mon 2 Dec 2013|
|2013 Nov 26||peptide libraries from degenerate codons||Fri 6 Dec 2013|
Every student in the class will need a School of Engineering computer account. I will want assignments turned in by providing me with a publicly readable file (PDF for written assignments) or directory (for multi-file assignments) containing the assignment on the SoE machines. All Python programs must execute correctly on the SoE machines, without needing to install additional Python modules. I will run the programs using python2.7, which is not the default python on most SoE machines (some of which have archaic versions like 2.4.3 as the default). Programs that fail to run (because they are Windows-formatted files or because permissions have been set wrong) will be returned ungraded, and will need to be redone.
I want paper copies of assignments in addition to the electronic ones (to save me the time and hassle of printing them), but I will accept electronic-only submissions from those who are too ill to attend class.
To get an SoE computer account see http://support.soe.ucsc.edu/new-accounts
As has been my practice since Fall 2001, there will be no exams, and we will probably not meet during the final exam period (Thurs 12 Dec 2013,8–11 a.m.) It turns out to be very difficult to make up small enough problems for examination—almost all the homework exercises are much larger problems than could reasonably be given on a timed exam.
The assignments will be distributed on the web.
The relative weights of the different types of assignment in the evaluation has not been determined yet—it should be roughly proportional to how much time the different assignments take to do well. In the past this has meant roughly equal weights for assignments, with the first programming assignment having somewhat less weaight and the alignment assignment having somewhat more weight.
I expect that most of the assignments will be similar to ones given in previous years, with a few parts tweaked to update them, but I may replace one or more assignments with new ones, if I can think of new problems at the appropriate level of difficulty.
Anyone caught cheating in the class will be reported to their college provost (see UCSC policy on academic integrity) and may fail the class. Cheating includes any attempt to claim someone else's work as your own. Plagiarism in any form (including close paraphrasing) will be considered cheating. Use of any source without proper citation will be considered cheating. If you are not certain about citation standards, please ask, as I hate having to fail students because they were improperly taught how to cite sources.
Collaboration without explicit written acknowledgment will be considered cheating. Collaboration on lab assignments with explicit written acknowledgment is encouraged—guidelines for the extent of reasonable collaboration will be given in class.
documentation on MUSCLE:
http://www.drive5.com/muscle/docs.htm Refereed paper: Edgar, Robert C. (2004), MUSCLE: multiple sequence alignment with high accuracy and high throughput, Nucleic Acids Research 32(5), 1792-97.
PROBCONS web site (including overview of algorithm): http://probcons.stanford.edu
Ariel S. Schwartz and Lior Pachter
Multiple alignment by sequence annealing
Bioinformatics 2007 23(2):e24-e29; doi:10.1093/bioinformatics/btl311
Oher multiple alignment programs:
paper on T-coffee:
T-Coffee: A novel method for fast and accurate multiple sequence alignment.
Notredame C, Higgins DG, Heringa J.
J Mol Biol 2000 Sep 8;302(1):205-17
paper on MAFFT:
Kazutaka Katoh, Kazuharu Misawa, Kei-ichi Kuma and Takashi Miyata. MAFFT: a novel method for rapid multiple sequence alignment based on fast Fourier transform. Nucleic Acids Research 30(14):3059-3066, 2002.
Rachel Karchin, Melissa Cline, Yael Mandel-Gutfreund, and Kevin Karplus. Hidden Markov models that use predicted local structure for fold recognition: alphabets of backbone geometry. Proteins: Structure, Function, and Genetics, 51(4):504–514, June 2003. doi:10.1002/prot.10369 reprint
Rachel Karchin, Melissa Cline, and Kevin Karplus. Evaluation of local structure alphabets based on residue burial. Proteins: Structure, Function, and Genetics, 55(3):508–518, 5 March 2004. doi:10.1002/prot.20008 reprint
|BME 205 home page||UCSC Bioinformatics research|
Questions about page content should be directed to
University of California, Santa Cruz
Santa Cruz, CA 95064
318 Physical Sciences Building