Tuesday, March 15, 2005

Redesigning the curriculum

When I was choosing between PhD programs, one of the things that appealed to me about the PhD program I ended up in was its flexibility, both in terms of the huge number of professors affiliated with the program [any of whom I could, at least in theory, choose to work with/for] and the fact that there are really only two specific required courses and you get to pick the rest in almost whatever manner you choose. Now, you can interpret the lack of a larger number of required courses in at least a couple of ways: it could mean that the program is aimed at allowing people maximum freedom in how they structure their education [a good thing] or that it really doesn't have a core set of knowledge that everybody who comes out of it will possess [a bad thing, to some extent].

After thinking about the "core knowledge" issue and the name of the PhD program ["Computational and Systems Biology"] a bit more, I now wonder whether it wouldn't make sense to add 2 specific courses to the required course list: "Systems Biology" and "Computational Functional Genomics". With the addition of those two courses to the "Foundations of Computational and Systems Biology" course that's already required, I think the program would end up with a pretty coherent computational core that covers a lot of the bases that fall under the "computational and systems biology" monicker:

- The "Foundations" course introduces what were [some of] the first applications of computational methods to biological problems: sequence analysis, of DNA, RNA and protein sequences. This is a set of methods that don't really tell you much/anything about the "systems level", but they continue to be instrumental in helping to provide pieces of the puzzle.

- "Systems Biology" is a good overview of a set of methods for getting to a mechanistic system-level understanding, namely modeling a set of interacting entities either deterministically [via ODEs and PDEs] or stochastically [the Gillespie algorithm etc]. These techniques allow you to build and test "mechanistic" models, in which you can specify precisely how components of the system interact and see what effect changing a set of interactions has on the behaviour of the system as a whole.

- "Computational Functional Genomics", while ostensibly about, well, genomics, serves as a good introduction to [a Bayesian approach to] answering the general question "You have a big pile of experimental data. How do you go about extracting the underlying patterns that produced this data ?". This leads you to a different kind of systems-level of understanding: you don't necessarily know how all the components interact, but you can extract overall patterns of behavior and influence [eg "when X goes up, Y goes down and Z stays the same"] and what probability your conclusions have of being correct. That sort of knowledge can then help you build a mechanistic model.

So, there you have it -- my prescription for redesigning a PhD program in which I haven't even finished the first year, a contribution to the "complex problem, simple solution" paradigm.


Blogger Son1 said...

I think your summary of 6.874 is right on.

And yet, 6.874 is (somewhat) in danger of disappearing, or being radically changed (just to clue you in on a some of the behind-the-scenes issues here). This is why Dave was making such a strong push at the beginning of the term for people to register, even as listeners -- there's a lingering question over whether anyone finds this class useful or not.

Alex, if you feel strongly that the class fits well into a larger curriculum, or that it covers needed ground that is largely uncovered by other classes (and I do agree with you on that point, surely) -- you should talk to someone in CSBi. Let them know that at least one of their PhD students thinks it's a useful class...

7:09 AM  

Post a Comment

<< Home