Are you interested in robotics and AI? There are so many great learning resources online. Let me share the last 3 MOOCs (massive open online courses) I took recently and enjoyed a lot.

1. MITx 6.832x Underactuated Robotics by Prof. Russ Tedrake

In this excellent MITx online course, Prof. Tedrake introduces a novel view on robotics and control.  Instead of focusing on controllability and feedback linearisation, he goes beyond the limits by embracing the fact that systems in movement are often not completely controllable, and still can be guided to move as desired.

Having forgotten most of my mechanical engineering classes, I found the quizzes and assignments quite involved, but also very rewarding when reaching the solution.  Russ introduces Drake, a complete robotics framework written in Matlab and giving access to all concepts developed in the course.

Starting by (and constantly going back to) basic concepts such as the inverted pendulum or the double integrator, Prof. Tedrake takes his students through an exciting journey, giving the mathematical and numerical tools to solve real-world problems.

In this course, you will learn about walking, swimming, flying, juggling robots, and much more!

Thank you so much to Russ and his team for providing this awesome content.

2. Robotic Vision by Prof. Peter Corke

This course graciously offered by Prof. Corke at QUT (Queensland University of Technology, Brisbane) is following Introduction to Robotics, in which we built a robotic arm as part of the final project.  In this course, Peter talks about the fascinating field of robotic vision, that is, how can a robot learn about the outside world, just by analysing images taken by one or more cameras.

Vision is a very fundamental sense that we, human beings take for granted, but which is very powerful, and at the same time, challenging to equip a robot with, considering the overwhelming quantity of data and the many transformations required for a robot (computer) to make sense of it.

Prof. Corke explains very gently all the theory behind vision, the process of image formation, the relationship between the 3D and 2D worlds, equips the students with powerful image analysis tools (through the Robotic Vision Matlab toolbox, implementing all algorithms explained in the course), and even introducing more advanced topics such as image servoing (i.e. how a robot can orient and control itself through vision).

The assignments are relatively easy, but still give good foundations to get started and build vision-enabled robots.

3. Introduction to Natural Language Processing by Prof. Dragomir R. Radev

This MIT course offered on Coursera is less about robotics, but nonetheless touching the very hot topics of natural language processing, at the era of Siri, Cortana and other language capable machines.

You will learn all methods of natural language processing, including parsing, stemming, part-of-speech tagging, word sense disambiguation, information extraction, clustering, etc. all the way to question-and-answer systems, sentiment analysis, text summarisation, and machine translation.

Prof. Radev obviously is passionated by languages and seems to know so many of them.  He pronounces French and Japanese equally well (!) and draws all kinds of very interesting links between languages.  He introduces many algorithms to make a computer capable of processing human language for a variety of purposes.

Quizzes help you keep in mind the important points from the lectures, and the 3 programming assignments are relatively involved.  It certainly helps to know a bit of Python and be willing to spend time on really understanding the algorithms you are required to implement.

This lecture is a very good investment of your time if you are interested in NLP, and Drago is a pleasure to hear and learn from.

Happy Learning!