Udacity’s Robotics and AI teams present “Learning Robotics on the Jetson TX2”—an opportunity to build a robot, and use reinforcement learning to make it perform!

Udacity - NVIDIA - Robotics - Lights Out Robot

Members of Udacity’s Robotics and AI teams were invited to present a session at NVIDIA’s GPU Technology Conference on Wednesday. The session, entitled “Learning Robotics on the Jetson TX2,” provided attendees with the opportunity to actually wire up and run a real robot! Here’s the official session description:

Learning Robotics on the Jetson TX2

Are you ready to learn how to use your Jetson TX2 for robotics applications? Join AI and Robotics instructors from Udacity in this lab which will teach you how to get started using your TX2 to apply AI to your robotics application. You will get the chance to build a simple “Lights Out” robot that will use reinforcement learning to push buttons and turn out corresponding LEDs. We will cover how to wire up, program, and run the robot. Additionally, we will discuss the basics of applied reinforcement learning.

Udacity - NVIDIA - Jetsen - Erica and Alexis

I was honored and excited to attend, and especially thrilled that my colleagues Alexis Cook, an AI Content Developer at Udacity, and Erica Tiberia, Udacity’s Robotics Engineer, would be leading the session. Alexis and Erica in fact led two sessions, each of which were set up to seat 80 people. Both sessions were packed full, with additional people asking if they could just come in and watch from the back!

This was a great opportunity to demonstrate why we believe the Jetson TX2 is such an amazing piece of technology, and why, with the support of NVIDIA, we’ve made it a part of the learning experience for students in our Robotics Software Engineer Nanodegree program.

The NVIDIA Jetson TX2 Developer Kit—available with a special student discount for Udacity Robotics Software Engineer Nanodegree students—allows students to run the latest algorithms and interface with various hardware. With a GPIO, USB, WiFi and more, this platform enables them to deploy their own code on an actual robot, which is exactly what this session was all about!

For the session setup, NVIDIA provided a Jetson TX2 with keyboard, mouse, and monitor for each pair of attendees. To each station’s arrangement, we added one Lights Out Robot, and a bag of parts. The Lights Out Robot is a simple arm robot that has two servos, four LEDs, and four buttons.

Udacity - NVIDIA - Jetsen - Erica

Erica inaugurated the proceedings by showing everyone how to log into the lab on the computer, and then explained the hardware and components. Once she finished her instruction, she gave the attendees the task of wiring up the Jetson TX2 to the Lights Out Robot using the hardware components in the provided bag (resistors, transistors, wires, breakout board, breadboard). Attendees started working together following a wiring diagram available on the main screen, and also on their computer in the lab.

NVIDIA’s question-asking system (hands on red cups!) proved invaluable as people started querying about the resistor values, polarity of components, colors of the wires, and even about a few missing parts or wires that were coming loose on the robots themselves. Erica, Alexis, myself, and multiple NVIDIA assistants, went around the classroom to address the different questions, and help attendees solve their problems.

“Is the polarity of the transistor correct?”
“Does the color of the wire I am using matter?”
“Only some of the LEDs are lighting up, how do I troubleshoot?”

Some wires had in fact come loose on the robots themselves and required soldering. Karim (one of the Content Developers for our Robotics Software Engineering Nanodegree program) was watching from the back, and chipped in to perform repairs on the robots and get them back to attendees as quick as possible.

As students progressed, we began to hear servos moving and see lights blinking. People got more and more excited as their little blue robots seemed to come to life!

Udacity - NVIDIA - Jetsen - Alexis

As the participants continued to work, Alexis took the stage to introduce Reinforcement Learning. Reinforcement Learning will be the next Nanodegree program launched in our new School of AI, and this was a great way to demonstrate an application of this technology. The goal for this part of the lab was to deploy an algorithm on the Jetson that would allow the robots to learn how to turn off an LED by pushing the correct button. After the instructions from Alexis, attendees were able to correct code in a Jupyter notebook, test it in simulation, and then use the code to control their robot.

This is where the real fun started! The robot would play about 100 games (15 moves each) and with every game, get a little better. Over the course of about 5-7 minutes, attendees watched as their robots went from pushing buttons randomly, to actually pushing the correct button to turn off the corresponding LED!

I stopped by one table where two attendees had their robot working perfectly, and asked them a few questions. Turns out one of them had never even touched a robot before! The other was a roboticist, but what I really loved, is that despite coming from totally different backgrounds and levels of experience, they both expressed how much they really enjoyed the lab, and how interesting they found it. Proof there’s something new for everyone to experience in this field!

Samantha, the one who’d never worked with a real robot before, even convinced me to let her take one of the robots home with her after the session—she wanted to bring it to San Antonio, where she helps get young girls into STEM.

Udacity - NVIDIA - Jetsen - Samantha

“This is inspirational; it is a real interaction with technology. We MADE it perform those actions!”  —Samantha Spraque, USAA

All good things have to come to an end, and even though people were still playing with the robots, talking about what they’d achieved, or even troubleshooting some final issues, we were simply out of time, and had to wrap things up, and get ready for the second session.

Many of the attendees stopped to talk to us on their way out, asking how they could get this training in their school, company, country, conference, etc. We collected some cards and contacts but quickly had to reset everything so that the next group waiting in the long line outside could come in and begin their education about robotics on the Jetson TX2. It was so exciting to see everyone so excited about Robotics and Reinforcement Learning!

If you’d like to explore opportunities to engage in similar learning experiences, please look into our Robotics Software Engineer Nanodegree program. You should also spend time reviewing the programs available through our new School of Artificial Intelligence. As anyone who attended our sessions can tell you, there’s no feeling in the world quite like watching YOUR robot come to life!

Anthony Navarro
Anthony Navarro
Anthony is a US Army combat veteran with an M.S. in Computer Engineering from Colorado State University. Prior to being a Product Lead at Udacity, he was a Senior Software Engineer at Lockheed Martin in their Autonomous Systems R&D division.