Autonomous Navigation for Flying Robots

Provided by:
9/10 stars
based on  71 reviews
Provided by:
Cost FREE
Start Date On demand

Course Details

Cost

FREE

Upcoming Schedule

  • On demand

Course Provider

edX online courses
Harvard University, the Massachusetts Institute of Technology, and the University of California, Berkeley, are just some of the schools that you have at your fingertips with edX. Through massive open online courses (MOOCs) from the world's best universities, you can develop your knowledge in literature, math, history, food and nutrition, and more. These online classes are taught by highly-regarded experts in the field. If you take a class on computer science through Harvard, you may be tau...
Harvard University, the Massachusetts Institute of Technology, and the University of California, Berkeley, are just some of the schools that you have at your fingertips with edX. Through massive open online courses (MOOCs) from the world's best universities, you can develop your knowledge in literature, math, history, food and nutrition, and more. These online classes are taught by highly-regarded experts in the field. If you take a class on computer science through Harvard, you may be taught by David J. Malan, a senior lecturer on computer science at Harvard University for the School of Engineering and Applied Sciences. But there's not just one professor - you have access to the entire teaching staff, allowing you to receive feedback on assignments straight from the experts. Pursue a Verified Certificate to document your achievements and use your coursework for job and school applications, promotions, and more. EdX also works with top universities to conduct research, allowing them to learn more about learning. Using their findings, edX is able to provide students with the best and most effective courses, constantly enhancing the student experience.

Provider Subject Specialization
Sciences & Technology
Business & Management
22621 reviews

Course Description

In recent years, flying robots such as miniature helicopters or quadrotors have received a large gain in popularity. Potential applications range from aerial filming over remote visual inspection of industrial sites to automatic 3D reconstruction of buildings. Navigating a quadrotor manually requires a skilled pilot and constant concentration. Therefore, there is a strong scientific interest to develop solutions that enable quadrotors to fly autonomously and without constant human supervision. This is a challenging research problem because the payload of a quadrotor is uttermost constrained and so both the quality of the onboard sensors and the available computing power is strongly limited. 

In this course, we will introduce the basic concepts for autonomous navigation for quadrotors. The following topics will be covered:

  • 3D geometry,
  • probabilistic state estimation,
  • visual odometry, SLAM, 3D mapping,
  • linear contro...

In recent years, flying robots such as miniature helicopters or quadrotors have received a large gain in popularity. Potential applications range from aerial filming over remote visual inspection of industrial sites to automatic 3D reconstruction of buildings. Navigating a quadrotor manually requires a skilled pilot and constant concentration. Therefore, there is a strong scientific interest to develop solutions that enable quadrotors to fly autonomously and without constant human supervision. This is a challenging research problem because the payload of a quadrotor is uttermost constrained and so both the quality of the onboard sensors and the available computing power is strongly limited. 

In this course, we will introduce the basic concepts for autonomous navigation for quadrotors. The following topics will be covered:

  • 3D geometry,
  • probabilistic state estimation,
  • visual odometry, SLAM, 3D mapping,
  • linear control.

In particular, you will learn how to infer the position of the quadrotor from its sensor readings and how to navigate it along a trajectory.

The course consists of a series of weekly lecture videos that we be interleaved by interactive quizzes and hands-on programming tasks. For the flight experiments, we provide a browser-based quadrotor simulator which requires the students to write small code snippets in Python.

This course is intended for undergraduate and graduate students in computer science, electrical engineering or mechanical engineering. This course has been offered by TUM for the first time in summer term 2014 on EdX with more than 20.000 registered students of which 1400 passed examination. The MOOC is based on the previous TUM lecture “Visual Navigation for Flying Robots” which received the TUM TeachInf best lecture award in 2012 and 2013.

FAQ

Do I need to buy a textbook?

No, all required materials will be provided within the courseware. However, if you are interested, we recommend the following additional materials:

  1. This course is based on the TUM lecture Visual Navigation for Flying Robots. The course website contains lecture videos (from last year), additional exercises and the full syllabus: http://vision.in.tum.de/teaching/ss2013/visnav2013
  2. Probabilistic Robotics. Sebastian Thrun, Wolfram Burgard and Dieter Fox. MIT Press, 2005.
  3. Computer Vision: Algorithms and Applications. Richard Szeliski. Springer, 2010.

Do I need to build/own a quadrotor?

No, we provide a web-based quadrotor simulator that will allow you to test your solutions in simulation. However, we took special care that the code you will be writing will be compatible with a real Parrot Ardrone quadrotor. So if you happen to have a Parrot Ardrone quadrotor, we encourage you to try out your solutions for real.

Reviews 9/10 stars
71 Reviews for Autonomous Navigation for Flying Robots

Ratings details

  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.

Sort By
Alex Rios profile image
Alex Rios profile image

Alex Rios

10/10 starsCompleted
4 years, 4 months ago
This course is excellent for deep introduction in this exciting world of robots. its very good to see how different topics were converging to fly the robot: algebra, sensors, motors, statistics and programming. And the course woke up me to continue working with robots and to learn more math for imaging processing and so on.
Was this review helpful? Yes1
 Flag
Jeffrey Oshiro profile image
Jeffrey Oshiro profile image

Jeffrey Oshiro

10/10 starsCompleted
4 years, 2 months ago
This is not a class on how to build your own quadcopter. Rather, it is a practical mix of theory and hands practice (via simulator). The content matched the course title perfectly. It was mostly about creating algorithms for autonomous navigation. There were some parts about the dynamics of quadcopters and the sensors, but those were mainly to give you a sense of what is happening physically. The instructors were excellent. The 4.5/5 rating is because I find it distracting and unnecessary to have just the instructors face in the corner of the video.
Was this review helpful? Yes0
 Flag
O T profile image
O T profile image

O T

7/10 starsCompleted
4 years, 4 months ago
Hello All. I took this course with the intention of learning enough to be able to build and program my own quad. I did not learn that. I did learn a lot of things, and for that I am very grateful. I consider this course to be more of an introduction rather than a higher level course. I am starting this post in the hopes that others will add to it and then the instructors can get some useful feedback if/when they teach this course in the future. So let's get started. Pros: Great introductory course to the requirements of autonomous flight in quadrotors This course is easy to follow and even novice programmers have a good opportunity to successfully finish this course. The homework does a decent job of reviewing a person's mathematics abilities and somewhat testing their programming skills. The flow of the course is well thought out and given the length of the course, the instructors did an excellent job of organizing the material. Con... Hello All. I took this course with the intention of learning enough to be able to build and program my own quad. I did not learn that. I did learn a lot of things, and for that I am very grateful. I consider this course to be more of an introduction rather than a higher level course. I am starting this post in the hopes that others will add to it and then the instructors can get some useful feedback if/when they teach this course in the future. So let's get started. Pros: Great introductory course to the requirements of autonomous flight in quadrotors This course is easy to follow and even novice programmers have a good opportunity to successfully finish this course. The homework does a decent job of reviewing a person's mathematics abilities and somewhat testing their programming skills. The flow of the course is well thought out and given the length of the course, the instructors did an excellent job of organizing the material. Cons: A lot of the conceptual aspects were not very well explained during the lecture. I found this to be the case while doing the homework. Some of the homework was more of a puzzle rather than a test of understanding. For example, homework week 6 when trying to determine the correct state vector. In this exercise we were given a set of inputs in matrix form and needed to pop out a matrix. If a person did not understand the concept, but does understand the rules of matrix multiplication, the exercise was no more than a rearranging of the order of items until a matrix of the right dimensions results. It was not just in this homework, but a few places. The programming. While I am not an expert programmer, I am not a novice either. I completed the course with high marks but I did often times struggle with the programming. It wasn't so much that I didn't understand the programming, but I would have (not speaking for others) benefited by more understanding of the back end. Example: the race. At no point prior to this assignment were we given an idea of how the kalman filter was fed into the PID controller except for a slide that said the prediction is fed into the PID controller. Maybe the point was to figure that out, but the process would have been easier (and again for me, would have given a better understanding of how the program functions work together) and given a better idea of the conceptual portion of how the mathematics is implemented into the programming. I would have appreciated a little more depth in the course. Perhaps this wasn't in the course due to length or the instructors did not want to give a full type of course through this medium, but a bit more depth and exercises (especially to extend understanding of the kalman filter) would have been appreciated. All in all, I thoroughly enjoyed this course. I am going to continue with Autonomous Mobile Robots (ETHx - AMRx - if anyone is interested) with the hopes of extending my understanding of the subject matter. Finally, I want to say thank you to edX for creating this platform and to people at TUM Dept. of Informatics/Computer Vision for putting this course together. It was an enjoyable experience and I appreciate your time and effort.
Was this review helpful? Yes0
 Flag
Hugo Sosa profile image
Hugo Sosa profile image

Hugo Sosa

10/10 starsCompleted
4 years, 4 months ago
Super!
Was this review helpful? Yes0
 Flag
Jeff Mason profile image
Jeff Mason profile image

Jeff Mason

10/10 starsCompleted
4 years, 4 months ago
I really enjoyed this course, particularly using the drone simulator. The course (in June 2015 at least) is not very hard for a python programmer with some control systems background, until the very last homework assignment. The final exercise, "The Race" was fun (once you got it working at all) but you could spend a lot of time on it to do it completely.
Was this review helpful? Yes0
 Flag
Rishabh Biyani profile image
Rishabh Biyani profile image

Rishabh Biyani

9/10 starsCompleted
4 years, 4 months ago
The course content was good. You get to really understand the basics and motivation for state estimation, control and application of linear algebra in describing the position of the robot in the world. Supplement this with actually implementing what we have learnt in the python based simulator really does help to build your understanding. The forums were active and queries did get resolved swiftly. One downside of this being, Instructors hardly participate in the forums. You need to understand the Probability theory and especially gaussian distribution to understand the extension of this in predicting random errors from the sensors. To make the most out of this course, one has to take the support of the literature mentioned in tandem with the video lectures(simply relying on video lectures won't work). Overall, the course is great for someone looking to dive in the field of Autonomous Robots.
Was this review helpful? Yes0
 Flag
Student profile image
Student profile image

Student

10/10 starsTaking Now
4 years, 4 months ago
Content and instructors very good. I am still working on getting a clean install of ROS on Ubuntu 14.04 - going backwards w/ a Ubuntu 12.x partition is something I want to avoid.
Was this review helpful? Yes0
 Flag
Student profile image
Student profile image

Student

10/10 starsCompleted
4 years, 4 months ago
This course was a fantastic introduction to the world of autonomous navigation. I came into this with no background at all and left able to program reasonably complex behaviour, and more importantly, with a strong desire to pursue this field even more! I genuinely learned a lot on this course, including generic useful tools that are applicable outside of the field of autonomous drone navigation. It was definitely challenging, but very rewarding at the same time :) Some notes: Not everything you need to know is taught in the course, but where external information is required the course will often provide links (and for everything else there's google). Additionally, it is VERY math heavy (linear algebra, calculus, statistics), so be aware of that going in!
Was this review helpful? Yes0
 Flag
Juan Ramirez Jardua profile image
Juan Ramirez Jardua profile image

Juan Ramirez Jardua

10/10 starsCompleted
4 years, 4 months ago
The course is a very good overview to autonomous systems, covering a lot of topics, with enough detail for understanding it and google for more detail. Exercises allows to you in practice what theory presents. In my case, I'm electrical engineer, with not previous experience in this topics but I had to study over 6-10 hours/week in order to understood all concepts included every week. The course is well structured, easy to follow. For non native English speakers, is still easy to follow. Video transcript for every video. Non recommended if you don't have time for study every week. Contents are not enough for building autonomous robots from scratch, but a very very good starting point.
Was this review helpful? Yes0
 Flag
Ulises Orozco profile image
Ulises Orozco profile image

Ulises Orozco

10/10 starsCompleted
4 years, 4 months ago
This course was great! I want to thank the instructors, I learned a lot about autonomous navigation. Thank you!
Was this review helpful? Yes0
 Flag
Karl Obermeyer profile image
Karl Obermeyer profile image

Karl Obermeyer

8/10 starsCompleted
4 years, 4 months ago
Great content for a small time investment. The exercises were rather elementary, but for anyone interested in further study on their own, many useful references to recent research papers are included.
Was this review helpful? Yes0
 Flag
Student profile image
Student profile image

Student

10/10 starsCompleted
4 years, 4 months ago
Great course. I liked it very much. The whole flow was very smooth from lectures to exercises. The basic programming exercises also helped me to clear the concepts. I absolutely liked the simulation and all. The course is complete in itself (Linear algebra basics, python sample code ..everything was given). You dont need to spend long hours for this course and learn really nice stuffs till the end.
Was this review helpful? Yes0
 Flag
Eric Welch profile image
Eric Welch profile image

Eric Welch

9/10 starsCompleted
4 years, 4 months ago
This course teaches the basics of autonomous flying navigation, and the lecture material covers everything from basic system architecture to cutting edge research in the field. The assignments don't match the difficulty level of the lectures though - you only need to write a few lines of code in each problem. The small amount of work in each assignment leaves you with a good general idea of how things work, but simply completing the requirements in each assignment won't leave you comfortable programming a quad on your own. The course does give you the tools(quad simulator) to learn the intricacies, but you'll have to step beyond the assigned homework to get a very solid understanding. However, given in the low time requirements, I felt this course was well done.
Was this review helpful? Yes0
 Flag
Lucas Genzelis profile image
Lucas Genzelis profile image

Lucas Genzelis

9/10 starsCompleted
4 years, 4 months ago
Great course. I learned a lot of interesting things, and I enjoyed the ride. The lectures are easy to follow, and they are in general pretty comprehensive. One thing I didn't like much was the homework: a little too easy compared to the level of the lectures.
Was this review helpful? Yes0
 Flag
Frank Wortner profile image
Frank Wortner profile image

Frank Wortner

10/10 starsCompleted
4 years, 4 months ago
This course is very good introduction to the topic. The quadrotor simulator was very well done, and was enjoyable to program. It is a graduate level course, so the assumption is that you either have the prerequisite knowledge or can pick it up yourself. That said, the linear algebra used in the course is basic. The course only uses a fraction of what is mentioned in the "linear algebra review" lecture. If you can take the transpose of a matrix, you will be OK. :-) You will need to know Python and NumPy, since the homework assignments involve programming the simulated quadrotor in a subset of both. You don't need advanced knowledge of either, but a basic familiarity with object oriented programming in Python will allow you to concentrate on implementing the algorithms without being frustrated.
Was this review helpful? Yes0
 Flag
Cliff Brown profile image
Cliff Brown profile image

Cliff Brown

9/10 starsCompleted
4 years, 4 months ago
I really enjoyed taking this course. More experience with Python would have been helpful (I didn't have any) but I managed to learn the basics as I went. You don't have to write that many lines of code, but it was frustrating at times to get tripped up on syntax. I also had to brush up on linear algebra (i.e. vectors and matrices), because its been 30 years since I've used any of that ( I earned my engineering degree in 1983). All in all, I felt challenged, but was able to complete the course work by supplementing the course content with information easily found on the internet. The discussion forums were very useful too in getting questions answered. The course provides a very good overview of the control theory used in quadrotors. I feel I now have the foundation necessary to take on specific engineering problems on my own.
Was this review helpful? Yes0
 Flag
anonymous yo profile image
anonymous yo profile image

anonymous yo

9/10 starsCompleted
4 years, 4 months ago
content is complete. homework is relatively easy, so we can spend less time to do it. intructor look easygoing. provider.. what is provider?
Was this review helpful? Yes0
 Flag
Rajavardhan  Reddy profile image
Rajavardhan  Reddy profile image

Rajavardhan Reddy

8/10 starsCompleted
4 years, 4 months ago
I'm from India and I enjoyed a lot this course especially challenging assignments.
Was this review helpful? Yes0
 Flag
MARCIO MUTUNDA profile image
MARCIO MUTUNDA profile image

MARCIO MUTUNDA

10/10 starsCompleted
4 years, 4 months ago
The course is excellent, content addressed simply organized step by step content and sequentially, teachers are patient, excellent teaching, the course provider has integrity and righteousness, I recommend the course to all who wish to learn about drones state of the art.
Was this review helpful? Yes0
 Flag
Student profile image
Student profile image

Student

10/10 starsCompleted
4 years, 4 months ago
Excellent introductory PID course. The linear algebra required is not beyond good undergraduate studies and thorough review of relevant techniques is recommended. Work and travel have prevented me from completing different exercises both times I've taken this course, still I find the material extremely useful.
Was this review helpful? Yes0
 Flag
Alejandro Daniel Jose Gomez Florez profile image
Alejandro Daniel Jose Gomez Florez profile image

Alejandro Daniel Jose Gomez Florez

10/10 starsCompleted
4 years, 4 months ago
I'm from colombia and this course is a great opportunity for access to more recent technology about flying robots. In my country, this level of knowledge is very low, because there are few universities that working with robotics, but with this course, I could access a great introduction course for understand the most recent progress in engineering about flying robots. Very amazing.
Was this review helpful? Yes0
 Flag
Student profile image
Student profile image

Student

10/10 starsCompleted
4 years, 4 months ago
这个课程非常不错,它从最基本的坐标变换和四轴飞行器的基础飞行原理开始,逐渐进入2维和3维的控制策略的学习,其中基于网页的可视化的引擎非常好用,可以及时让你看到自己完成的情况。在途中也复习了相关的矩阵和概论的相关知识。部分编程题目还是有一些难度的,当然之前有Python的基础会好很多。不过只要认真学,大部分人还是可以顺利完成的吧。
Was this review helpful? Yes0
 Flag
Student profile image
Student profile image

Student

6/10 starsTaking Now
4 years, 5 months ago
الغرض من الكورس انك تحول طيارتك من Manual control ل Fully Autonomous ,, هما عشان يسهلو ع نفسهم بيطبقو ع طياره جاهزة وقابله للبرمجه يعني فيها Arm Cortex نازل عليه Operating system linux وبيبرمجو الطياره بال Python ,, ومش كدا بس هم عاملين Interface كامل للتعامل مع الطياره بالاضافة ل برامج simulation كتير هم عاملينها بيطبقو على طياره اسمها AR Drone parrot 2.0 ,, دي احد الطيارات الي مصممه للروبوتيكس ولهواه البرمجه
Was this review helpful? Yes0
 Flag
Student profile image
Student profile image

Student

4/10 starsDropped
4 years, 5 months ago
The Maths required is more complex than is specified in the pre-requisites suggest. The teaching sections for the maths if you are not already strong in matrix manipulation are poorly delivered. The rest of the course is programming in Python and does require you to have previous a decent amount of Python programming experience. Should be one of the most interesting and exciting courses on edx but bored me to the point of quitting during Week 2.
Was this review helpful? Yes0
 Flag
Roman Shapovalov profile image
Roman Shapovalov profile image
8/10 starsCompleted
  • 7 reviews
  • 7 completed
5 years, 3 months ago
The course is quite introductory. If you are familiar with basic computer vision, 3D geometry and optimal control, you are not going to learn much more from the lectures, although the instructors mentioned that the survey results encourage them to make the lectures more advanced in the future sessions. The lectures contain several demos of working autonomous quadrocopters, though. After completing the course I don’t feel ready to take a copter and make it fly, as I initially expected. The instructors provided a really wonderful simulation environment, but the programming assignments themselves did not encourage to solve difficult practical problems, which is especially daunting given that great environment. To sum up, I think the course is too basic now, but has a great potential.
Was this review helpful? Yes0
 Flag
Tim Bate profile image
Tim Bate profile image
8/10 starsCompleted
  • 1 review
  • 1 completed
5 years, 4 months ago
This is an interesting course and seems to cover the basics well in the time available. Four hours seems a generous estimate. I usually took less, though there were times when I would have spent the full four hours. The course has some moderate maths requirements and some programming is involved. It would be advisable to know linear algebra (nothing more difficult than inversion) and Python. Having said that, I didn't know any python before I started, and was able to get through just fine, though it did slow me down at some points. The pracs usually involve being provided with some skeleton code and having to fill in the missing functions. For the most part this is easy, but because a lot of the functionality happens "behind the scenes" and the debugging options are limited, I did find some of the problems were more difficult than they needed to be simply because it was hard to work out exactly what was required. Why would you ... This is an interesting course and seems to cover the basics well in the time available. Four hours seems a generous estimate. I usually took less, though there were times when I would have spent the full four hours. The course has some moderate maths requirements and some programming is involved. It would be advisable to know linear algebra (nothing more difficult than inversion) and Python. Having said that, I didn't know any python before I started, and was able to get through just fine, though it did slow me down at some points. The pracs usually involve being provided with some skeleton code and having to fill in the missing functions. For the most part this is easy, but because a lot of the functionality happens "behind the scenes" and the debugging options are limited, I did find some of the problems were more difficult than they needed to be simply because it was hard to work out exactly what was required. Why would you do this course? It provided some introductory material culminating in producing a Kalman filter to determine the position of an object in a bayesian way. Simple image transforms, integrating sensor readings and employing uncertainty were all used. If this is of interest, even if you aren't interested in quad copters, then this could be for you. PROS:Kalman filtersHomework all due at endEnthusiastic teachers CONS:Some technical difficultiesOnly basics coveredPracs could be confusing, and few debugging tools to help
Was this review helpful? Yes0
 Flag
student profile image
student profile image

student

8/10 starsCompleted
5 years, 4 months ago
This course was excellent. It has provided knowledge of current and future development of flying robots.
Was this review helpful? Yes0
 Flag
student profile image
student profile image

student

8/10 starsCompleted
5 years, 4 months ago
The course is profitable and touch necessary for autonomous navigation of multi-rotors (and UAVs in general) materials. Among them: \- Basic principles of multi-rotor flight. \- Control of multi-rotor (translation, rotation, up, down) via actuators (DC motor, brushless motor) and mathematical algorithms. \- Estimate based position sensors (ultrasonic, camera) and GPS. All this preceded by a review of Algebra and Geometry, both 2D and 3D, and later jump with sensors and actuators. Important sections within the control are: 1\. Standardized algorithms in robotics positioning, navigation and control (Bayes filter, Kalman filter, EKF). Two. Vision Computer.
Was this review helpful? Yes0
 Flag
Equanimous Creativity profile image
Equanimous Creativity profile image
6/10 starsCompleted
  • 33 reviews
  • 32 completed
5 years, 4 months ago
This course have good lectures about PID-control and Kalman-filters for flying robots. The material on SLAM is very thin, so don't join the course to learn about SLAM.
Was this review helpful? Yes0
 Flag
student profile image
student profile image

student

10/10 starsCompleted
5 years, 4 months ago
Excellent course. We could feel the commitment in the lessons and the high quality of the exercises (Python interpreter with WebGL simulator!). The difficulty was "crescendo" and I couldn't find time to get the last exam, but I'm glad to have followed this course.
Was this review helpful? Yes0
 Flag

Rating Details


  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.