The design of the hyperloop aeroshell is not only very time consuming work for humans, but humans have no way of knowing if the design is as optimal as possible with the constraints given. The design task consists of the optimization of a 3D surface, which can be approximated by a 3D point cloud. The position of all these points, meeting the constraints, make up the search-space. Somewhere in that search-space lies the optimal shape for the hyperloop aeroshell. But with the time constraints that hyperloop faces, it will never be possible for a human to go through the whole searchspace, even a small part of it, even if done efficiently.
One of the features that makes machine-learning algorithms so useful is that they are “universal approximators”. Where an aircraft designer has to have extensive knowledge about the laws of physics and apply them to the aircraft design, a machine-learning algorithm only needs to have an evaluation function that calculates how well it performed. It can search for a local optimal solution on its own.
This is a very complex job, but the AI and computing technology of today are up to the task. Just look at one of the first ever AI-designed hypercars by Divergent3D. The design of structural and aerodynamic parts often took mere minutes, compared to the weeks of work it would take for humans. All the AI-designed parts were also lighter and simpler, made up of fewer subparts, than their human-designed counterparts. This approach can also be used in the design process of the hyperloop concept, in order for the optimal designs to be found for this new mode of transport. A good starting point for that, is the aeroshell of a hyperloop pod.
Approach
Firstly, the general approach is summarized, after which the three individual components of this approach will be explored in more detail. The machine-learning model should be connected to a CAD program to be able to let the CAD program handle the evaluation of the model. The algorithm initialises a 3D point cloud (initialization), from which a 3D surface can be extracted in the CAD program. The program evaluates the shape based on one or more optimization criteria, e.g. the drag coefficient, which tells the machine-learning algorithm how it performed (evaluation). The algorithm executes changes to the surface based on its performance, after which it generates a new 3D point cloud (generation). The cycle can be repeated until a desirable local optimum is reached. The initialisation phase has a large influence on the local optimum that the algorithm reaches, while the evaluation phase has the largest influence on the time it takes to reach the optimum.
Initialisation
The algorithm needs to have a point of reference when starting. This is not strictly required, but it greatly speeds up the process. It will take the algorithm significantly less time if it starts close to a local optimum, than if it has to build a shape without any reference. We propose that the algorithm starts from the old hyperloop aeroshell design, because it has already been developed to an efficient shape.
Constraints are also very important when optimizing with machine-learning techniques. Some constraints of the hyperloop aeroshell are: 1) the minimum diameter, 2) the maximal allowable length of the nose, 3) bidirectionality, to make it possible to move forwards and backwards without turning around, 4) operational speed equal to the cruise speed of the hyperloop .
Evaluation
The model has to be evaluated based on a fixed set of criteria, so we can measure the performance of each shape relative to the others. Some criteria that could be used for the hyperloop design are: shockwave formation, pressure drag and weight of the aeroshell.
The shockwave formation and pressure drag both contribute to the overall drag on the aeroshell. In fact, they are the major contributors as the friction drag is marginal in near-vacuum conditions. The weight however is an important parameter because the pod weight, similar to any vehicle, is directly proportional to the amount of energy needed to move it a certain distance. The lighter the pod the less burden would be present on the propulsion system.
All these evaluation (or fitness) parameters are taken together in a weighted evaluation function. We propose the use of the sigmoid activation function to normalize the weighted evaluation criteria between -1 and 1. This lets the algorithm compare different configurations more easily.
Generation
The generation is done by a machine-learning algorithm. We will propose two different algorithms in this part of the article. Particle swarm optimization (PSO) and evolutionary optimization (EO). Both algorithms generate particles, or agents, that are slightly different from the previous generation based on how well each particle performs. Each particle has a so-called ‘position’, which is a set of features. In our case that featureset is the shape of the aeroshell. It also has a velocity, which can be seen as the speed with which the features change for a certain particle. The goal for each particle is to reach an optimal position, which it does by tweaking its velocity until it has reached a local optimum.
PSO is a method that optimizes a problem by iteratively trying to improve a candidate solution with regard to a given measure of quality. It performs the optimization by creating a population of particles (which are candidate solutions) and moving these particles around in the search-space according to a simple mathematical formula over the particle’s position and velocity. Each particle’s movement is influenced by its local best known position, but is also guided toward the best known positions in the search-space, which are updated as better positions are found by other particles. This is expected to move the swarm toward the best solutions.
An EO uses mechanisms inspired by biological evolution, such as reproduction, mutation, recombination, and selection. Candidate solutions, like particles in PSO, play the role of individuals in a population. The better/fitter an individual performs according to the fitness function, the more children inherit features from this solution. This fitness function is based on the evaluation function described earlier in this article. Evolution of the population then takes place after the repeated application of the above operators. First a population of candidate solutions is selected by randomly adapting the initial hyperloop aeroshell slightly. Then all solutions are tested for fitness, after which the features of the best solutions are combined and slightly mutated. This process is repeated until a desirable solution is found.
Conclusion
Hypercar manufacturers and aerospace companies are paving the way for using AI as a design tool. Hyperloop can benefit from this wave of innovation by using AI to help design the aeroshell. The problem needs to be well-defined by constraints and have a very clear evaluation function. The constraints can be defined without much trouble, but the evaluation function should be researched further. In addition, which of the two algorithms is best to use depends on the goal of the design task. If the design task is to explore a large part of the searchspace around the initial design, then it is likely optimal to choose evolutionary optimization with a large mutation-rate. While it is likely more efficient to choose particle swarm optimization if the design task is to tweak the initial design to a slightly better version of itself. Furthermore the generation model, whether it is PSO or EO, still contains a number of parameters like swarm-size and mutation-rate that need to be researched further to find the optimal values. They should be configured, to let the model give the most amount of performance in the least amount of time. Following this research, an initial test can be implemented to check the practical feasibility of this project.
By Epoch and Delft Hyperloop, April 2021
1 Comment
Petrica Tudosa · April 13, 2021 at 4:07 pm
I wish you a lot of success and a lot of patience, to be able to set up a bodel with good results, I have been trying for 4 years and I have reached 93% I would be very happy to see how you achieve this step