Английская Википедия:DIDO (software)
Шаблон:Short description DIDO (Шаблон:IPAc-en Шаблон:Respell) is a MATLAB optimal control toolbox for solving general-purpose optimal control problems.[1][2][3][4][5] It is widely used in academia,[6][7][8] industry,[3][9] and NASA.[10][11][12][13] Hailed as a breakthrough software,[14][15] DIDO is based on the pseudospectral optimal control theory of Ross and Fahroo.[16] The latest enhancements to DIDO are described in Ross.[1]
Usage
DIDO utilizes trademarked expressions and objects[1][2] that facilitate a user to quickly formulate and solve optimal control problems.[8][17][18][19] Rapidity in formulation is achieved through a set of DIDO expressions which are based on variables commonly used in optimal control theory.[2] For example, the state, control and time variables are formatted as:[1][2]
- primal.states,
- primal.controls, and
- primal.time
The entire problem is codified using the key words, cost, dynamics, events and path:[1][2]
- problem.cost
- problem.dynamics
- problem.events, and
- problem.path
A user runs DIDO using the one-line command:[1]
[cost, primal, dual] = dido(problem, algorithm)
,
where the object defined by algorithm
allows a user to choose various options. In addition to the cost value and the primal solution, DIDO automatically outputs all the dual variables that are necessary to verify and validate a computational solution.[2] The output dual
is computed by an application of the covector mapping principle.
Theory
DIDO implements a spectral algorithm[1][16][20] based on pseudospectral optimal control theory founded by Ross and his associates.[3] The covector mapping principle of Ross and Fahroo eliminates the curse of sensitivity[2] associated in solving for the costates in optimal control problems. DIDO generates spectrally accurate solutions [20] whose extremality can be verified using Pontryagin's Minimum Principle. Because no knowledge of pseudospectral methods is necessary to use it, DIDO is often used[7][8][9][21] as a fundamental 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 for optimality.
Applications
DIDO is used world wide in academia, industry and government laboratories.[9] Thanks to NASA, DIDO was flight-proven in 2006.[3] On November 5, 2006, NASA used DIDO to maneuver the International Space Station to perform the zero-propellant maneuver.
Since this flight demonstration, DIDO was used for the International Space Station and other NASA spacecraft.[12][22][23][24][25][26] It is also used in other industries.[2][9][21][27] Most recently, DIDO has been used to solve traveling salesman type problems in aerospace engineering.[28]
MATLAB optimal control toolbox
DIDO is primarily available as a stand-alone MATLAB optimal control toolbox.[29] That is, it does not require any third-party software like SNOPT or IPOPT or other nonlinear programming solvers.[1] In fact, it does not even require the MATLAB Optimization Toolbox.
The MATLAB/DIDO toolbox does not require a "guess" to run the algorithm. This and other distinguishing features have made DIDO a popular tool to solve optimal control problems.[4][7][15]
The MATLAB optimal control toolbox has been used to solve problems in aerospace,[11] robotics[1] and search theory.[2]
History
The optimal control toolbox 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. Invented by Ross, DIDO was first produced in 2001.[1][2][30][17] The software is widely cited[30][7][21][27] and has many firsts to its credit:[10] [11] [12] [14] [16] [18] [31]
- 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
- First guess-free general-purpose optimal control solver
Versions
The early versions, widely adopted in academia,[8][15][17][19][6] have undergone significant changes since 2007.[1] The latest version of DIDO, available from Elissar Global,[32] does not require a "guess" to start the problem[33] and eliminates much of the minutia of coding by simplifying the input-output structure.[2] Low-cost student versions Шаблон:Webarchive and discounted academic versions are also available from Elissar Global.
See also
- Bellman pseudospectral method
- Chebyshev pseudospectral method
- Covector mapping principle
- Fariba Fahroo
- Flat pseudospectral methods
- I. Michael Ross
- Legendre pseudospectral method
- Ross–Fahroo lemma
- Ross' π lemma
- Ross–Fahroo pseudospectral methods
References
Further reading
External links
- How DIDO Works at How Stuff Works
- NASA News
- Pseudospectral optimal control: Part 1
- Pseudospectral optimal control: Part 2
- ↑ 1,00 1,01 1,02 1,03 1,04 1,05 1,06 1,07 1,08 1,09 1,10 Шаблон:Cite arXiv
- ↑ 2,00 2,01 2,02 2,03 2,04 2,05 2,06 2,07 2,08 2,09 2,10 Ross, I. M. A Primer on Pontryagin's Principle in Optimal Control, Second Edition, Collegiate Publishers, San Francisco, 2015.
- ↑ 3,0 3,1 3,2 3,3 Шаблон:Cite journal
- ↑ 4,0 4,1 Eren, H., "Optimal Control and the Software," Measurements, Instrumentation, and Sensors Handbook, Second Edition, CRC Press, 2014, pp.92-1-16.
- ↑ Шаблон:Cite journal
- ↑ 6,0 6,1 Шаблон:Cite web
- ↑ 7,0 7,1 7,2 7,3 Шаблон:Cite journal
- ↑ 8,0 8,1 8,2 8,3 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
- ↑ 9,0 9,1 9,2 9,3 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.
- ↑ 10,0 10,1 National Aeronautics and Space Administration. "Fact Sheet: International Space Station Zero-Propellant Maneuver (ZPM) Demonstration." June 10, 2011. (Sept. 13, 2011) [1]
- ↑ 11,0 11,1 11,2 W. Kang and N. Bedrossian, "Pseudospectral Optimal Control Theory Makes Debut Flight, Saves nasa $1m in Under Three Hours," SIAM News, 40, 2007.
- ↑ 12,0 12,1 12,2 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.
- ↑ Шаблон:Cite web
- ↑ 14,0 14,1 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 Шаблон:Webarchive.
- ↑ 15,0 15,1 15,2 Шаблон:Cite book
- ↑ 16,0 16,1 16,2 Шаблон:Cite journal
- ↑ 17,0 17,1 17,2 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
- ↑ 18,0 18,1 Шаблон:Cite journal
- ↑ 19,0 19,1 Шаблон:Cite thesis
- ↑ 20,0 20,1 Шаблон:Cite journal
- ↑ 21,0 21,1 21,2 D. Delahaye, S. Puechmorel, P. Tsiotras, and E. Feron, "Mathematical Models for Aircraft Trajectory Design : A Survey" Lecture notes in Electrical Engineering, 2014, Lecture Notes in Electrical Engineering, 290 (Part V), pp 205-247
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite journal
- ↑ Karpenko, M. et al. "Fast Attitude Maneuvers for the Lunar Reconnaissance Orbiter." (2019) AAS 19-053.
- ↑ Шаблон:Cite journal
- ↑ Karpenko, M., Ross, I. M., Stoneking, E. T., Lebsock, K. L., Dennehy, C., "A Micro-Slew Concept for Precision Pointing of the Kepler Spacecraft," AAS 15-628.
- ↑ 27,0 27,1 S. E. Li, K. Deng, X. Zang, and Q. Zhang, "Pseudospectral Optimal Control of Constrained Nonlinear Systems," Ch 8, in Automotive Air Conditioning: Optimization, Control and Diagnosis, edited by Q. Zhang, S. E. Li and K. Deng, Springer 2016, pp. 145-166.
- ↑ Шаблон:Cite book
- ↑ Шаблон:Cite web
- ↑ 30,0 30,1 Шаблон:Cite book
- ↑ Шаблон:Cite book
- ↑ Шаблон:Cite web distributes the software.
- ↑ Шаблон:Cite book