I had no idea that Pennsylvania is this wide. Within the first hour, my train had reached Philly. But to Pittsburgh, it took another seven.
Even before I stepped foot into the Search-Based Planning Lab, I was waylaid by some anxious news. The PhD student assigned to be my mentor, Dhruv, texted me that he, Dr. Likhachev, and most of the lab would be out of town for the entire week. So that was that. Fortunately, it was my first week, the week to be spent learning new material, and Dhruv provided me with plenty to digest. I already had ROS (Robot Operating System) installed, so I looked towards the tutorials that ROS provided. I copied commands into my Linux laptop's terminal to run ROS features. I learned the basic structure of ROS: packages, services and clients, publishers and subscribers, messages, nodes, and topics (which nodes communicate messages over). There was one simple yet interesting program I came across in the tutorials called turtlesim, for which using only 2 commands, I had an animated blue turtle move around my screen. Through it all, I also learned a lot of useful Linux commands. The working space was more than reasonable- I had my own room, 1611 of Newell-Simon Hall, right across the hallway from the rest of the laboratory, which was, in my opinion, more crowded than mine.
It was not until the Friday of my second week at Carnegie Mellon that I actually had a chance to talk with Dr. Likhachev. I spent the four days prior learning C++ and attempting to complete a sudo-project Dhruv had given me: write my own implementation of the A* search algorithm from scratch. I was tasked to take an image of a maze, 500 x 500 pixels, apply OpenCV, a library for computer vision, and run my C++ program to find the shortest path through the maze. I was still relatively new to C++, so my enterprise didn't go too well. That Friday, after an afternoon presentation on multi-heuristic path planning given by one of the other PhD students in the lab, I gathered into Dr. Likhachev's office with Dhruv and a head programmer named Andrew. We discussed about my work at the lab over the next four weeks, and I was presented with four project options. While my originally intended project, working with PERCH to detect asymmetric objects, was one of the options, I will likely not end up working on it, for a more interesting project has been offered to me.
It was not until the Friday of my second week at Carnegie Mellon that I actually had a chance to talk with Dr. Likhachev. I spent the four days prior learning C++ and attempting to complete a sudo-project Dhruv had given me: write my own implementation of the A* search algorithm from scratch. I was tasked to take an image of a maze, 500 x 500 pixels, apply OpenCV, a library for computer vision, and run my C++ program to find the shortest path through the maze. I was still relatively new to C++, so my enterprise didn't go too well. That Friday, after an afternoon presentation on multi-heuristic path planning given by one of the other PhD students in the lab, I gathered into Dr. Likhachev's office with Dhruv and a head programmer named Andrew. We discussed about my work at the lab over the next four weeks, and I was presented with four project options. While my originally intended project, working with PERCH to detect asymmetric objects, was one of the options, I will likely not end up working on it, for a more interesting project has been offered to me.
Sounds like you are making a good transition into the lab! A big part of research is being able to jump into something and figure it out on your own. A big part of research is also being comfortable making mistakes and learning from them. Sounds like you are getting to do a bit of both! Keep at it!
ReplyDeletePS - can't wait to hear about the new project!
DeleteSolving a maze by reading it via OpenCV first is, all by itself, a cool project idea (even without using A*). I agree with Ms. Cozine - EXP is about stretching, and you seem to be being stretched!
ReplyDelete