I’m very excited to announce that Caltech will introduce a new graduate degree next year: a PhD in Computing and Mathematical Sciences (CMS).
While we didn’t get the approval in time to advertise it before students applied this year, I cannot resist mentioning it right now, since I hope that some of the students that we admit to other programs at Caltech this year will choose to switch over and be part of it…
Why a new degree?
These days, “algorithmic thinking” is pervasive. Algorithms are not just the basis for advanced technology; they are intrinsic components of diverse fields such as biology, physics, and economics. Studying the structures and mechanisms that communicate, store, and process information from this viewpoint — whether these structures are expressed in hardware and called machines, in software and called programs, in abstract notation and called mathematics, or in nature and society and called biological or social networks and markets — is crucial to pushing scientific boundaries. At this point, it is almost impossible to do research in any scientific or engineering discipline without the ability to think algorithmically.
This is coming to the forefront these days given the increasing focus on data-intensive activities, e.g., the explosion of “Big Data,” “Network Science,” and the like.
But, because of the diversity of fields where algorithmic thinking is fundamental, there are broad differences in how algorithms are formalized, applied, and studied across areas. Over the years, these differences have been codified, and the “language of algorithms” is actually quite distinct across areas, e.g., computer science, applied math, and electrical engineering.
However, a broad view of algorithmic thinking is crucial to scientific breakthrough — and our goal in this program is to train a new type of scholars to have an interdisciplinary, cross-cutting view of “algorithmic thinking.”
As such, the new degree focuses on core algorithmic fundamentals, but also includes diverse application areas in computer science, applied mathematics, statistics, and optimization, as well as from the physical sciences. Its goal is to “forge the algorithmic foundations necessary to move from data, to information, to action.”
So, while today’s hot topics like “Big Data” and “Network Science” are a part of this vision, the program is much broader in focus and will train students to have a cross-cutting view of algorithmic thinking.
While the formal degree is new, the activities behind the degree aren’t. As I’ve mentioned on this blog already, Caltech has a different perspective on CS and EE from most of the world. It tends to focus on the fundamentals, i.e., the underlying theory, regardless of the application area. This happens across CS and EE, but also across the rest of the campus, too, and increasingly there has been convergence on a common set of mathematical, computational, and economic fundamentals that are core to algorithmic thinking across areas, from topics you’d expect (e.g., machine learning, big-data, network science, privacy, control) to diverse areas in the physical sciences (e.g., biology, chemistry, geology, and astronomy).
What will students study?
Given that description, you’re probably curious what we decided on for the core of this new degree… Basically, we’ve designed a core set of seven quarter-long courses (most of which are new interdisciplinary courses unique to Caltech) that every CMS student will take during their first year. By the end of this “common core” the hope is that they’ll have developed a strong sense of community that holds despite the fact that they will branch out into widely-varying application areas as they get more and more engaged in research. (Of course, they’ll be doing research during their first year, too.) The following cartoon gives an idea of what we’re aiming for:
More specifically, here’re the courses that make up the core.
The Fall is filled with an applied math core of Linear Algebra, Probability, and Optimization. Here, the optimization course is the first of the “flagship” courses. It’ll be a unique course, providing a broad view of the field (from convexity to SDPs to network optimization and more). What makes it unique is the mixture of theory with diverse applications, taught in a completely integrated manner.
Then, the Winter should be quite fun. It’ll include two core courses: one on Inference & Learning, and one on Networks. Both are unique to Caltech… The course on Inference & Learning integrates the statistical and computational viewpoints, and the networks course is a really special course that I’ve been designing for 4 years now. It covers the theory and practice of “modern” networking and, while it focuses on IT networks, it also covers networks from a wide variety of other areas and integrates economic tools. What makes it really unique is that every homework has integrated problems involving theory and implementation. For example, on the same homework proving the optimal structure of a link farm for maximizing pagerank, and competing in small groups to find the nodes with the top ten pagerank values in a large web graph as fast as possible using Amazon EC2.
Finally, the core classes in the Spring include a CS grad algorithms course and another unique course on “inverse problems” titled Sparsity and Regularization. Inverse problems are those where you have some noisy or partial information, and you wish to make predictions about a phenomena or identify a model for the phenomena. So, they include classic problems like signal processing, as well as many important statistical and learning problems. Again, the course is cross-cutting and integrates theory and practice (i.e., is highly “Caltech”).
Who should apply?
You, if the above description is appealing! I’d say folks that have double-majored (or added minors) in some subset of Math, CS, Control, OR, EE, Econ; or just had a really hard time deciding on a major between these, are great candidates. We want students interested in the foundations, but also drawn to problems with real impact.
I know that when I was looking at grad schools, I was drawn to ACO (Algorithms, Combinatorics, and Optimization) programs at CMU and Georgia Tech because I loved Math but also the applications of CS. The CMS program at Caltech is another great alternative for such students. Similarly, if you find yourself drawn to interdiscplinary CS/Statistics/Big Data grad programs, or can’t decide between Economics and CS/Math, then the CMS program is probably a good fit.
Unfortunately, though, it’s too late to apply this year if you haven’t already applied to Caltech. But…if you have already applied to Caltech in a different program, you’ll have a chance to switch to CMS seamlessly (if you’re offered admission). So, basically we’re having a “soft opening” this year, which you’ll hear a lot about when you come for the visit weekend.