Computer Science Masters - Course Review

AdamAdam
5 min read

As of 3-25-2025 I have taken 6/10 classes for the OMSCS program.

KBAI - Knowledge Based Artificial Intelligence

Core Themes

  • BFS - Breadth First Search

  • DFS - Depth First Search

  • A* Search

  • Heuristics

The semester long, core project of the class is designing a software agent to solve the Raven’s Progressive Matrices problems. A series of visual tests that measures human’s intelligence. An example is below.

💡
Takeaway: When designing software, it’s extremely relevant to understand the layered cognitive reasoning and problem solving steps humans go through; translating those human techniques into code.
🔥
Score: 8/10. I enjoyed the cognitive science approach to software, albeit the lectures were not engaging and repetitive. The mini-projects in KBAI were well designed, engaging and a lot of fun!

ML4T - Machine Learning for Trading

Core Themes

  • Software in the Stock Market

    • Stock Market Financial Overview

    • Technical Indicators

    • High Frequency Trading (HFT)

  • Linear Regression

  • Decision Trees - Random Forest Learner

  • Reinforcement Learning - Q-Learner/Dyna

The final project in the class combines the prior machine learning techniques. The goal of the final project is to create a machine learning model where-in the rules are dynamically determined based on a trained supervised classification random forest model. The model was then deployed in a hypothetical stock simulation where decisions are made to buy and sell stock depending on the model’s attributes and the subsequent technical indicators.

The screenshot below depicts my trained model, the Strategy Learner, outperforming the portfolio of the Benchmark and Manual Strategy.

💡
Takeaway: Machine Learning can be fairly digestable to understand and implement, it’s a lot of math implemented in such a way that can surface amazing insights and predictability. Machine Learning can be deployed in a lot of industries and the analytical, productivity and revenue gains can be monumental.
🔥
Score: 10/10. I’m fascinated with parts of the finance industry. Dr. Balch is a great lecturer, the content and projects were very engaging.

The classic iris flower classification example is a great dataset to get your feet wet in Machine Learning!!


SDP - Software Development Process

Core Themes

  • Mobile Application Development (JAVA) - Android Studio

  • Git/GitHub

  • Blackbox Testing

  • Whitebox Testing

    • Path, Statement, Branch Coverage
  • Unit Test Generation

The larger group project in this class is developing an application in JAVA, using Android Studio. The loose structure of working on software in a typical SDLC process was something I’m used to in my full time work. However, it was a great learning experience in the context of JAVA and Android Studio.

The whitebox testing assignments were very engaging and reinforced learning about the different coverage techniques.

The screenshot below is the entry panel of the application my team and I developed.

💡
Takeaway: Testing code is critical. Prior to this class I thought I was good at testing edge cases but I did so informally. Learning about whitebox testing helped formalize the quality assurance process that is often overlooked or underutilized in software development.
🔥
Score: 9/10 This was my first exposure to formal software testing, I found it fascinating to learn about the different coverage techniques for unit tests. Additionally the group project was a lot of fun. JAVA and mobile development is something I’ve experimented with but never worked a lot on. Getting back into JAVA helped my Python skills.

AI4R - Artificial Intelligence for Robotics

Core Themes

  • Histogram Filter

  • Kalman Filter

  • Particle Filter

  • Kinematic Bicycle Model

  • PID Controller (Proportional, Integral, Derivative)

  • SLAM (Simultaneous Localization and Mapping)

  • Search (A-star, Dynamic Programming (value iteration, optimum policy))

All of AI44’s projects are well thought-out and engaging. To complete the projects in full, you must understand the concepts at a fairly deep level. Each project comes with visual GUI interactions of the tasks, involving flying a drone to a certain height or localizing a moving asteroid.

The following gif is taken from the lectures, visualizing particle filters being constantly sampled and eventually through a particle filter, localizing on the target.

The following visual is a demonstration of the Kalman filter. Predictions and measurements are fed into a filter, based on weights of each model, the prediction and measurements overtime converges into the estimated position of the vehicle.

Kalman Filter - Part 1

Lastly, extra credit for the class was implementing a Kalman Filter within moving physical hardware. The following video demonstrates my imperfect Kalman Filter robot turning and stopping autonomously based on ultra sonic measurements.

💡
Takeaway: Localization is the core of robotics. Robots can’t perform tasks or actions if they don’t know where they are in the world. There’s a lot of concepts that go into mapping and localization for autonomous vehicles; these concepts are foundational to robotics, even in the age of AI.
🔥
Score: 8/10 I learned the most array of concepts in this class. The projects were approachable and the concepts are not terribly mind-bending. Through the projects and the lectures, the instructors give just enough to initially cling to the concepts and then further research is required on the student to fully grasp the ideas.

CN - Computer Networks (Ongoing Spring 2025)

Core Themes

  • The Open Systems Interconnection (OSI) Model

    • 7 Layer Framework
  • iBGP/eBGP

  • TCP/UDP

OSI Model

💡
Takeaway:
🔥
Score:

VGD - Video Game Design & Programming (Ongoing Spring 2025)

Core Themes (Unity)

  • AI Tracking Agents

  • Animation Mecanim

  • Game Feel

💡
Takeaway:
🔥
Score:

Remaining Classes through Fall 2026:

AIES - Artificial Intelligence Ethics & Society


NLP - Natural Language Processing


ML - Machine Learning


GA - Graduate Algorithms


0
Subscribe to my newsletter

Read articles from Adam directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Adam
Adam