Fixed - Wing Long - Range Covert Flight Optimization in Collaboration between DJI and FastLab
Neural Path Planning
A neural network path planner was proposed to learn data for trajectory optimization. It reads information from maps and poses. The structure is divided into three layers: feature extraction layer, global distribution layer, and local correction layer. The feature extraction layer is used to extract information from maps and poses; the global distribution layer aims to locate the general area of the path; the local correction layer focuses on finding the precise locations of these path points in the area. This approach has three advantages. First, because it is a neural network, its inference speed is relatively stable. Second, the neural network size can be made very small, enhancing its efficiency. Third, since it learns data from backend trajectory optimization, it takes into account the process of backend trajectory optimization, providing a better initial value for the backend. I have applied this method on Ackerman vehicles and achieved certain results.
Fixed-Wing Long-Range Covert Flight
The generation of global trajectories for fixed-wing aircraft follows a hierarchical framework. Initially, a sampling-based dynamic path planning algorithm is used, targeting exploration within the global environment to find a better path topology. The paths generated in this step are not smooth and may not be entirely dynamically feasible. To address this issue, a numerical optimization-based algorithm is employed to further optimize the output of the previous step in the continuous state space. This ensures stealth in flight while effectively improving the smoothness and dynamic feasibility of the trajectory. Due to the order of magnitude difference in the map size and the altitude range of the aircraft, the trajectory planning problem is modeled as a two-dimensional trajectory generation problem. Here, the aircraft is set to maintain a constant altitude of 60 meters, with a flight speed of 150 meters per second. Mountainous terrains on the map exceeding 60 meters in height are treated as impassable obstacles.
Sampling-Based Global Covert Rough Path Planning
In the application of this project, it is necessary to specially design the loss function. To ensure covert flight, the loss function needs to be specifically designed based on the level of concealment provided by the environment, making covert paths more likely to be selected and integrated into the optimal trajectory. To achieve this effect, the project proposes to first conduct terrain estimation. During sampling, the terrain difference will be integrated along the trajectory between sampled state points to assess the level of concealment of the terrain. Here, the terrain difference will be defined as the elevation difference within a prescribed square area centered on the state points.
For any straight line connecting two nodes, the loss function for that line segment is defined as follows:
In the equation, w represents the weight that measures the importance of concealment, and p(s) denotes the coordinates of a point on the straight line. It can be observed that when the weight w is set to 0, the loss function reduces to the length of the line segment. However, when the weight is non-zero, the greater the difference in terrain, the smaller the loss value for that point.
Gradient-Based Efficient Trajectory Optimization
In reality, due to limitations in sampling resolution and the number of samples, the trajectory obtained in the previous section is relatively coarse. Some segments of the trajectory may not be kinematically feasible and may even pose a collision risk. Therefore, in this section, we aim to improve the smoothness and feasibility of the trajectory by using the previous path as an initial guess and applying optimization-based methods to deform the path in continuous space. In this chapter, we parameterize the trajectory using piecewise polynomials, denoted as p(s). Each segment of the trajectory is represented by pi(s), where i refers to the i-th segment. In this project, the optimization formulation for trajectory planning is as follows:
In the formulation, d represents the dimension of the control variable, and the integral term has the physical interpretation of minimizing energy to improve trajectory smoothness. In the implementation details, d is set to 3, which means minimizing the jerk (rate of change of acceleration) of the trajectory. f denotes the concealment function, which aims to guide the trajectory towards areas with higher concealment. Gcos is the obstacle avoidance function, which aims to keep the trajectory away from restricted areas such as mountains by constructing an Euclidean signed distance field. Intuitively, we can estimate the distance value and gradient at each point to push the entire trajectory away from restricted areas. kmax represents the maximum curvature of the trajectory to ensure nonholonomic dynamics. To ensure continuity throughout the motion, high-order continuity is required at the connection points between adjacent polynomials. This continuity is denoted as D. To eliminate the equality constraints in the optimization formulation, this project uses the MINCO trajectory class to replace traditional piecewise polynomials without any special features. The advantage of this trajectory class is that it can transform the parameter space of piecewise polynomials from polynomial coefficients and time to path points and "time" while satisfying the condition of minimum energy. The transformation is illustrated in the figure below:
This method reduces the number of optimization variables in trajectory planning and eliminates equality constraints, greatly increasing planning efficiency. Next, I will focus on introducing the concealment function f. Similar to the previous section, we use a grid map to represent the environment. In the optimization of this section, each grid cell stores the steepness at that location, which corresponds to the terrain difference mentioned in the previous section. To enhance the concealment of the trajectory, we aim to maximize the terrain difference at every point on the trajectory. Therefore, the concealment function is defined as f = -h, where f represents the concealment and h represents the terrain difference. To facilitate subsequent gradient-based numerical optimization, the gradient of concealment with respect to position was derived analytically. In practice, since this project uses a discrete grid map to represent the environment, it inherently suffers from discontinuities, which is not conducive to optimization computations. To address this issue, bilinear interpolation is employed to smooth out the discontinuities caused by the discrete grid representation.
With the above method, we can approximately and analytically compute the concealment value at any point coordinate in the input map, which is beneficial for subsequent numerical optimization. In the actual optimization process, to handle the continuous-time constraints in the optimization problem, each constraint is discretized. The constraints are approximated by imposing them on the discrete points to ensure that the entire trajectory satisfies the constraints. Ultimately, the inequality constraints are transformed into penalty terms applied to the original objective function. By discretizing the constraints and using penalty terms, the optimization problem can be formulated as a constrained optimization problem, where the constraints are enforced through the penalty terms. This allows for the application of numerical optimization techniques to find an optimal trajectory that satisfies the given constraints while minimizing the objective function.
Simulation Verification
I simulated based on a real geographical environment and constructed a height map that exists in the real world. I used the Unreal Engine for terrain rendering, and the final simulation result is shown in the image below.
In the image, the bluer the color, the higher the terrain elevation and the higher the concealment in the surrounding area. The black line represents the path output by the front-end RRT* algorithm, while the yellow line represents the trajectory further optimized through back-end numerical optimization. From the image, we can observe that while ensuring the kinematic feasibility of the trajectory, the yellow curve will try to closely follow the mountainous regions (light blue-green areas) to achieve high concealment flight.
The y-axis of the graph represents the terrain difference at each position, while the x-axis represents the arc length (distance traveled). From the graph, we can see that the aircraft will try to fly towards areas with larger terrain differences to ensure a higher level of concealment during flight. This means that the aircraft tends to prefer flying in regions where there are significant changes in terrain, in order to take advantage of the terrain's masking effect. This strategy helps the aircraft reduce the probability of detection during flight and increases its level of concealment.
Learning-Aided Fixed-Wing Long-Range Covert Flight Optimization
I plan to accelerate the path planning for fixed-wing aircraft by replacing the original RRT (Rapidly-exploring Random Tree) algorithm with a neural network-based front-end path planner in the first stage, taking into account path stealthiness. I have generated topographical and elevation data for a mountainous terrain and performed path planning and trajectory optimization considering stealthiness on this map. By reading the optimized trajectory data, the neural network is trained. This neural network may achieve faster speeds than the traditional RRT algorithm while considering path stealthiness. This work will be submitted to the 2024 IROS (International Conference on Intelligent Robots and Systems).