DIDO (software)

(Redirected from DIDO (optimal control))

DIDO (/ˈdd/ DY-doh) 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 Archived 2021-04-21 at the Wayback Machine and discounted academic versions are also available from Elissar Global.

See also

References

Further reading

External links