3. WILDFIRE MISSION ARCHITECTURE
3.4. LASE Architecture Search Algorithms
3.4.5. Optimal Return Path Mode
For the final stage of the algorithm development, a method is required that allows the vehicle to return back to the point of origin, using the acquired fire perimeter data, and while determining an optimal return solution. To accomplish these tasks, a ‘rubber band’ solution, shown in Figure 38, is necessary which uses the predetermined fire perimeter points to direct the vehicle around any dangerous areas while also removing unnecessary segments of the course. As a result, the proposed answer to the optimal return path is akin to stretching a string across a region filled with gaps, as depicted below. The consistent counterclockwise rotation around the fire perimeter allows a clockwise rotation to always be utilized back to the origin.
Figure 38: LASE Aircraft Return Path Algorithm Objectives
In order to achieve the proposed solution, the basic answer is provided by a convex hull algorithm which operates by attempting to locate the outermost points in a set of two- dimensional or three-dimensional points. When these points are connected, they enclose the remaining coordinates as depicted in the optimized solution above. Though the convex hull
algorithm is quick, robust, and low-cost computationally to implement, several caveats exist to employing this solution on the LASE UAV. The engagement criterion to enter this mode depends on the available aircraft fuel or whether the aircraft has completed its mission. The convex hull must be computed at each update interval to provide a total distance the vehicle has, and must, travel in order to return to the launch location. The convex hull algorithm must also have at least three points that are not collinear. Finally, the algorithm only returns a series of exterior points from an arbitrary set. The solution returned by the algorithm must then be sorted to ensure the origin was not removed due to enclosure and the series rotation maintains a clockwise rotation back to the origin.
From these constraints, the aircraft is required to identify an instantaneous solution at each sampling interval while detecting a fire perimeter. In order for this to be accomplished, a path is tested against the convex hull algorithm whenever the number of stored indices is greater than or equal to three nodes. Considering the origin and current aircraft location cannot be excluded, the operation is initiated whenever a single perimeter point is added to the listing. The sequence of points is then entered into the convex hull algorithm, and a closed circuit of nodes is returned. A series of checks and modifications must then be executed to ensure that the result returned by the convex hull is a valid sequence, with the proper rotation, and with no important points omitted.
The order of points returned by the convex hull algorithm must be first verified because the algorithm only encloses the submitted points, but does not specify an order of rotation around the fire perimeter. Since the aircraft has specified a counterclockwise flight path around the fire perimeter, the return path can be determined as a clockwise rotation from the current aircraft
location to the launch origin. As shown below, the order of rotation can be determined using a cross product relationship which checks the location of a third node to a line segment defined by the first two points. Since the convex hull connects the points in the order as they appear along the perimeter to form a convex polygon, extracting any sequential three points is sufficient to determine the rotation. The value output by this algorithm should always be negative, assuming that the return route is constructed from the launch origin to the current aircraft location.
1
x Coordinate 1 distance east from origin (feet)
1
y Coordinate 1 distance north from origin (feet)
2
x Coordinate 2 distance east from origin (feet)
2
y Coordinate 2 distance north from origin (feet)
3
x Coordinate 3 distance east from origin (feet)
3
y Coordinate 3 distance north from origin (feet)
(
y3 y1) (
x2 x1) (
x3 x1) (
y2 y1)
λ= − ⋅ − − − ⋅ − (15)
If λ<0: Rotation of points from 1, 2, to 3 is Counterclockwise If λ>0: Rotation of points from 1, 2, to 3 is Clockwise
If λ=0: Points 1, 2, and 3 are collinear
(16)
Once the rotation is determined, the next step is identifying the starting node in the solution polygon. Since a convex hull merely returns the enclosing points in a set, there is no guarantee that the algorithm has established the origin as the first point in the series. Assuming that each point added to the algorithm is listed in sequential order, the lowest node number becomes the starting node, while the last point with the highest node index will be the most recently added node. Using this information, the lowest index is sought for since there is no assurance that the origin was not excluded from the solution due to enclosure. Once this point is located, the convex hull solution is split and reorganized to ensure the solution starts at the first node and builds up to the current aircraft location.
The actual return path construction can then begin using the newly ordered and verified solution sequence. The first step in the process is to check the identity of the first node indexed in the convex hull sequence. If the first node listed is not the origin, the coordinates for the origin are forcefully added to the return path to ensure it is the final destination. Each node indexed in the solution is then added in increasing order to the return path until the highest numbered node in the path is reached. The current aircraft location is then added as the last point in the return path. If a return solution home is being constructed then this process is repeated each time interval; however, if the return path is being followed to the home location, the same algorithm is reused, but the current aircraft location is not kept in the path.