Students hold annual robot competition
Western Washington University’s computer science department held its annual Student Robot Competition May 29 in the Communications Facility lobby on the first floor on WWU’s campus.
The participants were students from Associate Professor of Computer Science Jianna Zhang’s Computer Science 372: Robotics class, although all Western students, regardless of their major or area of study, are allowed to enter robots in what has now become an annual competition.
In lieu of a final exam, the students’ culminating project assignment was to build and program a robot. There were no restrictions on types of robots; they just had to be made by students using safe materials such as Lego, electronic sensors, plastic lunch boxes, thin metal sheets, or other un-harmful materials. The goal of the class was to implement some aspect of learning into the robot.
Western sophomore Gary McNall, who is majoring in computer science and mathematics, showed off his model, the Robot Sonographer, which he first started building and programming as a class project in the past month.
The project “kind of became a little pet of mine,” he said.
But before there was a moving robot, McNall spent hours coming up with math proofs. As he leafed through his notebook, line after line of algorithms rolled off the pages. Even the seemingly simple actions, such as getting the robot to turn, took planning and lots of trial and error.
“You have to be willing to put in the time to build something cool,” he said. “I had to write a lot of proofs just to build the path-tracking system,” he says. “The sonar system took a lot of algorithms to refine the data to make noticeable shapes. You have to figure out what data points are important and which are irrelevant or redundant.”
The robot, made from a Lego Mindstorm NXT kit, can scan 360 degrees around it and builds a two-dimensional representation of the area around it. It then takes that two-dimensional information and displays it to the user. It also uses the information to make navigational decisions so it doesn’t collide with objects in its path. Overall, it can travel for about 200 seconds. Essentially, the robot can recognize its environment and sense where it’s going. The trick is it uses a learning algorithm to decide on the optimal path to take.
“It wants to explore more areas, but the algorithm is going to tell it which way is going to teach me the most about the environment based on what I’ve already seen,” McNall said.
Zurka Wolford, a junior computer science major, agreed that successful robots are about 90 percent hard work.
“You have to play around a little bit,” she said.
Maybe more than a little bit. For her project, she built Spot, a robot puppy that knows how to do seven tricks, such as wagging its tail, with the help of sensors. Wolford was able to control the programming language by inputting the values of the sensors. As a result, Spot reacts to a reward system. If she commands him to perform a task and he successfully imitates it, she rewards him by pushing his nose.
Like many students in the 372 class, McNall and Wolford built a foundation for robotics in the introductory course, Robotics 172. The program Wolford used, also Lego Mindstorm NXT, has a simple, easy-to-learn language, but she plans to further explore robotics with a more complex model.
“I have a different robot at home that I can play with,” she said. “It’s more advanced. It has a better programming language.”
But if robot-building is a hobby for many students in the class, more robotic courses are in computer science senior Sam Nguyen’s future. He plans to pursue a career in game development and make games where he can create his own world, like Hogwarts. He said he appreciates the computer science department because as long as he can program his project, he is allowed to get really creative. He programmed his aptly named model, The Follower, to follow whatever is in front of it.
“It scans around and determines which way to go,” he said.
Nguyen also programmed a reward system for his follower. When the robot gets closer to its desired location, it rewards itself with points.
“That can take lots of programming,” he said. “And some sleepless nights.”
But that seems to be half the fun.