How DIDO Works

Watch this video about the Single Aircraft Accident Prevention Project, which will help reduce aircraft accidents.

Imagine you hear a phone ringing. What's the first thing you do? That probably depends on a lot of things, such as where you are, the time of day, what you're doing, who's with you, what the ring tone sounds like and whether it's actually your phone. If you're walking through a grocery store and you hear a phone ringing from several aisles away, you'll probably realize it's not your phone and just ignore it. If you're in your car, you might decide whether you can answer the phone based on the traffic or whether you have a hands-free device.

That's a lot of variables just to decide whether to answer the phone, and you could probably think of many other reasons you might answer or ignore a ringing phone. Our brains are powerful computers that can quickly process all those conditions, decide on the best response and instruct our bodies to take action. Throughout human history, creating a machine that can replicate that process correctly in every scenario has been almost unimaginable. Today, though, technology like DIDO software and hardware is helping make such machines a reality.


Just as there's no one correct response to a ringing phone, there's no one correct way to steer an airplane or move a robot's legs. There can be a best response, though, given all the conditions affecting the scenario. In the airplane's case, how a pilot steers toward the destination is affected by the elevation, speed, wind direction, air speed and any of a hundred other variables at a given moment in time. Human pilots process and respond to all this information.

Can a computer truly replicate this process? That's where technology like DIDO comes in. DIDO is software programmed to run on the MATLAB scientific computing platform which, in turn, requires Microsoft Windows. Computers can use DIDO to process large and ever-changing amounts of data into a reliable best response. DIDO was developed in the late 1990s by U.S. Naval Postgraduate School professor Isaac "Mike" Ross. At the time, Ross and colleague Fariba Fahroo were conducting research in optimal control theory and computation. We'll look more at optimal control theory later.

Today, DIDO is part of hardware and software solutions marketed by Elissar Global. This article covers the kinds of problems DIDO is helping to solve and some breathtaking technological applications of DIDO optimal control technology. Let's start with a look at how researchers across many fields are making use of DIDO.


Pseudospectral Optimal Control

The term for the problem DIDO is solving is optimal control. In calculus, optimal control theory is a mathematical approach to finding the best mechanical response in a given scenario given some set of conditions. Mathematically, optimal control is a set of differential equations that minimize the cost (maximize the payoff) of achieving some desired outcome. Don't worry! We're about to make this concept much simpler.

To understand optimal control, let's freeze time for a moment. Take in the sensations of the world around you: sights, sounds, smells, tastes and physical feelings. Now combine that with everything stored in your brain. The way you respond to any new stimulus around you will be based on all that information. How would you react right now to hearing a doorbell or to smelling freshly baked cookies?


Computers can convert similar sensory information into data in an attempt to imitate our brainpower. The computer can calculate the best response to a given stimulus using all that data. From the computer's perspective, the "best" response would be the action that has the maximum payoff at the minimum cost. That best response concept is what scientists and mathematicians refer to as the optimal control.

Now let's unfreeze time and move forward again. Suddenly, calculating the optimal control is more complicated. As each fraction of a second passes, conditions change, with new sensory data to consider. Thus, the biggest challenge for finding the optimal control is considering these ever-changing conditions and recalculating accordingly. Our brains make these recalculations constantly, but a computer has to have some type of stimulus-response program to do this.

This compounded optimal control problem requires adding another calculus concept: pseudospectral theory. Pseudospectral theory involves using approximate values for optimal control calculations, within some known constraints. DIDO software is known for its pseudospectral approach to optimal control problems. Thus, DIDO helps drive machines that need to constantly re-evaluate their surrounding conditions and respond accordingly, including cars and airplanes.

So far we've determined what optimal control is and the significance of pseudospectral theory. Next, let's zoom in, or rather out, to outer space, where DIDO's had its most prominent application.


DIDO in Space

An artist's rendering of the TRACE satellite, which learned new dance steps for its slewing procedure thanks to DIDO.
Image courtesy of NASA

According to Elissar Global, the most extensive application of its software has been in space. This is probably the most intuitive application for DIDO being that vehicles and other machines in space rely heavily on automation or remote controls rather than direct human actions. Out there, a computer that can sense what's happening around it and quickly determine the best response is a valuable asset.

Two particular applications of DIDO have given software's reputation for solving optimal control problems quite a boost. The first of these was in 2006, when DIDO tackled the goal of maneuvering the International Space Station (ISS) 180 degrees within its orbital path without expending any fuel. Typically, the ISS and other vehicles in orbit must use thrusters to maneuver, which require expensive fuel. DIDO creator Ross and other researchers had an idea that a zero-propellant maneuver (ZPM) was possible.


DIDO was used twice for these zero-propellant maneuvers, each with success. On Nov. 5, 2006, the team maneuvered the ISS 90 degrees. Four months later, on March 3, they managed a 180-degree turn. These experiments were a large-scale proof of concept for DIDO, launching it into fame as the leading optimal control technology.

In 2010, another application of DIDO was to maneuver NASA's Transition Region and Coronal Explorer (TRACE) satellite. TRACE was on a mission to study the sun, but it had barely moved during its 12-year undertaking. As the TRACE research showed, NASA's protocol of following a straight line between two points may have identified the shortest distance to travel, but it was far from the fastest route. So, when the satellite needed to slew (move at an angle) to a new point, it was taking much longer than necessary, because it was trying to stick to that straight path.

The TRACE maneuvering research came just as the satellite was about to be decommissioned by the NASA Engineering and Safety Center (NESC). Engineers from NESC let Mark Karpenko take the lead in an experiment to apply DIDO calculations and uplink an optimal slew for the TRACE. The hypothesis was that the optimum path using gravity as an advantage would make for a more efficient approach to slewing. This idea relates to Bernoulli's principle in physics.

Despite its limited two-month turn around, the TRACE research team was able to prove its hypothesis. In addition, the TRACE required less than half the electrical power during each slew. Observers described the TRACE satellite maneuver as if it were dancing through space. Now that's what we call dancing with the stars!

Up next, we're dropping out of orbit and checking out how DIDO is making it big down here on Earth.


Other DIDO Applications

DIDO is intended as a generic approach to solving optimal control problems. This means that it should readily integrate into any autonomous system no matter what types of input that system is processing, so long as it uses the MATLAB computing platform running in Microsoft Windows. By autonomous system, we mean a combination of hardware and software that functions together as a robotic entity, and determines on its own the sequence of actions it needs to perform in order to complete a given task. In a sense, an autonomous system is a robot that can solve its own problems.

It's because DIDO is so generic that researchers in both academics and industry have found ways to apply the software to solve a wide range of optimal control problems. We see this prominently in robotics where researchers can integrate DIDO with the existing software in an autonomous system. DIDO creator Ross said in an interview that one of his former students in particular has applied the software to ground robots with some amazing results. That same Ph.D. graduate has researched navigating multiple robotic vehicles through rough waters without them colliding.


Another field where DIDO's getting traction is aeronautics. Earlier, we gave an example of all the conditions that go into determining how to steer an aircraft. That example wasn't arbitrary: We chose it because DIDO has been able to do just that. Besides aiding in finding flight trajectories for gliders, DIDO is also helping in fuel optimization for aircraft. The American Institute of Aeronautics and Astronautics (AIAA) has published studies from researchers around the world that have used DIDO in their work.

One unique DIDO application has been applying its optimal control calculations to steering an undersea glider, an unmanned autonomous system in the form of a winged underwater vehicle. Researchers at Virginia Tech looked at ways to ensure such a glider could move like a porpoise through the water, which is both energy efficient and useful when taking oceanographic surveys. One of the team's challenges was to address a stalling effect when transitioning from downward to upward trajectories. The team reported that DIDO was the easiest solution method for them to set up and run for their research, though they also reported getting similar calculations with another tool [source: Kraus, Cliff, Woolsey and Luby].

Throughout this article, we've looked at what optimal control problems are, how DIDO is helping to solve them and the innovative ways researchers have applied DIDO in various commercial and academic fields. Optimize your DIDO experience by checking out even more information on the next page.


Lots More Information

Related Articles

More Great Links

  • Evans, Lawrence C. "An Introduction to Mathematical Optimal Control Theory, Version 0.2." University of California, Berkley. (Sept. 10, 2011)
  • Harada, Masanori, and Bollino, Kevin. "Optimal Trajectory of a Glider in Ground Effect and Wind Shear." American Institute of Aeronautics and Astronautics, Inc. Aug. 2005. (Sept. 11, 2011)
  • Honegger, Barbara. "NPS Professor's Software Breakthrough Allows Zero-Propellant Maneuvers in Space." United States Navy. April 20, 2007. (Sept. 11, 2011)
  • National Aeronautics and Space Administration. "Fact Sheet: International Space Station Zero-Propellant Maneuver (ZPM) Demonstration." June 10, 2011. (Sept. 13, 2011)
  • Keesey, Lori. "TRACE Spacecraft's New Slewing Procedure." NASA's Goddard Space Flight Center. National Aeronautics and Space Administration. Dec. 20, 2010. (Sept. 11, 2011)
  • Kraus, R., Cliff, E., Woolsey, C., and Luby, J. "Optimal Control of an Undersea Glider in a Symmetric Pull-up." Virginia Center for Autonomous Systems. Virginia Polytechnic Institute and State University. Oct. 24, 2008. (Sept. 11, 2011)
  • Ross, I. Michael, and Fahroo, Fariba. "Legendre Pseudospectral Approximations of Optimal Control Problems." Lecture Notes in Control and Information Sciences. Vol. 295. Springer-Verlag. 2003. (Sept. 11, 2011)
  • Stein, Amanda D. "Professors Honored With AIAA Mechanics and Control of Flight Award." Naval Postgraduate School. U.S. Navy. (Sept. 10, 2011)
  • Todorov, Emanuel. "Optimal Control Theory." University of California San Diego. 2006. (Sept. 10, 2011)
  • Weisstein, Eric W. "Dido's Problem." MathWorld. Wolfram Research, Inc. (Sept. 10, 2011)