1. Introduction
Among the wide range of challenges addressed in graph theory, the problem of finding the shortest path between two nodes (or vertices), commonly known as the shortest path problem (SPP), is one of the most fundamental and most widely studied. Indeed, a variety of real-world problems, ranging from network routing in communication systems [
1], robotics [
2], transportation logistics [
3,
4] and trajectories optimization [
5,
6,
7,
8,
9], depend on the efficient resolution of the SPP. In fact, regardless of the application context, the problem can always be formulated to determine a path between two vertices of the graph that minimizes the sum of the weights of the edges that compose it. Although this is a universal problem, solving the shortest path remains a topic of interest for many researchers.
Over several decades, Dijkstra’s algorithm, introduced by Edsger W. Dijkstra in 1956 [
10], and the A* algorithm, developed by Peter Hart, Nils Nilsson, and Bertram Raphael in 1968 [
11], have been used as fundamental methods for solving the SPP. Basically, Dijkstra’s algorithm finds the shortest path from a starting node to all other nodes in a weighted graph by iteratively selecting the node giving the smallest known distance and by updating the distances to its neighboring nodes. The A* algorithm, on the other hand, can be seen as an improvement of Dijkstra’s algorithm, as it uses heuristics to prioritize paths that appear to be the smallest, thus often finding the shortest path more efficiently. While practical in many problems, these algorithms can unfortunately be computationally expensive and slow for very large graphs, particularly when there are complex constraints between nodes and segments. These algorithms can also be inefficient, or even fail to find a solution, when the cost function to be minimized is non-additive.
The difficulty of solving the SSP is not always due to the choice of the optimization algorithm, but rather to the way in which the problem is defined. Loui [
12] highlighted this issue by criticizing the rigidity of classical SPP models and pointed out the relevance of incorporating probabilistic weights in these methods under certain circumstances. To address this problem, two solutions were proposed: (1) minimizing the expected values of the weights, and (2) setting bounds for each weight and minimizing a combined function. Another solution proposed by Loui was the use of dynamic programming, which consists of solving a problem by dividing it into sub-problems, then solving these sub-problems incrementally from the simplest to the most complex, storing their intermediate results.
The use of weighted graphs with random variables, instead of predetermined fixed variables, is a common approach in the literature. This approach was used by Raj et al. in [
13] to improve the safety of hazardous goods transport routes. Their objective was to identify the safest path in a graph, while imposing a variance constraint to mitigate paths with excessive uncertainties. In fact, the modeling of the variance is particularly interesting from an optimization point of view, as it does not reduce the cost function to a simple sum of weights. Indeed, the variance, which is quadratic by nature, requires a more complex calculation and can be determined for each path
p using a binary vector
, such that
if
, or
otherwise. Starting from this definition, the variance of a path can be computed using the covariance matrix
, which is symmetric and positive definite, with rows and columns indexed by the segments of the graph. The interaction cost between two arcs
and
is reflected by the sum of the off-diagonal entries
, while the linear cost of an arc
is represented by the diagonal element
. The variance of a path
p is then obtained by using the formula:
.
While Raj et al. [
13] treated the variance as a constraint, Sen et al. [
14] considered it as a component of the cost function (or as the cost function itself). In their study, which focused on the application of a shortest path algorithm for road traffic, they implemented a multi-objective optimization to balance the expected travel time and its variance. The concept of considering a cost function of the form
is referred to as the quadratic shortest path problem (QSPP). Hu and Sotirov in [
15] proposed a solution to this problem using semi-definite programming relaxation methods for directed graphs. They used the alternating direction method of multipliers to find solutions and demonstrated that their bounds were the strongest for this problem at that time. Many methods have also been effective in addressing the QSPP, such as proposed by Rostami et al. [
16,
17] and by Hu [
18].
In several studies, the weighting of segments in shortest path calculations has been treated using random variables. This technique is typically used when it is difficult to predetermine the weights of segments in a graph. Weiss and Kaminka [
19] proposed a slightly different modeling approach by exploring shortest path computation techniques when obtaining the exact segment weights is algorithmically expensive. To deal with this complexity, they approximated the weights with a certain level of confidence using a cost estimation function that provides bounds on the actual value of the weights. However, this approach, while practical, requires the development of a shortest path algorithm that works with these estimated weights, which may affect the optimality of the solution.
Turner and Hamacher in [
20] introduced the concept of the universal shortest path problem (USPP). This concept consists of incorporating and then extending previously known variants, such as the largest edge cost (bottleneck SSP) and the difference between the largest and smallest edge cost (balanced SPP). In a subsequent study [
21], Turner developed strongly polynomial-time algorithms to solve the USPP with equality constraints. These efforts highlight the continuous evolution and diversification of methodologies to address the complex challenges posed by shortest path problems.
An alternative modeling approach for addressing the SPP involves considering graph weights not as real scalar values but as vectors. This vector-based method, adopted by Jiang et al. [
22], assigns distinct physical meanings to each vector component. For instance, in the context of a road network, vector weights might represent the length of a road segment, the degree of congestion, and the probability of delays. The SPP can then be solved by using a cost function that mathematically combines the vector components, reducing it to a traditional cost function. However, this approach does not offer any significant improvements; it simply organizes the data differently while solving the SPP using Dijkstra’s or A* algorithms. It is therefore more adapted for multi-objective problems, where the objective is to optimize multiple criteria as considered by Salzman et al. in [
23] to solve the SPP with two objective functions using heuristic methods. The vector-based approach may seem trivial, because once the problem is modeled as a weighted graph with associated quantities, engineers can easily apply standard physical formulas to derive a relevant cost. However, the real challenge often lies in the initial modeling of the problem as a weighted graph, for which this approach does not provides solutions.
Vidhya and Saraswathi [
24] addressed the SPP under fuzzy conditions using trapezoidal intuitionistic fuzzy numbers (TrIFNs). These TrIFNs were used to model the uncertainties and inaccuracies associated with the arcs in a graph. The problem was formulated as a bi-objective problem: minimizing costs and travel time. Each arc of the graph was associated with a fuzzy cost
and a fuzzy time
.
The literature review clearly shows that in the majority of studies (if not all), a rigid representation of the shortest path problem has always been considered. No current approach envisages a weighting system that considers the position of a segment in the graph, such as adapting the weights depending on the previous nodes (or segments) on the path. It has also been observed that the shortest path problem and its variants offer numerous opportunities for research and application. However, despite the popularity of the problem, the costs associated with a path are typically computed in only three ways: through (1) additive scalar cost functions of the form , (2) quadratic scalar cost functions , or (3) cost functions that incorporate vector weights. Consequently, it seems both interesting and necessary to generalize the cost functions or the methods of weighting the graphs to a wider range of problems.
This paper proposes to extend the concept of cost functions in traditional SPPs by including non-additive functions. It provides a classification of these functions and introduces a method for solving the SPP using a non-additive cost function with conditional weighting. Driven by practical engineering needs, the method is applied to a specific case within the aeronautical sector. In this case study, the integration of geometric constraints requires the use of non-additive cost functions, illustrating the practical application and relevance of the proposed method.
The remainder of this paper is organized as follows: In
Section 2, the notations used throughout the paper are clarified. In
Section 3, different types of cost functions are classified by introducing new elements of analysis for finite graphs. The application of the line graph and the estimation of the graph size following a sequence of iterated line graphs are explored in
Section 4. Insights from the previous sections are then combined in
Section 5 to optimally solve the shortest path problem using a
k-additive cost function. An application example highlighting the relevance of this method is presented in
Section 6. The paper concludes with final remarks and conclusions in the last section.
2. Notations for Graphs
Two types of graphs are considered in this study: undirected graphs and directed graphs (or digraphs). These sets will be denoted as and , respectively. Basically, a graph can be defined as a set of vertices (or nodes) V connected by a set of edges (or segments) E, and is mathematically denoted as . A digraph is a type of graph where the edges have a direction associated with them. This aspect means that the connections between vertices are not bidirectional, as in a undirected graph, but follow a specific direction from one vertex to another.
To distinguish edges from vertices, the following notations are used: vertices are represented by lowercase Latin letters (e.g., , etc.), while edges are represented by lowercase Greek letters (e.g., , etc.). Based on these notations, the following properties can be established:
If is an undirected graph, the vertices that constitute an edge are interchangeable. Thus, any edge defined as a set of nodes such as with , can be equivalently expressed as . Consequently, an edge is a subset of V composed of two elements.
If is a digraph, an edge can be seen as an ordered pair of two elements that are obviously not interchangeable. Consequently, for any edge defined as with , a direction must be specified. For this purpose, the first element of the directed edge, , is referred to as the tail of the edge , while the second element, , is referred to as the head of the edge .
Both directed and undirected graphs can be weighted. A weighted graph is defined as where is a function that assigns a real weight to each edge.
Finally, the set of neighbors of a vertex is denoted as , and is defined as follows: . This set includes all vertices u that are directly connected to the vertex (or node) v by an edge in the graph.
3. Classification of Graph Cost Functions
As discussed in
Section 1, the effectiveness of solving the SPP depends not only on the definition of the graph, but also on the nature of the cost function. This function is essential for mathematically evaluating the efficiency of a path in terms of metrics to be minimized. The objective of this section is to define three categories of cost functions applicable to any SPP: (1) additive, (2) non-additive, and (3)
k-additive. In addition, this section provides mathematical definitions to characterise these categories using techniques of differential analysis on finite graphs.
3.1. Elements of Differential Analysis on a Finite Graph
Calculus on finite weighted graphs is a well-studied field. Dodziuk [
25] initiated the study of the Laplacian operator in the discrete domain, highlighting several properties of the continuous operator that transfer well to discrete representation. Subsequent work by Woess [
26] and McDonald and Meyers [
27] further developed this framework by considering the spaces of vertex or edge functions as a Hilbert space
. This approach involves defining an inner product in
and
, which facilitates the application of calculus concepts. The mathematical tools developed in these studies also allow the use of differential operators, such as the weighted graph derivative
, or the weighted gradient (
) and divergence (
), respectively, defined as
with
and
with
.
In this study, various concepts from differential calculus are applied to graphs in order to characterize both the structure of the graph and its associated cost function. For further information on this subject, readers are referred to the studies of Friedman and Tillich [
28,
29,
30]. These studies introduce a specialized form of “calculus” for graphs, allowing graph theory to make new connections with functional analysis. Such an innovative approach has been applied effectively in various domains, including image processing, machine learning, and network analysis [
31,
32,
33,
34].
Let be a cost function associated with a graph G, where denotes the set of all paths in . A path is an ordered list of nodes (or vertices) without repetition, such that any two consecutive nodes in the list are connected by an edge. Consequently, it can be written that . Also, given the absence of node repetition in any path, the number of possible paths is finite, i.e., .
We can introduce the
space of real path functions , which is a
-dimensional Hilbert space such as:
The variations of
can be analysed by examining the function
(i.e., the differential of
f) which can be defined as follows:
where
means that the edge
is included in the path
p, and
refers to the evaluation of the cost function on the edges of
p excluding the edge
.
Equation (
2) can be re-written as:
to express the variation of
f with respect to an edge
that connects two paths
and
within
, such that
. This equation is useful to describe the effect of including the edge
in a given path
p.
Similarly, Equation (
4):
can be used to quantify the difference in
between two paths
and
sharing the same “terminal” edge
. This equation is useful to compare the effect of connecting the edge
to two given paths,
and
.
Finally, using the mathematical definitions introduced in this section, we can establish the following property for a generalized cost function f.
Property 1. The cost function f can be expressed as the sum of its local differentials by considering the complete path p, such that:This representation of f is referred to as the “differential form of f”. 3.2. Additive and Non-Additive Cost Functions
In graph theory, an additive cost function is a function where the total cost is “simply” the sum of individual costs associated with each edge that compose a path. This type of function is commonly used in problems where the cost can be incrementally accumulated without considering the interaction between edges or nodes.
Mathematically, an additive cost function can be defined on the graph set
as follows:
is then the set of additive cost function. Based on this definition, a non-additive cost function is any cost function associated with graph
G that does not belong to the set
, such that:
3.3. k-Additive Cost Function
A k-additive cost function generalizes additive cost functions and refines the concept of non-additive cost functions by incorporating interactions among up to k components of a path. In other words, a k-additive cost function is a function for which the value of the cost is influenced by interactions among up to k components. Interactions beyond the kth component are assumed to be negligible or zero. This type of cost function is particularly useful in problems where the cost associated with an edge in a graph is primarily influenced by the properties of adjacent edges.
In addition, the k-additivity nature of a cost function can be oriented. Therefore, we can categorize the following three sets according to their orientation:
Definition 1. The k-additive on the left cost function set: Definition 2. The k-additive on the right cost function set: Definition 3. The k-additive on the left and right cost function set: We now understand that an additive cost function
is a 0-additive cost function. Specifically, if in the definition it is found that
, this indicates that
p is an empty path, which is in line with the definition given in Equation (
6)
The main concepts presented in this section are illustrated in
Figure 1, which represents a section of a graph
G.
Figure 1a illustrates the difference in
along the edge
between two paths
and
.
Figure 1b, on the other hand, shows that if
on edge
remains constant when coming from two distinct paths
and
, both distant by
k nodes, then the cost function is
k-additive. Specifically, the equality between
and
, representing the differential of
f on the edge
from paths
and
(i.e.,
and
, respectively), confirms these
k-additive characteristics.
Property 2. Let us consider the three sets , and , as defined in Equations (8)–(10). Thus, we can write: Proof of Property 2. Let
. By Definition 1 of
given in Equation (
8), we have:
This expression states that for any path p and node e where the length of p (i.e., ) is at least k, the variation in the partial derivative of the function f along the concatenated path equals zero.
We define
with
, and
, which implies
and
. Therefore, we have:
Given that
, it follows that:
Or, , which implies that . This sequence of equalities demonstrates that the function f, which shows no change in differential after extending the path beyond k nodes, belongs to .
For and the proof is conducted with the same methodology and inverting path order. □
Using the mathematical expressions and properties defined above, we can now represent a cost function as the sum of its local variations, as detailed in Property 3.
Property 3. is k-additive because we can reduce its differential form (c.f. Equation (5)) to a sum of terms with the path considered being only k nodes long:This formulation is particularly useful for shortest path problems when the cost functions are non-additive. By using the local variations, we can better understand how the costs accumulate along the different segments of a path, even when the overall cost function is not simply the sum of the costs of each segment. There are certain cases where the form of the cost function adds complexity to solving the shortest path problem. This complexity arises when the variations in the cost function depend on paths of arbitrary lengths. Such a situation occurs with k-additive functions when . This set of functions, which includes all other sets of functions, represents the most challenging category to analyze within this context.
Definition 4. The general cost function set on G can be defined as: Using Definition 4, we can conclude that if a function belongs exclusively to and to no other defined set of functions, it cannot be solved using the methods presented in this paper for the shortest path problem.
3.4. Examples of Classification
Here, we provide two examples of cost functions which can be classified based on the definitions proposed in the previous sub-sections.
3.4.1. A Classical Function
Let us consider that each edge
of a graph
G is associated with a weight
. A classical and trivial cost function would be to compute the cost of a path by summing the weights of its constituent edges. This cost function is commonly used in many shortest path problems. Although it is a simple model, it is often sufficient to solve the problem under consideration. It can be defined as follows:
Given the structure of the cost function, it can be easily demonstrated that , meaning that f is additive.
3.4.2. A Simple General Function
Let us consider the sliding product window function
, defined such that:
where
.
Property 4. Using the definition proposed in Section 3.3, it can be shown that: Proof of Property 4. Let
, and
. Using the definition of
in Equation (
18),
can be developed as follows:
Then, by using the definition of
given in Equation (
2), we can write:
By assuming that where can vary, we can study if the variation of modifies the cost :
, thus
, thus
This result demonstrates that based on , the cost function may either belong to the set or to the set . Consequently, is a member of the intersection of these two sets, implying that . □
4. Line Graph Application for k-Additive Functions
In 1932, Whitney [
35] introduced a new construction for undirected graphs, called
line graphs. This concept was further extended to directed graphs (
line digraph) with the study proposed by Harary and Norman [
36]. Line digraphs are particularly useful in applications where the relationships between the edges of a graph are as important as the relationships between the vertices themselves. Consequently, they can be used to account for constraints in a graph by converting problems stated in terms of edge connectivity into equivalent problems stated in terms of vertex connectivity, which are often easier to analyze and solve using existing graph algorithms.
4.1. Introduction to Line Graphs
Basically, a line digraph
of a given digraph
is a graph that represents the adjacencies between the edges of
. The line graph is constructed using a transformation denoted as
, and based on the following conditions:
In Equation (
22), the first condition means that each vertex of
corresponds to an edge of the original graph
, while the second condition implies that two vertices in
are connected by an edge if and only if their corresponding edges in
share a common vertex.
The transformation can be seen as a mapping application from the set of digraphs to itself, denoted as: . It is important to note that there is a similar mapping application for undirected graphs; however, here, we only focus on directed graphs. Indeed, any undirected graph G can be converted into a directed graph by transforming each undirected edge into two directed edges and . Therefore, without loss of generality, the discussion in the remainder of this paper will focus exclusively on directed graphs. Consequently, the notation will be simplified to the more general notation .
Figure 2 illustrates a example of the process of generating a line digraph
from the original digraph
. As shown in this figure, the first step of the transformation involves replacing each edge of the original digraph
with a vertex in
. The new vertices in
are labeled to indicate the direction of the original edge in
they represent. For example, the edge from vertex 1 to 4 in
becomes a vertex in
labeled as “14” (i.e., 1 to 4). Subsequently, all vertices created in
are connected with directed edges based on a specific rule: if two edges in
share a common vertex, and one edge’s arrival vertex is the other edge’s departure vertex, then the corresponding vertices in
are connected by a directed edge. For example, since
has edges from 1 to 4 and from 4 to 2, then in
, the vertex representing “14” will have a directed edge to the vertex representing “42”.
In this paper, we will use several iterations of
. The sequence of graphs
G built by the iteration of
can be noted as:
This sequence was studied by van Rooij et al. [
37], who demonstrated that if a graph contains a cycle, the sequence will never end with an empty graph. They also found that the size of graphs could increase without bounds. This aspect can cause problems if
must be numerically iterated a significant number of times.
Figure 3 illustrates a more general procedure for generating the transformation
from the graph
.
4.2. Algebraic Formulation of the Adjacency Matrix of a Line Graph Sequence
One of the fundamental tools in graph analysis is the adjacency matrix. This binary matrix captures all connections between the vertices of a graph, thereby defining its structure. However, graph transformations completely redefine these connections. Consequently, it becomes necessary to determine the equivalent adjacency matrix for a line graph that results from applying the transformation multiple times.
For this purpose, we introduce the application
, which is a matrix transformation that squares the size of the matrix. This transformation is defined as follows:
where ⊙ represents the Hadamard product, or element-wise product, and
is built such that:
and
is filled with zeros, except on the
kth row filled with ones.
Theorem 1. Let be the adjacency binary matrix associated with the digraph . The matrix composed of non-zeros rows and columns from is the adjacency matrix of .
Proof of Theorem 1. Let , such that , and let be the adjacency matrix associated with G. In this proof, we will construct the adjacency matrix associated with H.
Let us assume that we do not know if an edge exists; we will then consider all possibilities. Each node u in can potentially be connected to any other node v in , including itself (if we allow self-loops ). This results in possible connections. If we denote , therefore, the size of the matrix will be .
Let us keep the order of the nodes used in the adjacency matrix
as follows:
We choose the order of the nodes for
as follows:
Thus, we can say that:
There could be a one in the line , corresponding to in only if ; meaning that .
There could be a one in the kth line, with , and the lth row, with , corresponding to the connection only if ; meaning that (i.e., the second node of is equal to the first node of ).
Using Properties 1–3, we can deduce that:
where
and
.
By definition of the Kronecker product (⊗) and using the definition of
and
in Equations (
24) and (
25), respectively, we can write:
This last result thus demonstrates that is the adjacency matrix of . □
The result of Theorem 1 can be generalized to a line digraph resulting from m-transformations, using the following theorem:
Theorem 2. Let be the adjacency binary matrix associated with the digraph . The matrix defined by:is the adjacency matrix of Proof of Theorem 2. Let . We can demonstrate the result shown in Theorem 2 using a proof by induction. For this purpose, let us denote as the property we want to demonstrate.
Using the result of the proof of Theorem 1, we can say that
is the adjacency matrix of
, and we can write:
To determine the value of
X, we need the size of
. If
is a
matrix, then
is a
matrix. By induction:
is a
so
, since:
Using the direct product and Kronecker product rules, and arranging the terms of the equations, we obtain:
Based on the definition of
, we can write:
This last result implies that is the adjacency matrix of . Thus, the property is true for .
In conclusion, the property is true for all □
Finally, Theorem 3 can be used to quantify the upper bound of the complexity of the iterated line graphs in terms of the number of edges, considering that while the structure becomes increasingly interconnected, it is still finite and bounded as a function of the number of vertices n and the number of iterations m.
Theorem 3. For any graph G, the number of edges of its associated mth line graph is bounded. This aspect implies:
Proof of Theorem 3. Let us define the application
as the sum of all terms of a matrix, such as:
The application can be used to count the number of edges in a graph given its adjacency matrix. Specifically, for a graph with its associated adjacency matrix , applying yields the number of edges, represented as .
Considering that
and
are binary matrices, we can write:
We need to know the value of
depending on
m. Let
and
. Thus,
, and:
Let
and
with
. We can therefore rewrite the previous equation as follows:
which means that
.
Moreover, if a graph has n nodes, it implies that . We find that . Additionally, , the relationships holds.
By integrating all this information, we deduce that .
Finally, we can conclude that . □
As shown in
Figure 4, the size of the iterated line graph could increase exponentially with the number of transformations
m. For instance, by considering a digraph
G with
nodes, the associated 6
th line digraph, i.e.,
, will have a maximum of
nodes. This aspect represents one of the main drawbacks of using multiple transformations, as it could become too time-consuming to generate the
mth line digraph.
6. Application: Case Study in Airport Trajectory Optimization
One of the main motivations for the development of the shortest path technique with conditional weighting is to address problems where constraints, which can be geometric or physical, can lead to the generation of paths that are infeasible in practice.
A typical example is the management of aircraft ground trajectories at airports. Indeed, airports impose various types of restrictions and rules that pilots must comply with, such as directional taxiways and prohibited turns to avoid sharp maneuvers or to account for the size (or weight) of the aircraft. In addition, aircraft can accelerate or decelerate as they enter or exit turns. Consequently, their ground speeds are influenced by their current trajectory and the segment they will taxiing next. As illustrated in
Figure 7a, these factors create areas within the airport where the ground speed of an aircraft cannot be predetermined. In the segments in the circled area in
Figure 7a, the aircraft ground speed can vary according to three scenarios: the aircraft can (1) maintain its ground speed if it continues on the straight segment; (2) decelerate if it enters a turn; or (3) accelerate if it exits a turn. Additionally, certain trajectories are prohibited due to restrictions on maneuvers, such as sharp turns. For instance, as shown in
Figure 7a, the aircraft is not authorized to perform a left turn to enter the turn segment, or a right turn to exit the turn segment.
Due to these constraints, optimizing the ground trajectory of an aircraft within a graph that replicates the topology of an airport, as illustrated in
Figure 7b, presents significant challenges.
6.1. Model
In this section, we evaluate the effectiveness of the conditional weighting shortest path method proposed in this paper for solving the shortest path problem in an airport, taking into account constraints on sharp turns.
The cost function for this application is based on the total distance traveled by the aircraft, while avoiding sharp turns. All sharp turns are determined
a priori on the original graph using a classification method that considers four nodes (or three edges) to verify if the middle segment is allowed. Turn constraints are included in the cost function with a barrier function
, defined as:
By considering the function:
which returns the distance between two points of the airport, the cost function can be expressed as follows:
Using the definitions and properties introduced in
Section 3.3, we can confirm that
belongs to
(see Equation (
10)). Indeed, the left–right
k-additivity nature of the cost function comes from the need to consider information about the edges preceding and succeeding a given edge to accurately classify sharp turns.
6.2. Methodology and Results
To compare and validate the CWSP method, the optimization problem described in Equation (
38) was applied to Miami International Airport. In addition, 50 different scenarios were considered to find the shortest path between two randomly selected points on the airport graph, each separated by at least 20 nodes. For each scenario, the CWSP method using the non-additive cost function specified in Equation (
51) was applied. At the same time, Dijkstra’s algorithm was also applied; however, since it cannot handle non-additive cost functions, the cost function for this algorithm was limited to the total distance traveled by the aircraft:
which is additive by nature.
It should be noted that the optimal solution found by Dijkstra’s algorithm was further evaluated using the cost function described in Equation (
51). This evaluation determined whether the solution provided by Dijkstra’s algorithm was reliable (i.e., feasible) or not. If the value of the cost function was finite, this indicated that Dijkstra’s algorithm had found a viable solution. Conversely, if the value of the cost function was infinite, this suggested that the solution was not feasible in practice, as it included at least one prohibited sharp turn.
Figure 8 shows examples of results comparisons for four different problems. In this figure, the trajectory found by Dijkstra’s algorithm is highlighted in green, while the trajectory found by the CWSP method is highlighted in blue. At a first glance, both strategies were able to find a trajectory between the source and destination nodes. However, when the trajectory found by Dijkstra’s algorithm was evaluated using the cost function in Equation (
51), an infinite cost value was observed. This result can be attributed to the fact that the solution provided by Dijkstra’s algorithm contains sharp turns that are forbidden. These turns are marked with red circles for each problem. In contrast, the CWSP method successfully found a better and feasible solution without any forbidden turns.
This analysis was repeated for all 50 problems. A table summarizing the results for each problem is included in the
Appendix A. By analyzing the results, it was found that the CWSP method successfully solved all problems, consistently finding the shortest feasible trajectory while avoiding sharp turns. Dijkstra’s algorithm was also able to find a solution, but only 28% of these solutions were reliable (i.e., feasible without forbidden turns). Interestingly, as shown in the table in the
Appendix A, whenever Dijkstra’s algorithm found an acceptable solution, it was identical to the solution found by the CWSP method. This analysis is significant because it shows that the CWSP method is not only capable of finding the shortest path in the sense of Dijkstra’s algorithm, it is also well-suited to handle complex graphs with constraints or to deal with non-additive cost functions.
7. Conclusions
In this paper, we presented a generalization of classical cost functions on graphs, traditionally called “additive” functions, which are part of the space of real edge functions. This generalization leads to the development of real path functions, a category known as non-additive or k-additive. While these functions are applicable to various shortest path problems, their complexity makes traditional shortest path algorithms designed to optimize real edge functions unsuitable.
To address a shortest path problem, our first step was to develop tools for characterizing and analyzing path functions. By studying the variations of these functions, we were able to classify them into distinct sets.
Then, for a subset of these non-additive function sets, we proposed a technique for solving the shortest path problem. This technique relies on the weighting of a substitute graph, which is determined by successive iterations of transforming a graph into its associated line graph. The proposed method has proven effective on a simple problem that could not have been solved using Dijkstra’s algorithm alone, demonstrating its potential for application to numerous physical and engineering problems requiring complex modeling. This article establishes an initial framework and provides an exact solution that represents a significant advance in the field of complex shortest path problems.
However, the computational cost of such a method is difficult to bound because it strongly depends on the topology of the initial graph. Furthermore, the complexity of the cost function rapidly increases with the size of the replacement graph used to accurately solve the problem. Finally, this method, with its solid proof of convergence, can be used to validate the efficiency of faster heuristic methods for solving the shortest path problem with non-additive path functions.
The research initiated in this paper can be extended in several directions. Firstly, the upper bound provided for the size of the linear graph sequence is highly dependent on the structure of the initial graph. A tighter limit could potentially be obtained by examining how the sequence of linear graphs evolves as a function of the topology of the initial graph. Furthermore, it has been observed that when k is large, the cost of constructing and weighting the line graph becomes significant. It would be useful to study and limit the error introduced when approximating a k-additive cost function by a -additive cost function, where . This approach could lead to faster solutions to the problem while quantifying the associated error. Finally, the general concept of non-additive cost functions encompasses different types of functions. The methodology proposed in this paper is suitable for functions in . However, we believe that exact methods applicable to functions in which are similar to quadratic forms such as ”, are also worth exploring.