Senior Year (2021-2022)

Fall 2021 Courses

  • ESE450: Senior Design I
    Professors: Dr. Sid Deliwala, Dr. Jan Van Der Spiegel
    Advisors: Dr. Pratik Chaudhari, Dr. Ani Hsieh
    This is a project-based course for engineering students that spans the course of a year. Students work in teams of 3 to 5 to design a product or conduct research in a realm of their choice. To learn more about this project, you can refer to my projects section, here.

  • ESE546: Principles of Deep Learning
    Professor: Dr. Pratik Chaudhari
    This is a mathematically rigororous course delving into the underlying statistics, optimization, and calculus principals that enable deep learning. The course also has a significant application component where students implement the algorithms, networks, and models learned in theory. We covered topics such as:
    • Kernels
    • Fully-Connected networks
    • Backpropogation
    • Convolutional architectures
    • Gradient Descent, SGD, and Momentum-variants
    • Recurrent architectures
    • Some Reinforcement Learning, GANs, and more
    • We use Pytorch and Numpy for much of our development, and for a few of the homework assignments, I created Weights and Biases reports that I’m pretty proud of. Here are two reports that I made:
      - Homework 2: Adversarial Attack of CNNs
      - Homework 4: SGD, Momentum, Nesterov’s Momentum

  • CIS521: Artificial Intelligence
    Professor: Dr. Christopher Callison-Burch
    This is a course covering a wide array of topics in AI, and I have found it to be one of my favorite courses I have taken at Penn. We covered the following topics:
    • Search Problems
    • Adversarial Search in Games
    • Constraaint Satisfaction Problems (CSPs)
    • Markov Decision Processes (MDPs)
    • Reinforcement Learning (RL)
    • Deep Learning in Vision and Language

    One of the highlights of this course is the project offerings which let students deploy algorithms and models on a Raspberry Pi and remote-controlled R2D2 robot. Some of these projects are on display, like this one.

  • CIS625: Theory of Machine Learning
    Professor: Dr. Michael Kearns
    This course likely has the most difficult mathematical concepts I have ever approached. This PhD seminar introduces the PAC Learning Framework and the rigorous proofs that go behind proving learnability. The professor is a leading figure in the fields of differential privacy and fairness in ML. We cover these topics after laying the groundwork with learnability, shattering, consistency, uniform convergence, the VC dimension, classification, and statistical query. I’m currently working on my final paper for the course, where I am synthesizing from recent literature in Differential Privacy and Adversarial Robustness in the context of deep neural networks. I’ll try to add a link to the paper when I am finished writing it.

Junior Year (2020-2021)

Spring 2021 Courses

  • MEAM321: Vibrations of Mechanical Systems
    Professor: Dr. Jordan Rainey
    This course is a mathematical dive into the dynamics of vibrations, which has widespread application to mechanical, electrical, and control systems. The crux of this course and my interpretation of vibrations as a whole, is the mass-spring (and sometimes damper) systems. We spend a great deal of time deriving and characterizing vibrations of simple systems like pendulums and single mass-sping systems using tools like differential equations and linear algebra. Then, we generalize these principals to systems with many degrees of freedom, and eventually building up to modelling real-world scenarios like circuits, suspension systems, impulses, and mechanical structures. There is a significant amount of math involved in this course, as well as some graphical and numerical solving in MATLAB.

  • MEAM333: Heat and Mass Transfer
    Professor: Dr. Jennifer Lukes
    Being honest, this was NOT my class. I struggled with the material and really struggled to generate motivation and interest in the course. I think that thermodynamics and fluid transfer are cool topics from a distance, but taking this course really just never latched onto me. The fundamentals of this course are in mathematically characterizing the movement of thermal energy in various mechanical and electrical systems, like power generation plants. These principals also hold up in fluid transfer.

  • CIS519: Applied Machine Learning
    Professor: Dr. Dinesh Jayaraman
    This course covers a fast paced and dense introduction to Machine Learning in practical settings. This is a great course for people looking for little less formal mathematical derivation when attacking the foundations of Machine Learning. We cover things like:
    • Linear Classifiers (Logistic Regression, Decision Stumps)
    • Non-linear Classifiers (Nearest Neighbors, Decision Trees, SVMs)
    • Boosting, Stacking, and Ensembling (Random Forests, Adaboost, Bagging)
    • Unsupervised Learning (Clustering, PCA)
    • Neural Networks for Vision and Language
    • Reinforcement Learning (TD Learning, Q-Learning, DQN)

    For my final project in this course, my group used the IBES Estimates dataset to classify stocks into {BUY, HOLD, SELL} based on prior year’s Analyst Forecast Error. We approached the project with more traditional methods of ML, making use of PCA, Random Forests, and XGBoost. Look here on my Github to see the gigantic notebook we created our project in.

  • PSYC549: A Neuroscience Perspective of Artificial Intelligence
    Professor: Dr. Richard Di Rocco
    This is a fantastic seminar which posits that AI and Neuroscience are fundamentally tied. We first build an understanding of the human brain and human behavior through discussion of famous papers and experiments. With this, we examine modern Artifical Intelligence from the lens of human brain. I found this seminar to be incredibly stimulating and provided an eye-opening perspective to a field that I am passionate about. I wrote my final paper and presentation about Machine Learning and Neural Networks, relating these subjects back to course content.
  • MEAM348: Junior Mechanical Laboratory Course II
    Professors: Dr. Dustyn P. Roberts, Dr. Mark Yim

  • MUSC007: Arabic Choral Music
    Professor: Dr. Hanna Khoury

Fall 2020 Courses

  • MEAM302: Fluid Mechanics
    Professor: Dr. George Park

  • MEAM354: Solid Body Mechanics
    Professor: Dr. Prashant Purohit

  • CIS121: Algorithms and Data Structures
    Professor: Dr. Kostas Daniliidis

  • ENM360: Introduction to Data-Driven Modeling
    Professor: Dr. Paris Perdikaris

  • MEAM347: Junior Mechanical Laboratory Course I
    Professors: Dr. Dustyn P. Roberts, Dr. Mark Yim

Sophomore Year (2019-20)

Summer 2020 Courses

  • MEAM543: Performance, Stability, and Control of UAVs
    Professor: Dr. Bruce Kothmann

  • CIS262: Automata, Computation, and Complexity Theory
    Professor: Paul He

Spring 2020 Courses

  • MEAM203: Thermodynamics
    Professor: Dr. Igor Bargatin

  • MEAM211: Dynamics
    Professor: Dr. Michael Posa

  • MEAM248: Sophomore Mechanical Laboratory Course II
    Professor: Dr. Bruce Kothmann

  • CIS160: Foundations of Computer Science
    Professor: Dr. Clayton Greenberg

  • ENM251: Partial Differential Equations
    Professor: Dr. Michael Carchidi

  • EAS203: Engineering Ethics
    Professor: Dr. Brit Shields

Fall 2019 Courses

  • MEAM201: Machine Design and Manufacturing
    Professor: Dr. Graham Wabiszewski

  • MEAM210: Statics and Strength of Materials
    Professors: Dr. Dustyn P. Roberts, Dr. Kevin Turner

  • MEAM247: Sophomore Mechanical Laboratory Course I
    Professor: Dr. Bruce Kothmann

  • CIS120: Programming Fundamentals in Java and OCaml
    Professors: Dr. Swapneel Sheth, Dr. Steve Zdancewic

  • BEPP250: Managerial Economics
    Professor: Dr. Maxim Troshkin

Freshman Year (2018-19)

Summer 2019 Courses

  • WRIT030: The Art Persuasion
    Professor: Lawrence Abbott

Spring 2019 Courses

  • MEAM101: Introduction to Mechanical Design
    Professor: Dr. Paulo Arratia

  • CIS110: Introduction to Computer Programming
    Professor: Dr. Paul McBurney

  • MATH240: Linear Algebra and Ordinary Differential Equations
    Professor: Dr. Peter McGrath

  • CHEM101 & CHEM053: General Chemistry I & Laboratory
    Professor: Dr. Karen Ila Goldberg

Fall 2018 Courses

  • MEAM110: Introduction to Mechanics
    Professor: Dr. James Pikul

  • MEAM147: Freshman Mechanical Laboratory Course
    Professor: Dr. Michael Carchidi

  • MATH114: Multivariate Calculus
    Professor: Dr. Robert Ghrist

  • ENGR105: Introduction to Scientific Computing (MATLAB)
    Professor: Dr. Graham Wabiszewski

  • ECON001: Introduction to Microeconomics
    Professor: Dr. Anne Duchene

High School (2014-2018)