About this Course
4.2
655 ratings
179 reviews
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. This problem is often referred to as Motion Planning and it has been formulated in various ways to model different situations. You will learn some of the most common approaches to addressing this problem including graph-based methods, randomized planners and artificial potential fields. Throughout the course, we will discuss the aspects of the problem that make planning challenging....
Stacks

Course 2 of 6 in the

Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Clock

Approx. 10 hours to complete

Suggested: 3 hours/week...
Comment Dots

English

Subtitles: English, Spanish...

Skills you will gain

Motion PlanningAutomated Planning And SchedulingA* Search AlgorithmMatlab
Stacks

Course 2 of 6 in the

Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Clock

Approx. 10 hours to complete

Suggested: 3 hours/week...
Comment Dots

English

Subtitles: English, Spanish...

Syllabus - What you will learn from this course

Week
1
Clock
4 hours to complete

Introduction and Graph-based Plan Methods

Welcome to Week 1! In this module, we will introduce the problem of planning routes through grids where the robot can only take on discrete positions. We can model these situations as graphs where the nodes correspond to the grid locations and the edges to routes between adjacent grid cells. We present a few algorithms that can be used to plan paths between a start node and a goal node including the breadth first search or grassfire algorithm, Dijkstra’s algorithm and the A Star procedure....
Reading
5 videos (Total 27 min), 4 readings, 4 quizzes
Video5 videos
1.2: Grassfire Algorithm6m
1.3: Dijkstra's Algorithm4m
1.4: A* Algorithm6m
Getting Started with the Programming Assignments3m
Reading4 readings
Computational Motion Planning Honor Code10m
Getting Started with MATLAB10m
Resources for Computational Motion Planning10m
Graded MATLAB Assignments10m
Quiz1 practice exercise
Graph-based Planning Methods8m
Week
2
Clock
2 hours to complete

Configuration Space

Welcome to Week 2! In this module, we begin by introducing the concept of configuration space which is a mathematical tool that we use to think about the set of positions that our robot can attain. We then discuss the notion of configuration space obstacles which are regions in configuration space that the robot cannot take on because of obstacles or other impediments. This formulation allows us to think about path planning problems in terms of constructing trajectories for a point through configuration space. We also describe a few approaches that can be used to discretize the continuous configuration space into graphs so that we can apply graph-based tools to solve our motion planning problems....
Reading
6 videos (Total 19 min), 3 quizzes
Video6 videos
2.2: RR arm2m
2.3: Piano Mover’s Problem3m
2.4: Visibility Graph3m
2.5: Trapezoidal Decomposition1m
2.6: Collision Detection and Freespace Sampling Methods4m
Quiz1 practice exercise
Configuration Space8m
Week
3
Clock
1 hour to complete

Sampling-based Planning Methods

Welcome to Week 3! In this module, we introduce the concept of sample-based path planning techniques. These involve sampling points randomly in the configuration space and then forging collision free edges between neighboring sample points to form a graph that captures the structure of the robots configuration space. We will talk about Probabilistic Road Maps and Randomly Exploring Rapid Trees (RRTs) and their application to motion planning problems....
Reading
3 videos (Total 17 min), 2 quizzes
Video3 videos
3.2: Issues with Probabilistic Road Maps4m
3.3: Introduction to Rapidly Exploring Random Trees6m
Quiz1 practice exercise
Sampling-based Methods6m
Week
4
Clock
1 hour to complete

Artificial Potential Field Methods

Welcome to Week 4, the last week of the course! Another approach to motion planning involves constructing artificial potential fields which are designed to attract the robot to the desired goal configuration and repel it from configuration space obstacles. The robot’s motion can then be guided by considering the gradient of this potential function. In this module we will illustrate these techniques in the context of a simple two dimensional configuration space....
Reading
4 videos (Total 19 min), 2 quizzes
Video4 videos
4.2: Issues with Local Minima2m
4.3: Generalizing Potential Fields2m
4.4: Course Summary6m
Quiz1 practice exercise
Artificial Potential Fields6m
4.2
Briefcase

83%

got a tangible career benefit from this course

Top Reviews

By ADJul 3rd 2018

The topic was very interesting, and the assignments weren't overly complicated. Overall, the lesson was fun and informative , despite the bugs in the learning tool(especially, the last assignment.)

By LCMay 7th 2016

This course is supposed to be easier but somehow it also makes it difficult because implementations of the algorithms in Matlab are bit non-standard as I am used to. Altogether very challenging.

Instructor

CJ Taylor

Professor of Computer and Information Science
School of Engineering and Applied Science

About University of Pennsylvania

The University of Pennsylvania (commonly referred to as Penn) is a private university, located in Philadelphia, Pennsylvania, United States. A member of the Ivy League, Penn is the fourth-oldest institution of higher education in the United States, and considers itself to be the first university in the United States with both undergraduate and graduate studies. ...

About the Robotics Specialization

The Introduction to Robotics Specialization introduces you to the concepts of robot flight and movement, how robots perceive their environment, and how they adjust their movements to avoid obstacles, navigate difficult terrains and accomplish complex tasks such as construction and disaster recovery. You will be exposed to real world examples of how robots have been applied in disaster situations, how they have made advances in human health care and what their future capabilities will be. The courses build towards a capstone in which you will learn how to program a robot to perform a variety of movements such as flying and grasping objects....
Robotics

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.