Micromasters series

These courses can be taken individually via edX.org. Learners who pay for and complete all four courses are eligible for a MicroMasters certificate. Those who apply to certain Master's degree programs at Penn Engineering may use the MicroMasters certificate to accelerate their time to degree completion. Learn more about the MicroMasters path to an MSE.

Robo1x Kinematics and Mathematical Foundations

Master the foundational math concepts that drive robotics and put them into practice using MATLAB.

Robo2x Vision Intelligence and Machine Learning

Learn how to design robot vision systems that avoid collisions, safely work with humans and understand their environment.

Robo3x Dynamics and Control

Learn how to design and engineer complex, dynamic robotic systems.

Robo4x Locomotion Engineering

Learn how to design, build, and program dynamical, legged robots that can operate in the real world.

Professional Certificate

These courses can be taken individually via ed.org. Learners who pay for and complete all four courses will receive a Professional Certificate.

SD1x Software Development Fundamentals

Learn the fundamentals of object-oriented programming in Java, as well as best practices of modern software development.

SD2x Data Structures and Software Design

Learn how to select, apply, and analyze the most appropriate data representations in your code and design high quality software that is easy to understand and modify.

SD3x Algorithm Design and Analysis

Learn about the core principles of computer science: algorithmic thinking and computational problem solving.

SD4x Programming for the Web with JavaScript

Learn how to develop dynamic, interactive, and data-driven web apps using JavaScript.


These courses can be taken individually via Coursera.org. Learners who pay for and complete all six courses will receive a Specialization Certificate.

Aerial Robotics

Robotics: Aerial Robotics

This course begins with an introduction to the mechanics of flight and the design of quadrotor flying robots. The instructors will help you develop dynamic models, derive controllers, and synthesize planners for operating in three-dimensional environments. You will be exposed to the challenges of noisy sensors and maneuvering in complex environments. Finally, you see real world examples of possible applications in the rapidly-growing drone industry.

Computational Motion Planning

Robotics: Computational Motion Planning

Robotic systems typically include three components: a mechanism which is capable of exerting forces and torques on the environment, a perception system for sensing the world, and a decision and control system which modulates the robot's behavior to achieve the desired ends. In this course we will consider the problem of how a robot decides what to do to achieve its goals. You will learn some common approaches to this problem including graph-based methods, randomized planners and artificial potential fields.


Robotics: Mobility

How can robots use their motors and sensors to move around in an unstructured environment? You will understand how to design robot bodies and behaviors that recruit limbs and more general appendages to apply physical forces that confer reliable mobility in a complex and dynamic world. We develop an approach to composing simple dynamical abstractions that partially automate the generation of complicated sensorimotor programs.


Robotics: Perception

How can robots perceive the world and their own movements so that they accomplish navigation and manipulation tasks? In this module, we will study how images and videos acquired by cameras mounted on robots are transformed into representations like features and optical flow. You will come to understand how grasping objects is facilitated by the computation of 3D posing of objects and navigation can be accomplished by visual odometry and landmark-based localization.

Estimation and Learning

Robotics: Estimation and Learning

How can robots determine their state and properties of the surrounding environment from noisy sensor measurements in time? In this course you will learn how to get robots to incorporate uncertainty into estimating and learning from a dynamic and changing world. Specific topics that will be covered include probabilistic generative models, Bayesian filtering for localization and mapping.

Capstone rover

Robotics: Capstone

In our six-week Robotics Capstone, we will give you a chance to implement a solution for a real world problem based on the content you learnt from the courses in your robotics specialization. It will also give you a chance to use mathematical and programming methods that researchers use in robotics labs.