DIDO (software)

From Wikipedia, the free encyclopedia
  (Redirected from DIDO (optimal control))
Jump to: navigation, search

DIDO is a MATLAB optimal control software for solving general-purpose hybrid optimal control problems.[1][2] Powered by the pseudospectral optimal control theory of Ross and Fahroo,[3] the general-purpose optimal control program is named after Dido, the legendary founder and first queen of Carthage who is famous in mathematics for her remarkable solution to a constrained optimal control problem even before the invention of calculus.


Based on pseudospectral optimal control theory founded by Ross and his associates,[4] DIDO utilizes unique expressions and objects[1] that facilitate one to formulate and solve optimal control problems in a manner that is similar to writing the problem on a piece of paper.[5] The covector mapping principle of Ross and Fahroo eliminates traditional difficulties in solving for the costates in optimal control problems; thus, DIDO generates spectrally accurate solutions [6] whose extremality can be verified using Pontryagin's Minimum Principle.[1] Because no knowledge of pseudospectal methods is necessary to use DIDO, it is often used as a mathematical tool for solving optimal control problems. That is, a solution obtained from DIDO is treated as a candidate solution for the application of Pontryagin's minimum principle as a necessary condition.


DIDO is used world wide in academia, industry and government laboratories.[7] Thanks to NASA, DIDO was flight-proven in 2006.[4] On November 5, 2006, NASA used DIDO to maneuver the International Space Station to perform the Zero Propellant Maneuver. The Zero Propellant Maneuver was discovered by Nazareth Bedrossian using DIDO. Watch a video of this historic maneuver.

Since this historic flight demonstration, DIDO has been used in operate the International Space Station and other NASA spacecraft.[8] It is also used in other industries to generate real-time optimal solutions.[1][7]

The youtube videos DIDO: Part 1 and DIDO: Part 2 show more applications and explain some of the new mathematics.


Invented by Ross, DIDO was first produced in 2001[9] and has many firsts to its credit:[3] [8] [10] [11] [12] [13] [14]

  • First general-purpose object-oriented optimal control software
  • First general-purpose pseudospectral optimal control software
  • First flight-proven general-purpose optimal control software
  • First embedded general-purpose optimal control solver


DIDO is a professional optimal control solver; however, several different versions of DIDO are available:

In addition the complete source code for DIDO is also available so that an end user may customize it for any application.

See also[edit]


  1. ^ a b c d Ross, I. M. A Primer on Pontryagin's Principle in Optimal Control, Second Edition, Collegiate Publishers, San Francisco, 2015.
  2. ^ Ross, I. M.; D'Souza, C. N. (2005). "A Hybrid Optimal Control Framework for Mission Planning". Journal of Guidance, Control and Dynamics 28 (4): 686–697. doi:10.2514/1.8285. 
  3. ^ a b Ross, I. M.; Fahroo, F. (2004). "Pseudospectral Knotting Methods for Solving Optimal Control Problems". Journal of Guidance, Control and Dynamics 27 (3): 397–405. doi:10.2514/1.3426. 
  4. ^ a b Ross, I. M.; Karpenko, M. (2012). "A Review of Pseudospectral Optimal Control: From Theory to Flight". Annual Reviews in Control 36: 182–197. doi:10.1016/j.arcontrol.2012.09.002. 
  5. ^ A. M. Hawkins, Constrained Trajectory Optimization of a Soft Lunar Landing From a Parking Orbit, S.M. Thesis, Dept. of Aeronautics and Astronautics, Massachusetts Institute of Technology, 2005. http://dspace.mit.edu/handle/1721.1/32431
  6. ^ Gong, Q.; Fahroo, F.; Ross, I. M. (2008). "A Spectral Algorithm for Pseudospectral Methods in Optimal Control". Journal of Guidance, Control and Dynamics 31 (3): 460–471. doi:10.2514/1.32908. 
  7. ^ a b Q. Gong, W. Kang, N. Bedrossian, F. Fahroo, P. Sekhavat and K. Bollino, Pseudospectral Optimal Control for Military and Industrial Applications, 46th IEEE Conference on Decision and Control, New Orleans, LA, pp. 4128-4142, Dec. 2007.
  8. ^ a b L. Keesey, "TRACE Spacecraft's New Slewing Procedure." NASA's Goddard Space Flight Center. National Aeronautics and Space Administration. Dec. 20, 2010. (Sept. 11, 2011) http://www.nasa.gov/mission_pages/sunearth/news/trace-slew.html.
  9. ^ J. R. Rea, A Legendre Pseudospectral Method for Rapid Optimization of Launch Vehicle Trajectories, S.M. Thesis, Dept. of Aeronautics and Astronautics, Massachusetts Institute of Technology, 2001. http://dspace.mit.edu/handle/1721.1/8608
  10. ^ Fahroo, F.; Doman, D. B.; Ngo, A. D. (2003). "Modeling Issues in Footprint Generation of Resuable Launch Vehicles". Proceedings of the IEEE Aerospace Conference 6: 2791–2799. doi:10.1109/aero.2003.1235205. 
  11. ^ W. Kang and N. Bedrossian, "Pseudospectral Optimal Control Theory Makes Debut Flight, Saves nasa $1m in Under Three Hours," SIAM News, 40, 2007.
  12. ^ B. Honegger, "NPS Professor's Software Breakthrough Allows Zero-Propellant Maneuvers in Space." Navy.mil. United States Navy. April 20, 2007. (Sept. 11, 2011) http://www.elissarglobal.com/wp-content/uploads/2011/07/Navy_News.pdf.
  13. ^ Josselyn, S.; Ross, I. M. (2003). "A Rapid Verification Method for the Trajectory Optimization of Reentry Vehicles". Journal of Guidance, Control and Dynamics 26 (3): 505–508. doi:10.2514/2.5074. 
  14. ^ National Aeronautics and Space Administration. "Fact Sheet: International Space Station Zero-Propellant Maneuver (ZPM) Demonstration." June 10, 2011. (Sept. 13, 2011) http://www.nasa.gov/mission_pages/station/research/experiments/ZPM.html

Further reading[edit]

External links[edit]