We develop efficient robust numerical methods and software to solve convex optimization problems resulting from control applications. This includes development of Interior Point Method (IPM) algorithms and Multi-Parametric Programming (MPP) methods.Currently we are developing a real-time Primal-Dual IPM algorithms and software for the solution of Second-Order-Cone-Programming (SOCP) problems. Our software is also used to solve the fuel optimal large divert maneuver guidance problem to enable planetary precision landing, which was tested by JPL and NASA Flight Opportunities Program in 2012 and 2013 on a test vehicle, “Xombie”, which is built by Masten Aerospace Systems.

Relevant Media

- TRN (Terrain Relative Navigation)/G-FOLD (Guidance for Fuel Optimal Large Divert): test flight demonstrating onboard autonomous vision based navigation together with real-time op- timization based control, 2014.
- 800 m Divert flight testing of G-FOLD (Guidance for Fuel Optimal Large Divert): Convex optimization based Guidance algorithm for Fuel Optimal Large Divert, 2013.
- 750 m Divert flight testing of G-FOLD (Guidance for Fuel Optimal Large Divert): Convex optimization based Guidance algorithm for Fuel Optimal Large Divert, 2012.
- 650 m Divert flight testing of G-FOLD (Guidance for Fuel Optimal Large Divert): Convex optimization based Guidance algorithm for Fuel Optimal Large Divert, 2012.
- 500 m Divert flight testing of G-FOLD (Guidance for Fuel Optimal Large Divert): Convex optimization based Guidance algorithm for Fuel Optimal Large Divert, 2012.

Convexification of Control Problems

Convexification is to express control problems as convex optimization problems, so that their solution becomes tractable, hence can be automated. This allows us to solve complex control problems very efficiently, potentially in real-time. Hence it enables control of autonomous systems and it automates the control design processes allowing us to evaluate a wide range of design options.

The above videos of rocket test flights with JPL and Masten Aerospace are examples of convexification and real-time optimization based control. Following are further examples of these ideas and methods in test flights with our custom built quad-rotor in our lab.

- Flying the vertices of a 2-D 1 sec reachability set:

The 2-D planar reachability set of the quad-rotor from a fixed initial position and velocity is computed, with a fixed time horizon of 1 sec. Then the corresponding trajectories to the vertices of this polytope are generated onboard in real-time and flown by the quad-rotor. All trajectories are generated onboard in real-time by using our in-house developed IPMs. - Computing trajectories with non-convex thrust constraints:

The thrust vector leaves in a non-convex region due to lower bounds on the thrust vector magnitude and the pointing angle. As the time of flight is reduced, the trajectory becomes increasingly more aggressive, causing the flipping of the quad-rotor to utilize non-convex thrust region available to the fullest. All trajectories are generated onboard in real-time by using our in-house developed IPMs. - Collision avoidance with fixed obstacles:

The collision avoidance constraints are convexified via generating a succession of trajectories (successive convexification). All trajectories are generated onboard in real-time by using our in-house developed IPMs. - Collision avoidance with changing obstacles:

Same algorithm is applied to a scenario where the obstacle locations are changed during the flight experiment.