Solving optimal continuous thrust rendezvous problems with generating functions

Chandeok Park, Vincent Guibout, Daniel J. Scheeres

Research output: Contribution to journalArticle

99 Citations (Scopus)

Abstract

The optimal control of a spacecraft as it transitions between specified states using continuous thrust in a fixed amount of time is studied using a recently developed technique based on Hamilton-Jacobi theory. Started from the first-order necessary conditions for optimality, a Hamiltonian system is derived for the state and adjoints with split boundary conditions. Then, with recognition of the two-point boundary-value problem as a canonical transformation, generating functions are employed to find the optimal feedback control, as well as the optimal trajectory. Although the optimal control problem is formulated in the context of the necessary conditions for optimality, our closed-loop solution also formally satisfies the sufficient conditions for optimality via the fundamental connection between the optimal cost function and generating functions. A solution procedure for these generating functions is posed and numerically tested on a nonlinear optimal rendezvous problem in the vicinity of a circular orbit. Generating functions are developed as series expansions, and the optimal trajectories obtained from them are compared favorably with those of a numerical solution to the two-point boundary-value problem using a forward-shooting method.

Original languageEnglish
Pages (from-to)321-331
Number of pages11
JournalJournal of Guidance, Control, and Dynamics
Volume29
Issue number2
DOIs
Publication statusPublished - 2006 Mar 1

All Science Journal Classification (ASJC) codes

  • Control and Systems Engineering
  • Aerospace Engineering
  • Space and Planetary Science
  • Electrical and Electronic Engineering
  • Applied Mathematics

Fingerprint Dive into the research topics of 'Solving optimal continuous thrust rendezvous problems with generating functions'. Together they form a unique fingerprint.

  • Cite this