photo: Titus project presentation on NVIDIA's GPU Technology Conference , private archive
After the NVIDIA Jetson Developer Challenge we’ve had a chance to ask the team behind the TITUS project some questions. Ayman Saleh is a Robotics Engineering student, while Khalid Khalil field of study is Computer Science, both are just 20 years old. They won second place in the competition. Let’s see what they had to say.
What made was the deciding factor your you to sign up for the NVIDIA Challenge?
We are both competitors at the end of the day, and as engineers, we do not get the chance to compete very often, so taking this opportunity to participate in the NVIDIA Challenge was a no-brainer. We also love NVIDIA and the platforms they develop like Jetson, so getting the chance to design and build a project for NVIDIA to see was awesome.
When you started working on the project, what would you say was the least pleasant part of the process?
Overall the project was a success; however, we can’t say that it went smoothly for the whole duration of the project. Because we were integrating autonomy with a flying robot, there were many times that the drone failed mid flight. The pleasant surprise was that we were able to find all the mechanical problems within one week and worked very thoroughly to solve those problems.
We’ve asked about problems, but what was the most difficult aspect of working on the project? Not necessarily an unexpected accident, just something hard to overcome? And, in contrast, what would you say was the easiest part?
We found the hardware aspect of the project to be very difficult since we were working with “not so great” parts. We needed to engineer solutions that would allow the relatively cheap hardware we could afford to work reliably. The easiest part of the completion was using the NVIDIA Jetson platform. The great thing about Jetson is the surplus of documentation. Any problem that we had with the Jetson from an integration standpoint could be solved with a simple google search.
Did you have some prior experience in that field?
We’ve been interested in AI since we both started college. We would always hear from our peers and mentors that AI was going to be the future, so we decided that we want to be a part of that future. We’ve built a couple AI systems before like an autonomous UAV for inspecting concrete structures and a stock predicting app that uses learning algorithms at its core.
This looks like a lot of experience. Was TITUS any different from your previous projects?
At first, we wanted to build a smart home drone for fun. It was really meant to be a cool idea that had no real utility. However, that all changed when we took a trip to California and witnessed firsthand the damage of the wildfires that spread last fall. We then decided to try to build something that could aid firefighters and fire departments to better tackle wildfires.
While you were working tirelessly on your project was there a moment when you said ‘eureka!’ and realized something, maybe learned something?
One of the biggest takeaways we took from this project is that you don’t need a complicated solution to solve your problem, and sometimes the best solutions are the simplest ones. Earlier in the project, we had this mindset that we needed to think like academics and try to solve the problem by using very difficult methods that would have taken months to implement. It wasn’t until we were running out of time that we started to think like engineers and examine the problem from a more simplistic view point.
Yes, this appears to be the common theme, time constraints help push boundaries. With that being said, did you get a chance to gain some new skills thanks to this unusual working environment?
Absolutely, the biggest skill we developed was learning how to integrate deep learning with robotics. Prior to the competition, we thought about deep learning and robotics as two separate disciplines with not much overlap. During the competition however, we needed to find ways to integrate the two seamlessly to have a great solution. Specifically, we developed a way to combine convolutional neural networks with robotic localization and mapping to replace expensive perception sensors such as LIDAR.
Now something slightly different. How do you feel about the idea of hackathons? Do you enjoy them?
Of course, hackathons are one of the only ways we as engineers can compete and test our skill set among others.
How often do you participate in those?
We try to finish a hackathon a month, we wish we could do more; however, they can be really exhausting at times.
That sounds like one busy calendar. We take it you have a lot of planned events like that in the coming months.
Of course, we love hackathons!
What did you gain thanks to the hackathon?
We gained a deeper understanding of AI and deep learning and how to deploy AI in the real world.
Would you say that participating in hackathons can help you in the future?
It really depends, if your goal for a hackathon is to rebuild a previous project, then there is not much to gain as a developer. However, if you try to build a project with a solution you have never used before, you really develop a diverse skill set that makes you a great developer.
Last question is not really a question in itself, it’s more of a request. Would you be willing to give a piece of advice to people like yourselves that would love to take part in similar challenges?
We would say that whenever you try to start a solution to a problem, don’t think that you need to have the perfect solution right away. If you think like that, it’s very difficult to finish a project. Instead, think about your project as a set of small projects that come together to form a wonderful solution.
If you would like to participate in a similar hackathon visit our website with list of hackathons and challenges. Pick an event that suits your interests and get busy!