My research focus is Robotics Motion Planning and Computational Geometry. While motion planning involves computation of valid motion for moveable objects, computational geometry includes computational tools to reason about geometrical properties of structures. My interest in this area was planted through its variety of common applications (from navigation to molecular dynamics), visual analysis of the results and as a way to imitate human intuition for improving computational efficiency and quality of an application. In particular, my research theme has been efficient application and modeling of robotic motion planning algorithms and approximations and manipulation of geometric shapes to improve computational costs and robustness of applications.
Approximation Techniques
Geometric shapes are commonly used to represent robots and obstacles (in robotics), molecular structures (in computational biology) and objects in various simulations and virtual environments. However, the intricate details and complexities such as concavities in these geometric models create challenges, both in performance and understanding for the applications using them. My research includes devising approximation algorithms that can abstract these complexities and provide an alternate representation of the objects which represent them adequately for the applications without affecting the quality of the outcome heavily. In particular, I have developed geometric approximation techniques to improve the performance of motion planning algorithms which has further applications in robotics, animation and biology.
Convex Decomposition
As part of my Master’s thesis [8], I worked on approximate convex decomposition. An approximate convex decomposition breaks a complex or large geometric object into simpler components. This improves efficiency of future operations based on the divide-and-conquer strategy. For example, the convex counterpart of the components can be used instead of the entire object to improve collision detection. Approximate convex decomposition keeps the components to a manageable number while ignoring small concavities due to noise or texture. Our contribution has been to provide an efficient way to approximately decompose models in 2D and 3D with decomposition comparable to the decomposition provided by human subjects. The work has been published as an article in Computer Aided Design [5] (proceedings of the Symposium on Solid and Physical Modeling, SPM 2012 [6]).
Aggregation of disjoint objects
Another research topic I studied is to aggregate multiple objects into larger composed objects. It is based on the notion of processing large number of objects as a group. This allows hierarchical processing that can occlude certain details in the environment which are often not essential to find a solution. For example, while navigating in a city environment we could group a set of buildings and consider them as large composite obstacles. Our research involves finding an efficient clustering algorithm for disjoint geometric objects to group them into individual components based on the currently needed level of detail. The clustering hierarchy can then be utilized to improve path planning algorithms (e.g., 20 - 60% decrease in planning time in the scenarios we studied) by planning in the simplest or most conservative version of the environment first to find a solution. This work and its application to motion planning algorithms has been published in IEEE/RSJ International Conference on Robotics and Automation (IROS), 2016 [2].
Shape primitive approximation of bounded objects
One of my recent research has been in approximating a bounded shape by a set of shape primitives such as boxes, spheres, etc. This is similar to medial sphere approximation. Properties of the shape primitives such as convexity and parametric equations improve the efficiency of operations such as intersection tests. Our research contribution is to generate a shape primitive approximation that can be applied to any shape with a boundary using shape primitives of mixed type. Using multiple shape primitives simultaneously allows us to achieve a good coverage with small number of primitives. The shape primitive approximation is generated for both free and obstacle space to improve the performance of collision detection. Our results show a 10 - 70% decrease in collision detection time. This work and its application to collision detection was presented at the Workshop on the Algorithmic Foundations of Robotics (WAFR), 2018 [1] and will be published in the Springer SPAR series.
Modeling and planning motions
There exist a variety of motion planning algorithms that are used in various applications from robotics to drug design. However, these algorithms are computationally expensive in general. My research has been to efficiently apply existing motion planning algorithms either by tailoring its details based on the application domain or by improving its failure response and thereby its performance.
Modeling motion of shapes with stability constraints
I was also involved in a project that studied the folding motion of shapes formed of Shape Memory Alloy (SMA) Sheets from a flat unfolded state to a three dimensional structure in presence of physical constraints such as gravitational stability. This was a collaboration with researchers in material science. Our interest was in building structures that are re-configurable that has application in many domains including aerospace, medicine and outer-space research. Our research in this area focused on simulation of collision free motion of these SMA sheets with stability constraints such as gravity. This involved adapting a state-of-the-art robotic motion planning algorithm to accommodate the stability constraints in generating folding patterns for these sheets. This work appeared in Origami 6, 2016 [3] .
Interfacing task and motion planning
My recent work has been in interfacing task and motion planning for high level goal based robot programming. Our objective is to allow same robot program to be interoperable across different robotic platforms through reduced re-programming or re-compilation. This work was part of ARM sponsored project and was in collaboration with Siemens, New Jersey. Our approach was to efficiently combine task and motion planning to solve for high level goals such as "stacking and arranging packages". Combining task and motion planning is challenging as they work on different spaces (discrete and continuous respectively) causing increase in failed computationally expensive motion planning calls especially in presence of constraints. Our contribution has been to provide local failure response strategies along with global backtracking to handle motion planning failures and thereby increase the robustness of the integrated system.