Course Planning for OMSCS

I plan to complete 10 of the 12 courses tabulated below. My ideal course sequence is to finish one group before starting another and to proceed with the groups in the rough order shown. The only exception to this is group D, which consists of two difficult, required courses that are unrelated and can be taken at any time.

The courses have been selected to complete the ML spec, create synergies between the different course subjects, and take into account information gained during yesterday’s research. I have grouped the courses as follows:

Group A - Machine Learning

These are the core courses for the specialization. Reinforcement Learning is an elaboration of the final third of the Machine Learning course, so it makes sense to take it following completion of ML.

The ML specialization requires that ML and GA are taken.

The specialization also requires picking 3 out of the set {ML4T, RL, DVA, and BD4H}. This leaves me with ML4T, RL, and BD4H as required courses. BD4H is included in Group D.

Name Title Number Avg Work Avg Diff
ML4T Machine Learning for Trading CS 7646 10.5 2.7
ML Machine Learning CS 7641 20.7 4.3
RL Reinforcement Learning and Decision Making CS 7642 20.4 3.9
Name Title Number Avg Work Avg Diff
DVA Data and Visual Analytics CSE 6242 Unknown Unknown

Group B - Artificial Intelligence Electives

Artificial Intelligence coursework is a natural corollary to the ML specialization, so I plan to pursue the following two courses. The other AI course, Artificial Intelligence for Robotics (AI4R), sounds like a very applied course specifically related to autonomous driving. Because of its specificity and possible overlap with the more general AI course, I will forego that one.

Name Title Number Avg Work Avg Diff
KBAI Knowledge-Based AI: Cognitive Systems CSE 7637 13.1 3.2
AI Artificial Intelligence CS 6601 23.0 4.3

Group C - Computer Performance Electives Using C/C++

My computer science minor stopped just short of an actual operating systems course, so I am interested to take IOS to fill out my overall computer science knowledge.

The other two courses relate to modern computer hardware optimization, and best practices to optimize code to run quickly on modern computers, respectively. Those two subjects are synergistic with one another in that they approach the same goal of performance, but from hardware and software perspectives. They also seem synergistic with ML/AI because ML/AI projects tend to be processor and memory-intensive.

IOS should be taken before HPCA, because it seems an architecture class would use at least some of the content of an OS class. IHPC should be taken after HPCA, because my general approach when I have two classes that cover similar material is to take the easier before the more difficult. That way, when I take the more difficult course, I’ll have the advantage of having seen the content before.

Each of these classes requires the use of C or C++, so it makes sense to take them one after the other in a series or simultaneously.

Name Title Number Avg Work Avg Diff
IOS Intro to Operating Systems CS 8803-O02 18.6 3.6
HPCA High-Performance Computer Architecture CS 6290 12.5 3.9
IHPC Intro to High-Performance Computing CSE 6220 20.1 4.6

Group D - Remaining Required Core

Graduate Algorithms has the reputation of being one of the hardest courses in the curriculum, and Big Data for Health has the distinction of having been rated both the most time-intensive and difficult course in the OMSCentral database (as of March, 2018). Both courses are required. These will be taken independently, and not taken lightly. No particular order necessary, and they do not need to be taken in sequence.

Name Title Number Avg Work Avg Diff
GA (CCA) Graduate Algorithms CS 8803-GA 22.6 4.7
BD4H Big Data for Health CSE 6250 35.0 4.8

Group E - Wildcard Elective

Computer Vision is included as a wildcard class, because it is one of the most highly-ranked courses available in OMSCS. In particular, this class could be taken in lieu of IOS, HPCA, or KBAI, if one of those elective courses ends up not being available.

Name Title Number Avg Work Avg Diff
CV Computer Vision CS 6476 19.6 4.1