I am an Assistant Professor in the Department of Computer Science at Iowa State University, where I also serve as the director of the Autonomous Systems Laboratory. In addition to my academic role, I hold a Visiting Academic position with Amazon Robotics. I received a Ph.D. in Mechanical Engineering from the California Institute of Technology in 2010 under the supervision of Prof. Richard Murray.
My research interests lie in the broad area of computer science, control, and optimization, with a particular focus on formal methods, motion planning, situational reasoning, hybrid systems, and distributed control systems. Most of my work involves applying mathematical and computational rigor to solve concrete, real-world problems, especially in autonomy, robotics, and transportation.
A significant portion of my career has been devoted to the development of autonomous vehicles, both in academia and industry settings. In particular, I was a principal research scientist and led the planning team at nuTonomy (now Hyundai-Aptiv Autonomous Driving Joint Venture). As one of the earliest employees, I was heavily involved in the whole software development and release process, from design (interfaces and modules) to implementation (C++ and python), testing, evaluation, and deployment. My work focused on planning, decision making, control, behavior specification, and validation of autonomous vehicles. I also led the Systems Team for Team Caltech in the 2007 DARPA Urban Challenge during my Ph.D.
Ph.D. in Mechanical Engineering, 2010
California Institute of Technology
Master of Science in Mechanical Engineering, 2006
California Institute of Technology
Bachelor of Science in Mechanical Engineering (Summa Cum Laude), 2005
Cornell University
I’m seeking Ph.D. students with strong analytical skills and a passion for initiating and exploring new ideas that have a real-world impact. Please check the current projects listed below. If interested, the first step is to apply to the Department of Computer Science. For ISU students, please send me a brief email, including your transcript and the project(s) of interest.
May 27: I’m giving a talk on Establishing Correctness of Learning-Enabled Autonomous Systems at Workshop on Safe and Reliable Robot Autonomy under Uncertainty, ICRA 2022.
May 11: Hamad Ullah successfully defended his Master’s thesis!.
May 5: Opening ceremony of the Autonomous Systems Laboratory at 1110 Communications Building.
Oct 30: I’m giving talk on Formal Methods for Control Synthesis of Autonomous Systems at the GALCIT Colloquium at Caltech.
Oct 23: I’m giving talk on Formal Methods for Control Synthesis of Autonomous Systems at the Robotics Engineering Colloquium Series at WPI.
Most of my work draws inspiration from practical applications, especially in autonomy, robotics, and transportation. As these systems become more complex, they cannot be built based on human intuition alone anymore. My research focuses on providing theoretical and computational foundations to enable systematic modeling, design, optimization, and analysis for such complex systems.
During my Ph.D., I led the Systems team and implemented the finite state machine logic that accounted for traffic rules and governed the overall functioning of the planner of Alice, Team Caltech’s entry in the 2007 DARPA Urban Challenge. The difficulties in the design and analysis of this finite state machine motivated my research on applying formal methods to control systems as part of the MURI project on Specification, Design and Verification of Distributed Embedded Systems. During my postdoc at SMART, I worked on building low-cost autonomous vehicles for mobility-on-demand systems, developing distributed algorithms for controlling traffic lights, and designing transportation pricing strategies to reduce traffic congestion.
I also spent 4+ years at a self-driving car company, nuTonomy, where I initially led the planning team and was a primary developer of the planning and decision-making module. Unlike in Alice, nuTonomy’s planning system does not rely on complex finite state machines. Instead, we applied formal methods to automatically build the decision-making logic such that it is provably correct by construction. While I was excited to see the core part of my research in real-world practices, I realized that there is a fundamental problem that has been mostly overlooked by the formal methods community and lies in the lack of precise specifications of these autonomous systems, i.e., in defining what constitutes their correct behaviors, taking into account various factors, including safety, regulatory requirements, comfort, culture, etc, that may be conflicting. My recent work focuses on addressing this gap and developing theory, methods, and tools to derive, analyze, and refine specifications for autonomous systems.
.js-id-Current-projectsCourses
Guest Lectures