Began implementing Bosanac's changes

This commit is contained in:
Connor
2022-03-09 21:22:36 -07:00
parent 9e3a720c49
commit 7474b19288
10 changed files with 1770 additions and 1624 deletions

356
LaTeX/results.tex Normal file
View File

@@ -0,0 +1,356 @@
\chapter{Results Analysis} \label{results}
The algorithm described in this thesis is quite flexible in its design and could be used as
a tool for a mission designer on a variety of different mission types. However, to consider
a relatively simple but representative mission design objective, a sample mission to Saturn
was investigated.
Ultimately, two optimized trajectories were selected. The results of those trajectories can
be found in Table~\ref{results_table} below:
\begin{table}[h!]
\begin{small}
\centering
\begin{tabular}{ | c c c c c c | }
\hline
\bfseries Flyby Selection &
\bfseries Launch Date &
\bfseries Mission Length &
\bfseries Launch $C_3$ &
\bfseries Arrival $V_\infty$ &
\bfseries Fuel Usage \\
& & (years) & $\left( \frac{km}{s} \right)^2$ & ($\frac{km}{s}$) & (kg) \\
\hline
EMS & 2024-06-27 & 7.9844 & 60.41025 & 5.816058 & 446.9227 \\
EMJS & 2023-11-08 & 14.1072 & 40.43862 & 3.477395 & 530.6683 \\
\hline
\end{tabular}
\end{small}
\caption{Comparison of the two most optimal trajectories}
\label{results_table}
\end{table}
\section{Mission Constraints}
The sample mission was defined to represent a general case for a near-future low-thrust
trajectory to Saturn. No constraints were placed on the flyby planets, but a number of
constraints were placed on the algorithm to represent a realistic mission scenario.
The first choice required by the application is one not necessarily designable to the
initial mission designer (though not necessarily fixed in the design either) and is that
of the spacecraft parameters. The application accepts as input a spacecraft object
containing: the dry mass of the craft, the fuel mass at launch, the number of onboard
thrusters, and the specific impulse, maximum thrust and duty cycle of each thruster.
For this mission, the spacecraft was chosen to have a dry mass of only 200 kilograms for
a fuel mass of 3300 kilograms. This was chosen in order to have an overall mass roughly
in the same zone as that of the Cassini spacecraft, which launched with 5712 kilograms
of total mass, with the fuel accounting for 2978 of those kilograms\cite{cassini}. The
dry mass of the craft was chosen to be extremely low in order to allow for a variety of
''successful`` missions in which the craft didn't run out of fuel. That way, the
delivered dry mass to Saturn could be thought of as a metric of success, without
discounting mission that may have delivered just under whatever more realistic dry mass
one might set, in case those missions are in the vicinity of actually valid missions.
The thruster was chosen to have a specific impulse of 3200 seconds, a maximum thrust of
250 millinewtons, and a 100\% duty cycle. This puts the thruster roughly in line with
having an array of three NSTAR ion thrusters, which were used on the Dawn and Deep Space
1 missions\cite{polk2001performance}.
Also of relevance to the mission were the maximum $C_3$ at launch and $v_\infty$ at
arrival values. In order to not exclude the possibility of a non-capture flyby mission,
it was decided to not include the arrival $v_\infty$ term in the cost function and,
because of this, the maximum value was set to be extremely high at 500 kilometers per
second, in order to fully explore the space. In practice, though, the algorithm only
looks at flybys below 10 kilometers per second in magnitude. The maximum launch $C_3$
energy was set conservatively to 200 kilometers per second squared. This is upper limit
is only possible, for the given start mass, using a heavy launch system such as the
SLS\cite{stough2021nasa} or the comparable SpaceX Starship, though at values below about
half of this maximum, it begins to become possible to use existing launch solutions.
Finally, the mission is meant to represent a near future mission. Therefore the launch
window was set to allow for a launch in any day in 2023 or 2024 and a maximum total time
of flight of 20 years. This is longer than most typical Saturn missions, but allows for
some creative trajectories for higher efficiency.
It should be noted that each of these trajectories was found using an $n$ value of 20 as
mentioned previously, but in post-processing, the trajectory was refined to utilize a
slightly higher fidelity model that uses 60 sub-trajectories per orbit. This serves to
provide better plots for display, higher fidelity analyses, as well as to highlight the
efficacy of the lower fidelity method. Orbits can be found quickly in the lower fidelity
model and easily refined later by re-running the NLP solver at a higher $n$ value.
\subsection{Cost Function}
Each mission optimization also allows for the definition of a cost function. This
cost function accepts as inputs all parameters of the mission, the maximum $C_3$ at
launch and the maximum excess hyperbolic velocity at arrival.
The cost function used for this mission first generated normalized values for fuel
usage and launch energy. The fuel usage number is determined by dividing the fuel
used by the mass at launch and the $C_3$ number is determined by dividing the $C_3$
at launch by the maximum allowed. These two numbers are then weighted, with the fuel
usage value getting a weight of three and the launch energy value getting a weight
of one. The values are summed and returned as the cost value.
\subsection{Flybys Analyzed}
Since the algorithm itself makes no decisions on the actual choice of flybys, that
leaves the mission designer to determine which flyby planets would make good
potential candidates. A mission designer can then re-run the algorithm for each of
these flyby plans and determine which optimized trajectories best fit the needs of
the mission.
For this particular mission scenario, the following flyby profiles were
investigated:
\begin{itemize}
\item EJS
\item EMJS
\item EMMJS
\item EMS
\item ES
\item EVMJS
\item EVMS
\item EVVJS
\end{itemize}
\section{Faster, Less Efficient Trajectory}
In order to showcase the flexibility of the optimization algorithm (and the chosen cost
function), two different missions were chosen to highlight. One of these missions is a
slower, more efficient trajectory more typical of common low-thrust trajectories. The
other is a faster trajectory, quite close to a natural trajectory, but utilizing more
launch energy to arrive at the planet.
It is the faster trajectory that we'll analyze first. Most interesting about this
particular trajectory is that it's actually quite efficient despite its speed, in
contrast to the usual dichotomy of low-thrust travel. The cost function used for this
analysis did not include the time of flight as a component of the overall cost, and yet
this trajectory still managed to be the lowest cost trajectory of all trajectories found
by the algorithm.
The mission begins in late June of 2024 and proceeds first to an initial gravity assist
with Mars after three and one half years to rendezvous in mid-December 2027.
Unfortunately, the launch energy required to effectively used the gravity assist with
Mars at this time is quite high. The $C_3$ value was found to be $60.4102$ kilometers
per second squared. However, for this phase, the thrust magnitudes are quite low,
raising slowly only as the spacecraft approaches Mars, allowing for a nearly-natural
trajectory to Mars rendezvous. Note also that the in-plane thrust direction was neither
zero nor $\pi$, implying that these thrusts were steering thrusts rather than
momentum-increasing thrusts.
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{fig/EMS_plot}
\caption{Depictions of the faster Earth-Mars-Saturn trajectory found by the
algorithm to be most efficient; planetary ephemeris arcs are shown during the phase
in which the spacecraft approached them}
\label{ems}
\end{figure}
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{fig/EMS_plot_noplanets}
\caption{Another depiction of the EMS trajectory, without the planetary ephemeris
arcs}
\label{ems_nop}
\end{figure}
The second and final leg of this trip exits the Mars flyby and, initially burns quite
heavily along the velocity vector in order to increase it's semi-major axis. After an
initial period of thrusting, though, the spacecraft effectively coasts with minor
adjustments until its rendezvous with Saturn just four and a half years later in June of
2032. The arrival $v_\infty$ is not particularly small, at $5.816058$ kilometers per
second, but this is to be expected as the arrival excess velocity was not considered as
a part of the cost function. If capture was not the final intention of the mission, this
may be of little concern. Otherwise, the low fuel usage of $446.92$ kilograms for a
$3500$ kilogram launch mass leaves much margin for a large impulsive thrust to enter
into a capture orbit at Saturn.
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{fig/EMS_thrust_mag}
\caption{The magnitude of the unit thrust vector over time for the EMS trajectory}
\label{ems_mag}
\end{figure}
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{fig/EMS_thrust_components}
\caption{The inertial x, y, and z components of the unit thrust vector over time for
the EMS trajectory}
\label{ems_components}
\end{figure}
In this case the algorithm effectively realized that a higher-powered launch from
the Earth, then a natural coasting arc to Mars flyby would provide the spacecraft with
enough velocity that a short but efficient powered-arc to Saturn was possible with
effective thrusting. It also determined that the most effective way to achieve this
flyby was to increase orbital energy in the beginning of the arc, when increasing
the semi-major axis value is most efficient. All of these concepts are known to skilled
mission designers, but finding a trajectory that combined all of these concepts would
have required much time-consuming analysis of porkchop plots and combinations of
mission-design techniques. This approach is far more automatic than the traditional
approach.
The final quality to note with this trajectory is that it shows a tangible benefit of
the addition of the Lambert's solver in the monotonic basin hopping algorithm. Since the
initial arc is almost entirely natural, with very little thrust, it is extremely likely
that the trajectory was found in the Lambert's Solution half of the MBH algorithm
procedure.
\section{Slower, More Efficient Trajectory}
Next we'll analyze the nominally second-best trajectory. While the cost function
provided to the algorithm can be a useful tool for narrowing down the field of search
results, it can also be very useful to explore options that may or may not be of similar
"efficiency" in terms of the cost function, but beneficial for other reasons. By
outputting many different optimal trajectories, the MBH algorithm can allow for this
type of mission design flexibility.
To highlight the flexibility, a second trajectory has been selected, which has nearly
equal value by the cost function, coming in slightly lower. However, this trajectory
appears to offer some benefits to the mission designer who would like to capture into
the gravitational field of Saturn or minimize launch energy requirements, perhaps for a
smaller mission, at the expense of increased speed.
The first leg of this three-leg trajectory is quite similar to the first leg of the
previous trajectory. However, this time the launch energy is considerably lower, with a
$C_3$ value of only $40.4386$ kilometer per second squared. Rather than employ an almost
entirely natural coasting arc to Mars, however, this trajectory performs some thrusting
almost entirely in the velocity direction, increasing its orbital energy in order to
achieve the same Mars rendezvous. In this case, the launch was a bit earlier, occurring
in November of 2023, with the Mars flyby occurring in mid-April of 2026. This will prove
to be helpful in comparison with the other result, as this mission profile is much
longer.
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{fig/EMJS_plot}
\caption{Depictions of the slower Earth-Mars-Jupiter-Saturn trajectory found by the
algorithm to be the second most efficient; planetary ephemeris arcs are shown during
the phase in which the spacecraft approached them}
\label{emjs}
\end{figure}
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{fig/EMJS_plot_noplanets}
\caption{Another depiction of the EMJS trajectory, without the planetary ephemeris
arcs}
\label{emjs_nop}
\end{figure}
The second phase of this trajectory also functions quite similarly to the second phase
of the previous trajectory. In this case, there is a little bit more thrusting necessary
simply for steering to the Jupiter flyby than was necessary for Saturn rendezvous in the
previous trajectory. However, most of this thrusting is for orbit raising in the
beginning of the phase, very similarly to the previous result. In this trajectory, the
Jupiter flyby occurs late July of 2029.
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{fig/EMJS_thrust_mag}
\caption{The magnitude of the unit thrust vector over time for the EMJS trajectory}
\label{emjs_mag}
\end{figure}
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{fig/EMJS_thrust_components}
\caption{The inertial x, y, and z components of the unit thrust vector over time for
the EMJS trajectory}
\label{emjs_components}
\end{figure}
Finally, this mission also has a third phase. The Jupiter flyby provides quite a strong
$\Delta V$ for the spacecraft, allowing the following phase to largely be a coasting arc
to Saturn almost one revolution later. During the most efficient part of the journey,
some thrust in the velocity direction accounts for a little bit of orbit-raising, but
the phase is largely natural. Because of this long coasting period, the mission length
increases considerably during this leg, arriving at Saturn in December of 2037, over 8
years after the Jupiter flyby.
However, there are many advantages to this approach relative to the other trajectory.
While the fuel use is also slightly higher at $530.668$ kilograms, plenty of payload
mass is still capable of delivery into the vicinity of Saturn. Also, it should be noted
that the incoming excess hyperbolic velocity at arrival to Saturn is significantly
lower, at only $3.4774$ kilometers per second, meaning that less of the delivered
payload mass would need to be taken up by impulsive thrusters and fuel for Saturn orbit
capture, should the mission designer desire this.
Also, as mentioned before, the launch energy requirements are quite a bit lower. Having
a second mission trajectory capable of launching on a smaller vehicle could be valuable
to a mission designer presenting possibilities. According to an analysis of the Delta IV
and Atlas V launch configurations\cite{c3capabilities} in Figure~\ref{c3}, this
reduction of $C_3$ from around 60 to around 40 brings the sample mission to just within
range of both the Delta IV Heavy and the Atlas V in its largest configuration, neither
of which are possible for the other result, meaning that either different launch
vehicles must be found or mission specifications must change.
\begin{figure}[H]
\centering
\includegraphics[width=\textwidth]{fig/c3}
\caption{Plot of Delta IV and Atlas V launch vehicle capabilities as they relate to
payload mass}
\label{c3}
\end{figure}
\chapter{Conclusion} \label{conclusion}
\section{Overview of Results}
A mission designer's job is quite a difficult one and it can be very useful to have
tools to automate some of the more complex analysis. This paper attempted to explore one
such tool, meant for automating the initial analysis and discovery of useful
interplanetary, low-thrust trajectories including the difficult task of optimizing the
flyby parameters. This makes the mission designer's job significantly simpler in that
they can simply explore a number of different flyby selection options in order to get a
good understanding of the mission scope and search space for a given spacecraft, launch
window, and target.
In performing this examination, two results were selected for further analysis. These
results are outlined in Table~\ref{results_table}. As can be seen in the table, both
resulting trajectories have trade-offs in mission length, launch energy, fuel usage, and
more. However, both results should be considered very useful low-thrust trajectories in
comparison to other missions that have launched on similar interplanetary trajectories,
using both impulsive and low-thrust arcs with planetary flybys. Each of these missions
should be feasible or nearly feasible (feasible with some modifications) using existing
launch vehicle and certainly even larger missions should be reasonable with advances in
launch capabilities currently being explored.
\section{Recommendations for Future Work}\label{improvement_section}
In the course of producing this algorithm, a large number of improvement possibilities
were noted. This work was based, in large part, on the work of Jacob Englander in a
number of papers\cite{englander2014tuning}\cite{englander2017automated}
\cite{englander2012automated} in which he explored the hybrid optimal control problem of
multi-objective low-thrust interplanetary trajectories.
In light of this, there are a number of additional approaches that Englander took in
preparing his algorithm that were not implemented here in favor of reducing complexity
and time constraints. For instance, many of the Englander papers explore the concept of
an outer loop that utilizes a genetic algorithm to compare many different flyby planet
choice against each other. This would create a truly automated approach to low-thrust
interplanetary mission planning. However, a requirement of this approach is that the
monotonic basin hopping algorithm algorithm must converge on optimal solutions very
quickly. Englander typically runs his for 20 minutes each for evolutionary fitness
evaluation, which is over an order of magnitude faster than the implementation in this
paper to achieve satisfactory results.
Further improvements to performance stem from the field of computer science. An
evolutionary algorithm such as the one proposed by Englander would benefit from high
levels of parallelization. Therefore, it would be worth considering a GPU-accelerated or
even cluster-computing capable implementation of the monotonic basin hopping algorithm.
These cluster computing concepts scale very well with new cloud infrastructures such as
that provided by AWS or DigitalOcean.
Finally, the monotonic basin hopping algorithm as currently written provides no
guarantees of actual global optimization. Generally optimization is achieved by running
the algorithm until it fails to produce newer, better trajectories for a sufficiently
long time. But it would be worth investigating the robustness of the NLP solver as well
as the robustness of the MBH algorithm basin drilling procedures in order to quantify
the search granularity needed to completely traverse the search space. From this
information, a new MBH algorithm could be written that is guaranteed to explore the
entire space.