Indirect optimal control package

Hi folks,

This message to let you know that on the develop branch, there is the beta version of a new package “control.indirect” meant for using the Pontryagin Maximum Principle with numerical propagation (and for now only with Cartesian coordinates, no matter if there is a central body or not)

Features are:

  • Adjoint dynamics for some common forces
  • A range of so-called energy-like cost function
  • A fixed time fixed boundary single shooting algorithm

It will be released with version 12.2 (in September?).
Please give me your feedback by then. I will add in the meantime a convenient way to evaluate the Hamiltonian.

Possible Devs for >=13.0 include more adjoint dynamics, cost functions and more shooting capabilities.

Cheers,
Romain

6 Likes

Thanks a lot, @Serrof, that’s great!!

I haven’t taken time to check and appreciate your work so far, but I’ll do it for sure in the future.

1 Like

Hi folks,

Just letting you know that an example is available on the tutorials repo.

Cheers,
Romain.

4 Likes

Hi all,

Not sure how used the package is, but I’m dropping a message here to let you know that I’ve made some API breaking changes (on develop branch, to be released in Orekit 13.0), in particular on the cost function. The rationale is too have Field and non Field implementations separate, leaving more room for custom uses.

I’ve also sped up the native shooting method with some programming tricks. The only drawback is that now one must use a Runge Kutta scheme (so Adams Moulton does not work anymore for example).

And I’m in the process of adding a penalised version of the fuel cost, paving the way for user defined continuation techniques.

Cheers,
Romain.

1 Like

Hi @Serrof
Thanks for the update.
I guess changing the API is not a problem. Your package is quite new, so their is probably not that many people that have built large applications around it. It is also normal to have some stabilization phase on the API on the first few versions. And last point is that we are indeed targeting a major version, so all these are green light to shuffle things around!

Thanks again for this feature that has been missing in Orekit for longer than I can remember.

1 Like

Dear all,

Thanks to Maxime, the new version of my notes on the package is available on the Orekit website.

Have a good read,
Romain.

2 Likes