As an incoming freshman, I decided to spend my summer at the Viterbi Summer Institute, a program designed to give underrepresented engineering students a research experience while simultaneously offering a sneak peek look into life at USC. Through this experience, I met incredible people, many of whom I’m still friends with today, and had the opportunity to work on exciting research in the field of computer vision. At the end of the summer, I presented my findings through a research poster I had designed at the end of the summer research symposium. This rewarding experience inspired me to apply for the Center for Undergraduate Research in Viterbi Engineering (CURVE) Fellowship, which allows students to work within a research lab during the school year under the guidance of a mentor. Through CURVE, I received a research stipend and the opportunity to work in the USC Cyber-Physical System Design Lab (DesCyPhy).
While DesCyPhy is a huge lab, the CURVE work I applied for only covered a small subsection of it. The section I joined focused on improving autonomous car responses to unpredictable pedestrian movements at intersections. To conduct this research, we used an autonomous F1-tenth car (a car about one-tenth the size of a real F1 car) and 2 Turtlebots, which served as our pedestrians. Since there were four CURVE students in our group (including me), we split into two teams—one working with the F1-tenth car and the other with the Turtlebots. I chose to focus on the Turtlebots due to my interest in their architecture and associated programming capabilities.
Example of one of the Turtlebots
Working with the Turtlebots taught me a lot about Secure Shell (SSH), which we used to connect to the lab’s computers and run programs on the bots. I also strengthened my Python skills by reviewing and revising existing code while also writing my own code for the bots. I learned about how controllers for robots typically work (including the crazy math involved!) and I eventually wrote my own Proportional-Derivative Controller for the Turtlebots which meant they could pathfind to a given goal location. I even got the opportunity to design and build the tracks the Turtlebots would practice on!
Turtlebot lane detection (left), Turtlebot sizing to track (middle), the final built track! (right)
Alongside the technical skills I gained, I also found myself building my soft skills. One of the biggest challenges I faced in the lab was becoming comfortable with the uncertainty that comes with research. Luckily, I had an incredible mentor who guided me throughout the process, but it was still a new experience to constantly ask clarifying questions and embrace the learning curve. I also gained experience in presenting our progress during weekly lab meetings, which included both informal group discussions and more formal presentations to our Principal Investigator (PI), the faculty member overseeing the research lab.
An example of the errors I had to work through
Through this experience, I not only grew as a researcher but also gained valuable skills in problem-solving, communication, and teamwork. I’m grateful for the support I received along the way and proud of the work we accomplished. My time in the USC Cyber-Physical System Design Lab gave me a very early opportunity to explore research and reinforced my desire to continue exploring different aspects of engineering.