Course Content: Linear and Nonlinear Programming, algorithms and theory.
Grade: Audited due to completion of degree requirements
Official Description: Provides experience working with physical robotic systems, with the goal of giving you an understanding of the 'stack' on which higher-level robot control algorithms rest. Covers various useful tips and tricks in working with robots and computer code that often fall outside of the academic curriculum.
Course Content: Small kit projects including autonomous cars and desktop arms. Built up a minimal communication (publishers, subscribers, message sending) stack emulating ROS from scratch and deployed onto toy hardware.
Grade: A
Official Description: Provides an introduction to learning systems and their application to the control of nonlinear systems. Covered topics include neural networks, reinforcement learning, and evolutionary algorithms. Includes project component in which students write a technical paper and give a conference style presentation based on their project.
Course Content: Neural networks for control, reinforcement learning, evolutionary algorithms, search based optimization methods.
Grade: A
Official Description: Focuses on how inertia, spring compliance, and other passive dynamics affect highly dynamic, software-controlled systems. Examples include robotic manipulation tasks, robot-human interaction, CNC machines, or legged locomotion.
Course Content: Developing realistic models and simulations of actuators performing a variety of tasks: force control, position control, spring mass walker (my choice), monopod hopping robot (my choice). Studied usage of passive dynamics and the pros and cons of adding compliance.
Grade: A
Official Description: Theoretical design of control systems for systems modeled by linear multivariable differential equations. Topics covered include controllability, observability, state feedback control, pole placement, output feedback, estimator design, and control designs that include both estimators and regulators.
Course Content: Controllability, observability, state feedback, pole placement, LQR, Kalman filters, LQG, robust control.
Grade: A
Official Description: Dynamic response of single and multiple degree-of-freedom systems.
Course Content: Deriving equations of motion for single, multiple and continuous DoF systems. Solving vibrational response of single and multiple DoF systems.
Grade: A
Official Description: Discrete and continuous mathematical models and methods for analysis, including linear analysis, equilibrium and minimum principles, calculus of variations, principal component analysis and orthogonal expansions, asymptotic and Fourier analysis, least squares, constrained and unconstrained optimization, inverse problems.
Course Content: Models and methods for analysis including PCA, Fourier analysis, least squares, constrained and unconstrained optimization, Lagrange multipliers, Kalman filters, simplex method, duality, and nonlinear programming.
Grade: A
Official Description: Continuous representations. Bias-variance tradeoff. Computational learning theory. Gaussian probabilistic models. Linear discriminants. Support vector machines. Neural networks. Ensemble methods. Feature extraction and dimensionality reduction methods. Factor analysis. Principle component analysis. Independent component analysis. Cost-sensitive learning.
Course Content: Linear regression, logistic regression, model selection techniques, naive bayes classifiers, perceptrons, kernels, svm, decision trees, ensamble methods, unsupervised learning, dimension reduction, neural networks.
Grade: A
Official Description: A broad introduction to the field of robotics, and to the graduate Robotics program. The goal of the class is to take students with different backgrounds (mechanical engineering, computer science, electrical engineering, physics, etc.) and give them a common base in the fundamentals of robotics. A secondary goal is to introduce students to the Robotics program, and to give them some of the skills that will make them successful, both in the program and as a professional roboticist.
Course Content: common sensors and actuators, kinematics, dynamics, cameras and images, graphs, planning. Assignments on ROS, jacobian methods of movement, 3D image reconstruction, Kalman filtering.
Grade: A
Official Description: The course deals with a broad range of artificial intelligence (AI) topics. It introduces the programming languages for artificial intelligence Prolog and Lisp. The course begins with an introduction to AI applications, predicate calculus, and state space search. Then it delves into some central areas of artificial intelligence such as heuristic strategies, problem solving, knowledge representation, expert systems, and machine learning. Throughout the course, the student will frequently be required to work with examples.
Course Content: predicate calculus, state space search, heuristic strategies, knowledge representation, expert systems, LISP projects
Grade: A+
Course Content: Introduction to robotic programming: sensors, feedback architectures, deliberative, reactive and behaviour-based control, Arduino based projects
Grade: A+
Course Content: Control theory for precise movements: state space modeling, dynamics of electromechanical systems, trajectory generation, synchronized motion planning for multi-axis machines, pole-placement, lead-lag compensators, digital control
Grade: A
Course Content: Coordinate systems, homogeneous coordinate transformations, forward and inverse kinematics, DH parameterizations, A/D & D/A conversions, encoders, motors/actuators, programming Motoman robot arms in simulated factory assembly
Grade: A/A+
Course Content: Basics of control theory: modeling in frequency domain, stability considerations. Designing and tuning PID controllers. Utilizing bode diagrams and root locus plots.
Grade: A
All graduate level courses (2020 - onwards) taken at Oregon State University - highest achievable grade: A
All undergraduate level courses taken at University of Manitoba - highest achievable grade: A+