A Novel Model for 3D Motion Planning for a Generalized Dubins Vehicle with Pitch and Yaw Rate Constraints
††thanks: 1 Deepak Prakash Kumar is a Postdoctoral Scholar in the Center of Resilient Autonomous Systems at University of California, Irvine, CA 92697, USA (e-mail: deepakprakash1997@gmail.com).
2 Swaroop Darbha is with the Department of Mechanical Engineering, Texas A&M University, College Station, TX 77843, USA (e-mail: dswaroop@tamu.edu).
3 Satyanarayana Gupta Manyam is with DCS Corporation, Dayton, OH 45431 USA (e-mail: msngupta@gmail.com)
4 David Casbeer is with the Control Science Center, Air Force Research Laboratory, Wright-Patterson Air Force Base, OH 45433 USA (e-mail:
david.casbeer@us.af.mil).
DISTRIBUTION STATEMENT A. Approved for public release. Distribution is unlimited. AFRL-2025-3035; Cleared 06/17/2025.
Abstract
In this paper, we propose a new modeling approach and a fast algorithm for 3D motion planning, applicable for fixed-wing unmanned aerial vehicles. The goal is to construct the shortest path connecting given initial and final configurations subject to motion constraints. Our work differs from existing literature in two ways. First, we consider full vehicle orientation using a body-attached frame, which includes roll, pitch, and yaw angles. However, existing work uses only pitch and/or heading angle, which is insufficient to uniquely determine orientation. Second, we use two control inputs to represent bounded pitch and yaw rates, reflecting control by two separate actuators. In contrast, most previous methods rely on a single input, such as path curvature, which is insufficient for accurately modeling the vehicle’s kinematics in 3D. We use a rotation minimizing frame to describe the vehicle’s configuration and its evolution, and construct paths by concatenating optimal Dubins paths on spherical, cylindrical, or planar surfaces. Numerical simulations show our approach generates feasible paths within 10 seconds on average and yields shorter paths than existing methods in most cases.
I Introduction
The use of Unmanned Aerial Vehicles (UAVs) is rapidly growing in civilian and military applications, including search and rescue and surveillance. Fixed-wing UAVs are of particular interest due to longer flight times, larger payload capacity, and the ability to fly at higher altitudes[1, 2]. However, they are persistently in motion, i.e., cannot stop or hover mid-air, and cannot change their heading angle instantaneously. Hence, they have a bound on the rate of change of their heading/orientation, which manifests itself as curvature constraints on the path. Motion planning is important for these vehicles, in which the goal is to plan the optimal path to travel from one configuration (i.e., position and orientation together) to another. The objective of interest in this paper is to obtain the minimum-time (or distance) path(s). We seek a finite set of candidate paths that includes the optimal path for any boundary condition. These candidate paths are suitable for constructing paths for fixed-wing aircraft or yaw rate-constrained vehicles.
Motion planning for yaw rate-constrained vehicles is typically addressed by considering a simplified kinematic model, called the Dubins model. This models a vehicle traveling at a constant speed and has a minimum turning radius constraint, which is suitable for UAVs traveling at constant altitude (in 2D). Dubins [3] solved the problem of the shortest path between a pair of configurations on a plane. It was shown that the optimal path is of type or a degenerate path of the same, where denotes a left or a right turn of minimum turning radius, and denotes a straight line segment. Although Dubins showed this result using geometric techniques, the same result was later derived using Pontryagin’s Minimum Principle [4] in [5] using simpler proofs. Various variants of the planar path planning problem have been explored with variations in the model and/or the objective, such as in [6], where different left and right turning radius was considered.
Motion planning for such vehicles in 3D has also been an area of interest, where the shortest path to travel from one configuration to another, considering their motion constraints, is sought. The 3D problem applies not only to fixed-wing UAVs but also to underwater gliders and robots [7, 8]. Although specifying the heading angle alone uniquely defines the orientation of the vehicle in the 2D problem, the 3D problem requires both the heading angle and the plane in which the UAV lies. The UAV’s plane can be uniquely described using two additional angles (pitch and roll) or by a vector along its lateral or normal direction.
Simple kinematic models have also been used to tackle the 3D problem, where, similar to the 2D problem, the generated path can be tracked using a lower-level controller [9]. Because these paths can be computed very quickly, they can be combined with algorithms such as Rapidly Exploring Random Tree (RRT) to find feasible, obstacle-avoiding routes [10]. This method has also been experimentally demonstrated using an ARDrone in [11].
To our knowledge, the first exploration of the 3D problem was by Sussman [12]. The author showed that the optimal path is of type or a degenerate111Degenerate paths of and paths are and . version of these paths, or a helicoidal arc to connect a given location and heading direction222We note that in 3D, specifying only the location and heading direction does not fully determine the vehicle’s configuration, since the orientation of the plane containing the vehicle is not uniquely defined. In contrast, for 2D motion planning, location and heading are sufficient to uniquely specify the configuration.. Unlike the 2D problem, there may exist infinitely many paths between the initial and final configurations since the plane containing the segments can be freely chosen. Hence, efficient construction of paths has been explored in the literature. In [13], a path was constructed for instances where the initial and final locations are spaced sufficiently far apart using geometric and numerical approaches. In a later work [14], the authors adopted this path as an initial guess for a nonlinear optimization problem that was solved using a multiple-shooting method to improve the solution. The path construction was addressed in [15] as an inverse kinematics problem for a five degrees-of-freedom robotic manipulator. Analytical solutions were obtained for the path parameters to improve computational efficiency.
In [16] the 3D problem was addressed with a model that has two controllable inputs - one for yaw rate, and another for the rate of change of the altitude. In this work, a “Dubins airplane model” was proposed, and it was shown that the optimal trajectory comprises segments with arcs of minimum turning radius, straight lines, or a Dubins path of a certain length. Depending on the altitude difference between the initial and final locations, feasible solutions were generated by introducing additional segments to attain the desired altitude. This model was modified in [17], wherein a pitch angle constraint was introduced. Contrary to [16], this paper generates trajectories by incorporating helicoidal segments to attain the desired altitude when necessary. Additionally, the constructed paths were validated by simulations using a six-degree-of-freedom model (given in [18]) and a vector-field-based guidance law, inspired by [19], for tracking.
The 3D motion planning problem has also been addressed using the 2D Dubins result in [20]. The authors consider a total curvature constraint and a bounded pitch angle for the vehicle. They decouple the path to connect the given initial and final locations and heading vector into horizontal and vertical components. In this regard, they use the horizontal projection of the configurations to connect the locations and heading angles. The obtained path length is utilized as the coordinate in the vertical plane, with the desired altitude difference to be attained serving as the coordinate. Using iterative optimization of the horizontal and vertical turning radii, a feasible solution is constructed such that the total curvature bound and pitch angle bounds are satisfied. The authors used this solution to provide an initial guess to a non-linear optimization problem to further refine the path in [21].
In the existing literature, we observe that the complete orientation of the vehicle has not been considered for 3D motion planning. This is because the description of the pitch and heading angles alone does not uniquely describe its orientation. For example, Fig. 1 shows two orientations for the same vehicle moving along a straight line trajectory with a pitch angle of and a heading angle of one where the roll angle is and another where the roll angle is Infinitely many orientations exist for the same trajectory. However, from these figures, we can observe that prescribing the longitudinal direction and the lateral or normal direction of the vehicle would uniquely describe the orientation.333We remark here that in Fig. 1, unit vectors along the longitudinal, lateral, and normal directions are referred to as tangent, tangent normal, and surface normal vectors, respectively. The latter notation would be used later in the paper to describe the rotation minimizing frame model. While the study in [22] models the complete configuration of a general robot, it is unclear how their model relates to the kinematics of a fixed-wing UAV.


The literature on path planning for aerial robots has primarily focused on models with a single control input, such as yaw rate, or a single constraint on the path’s curvature. In the 3D generalization of path planning, a single control input alone cannot capture the range of motions. This is because there are two elementary motions of interest for the motion planning of aerial vehicles: pitch and yaw. For fixed-wing UAVs, pitch motion is achieved using elevators, and yaw motion is achieved with rudder and/or aileron444Ailerons control the roll of the UAV, and this roll motion leads to a corresponding yaw motion for the vehicle. [18]. Since yaw and pitch motion are controlled by separate actuators, considering a single control is not sufficient. Hence, it is crucial to consider two control inputs: a bounded pitch rate and a bounded yaw rate. These constraints correspond to the minimum turning radii, and , of the path’s curvature. The bounds on the pitch and yaw rates manifest as locally inaccessible spherical regions of radii and , respectively. 555Imagine a vehicle moving in 3D space with a maximum allowable yaw rate (i.e., how quickly it can turn left or right). Due to this constraint, the vehicle cannot immediately change direction; it needs a certain minimum turning radius to execute a yaw maneuver. A yaw motion sphere is a spherical region around the vehicle that it cannot enter directly unless it has traveled a sufficient distance to allow for the required turning maneuver. This is analogous to the turning circles on the left and right in the 2D Dubins path problem. Similar to the yaw motion spheres that define inaccessible regions in the horizontal plane, pitch constraints define vertical maneuverability limits. Though two control inputs are considered in [16], the second control input is the rate of change of the altitude of the vehicle; furthermore, the pitch angle is not considered in this model, which make it tmore appropriate for a quadcopter.
A demonstration of the limitations of state-of-the-art approaches that rely on a single control input is presented in Fig. 2 for two instances. In both of these cases, paths were generated using the method from [20] - for which the code is publicly available. The minimum turning radius for this model was set to 40 meters to enforce the curvature constraint. In the following, we analyze these examples to explain why this path planning method is either infeasible or inefficient for the proposed (3D) model.
-
1.
The proposed model incorporates two independent control inputs for the yaw and pitch rates. We set the minimum pitch turning radius, , to 40 meters666In the paper, we will interchangeably use “m” to denote “meters”. for the first example. This choice is consistent with the parameter used in [20]. Since the yaw turning radius, , can be chosen independently, we set it to 50 meters. The solution generated by [20], shown in Fig. 2a, violates the yaw rate constraint by entering the yaw motion sphere. Such a maneuver is infeasible as the vehicle must travel a sufficient distance outside the sphere before entering it. This behavior is analogous to the infeasibility of entering the left or right turning circles in the 2D Dubins problem [3].
-
2.
In the second example, we alternately pick in our model to be the same as the parameter in [20], which is meters. Since is free to choose, we set to be equal to meters. The path obtained using the algorithm from [20] is shown in Fig. 2b. We observe that the path enters one of the pitch motion spheres (which lies at the top of the vehicle), and hence violates the pitch rate constraint.
Alternatively, one could argue that the maximum of and can be chosen as the minimum turning radius in [20]. However, this would lead to inefficient motion planning, since the vehicle would take larger-than-necessary turns in some instances.


The presented issues were addressed by the authors in [23], where a special case of motion planning on the surface of a sphere was studied. This paper provided insights for the 3D motion planning by considering a vehicle model with bounded yaw rate and pitch rate. Furthermore, the spherical motion planning problem was shown to arise as an intermediary problem to be solved for the 3D problem.
Having identified two major issues in the literature, the contributions of this paper are as follows:
-
1.
We present a novel model using a rotation minimizing frame, also called the Bishop frame, to obtain the shortest path for a vehicle subject to pitch rate and yaw rate constraints. We build on the insights provided in [23] for the 3D problem.
-
2.
We prove that the pitch rate and yaw rate constraints manifest as four spheres around the vehicle that represent temporarily inaccessible regions, thereby appropriately generalizing the 2D Dubins model to 3D.
-
3.
We propose a path construction algorithm that consists of three classes of paths. The main idea is to build path segments on spherical surfaces that are tangent to the initial and final configurations, and these segments are connected by an intermediary surface. This surface could be a cylindrical envelope, a cross-tangent plane, or another spherical surface.
-
4.
We pose and solve a Dubins-type path planning problem subject to curvature constraints on a cylindrical surface. To the best of our knowledge, the cylindrical motion planning problem has not been addressed in the literature. The proposed solution method involves unwrapping the surface to a two-dimensional plane, computing the optimal Dubins path, and then mapping back onto the cylindrical surface.
-
5.
We present extensive numerical results on several instances. We show the effect of model that defines the complete configuration of the vehicle, (i.e., heading and lateral orientation and the impact of minimum turning radii on the best feasible path. We also observe that our algorithm can produce a high-quality feasible solution within 10 seconds. Additionally, we provide the code in a publicly available repository.777The code is available at https://github.com/DeepakPrakashKumar/3D-Motion-Planning-for-Generalized-Dubins-with-Pitch-Yaw-constraints.
II Modeling and Geometric Preliminaries
Let and denote the time and arc length, respectively, and denote the instantaneous location of the vehicle. We consider a Rotation-Minimizing frame, also called a Bishop frame [24], attached to the center of mass of the UAV. Let denote the unit vectors of the Bishop frame with directed along the longitudinal and lateral directions of the vehicle, respectively. The vector is along the normal direction of the vehicle. Fig. 3 shows the vehicle configuration with the vectors and .

The instantaneous angular velocity of the frame can be written as
with denoting the components in the , and directions, respectively. One may think of them as the roll, pitch, and yaw rates of the body, respectively. Notably, the Rotation Minimizing Frame (RMF) is constructed so that : there is no rotation about the tangent, minimizing frame twisting (essentially, the roll rate is set to zero). The kinematics of the frame then satisfy:
A key property of an RMF is that and change only in the direction of .
Assume that the vehicle moves at a constant, nonzero longitudinal speed . Defining
(1) |
the kinematic equations parameterized in terms of become
(2) | ||||
(3) | ||||
(4) | ||||
(5) |
The bounds for control inputs and , which we refer to as geodesic curvature and normal curvature, respectively, are stated as shown below,888We use the notation and , since they have the same form as that of the geodesic and normal curvatures in the Darboux frame model, a differential geometric model.
(6) |
We shall later show that is the minimum turning radius corresponding to pitch motion and is the minimum turning radius corresponding to the yaw motion. The objective is to compute the minimum distance trajectory from the initial to final configuration, defined by and . Hence, the cost to minimize is Geometrically, the path planning problem can be depicted as shown in Fig. 4. A detailed description of this figure follows.

In Fig. 4, it can be observed that four spheres are constructed, which are tangential to the vehicle configuration. To understand how they appear, we need to understand the geometric impact of the curvatures, and To this end, we derive the closed-form expression for and over an interval wherein and are constants. The obtained expressions are shown in Appendix -A.
We remark here that since the control inputs appear linearly in the differential equations (3)-(5), and a minimum time problem is considered, the optimal control actions are expected to be bang-bang from Pontryagin’s minimum principle [4]. Therefore, it is sufficient to consider intervals in which and are constant. Furthermore, it suffices to consider and .
Using the closed-form expressions derived in Appendix -A, we state and prove the following two Lemmas.
Lemma 1.
When or the corresponding segment lies on spheres with radius whose center lies along or , respectively. Furthermore, such segments correspond to a maximum ascent or descent motion of the vehicle with a turning radius of
Proof.
The proof is provided in Appendix -B. ∎
The following lemma states a similar result in a different axis, and the proof follows the same reasoning.
Lemma 2.
When the corresponding segment lies on spheres with radius whose center lies along or . Furthermore, such segments correspond to maximum turn (left or right) motion of the vehicle with a turning radius of
From these two lemmas, we see that the normal curvature governs the pitch motion, while the geodesic curvature governs the yaw motion. In fact, these curvatures directly correspond to the vehicle’s pitch rate and yaw rate, respectively (which is expected based on the Bishop frame setup and the definitions in (1)). When the vehicle moves with its maximum pitch rate and zero yaw rate, it follows a great circle of radius on the orange or purple sphere shown in Fig. 4. This result comes from Lemma 1. Since the vehicle travels at unit speed, the time to complete the circle is Over this time, the pitch angle changes by , so the pitch rate is A similar argument holds for the yaw rate, giving a maximum value of . Therefore, and represent the vehicle’s pitch and yaw rates, respectively.
By varying and , we obtain nine distinct motion primitives, shown in Fig. 5. These were generated using the closed-form expressions, presented in Appendix -A. Using Lemma 1, we find that the segments and have radius , corresponding to motion with maximum absolute pitch and yaw rates. Here, and denote a left turn and right turn, respectively, which correspond to and respectively. Additionally, subscripts “” and “” are used to refer to the segments that lie on the “inner” sphere and “outer” sphere, respectively; the inner sphere corresponds to and the outer sphere corresponds to The segments and result from pure pitch motion (), while and result from pure yaw motion. When both curvatures are zero (), the vehicle moves in a straight line segment .
Using the obtained motion primitives and the observation that and attaining values of and yields two spheres each (a pair along and a pair along ), we can observe that at both the initial and final configuration, four spheres exist around the vehicle. Additionally, portions of the optimal path will lie on one of the four spheres at the initial configuration and one of the four spheres at the final configuration999The only motion primitive that does not lie on a sphere is a straight line segment However, even in this case, a portion of the optimal path can be modeled to lie on one of the four spheres; however, the path will be trivial, i.e., of zero length.. Hence, we propose three classes of paths to construct a feasible path connecting one of the initial spheres with one of the final spheres. We construct the path using three types of intermediary surfaces (or classes): a cylindrical envelope, a planar surface, or a spherical surface. These three classes of paths are a generalization of the classical and paths for the planar Dubins problems. In our algorithm, we consider a sphere at the initial or final configuration to serve as a generalization of the turn segment () in a plane; furthermore, we consider the cylindrical envelope and planar surface to generalize the segment. In the following section, we describe the three classes of paths in more detail.


Remark: In general, the yaw and pitch rates for different UAVs may vary and can be coupled. The problem posed here is still of significant interest in obtaining lower and upper bounds for the shortest path length. One such case is illustrated by the region within the boundaries, shown in brown, in Fig. 6. However, by replacing the boundary with a rectangular region inscribed within this area, one can derive an upper bound that is a feasible solution. Similarly, by outer approximating the allowable region with a larger rectangular region, shown in green in Fig. 6, a lower bound for the optimal path length can be obtained.

III Shortest Path Construction
The constructed paths start and end on a spherical surface at the initial and final configurations. Three distinct classes of paths are presented, each using a different intermediary surface for the sub-path between the spheres, which can be cylindrical, planar, or spherical. We refer to the spheres centered along the -axis as the inner (orange, along ) and outer (purple, along ) spheres, as shown in Fig. 4. Similarly, the spheres centered along the -axis are called the left (green, along ) and right (blue, along ) spheres.
The intermediary sub-paths considered are as follows:
-
1.
In the first class, the sub-path is constructed using a cylindrical envelope. In this case, we connect the pair of spheres of the same type at the initial and final configurations. There are four such pairs: inner-to-inner, outer-to-outer, left-to-left, and right-to-right. Fig. 7a illustrates the cylindrical envelope between inner and outer spheres. We will later show that these paths satisfy the curvature constraints (6). The full construction is detailed in Section IV.
-
2.
In the second class of paths, a sub-path between a pair of spheres is constructed on a cross-tangent plane. For spheres of opposite type, such as inner-to-outer, outer-to-inner, left-to-right, or right-to-left, a path through a cylindrical envelope is not feasible. This is because the normal vector of the cylindrical surface, for pitch spheres and for yaw spheres, remains constant along the envelope and does not support a continuous feasible orientation between opposing directions. An example for the inner-to-outer case is shown in Fig. 7b. Details of this construction are provided in Section V.
-
3.
In the third class of paths, we construct sub-paths between pairs of spheres of the same type using an intermediary sphere. There are four such configurations: inner–outer–inner, outer–inner–outer, left–right–left, and right–left–right. These paths are designed for initial and final locations that are close to each other. An example of this type is illustrated in Fig. 7c, and the full construction is described in Section VI.



Remark.
Note that only the listed classes are possible using a single intermediary surface. For example, connecting an inner sphere at the initial configuration with a left sphere at the final configuration is not possible. A cylindrical surface cannot be used because the outward normal directions differ: for the inner sphere and for the left sphere. Since the normal vector remains constant across cylindrical, spherical, and frustum surfaces, none of these can bridge the two spheres. A planar surface also doesn’t work, as there is no common tangent plane between the two. For instance, the plane is tangent to the inner sphere but not to the left sphere (see Fig. 4). Therefore, using a single intermediary surface, we can only connect either a pair of pitch spheres or a pair of yaw spheres, not a mix of both.
Remark.
Although it is possible to connect a pair of spheres of the same type (e.g., inner–inner) using a plane, we do not consider such paths in this paper. This is because the planar connection is a special case of the cylindrical connection. This is because a plane can be wrapped into a cylinder without changing the path length or violating the curvature constraints. We discuss this preservation property in more detail when introducing the cylindrical path construction in the next section.
IV Path Synthesis on Cylindrical Envelope
To generate a feasible path connecting two spheres of the same radius and type via a cylindrical envelope (as shown in Fig. 7a), the vehicle follows this sequence:
-
•
Step 1: The path starts on the initial sphere and transitions to the cylindrical surface. The transition point, , lies on the boundary circle formed by the intersection of the sphere and the cylindrical envelope. At this point, its longitudinal direction aligns with as illustrated in Fig. 8.
-
•
Step 2: The path exits the cylindrical envelope at , with longitudinal direction .
-
•
Step 3: Finally, the path continues on the final sphere to reach the desired final configuration.

Note that the entry and exit points on the cylinder, along with their corresponding tangent directions, are not fixed and can be freely chosen. We parameterize these directions using four angles: and The following section describes how the path on the spheres and the cylinder is constructed based on these four parameters.
IV-A Origins of the Spheres and Axes of the Cylinders
We begin by deriving expressions for the centers of the spheres at the initial and final configurations, denoted by and respectively. These vectors are given by
(7) | ||||
(8) |
Here, or depending on whether the inner sphere, outer sphere, or one of the left/right spheres is selected at the initial configuration, respectively. Similarly, if the left sphere, right sphere, or one of the inner/outer spheres is chosen. The same interpretation applies for and For cylindrical envelope constructions, we require that and .
We can obtain the axis of the cylinder that connects the selected pair of spheres as (refer to Fig. 7a)
(9) |
Furthermore, the length of the cylinder is given by Since the radius of the cylinder is the same as the radius of the selected pair of spheres, the cylinder’s radius is if and if
We now derive expressions for the entry and exit points on the cylinder ( and ) as well as their corresponding tangent directions ( and ).
IV-B Parameters for the location and tangent vector on the cylinder
On the cylindrical envelope, we parameterize the entry point and the tangent by two angles, and (see Fig. 8). Likewise, and parameterize the exit point and the corresponding tangent . To derive these expressions, we introduce a body frame centered at the cylinder’s base point , with its ‑axis aligned along the cylinder axis (also shown in Fig. 8).101010Since the cylinder’s -axis is known, but the - and -axes of the body frame are not, we begin by aligning the -axis with the global -axis. We then apply Gram–Schmidt orthogonalization to compute a unit vector perpendicular to the -axis. If the dot product between the global -axis and the cylinder’s -axis is close to one (i.e., they are nearly aligned), we instead use the global -axis to initialize the process.
The expressions for and can be derived in the body frame to be
(10) |
where is the radius of the cylinder, and is given by
(11) |
We can derive the direction cosines of the tangent vector when it enters and exits the cylinder as (refer to Fig. 8)
Here, and are standard elementary rotation matrices for rotation about the and axis, respectively.
The entry position and tangent direction in the global frame can be expressed as
(12) | ||||
(13) |
where and are unit vectors along the axes of the body frame and is the location of the body frame’s origin. Analogous expressions hold for and .
With the expressions for the entry and exit locations and their corresponding tangent vectors on the cylindrical envelope now established, we proceed to construct the optimal path on the initial and final spheres, as well as on the cylindrical envelope.
IV-C Generation of paths on initial and final spheres
Consider the chosen sphere at the initial configuration. We need to obtain the optimal path connecting the initial configuration to the location with heading direction given by to enter the cylindrical envelope (as shown in Fig. 8). We simplify this problem by translating the sphere’s center to the origin. This allows us to analyze the motion using a Sabban frame [25, 23]. The task becomes finding the optimal path on the sphere’s surface that connects an initial location and tangent to a final location and tangent.
In [25, 23], the Sabban frame model was used to study motion planning on a unit sphere. The configuration of the vehicle was specified by a location (which is a unit vector pointing radially outwards), a tangent vector along the longitudinal direction of the vehicle, and a normal vector along the lateral direction. Additionally, the path was parametrized in terms of arc length The evolution equations for these vectors are given by
(14) |
where is the geodesic curvature on the unit sphere and serves as the control input. It relates to the minimum turning radius on the unit sphere by
We can adapt the previous results for motion planning on a sphere of any radius () by scaling the problem to a unit sphere problem.111111We note here that we perform this scaling since and do not form a rotation matrix as is not a unit vector. However, when the problem is scaled to motion planning on a unit sphere, these vectors form a rotation matrix; therefore, the path can be constructed easily. First, we compute the normal vector While scaling does not affect the tangent vector or the normal vector , other parameters change. The location on the unit sphere becomes , and the corresponding minimum turning radius becomes A detailed derivation of this scaling is available in Appendix -C.

From [23], the candidate optimal paths on a unit sphere are of type for or a degenerate path for and or for The analytical computation of the arc angles for each path is provided in [26]. We note here that the arc angles of the segments of a path on the unit sphere and the corresponding path on the sphere with radius would be the same. Hence, we can obtain the arc angles of the segments for each candidate path on the sphere with radius using [26].
Remark: The arc angle is related to the segment length by for and segments, and for a segment on a unit sphere.
Finally, we want to obtain the expressions for and along the path to describe the instantaneous configuration of the vehicle along the sphere. We can obtain these expressions by solving the Sabban frame equations, derived in Appendix -C, using the Euler-Rodriguez formula. Therefore, the configuration of the vehicle on the sphere along the path can be obtained.
The last step to be performed is to obtain the configuration of the vehicle in 3D (which utilizes the rotation minimizing frame). Since we had shifted the origin of the sphere to coincide with the origin of the global frame the location () and longitudinal direction () can be easily obtained as
Furthermore, depending on the type of sphere chosen at the initial configuration, and can be computed (refer to Fig. 9). If or the expressions for (the surface normal) and (the tangent normal) are obtained, respectively, as (refer to Figs. 4 and 9)
When when The path on the sphere at the final configuration is constructed similarly.
IV-D Generation of path on cylinder
In this section, we describe the construction of the optimal Dubins path on a cylinderical surface. This path connects an initial and final configuration on the cylinder, which we had previously parameterized in terms of and The path we construct on the cylinder must obey the geodesic curvature (yaw rate) and normal curvature (pitch rate) constraints for the 3D model. We note that the radius of the cylinder is whose definition is given in (11). We choose the bound on the geodesic curvature for motion over the cylinder to be
(15) |
We claim that the considered radius for the cylinder and the geodesic curvature bounds satisfy the geodesic curvature and normal curvature constraints for the 3D problem.
Lemma 3.
Proof.
The proof is provided in Appendix -D. ∎
We present the construction of the optimal path on the cylinder. Note that geodesic curvature is bending invariant [27]. Hence, we can unwrap the cylinder onto a plane, as shown in Fig. 10, and construct the optimal path on the plane. Finally, the constructed path on the plane can be wrapped back onto the cylinder.
IV-D1 Unwrapping frame for cylinder
For unwrapping the cylinder, we consider a frame referred to as the unwrapping frame, with axes and . The origin for is at the point of entry of the cylinder (). Furthermore, is parallel to and points radially inwards to the cylinder. We will use the unwrapping frame for constructing the path on the plane. Once we construct such a path, we will represent it in the body frame and finally obtain the vehicle’s configuration in the global frame for the 3D problem.
Consider a point on the cylinder. The relationship between its location in the unwrapping frame () and the body frame () is given by121212For motion planning on a cylinder where the initial location (equivalent to the origin of ) is not in the plane, the last term in (16) can be replaced with Here, is the distance from the plane.
(16) |


Using (16), we can represent the entry location and the exit location in the unwrapping frame as and Here, the expression for from (10) was used, and
We now aim to unwrap the cylindrical surface onto a plane, selecting the tangent plane at as reference. Therefore, the unwrapping plane is defined by and axes, as shown in Fig. 10b. We will now describe the mapping of the initial and final configurations of the cylinder to the unwrapping plane.
IV-D2 Configurations after unwrapping cylinder
Consider unwrapping a point on the cylinder as shown in Fig. 11. A point whose coordinates are in gets mapped to two points on the plane due to periodicity of the angle 131313In principle, there are infinitely many images due to the periodicity of the angle However, we consider only two images for simplicity.. Hence, the two images of obtained on the plane, shown in Fig. 11, are given by and where
(17) |

The two images corresponding to the final configuration, which is the exit location of the cylinder, obtained on the unwrapping plane, are shown in Fig. 12. It can be observed that the heading angles for the entry and exit locations are and on the plane, respectively (compare with Fig. 10).

We can now plan the optimal path to each image of the final configuration on the plane. To this end, we generate the six 2D Dubins candidate paths ( and ) using the analytical expressions provided in [28] to each image, and pick the shortest path. Let this shortest path be
(18) |
where is the arc length. Additionally, let the instantaneous heading angle on the plane be which is the angle made with respect to
IV-D3 Wrapping path onto cylinder
After the path is generated on the unwrapped plane, the corresponding path on the cylinder is retrieved by inverse mapping. To this end, consider a point given by on the unwrapping plane. The corresponding image of this point on the cylinder will be in using the previously established procedure (refer to Fig. 11).
Now, consider the curve on the plane given by (18). Using the previous argument, the corresponding curve obtained on the cylinder in the unwrapping frame is given by
(19) |
We now prove that the proposed mapping preserves the length of the curve.
Lemma 4.
The proposed mapping between a planar curve and the wrapped curve on the cylindrical surface preserves the length of the curve.
Proof.
The proof is provided in Appendix -E. ∎
We compute the tangent vector along the path using the instantaneous heading angle obtained from the 2D Dubins path on the plane. Hence, the angle made by in the unwrapped plane with respect to , which is the heading angle, is known (refer to Fig. 12). From Fig. 10a, the direction cosines of expressed in the body frame can be obtained as
If the inner or outer sphere was chosen at the initial configuration, the expression for in can be obtained by noting that it is radially outwards or inwards to the cylinder, as (refer to Fig. 7a)
Alternatively, if the left or right spheres were chosen, the same expression for is obtained with replaced with The expression for when and when can be obtained as and respectively.
Finally, the expressions for and can be obtained in the global frame using (12) and (13) (refer to Fig. 8)141414Similar to the transformation for the tangent vector in (13) between the body and global frames, equations for the tangent-normal and surface-normal vectors can be obtained.. Hence, we have obtained the configuration of the vehicle along the shortest path on the cylinder for chosen and values; this path satisfies the pitch and yaw rate constraints of the vehicle.
Remark: Though four parameters were introduced for path construction using a cylindrical envelope in the beginning of Section IV, the initial and final sphere computations depend only on two parameters each ( and or and ). Furthermore, the motion planning on the cylinder depends on and the difference between and
To compute the best feasible path for a selected pair of spheres at the initial and final configuration, we discretize and in We discretize and over the interval , representing the feasible interval of heading angles that allow the path to enter the cylinder at and exit at (refer to Fig. 8). The number of discretizations of and are dertermined by a parameter whereas dictates the number of discretizations for and . We choose the combination that yields the shortest feasible path.
V Constructing Feasible Solution using Cross-Tangent Plane
In this section, we describe the second class of paths where the sub-path between the initial and final spheres is constructed on a cross-tangent plane. There exist infinitely many cross-tangent planes between these two spheres; the locus of the point of intersection of these cross-tangent planes with the initial/final sphere will be a circle, as shown in Fig. 7b. To uniquely define a cross-tangent plane, we use angle as a parameter (see Fig. 13).

Remark: From Fig. 13, we can observe that the considered cross-tangent plane exists when i.e., when the spheres at the initial and final configurations do not intersect.
We denote the center of the locus at the initial and final spheres by and , respectively, as shown in Fig. 13. The location of and can be obtained as
(21) | ||||
(22) |
where . Here, the expressions for and are given in (7) and (8), respectively, and is given in (11). The cross-tangent plane between the initial and final spheres is needed for inner-outer, outer-inner, left-right, and right-left pairings. It follows that and
To define the parameter , we first designate a unit vector perpendicular to , as shown in Fig. 13.151515The generation of is similar to the procedure described for the cylindrical envelope. The angle specifies the point of tangency on the initial sphere, with respect to . We then define another unit vector , which is orthogonal to both and the axis (, defined in (9)) between the spheres. Using and , we now express the entry and exit points and , which are the points of tangency (see Fig. 13).
Next, we parameterize the tangent vectors at the entry and exit points using angles and , defined relative to the axis , where is a unit vector pointing from to (see Fig. 13). The tangent vectors and at the entry and exit points are derived as below:
Given the location and tangent vectors at the exit point from the initial sphere and the entry point of the final sphere, we can construct the optimal path over each sphere using the approach in Section IV-C. We can also construct the path on the cross-tangent plane using the 2D Dubins result [3, 28], illustrated in Fig. 14. In this figure, the minimum turning radius is dictated by the type of spheres considered at the initial and final configurations. If we are considering inner-outer or outer-inner connections, since the vehicle moves in the plane (as observed from Fig. 13). Alternatively, if left-right or right-left sphere connections are considered.

After the path on the plane is constructed, the vehicle’s coordinates ( and ) and the heading angle () are defined. We can reconstruct the configuration of the vehicle along the path in 3D. First, we compute the location and the tangent vector along the plane as
The vectors and are computed depending on or as shown below:
Further, we can compute these vectors as when and when . Thus, the vehicle’s configuration in 3D is completely described on the initial sphere, cross-tangent plane, and final sphere.
Note that the path construction for this class is a function of the three parameters: and . However, motion planning on each of the surfaces depends only on two parameters, similar to the class of paths constructed using a cylindrical envelope in the previous section. We optimize on these parameters by discretizing and and in (refer to Fig. 13). The number of discretizations of is dictated by whereas represents the number of discretizations for and . We choose the parameter set that yields the shortest path length for each pairing of the initial and final spheres.
VI Constructing Feasible Solution using Intermediary Sphere
In this section, we present the construction of the third class of paths. When the initial and the final positions are sufficiently close, we construct a path that goes through an intermediary spherical surface. We consider the four possible combinations in this regard, as outlined in Section III. This class of paths exists only when the Euclidean distance between the initial and final position satisfies , as illustrated in Fig. 7c.
We parameterize the center of the intermediary sphere using a parameter . The locus of the center of the intermediary sphere is a circle, as shown in Fig. 7c. The value of is related to the radius of this circular locus, and can be derived to be
and the radius of the circular locus is
To parameterize the center of the intermediary sphere, we generate a unit vector perpendicular to (similar to the one in Section IV). We define as the angle made by the center of the intermediary sphere on the circular locus with respect to similar to the definition for the cross-tangent plane case. This parameter specifies the location of the intermediary sphere. Hence, we can define the center of the intermediary sphere as (refer to Fig. 7c)
Given , entry point (), and exit point () for the intermediary sphere are derived as shown below,
Finally, to parameterize the tangent vectors at and , we define the unit vectors and . These vectors are perpendicular to and as illustrated in Fig. 15, and are derived as follows:
We parameterize the tangent vectors at and denoted by and respectively, using the parameters and as shown below:

We optimize the path length over the parameters and . For a given set of parameters, we can compute and . Similar to the methodology in Section IV-C, we generate the optimal path on the initial sphere, intermediary sphere, and the final sphere. Note that motion planning on each of the surfaces depends only on two parameters. For instance, in the case of the intermediary sphere, the path length depends only on and . Similar to the path constructing using an intermediary plane, dictates the number of discretizations of and represents the number of discretizations for and . Finally, among all the combinations of the discretized parameter values, we select the path with the minimal total length.
VII Summary of Path Construction Algorithm
In this section, we summarize the path construction comprising the three classes of paths, presented in Sections IV, V, and VI as a pseudocode in Algorithm 1.
The initial configuration and final configuration, each of which is defined by the four vectors and are the inputs to the algorithm. We compactly represent them by the homogeneous transformation matrices and respectively.161616The homogeneous transformation matrix in terms of and is given by . The other inputs to the algorithm include the pitch rate (), yaw rate (), and the discretization parameters, ( and ). Recall that and are the discretization parameters corresponding to the position and the heading, respectively (which were discussed in Sections IV, V, and VI).
In line 1 of the algorithm, the minimum cylinder path is computed, which constructs the shortest path through an intermediary cylindrical envelope (described in Section IV). The function returns the length of the shortest path and the configuration of the vehicle along the path. Similarly, paths through a cross-tangent plane (described in Section V) and through an intermediary sphere (described in Section VI), are constructed in lines and , respectively. Finally, the shortest of all the three classes of paths is determined in line , and the configuration of the vehicle along the shortest path is returned by the algorithm.
VIII Results
In this section, we present computational results to study the performance of Algorithm 1 and the effect of the vehicle’s configuration and the motion constraints on the path. To this end, we consider the scenarios provided in [20], where five “Long” and five “Short” instances were considered depending on the distance between the initial and final configurations. The minimum turning radius was chosen to be m in [20], and correspondingly, we consider m. In [20], the orientation is defined by only the pitch and heading angles. To describe the complete orientation, we additionally specify the roll angle at the initial and final positions to be one of the values from the set 171717It should be noted that the orientation of the vehicle can be uniquely prescribed by the vectors and or by specifying the yaw (rotation about ), pitch (rotation about ), and roll (rotation about ) angles. Fixing a rotation sequence, one can uniquely compute the expressions for and for given angles. It should be noted that positive pitch angle is considered to be about axis since geometrically, when the vehicle has its nose pointing up, the pitch angle is desired to be considered to be positive.. To study the effect of the motion constraints, we run the experiments for different values of .
Furthermore, we consider two sets of scenarios referred to as “Additional 1” and “Additional 2” described shortly, based on Figs. 2a and 2b, respectively. In the first set of scenarios, the vehicle needs to perform a turn maneuver with a marginal altitude change. The initial location is with initial heading and pitch angles of and and the final location is with heading and pitch angles of and . In “Additional 2”, the vehicle needs to perform an ascent maneuver from an initial location of with initial heading and pitch angles of and to a final location of with heading and pitch angles of and .181818All coordinates specified in this paragraph are in meters.
To optimize the path length with respect to the parameters, we consider discretizations for all parameters that describe the positions and tangent vectors for entry and exit between the intermediary surfaces. We implemented the algorithms in Python on a computer with AMD Ryzen HS CPU running at GHz with GB RAM. For all the classes of the paths constructed, we parallelized the functions that compute the sub-paths on each individual surface. The computational results of the algorithm are summarized in Table I. 191919The first instance of running each function takes a higher time than the reported times in Table I, due to the overheads associated with spawning different processes to implement the functions in a parallel manner. To circumvent this issue, we “warm start” our algorithm using a dummy instance.
Inst. |
|
Path type |
|
Inst. |
|
Path type |
|
Inst. |
|
Path type |
|
||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
478.06a | pl_right_left | 9.91 |
|
2187.58a | cyc_right | 10.91 |
|
425.17a | cyc_left | 9.77 | ||||||||||||
510.64b | pl_outer_inner | 9.60 | 2201.98b | 10.79 | 425.65b | 9.53 | |||||||||||||||||
533.24c | 9.77 | 2211.11c | 11.00 | 421.25c | 9.75 | ||||||||||||||||||
475.98d | pl_right_left | 9.87 | 2189.22d | 11.17 | 420.89d | 9.94 | |||||||||||||||||
412.17e | cyc_left | 10.17 | 2201.75e | 10.79 | 422.72e | 9.47 | |||||||||||||||||
545.09f | pl_right_left | 10.46 | 2212.44f | 11.14 | 447.19f | 9.68 | |||||||||||||||||
447.36g | cyc_inner | 9.68 | 2192.96g | 10.86 | 445.42g | pl_outer_inner | 9.62 | ||||||||||||||||
470.08h | 9.53 | 2209.89h | 10.59 | 493.81h | 9.55 | ||||||||||||||||||
473.59i | 9.87 | 2225.56i | 11.04 | 512.31i | cyc_left | 9.84 | |||||||||||||||||
|
587.86a | cyc_right | 9.72 |
|
289.67a | cyc_right | 9.75 |
|
444.24a | pl_outer_inner | 9.62 | ||||||||||||
606.64b | 9.66 | 376.88b | cyc_outer | 9.47 | 463.42b | 9.53 | |||||||||||||||||
614.57c | 9.90 | 394.71c | 9.72 | 477.80c | 9.66 | ||||||||||||||||||
590.12d | 12.03 | 355.38d | pl_outer_inner | 9.58 | 440.33d | 9.60 | |||||||||||||||||
601.87e | 10.29 | 375.31e | cyc_right | 9.54 | 446.09e | 9.33 | |||||||||||||||||
620.67f | 10.87 | 389.47f | 9.54 | 520.75f | cyc_left | 9.77 | |||||||||||||||||
583.47g | 10.18 | 352.59g | cyc_outer | 9.58 | 453.28g | cyc_right | 9.66 | ||||||||||||||||
603.90h | 10.29 | 380.83h | cyc_right | 9.44 | 447.54h | 9.52 | |||||||||||||||||
612.32i | 10.83 | 360.12i | sphere_right | 10.18 | 467.20i | 9.88 | |||||||||||||||||
|
1032.72a | cyc_inner | 10.97 |
|
302.02a | pl_outer_inner | 9.54 |
|
212.63a | cyc_right | 9.43 | ||||||||||||
1141.58b | 10.90 | 323.47b | 9.34 | 223.18b | 9.83 | ||||||||||||||||||
1161.82c | cyc_left | 11.23 | 356.72c | 9.50 | 233.88c | 10.26 | |||||||||||||||||
1026.87d | cyc_inner | 11.30 | 298.45d | 9.59 | 213.34d | 9.58 | |||||||||||||||||
1045.90e | 11.14 | 313.69e | 9.33 | 223.83e | 10.00 | ||||||||||||||||||
1048.38f | 11.30 | 335.89f | 9.51 | 234.02f | 10.11 | ||||||||||||||||||
1037.06g | 11.06 | 313.70g | 9.44 | 211.93g | 9.48 | ||||||||||||||||||
1040.40h | 10.91 | 336.86h | 9.79 | 222.00h | 9.85 | ||||||||||||||||||
1058.79i | 12.67 | 349.95i | 10.14 | 232.53i | 10.10 | ||||||||||||||||||
|
1744.87a | cyc_left | 11.52 |
|
364.92a | pl_outer_inner | 9.83 |
|
107.59a | sphere_left | 11.86 | ||||||||||||
1758.23b | 12.05 | 386.80b | 9.37 | 91.54b | 11.63 | ||||||||||||||||||
1773.09c | 11.29 | 400.55c | 9.62 | 274.51c | cyc_inner | 11.95 | |||||||||||||||||
1747.76d | 10.65 | 356.75d | 9.49 | 87.17d | sphere_inner | 12.00 | |||||||||||||||||
1759.44e | 10.60 | 368.52e | 9.37 | 250.06e | sphere_right | 11.52 | |||||||||||||||||
1776.86f | 10.65 | 384.82f | 10.03 | 280.35f | cyc_inner | 12.07 | |||||||||||||||||
1744.13g | 10.87 | 349.90g | 10.84 | 95.39g | sphere_right | 11.82 | |||||||||||||||||
1763.51h | 10.86 | 416.92h | cyc_right | 10.29 | 259.63h | cyc_inner | 11.61 | ||||||||||||||||
1768.64i | 10.61 | 408.28i | 9.79 | 280.38i | pl_inner_outer | 12.13 |
In Table I, we use superscripts to refer to instances with m. On the other hand, are used to refer to instances with m, and are used to refer to instances with m. Furthermore, correspond to instances with initial and final roll angles of and respectively, correspond to instances with initial and final roll angles of and respectively, and correspond to instances with initial and final roll angles of and respectively. Additionally, in this table, we show the length of the path obtained using the algorithm from [20] under the instance name. We consider the same parameter values used in [20], which are a minimum turning radius of m and a bounded pitch angle in .
From this table, we can observe that
-
•
The path lengths obtained from our model are comparable to those from [20] for all “Long” maneuvers. In particular, our path length is shorter for a majority of “Long 2”, “Long 3”, “Long 4”, and “Long 5” instances. The generated paths satisfy both pitch and yaw rate constraints while connecting the initial and final configurations, which include the vehicle’s roll angle.
-
•
For “Short” maneuvers, the length of the paths generated by the proposed algorithm is two to three times shorter than the path obtained from [20].
-
•
The computation time is around seconds for most of the instances.
These results show the impact of the model and the control inputs on the resulting trajectory. We further expand upon these results to showcase the effect of the motion constraints and the configurations in the following subsections, along with additional examples.
VIII-A Effect of motion constraints
From Table I, we can observe that increasing changes the path length and also the best feasible path type. For instance, consider the “Short 4” instance with initial and final roll angles of and respectively. The path generated for m, m, and m is illustrated in Fig. 16. We can observe that increasing from m to m changes the path obtained from our algorithm from a cross-tangent connection to a path through the left spheres at the initial and final configurations connected by a cylinder. Additionally, while increasing from m to m retains the same path type as the best path, the points of departure and arrival at the initial and final spheres have changed significantly. This is because particularly affects the turning capability of the vehicle on the cross-tangent plane, as can be observed from Figs. 16a and 16b.
For an instance of the “Short 4” case where the path length is around m, the change in path length is around to m when is varied. The effect of is more pronounced for “Additional 2”, where the vehicle needs to perform an ascent motion. For this instance, the path length may vary from m to as high as m depending on An illustration of the paths for increasing from m to m is shown in Fig. 17.
These effects may not be captured by the existing models, including [20], due to the single control input considered in these models. Illustrations of the paths obtained using the result from [20] for the scenarios “Short 4” and “Additional 2” are shown in Figs. 18 and 2b, respectively.







VIII-B Effect of considering complete configuration
From Table I, we can observe that the roll angle at the initial and final locations impacts the path length and the path type as well. For instance, consider “Long 1” with m. We illustrate the change in the path type with changing roll angles across the three subfigures in Fig. 19. We observe that for initial and final roll angles of and the vehicle travels on the outer sphere, followed by traveling on the cross-tangent plane and an inner sphere. However, changing the initial and final roll angles changes the minimum cost path from our algorithm to travel along a cylindrical envelope connecting the left spheres for initial and final roll angles of and For initial and final roll angles of and the best feasible path is a cylindrical envelope connecting inner spheres.
In contrast, the path obtained from [20] is shown in Fig. 20, which is longer than our path by nearly three times. The algorithm in [20] produced the same path for any values of and for any of the three combinations of initial and final roll angles we considered in this subsection. This is due to the fact that the generated path does not account for the complete orientation of the vehicle at the initial and final locations; this highlights the novelty of our approach considering the full orientation of the vehicle.
We also note here that the path obtained using [20] satisfies the pitch and yaw rate constraints close to the initial configuration when m. However, it violates the yaw rate constraints at the initial configuration for m since it enters the left sphere (similar to Fig. 2a). These results reaffirm the importance of the model and control inputs presented in the current paper.




VIII-C Additional examples
In addition to the previous instances, we consider two additional instances. First, we consider an instance where the final location is inside the “inner” sphere of the vehicle, i.e., one of the pitch spheres. In this instance, the vehicle needs to depart from the origin with a heading, pitch, and yaw angle of and respectively. The desired final location is with a desired heading, pitch, and yaw angle of and respectively. Furthermore, we chose and to be m and m, respectively. The minimum cost path obtained using Algorithm 1 and from [20] is shown in Figs. 21a and 21b, respectively. From our algorithm, the vehicle leverages the pitch and yaw rate bounds to make a sharper turn, leading to a path with a length of m, which traverses through an intermediary sphere. On the other hand, due to the pitch angle bounds in [20], the vehicle takes a longer path of length m.
A similar result was obtained in the second instance, where the final location was chosen inside the right sphere (one of the yaw spheres). The initial configuration and vehicle parameters were chosen to be the same as the first instance, the final location is chosen to be , and the desired final heading, pitch, and roll angles are and respectively. The path length from our algorithm was m, whereas the path length with the algorithm from [20] was m.




IX Conclusion
In this paper, we propose a novel model for 3D motion planning and a methodology for generating high-quality feasible trajectories. The proposed model and the approach address two key limitations of the existing methods: the incomplete representation of vehicle configuration, and inadequate modeling of the motion constraints. We highlight these issues using illustrative examples. To address these, we proposed a model using a rotation-minimizing frame to uniquely represent the vehicle’s configuration, and the model includes two control inputs corresponding to the pitch rate and yaw rate of the vehicle. We proved that the pitch rate and yaw rate bounds yield a total of four distinct spheres tangential to the vehicle’s configuration, viz. inner, outer, left and right, which represent temporarily inaccessible regions.
We proposed three classes of curvature-constrained paths beginning and ending on the surface of the spheres, tangential to the initial and final configurations. The three classes differ in the transition mechanism from the initial to the final sphere. These transitions involve a path on the surface of a cylindrical envelope, a cross-tangent plane, or another spherical surface. Finally, we presented extensive computational experiments to evaluate the impact of the motion constraints and the vehicle’s configuration on the path length and the path classification. Additionally, a comparison of the proposed methodology with the algorithm in [20] underscored the advantages of modeling with complete orientation. The proposed model and path generation methodology offer a novel perspective on the 3D motion planning problem.
References
- [1] Fixed Wing Drone: The Complete Guide for Professionals (Accessed Apr 2025). [Online]. Available: https://quantum-systems.com/blog/2025/02/05/fixed-wing-drone-guide/#:~:text=Superior%20Range%20%26%20Coverage%3A%20The%20design,to%20survey%20extensive%20landscapes%20quickly.
- [2] What Is A Fixed Wing Drone? — Advantages And Uses Of Fixed Wing Drones (Accessed Apr 2025). [Online]. Available: https://uavsystemsinternational.com/blogs/drone-guides/what-is-a-fixed-wing-drone-advantages-and-uses-of-fixed-wing-drones?srsltid=AfmBOorCTIkSZHuUP3N4YbgcjBHHJoqQUL_wTsxMGUmw4nzJpJ1lvfb_
- [3] L. E. Dubins, “On curves of minimal length with a constraint on average curvature, and with prescribed initial and terminal positions and tangents,” American Journal of Mathematics, vol. 79, 1957.
- [4] L. S. Pontryagin, V. G. Boltyanskii, R. V. Gamkrelidze, and E. F. Mishchenko, The mathematical theory of optimal processes. Interscience Publishers, 1962.
- [5] X.-N. Bui, J.-D. Boissonnat, P. Soueres, and J.-P. Laumond, “Shortest path synthesis for dubins non-holonomic robot,” in Proceedings of the 1994 IEEE International Conference on Robotics and Automation, 1994, pp. 2–7.
- [6] E. Bakolas and P. Tsiotras, “The asymmetric sinistral/dextral markov-dubins problem,” in Proceedings of the 48h IEEE Conference on Decision and Control (CDC), 2009, pp. 5649–5654.
- [7] Y. Wang and Y. R. Zheng, “3-dimensional path planning for autonomous underwater vehicle,” in OCEANS 2018 MTS/IEEE Charleston, 2018, pp. 1–6.
- [8] H. Marino, M. Bonizzato, R. Bartalucci, P. Salaris, and L. Pallottino, “Motion planning for two 3D-Dubins vehicles with distance constraint,” in 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2012, pp. 4702–4707.
- [9] G. Ambrosino, M. Ariola, U. Ciniglio, F. Corraro, E. De Lellis, and A. Pironti, “Path generation and tracking in 3-d for uavs,” IEEE Transactions on Control Systems Technology, vol. 17, no. 4, pp. 980–988, 2009.
- [10] R. Hurley, R. Lind, and J. Kehoe, “A mixed local-global solution to motion planning within 3-d environments,” in AIAA Guidance, Navigation, and Control Conference, 2009. [Online]. Available: https://arc.aiaa.org/doi/abs/10.2514/6.2009-6297
- [11] Y. Lin and S. Saripalli, “Path planning using 3D Dubins curve for unmanned aerial vehicles,” in 2014 International Conference on Unmanned Aircraft Systems (ICUAS), 2014, pp. 296–304.
- [12] H. Sussmann, “Shortest 3-dimensional paths with a prescribed curvature bound,” in IEEE Conference on Decision and Control, 1995, pp. 3306–3312.
- [13] S. Hota and D. Ghose, “Optimal geometrical path in 3D with curvature constraint,” in 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2010, pp. 113–118.
- [14] ——, “Optimal path planning for an aerial vehicle in 3D space,” in 49th IEEE Conference on Decision and Control (CDC), 2010, pp. 4902–4907.
- [15] V. M. Baez, N. Navkar, and A. T. Becker, “An analytic solution to the 3D csc Dubins path problem,” in 2024 IEEE International Conference on Robotics and Automation (ICRA), 2024, pp. 7157–7163.
- [16] H. Chitsaz and S. M. LaValle, “Time-optimal paths for a Dubins airplane,” in 2007 46th IEEE Conference on Decision and Control, 2007, pp. 2379–2384.
- [17] M. Owen, R. W. Beard, and T. W. McLain, Implementing Dubins Airplane Paths on Fixed-Wing UAVs*. Dordrecht: Springer Netherlands, 2015, pp. 1677–1701. [Online]. Available: https://doi.org/10.1007/978-90-481-9707-1_120
- [18] R. W. Beard and T. W. McLain, Small Unmanned Aircraft: Theory and Practice. Princeton University Press, 2012.
- [19] V. M. Goncalves, L. C. A. Pimenta, C. A. Maia, B. C. O. Dutra, and G. A. S. Pereira, “Vector fields for robot navigation along time-varying curves in -dimensions,” IEEE Transactions on Robotics, vol. 26, no. 4, pp. 647–659, 2010.
- [20] P. Váňa, A. Alves Neto, J. Faigl, and D. G. Macharet, “Minimal 3D Dubins path with bounded curvature and pitch angle,” in 2020 IEEE International Conference on Robotics and Automation (ICRA), 2020, pp. 8497–8503.
- [21] J. Herynek, P. Váňa, and J. Faigl, “Finding 3D Dubins paths with pitch angle constraint using non-linear optimization,” in 2021 European Conference on Mobile Robots (ECMR), 2021, pp. 1–6.
- [22] W. Wang and P. Li, “Towards finding the shortest-paths for 3D rigid bodies,” in Robotics: Science and Systems 2021, 2021.
- [23] D. P. Kumar, S. Darbha, S. G. Manyam, and D. Casbeer, “A new approach to motion planning in 3D for a dubins vehicle: Special case on a sphere,” 2025. [Online]. Available: https://arxiv.org/abs/2504.01215
- [24] R. L. Bishop, “There is more than one way to frame a curve,” The American Mathematical Monthly, vol. 82, no. 3, pp. 246–251, 1975.
- [25] S. Darbha, A. Pavan, R. Kumbakonam, S. Rathinam, D. W. Casbeer, and S. G. Manyam, “Optimal geodesic curvature constrained dubins’ paths on a sphere,” Journal of Optimization Theory and Applications, vol. 197, pp. 966–992, 2023.
- [26] D. P. Kumar, S. Darbha, S. G. Manyam, and D. Casbeer, “Generation of paths for motion planning for a dubins vehicle on sphere,” 2025. [Online]. Available: https://arxiv.org/abs/2504.11832
- [27] D. J. Struik, Lectures on Classical Differential Geometry, 2nd ed. Dover, 1988, ch. 4.
- [28] A. M. Shkel and V. Lumelsky, “Classification of the dubins set,” Robotics and Autonomous Systems, vol. 34, pp. 179–202, 2001.
- [29] M. P. D. Carmo, Differential Geometry of Curves & Surfaces, 2nd ed. Dover, 2016, ch. 3.
-A Construction of segments
Consider an interval in which and are constants. In this case, noting that is a rotation matrix, a portion of (2) can be rewritten as
(23) |
Suppose at least one of and is non-zero. The solution for the above differential equation is given by where the expression for the exponential of the skew-symmetric matrix can be obtained using the Euler-Rodriguez formula. Furthermore, using the obtained expression for the solution for can be obtained by integrating from (2). Hence, the solution for the evolution of the four vectors can be written as
(24) |
Here, and denotes the arc angle of the considered segment, and is given by
(25) |
where and We can observe that the solution is periodic with a period of
In the case of and remain constant (from (2)); furthermore, is obtained.
-B Proof for Lemma 1
Without loss of generality, consider the initial rotation matrix to be the identity matrix and the initial location to coincide with the origin. Hence, using the closed-form expressions in Appendix -A, the position is given by
(26) |
where Consider We claim that the obtained position lies on a sphere centered at which is along with radius To this end, we can show that for all Hence, all segments corresponding to lie on a sphere centered at with radius A similar argument can be made for where all segments lie on a sphere centered at with radius of Therefore, we can observe that controls the pitch motion of the vehicle; furthermore, yield maximum ascent or descent motion for the vehicle.
The radius of a segment corresponding to when is constant in can be obtained using the expression for as Using the expression for given in (26), it follows that
-C Sabban frame equations for sphere with radius and path obtained in 3D
The evolution equations for the Sabban frame on a unit sphere, described in Section IV-C, can be generalized to a sphere with radius To this end, the arc length on the sphere with radius is defined to be where is the arc length on the unit sphere. Furthermore, depicts the location on the new sphere; here, denotes the location on the unit sphere (refer to Fig. 9). Additionally, the bound for the control input from the unit sphere () is scaled to obtain Following a similar process as Lemma 3.2 in [25], we can show that the minimum turning radius on the sphere of radius is given by A depiction of the scaling for the initial configuration is shown in Fig. 9.
The evolution equations for the sphere with radius can therefore be obtained as
(27) |
where is the geodesic curvature on the sphere of radius and relates to the minimum turning radius on the sphere by The evolution of these three vectors for or which correspond to left turn, great circular arc, and right turns on the sphere, can be obtained using the Euler-Rodriguez formula.
-D Proof for Lemma 3
Consider cylinders connecting a pair of inner or outer spheres, which are shown in Fig. 7a. The tangent plane for these cylinders is the plane. Consider the bound chosen for the geodesic curvature on the cylinder () from (15), which is We note that denotes the magnitude of the projection of the curvature vector on the tangent plane [27]. Since the tangent plane of this cylinder is the plane, also represents the geodesic curvature for the rotation minimizing frame model. This is because geodesic curvature for the minimizing frame model () controls the yaw motion (in the plane) for the vehicle. Hence, the geodesic curvature bound for the rotation minimizing frame model is automatically satisfied for the chosen bound for .
On the other hand, the normal curvature of a cylinder depends on the direction of traversal along the cylinder. If the curve is along a direction parallel to the axis of the cylinder, however, if the curve is perpendicular to the axis, since the curve is along the circular cross-section [29]. Since these curvatures of and are the principal curvatures, the normal curvature for any intermediary direction of motion lies between the two through Euler’s theorem [27]. Noting that the normal curvature is along the surface normal for the cylinder, which is along for the rotation minimizing frame model, the normal curvature bounds for the rotation minimizing frame model are automatically satisfied. A similar argument applies for the selected bound for for the left and right cylinders, with the only difference arising in considering as the tangent plane and the surface normal for the cylinders being .
-E Proof for Lemma 4
Consider a cylinder that is parameterized in terms of and through (19). It suffices to show that the first fundamental form for the cylinder is the same as that for the plane, parameterized using and as given in (18). The first fundamental form coefficients are given by ([27]) and . Similarly, and can be obtained to be and Since the first fundamental form coefficients of the cylinder and the plane are equal, the length of the curve is preserved. This is because the distance between two closely spaced points on the curve on the cylinder that are initially separated by and on the plane is given by