Next Article in Journal
Experimental Determination and Simulation Validation: Johnson–Cook Model Parameters and Grinding Simulation of 06Cr18Ni11Ti Stainless Steel Welds
Previous Article in Journal
A New Method for Displacement Modelling of Serial Robots Using Finite Screw
Previous Article in Special Issue
Abnormal Driving Area Detection Using Multiple Vehicle Dynamic Model-Based Filter: Design and Experimental Validation
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Classification Scheme for the Three-Point Dubins Problem

by
Daniela De Palma
and
Gianfranco Parlangeli
*
Department of Engineering for Innovation, University of Salento, Via per Monteroni, 73100 Lecce, Italy
*
Author to whom correspondence should be addressed.
Machines 2024, 12(9), 659; https://doi.org/10.3390/machines12090659
Submission received: 30 July 2024 / Revised: 9 September 2024 / Accepted: 15 September 2024 / Published: 20 September 2024
(This article belongs to the Special Issue Autonomous Navigation of Mobile Robots and UAV)

Abstract

:
This paper proposes an optimal path type classification scheme for the three-point Dubins problem. It allows us to directly extract the shortest path type from a Dubins set, evaluating only the relative initial and final configurations with the via point position using a suitable partition of the Cartesian plane. Two alternative approaches are proposed to address the problem: an analytical approach and a heuristic one. The latter is revealed to be much faster from a computational point of view. The proposed classification logic makes the path planning for the three-point Dubins problem much more effective and suitable for real-time applications. Numerical examples are provided to show the efficiency of the proposed strategy.

1. Introduction

The technological advances of recent years opened up astonishing possibilities for research. From virtual reality to artificial intelligence and self-driving cars, the promise of a future world where such technologies permeate human society is exciting, and it drives the research in these fields with a renewed and powerful thrust. Among the most fascinating topics, the goal of designing mobile devices that are autonomously able to safely handle human mobility is advancing every day to reality.
In this latter scenario, and other similar ones, a central theme is the autonomy of a device for decision-making, ensuring that robots are able to find feasible paths in various environments, avoiding obstacles and minimizing travel time or energy consumption. For this reason, the challenging problem of safe and autonomous navigation surged as a central topic in robotics and autonomous systems. Overall, path planning is a foundational aspect of robotic vehicle that impacts the performance, safety, and effectiveness of robotic systems across a wide range of applications [1]. In recent years, there has been an impressive surge of research from the AI community (see, e.g., the overview papers [2,3] and references therein).
One key aspect of path planning is producing feasible reference paths for robots, namely, paths that are compliant with robots’ kinematics so that the robots are able to track the paths without jumps or errors.
A fundamental kinematic model that has been extensively explored in path planning applications is the ‘Dubins vehicles’ [4]. Basically, it refers to a point moving in the plane at a constant forward speed and bounded curvature, while the Dubins path refers to the shortest path between two poses of a Dubins vehicle [4]. It is well suited to represent the movement of vehicles that do not require hard braking, slowdown, or stopping; common examples are airplanes or marine crafts. For these reasons, since the milestone contribution by Dubins [5], the Dubins vehicle has been constantly studied over the years, as witnessed by the works in [6,7,8,9]. In these works, Dubins paths are obtained through necessary optimality conditions derived by exploiting the theoretical framework based on Pontryagin’s Maximum Principle. However, this approach results in solutions that are computationally demanding and not readily applicable to real-time applications. A significant contribution to overcome this issue is the work in [10], where the computational complexity is reduced by selecting the optimal path type based only on the initial and final poses (namely, position and orientation) in the Cartesian plane. In recent years, the application of machine learning techniques to the Dubins path planning problem has also been explored [11,12]. Other research areas that have emerged over the years are related to the generalizations of the Dubins problem through N points, as the Dubins Traveling Salesman Problem (DTSP) [13,14,15,16].
Several contributions on this subject [17] have shown that when the order of via points is fixed, the solution of the DTSP can be decomposed at each step in sub-problems, known as the three-point Dubins problem (3PDP), namely the path planning problem for a Dubins vehicle with an intermediate via point [18,19,20].
The three-point Dubins problem leads to efficient navigation solutions in different application domains including air, ground, and marine environments. In the field of Unmanned Aerial Vehicles (UAVs), solving the 3PDP is essential for optimizing flight paths when navigating through constrained environments or for executing complex missions. This can be particularly important in surveillance, reconnaissance, and delivery operations [21]. Even drones used in precision agriculture often need to navigate specific via points. In [22], for example, a variation of the Traveling Salesman Problem (TSP) solver, which is an extension of the 3PDP, is proposed to investigate optimal trajectories in order to visit a specific number of plants that require intervention. Aircraft, especially those with limited maneuverability, may encounter the 3PDP during specific flight scenarios [23], such as air-to-air refueling or navigating airspace restrictions. Efficient path planning is crucial for ensuring safe and precise movements in these situations.
In scenarios where search and rescue missions involve aerial or ground vehicles with Dubins motion constraints, solving the 3PDP with fast algorithms can be a key tool for safe and length-optimal reference path generation. Indeed, these applications often require real-time path planning to reach a target location with an intermediate point, optimizing the trajectory for a quick and effective response [24]. Moreover, Dubins vehicles, such as autonomous cars and ground robots, encounter the 3PDP when planning paths that involve navigating obstacles or following specific via points. Solving this problem is vital for ensuring safe and efficient transportation in urban environments or other constrained spaces [25,26]. In automated warehouses, multiple robots may need to navigate through narrow aisles and around obstacles while efficiently reaching intermediate points for picking or restocking purposes. Solving the 3PDP is a relevant basis for optimizing the movement of robotic vehicles in such environments [27].
Also, autonomous underwater vehicles (AUVs) face challenges in path planning, especially when they need to travel from one point to another with an intermediate via point. The solution of the 3PDP and its extension, Multiple Traveling Sales Person (MTSP), can be applied to optimize their trajectories and conserve energy during underwater missions [28].
In summary, the significance of solving the three-point Dubins problem  (shortened to 3PDP hereafter) lies in its potential to enhance the performance, safety, and efficiency of various autonomous systems operating in diverse real-world applications. This has motivated recent studies on developing increasingly faster and more efficient methods to address the 3PDP [17,18,29]. The solution proposed in [17] is based on inversive geometry. Two methods are presented: an “Approximate Method” that, while computationally efficient, provides an approximate optimal heading at the via-point, and an “Iterative Method” that recursively converges to the exact heading by iterative corrections, thus achieving greater accuracy at the cost of increased computational resources. A significant contribution is found in the work of [18], which utilizes the Pontryagin principle and optimality criteria. This research offers a solution encompassing all possible cases. The method requires solving polynomial equations, ensuring an accurate/exact solution by construction. A promising solution was proposed recently [29]; it is based on novel methodologies related to optimal properties of conic sections. The solution can be computed either graphically or analytically by utilizing the matrix description of conic sections. It provides solutions with an adequate level of accuracy as well as a reduced computational effort. Overall, any existing approach to the 3PDP, despite its peculiar methodology, selects the minimum length path through an exhaustive search among all possible path type combinations. This is detrimental to the run time, and it is a significant drawback for these methodologies when dealing with the applications described above. The main goal of this paper is to remove this bottleneck, thus extending the classification rules from [10] to the 3PDP. This would allow for the direct determination of the optimal path type based on the initial and final poses and the intermediate via point only. As a result, the results of this paper can be applied in conjunction with any algorithm to obtain solutions in real-time applications.

2. Problem Formulation

In the following subsections, we introduce the logical framework of the problem, and we briefly summarize some classical results that are the basis of our analysis, together with the notation that we adopt along the paper.

2.1. Notation and Preliminary Results

Consider a vehicle whose motion is described by
x ˙ = cos θ , y ˙ = sin θ , θ ˙ = u , | | u | | Ω ;
where Ω is a bound on the maximal curvature. A feasible path is a curve in the plane that is viable for the Dubins vehicle, namely, a curve satisfying (1), whose maximum curvature along the path is bounded by Ω .
The state vector q = ( P , θ ) is the pose or configuration of the vehicle, where P = ( x , y ) is the position of the vehicle in the Euclidean plane, and θ [ 0 , 2 π ) its orientation (see Figure 1a); the control u sets the angular speed, within the range defined by the bound Ω . Associated to each configuration, we draw two circles of radius Ω 1 , each lying on one side of position P (denoted C l for the left circle and C r for the right circle, and their centers c l and c r , respectively), each corresponding to the sharpest turn.
Given an initial configuration q i = ( P i , θ i ) and a final configuration q f = ( P f , θ f ) , without loss of generality (as in [10]), it is possible to set P i = ( 0 , 0 ) and P f = ( d , 0 ) , with d the Euclidean distance between them, as depicted in Figure 1b.
Consider two such circles C a b , with a A = { i , f } (namely, “initial” or “final”) and b B = { r , l } (i.e., “right” or “left”); it is possible to identify four different common tangent lines, i.e., two cross tangents and two external ones (see, e.g., Figure 2). We denote all possible common tangent lines between an initial and a final circle as r c d t s , with c , d B , t { c , e } , and s { + , } (where c and e stand for “cross” and “external”; + and − for “superior” and “inferior”).
Consider a line r in the Cartesian plane described by all the points P = ( x , y ) satisfying y = m r x + q r , (see Figure 3); r divides the Cartesian plane into two half-planes. A point P = ( x P , y P ) is in the upper half-plane if y P > m r x P + q r , and it is shortly denoted by P > r . The point P is said to be in the lower half-plane if y P < m r x P + q r , denoted hereafter by P < r .
Finally, each directed line r o with unit vector v r o divides the Cartesian plane into two half-planes; the one on its right is shortly denoted as π r o r , and the other on its left denoted as π r o l . If v r o points to the right, then π r o l coincides with the upper half-plane.

2.2. Preliminary Results

One fundamental topic within this framework is the shortest path problem, which consists in finding the shortest curve among the viable ones connecting an initial configuration q i = ( P i , θ i ) to a final configuration q f = ( P f , θ f ) for a Dubins car. This problem was firstly introduced and solved by L.E. Dubins [5] by showing that an optimal path is constructed by combining at most three segments, which can be either a straight line (denoted as S) or a circular arc of maximum curvature (denoted as C).
A circular path C can have a right or left turning direction, and hereafter, it is denoted by R or L, respectively. As a consequence, the minimum length path can be found by a direct search among six possible combinations given by the { L S L , R S R , R S L , L S R , R L R , L R L } cases, or part of them. If the distance between the initial and final points is sufficiently large, more than 4 Ω 1 , C C C paths are never optimal, and the analysis can be restricted to the occurrence of C S C paths. Moreover, C C C paths are inconvenient in practice since small variations on the terminal configurations produce large variations of solutions, namely, the recalculation of a reference path may produce a completely different reference path, with possible serious drawbacks on a mission execution.
For these reasons, in this paper, we propose an algorithm that seeks the solution type of the optimal-length Dubins path restricted to a search among the four combinations { L S L , R S R , R S L , L S R } . When P v is far more than 4 Ω 1 both from P i and P f , the path type solution is optimal. In general, for most of the practical applications, such path type is the most reasonable choice.
The three-point Dubins problem (3PDP) is as follows. For any assigned triple ( q i , P v , q f ), namely, the initial configuration q i = ( P i , θ i ) , the final configuration q f = ( P f , θ f ) , and a pre-assigned via point P v far from P i and P f more than 4 Ω 1 , find the shortest curve of (1) connecting P i , P v , and P f , with tangent direction θ i at P i and θ f at P f , among all the curves in the plane with curvature bounded by Ω .
According to Bellman’s principle for optimality, the solution of the optimal path for a Dubins vehicle between three consecutive configurations can be obtained by concatenating two optimal Dubins paths:
  • The path between the initial configuration q i = ( P i , θ i ) and the via point configuration q v = ( P v , θ v ) with length denoted as L 1 , and
  • The path between the via point configuration q v = ( P v , θ v ) and the final configuration q f = ( P f , θ f ) with length denoted as L 2 .
In this paper, we deduce the classification rules for selecting the type of the optimal path for those points P v of the plane far from P i and P v more than 4 Ω 1 , so that each of the elementary optimal Dubins path must be of type C S C ; thus, the solution is made of three elementary motions: left or right turn both along a circle of radius Ω 1 , straight line motion, and left or right turn both along a circle of radius Ω 1 . Hereafter, we denote as t, p, and q the length of its basic elements referring to the initial turn, the straight line segment, and the final turn, and we add the subscript 1 or 2 to refer to the path between P i to P v and from P v to P f , respectively; see Figure 4.
We can, therefore, state that the optimal-length path through three consecutive points satisfying the long distance hypothesis is the concatenation of two Dubins paths of type C S C ; hence, the solution of the 3PDP must be of type C S C C S C . If such hypothesis is not satisfied, however, one may use a sub-optimal solution of type C S C C S C , thus a priori avoiding C C C curves (which can be optimal, but notwithstanding, inconvenient).
An important result, conjectured in [19], and then proved in [17,30], is related to the optimality conditions for a shortest path of type C S C C S C :
Lemma 1.
Given ( q i , q f , P v ) ; in a shortest path of type CSC-CSC, the line segment between P v and the center of the circle associated with the optimal heading bisects the angle between the line segment p 1 and p 2 .
Denote by v i and v f the vectors parallel to the initial and final line segments of path C S C C S C , ( p 1 and p 2 in Figure 4 and Figure 5), and with v v the vector connecting the center of the circle associated with the optimal heading at the via point P v . Define v θ v as the vector parallel to the optimal heading at the via point, hence orthogonal to v v by construction, as shown in Figure 5.
Denoting by v the vector bisecting the angle between v i and v f , the optimality condition of Lemma 1 can be equivalently rewritten as follows:
v v θ v = 0 .
Moreover, since two arcs incident on the via point must have the same turning direction, the following holds:
Corollary 1.
The optimal solution of the 3PDP when P v is far more than 4 Ω 1 from both P i and P v must be of a type in T = { R S R R S R , L S R R S R , R S R R S L , L S R R S L , L S L L S L , R S L L S L , L S L L S R , R S L L S R } , where any circular arc may possibly be of zero length.
As a consequence, the optimal-length path through three consecutive points can be found by direct search among the eight possible combinations in T .

2.3. A Classification Approach for a Fast Solution

In this paper, we propose a classification based on a partition of the Cartesian plane which allows us to drastically reduce the number of potential path types.
Indeed, in order to solve the 3PDP, one should calculate the lengths of all path types in T and then select the shortest one of the computed paths. This requires one to compute the optimal orientation angle at the via point θ v (not specified a priori) for each path type, given by the following length optimality criterion:
θ v = arg min θ v [ 0 , 2 π ) ( L 1 ( θ v ) + L 2 ( θ v ) ) .
The problem addressed in this paper can be formulated as follows.
Problem 1.
Given the 3PDP, find a simple logical procedure to select the optimal path type among the combinations given in T without any explicit length computation.
Inspired by the classification rules derived in [10], in this paper we extend this strategy to the 3PDP: given a 3PDP problem, find a simple logical procedure to select the optimal path type among those in T without any explicit length computation.

3. Classification Rules

Our goal is to build a partition of the Cartesian plane as the one illustrated in Figure 6, which represents a partition for the classification of a 3PDP with distance d = 15 between the initial and final points, and initial and final orientation, θ i and θ f on quadrant I. Referring to this partition, given any via point P v , it is possible to immediately deduce the optimal path type by simply identifying the region to which it belongs. Consider the via point P v = ( 10 , 15 ) in Figure 6: it lies in the region classified as L S R R S L . Indeed, by computing the optimal path type with the conventional methods available in the literature, the resulting path reported in Figure 6 is actually an L S R R S L path type.
In general, to build a complete path type classification, we need to select the optimal turning directions on the three points of interest, i.e., the curvature at the initial point C i n i t i a l , the curvature at the final point C f i n a l , and the curvature at the via point C v i a P o i n t .

3.1. Curvature at the Initial Point

As a first step, draw a straight line starting from P i with orientation θ i , and denote it as λ i , as in Figure 6. A first simple intuitive idea that we explore is that, if the via point P v is on the left of λ i , then the first turning direction is necessarily on the left, while if P v is on the right with respect to λ i , then the optimal path turn is on the right (see Figure 7).
However, a deeper insight into this point shows that there are some points close to λ i that do not follow the above logic, and the reason is subtle. Without loss of generality, consider the example reported in Figure 8 where the via point P v is on the right and near λ i . In such a case, the optimal path type has the first turn on the left instead of on the right.
It is possible to clarify the reason for this phenomenon, which is the following. The orientation at P v requires a right turn, so if the initial turning point ( P v q 1 in Figure 8) is on the opposite side of P v with respect to λ i , then the initial turn is on the left.
In order to correctly identify and manage this phenomenon, two different approaches can be adopted: an analytical approach and a heuristic one.

3.1.1. Analytical Approach

As an illustrative example, we still consider a case with θ i and θ f on quadrant I as in Figure 8.
The analytical approach exploits the optimal condition, Equation (2). Following this approach, the main goal is to derive the exact boundary, denoted as I i hereafter, between paths that differ in curvature at the initial point, i.e., R S R R S L and L S R R S L for the example under investigation. Analytically, the boundary of the two regions R S R R S L and L S R R S L is defined by those points P v for which the R S R R S L and L S R R S L paths have the same lengths, i.e.,
L 1 R S R ( θ v ) + L 2 R S L ( θ v ) = L 1 L S R ( θ v ) + L 2 R S L ( θ v ) .
From a geometrical point of view, given that the second elementary Dubins paths between the via point and the final configuration are the same ( R S L type of length L 2 R S L ), the two types of paths R S R R S L and L S R R S L have the same lengths when the length of the straight line segment p 1 associated to the first elementary Dubins path is the same, namely,
L 1 R S R ( θ v ) = L 1 L S R ( θ v ) .
For the R S R path, the segment p 1 is given by the common external tangent r r r e + between the circles C i r and C v r ; while for the L S R path, the segment p 1 is given by the common cross tangent r l r c between the circles C i l and C v r (see tangents in the Figure 9). As a consequence, the optimality condition in Equation (4) is as follows:
r r r e + r l r c .
This happens when the circle C v r is tangential to the line λ i ; in this case, the point P v q 1 λ i . As a consequence, the first arc t 1 has zero length (i.e., t 1 = 0 ) and the two paths collapse in a path of type S R R S L . Refer to Figure 9 for a clear geometric representation of the optimality condition.
In order to actually find the locus of via points that correspond to such an optimal S R R S L path type, the optimality condition given by Lemma 1 for the S R R S L path should be verified, that is
v v θ v = 0 ,
where        
v = e v i + e v f ,
e v i = c v r c i r | c v r c i r | = [ cos ( θ i ) sin ( θ i ) ] ,
e v f = R ( γ ) c v r c f l | c v r c f l | , with γ = sin 1 2 Ω 1 | c v r c f l | ,
v θ v = [ ( y v y v r ) , ( x v x v r ) ] ,
and R ( γ ) R 2 is the standard rotation matrix. We also recall that in the intersection domain, the first arc vanishes, i.e., t 1 = 0 , the direction of e v i coincides with the initial orientation θ i , and the first elementary Dubins path reduces to an S R -type path (see Figure 10).
As a result, the centers c v r = ( x v r , y v r ) lie on the line λ i r , which is a line parallel to λ i and distant Ω 1 to its right, so that the optimal right via point circle C v r is a circle passing through the via point and tangent to the line λ i . The versor e v f identifies the direction of the cross tangent of the circles C v r and C f l . Hence, the points of the curve I i can be obtained by adding at each center c v r the versor e v (i.e., the versor in the direction of v = e v i + e v f ) multiplied by Ω 1 .
Summarizing, from an analytical point of view, we have one Equation (6) with two variables: x v r and y v r . We can solve it by taking one variable as a parameter. The analytical result is a curve I i that admits as asymptote the line λ i r (see Figure 11).
Figure 11a,b show the curve I i , i.e., the frontier between the regions R S R R S L and L S R R S L for θ i and θ f on quadrant I, for different values of the maximum turning radius: Ω 1 = 1 and Ω 1 = 2 , respectively. At this point, we can formulate the classification rules for identifying the curvature at the initial point C i n i t i a l as given in Algorithm 1.
Algorithm 1 Initial curvature-analytical approach
Require:  q i , q f , P v
Ensure:  C i n i t i a l
 compute curve  I i from Equation (6)
if  P v π I i r  then
   C i n i t i a l = R
else
   C i n i t i a l = L
end if
It is worth noting that the derivation of the exact curve I i could be demanding from a computational point of view (it requires solving nonlinear equations), so when the available computational load is limited, it could be preferable to resort to a heuristic approach—which is simpler, more efficient, and practical—as detailed below.

3.1.2. Heuristic Approach

A heuristic solution to determine the initial curvature for points close to λ i is still based on the fact that the boundary is associated with paths having P v q 1 λ i (hence, the first arc of zero length t 1 = 0 for the example under investigation). As a result, the maximum distance between the point P v on the frontier and the line λ i is 2 Ω 1 . It is obtained by imposing that the optimal circle at the via point is tangential to the line λ i , or equivalently, for the example under investigation, the first arc of zero length, i.e., t 1 = 0 . This allows us to consider a region between λ i and the line λ i r ( λ i r being a line parallel to λ i on its right and distant 2 Ω 1 ) where the investigation should consider two types of potentially optimal paths (either starting with L turn or R turn). This region is highlighted in gray in Figure 11a. A practical way to manage the points in this region is to test both possibilities, which is simpler and less demanding.
The above result is still valid for θ i on quadrant II, whereas symmetric considerations hold for θ i on quadrants III and IV. In the latter cases, the region that requires us to test both possibilities is the area between λ i and the line λ i l , namely, a line parallel to λ i on its left and distant 2 Ω 1 (see Figure 12).
The resulting classification rules for identifying the curvature at the initial point are summarized in Algorithm 2. The output of the algorithm is the turning direction at the initial point: “R” for a right turn, “L” for a left turn, and “C” for a generic curvature on the left or on the right (that is, when both should be tested). It is worth noticing that in the boundary between the quadrants Q I - Q I V and Q I I - Q I I I (i.e., θ i { 0 , π } ), a more conservative region is considered, that is, the union of the candidate regions associated with both cases.
Algorithm 2 Initial curvature-heuristic approach
Require:  q i , P v
Ensure:  C i n i t i a l
C i n i t i a l = C
if  θ i ( 0 , π ) ( θ i { Q I , Q I I } ) then
  if  P v π λ i l  then
    C i n i t i a l = L  
  else if  P v π λ i r r  then
    C i n i t i a l = R
  end if
else if  θ i ( π , 2 π ) ( θ i { Q I I I , Q I V } then
  if  P v π λ i l l  then
    C i n i t i a l = L  
  else if  P v π λ i r  then
    C i n i t i a l = R
  end if 
else if  θ i { 0 , π }  then
  if  P v π λ i l l  then
    C i n i t i a l = L  
  else if  P v π λ i r r  then
    C i n i t i a l = R
  end if
end if

3.2. Curvature at the Final Point

Similar considerations hold for the optimal turning direction at the final point. Draw the line λ f passing through P f = ( x f , y f ) with orientation θ f . If the via point P v is on the left of λ f , then the last turning direction is on the left, while if P v is on its right, the optimal path type is associated with a right last turn. An example is illustrated in Figure 13.
Also, in this case, if the via point P v lies in the neighborhood of λ f , an analogous phenomenon to the one described in Section 3.1 happens.
Consider Figure 14a where the via point P v is near λ f and on its left. In such a case, the optimal path type has the last turn on the right (instead of on the left). Again, it is possible to manage this phenomenon by adopting an analytical approach or a heuristic one.

3.2.1. Analytical Approach

As an illustrative example, we still take a case with θ i and θ f on quadrant I as shown in Figure 6. We can resort to an analytical approach, similar to the one presented in the previous section, to derive the exact frontier that differs for a curvature at the final point, e.g., R S L L S L and R S L L S R for the example at hand. This partition domain is given by the via points where the two types of paths have the same length. Similar to the case of the initial turning direction, such a condition is satisfied when the turning operation at P v has its end point P v t 2 on the line λ f , i.e., P v t 2 λ f , so that the two paths collapse in a path of type R S L L S , and the last arc q 2 has zero length (i.e., q 2 = 0 ). In order to actually find the locus of via points corresponding to such an optimal R S L L S path type, the optimality condition given by Lemma 1 for the R S L L S path is as follows:
v v θ v = 0 ,
where        
v = e v i + e v f
e v i = R ( γ ) c v r c i r | c v r c i r | , with γ = sin 1 2 Ω 1 | c v r c i r | ,
e v f = c v r c f l | c v r c f l | = [ cos ( θ f ) sin ( θ f ) ] ,
v θ v = [ ( y v y v r ) , ( x v x v r ) ] .
Again, in the intersection domain, the last arc vanishes, i.e., q 2 = 0 , so that the direction of e v f coincides with the final orientation θ f . As a result, the centers c v l = ( x v l , y v l ) lie on the line λ f l , namely, a line parallel to λ f on its left and distant Ω 1 , so that the optimal left via point circle C v l is a circle passing through the via point and tangent to the line λ f .
Therefore, from an analytical point of view, Equation (11) with the two variables x v l and y v l provides the solution. The analytical result is a curve I f that admits as asymptote the line λ f l . The classification rules for identifying the curvature at the final point C f i n a l are given in Algorithm 3.
Algorithm 3 Final curvature-analytical approach
Require:  q i , q f , P v
Ensure:  C f i n a l
 compute curve I f from Equation (11)
if   P v π I f r  then
   C f i n a l = R
else
   C f i n a l = L
end if

3.2.2. Heuristic Approach

The heuristic solution to determine the final curvature for points close to λ f is based on the fact that the boundary is associated with paths having the point P v t 2 λ f (hence, the last arc of zero length q 2 = 0 for the example under investigation). As a consequence, the maximum distance between the point P v on the frontier and the line λ f is 2 Ω 1 . Again, it is possible to consider a region between λ f and the line λ f l parallel to λ f on its left and distant 2 Ω 1 , so that a way to manage the points in this region is to test both possibilities. This region is highlighted in gray in Figure 14a. Outside this region, the curvature can be immediately obtained following a simple classification rule.
This result is valid for θ f { Q I , Q I I } , whereas when the final orientation θ f { Q I I I , Q I V } , symmetric considerations hold, so the line λ f r parallel to λ f on its right should be considered, as shown in Figure 14b. The resulting classification rules for identifying the curvature at the final point are summarized in Algorithm 4.

3.3. Curvature at the via Point

In this subsection, we complete the classification scheme with the identification of the turning direction at the via point. We separately consider the cases of paths with “zero” and “non-zero” curvature at the via point.

3.3.1. Paths with Zero Curvature at the via Point

We start with the consideration that paths with zero curvature at the via point P v are all and only those having the via point P v on the length-optimal Dubins path between P i and P f (see, for example, the light blue line in Figure 15). We denote such an oriented segment (starting from the initial optimal circle and ending at the final optimal circle) as λ 0 from now on (its orientation is defined as positive from P i to P f ). The importance of the segment λ 0 is that all the via points on the left of λ 0 ( P v π λ 0 l ) are associated with paths with a right-turn direction at the via point C v i a P o i n t = R (hence of type C S R R S C ), and those on the right ( P v π λ 0 r ) are paths with a left-turn direction at C v i a P o i n t = L , i.e., C S L L S C paths.
In order to derive the conditions to identify paths with zero curvature at the via point, we start from the property of the three-point Dubins path provided in Lemma 1; see Figure 5.
Algorithm 4 Final curvature-heuristic approach
Require:  q f , P v
Ensure:  C f i n a l
C f i n a l = C
if  θ f ( 0 , π ) ( θ f { Q I , Q I I } ) then
  if  P v π λ f l l  then
    C f i n a l = L  
  else if  P v π λ f r  then
    C f i n a l = R
  end if
else if  θ f ( π , 2 π ) ( θ f { Q I I I , Q I V } then
  if  P v π λ f l  then
    C f i n a l = L  
  else if  P v π λ f r r  then
    C f i n a l = R
  end if
else if  θ f { 0 , π }  then
  if  P v π λ f l l  then
    C f i n a l = L  
  else if  P v π λ f r r  then
    C f i n a l = R
  end if
end if
According to Lemma 1, for a shortest path of type C S C C S C , the bisector v between v i and v f is collinear with v v (see Figure 5) and consequently orthogonal to v θ v , leading to the optimality condition v v θ v = 0 .
The condition of zero curvature at the via point is verified when the bisector v is the null vector, i.e., v = 0 , which is when
v i = v f .
In this condition, v i and v f lie on the common tangent between the circles associated with the optimal initial and final turns.

3.3.2. Paths with Non-Zero Curvature at the via Point

As for paths with non-zero curvature at the via point, it is possible to derive a condition useful to identify regions that differ only for the curvature at the via point. Indeed, the boundary of these regions is made of all points P v for which the two types of path have the same length. In order to exploit such idea, consider again the example of a partition of the Cartesian plane in Figure 16.
Note that there are distinct areas where the optimal path type has a different curvature at the via point. It is useful to define an appropriate notation to separate these areas:
  • P v Region 1: boundary R S R R S R / R S L L S R denoted as I 1
  • P v Region 0: boundary R S R R S L / R S L L S L denoted as I 0
  • P v Region 2: boundary L S R R S L / L S L L S L denoted as I 2
In the following subsection, we derive the exact frontier between paths with different curvatures at the via point, either referring to an analytical one or to the heuristic one.

3.3.3. Derivation of the Boundary between Domains with Different Curvatures at the via Point

Consider the boundary R S R R S R / R S L L S R first. A clear representation of this case is illustrated in Figure 17 where θ i and θ f are on quadrant I.
The R S R R S R and R S L L S R path types associated with the via point P v in Figure 17 have the same length; they differ only in the curvature at the via point. The optimal direction θ v R associated with the R S R R S R path type and θ v L associated with the R S L L S R path type have opposite directions, so that
θ v R = θ v L + π .
Therefore, they are both orthogonal to the vector v v , having denoted with v v the vector connecting the center of the circle associated with the optimal heading and the via point P v .
In order to analytically derive the partition boundary between the R S R R S R and R S L L S R path types, the first condition to be verified is that the two types of paths should have the same length, so we have the following:
L 1 R S R R S R ( θ v R ) + L 2 R S R R S R ( θ v R ) = L 1 R S L L S R ( θ v L ) + L 2 R S L L S R ( θ v L ) ,
which results in the following equation:
( x i r x v r ) 2 + ( y i r y v r ) 2 + ( x v r x f r ) 2 + ( y v r y f r ) 2 = ( x i r x v l ) 2 + ( y i r y v l ) 2 2 Ω 2 + ( x v l x f r ) 2 + ( y v l y f r ) 2 2 Ω 2 .
From the optimality condition (Lemma 1) for the R S R R S R and R S L L S R paths, the following condition must be verified:
( e i R + e f R ) v θ v R = 0 ,
( e i L + e f L ) v θ v L = 0
where the superscripts R and L denote that the versor e i or e f refers to the path with right and left curvatures at the via point, respectively. This leads to a system of three equations (Equations (17)–(19)) with four variables ( P v = ( x v , y v ) , θ v R , θ v L ):
e i R = c v r c i r | c v r c i r |
e f R = c v r c f r | c v r c f r |
v θ v R = [ ( y v y v r ) , ( x v x v r ) ]
e i L = R ( γ i ) c v l c i r | c v l c i r | with   γ i = sin 1 2 Ω 1 | c v l c i r |
e f L = R ( γ f ) c v l c f r | c v l c f r | with   γ f = sin 1 2 Ω 1 | c v l c f r |
v θ v L = [ ( y v y v l ) , ( x v x v l ) ]
c v r = [ x v + Ω 1 sin ( θ v R ) , y v Ω 1 cos ( θ v R ) ]
c v l = [ x v Ω 1 sin ( θ v L ) , y v + Ω 1 cos ( θ v L ) ] .
The analytical result, obtained solving the above system of equations, is a curve I 1 quite close to the common tangent (superior cross tangent) r r r c + between the circles associated with the optimal initial and final turns as shown in Figure 18.
The classification rule for identifying the curvature at the via point C v i a p o i n t related to the considered boundary is given in Algorithm 5.
Alternatively, following a heuristic approach, the solution can be sought considering an approximation of this boundary given by r r r c + . The resulting classification rules are summarized in Algorithm 6.
Algorithm 5 Via point curvature-analytical approach—example in Figure 17 P v Region 1
Require:  q i , q f , P v
Ensure:  C v i a p o i n t
 compute curve I 1 from Equations (17)–(19)
if   P v π I 1 l  then
   C v i a p o i n t = R
else
   C v i a p o i n t = L
end if
Algorithm 6 Via point curvature-heuristic approach—example in Figure 17 P v Region 1
Require:  q i , q f , P v
Ensure:  C v i a p o i n t
C v i a p o i n t = C
if   P v π r r r c + l l  then
   C v i a p o i n t = R  
else if  P v π r r r c + r r  then
   C v i a p o i n t = L
end if
More generally, by following the described approach to derive each boundary, one can verify that each boundary can be approximated by an appropriate common tangent line.
For the sake of completeness, the complete scenario that occurs when θ i and θ f are on quadrant I (see, for example, Figure 19), resorting to a heuristic approach (i.e., to a proper approximation of each boundary), is summarized in Algorithms 7 and 8.
For the sake of brevity, the general schema that occurs for heading at initial and final points within any of the four quadrants is not detailed here. However, any case can be derived by analogously following the detailed case afforded so far.
Algorithm 7 Via point curvature-heuristic approach— { θ i , θ f } Q I - P v Region 1
C v i a P o i n t = C
if   m r r l e + > m λ f  then
if  P v > r r l e +  then
   C v i a P o i n t = R  
else if  λ f < P v < r r l e +  then
   C v i a P o i n t = L  
else if  r r r c + < P v < λ f  then
   C v i a P o i n t = R  
else if  P v < r r r c +  then
   C v i a P o i n t = L
end if
else
if  P v > r r r c +  then
   C v i a P o i n t = R
else
   C v i a P o i n t = L
end if
end if
Algorithm 8 Via point curvature-heuristic approach— { θ i , θ f } Q I - P v Region 2
C v i a P o i n t = C
if   m r r l e + < m λ i  then
if  P v > r l l c + || r r l e < P v < λ i  then
   C v i a P o i n t = R
else
   C v i a P o i n t = L
end if
else
if  P v > r l l c +  then
   C v i a P o i n t = R  
else if  r r l e + < P v < r l l c +  then
   C v i a P o i n t = L  
else if  r r l e < P v < r r l e +  then
   C v i a P o i n t = R  
else if  P v > r r l e  then
   C v i a P o i n t = L
end if
end if

4. An Illustrative Example

In this section, we provide a simple example to illustrate how the proposed classification rules work, demonstrating the functionality of the proposed algorithms. Let us consider the following initial and final configurations: q i ( 0 , 0 , 50 ° ) , q f ( 10 , 0 , 35 ° ) , a maximal curvature Ω = 1 , and the via point P v = ( 10 , 15 ) (see Figure 19).
The optimal path type has the form “ C i n i t i a l S C v i a P o i n t C v i a P o i n t S C f i n a l ”; thus, we need to identify the curvature at the initial point, at the final point, and at the via point. We can rely on the heuristic approach—more practical with respect to the analytical counterpart. Applying Algorithm 2 since θ i Q I and P v π λ i l , we immediately deduce that C i n i t i a l = L . Similarly, by applying Algorithm 4 since θ i Q I and P v π λ f l l , we immediately deduce that C f i n a l = L . With reference to the curvature at the via point, since the initial and final configurations are both in the first quadrant, and the via point is on Region 2, we can apply Algorithm 8. This allows us to deduce that C v i a P o i n t = R . Thus, we can directly deduce the optimal path type without making any calculations.
Following a conventional approach, the optimal solution would be found by searching among the eight candidate paths: { R S R R S R , L S R R S R , R S R R S L , L S R R S L , L S L L S L , R S L L S L , L S L L S R , R S L L S R } using any of the existing methods in the literature, such as those presented in references [17,18,29]. By applying one of these methods, the lengths of the eight candidate paths would be calculated and compared to determine the optimal path.

5. Numerical Results

In this section, we evaluate the performance of the proposed method. We conducted an experiment on random tuples ( q i , P v , q f ). The points P i , P v , and P f were randomly selected in a 10 × 10 environment with the minimum distance between any pair of points equal to 4 Ω 1 , being Ω = 1 . For each tuple, we applied the shortest path synthesis to identify the (potentially) optimal path types. Then, we solved only the three-point Dubins path problem for the specific path type identified. This can be performed by resorting to any of the methods in the literature, such as [17,18,29]. Here, the approach based on analytic geometry tools proposed in [29] was considered. For the sake of clarity of exposition, we denote it as the Geometry-Based Method (GBM) hereafter. The results of this numerical experiment are evaluated in terms of execution time.
Here, T G B M represents the execution time for solving the 3PDP using the GBM, while T C L refers to the execution time when applying the GBM exclusively to the optimal path types identified by the proposed classification rules. We can define the average factor of improvement I over M runs for a given method with respect to the GBM as follows:
I = 1 M j = 1 M T G B M ( j ) T C L ( j )
The simulation results confirm the benefits of including the shortest path synthesis into the three-point Dubins path planning. Indeed, as shown in Table 1, it reduced the required computational cost by half, resulting in a doubled improvement factor compared to a method that is already characterized for its fast computational time, as highlighted in [29]. Thus, the proposed classification rules speed up the planning algorithm, making it much more efficient with respect to the counterpart that does not use the classification.
From a computational point of view, Table 1 provides the average factor of improvement in runtime on M = 30 instances using the GBM with the use of the proposed classification rules. The algorithms were coded in MATLAB® (version R2020b) on an Apple Laptop with a 3.1 GHz Intel Core i7 processor, 16 GB RAM, running a MAC OS X Version 10.15.7 operating system. Also, note that the MATLAB implementations of the planning algorithms were not specifically optimized for execution time. Of course, by using dedicated hardware and a suitably optimized code, the execution time can be significantly less. So, the proposed classification strategy can be readily exploited in real-time applications because of its ability to reduce the computational effort of three-point Dubins path planning algorithms.

6. Conclusions

In this paper, we present a shortest path-type classification between an initial and a final configuration passing through an intermediate via point for a Dubins vehicle. The proposed methodology allows us to select the optimal path type without any calculations; hence, it is suitable to be used in real-time applications. The proposed strategy is described through the explanation of a simple worked example. Future research will include the extension of the approach to a time-varying and multi-robot scenario, as well as the use of the algorithm in practice.

Author Contributions

Conceptualization, G.P.; methodology, G.P.; software, D.D.P.; formal analysis, G.P. and D.D.P.; investigation, G.P. and D.D.P.; data curation, D.D.P.; writing—original draft preparation, D.D.P. and G.P.; writing—review and editing, D.D.P. and G.P. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Data are computer generated according to the paper content. Information on data generation is contained within the paper.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Lin, S.; Liu, A.; Wang, J.; Kong, X. A Review of Path-Planning Approaches for Multiple Mobile Robots. Machines 2022, 10, 773. [Google Scholar] [CrossRef]
  2. Tang, Y.; Qi, S.; Zhu, L.; Zhuo, X.; Zhang, Y.; Meng, F. Obstacle avoidance motion in mobile robotics. J. Syst. Simul. 2024, 36, 1. [Google Scholar]
  3. Molina, B.; Palau, C.E.; Calvo-Gallego, J. Unified Travel Solutions: Bridging Outdoor Route Planning with Intelligent Indoor Navigation. J. Data Sci. Intell. Syst. 2024. [Google Scholar] [CrossRef]
  4. LaValle, S.M. Planning Algorithms; Cambridge University Press: Cambridge, MA, USA, 2006. [Google Scholar]
  5. Dubins, L.E. On curves of minimal length with a constraint on average curvature, and with prescribed initial and terminal positions and tangents. Am. J. Math. 1957, 79, 497–516. [Google Scholar] [CrossRef]
  6. Boissonnat, J.D.; Cérézo, A.; Leblond, J. Shortest paths of bounded curvature in the plane. J. Intell. Robot. Syst. 1994, 11, 5–20. [Google Scholar] [CrossRef]
  7. Bicchi, A.; Pallottino, L. On Optimal Cooperative Conflict Resolution for Air Traffic Management Systems. IEEE Trans. Intell. Transp. Syst. 2000, 1, 221–231. [Google Scholar] [CrossRef]
  8. Savla, K.; Frazzoli, E.; Bullo, F. Traveling salesperson problems for the Dubins vehicle. IEEE Trans. Autom. Control 2008, 53, 1378–1391. [Google Scholar] [CrossRef]
  9. Meyer, Y.; Isaiah, P.; Shima, T. On Dubins paths to intercept a moving target. Automatica 2015, 53, 256–263. [Google Scholar] [CrossRef]
  10. Shkel, A.M.; Lumelsky, V. Classification of the Dubins set. Robot. Auton. Syst. 2001, 34, 179–202. [Google Scholar] [CrossRef]
  11. Consonni, C.; Brugnara, M.; Bevilacqua, P.; Tagliaferri, A.; Frego, M. A new Markov–Dubins hybrid solver with learned decision trees. Eng. Appl. Artif. Intell. 2023, 122, 106166. [Google Scholar] [CrossRef]
  12. Xue, P.; Pi, D.; Wan, C.; Yang, C.; Xie, B.; Wang, H.; Wang, X.; Yin, G. Collaborative planning and control of heterogeneous multi-ground unmanned platforms. Eng. Appl. Artif. Intell. 2024, 136, 108968. [Google Scholar] [CrossRef]
  13. Berdyshev, Y. Time-optimal control of a nonlinear system in the problem of visiting a group of points. Cybern. Syst. Anal. 1991, 27, 949–952. [Google Scholar] [CrossRef]
  14. Berdyshev, Y. A problem of the sequential approach to a group of moving points by a third-order non-linear control system. J. Appl. Math. Mech. 2002, 66, 709–718. [Google Scholar] [CrossRef]
  15. Kaya, C. Markov-Dubins interpolating curves. Comput. Optim. Appl. 2019, 73, 647–677. [Google Scholar] [CrossRef]
  16. Frego, M.; Bevilacqua, P.; Saccon, E.; Palopoli, L.; Fontanelli, D. An iterative dynamic programming approach to the multipoint markov-dubins problem. IEEE Robot. Autom. Lett. 2020, 5, 2483–2490. [Google Scholar] [CrossRef]
  17. Sadeghi, A.; Smith, S.L. On efficient computation of shortest dubins paths through three consecutive points. In Proceedings of the 2016 IEEE 55th Conference on Decision and Control (CDC), Las Vegas, NV, USA, 12–14 December 2016; pp. 6010–6015. [Google Scholar]
  18. Chen, Z.; Shima, T. Shortest Dubins paths through three points. Automatica 2019, 105, 368–375. [Google Scholar] [CrossRef]
  19. Parlangeli, G.; Ostuni, L.; Mancarella, L.; Indiveri, G. A motion planning algorithm for smooth paths of bounded curvature and curvature derivative. In Proceedings of the Mediterranean Conference on Control and Automation(MED), Thessaloniki, Greece, 24–26 June 2009; pp. 73–78. [Google Scholar]
  20. Parlangeli, G.; Indiveri, G. Dubins inspired 2D smooth paths with bounded curvature and curvature derivative. IFAC Proc. Vol. 2010, 43, 252–257. [Google Scholar] [CrossRef]
  21. Hota, S.; Ghose, D. Optimal trajectory planning for unmanned aerial vehicles in three-dimensional space. J. Aircr. 2014, 51, 681–688. [Google Scholar] [CrossRef]
  22. Becce, L.; Bloise, N.; Guglieri, G. Optimal path planning for autonomous spraying uas framework in precision agriculture. In Proceedings of the 2021 International Conference on Unmanned Aircraft Systems (ICUAS), Athens, Greece, 15–18 June 2021; pp. 698–707. [Google Scholar]
  23. Hansen, K.D.; La Cour-Harbo, A. Waypoint planning with Dubins curves using genetic algorithms. In Proceedings of the 2016 European Control Conference (ECC), Aalborg, Denmark, 29 June–1 July 2016; pp. 2240–2246. [Google Scholar]
  24. Zhu, M.; Zhang, X.; Luo, H.; Wang, G.; Zhang, B. Optimization Dubins path of multiple UAVs for post-earthquake rapid-assessment. Appl. Sci. 2020, 10, 1388. [Google Scholar] [CrossRef]
  25. Du, X.; Li, X.; Liu, D.; Dai, B. Path planning for autonomous vehicles in complicated environments. In Proceedings of the 2016 IEEE International Conference on Vehicular Electronics and Safety (ICVES), Beijing, China, 10–12 July 2016; pp. 1–7. [Google Scholar]
  26. Bayar, G. Reference path generation and obstacle avoidance for autonomous vehicles based on waypoints, dubins curves and virtual force field method. Int. J. Appl. Math. Electron. Comput. 2017, 5, 1–6. [Google Scholar] [CrossRef]
  27. Sharma, K.; Doriya, R. Coordination of multi-robot path planning for warehouse application using smart approach for identifying destinations. Intell. Serv. Robot. 2021, 14, 313–325. [Google Scholar] [CrossRef]
  28. Cai, W.; Zhang, M.; Zheng, Y.R. Task assignment and path planning for multiple autonomous underwater vehicles using 3D dubins curves. Sensors 2017, 17, 1607. [Google Scholar] [CrossRef] [PubMed]
  29. Parlangeli, G.; De Palma, D.; Attanasi, R. A novel approach for 3PDP and real-time via point path planning of Dubins’ vehicles in marine applications. Control Eng. Pract. 2024, 144, 105814. [Google Scholar] [CrossRef]
  30. Goaoc, X.; Kim, H.S.; Lazard, S. Bounded-curvature shortest paths through a sequence of points using convex optimization. SIAM J. Comput. Soc. Ind. Appl. Math. 2013, 42, 662–684. [Google Scholar] [CrossRef]
Figure 1. (a) Graphical interpretation of the left and right centers for an initial configuration q i = ( P i , θ i ) . (b) Initial and final configurations.
Figure 1. (a) Graphical interpretation of the left and right centers for an initial configuration q i = ( P i , θ i ) . (b) Initial and final configurations.
Machines 12 00659 g001
Figure 2. Representation of the common tangents between the circles C i r and C f l : r r l c + , superior cross tangent; r r l c , inferior cross tangent; r r l e + , superior external tangent; and r r l e , inferior external tangent.
Figure 2. Representation of the common tangents between the circles C i r and C f l : r r l c + , superior cross tangent; r r l c , inferior cross tangent; r r l e + , superior external tangent; and r r l e , inferior external tangent.
Machines 12 00659 g002
Figure 3. Notation for the position of a point with respect to a line r and an oriented line (curve) r o .
Figure 3. Notation for the position of a point with respect to a line r and an oriented line (curve) r o .
Machines 12 00659 g003
Figure 4. A sketch of an L S L L S L path.
Figure 4. A sketch of an L S L L S L path.
Machines 12 00659 g004
Figure 5. The vectors v i , v f , v v , and v θ v for an R S R R S R path.
Figure 5. The vectors v i , v f , v v , and v θ v for an R S R R S R path.
Machines 12 00659 g005
Figure 6. Classification of C S C C S C paths with θ i and θ f on quadrant I: example of partition.
Figure 6. Classification of C S C C S C paths with θ i and θ f on quadrant I: example of partition.
Machines 12 00659 g006
Figure 7. Optimal paths with P v on the right and on the left of the straight line λ i .
Figure 7. Optimal paths with P v on the right and on the left of the straight line λ i .
Machines 12 00659 g007
Figure 8. The example with P v is on the right of λ i and first turn on the left.
Figure 8. The example with P v is on the right of λ i and first turn on the left.
Machines 12 00659 g008
Figure 9. Geometric representation of the optimality condition in (5).
Figure 9. Geometric representation of the optimality condition in (5).
Machines 12 00659 g009
Figure 10. Optimal S R R S L path ( t 1 = 0 ).
Figure 10. Optimal S R R S L path ( t 1 = 0 ).
Machines 12 00659 g010
Figure 11. Frontier between R S R R S L and L S R R S L for θ i and θ f on quadrant I: (a) radius of the limiting circle Ω 1 = 1 , (b) radius of the limiting circle Ω 1 = 2 .
Figure 11. Frontier between R S R R S L and L S R R S L for θ i and θ f on quadrant I: (a) radius of the limiting circle Ω 1 = 1 , (b) radius of the limiting circle Ω 1 = 2 .
Machines 12 00659 g011
Figure 12. Example of optimal path with θ i on quadrant III where P v is on the left of λ i but the optimal initial turn is right.
Figure 12. Example of optimal path with θ i on quadrant III where P v is on the left of λ i but the optimal initial turn is right.
Machines 12 00659 g012
Figure 13. Example of optimal paths where P v is on the right and on the left of the straight line λ f .
Figure 13. Example of optimal paths where P v is on the right and on the left of the straight line λ f .
Machines 12 00659 g013
Figure 14. (a) Example of a situation with θ f on quadrant I. (b) Example of situation with θ f on quadrant IV.
Figure 14. (a) Example of a situation with θ f on quadrant I. (b) Example of situation with θ f on quadrant IV.
Machines 12 00659 g014
Figure 15. The vectors v i and v f for a path with zero curvature at the via point.
Figure 15. The vectors v i and v f for a path with zero curvature at the via point.
Machines 12 00659 g015
Figure 16. Example of plane partitioning for classification. Three different regions are highlighted in the Cartesian plane.
Figure 16. Example of plane partitioning for classification. Three different regions are highlighted in the Cartesian plane.
Machines 12 00659 g016
Figure 17. Example of paths with equal lengths for a case with θ i and θ f on quadrant I, and P v on r r r c + : (a) R S R R S R path type, (b) R S L L S R path type.
Figure 17. Example of paths with equal lengths for a case with θ i and θ f on quadrant I, and P v on r r r c + : (a) R S R R S R path type, (b) R S L L S R path type.
Machines 12 00659 g017
Figure 18. Curve I 1 : frontier between R S R R S R and R S L L S R path types computed numerically by exploiting Equations (16) and (17).
Figure 18. Curve I 1 : frontier between R S R R S R and R S L L S R path types computed numerically by exploiting Equations (16) and (17).
Machines 12 00659 g018
Figure 19. Illustrative example: q i = ( 0 , 0 , 50 ° ) and q f = ( 10 , 0 , 35 ° ) .
Figure 19. Illustrative example: q i = ( 0 , 0 , 50 ° ) and q f = ( 10 , 0 , 35 ° ) .
Machines 12 00659 g019
Table 1. The average factor of improvement in runtime on M = 30 instances with the use of the proposed classification rules over the Geometry-Based method.
Table 1. The average factor of improvement in runtime on M = 30 instances with the use of the proposed classification rules over the Geometry-Based method.
Improvement (I)
Classification 1.96
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

De Palma, D.; Parlangeli, G. Classification Scheme for the Three-Point Dubins Problem. Machines 2024, 12, 659. https://doi.org/10.3390/machines12090659

AMA Style

De Palma D, Parlangeli G. Classification Scheme for the Three-Point Dubins Problem. Machines. 2024; 12(9):659. https://doi.org/10.3390/machines12090659

Chicago/Turabian Style

De Palma, Daniela, and Gianfranco Parlangeli. 2024. "Classification Scheme for the Three-Point Dubins Problem" Machines 12, no. 9: 659. https://doi.org/10.3390/machines12090659

APA Style

De Palma, D., & Parlangeli, G. (2024). Classification Scheme for the Three-Point Dubins Problem. Machines, 12(9), 659. https://doi.org/10.3390/machines12090659

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop