Robotics expert is part of $10M automated programming project
By Robert Emro
Cornell robotics researcher Hadas Kress-Gazit is part of a five-year, $10 million National Science Foundation Expeditions in Computing project to make computer programming faster, easier and more intuitive.
Dubbed ExCAPE (Expeditions in Computer Augmented Program Engineering), the project is a collaborative effort led by the University of Pennsylvania that will involve multiple institutions, industry partners and educational outreach programs for the next generation of computer scientists. Cornell received $500,000 for the project.
The researchers are developing an integrated toolkit for automated program synthesis. Instead of coding thousands of lines of explicit instructions "by hand," as programmers have done for decades in a time-consuming, expensive and error-prone process, they could use such a toolkit to essentially collaborate with a computer on writing programs.
Using recent advances in computer science, the team aims to enable programmers to specify what the program should do, not how it should be done, and have the tools generate the code.
"This is a really huge opportunity to improve how systems are programmed in general and start generating good code from the start," said Kress-Gazit, assistant professor of mechanical and aerospace engineering and a principal investigator on the project. "Even if you are the best programmer, you are going to have bugs. I don't know anyone who writes code that works the first time it is run."
Co-director of Cornell's Autonomous Systems Lab, Kress-Gazit specializes in developing methods for translating high-level instructions into robot control, one of four areas ExCAPE will address.
"You want to tell the robot what to do and not worry about the implementation details," she said. "By outlining your requirements and letting it figure out the best way to get them done, you're basically getting rid of the bugs that come from the implementation process."
Project leader Rajeev Alur, a computer scientist at the University of Pennsylvania, said, for example, a robotic car could be programmed to parallel park itself.
Although a programmer still has to do some coding to provide basic solution strategies, for parallel parking, a strategy might correspond to a sequence of basic maneuvers: pull in front of the spot, back up straight, start turning and, finally, straighten out.
While this basic strategy for parallel parking is intuitive for humans, figuring out exactly when to start turning, and by how much, remains tricky. Humans, whether they are drivers or programmers, aren't good at trying lots of combinations in search of the best one, but that's exactly what computers are best suited to do.
Making sure the computer gets it right is important, especially in robotics. "Robots are a unique domain since they operate in the physical world around humans, which makes the question of safety and reliability a crucial one," Kress-Gazit said. "This collaboration will enable us to make significant progress toward easy-to-interact-with and safe robots."
The ExCAPE team includes researchers from University of California-Berkeley, University of California-Los Angeles, University of Illinois at Urbana-Champaign, University of Maryland, Massachusetts Institute of Technology, University of Michigan and Rice University. They will work with programmers at AT&T, Coverity, Honeywell, IBM, Intel, Microsoft and Willow Garage, to see if the synthesis tool is effective in meeting coding challenges.
Robert Emro is assistant director of communications in the College of Engineering.
Media Contact
Get Cornell news delivered right to your inbox.
Subscribe