Transformer-based Powered Descent Guidance (T-PDG), a scalable algorithm for reducing the computational complexity of the direct optimization formulation of the spacecraft powered descent guidance problem.
The lossless convexification (LCvx) algorithm, which was used for problem training and test data, was adapted from the SCP Toolbox1.
-
Make sure SCP Toolbox is also installed.
-
Ensure PyCall is installed with the correct Python path and LaTeX is downloaded.
-
In Julia run include("Tests/run_tests.jl") inside of the T-PDG folder.
- Open Tests/NN_Train_and_Test.ipynb and navigate to the most relevant section for your task.
- T-PDG
- src - Contains required files for running the algorithm
- Data - .pkl files including mean and standard deviations for the datasets are stored here, as well as standardized training and testing data
- Models - Trained transformer models are stored here
- Results - Result figures and datasets are saved here
- Sampling - .csv files sampled from LCvx with tight constraints and optimal final times are stored here
- definition.jl - LCvx optimization problem created, constraints are added, and the optimization problem is solved
- parameters.jl - Constructors for setting up Rocket and Solution structures
- T-PDG.jl - Creates a package from the src files
- tests.jl - Tests the T-PDG algorithm and compares runtime and feasibility with LCvx
- Tests - Contains files for running the guidance algorithm and plots
-
NN_Train_and_Test.ipynb - Preprocess data, train and test transformer neural networks, and visualize embeddings using t-SNE
-
plots.jl - Contains all plotting functions
-
run_tests.jl - Run T-PDG using
include("Tests/run_tests.jl")
-
- src - Contains required files for running the algorithm
If you use T-PDG in your work, kindly cite the following associated publication.
@article{TPDGSciTech2024,
year = {2024},
month = jan,
publisher = {American Institute of Aeronautics and Astronautics ({AIAA})},
author = {Julia Briden and Trey Gurga and Breanna Johnson and Abhishek Cauligi and Richard Linares},
title = {Improving Computational Efficiency for Powered Descent Guidance via Transformer-based Tight Constraint Prediction},
journal = {{AIAA} SciTech},
note = {Free preprint available at [https://arxiv.org/abs/2311.05135](https://arxiv.org/abs/2311.05135)}
}
Footnotes
-
Danylo Malyuta, Taylor P. Reynolds, Michael Szmuk, Thomas Lew, Riccardo Bonalli, Marco Pavone, Behçet Açıkmeşe. "Convex Optimization for Trajectory Generation: A Tutorial on Generating Dynamically Feasible Trajectories Reliably and Efficiently". IEEE Control Systems, 42(5), pp. 40-113, 2022. DOI: 10.1109/mcs.2022.3187542. Free preprint available at https://arxiv.org/abs/2106.09125 ↩