Thursday 18 April 2013

GPOPS - Optimisation Software

One of the major things missing from the CADAC4 software is the ability to calculate the optimum trajectory. This comes down to finding the optimal path given the known initial conditions (position and velocity) and the desired final conditions (orbital velocity and height). I have been doing a bit of reading of research papers dealing with this problem, however making the leap from the theory to the actual coding has been difficult. Mainly because I am not good enough at the maths to understand it properly.

Since it is unlikely that I will ever be able to code this myself, I did some more searching for an existing solution. I found the GPOPS software, which is a Matlab program for solving these sort of optimal control problems. Although there is still a lot to learn, one of the examples is a rocket launch with multiple stages. My aim is to learn this example and then create a clone of it with the DH-1 details. The input details will be determined by running CADAC4 and getting the velocity and position at stage separation. These will then be the inputs for the GPOPS run to determine the optimal path. It will be interesting to see how close the figures are to the book numbers! I will post some diagrams when I have gotten this done.

Running GPOPS

  1. GPOPS can be downloaded from Sourceforge. I am running it under Matlab R2009b under Ubuntu.
  2. Ensure that you have a large amount of swap space. I have had to increase mine to 16Gb.
  3. Run the 'gpopsSetup' command from the unzipped directory.
  4. Change to the 'examples/launch' directory and run 'launchMain' to start the run.

No comments:

Post a Comment