Courses

Stanford University

CS205L Continuous Mathematical Methods with an Emphasis on Machine Learning Winter 2026
Studied numerical approaches to the continuous mathematics used throughout computer science with an emphasis on machine and deep learning. Covered underlying mathematical methods including computational linear algebra and optimization, as well as special topics such as automatic differentiation via backward propagation, momentum methods from ordinary differential equations, CNNs, and RNNs. Completed programming assignments focused on neural network creation, training, and inference.
CS248B Fundamentals of Computer Graphics: Animation and Simulation Autumn 2025
Studied fundamental concepts and techniques in computer animation and physics simulation. Topics covered included numerical integration, 3D character modeling, keyframe animation, skinning/rigging, inverse kinematics, rigid body dynamics, deformable body simulation, and fluid simulation.
CS231N Deep Learning for Computer Vision Spring 2025
Explored cutting-edge topics in computer vision with a deep learning focus, emphasizing both theoretical foundations and practical modeling techniques. Covered core topics including image classification, convolutional neural networks (CNNs), optimization methods, and backpropagation. Advanced lectures delved into recurrent networks, attention mechanisms, and vision transformers. Additional modules focused on object detection, image segmentation, video understanding, self-supervised learning, generative models (VAEs, GANs, diffusion models), and 3D vision.
CS224R Deep Reinforcement Learning Spring 2025
Studied core concepts and modern techniques in deep reinforcement learning, with an emphasis on both foundational algorithms and emerging research directions. Topics included Markov Decision Processes (MDPs), imitation learning, policy gradient methods, actor-critic algorithms, Q-learning, and offline RL. Explored reward learning from human preferences, model-based and goal-conditioned RL, multi-task learning, and meta-RL. Advanced lectures and guest talks covered reinforcement learning for language models and robotics, including sim-to-real transfer.
ENGR319 Robotics and Autonomous Systems Seminar Winter 2025
Attended the Stanford Robotics and Autonomous Systems Seminar, a weekly in-person speaker series featuring academic and industry leaders in robotics. Topics covered perception, planning, learning, control, and hardware design for autonomous systems. Notable speakers included researchers from Stanford, MIT, ETH Zürich, Meta, and Nuro, presenting work on compliant manipulation, space autonomy, foundation models, scalable robot learning, and embodied intelligence. The seminar fostered cross-disciplinary discussions on the future of robotics research and deployment.
CS381 Sensorimotor Learning for Embodied Agents Winter 2025
Studied state-of-the-art approaches in sensorimotor learning for embodied AI, focusing on how autonomous agents perceive their environment, learn policies, and adapt through physical interaction. Covered topics such as dense visual representations, self-supervised vision transformers, policy learning with diffusion models, vision-language-action frameworks, benchmarking from human demonstrations, compliance control, and differentiable hardware design. The course emphasized critical analysis of recent research papers through structured in-class discussions, highlighting the challenges and opportunities unique to embodied intelligence.
CS229 Machine Learning Winter 2025
Studied foundational principles and algorithms in machine learning, with an emphasis on both statistical understanding and modern modeling techniques. Covered supervised learning (regression, neural networks, support vector machines, boosting), unsupervised learning (clustering, PCA, autoencoders, Gaussian mixture models), and reinforcement learning. Also explored recent advances in deep learning, including convolutional neural networks, Transformers, and pretrained models. The course emphasized generalization, optimization, and the theoretical connections between different learning paradigms.
CS238 Decision Making under Uncertainty Autumn 2024
Studied computational frameworks for sequential decision making under uncertainty, with applications in robotics, autonomous systems, and decision-support tools. Topics included probabilistic modeling, Bayesian networks, influence diagrams, dynamic programming, reinforcement learning (policy gradients, actor-critic, model-free and model-based methods), and belief state planning for partially observable Markov decision processes (POMDPs). Gained hands-on experience through programming projects on planning and learning algorithms, as well as a final research-driven project. Emphasized mathematical foundations, scalable algorithmic solutions, and principled representations of uncertainty for real-world decision-making.
CS227A Robot Perception Autumn 2024
Studied robot perception through a full-stack approach combining classical sensing models and modern learning-based techniques. Topics included sensor fundamentals (vision, acoustic, tactile), image formation, 3D geometry, pose estimation (ICP), mapping, kinematics, and planning. Explored learning-based vision methods including convolutional neural networks, neural radiance fields (NeRFs), visuomotor policy learning (e.g., behavior cloning), and self-supervised learning. Gained hands-on experience via five coding-based homework assignments building a vision-based pick-and-place system in simulation. Guest lectures featured experts from Google, TRI, and NVIDIA, with applications focused on scalable robot learning and foundation models.
CS221 AI: Principles and Techniques Autumn 2024
Gained a broad foundation in modern AI through a sequence of practical modules spanning machine learning, search, planning, decision-making, and reasoning. The course began with supervised learning methods including linear regression, classification, neural networks, and generalization techniques, followed by topics in fairness (Group DRO), feature engineering, and optimization (SGD, backpropagation). Explored sequential decision-making through search algorithms (BFS, UCS, A*), dynamic programming, and constraint satisfaction problems. Studied Markov decision processes (MDPs), reinforcement learning (Monte Carlo, Q-learning, SARSA), and game-theoretic reasoning (minimax, expectimax, alpha-beta pruning). Covered probabilistic models such as Bayesian networks and Markov networks, focusing on inference, sampling, and learning with the EM algorithm. The course concluded with a unit on logic, including propositional and first-order logic, inference rules, and automated reasoning techniques.

Northeastern University

EECE5639 Computer Vision Spring 2024
Introduced topics such as image formation, segmentation, feature extraction, matching, shape recovery, dynamic scene analysis, and object recognition. Computer vision brings together imaging devices, computers, and sophisticated algorithms to solve problems in industrial inspection, autonomous navigation, human-computer interfaces, medicine, image retrieval from databases, realistic computer graphics rendering, document analysis, and remote sensing. The goal of computer vision is to make useful decisions about real physical objects and scenes based on sensed images. Computer vision is an exciting but disorganized field that builds on very diverse disciplines such as image processing, statistics, pattern recognition, control theory, system identification, physics, geometry, computer graphics, and learning theory. Requires good programming experience in Matlab or C++.
EECE5644 Introduction to Machine Learning and Patter Recognition Summer1 2023
Studied machine learning (the study and design of algorithms that enable computers/machines to learn from experience/data). Covered a range of algorithms, focusing on the underlying models between each approach. Emphasized the foundations to prepare for research in machine learning. Topics included Bayes decision theory, maximum likelihood parameter estimation, model selection, mixture density estimation, support vector machines, neural networks, probabilistic graphics models, and ensemble methods (boosting and bagging). Offered an opportunity to learn where and how to apply machine learning algorithms and why they work.
EECE5554 Robotics Sensing and Navigation Spring 2023
Examined the actual sensors and mathematical techniques for robotic sensing and navigation with a focus on sensors such as cameras, sonars, and laser scanners. These were used in association with techniques and algorithms for dead reckoning and visual inertial odometry in conjunction with GPS and inertial measurement units. Covered Kalman filters and particle filters as applied to the SLAM problem. A large component of the class involved programming in both the ROS and LCM environments with real field robotics sensor data sets. Labs incorporated real field sensors and platforms. Culminated with both an individual design project and a team-based final project of considerable complexity.
EECE4630 Robotics Spring 2023
Introduced robotics analysis covering basic theory of kinematics, dynamics, and control of robots. Developed design capabilities of microprocessor-based control systems with input from sensory devices and output actuators by designing and implementing a small mobile robot system to complete a specific task. Covered actuators, sensors, system modeling, analysis, and motion control of robots.
ME3460 Robot Dynamics and Control Fall 2022
Covered fundamental components and mechanisms of robotic systems and their multidisciplinary nature. Introduced the robot’s kinematics, dynamics, and control. Presented a quick overview of forward and inverse kinematics, robot dynamics, as well as path planning and control techniques. Topics also included dynamic modeling and analysis of mechanically, electrically, and magnetically driven hydraulic and pneumatic drives; kinematics and motion analysis of linkages; as well as sensing technologies (e.g., position, linear and angular displacements, velocity and acceleration, force and torque sensors) used in robotic systems. Presented kinematics and control of automatic machinery and manufacturing processes, automatic assembly, and inspection robotic systems as representative examples.
MATH3081 Probability and Statistics Fall 2022
Focused on probability theory. Topics included sample space; conditional probability and independence; discrete and continuous probability distributions for one and for several random variables; expectation; variance; special distributions including binomial, Poisson, and normal distributions; law of large numbers; and central limit theorem. Also introduced basic statistical theory including estimation of parameters, confidence intervals, and hypothesis testing.
EECE5550 Mobile Robotics Fall 2022
Investigated the science and engineering of mobile robots. Topics included kinematics, dynamics, numerical methods, state estimation, control, perception, localization and mapping, and motion planning for mobile robots. Emphasizeed practical robot applications ranging from disaster response to healthcare to space exploration.
EECE2322 Fundamentals of Digital Design and Computer Organization Fall 2022
Covered the design and evaluation of control and data structures for digital systems. Used hardware description languages to describe and design both behavioral and register-transfer-level architectures and control units. Topics included number systems, data representation, a review of combinational and sequential digital logic, finite state machines, arithmetic-logic unit (ALU) design, basic computer architecture, the concepts of memory and memory addressing, digital interfacing, timing, and synchronization. Assignments included designing and simulating digital hardware models using SystemVerilog as well as some assembly language (RISC-V) to expose the interface between hardware and software.
EECE2560 Fundamentals of Engineering Algorithms Spring 2020
Covered the design and implementation of algorithms to solve engineering problems using a high-level programming language. Reviewed elementary data structures, such as arrays, stacks, queues, and lists, and introduces more advanced structures, such as trees and graphs and the use of recursion. Covered both the algorithms to manipulate these data structures as well as their use in problem solving. Introduced algorithm complexity analysis and its application to developing efficient algorithms. Emphasized the importance of software engineering principles.
EECE2520 Fundamentals of Linear Systems Spring 2020
Developed the basic theory of continuous and discrete systems, emphasizing linear time-invariant systems. Discussed the representation of signals and systems in both the time and frequency domain. Topics included linearity, time invariance, causality, stability, convolution, system interconnection, and sinusoidal response. Developed the Fourier and Laplace transforms for the discussion of frequency-domain applications. Analyzed sampling and quantization of continuous waveforms (A/D and D/A conversion), leading to the discussion of discrete-time FIR and IIR systems, recursive analysis, and realization. The Z-transform and the discrete-time Fourier transform were developed and applied to the analysis of discrete-time signals and systems.
EECE2412 Fundamentals of Electronics Spring 2020
Reviewed basic circuit analysis techniques. Briefly introduced operation of the principal semiconductor devices: diodes, field-effect transistors, and bipolar junction transistors. Covered diode circuits in detail; the coverage of transistor circuits focused mainly on large-signal analysis, DC biasing of amplifiers, and switching behavior. Used PSpice software to simulate circuits and large-signal models and transient simulations to characterize the behavior of transistors in amplifiers and switching circuits. Digital electronics topics included CMOS logic gates, dynamic power dissipation, gate delay, and fan-out. Amplifier circuits were introduced with the evaluation of voltage transfer characteristics and the fundamentals of small-signal analysis.
EECE2540 Fundamentals of Networks Fall 2019
Presented an overview of modern communication networks. The concept of a layered network architecture was used as a framework for understanding the principal functions and services required to achieve reliable end-to-end communications. Topics included service interfaces and peer-to-peer protocols, a comparison of the OSI (open system interconnection) reference model to the TCP/IP (Internet) and IEEE LAN (local area network) architectures, network-layer and transport-layer issues, and important emerging technologies such as Bluetooth and ZigBee.
EECE2160 Embedded Design: Enabling Robotics Fall 2019
Covered the basics of the Unix operating system, high-level programming concepts, introductory digital design, wireless networking, and Simulink design. Offered a hands-on experience developing a remote-controlled robotic arm using an embedded systems platform.
EECE2150 Circuits and Signals: Biomedical Applications Fall 2019
Covered circuit theory, signal processing, circuit building, and MATLAB programming. Introduced basic device and signal models and circuit laws used in the study of linear circuits. Analyzed resistive and complex impedance networks. Used the ideal operational amplifier model, focusing on differential amplifiers and active filter circuits. Introduced basic concepts of linearity and time-invariance for both continuous and discrete-time systems and concepts associated with analog/digital conversion. Demonstrated discrete-time linear filter design on acquired signals in the MATLAB environment. Used knowledge of circuits, analog signals, digital signals, and biological signals to build a working analog/digital EKG system.
MATH2341 Differential Equations and Linear Algebra for Engineering Spring 2019
Studied ordinary differential equations, their applications, and techniques for solving them including numerical methods (using MATLAB), Laplace transforms, and linear algebra. Topics included linear and nonlinear first- and second-order equations and applications included electrical and mechanical systems, forced oscillation, and resonance. Topics from linear algebra, such as matrices, row-reduction, vector spaces, and eigenvalues/eigenvectors, were developed and applied to systems of differential equations.