About Me
I am an assistant professor at the Carnegie Mellon University's Robotics Institute. Prior to that I was a post-doctoral researcher in the RISE lab and Prof. Ken Goldberg’s AUTOLAB at the University of California at Berkeley. I hold a Ph.D. in Computer Science from the University of North Carolina at Chapel Hill, where I was advised by Prof. Ron Alterovitz and Prof. Jan Prins; and I hold a B.A. in Computer Science and Asian Studies with Honors from University of California at Berkeley. Between my B.A. and Ph.D., I founded numerous startups and was the principal architect at SuccessFactors, Inc., one of the world's leading cloud-based software-as-a-service companies. My research interests are in robot grasp and motion planning in dynamic environments using cloud-based high-performance computing, optimization, and deep learning.
Publications
- FogROS2: An Adaptive Platform for Cloud and Fog Robotics Using ROS 2 IEEE International Conference on Robotics and Automation (ICRA) 2023 (to appear)
- SGTM 2.0: Autonomously Untangling Long Cables using Interactive Perception IEEE International Conference on Robotics and Automation (ICRA) 2023 (to appear)
- Evo-NeRF: Evolving NeRF for Sequential Robot Grasping of Transparent Objects Conference on Robot Learning (CoRL) 2022
- Multi-Object Grasping in the Plane International Symposium on Robotics Research (ISRR) 2022
- Mechanical Search on Shelves with Efficient Stacking and Destacking of Objects International Symposium on Robotics Research (ISRR) 2022
- Efficiently Learning Single-Arm Fling Motions to Smooth Garments International Symposium on Robotics Research (ISRR) 2022
- FogROS G: Enabling Secure, Connected and Mobile Fog Robotics with Global Addressability IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) Workshop on Cloud and Fog Robotics In The Age of Deep Learning 2022
- Automating Surgical Peg Transfer: Calibration with Deep Learning Can Exceed Speed, Accuracy, and Consistency of Humans IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2022
- A Digital Twin Framework for Telesurgery in the Presence of Varying Network Quality of Service IEEE International Conference on Automation Science and Engineering (CASE) 2022
- Optimal Shelf Arrangement to Minimize Robot Retrieval Time IEEE International Conference on Automation Science and Engineering (CASE) 2022
-
Autonomously Untangling Long Cables ☆
Robotics Science and Systems (RSS)
2022
☆ Best Systems Paper
- GOMP-ST: Grasp-Optimized Motion Planning for Suction Transport Proc. Algorithmic Foundations of Robotics (WAFR) 2022
- Policy-Based Bayesian Experimental Design for Non-Differentiable Implicit Models Under Review, 2022
- GOMP-FIT: Grasp-Optimized Motion Planning for Fast Inertial Transport IEEE International Conference on Robotics and Automation (ICRA) 2022
-
Planar Robot Casting: Dynamic Single-Action Manipulation of Free-End Cables with Real2Sim2Real Self-Supervised Learning
IEEE International Conference on Robotics and Automation (ICRA)
2022
-
LEGS: Learning Efficient Grasp Sets for Exploratory Grasping
IEEE International Conference on Robotics and Automation (ICRA)
2022
-
Learning to Localize, Grasp, and Hand Over Unmodified Surgical Needles
IEEE International Conference on Robotics and Automation (ICRA)
2022
-
Mechanical Search on Shelves using a Novel "Bluction" Tool
IEEE International Conference on Robotics and Automation (ICRA)
2022
-
Dex-NeRF: Using a Neural Radiance Field to Grasp Transparent Objects
Conference on Robot Learning (CoRL)
2021
Press: WiReD
- Accelerating Quadratic Optimization with Reinforcement Learning Conference on Neural Information Processing Systems (NeurIPS) 2021
- Disentangling Dense Multi-Cable Knots IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2021
- Mechanical Search on Shelves using Lateral Access X-Ray (LAX-RAY) IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2021
- FogROS: An Adaptive Framework for Automating Fog Robotics Deployment IEEE International Conference on Automation Science and Engineering (CASE) 2021
- Kit-Net: Self-Supervised Learning to Kit Novel 3D Objects into Novel 3D Cavities IEEE International Conference on Automation Science and Engineering (CASE) 2021
- Untangling Dense Non-Planar Knots by Learning Manipulation Features and Recovery Policies Robotics Science and Systems (RSS) 2021
- Superhuman Surgical Peg Transfer Using Depth-Sensing and Deep Recurrent Neural Networks (under review)
-
Robots of the Lost Arc: Learning to Dynamically Manipulate Fixed-Endpoint Ropes and Cables
IEEE International Conference on Robotics and Automation (ICRA)
2021
Press: VentureBeat
- Serverless Multi-Query Motion Planning for Fog Robotics IEEE International Conference on Robotics and Automation (ICRA) 2021
- Multi-Layer Semantic and Geometric Modeling with Neural Message Passing in 3D Scene Graphs for Hierarchical Mechanical Search IEEE International Conference on Robotics and Automation (ICRA) 2021
- Intermittent Visual Servoing: Efficiently Learning Policies Robust to Instrument Changes for High-precision Surgical Manipulation IEEE International Conference on Robotics and Automation (ICRA) 2021
-
Deep learning can accelerate grasp-optimized motion planning ☆
Science Robotics,
Nov. 2020
☆ Cover Article
-
Untangling Dense Knots by Learning Task-Relevant Keypoints ☆
Conference on Robot Learning (CoRL)
Nov. 2020
☆ One of 20 selected for plenary talk
- Orienting Novel 3D Objects Using Self-Supervised Learning of Rotation Transforms IEEE International Conference on Automation Science and Engineering (CASE) 2020
- Robust Task-Based Grasping as a Service IEEE International Conference on Automation Science and Engineering (CASE) 2020
- Deep Imitation Learning of Sequential Fabric Smoothing From an Algorithmic Supervisor IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) October 2020
- GOMP: Grasp-Optimized Motion Planning for Bin Picking IEEE International Conference on Robotics and Automation (ICRA) June 2020
- Fog Robotics Algorithms for Distributed Motion Planning Using Lambda Serverless Computing Proc. IEEE International Conference on Robotics and Automation (ICRA) June 2020
- Minimal Work: A Grasp Quality Metric for Deformable Hollow Objects IEEE International Conference on Robotics and Automation (ICRA) June 2020
- Dex-Net AR: Distributed Deep Grasp Planning Using an Augmented Reality Application and a Smartphone Camera IEEE International Conference on Robotics and Automation (ICRA) June 2020
- Multilevel Incremental Roadmap Spanners for Reactive Motion Planning Proc. IEEE International Conference on Robotics and Automation (ICRA) 2019
- Motion Planning Templates: A Motion Planning Framework for Robots with Low-power CPUs Proc. IEEE International Conference on Robotics and Automation (ICRA) 2019
- Adversarial Grasp Objects IEEE International Conference on Automation Science and Engineering (CASE) August 2019
- Scaling Robot Motion Planning to Multi-Core Processors and the Cloud Ph.D. Dissertation, Department of Computer Science, University of North Carolina, Chapel Hill 2019
- Concurrent Nearest-Neighbor Searching for Parallel Sampling-based Motion Planning in SO(3), SE(3), and Euclidean Topologies Proc. Algorithmic Foundations of Robotics (WAFR) December 2018
- The Economic Case for Cloud-based Computation for Robot Motion Planning Proc. International Symposium on Robotics Research (ISRR), December 2017
- Cloud-based Motion Plan Computation for Power-Constrained Robots Proc. Algorithmic Foundations of Robotics (WAFR), December 2016
- Fast Nearest Neighbor Search in SE(3) for Sampling-Based Motion Planning Proc. Algorithmic Foundations of Robotics (WAFR), August 2014
- Scalable Multicore Motion Planning Using Lock-Free Concurrency, IEEE Transactions on Robotics, 2014
- Cache-Aware Asymptotically-Optimal Sampling-Based Motion Planning Proc. IEEE International Conference on Robotics and Automation (ICRA), Jun. 2014, pp. 5804–5810
- Parallel Sampling-Based Motion Planning with Superlinear Speedup Proc. IEEE/RSJ International Conference on Intelligent Robotics and Systems (IROS), Oct. 2012, pp. 1206–1212.
- Dynamics Modeling and Culling IEEE Computer Graphics and Applications, March/April 1999, pp. 79–87.
- Efficient Dynamics Modeling for VRML and Java Proc. 1998 Symposium on the Virtual Reality Modeling Language (VRML98), 1998, pp. 15–24
Software
-
“Nigh”—concurrent exact nearest neighbor searching in C++17 (github)
“Nigh” is a nearest neighbor searching data structure that supports highly concurrent inserts and queries. It supports Euclidean, SO(3), SO(3) and weighted combinations thereof.
-
Motion Planning Templates (MPT) (github)
MPT is a C++ 17 header-only library for creating fast, parallel, robot-specific motion planners.
-
Math routines for Robotics in Java (github)
This is a collection of math routines that are useful in the context of robotics in Java. They are highly performant, in many cases once the code is JIT compiled, it is able to match C++ performance. This library utilizes a reuse pattern that also helps minimize the impact of garbage collection.
-
ROS interface in Java (github)
This Java-based implementation of the networking protocol in ROS allows Java programs to interact with robots using only software pulled from Maven repositories--setup is thus minimal, and it is thus quick to get started interfacing with robots.
-
Parallel RRT* in C (github)
An implementation of Parallel RRT* (PRRT*) in C. It demonstrates how to concurrently update an RRT* graph from multiple threads running concurrently using lock-free atomic operations. Because of the low overhead of mutating shared memory structures, it typically demonstrate linear speedup with additional cores. In some cases, partitioning the sampling can lead to super-linear speedup. (See “Scalable Multicore Motion Planning Using Lock-Free Concurrency” in publications)
-
Parallel RRT* in Java (github)
A Java implementation of PRRT*. See description on C version.
-
graphql-clj
A Clojure library designed to provide GraphQL implementation.
-
OWASP Java Encoders
The Open Web Application Security Project (OWASP) Java Encoders are a set of high-performance encoders for contextual encoding to avoid cross-site scripting (XSS) vulnerabilities in web applications.
Patents
- “Method to optimize robot motion planning using deeplearning”, US Patent 11,334,085 B2, issued May 17, 2022 ,
- “Streaming insertion of tokens into content to protect against CSRF”, US Patent 8,438,649, filed Apr 16, 2010, and issued May 7, 2013 ,
- “Database forms with attached audit history”, US Patent 6,070,177, filed Mar 6, 1998, and issued May 30, 2000 ,
- “Scripting language for distributed database programming”, US Patent 6,243,711, filed Mar 6, 1998, and issued Jun 5, 2001 ,
Teaching
COMP 781, Guest Lecture, Mar 5, 2019: This is a graduate level robotics course lecture on scaling motion planning computation to multi-core processors and the cloud. It presents the computational potential of multi-core processors and parallel algorithms that can scale to use that potential.
COMP 581, Guest Lecture, Oct 2, 2018: This is an advanced-undergraduate/graduate-student robotics course lecture on highly parallelised motion planning and the data structures that enable them.
COMP 110, Summer Session I, 2016: COMP 110 begins with the fundamentals of programming a modern computer. This runs the gamut from small embedded devices, to smart phones, robots, web servers, and super computers. Students get the tools needed for programming installed and running on their computers. The course covers programming basics, such as expression, input/output, and flow control. It introduces program design, structuring, and reuse concepts, including object oriented programming. The course also covers introductory data-structures and algorithms, along with their design and implementation.