• Keine Ergebnisse gefunden

In this chapter, we have shown that the extent of previous research related to the topic of this thesis is vast, yet such work has not covered all aspects of the proposed problem. We have also shown that a general, scalable and variable pathfinding benchmark problem appears to be lacking. Furthermore, a methodology that is problem-specific, application independent and diversity preserving and enhancing does not exist. A study exploring the advantages and disadvantages of different representation schemes is required. Finally, given the nature of many-objective optimisation problems and the fact that a hypothetical DM must select from a large solution set, we have shown that the existing work on decision support systems can be extended in this area.

Although other works cover a wide range of aspects, there is still room for improvement and more in-depth analysis. In the following chapters, we address the drawbacks of the current approaches and present solutions to increase the performance of pathfinding algorithms.

4 Benchmarking Pathfinding Algorithms

Benchm

In this chapter, the following points are covered

• Benchmark Construction

• Baseline Evaluation

The following chapter is largely based on the publication [WM22b].

Testing new algorithms is a challenging task. The literature on specific test prob-lems for pathfinding and, specifically, multi-objective shortest path probprob-lems is scarce. In this thesis, we develop a novel scalable many-objective pathfinding benchmark, which can be considered a suite because many different instances can be generated. This chapter provides an in-depth description and analysis of the test suite. The benchmark itself is highly variable and scalable, as it can be adjusted in terms of size and hence the search space size; it can also be adjusted with respect to various constraints which influence the complexity.

4.1 Grid and Graph-based Benchmarking

Benchmarks can be based on grids to resemble an environment where a shortest path is to be found. Another approach is to create tests based on graph structures, as they often resemble real-world maps in a better way. In contrast to [HZZ+19]

(cf. Section 3.3), our proposed test toolkit follows a top-down approach, i.e., we propose well-defined functions that are used to create test problems of arbitrary size. Furthermore, we suggest five objective functions that can be used to evaluate MOO algorithms.

This benchmark is aimed at representing environments for pathfinding algo-rithms on maps. Hence, we construct the instances by defining a cartesian grid with a specific size, where the cells have the same dimensions, also known as integer lattice. The variable properties of the benchmark influence the properties of each cell in the lattice [WM22b].

4.1.1 Benchmark Problem Construction

The multi-objective pathfinding problem can be defined as described in Sec-tion 2.3.2 and EquaSec-tion (2.10). Before constructing the problem-related graph, we model a grid which is used as a map for the pathfinding problem. We as-sume that we have a two-dimensional search space defined by a given size (i.e., size of the map) denoted by the range [1,xmax]inx-direction and[1,ymax]in y-direction,xmax,ymax∈N. This search space is divided into grid cells, which define the resolution of the path planning and therefore the size of the search space. Finally, the grid hasxmaxnumber of grid cells in thex-direction andymax number of grid cells in they-direction accordingly. We define different types of grid cells denoted by the position(x,y). These types impose constraints on the velocity of movements indicated byvmax(x,y), which represents different road types as well as obstacles (denoted bygLA(x,y)andgCH(x,y)in Section 4.3.1).

On obstacles a movement cannot occur. The cells with a velocity of zero define infeasible areas which can add further non-linear constraints.

We define an elevation functionh(x,y)with a variable number of hills, which can be defined by using either a peak-function or a combination of hill functions.

This elevation function can be mapped to the cells in the map. Two additional features concern the neighbourhood and backtracking. The neighbourhood property restricts the number of possible neighbour cells an agent can move to.

We use the 2k-neighbourhood, similar to [SSF+19]. For instance,k=2 means that it is possible to go to one of the four neighbours located in the cardinal directions. This neighbourhood is known as thevon Neumann neighbourhood. If k=3, there are eight possible neighbours, taking the diagonal cells into account.

This neighbourhood is known as theMoore neighbourhood. The backtracking property of the benchmark defines whether an agent can go backwards or only forward. For instance, if backtracking is allowed and the goal is to go from the north-west corner of the grid to the southern-east corner, the agent can go in any direction specified by the 2k-neighbourhood from any cell on a certain path.

If backtracking is not allowed, the agent can only move in the directions of east, south and south-east (ifk=3). An 8-neighbourhood with enabled backtracking is also known as king-moves, derived from chess. A summary of the above adjustable features is shown in Table 4.1.

In the following, we propose a graph-based representation of the benchmark grid. As stated in Section 2.3.2, we describe all objectives for the evaluation of a solution represented as a pathpof variable length jconsisting of a list of adjacent nodes in a graph: p= (n1,· · ·,nj). However, for the evaluation on the grid (as described above), each nodeni,i=1,· · ·,jcan be replaced by their respective coordinates(xni,yni).

To transfer the grid to its corresponding graph, each cellci of the grid with its respective coordinates(xi,yi)is considered as a node in the graph. In our implementation, we assign properties to the graph’s elements in the form of key-value pairs (see Section 2.3.2). Therefore, we assign the coordinates as a property to each node, making it possible to evaluate the objectives. Additionally, the various cell types, velocity constraints, characteristics about obstacles and elevation values are assigned to the properties of the node. Depending on the 2k-neighbourhood and backtracking property, the corresponding nodes are connected to their respective neighbours using edges. The resulting graph is also known aslattice graph. Figure 4.1 shows an example of the transfer from a grid to a graph [WM22b].

Figure 4.1: Superimposed graphs on grids fork=2(left) andk=3(right) instances. [WM22b]

Table 4.1: Adjustable properties of the proposed benchmark [WM22b]

Property Values

Size {x,y}max∈N,

1<{x,y}max Movement per cell vmax

Expected delay delay(ni,ni+1) Elevation Function nh∈ {1,2,3,M}

Neighbourhood 2k,k∈ {2,3} Backtracking {True,False}

4.1.2 Objective Functions

In this section, we define five objective functions by which a solution pathpof lengthKis evaluated.

Objective 1: Euclidean length.The Euclidean length represents the distance between the startnSand the endnEnd of a path. It is calculated by the sum of the Euclidean distancesd(ni−1,ni)between the neighbouring vertex pairsni−1

andniin a solution pathp, as follows:

f1(p) =

K−1

i=1

d(ni,ni+1) (4.1)

Here,i=1 corresponds to the starting pointnS, and the last node of a path nK maps to the endpoint denoted nEnd. Figure 4.2 illustrates an example. In real-world applications, this objective can additionally be used to estimate fuel consumption [WM22b].

Objective 2: Expected delays. The second objective is meant to measure the expected delay in a given path. In real-world applications, delays are caused by accidents or traffic. Therefore, a delay is the likelihood of having an accident or encountering other blockages on each node of the path. However, in our proposed approach, we do not take draws from the probability distribution, making it deterministic. The expected delay per path segment between the nodes ni and ni+1 is defined by the differences between the corresponding velocity values of the two adjacent nodes (cf. Equation (4.12)). Our proposed second objective f2calculates the sum ofdelayfor all the edges on a given path p[WM22b]:

f2(p) =

K−1

i=1

delay(ni,ni+1) (4.2)

Figure 4.2: Objectives (1) and (5) on an example path modelled by a graph [WM22b]

S

E

Objective 3: Elevation.The aggregated ascent of a solution path is represented by the third objective. Our proposed benchmark contains various possibilities for defining the elevation functionh(ni)which is defined on a nodeni. The ascent is calculated between two nodes in the graphe(ni,ni+1). The third objective

f3(p)is the sum of the elevations between all the nodes in a pathp:

f3(p) =

K−1

i=1

e(ni,ni+1)

e(m,n) =

(h(n)−h(m), ifh(n)>h(m)

0, otherwise

(4.3)

This objective accounts to the amount of fuel consumption in a real-world application [WM22b].

Objective 4: Travelling time.The fourth objective represents the travelling time. For this calculation, we utilise the average velocity of two subsequent nodes defined by vmax(ni)+v2max(ni+1) for each nodeni and use the length of the path utilised in Objective 1 [WM22b]:

f4(p) =

K−1

i=1

2d(ni,ni+1)

vmax(ni) +vmax(ni+1) (4.4) Objective 5: Smoothness. The smoothness or curvature of a path is mod-elled in the fifth objective. We measure smoothness by calculating the angle between three nodes on a path, as shown in Figure 4.2. The angle θ is ob-tained by extending the line between two nodes and measuring the angle to the third node. Similar to [ORK14, JQ10, HPVRFP15, DPMH15], we invert a·b=∥a∥∥b∥cos(θ):

f5(p) =

K−1

i=2

arccos

−−−→nini−1· −−−→ni+1ni

|−−−→nini−1| · |−−−→ni+1ni|

(4.5) Because we intend to minimise the objective values, the smaller smoothness value represents a straighter path [WM22b].