Minimizing the fuel consumption and the risk in maritime transportation: A bi-objective weather routing approach

Minimizing the fuel consumption and the risk in maritime transportation: A bi-objective weather routing approach

Accepted Manuscript Minimizing the fuel consumption and the risk in maritime transportation: a bi-objective weather routing approach Aphrodite Veneti...

3MB Sizes 1 Downloads 77 Views

Accepted Manuscript

Minimizing the fuel consumption and the risk in maritime transportation: a bi-objective weather routing approach Aphrodite Veneti, Angelos Makrygiorgos, Charalampos Konstantopoulos, Grammati Pantziou, Ioannis Vetsikas PII: DOI: Reference:

S0305-0548(17)30193-4 10.1016/j.cor.2017.07.010 CAOR 4291

To appear in:

Computers and Operations Research

Received date: Revised date: Accepted date:

27 September 2016 6 July 2017 13 July 2017

Please cite this article as: Aphrodite Veneti, Angelos Makrygiorgos, Charalampos Konstantopoulos, Grammati Pantziou, Ioannis Vetsikas, Minimizing the fuel consumption and the risk in maritime transportation: a bi-objective weather routing approach, Computers and Operations Research (2017), doi: 10.1016/j.cor.2017.07.010

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

ACCEPTED MANUSCRIPT

Highlights • A time-dependent algorithm is presented for the ship weather routing

CR IP T

problem. • Given a maximum travel duration constraint, fuel consumption and risk are minimized.

• Improvements of the approach are proposed for faster execution but similar solutions.

AN US

• Techniques are also presented that improve the practicality of the derived

AC

CE

PT

ED

M

solutions.

1

ACCEPTED MANUSCRIPT

Minimizing the fuel consumption and the risk in maritime transportation: a bi-objective weather routing approach

CR IP T

Aphrodite Venetia,∗, Angelos Makrygiorgosc , Charalampos Konstantopoulosa , Grammati Pantzioub , Ioannis Vetsikasc a Department

of Informatics, University of Piraeus, Greece of Informatics, Technological Educational Institute of Athens, Greece c Institute of Informatics & Telecommunications, NCSR Demokritos, Agia Paraskevi, Greece

AN US

b Department

Abstract

The paper presents an improved solution to the ship weather routing problem based on an exact time-dependent bi-objective shortest path algorithm. The two objectives of the problem are the minimization of the fuel consumption and the total risk of the ship route while taking into account the time-varying sea and

M

weather conditions and an upper bound on the total passage time of the route. Safety is also considered by applying the guidelines of the International Maritime

ED

Organization (IMO). As a case study, the proposed algorithm is applied for finding ship routes in the area of the Aegean Sea, Greece. Enhancements of the proposed algorithm are also presented which improve the efficiency of our

PT

approach.

Keywords: Ship weather routing, Multi-criteria optimization, Time

CE

dependent networks, Resource-constrained shortest path.

AC

1. Introduction Maritime transportation is crucial for the economic growth of many coun-

tries as well as for the global economy, in general. During the past two decades, ∗ Corresponding

author Email address: [email protected] (Aphrodite Veneti)

Preprint submitted to Computers & Operations Research

July 19, 2017

ACCEPTED MANUSCRIPT

there has been a growing interest in methods for calculating optimal ship tra5

jectories. The traditional economic objective was to minimize the total traveled distance while later, additional energy efficiency objectives were added such as

CR IP T

the minimization of the fuel consumption and gas emissions. Besides energy efficiency, navigation safety is also considered since sea transportation poses a high environmental risk due to the possibility of maritime accidents, especially if haz10

ardous materials (i.e. chemicals or oil) are transferred. Moreover, ship routing methods have to adhere to the safety guidelines specified by the International Maritime Organization [1].

AN US

The problem of optimal route planning in maritime transportation (or ship

routing problem) takes into consideration the different objectives and constraints 15

set by the ship owners, the national regulations, the international organizations, etc. Regardless of the specific objectives/constraints, the main factor that makes the ship routing problem difficult to solve, is the time-varying weather conditions [2]. The parameters and cost factors of the problem as well as the optimization

20

M

criteria are strongly affected by the weather and sea conditions and therefore, finding an optimal ship route should take into consideration the weather fore-

ED

casts and sea conditions during the course of the route. To accomplish this, a reliable model that predicts the ship’s response to the weather and sea conditions is required, while an effective solution approach for the ship routing problem

25

PT

should determine the heading control and ideally the optimal ship power settings according to the weather and sea conditions. Thus, broadly speaking, the

CE

ship routing problem is a dynamic, time-dependent problem which is usually referred to as the ship weather routing problem. The optimization objectives in the ship routing problem are usually the

AC

minimization of the voyage time, fuel consumption and voyage risk. The ship

30

routing algorithms appeared in the literature are classified into two categories, namely the exact and the heuristic approaches. The exact algorithms [3, 4, 5, 6, 7, 8, 9, 10, 2, 11, 12, 13, 14] determine the optimal solution at the expense of the execution time while heuristic approaches [15, 16, 17, 18, 19, 20] run faster but search only inside a subspace of the search space for the best solution. 3

ACCEPTED MANUSCRIPT

35

Also, for coastal navigation and trans-oceanic seafaring, the methodology of the calculus of variations [21] has also been employed and is based on long-term weather forecasts. Finally, a classic method for optimizing ship routes is still

CR IP T

the isochrone method [22]. In this paper, we consider the bi-objective time-constrained ship weather 40

routing problem as a time-dependent bi-objective point-to-point shortest path

problem with a constraint on the total voyage time. The two objectives of the problem are the minimization of the fuel consumption and the total risk. In

practice, frequent change of ship power or equivalently of nominal speed during

45

AN US

the voyage is avoided [3] especially in the case of coastal navigation. Thus, in

this work, the navigation speed is not a control variable; it is assumed to be constant during the whole journey and should be given as an input parameter. Notably, when the objective is the fastest route between two ports, the networks modelling the sea transportation commonly have the FIFO property1 . However, in our problem setting, the objectives are different and leaving from a node immediately after the arrival may not be the best option, for instance, when

M

50

the costs (fuel consumption and risk) along the outgoing link are decreasing

ED

in the next time interval [23]. Although, computing shortest paths in FIFO networks is a polynomially solvable problem [24, 25], this is not the case when optimal waiting policy should be determined for other cost objectives [23]. On the other hand, frequent stops in the middle of the sea or alternating ship speed

PT

55

frequently is not a common practice in ship routing [3]. Thus, although it is

CE

generally better to wait at a node, in our maritime setting, we assume that there is neither the option of waiting nor the option of speed decrease; by decreasing the speed, we could simulate the forbidden waiting and shift the arrival at the node later exactly at the optimal departure time.

AC

60

To sum up, in this work, we address the time-dependent bi-objective shortest 1A

network has the FIFO property if all of its arcs have that property i.e., for each arc

(i, j) of the network, earlier departure from i always leads to earlier arrival at j. Therefore, the arrival events at j are in the same chronological order as the departure events at i.

4

ACCEPTED MANUSCRIPT

path problem on a network with objectives other than the travel time, with fixed departure time, no waiting at nodes, constant nominal speed and a constraint on the total travel time. Also, since the problem is time-dependent, it is assumed that all arc costs are deterministic functions of the time. However, considering

CR IP T

65

the low execution time of the proposed techniques, dynamic situations where the

weather changes unpredictably during the journey can be handled by running the algorithms afresh.

We first give a non linear integer programming formulation of the problem, 70

and in the sequel we present a new exact algorithm for solving it. To the best

AN US

of our knowledge, only a few algorithmic approaches for the multi-objective

time-dependent shortest path problem have been proposed in the literature [26],[27],[28] are not efficient when waiting at nodes is forbidden. We employ a forward label-setting approach to efficiently tackle the aforementioned time75

dependent bi-objective shortest path problem. The number of the labels being processed during the algorithm execution is kept at a reasonable level, reducing

M

the computational overhead. The algorithms is compared against the backward algorithm of Hamacher et al’s [28], the best so far algorithm in the literature

80

ED

that solves the problem at hand, and the experimental results confirm the faster execution time of the proposed algorithms. A preliminary version of the algorithm appears in [11].

PT

Furthermore, we present critical modelling issues that directly affect the performance of our problem solution approach. We introduce a novel grid structure

CE

that is used as a base layer for solving the ship weather routing problem and 85

significantly improves the efficiency of the proposed algorithm. We also proposed a number of methods to further improve the efficiency of our approach,

AC

namely: (i) a dynamically partitioned grid for reduced graph size as well as an alternative reduction technique where grid is pruned along a given voyage plan, (ii) a heuristic function used to transform the initial algorithm into a bi-

90

objective A* algorithm thereby reducing the search space and (iii) a technique for deriving loopless ship routes, thus making the solutions conformable to the usual practice in this industry. In order to test and validate our approach in a 5

ACCEPTED MANUSCRIPT

realistic setting, we applied the proposed algorithm as well as the speeding up techniques and improvements on the algorithm for the optimal ship route plan95

ing in the Aegean Sea, Greece. The experimental results confirm the efficiency

for some of the afrementioned techniques appear in [29].

CR IP T

of the approach and its applicability in a realistic scenario. Preliminary results

The rest of the paper is organized as follows. Section 2 overviews the related work. Section 3 presents a non-linear integer programming formulation 100

of the ship weather routing problem which is considered as a time-dependent bi-objective point-to-point shortest path problem, and gives an efficient exact

AN US

algorithm for solving the problem. Section 4 presents critical modeling issues while Section 5 includes the speeding up techniques and improvements on the

proposed algorithm. Section 6 presents the empirical evaluation of the proposed 105

algorithm and its enhancements. Finally, Section 7 concludes our work.

M

2. Related Work

The ship routing problem is a multi-objective, non-linear optimization problem with constraints which, due to the importance of its applications, has been

110

ED

widely studied in the literature. In [30] the common objectives of the optimization problems in the transportation industry are classified into three main

PT

categories: classical/economic objectives, environmental (ecosystem)/regional fairness/health objectives, and climate and sustainability objectives. Until recently, in ship navigation the traditional economic objective was to minimize

CE

the total distance travelled [31]. Other relevant objectives were the minimiza-

115

tion of the fuel consumption and gas emissions. However, both these metrics are very complex to estimate. Nowadays, beyond energy efficiency, navigation

AC

safety is also a main concern, since sea transport is the main carrier of crude oil and other hazardous materials. Furthermore, the proposed methodologies have to adhere to the safety guidelines specified by the International Maritime

120

Organization. Exact as well as heuristic approaches have been proposed in the literature for

6

ACCEPTED MANUSCRIPT

ship route planning. Exact algorithms derive optimal solutions of the problem, however, they usually have heavy computation demands. In contrast, a heuristic approach searches for a feasible solution only within a subspace of the search space hopefully, close to the optimal solution. Hence the execution time of a

CR IP T

125

heuristic algorithm is generally much lower than that of an exact algorithm. Since long-term weather forecasts are available, calculus of variations methods

have also been proved suitable for both coastal navigation and trans-oceanic

seafaring [32, 21, 33]. Another old but popular method for optimizing ship 130

route is the isochrone method [34, 22].

AN US

Dynamic Programming and Label Setting methods are commonly met in exact approaches for solving the single objective ship routing problem with or without constraints. In [8] the Optimum Track Ship Routing (OTSR) system is presented, an automation of the weather ship routing service provided by the 135

US navy. A binary heap version of Dijkstra’s algorithm determines the optimum route taking into consideration the weather and sea conditions. Safety of navi-

M

gation is ensured by eliminating grid points where wind speed and wave height exceed ship’s predefined limits. Based on dynamic programming, the authors

140

ED

in [3] presented a modified version of the maze routing method first presented in [35]. The main objective is the minimization of the travel time while turn penalties and collision avoidance techniques are considered for enhancing the

PT

navigation safety. The proposed approach uses relatively few control variables and is space and time efficient. However, it does not take into account the exist-

CE

ing weather and sea conditions. In [9] a method based on Dijkstra’s algorithm is 145

proposed for finding routes with minimum fuel consumption. The input grid is built starting from a given voyage plan and then additional nodes are added on

AC

lines perpendicular to the input route. The authors in [10] incorporate Dreyfus approach [36] so as to solve the ship routing problem in a dynamic environment using as input, measurements of the ocean wave-field surrounding the vessel.

150

In [5], a forward 3-dimensional dynamic programming method was employed where both ship speed and ship course are control variables. The objective is to minimize the fuel consumption while taking into account geographical, 7

ACCEPTED MANUSCRIPT

weather, operational and safety constraints. It was shown that optimizing only the ship course is not as effective as optimizing both the course and the speed. 155

In [4] a Decision Support System is presented which uses meteo-marine and

CR IP T

oceanographic operational information data for all relevant environmental field variables (wave height, direction, period and currents). It uses a modification

of Dijkstra’s algorithm in order to find the optimal route with respect to the

total navigation time in the presence of time-varying fields. Safety restrictions 160

are also taken into account.

Another exact method with fast convergence for solving the ship routing

AN US

problem is the A∗ search algorithm. In [37] a two-tiered A∗ approach is employed

where firstly, the A∗ algorithm is applied to a macro data map to find a nondetailed path from the origin to the destination, and then the A∗ algorithm 165

is applied to obtain an optimal path for every edge of the suboptimal path computed in the first phase, using micro map data. The authors in [14] run the A∗ algorithm on a grid with eight neighbors per node for finding paths

M

optimized in terms of the navigation time subject to safety distance and turnradius constraints and in the presence of obstacles. The heuristic information of A∗ is the shortest possible travel time between a node and the destination. As

ED

170

the path given by the A∗ algorithm is piece-wise linear, the algorithm applies a smoothing technique on this path so that the final route is a realistic route that

PT

can be followed by ships in practice. In [13] the A∗ algorithm is employed to tackle the route planning problem in the presence of obstacles. The objective is varying depending on the particular scenario at hand (e.g. the minimization

CE

175

of the route length, the number of manoeuvres, etc.). The authors adapt the A∗ algorithm to find the least cost route using the exact distance between the

AC

nodes as the heuristic function. The risk of the path is also taken into account.

180

The main heuristic methods that have been employed in the literature for

solving the ship routing problem, are the evolutionary computation and the simulated annealing method. The fast convergence of these methods to a near optimal solution makes them suitable for solving the ship routing problem in real-time. Despite the potential of these heuristic methods in solving multi8

ACCEPTED MANUSCRIPT

objective problems, they were mainly used for solving the single objective ship 185

routing problem and for minimizing a weighted sum of multiple different objectives [15]. In the sequel we briefly refer to the research works which employ

CR IP T

heuristic methods for solving the multi-objective ship weather routing problem. In [19] a heuristic method is presented for multi-criteria ship weather routing optimization with respect to the voyage time, the fuel consumption, and the 190

voyage risk. The approach is based on the Strength Pareto Evolutionary Algo-

rithm (SPEA), which was designed for combinatorial and continuous function

multiple objective optimization problem instances. The solution routes are de-

AN US

fined as a sequence of waypoints from the origin to the destination. The initial population consists of a set of basic routes: an orthodrome, a loxodrome, a 195

time-optimized isochrone route and a route given by applying fuel-optimization to the time-optimized isochrone route. In [17] a Genetic Algorithm is employed for retrieving a Pareto set of optimal ship routes with respect to the voyage time and the fuel consumption. The initial population is chosen as a random sequence

200

M

of grid nodes. The authors take into account the time dependency of the sea state and wind field applying linear interpolation in time when measurements

ED

are missing. In [20] an evolutionary algorithm is proposed for obtaining a number of low cost routes which are also of high safety and avoid narrow waters, bad weather, foggy areas, congested and fishing areas. The initial candidate

205

PT

route population is automatically generated by GIS. In [38] a genetic algorithm for solving the bi-objective time-constrained ship weather routing problem is

CE

presented. The derived routes are optimized with respect to two conflicting objectives, the total fuel consumption and the mean risk of the route while taking

AC

into account the weather conditions.

210

Route planning in the maritime setting is a complex problem due to a number

of dynamic phenomena and navigation constraints. Time-dependent algorithms can efficiently handle the inherently time-varying environment of ship routing. Despite the importance of the time-dependent shortest path problem and its applications in maritime navigation, there are relatively few works in the literature on these issues ([39, 17, 19, 5, 10, 11]). In contrast, most literature on 9

ACCEPTED MANUSCRIPT

215

ship routing and scheduling focuses on the time-invariant shortest path problem [40, 21, 8, 3, 2, 9, 37, 14, 13]. However, there are also works which consider the inherent uncertainty in the behaviour of ocean currents and weather conditions

to minimize the expected fuel consumption [6, 7].

CR IP T

and treat ship routing as a stochastic optimization problem whose objective is

In this paper, we propose a new efficient exact algorithm for the bi-objective

220

time-constrained ship weather routing problem. To the best of our knowledge, it is the first time that an exact multi-objective time-dependent algorithm is employed for solving the ship weather routing problem. Apart from finding op-

225

AN US

timal routes with respect to economical objectives, we are interested in reducing the possibility of an accident taking also care of marine resources conservation. The algorithm returns the whole Pareto set and the derived routes are opti-

mized with respect to two conflicting objectives, the total fuel consumption and the mean risk of the route while taking into account the prevailing weather

230

M

conditions.

3. The bi-objective time-constrained ship weather routing problem

ED

As already mentioned, we consider the bi-objective time-constrained ship weather routing problem as a time-dependent bi-objective time-constrained short-

PT

est path problem. We deal with the most realistic point-to-point instance of the problem, where the ship speed is not a control variable and waiting at nodes is 235

not permitted. In this section, we first give a non linear integer programming

CE

formulation of the problem, and then we present a new forward label-setting time-dependent bi-objective shortest path algorithm to solve the problem. Let G = (V, A) be a directed graph, where V is the set of nodes (|V | = n)

AC

and A is the set of edges (|A| = m). In the bi-objective time-constrained ship

240

weather routing problem, there are three time-dependent positive costs c1ij (t), c2ij (t) and c3ij (t) associated with each edge (i, j) ∈ A, namely, the travel time, the fuel consumption and the risk respectively, incurred along this edge when leaving from node i at time t. We follow the frozen arc model of [23], where

10

ACCEPTED MANUSCRIPT

the above edge costs are assumed to be constant during the traversal of the 245

edge. Let also tstart denote the departure time from source node s ∈ V , and T rT (P ), F C(P ), R(P ) denote the total travel time, fuel consumption and risk

CR IP T

respectively, accumulated along a path P . The problem is to find a shortest path P between a source s ∈ V and a

destination d ∈ V that minimizes the two objectives F C(P ) and R(P ), leaving 250

from the source node at time tstart , while not violating the constraint T rT (P ) ≤

T , where T is the maximum acceptable duration of a route. In the following

formulation, we assume an upper bound L on the number of edges a solution

AN US

path may contain. This constraint is necessary since in the case of forbidden waiting at nodes, the optimal solution may contain infinite number of edges 255

at least in principle, as a result of infinite loops created along the route in an attempt to simulate waiting at nodes which is not permitted [23]. Thus, actually, the derived solution may be a walk and not necessarily a path. Since, this potentially infinite number of edges cannot be expressed by the finite number

260

M

of variables in the above network flow problem, an additional constraint on the number of edges in a solution path should be placed.

ED

We have used a number of variables in the formulation below. Specifically, xi ∈ {0, 1} with xi = 1 when the solution path has exactly i edges. We also

define the binary variable erij with erij = 1 when the edge eij is the r-th edge

265

PT

starting from s along the route. We also define trj as the arrival time at node j through the edge eij when erij = 1. If such an edge does not exist, trj is set to a

AC

CE

large value. We also set t0s = tstart .

11

ACCEPTED MANUSCRIPT

r=1...L (i,j)∈A

X

R(P ) =

X

c3ij (tr−1 )erij i

r=1...L (i,j)∈A

X

T rT (P ) =

X

r=1...L (i,j)∈A

X

c1ij (tir−1 )erij ≤ T

e1sj = 1

AN US

(i,j)∈A

erij ≤ 1, r = 2 . . . L

X

erdj = 0, r = 2 . . . L

j∈V −{d}

X

xi = 1

i=1..L

erjd = xr , r = 1 . . . L

M

X

j∈V −{d}

X

erji −

X

j∈V

er+1 = 0, r = 1 . . . L, i ∈ V − {d} ij

ED

j∈V

(2)

trj =

X

PT CE AC

X

(4)

(6) (7) (8) (9) (10)

erij (tr−1 + c1ij (tr−1 )) i i

i∈{k|(k,j)∈A}

+ (1 −

(3)

(5)

j∈V −{s}

X

(1)

CR IP T

min z = (F C(P ), R(P )) X X F C(P ) = c2ij (tr−1 )erij i

i∈{k|(k,j)∈A}

(11) erij )M, j ∈ V, r = 1 . . . L

t0s = tstart

(12)

cqij (M )

(13)

= M0

erij , xr ∈ {0, 1}, tri ∈ R+ , i, j ∈ V, r = 1 . . . L

Constraint (4) requires that the total travel time of the solution path must

not exceed the maximum acceptable duration T . Constraint (5) states that the first edge of the solution path is an outgoing edge of the start node s, while

270

constraint (6) states that at most one of the edges of the graph can be the r-th edge of the solution path. Constraint 7 ensures that the solution path cannot 12

ACCEPTED MANUSCRIPT

extend beyond the destination node d regardless of its actual length. Constraint (8) determines the length of the solution path. Constraint 9 ensures that the solution path will end up at the destination node d after traversing the right number of edges. Constraint (10) is the ordinary flow conservation constraint

CR IP T

275

ensuring that there is only one incoming and one outgoing edge at each node

along the solution path and also that these edges are successive in the path. Equation (11) gives the arrival time at node j when this node is the head of the

r-th edge of the solution path. In this equation, we assume that M is a large 280

number and also that cqij (M ) = M 0 (q = 1 · · · 3) where M 0 is a large number

AN US

again.

Each solution z contains the values of the two objective functions for the corresponding path. Also, although the proposed Integer Programming model is non linear, when the time dependent edge costs functions c1ij (t), c2ij (t) and 285

c3ij (t) are linear, the above formulation can be converted into a linear model [41]. Since the objective functions may be conflicting, a single solution that simul-

M

taneously optimizes each objective may not exist and therefore, the problem is actually to find the set of non dominated solutions (Pareto optimal solutions).

290

ED

A non dominated solution is the solution where none of the objectives can be improved without worsening the others. Formally, a path p is said to dominate another path p0 (p ≺ p0 ) if (F C(p) < F C(p0 ) and R(p) ≤ R(p0 )) or

PT

(F C(p) ≤ F C(p0 ) and R(p) < R(p0 )).

In the sequel, we present a new forward label-setting algorithm (Algorithm

CE

1) for solving the time-dependent bi-objective shortest path problem with no 295

waiting at the nodes and finding the set of Pareto optimal paths. Noteworthily, although we handle the bi-objective case, the proposed algorithm turns out to

AC

be applicable in the case of multiple objectives, as well. The Ship Routing Algorithm 1 keeps a set of labels li (t) where i is a node and t is a time instance. Each label li (t) = (F C, R, j, prev ptr) corresponds to a path from the source

300

node s to the node i arriving at i at time t and comprises four components. Specifically, the total fuel consumption F C and risk R represents the total fuel consumption and risk of a so-far constructed path from s to i, the integer j is 13

ACCEPTED MANUSCRIPT

the predecessor of i on the path from s to i and the pointer prev ptr points to the Pareto optimal label of the predecessor j whose extension gave this label. As has already been mentioned, leaving as earlier as possible from a node

305

CR IP T

does not necessarily reduce the fuel consumption or risk of the outgoing edge. Thus, there is no easy way to know in advance the ideal time of leaving a node for obtaining the minimum cost path toward the destination node. Consequently,

for each node and for each realized arrival (and hence departure) time instance 310

at this node, we should keep all the non-dominated labels referring to that particular arrival time. In contrast, in the corresponding static bi-criteria shortest

AN US

path problem there is no need of partitioning the labels at each node according

to their arrival time and only a single set of non-dominated labels needs to be kept at each node.

The Ship Routing Algorithm 1 iterates over all integer time instances, with

315

step size of 1 minute, in the interval [tstart , tstart + T ], where tstart is the departure time from the source node s and T is the maximum permissible voy-

M

age duration. At each node, the algorithm maintains two groups of label lists namely, the permanent lists and temporary lists. Each of these lists corresponds to a certain realized arrival time and either contains the final Pareto-optimal

ED

320

paths “arriving” this node at that particular time instance or contains the sofar Pareto-optimal paths reaching this node at that instance. When the outer

PT

loop scans a time instance, all the labels of the temporary list of a node for that instance are transferred one by one to the corresponding permanent list. However, just before the transfer, these labels are extended thereby creating

CE

325

new labels. Each of these new labels is kept only if it does not violate the total travel time constraint (line 19) and is not dominated by another label belonging

AC

to the same node with the same arrival time (lines 22-38). Also, labels already in the temporary list for that arrival instance are compared against this newly

330

generated label and discarded when found to be dominated by the new label.

14

ACCEPTED MANUSCRIPT

Algorithm 1 The time-dependent bi-objective shortest path algorithm Require: G = (V, A), and C, the cost matrix for all edges (i, j) ∈ A Ensure: All Pareto optimal paths from the node s to the node d s: the start node d: the destination node tstart : the departure time T: the maximum allowed total travel time

CR IP T

1:

trt(i, j, t): the travel time for traversing the edge (i, j) departing from the node i at time instance t

AN US

tjar : an arrival time instance at the node j

li (t): a label of the node i corresponding to the path from s to i, arriving at i at time instance t.

Ltempi (t): the list of temporary labels of node i at time instance t Lpermi (t): the list of permanent labels of node i at time instance t card(li (t), Lpermi (t)): the position of li (t) in the list of permanent labels

M

of node i

th lp component of a label li (t) i (t): the p

ED

/* Initialization of temporary and permanent labels of every node and for all t ∈ {tstart , tstart + 1, ..., T + tstart } Ltempi (t), Lpermi (t) ← ∅,

3:

Ltemps (tstart ) ← {[(0, 0); null; null]}

4:

∀i ∈ V, ∀t ∈ {tstart , tstart + 1, ..., T + tstart }

for tar = tstart to T + tstart do

CE

5:

PT

2:

6:

AC

7:

8: 9:

10: 11: 12: 13:

*/

while (∪i∈V Ltempi (tar ) 6= ∅) do Select a pivot label li∗ (tar ) from ∪i∈V Ltempi (tar )

/* Remove li∗ (tar ) from Ltempi (tar ) and add it to Lpermi∗ (tar )

*/

Ltempi∗ (tar ) ← Ltempi∗ (tar )\{li∗ (tar )} Lpermi∗ (tar ) ← Lpermi∗ (tar ) ∪ {li∗ (tar )} /* Store the position of label li∗ (tar ) in the list Lpermi∗ (tar ) pos ← card(li∗ (tar ), Lpermi∗ (tar ))

if i∗ 6= d then

15

*/

ACCEPTED MANUSCRIPT

14:

/* Label all the successors of i∗

*/



for all do(i , j) ∈ E

15:

tjar ← tar + trt(i∗ , j, tar )

16:

/* Check the total duration constraint

18:

g←

tjar

19:

h ← duration of the shortest path from node j to node d

20:

f ←g+h

− tstart

if tjar − tstart + h ≤ T then lj (tjar )

22:

r(i∗ , j, tar )); i∗ ; pos)

if 6

24:

∃lj0 (tjar )



Ltempj (tjar )

:

˜ j (tjar ) lj0 (tjar )≺l

Ltempj (tjar )



Ltempj (tjar )



*/

then

/* Store the label lj (tjar ) of node j at time instance tjar as temporary

26:

*/

{lj (tjar )}

/* Delete all temporary labels of node j at time instance tjar dominated by

M

27:

li∗ 2 (tar ) +

/* Check that there is no label lj0 (tjar ) of node j at time instance tjar domi-

nating label lj (tjar )

25:

((li∗ 1 (tar ) + f c(i∗ , j, tar ),



AN US

21:

23:

*/

CR IP T

17:

lj (tjar )

Ltempj (tjar )

ED

28:

Ltempj (tjar )



and

end if

29:

*/ Ltempj (tjar )\{lj0 (tjar )

lj (tjar )



lj0 (tjar )}

end if

PT

30:

end for

31:

end if

CE

32:

end while

33:

end for

35:

/* Output:Lpermd , all Pareto optimal paths from the node s to the node d

AC

34:

*/

36:

return Lpermd

The order by which the labels of the current time instance are extended is not actually important, since all labels of that instance should be extended first 16



ACCEPTED MANUSCRIPT

before proceeding to the next iteration. Therefore, the label to be extended (pivot label) can be selected randomly (line 8). By the end of the execution, 335

all Pareto-optimal solution paths will have been stored as permanent labels of

CR IP T

the destination node d. Notice also that for the node d, no label extension takes place (line 14) since the algorithm does not need to go further down the destination node due to the fact that the cost functions are non-negative-valued and hence going further only adds to the total cost of the path. Finally, Ship 340

Routing Algorithm 1 assumes a single departure time instance from the source

node. Apparently, the algorithm can be easily extended to handle the possibility

AN US

of more than one departure time instances.

Also, for improving the performance of the algorithm, a heuristic function, denoted by h, is used for estimating a lower bound of the travel time from the 345

current position to the node d. Summing the current cost of the path, denoted by g, and the h value, a lower bound, f , for the travel time from s to d is obtained. This estimation is used to check if the extension of the current, partial, path

M

will violate the constraint of the total travel time. Using this heuristic, we can prune paths from the very early stages of the algorithm, since it is certain that these paths will not reach d in time. The h function is computed by the single-

ED

350

objective one-to-all Dijkstra, i.e. all optimal paths in terms of travel time are determined from d to any other node of the grid. The edge weights used in this

PT

computation are the least travel time of edges occurring within the time window [tstart , tstart + T ].

In quest of an efficient algorithm which will optimally solve the ship routing

CE

355

problem, we considered several enhancements of the algorithms in [11]. First, we converted the Continuous time Algorithm of [11] to a time-dependent multi-

AC

objective A∗ algorithm namely, to a time-dependent N AM OA∗ -like algorithm [42], by employing heuristic functions for the objective values of risk and fuel

360

consumption [29]. However, this contributed to a slightly faster algorithm only. Then, we applied the pruning technique with the h function described above to

the Continuous time Algorithm and the new algorithm was considerably faster than the original one [29] in the maritime setting. Since, the Discrete time 17

ACCEPTED MANUSCRIPT

Algorithm in [11] is generally faster than the Continuous time algorithm, we 365

finally decided to use the heuristic function h in the Discrete time algorithm. Notice also that techniques based on the heuristic functions for fuel consumption

CR IP T

and risk cannot be easily incorporated in the Discrete-Time algorithm because its logic differs a lot from that of the a time-dependent N AM OA∗ . The efficiency of the new version of the discrete time Ship Routing Algorithm (Algorithm 1) is 370

evaluated through a number of experiments. Also, both versions of the Discrete time algorithm (the initial and the new) were compared against the backward

algorithm of Hamacher et al’s [28] which was slightly adjusted to the problem at

AN US

hand. Hamacher et al’s algorithm tackles the same problem but with arbitrary arrival time at the destination node, while not taking into account possible 375

constraints on the arrival time at the destination.

Specifically, the algorithms were tested on the same set of randomly generated graphs. The size of the random graphs in the experiments was set to 500, 750, 1000 and 1500 nodes while the number of ingoing and outgoing edges

380

M

was 12, 14, 16, 18 and 20 in different experiments. All the nodes in the graph had the same number of incoming and outgoing edges. The single departure

ED

time instance from the source node tstart was set to 0. The time-dependent edge costs were randomly selected from the set {0, 1, ..., 10} for each time instance t ∈ {0, 1, ...T }. The maximum permissible total travel time T was set equal 385

PT

to 100 and 500. We computed the average execution time over 50 different experiments. The computational results are presented in Table 1.

CE

The experimental results demonstrate that the solution pruning based on the heuristic estimation of the remaining travel time reduces the execution time. In all the experiments, Ship Routing Algorithm 1 outperforms both Discrete time

AC

Algorithm of [11] and Hamacher et al’s algorithm. Specifically, the Discrete

390

time Algorithm of [11] is slower than Ship Routing Algorithm 1, but in some cases namely, in small graphs, appears to be faster. A possible reason for this is that the pruning technique causes more delay than speeding-up when applied on small graphs. Also, the performance of all algorithms are affected by the size of the random graph and its topology, but Ship Routing Algorithm 1 seems 18

ACCEPTED MANUSCRIPT

Table 1: Comperative computational results - departure time tstart = 0, maximum travel time T = 100

1500

12

1

1.251

14

1.24

1.26

16

2.6

2.5

18

5

4.74

20

6.2

5.22

12

1.54

1.6

14

2.24

2.18

16

3.82

18

6.94

20

7.98

12

2.96

14

4.12

16

5.74

18

7.68

20

9.2

12

8.78

8.34

98.56

14

10.46

9.82

123.22

13.22

12.4

141.4

18.60

17.74

179.34

20.38

18.66

200.86

16 18

395

23.42 36.4

50.86 61.36 83.2 42.6

63.44

3.36

78.9

6.12

93.76

7.08

110

2.9

53.24

3.74

69.98

4.98

90.5

6.88

104.76

8.6

135.7

PT

20

Hamacher’s Algorithm

AN US

1000

Algorithm 1

M

750

Discrete time Algorithm of [11]

ED

500

m/n

CR IP T

Average CPU Time (in seconds) n

to be less affected relative to the other two algorithms. Finally, Ship Routing

CE

Algorithm 1 is much faster than Hamacher et al’s algorithm which implies that a forward algorithm can solve this particular problem more efficiently than a

AC

backward one.

400

Admittedly, the use of the heuristic function does not improve the execution

time significantly when the algorithms run on random graphs. However, in the maritime setting, the situation is completely reversed and the use of the heuristic function greatly speeds up the computation (Table 2). Notice that in random graphs the edge costs are accordingly random but in graphs with maritime data 19

ACCEPTED MANUSCRIPT

Table 2: Comparison of Discrete time Algorithm of [11] and Algorithm 1 in maritime setting. The experiment setup is the same as that of Table 8 in Section 6. Discrete time Algorithm of [11]

Algorithm 1

(in hours)

CPU time (in seconds)

CPU time (in seconds)

Piraeus

Paros

3

4

Milos

Nauplio

4.5

20

Piraeus

Serifos

3

12

Chania

Paros

5

29

Piraeus

Syros

3.5

12

Piraeus

Syros

4

35

3 8 5

18 7

13

AN US

Destination

CR IP T

Max Travel Time

Start

the edge costs, especially the time-dependent travel time cost, are correlated 405

with the weather and sea conditions. Thus, in this context, the range of values of passage time cost is relatively short, depending on the weather changes. As a result, the heuristic estimate of the total travel time is commonly a good ap-

M

proximation. In contrast, in random graphs there is no similar guarantee about the heuristic estimate and thus there is a high probability that this estimate will 410

not be close to the real total travel time. Finally it should be mentioned that

ED

when the algorithms run on graphs with maritime data, heavier computation is usually required for processing each label than that in random graphs. Thus, the decrease in the number of labels considered due to the use of the heuristic

when working on random graphs.

CE

415

PT

function has a greater impact on the execution time in maritime setting than

4. Modelization Issues

AC

There are many critical modelling issues that directly affect the performance

of a ship weather routing method. The input grid and the kind of information stored in this structure affect the performance of the algorithm that will be used

420

eventually. It is also important to have an accurate model that predicts the ship response to the weather conditions as well as the impact of these conditions on the actual speed of the ship. A realistic, yet easily implemented model for 20

AN US

Figure 1: Adjacent nodes

CR IP T

ACCEPTED MANUSCRIPT

the fuel consumption of a ship is also needed. Finally, since our main goal is the design of a green ship routing method, the guidelines of the International 425

Maritime Organization (IMO) about voyage safety should also be taken into account.

M

4.1. The Grid

As has been mentioned above, the underlying grid structure is important for

430

ED

the performance of the ship routing algorithm. The grid used in our algorithm consists actually of two different grids namely, the Static and the Dynamic Grid, whose edges correspond to moving directions allowed between grid points. A

PT

lot of different data are spatially stored in the nodes and the edges of these two grids, such as the risk of traversing an edge, its length etc. Furthermore,

CE

the two grids together offer a fast and efficient way to retrieve and summarize 435

important information regarding maritime, geographic and weather data from the area of the Aegean Sea in Greece. In the following, more details about the

AC

two grids are given. 4.1.1. Static Grid

440

The Static Grid is the initial graph structure used for storing the static data.

These data include not only geographic and bathymetric information, but also information about the statutory protected areas of the Aegean Sea. The graph 21

ACCEPTED MANUSCRIPT

is composed of a two-dimensional array. Each array cell corresponds to a specific point on the map. However, not all points are valid; specifically, the following

• the point should be located on the sea,

445

CR IP T

conditions should hold:

• the distance of the point from the shore should be greater than a particular threshold, which is given as an input parameter,

• the point should be located in sufficiently deep waters; the minimum depth is also given as an input parameter,

AN US

• the point should not be located past the country’s maritime borders.

450

If a point satisfies all the conditions above, a new node is created and assigned to corresponding array cell. The so created nodes are connected with each other via bidirectional edges. A node can be connected to at most 16 adjacent nodes with different directions (Figure 1). The coordinates of the grid nodes are such that the distances between successive grid nodes are approximately the same

M

455

and still allowing a ship to move along the edges with constant bearing (rhumb

ED

line navigation). Again, some edges may not be valid and should be removed. Specifically, for an edge to be valid, the conditions mentioned above for points must hold for every point along the edge. It is now clear that for constructing the Static Grid the following parameters must be given as input:

PT

460

• the longitude and latitude of top-left corner point,

CE

• the edge length (for horizontal and vertical edges only),

AC

• the number of rows and columns in the array,

465

• the aforementioned parameters regarding minimum depth and distance from land.

4.1.2. Dynamic Grid The Dynamic Grid enriches the static information from the Static Grid with dynamic data. These data include weather forecast, such as wind direction and 22

AN US

CR IP T

ACCEPTED MANUSCRIPT

M

Figure 2: Dynamic Grid

speed, significant wave height, temperature, as well as risk estimations resulting from these meteorological data [43]. For the weather information, both current

ED

470

and future forecasts are retrieved from the National Weather Service. Since, these predictions have a certain time granularity, for time instances lacking

PT

forecast, the weather conditions at each node and edge are determined by interpolating the nearest in time predictions. Also, for each edge, the risk a vessel 475

incurs along the edge given the predicted weather conditions is estimated.

CE

After finishing this processing, the dynamic and the static grid is combined

into a single grid. Figure 2 depicts that grid for some region of the Aegean

AC

Sea, namely the Cyclades Archipelagos. The total number of grid nodes for the whole Aegean Sea is 10, 000, the length of horizontal and vertical edges is 3

480

miles while the maximum distance (long diagonal lines) between two adjacent nodes is equal to 6.9 miles. At this point, it is worth mentioning that while the Static Grid is only produced once for the entire area of the Aegean sea, the Dynamic Grid should 23

ACCEPTED MANUSCRIPT

be rebuild regularly whenever newly updated data are available. For instance, 485

in our application scenario, dynamic grid should be rebuild every three hours

CR IP T

since this is the update rate of weather forecasts for the Aegean sea. 4.2. Control variables

The course of the ship is the only control variable used in our approach.

Specifically, the ship power or equivalently the nominal speed does not change 490

during the voyage, although there are routing methodologies [44], [19], [17], in

which the power and the nominal speed are control variables. The frequent

AN US

change of the ship speed is not recommended, especially in case of coastal navigation. Admittedly, ship power/speed may need to change in order to delay or speed up the passage through a region that currently has or will have ad495

verse weather conditions respectively. However, this can be handled by simply restarting the execution of the proposed algorithm giving as an input new operational parameters. Moreover, changing speed in order to avoid adverse weather

ED

4.3. Ship response

M

and sea conditions is more relevant in transoceanic seafaring.

In order to calculate the navigation time between two points, we have to

500

consider the actual ship speed which is usually lower than the nominal one

PT

due to the added resistances induced by irregular waves and wind during ship navigation. To this end, the ship model described in [4] is used. This model is general, independent of specific ship features. According to this model, the speed reduction depends only on the significant wave height H and the ship-

CE

505

wave relative direction Θ. The actual ship speed VR is calculated using the

AC

following equation: VR = V (H, Θ) = V0 − f (Θ) · H 2

The values of the coefficient f are reported in table 3.

510

If more specific ship characteristics are available, a more realistic model for the vessel response to weather and sea conditions could be used. Specifically,

24

ACCEPTED MANUSCRIPT

o

45 < Θ < 135

o

135o ≤ Θ ≤ 180o

f [kn/ft2 ]

following seas

0.0083

beam seas

0.0165

head seas

0.0248

Table 3: Values of the coefficient f

CR IP T

0o ≤ Θ ≤ 45o

Configuration name

we could use the approximate method established by Kwon [45] for predicting

AN US

the loss of speed caused by the added resistance in irregular waves and wind. 4.4. Fuel consumption

The fuel consumption F measured in kg per hour is calculated using the

515

following equation [9], [46]:

F = sf c · P

M

where sf c and P is the specific fuel consumption and the engine power in BHP (kW) of the ship respectively.

Thus, the total fuel consumption along a route is the product of its travelling

ED

520

time T rT and the fuel consumption per hour F :

PT

F Ctotal = T rT · F

4.5. Voyage safety/risk

CE

Voyage safety is ensured by taking into account the total risk of a route during route calculation as well as the IMO recommendations [1] for avoiding dangerous situations. There may be different ways of defining the risk, but the

AC

exact meaning is hard to be captured. According to the FSA Guidelines (MSC 83/INF.2) [47] risk “is the combination of the frequency and the severity of the consequence”. In line with the FSA guidelines, risk is defined as the probability of an event multiplied by its consequences (14): R=P ×S 25

(14)

ACCEPTED MANUSCRIPT

The proposed model combines the results of a marine accident probability (P ) 525

with the severity of its consequences (S). Concerning hazard identification, marine accidents are considered as poten-

CR IP T

tial hazards. These accidents can be divided into nine categories: foundered, missing vessel, fire/explosion, collision, contact, grounding/wrecked/stranded, war loss/hostilities, hull/machinery damage and miscellaneous. Fault and/or 530

Event tree Analysis, Fuzzy logic and Bayesian networks are the most frequently

used methodologies [48]. In our approach, we employ the model proposed in [43] which takes into account dynamic information about a significant navigation

using a Bayesian network method.

AN US

area as well as the prevailing weather conditions in that area and is developed

Besides the diversity of methods in risk assessment of maritime transporta-

535

tion, there are also many different factors that should be considered when evaluating the probability of an accident. Complex methodologies that take into account weather and environmental conditions, information about the vessel

540

M

and the human factor have been introduced to calculate the accidental risk of shipping in a sea area and identify its causes. In particular, in our approach risk

ED

assessment considers information such as the vessel type, size, age and flag, navigation area characteristics, traffic data, historic data about accidents, weather and sea conditions [48].

545

PT

With respect to the risk of a particular edge, this depends on the weather conditions at the location of the edge and is estimated using the model in [43],

CE

as well. Finally, the risk of a particular route is the total risk encountered along each edge of the route. Regarding IMO recommendations, surf-riding and broaching-to situations

AC

should be avoided when navigating in severe weather conditions. Surf-riding

550

and broaching-to occur when the conditions below are satisfied: √ 1.8 L 135o < Θ < 225o and VR > cos(180 − Θ) where Θ, VR and L are the relative ship-wave angle, the ship speed and the ship length, respectively. 26

ACCEPTED MANUSCRIPT

Since ship speed is constant, the only way to avoid surf-riding and broaching555

to situations is by rejecting the edges where the above conditions are arising. Parametric rolling motions is another precarious situation that should be

CR IP T

avoided. It will occur when the encounter wave period TE is nearly equal to the natural rolling period of ship TR or the encounter period TE is close to one half of the ship roll period TR . The period of encounter TE is calculated by the 560

following formula: TE =

3TW

2 3TW (sec) + VR cos(Θ)

ship speed (in knots). 4.6. Manoeuvring characteristics

AN US

where TW is the wave period, Θ is the relative ship-wave angle and VR is the

In the proposed algorithm, the turning ability of a ship was not considered

565

during path planning. Thus, when a solution path does not comply with the ship

M

turning ability, that path is smoothed by using Cubic Spline interpolation [49]. In particular, smoothing takes place locally between the two consecutive route

570

ED

edges that form the sharp turn and thus the obtained smoothed route will be within the three grid cells that the original route crosses. Therefore, it is reasonable to assume that the smoothed route will not violate any of the conditions

PT

listed in Section 4.1.1. Also, the total risk and the total fuel consumption of the smoothed route are expected to be roughly the same as those in the original route.

CE

If the maximum design rudder angle has to be considered during the cal-

575

culation of Pareto optimal routing paths, the approaches in [14] and [50] could

AC

be easily incorporated in our technique. In [14], a modified network graph is constructed by creating copies of the original grid nodes and each of these copies models a allowable turn at the corresponding original node. On the other hand,

580

the authors in [50] propose a modified Dijkstra algorithm which uses arc labelling for taking into account turn restrictions. Our bi-objective shortest path algorithm can be easily adjusted so that it can work with either of the two 27

ACCEPTED MANUSCRIPT

approaches. However, the execution time would be considerably longer since the modified graph would be much larger than the original one [14] or in the 585

case of [50] because working on arcs would be computationally much heavier

CR IP T

than working on nodes due to their much higher number. Moreover, since sharp turns were seldom observed in our case study, navigation in the Aegean sea, a simple solution with local curve smoothing was preferred eventually.

5. Speeding Up and Improvement Techniques

So far, the ship routing problem has been handled as a bi-criteria, time-

590

AN US

dependent and resource-constrained path problem whose parameters have been

properly set considering the particular application scenario. By closer examination of the common practices and assumptions in this application area, the basic algorithm can be improved so that it can run faster and return more prac595

tical solutions, that is, solutions with higher probability of being adopted by the

M

end-users. In this section, we present speeding up techniques and techniques which improve the practicality of the derived solutions. More specifically, we propose a technique for bounding the solution space around a voyage plan given

600

ED

in advance. We also present a grid partitioning method which can lower the execution time of the algorithm with the caveat that it can be applied only in

PT

the case that the cost functions in the input grid are time-invariant. Moreover, a technique that ensures that there will be no loops in the solution routes is presented. Finally, a selection tool is developed for presenting the most repre-

CE

sentative solutions to the end user when the number of Pareto-optimal solutions

605

is too large for clear illustration.

AC

5.1. Grid Pruning It is a fact that out of experience, shipping companies usually know the

best route between two ports and the voyage plan given to the captain of a ship reflects this knowledge. Since, most companies are rather reluctant to

610

accept large changes in the customary route they follow between two ports, the

28

AN US

Figure 3: Grid pruning

CR IP T

ACCEPTED MANUSCRIPT

proposed routing algorithm should derive solutions that do not much deviate from the original voyage plan of the ship. For this purpose, the original grid is pruned leaving only a “corridor” around the voyage plan (Figure 3). This

615

M

drastically reduces the solution space for finding the optimal solution. Also, the pruning can be easily performed online, during the execution of the routing algorithm. In comparison to the off-line execution, the on-line pruning examines

ED

fewer grid points, saving computation time, as a result. For evaluating the benefits of the grid pruning, we ran the routing algorithm with and without grid pruning. The thickness of the corridor around the voyage plan, distV P , was set to two different distinct values, 42 miles and 21 miles

PT

620

respectively (third line of Table 4). These distance values from the voyage plan

CE

were selected empirically. The tests were carried out on a server with a 4-core 3.6 GHz processor and 8 GB RAM and are listed in Tables 4 and 5. The experiment setup is the same as that of Table 8 in Section 6. In the case of 42 miles distance, the number of the derived solutions is the same as that returned

AC

625

in the original grid and thus we can still find the whole Pareto set. However, if distV P is set to a value lower than 42 miles, some Pareto optimal solutions are not returned (Table 4). Concerning execution time, clearly grid pruning along the voyage plan can reduce the execution time dramatically (Table 5).

29

ACCEPTED MANUSCRIPT

Table 4: Algorithm performance: original and pruned grid

Destination

Number of Routes

distV P

distV P

Max Travel Time (in hours) ∞

42 miles

21 miles



42 miles

21 miles

33

33

29

47

47

47

26

26

26

CR IP T

Departure

CPU time (in seconds)

Paros

3

3

3

3

Milos

Nauplio

4.5

11

8

7

Piraeus

Serifos

3

5

5

5

Chania

Paros

5

36

18

17

50

50

50

Piraeus

Syros

3.5

7

7

7

38

38

36

Piraeus

Syros

4

14

13

13

38

38

36

Spetses

Amorgos

4

53

49

AN US

Piraeus

15

13

13

53

Table 5: Algorithm performance: original and pruned grid (distV P = 42 miles)

Execution time

Destination

M

Start

Original Grid

Pruned Grid

Elafonisi

01:49:42

00:01:09

Kymi

Kalamata

00:01:00

00:00:27

Chios

00:09:43

00:00:59

Cythera

00:04:43

00:00:50

Hydra

Samos

00:00:27

00:00:16

Rhodes

Western Crete

01:17:27

00:05:14

SW Crete

CE

PT

Piperi

ED

Kos

5.2. Dynamically Partitioned Grid

AC

630

In this section, we propose another speed-up technique which can be used

together with the basic ship routing algorithm. However, the main limitation is that it can be applied only for static grids, i.e., with constant costs at the edges and nodes. For short trips, where the weather conditions in the travel area are

635

not likely to change due to short travel time, static grids can be used for solving

30

ACCEPTED MANUSCRIPT

the routing problem. The main objective is the removal of nodes and edges from the input grid in such a way that most of the solutions from the original Pareto set can also be

640

CR IP T

obtained when working on the reduced grid. In addition, the routing algorithm should run faster on the new grid.

This size reduction is feasible since in the Aegean sea, there are broad areas

with few or even no islands where the weather conditions are practically the same. Thus, the objective is to locate convex polygons with same weather

within. Apparently also, a straight line between any two nodes inside such a polygon lies also in that polygon and thus all the points of the line will have the

AN US

645

same weather. Therefore, we can reduce the size of the grid, by maintaining only the boundary nodes of each polygon, termed also as gateways, and connecting them pairwise with straight line edges. The weather and risk condition along each of the new edges can be approximated by averaging the values of these 650

metrics at the end vertices.

M

A previous version of this speeding up technique can be found in [29]. In that approach, we extracted areas with uniform weather and risk conditions

ED

and then applied a convex partitioning algorithm for finding a more accurate partition. However, the number of partitions obtained were relatively high and 655

hence the size of the grid was not reduced a lot. In this work, much smaller grid

PT

is obtained by extracting only the largest convex polygons from each uniform area, maintaining the remaining nodes and edges of the original grid.

CE

The algorithm of creating the Dynamically Partitioned Grid consists of 3 phases.

5.2.1. Phase 1 - Partitioning the Grid into Sectors with Uniform Weather and

AC

660

Risk Conditions The main steps of this phase are given in Algorithm 2. For each node,

depending on the similarity of that node with the neighboring sectors, either it is assigned to an existing adjacent sector or a new sector is created, containing that

665

node. A node and a sector are considered similar if the risk, wind direction and 31

AN US

CR IP T

ACCEPTED MANUSCRIPT

Figure 4: Overlapping sectors

wave height at the node and within the sector are also similar. For a sector, the

M

values of these parameters are estimated as the mean of the corresponding values at nodes of this sector and all these averages are recalculated upon insertion or

670

ED

removal of a node from the sector. Also, sectors connected diagonally with a node, are not considered unless no sectors exist at the north and west of the node. Otherwise, overlapping areas would be possible (Figure 4).

PT

After the assignment of nodes to sectors has been completed, the similarity of each node with the home sector, as well as with its neighbouring sectors,

CE

is calculated and the node is moved to the highest-scored sector provided that 675

the previous sector still remains connected after this movement. This node

AC

re-affiliation continues until no further change is possible. 5.2.2. Phase 2- Extraction of the largest convex polygon(s) from each sector Fischer’s algorithm [51] is used for extracting the maximum convex polygon

from each sector. This is a O(n4 logn) dynamic programming algorithm taking

680

as input a set of positive and negative points and returns the maximum convex polygon which encloses only positive points. For applying this algorithm, first,

32

ACCEPTED MANUSCRIPT

Algorithm 2 Partitioning the Grid in Sectors with Uniform Conditions Require: The 2-dimensional grid array containing all nodes

CR IP T

Ensure: All nodes with similar risk and weather conditions belong to the same sector 1:

Ni , Wi , NWi , SWi : the northern, western, north western and south western neighbour of node i sci : the sector node i belongs to

sim(arg1, arg2): compares either two sectors or a sector with a node and

AN US

returns a measure of the similarity of the two entities with regard to weather

and risk conditions; the more similar they are the higher the value returned same(arg1, arg2): compares either two sectors or a sector and a node and returns true if the similarity between the two entities is above a certain threshold.

M

merge(sc1, sc2): merges the two sectors given as arguments /* Initialization of sectors

3:

for each node i do/* the grid is parsed from left to right and top to bottom */

5: 6:

add i to scNi

end if

if ∃ Ni , Wi and same(scWi , i) and sim(scWi , i) > sim(scNi , i) then

CE

7:

if ∃ Ni and same(scNi , i) then

PT

4:

add i to scWi

8:

9:

AC

10:

11: 12:

*/

ED

2:

end if if ∃ Ni , Wi and same(scNi , i) and same(scWi , i) and same(scNi , scWi )

then merge(scNi , scWi ) end if

33

13: 14:

if 6 ∃ Ni , Wi then if ∃ N Wi and same(scN Wi , i) then add i to scN Wi

15:

CR IP T

ACCEPTED MANUSCRIPT

end if

17:

if ∃ SWi and same(scSWi , i) and sim(scSWi , i) > sim(scN Wi , i) then add i to scSWi

18: 19:

end if

AN US

16:

20:

end if

21:

if i not in any sector yet then

22:

Create a new sector for i end if

M

23:

end for

25:

/* Associate each node with a more similar local sector if exists

26:

Change = F alse

27:

repeat

29: 30:

if ∃ adjacent sector more similar than the current one then move i to the more similar adjacent sector Change = T rue

CE

31:

for each node i do

PT

28:

ED

24:

32: 33:

AC

34:

end if

end for

until Change = F alse

34

*/

ACCEPTED MANUSCRIPT

the bounding box of each sector sci is determined. Then, any node belonging to sci is considered as a positive point while any other node in the bounding box is treated as a negative point. Also, each sector should be connected and contain 300 nodes at most. Although, these requirements are not necessary for

CR IP T

685

the correctness of the algorithm, they both help in faster execution. Thus, in

case of not connected sector, the sector is split into its connected components. If a sector contains more than 300 nodes, the sector is split along the horizontal

or vertical line that partitions the nodes as evenly as possible and generates the 690

fewest possible gateways.

AN US

However, even for sectors with fewer than 300 nodes, the computation of

maximum convex polygon may not be fast. Thus, for each sector, a sparse sampling of representative positive points of the sector is given as an input to Fischer’s algorithm. Specifically, if the number of nodes in the sector is 695

100 to 200, nodes with odd row and column number are omitted, while for a number between 200 and 300, nodes with either odd row and column number,

M

or even row and column number are ignored. In both cases, nodes lying on the boundaries of the sector are never removed.

700

ED

After this preprocessing, Fischer’s algorithm is executed. If the algorithm is unsuccessful or the resulting polygon has too many gateways compared to the total number of nodes contained in the polygon, the polygon is rejected.

PT

Otherwise, the polygon is stored along with the nodes it contains. A node in a sector is a gateway if at least one of its 8 incident shorter edges is also incident

CE

to a node outside the sector. The 8 long diagonal edges are ignored at this 705

phase, because the gateways should be near the sector perimeter. In addition, we ignore nodes having only one short diagonal edge which is incident with an

AC

external node and also passes between two other gateways. The reason is that these nodes are located inside the sector (Figure 5) and are not part of the polygon perimeter.

710

Now, the remaining nodes of the bounding box not belonging to the polygon

just formed create a new sector and the previous steps are repeated again. This iteration continues until it is not possible to find a maximum convex polygon 35

CR IP T

ACCEPTED MANUSCRIPT

with low number of gateways.

AN US

Figure 5: A case where a node is not considered as gateway.

Finally, for further reducing the execution time, parallel processing is em715

ployed since the computation above is amenable to parallel processing as each sector can be independently processed by a separate thread in a multi-core sys-

M

tem.

5.2.3. Phase 3 - Building the new Grid

720

ED

In this phase, the final grid is obtained by adding or removing some edges from the original grid. Specifically, if a node is not a gateway, all its incident edges are removed. Nevertheless, these isolated nodes are kept, since it might

PT

be chosen as the starting or destination point of a route. In this case, new edges from or to this node are created dynamically, connecting it with the gateways

CE

of its sector. Essentially, the new grid contains only the gateways of the sectors 725

and the nodes that do not belong to any sector. Each pair of gateways belonging to the same sector is connected with a new bidirectional edge while nodes in

AC

different sectors are connected with edges of the original grid, including also the long ones. The costs (risk, fuel, time) of each new edge are calculated as the average of the corresponding costs of the nodes of the original grid met along

730

the edge, gateways inclusive. The derived partitioned grid (Figure 6), contains about 56% less nodes and 24% less edges compared to the original grid. The routing algorithm running on 36

AN US

CR IP T

ACCEPTED MANUSCRIPT

Figure 6: The partitioned grid.

this grid finds a close approximation of the original Pareto set in considerably

735

M

less time. However, there is a better alternative. After running the routing algorithm on the partitioned grid, we extract the minimum risk and the mini-

ED

mum fuel path as well as any other Pareto-optimal path which is significantly different from the two paths above. Then, these paths are used as a sort of voyage plan and any nodes not near these paths are removed, following again

740

PT

the technique described in Section 5.1. Next, the ship routing algorithm is run on the pruned grid with much shorter execution time. Again, most of the initial

CE

Pareto optimal solutions are extracted, if not the entire set. 5.3. Avoiding Loops It is a well known fact that if waiting at nodes is not an option, the optimal

AC

solutions for the shortest path problem may contain loops [24]. In our appli-

745

cation scenario, this is rather a rare case and it mainly happens when there is an abrupt change in the weather conditions in a local region. Since, the spatial as well as the temporal transition between different weather conditions is rather smooth most of the time, routing loops are not frequently observed in

37

ACCEPTED MANUSCRIPT

the derived routes. Indeed, only in two out of 100 execution runs of the ship 750

routing algorithm on random instances2 , few Pareto-optimal solutions are found to contain loops.

CR IP T

However, a route containing a loop is viewed undesired in ship navigation and it is usually dismissed. A possible approach for deriving loop-less ship routes is to directly modify the Algorithm 1 so that it will maintain only paths 755

that do not form loops at each execution step. However, as has been pointed

out in [23, 24] where special cases of the problem at hand were treated, finding

routes without loops requires an enumeration of all paths between source and

AN US

destination, which increases the state space that should be explored dramatically and hence the execution time. The main reason is that the algorithm should 760

“remember” the intermediate nodes of each path so that it will be easy to check then if an extension of the path is actually feasible, that is, it does not contain nodes previously met in the path. In particular, in our scenario, it is not certain that keeping only Pareto-optimal solutions at each node for each arrival time

765

M

will give the Pareto-optimal routes between the source and the destination, eventually. Thus, non-Pareto-optimal solutions should be kept as well, and this

ED

leads to the complete enumeration of the routing paths mentioned above. Even if we disregard these technical difficulties, the modified Algorithm 1 may derive routes that will not be sought-after again. Specifically, the algorithm

770

PT

may return routes that do not contain “exact” loops but they may pass again through regions very close to locations already traversed. Apparently, this sort

CE

of routes can be also be viewed as routes with routing loops. However, detecting these cases would add additional complexity to the Algorithm 1. For all these

AC

reasons, the option of modifying the basic algorithm was not followed.

775

A more practical approach is to modify the input grid around the voyage

plan so that it will be made acyclic and hence routing loops will not be possible in the returned solutions. This can be done on-line, during the algorithm execution; specifically, all edges of the grid whose angle with the current di2 randomly

chosen source and destination ports and weather conditions

38

ACCEPTED MANUSCRIPT

rection of voyage plan is greater than 90o are discarded. It can be easily seen that the resulting grid after these edge removals becomes acyclic. Applying this 780

technique, optimal solutions may be discarded since grid edges are removed,

CR IP T

however, no noticeable difference in the solution quality was observed in our experiments. More precisely, the proposed technique was tested in 100 different experiments, with random departure and destination nodes. In 94% of the test

cases, the algorithm running on the modified grid retrieved the entire Pareto 785

set which is returned when the algorithm is running without the loop avoidance

technique. In all other test cases, where the whole Pareto set was not returned,

AN US

the quality of the solution routes was only slightly affected, since 92% of the original Pareto set was found again, on average. For instance, in the test cases of Table 4 the algorithm with the loop-avoidance technique found the whole 790

Pareto set in all itineraries, except in the case where the departure and destination ports are the cities of Chania and Paros respectively (line 4 of Table 4); specifically, the algorithm returned 48 solution routes and retrieved 47 out of

M

50 optimal routes that the basic algorithm found. In Figure 7, the solutions of the basic algorithm and those returned by our approach for the voyage Chania to Paros are plotted with blue and red color respectively. Clearly, the difference

ED

795

of the two Pareto-fronts is hardly discernible. Moreover, if the first approach of the direct modification of Algorithm 1 had been followed, the Pareto-front that

PT

would be returned in that case would closely match the Pareto front derived by our approach. This is because the Pareto front derived when the basic algorithm is running without a loop avoidance technique always “dominates” the Pareto-

CE

800

fronts of any loop-avoidance implementation. Since also, the Pareto-front of the directly modified Algorithm 1 would normally be in between the two fronts of

AC

Figure 7, the close matching between the fronts depicted in that figure certainly entails a corresponding matching in the results of our approach and those that

805

would be returned with a direct modification of Algorithm 1. Finally, it is worth mentioning that if the geographical morphology of a

region requires that the route should form an exact or “approximate” loop, the proposed approach can derive this sort of loop provided that the voyage 39

AN US

CR IP T

ACCEPTED MANUSCRIPT

Figure 7: Chania to Paros: Pareto fronts of the basic algorithm and loop avoidance technique.

plan contain the required cyclic segments. This is possible, since the grid lines 810

following the current direction of the voyage plan are always included in the

5.4. User Selection

M

working grid.

ED

After the execution of the ship routing algorithm, the set of Pareto optimal routes is illustrated on the map (see Figure 12, for instance). However, if the 815

number of these solutions is very large, it is more convenient to illustrate a

PT

smaller number of representative solutions. Specifically, three routes are selected from the Pareto optimal solutions in this case as follows:

CE

1. The first route minimizes the risk and is selected among these solutions where the fuel consumption is no higher than c times the minimum fuel

AC

820

consumption attained over all the Pareto optimal routes where c is an input parameter with a default value between 1.2 and 1.25.

2. The second route minimizes the fuel consumption conditional on the risk of this route being no higher than c times the minimum risk achieved among all the routes of the Pareto set.

40

ACCEPTED MANUSCRIPT

3. The third route minimizes a weighted average of both the risk and fuel

825

consumption among the remaining routes of the Pareto set. Apparently, by changing the value of parameter c, the whole Pareto front

CR IP T

can be gradually returned. Another possibility is to use a measure of route similarity for comparing routes and eliminating routes similar to previously 830

selected routes. Thus, only one route will be kept out of each group of routes following broadly the same trajectory in the final output.

The selected routes are returned to the user, as a sequence of grid points

plotted on a map along with the coordinates of each point. Moreover, an expla-

835

AN US

nation about each route is included in the output. An explanation of this kind

could read as “This route minimizes the risk and has only 17% higher fuel consumption than the most fuel economical route (this route would be 40% more risky)”. Finally, this output is illustrated on a graphical user interface and then the user can choose the most preferable of these routes. For instance, Figure 8

840

M

illustrates the output of the algorithm with Spetses and Amorgos as the departure and destination port respectively. The input voyage plan is illustrated in

ED

Figure 3 and the corridor around the voyage plan was set to 42 miles.

6. Experimental Results

PT

In this section, the experimental evaluation of the baseline algorithm as well as its variants is presented. Firstly, the algorithm based on the dynamically 845

partitioned grid is tested and compared with the case where the algorithm uses

CE

only the original grid as input. Then, the performance of the algorithm enhanced with the loop avoidance and the grid pruning technique is tested in a number

AC

of real-life test instances.

850

In order to test the Dynamically Partitioned Grid, we generated 100 random

test cases. For each test case, a random set of starting and destination ports were chosen and the maximum travel time for each voyage was set proportional to the euclidean distance from the source to the destination port. Since, the technique of Dynamically Partitioned Grid cannot be applied in time-dependent 41

ED

M

AN US

(a) The route minimizing the risk

CR IP T

ACCEPTED MANUSCRIPT

AC

CE

PT

(b) The route minimizing the fuel consumption

(c) The route minimizing the weighted average of risk and fuel cost Figure 8: The three solutions returned to the user (distV P = 42 miles).

42

ACCEPTED MANUSCRIPT

grid networks, the weather and sea conditions do not vary in time but they can 855

be spatially different in these test scenarios. The other test parameters were fixed as follows: speed = 30 kn, s.f.c. = 200 g/kWh, break power = 4000 kWh.

CR IP T

Also, the tests were carried out on a server equipped with a 4-core 3.6 GHz processor and 8 GB RAM.

Some indicative experimental results of these tests are listed in Table 6. It 860

should be mentioned that the baseline algorithm runs on the original grid without grid pruning and loop avoidance technique. Also, in the estimation of the execution time, we did not take into account the time for creating the Dynam-

AN US

ically Partitioned Grid. This is because in our test setting there is no temporal

change in weather conditions and thus the dynamically partitioned grid is cre865

ated only once during initialization. The experimental results suggest that the dynamically partitioned grid technique accelerates the ship routing algorithm, without conspicuously decreasing the quality of the derived solutions. Specifically, the technique of using solution paths from the dynamically partitioned

870

M

grid for creating the voyage plan on the original grid is 2.218 times faster on average than the baseline algorithm; at the same time it is able to generate the

ED

88.32% of the Pareto set approximately. Noteworthily, when the execution time of the baseline algorithm is 5 minutes or more, the algorithm on the dynamically partitioned grid is 4.166 times faster with the greatest improvement being 70-

875

PT

fold. Regarding the solution quality, when using the Dynamically Partitioned Grid, there is an average increase of 0.037% in the risk and 0.051% in the fuel

CE

consumption of the safest and the most fuel economical route respectively in comparison to the original grid. Next, we evaluated the ship routing algorithm when using the grid pruning

AC

(Sect. 5.1) and loop avoidance technique (Sect. 5.3). Besides the standard grid,

880

in these experiments we generated two other grids for the Aegean Sea with coarser and finer resolution respectively (Table 7) for studying the impact of grid resolution on the execution time and the output of the algorithm. For each grid, we generated 100 random test cases, that is, for each case, a random departure and destination port was chosen and the maximum travel time of 43

M

AN US

CR IP T

ACCEPTED MANUSCRIPT

PT

ED

Figure 9: Source-Destination ports of Table 6.

Table 6: Comparison of the algorithm performance on the Original and on the Dynamically

CE

Partitioned Grid

Relative Increase in the Dynam-

Execution Time

ically Partitioned Grid over the Original Grid

Max Travel Time

Percent of Common Routes

Best Risk

Best Fuel Consumption

Original Grid

Dynamically Partitioned Grid

Kos - Elafonisi

10 hrs

82.76%

0%

0%

01:49:42

00:01:33

Kymi - Kalamata

10 hrs

100%

0%

0%

00:01:00

00:00:29

SW Crete - Chios

11 hrs

68.33%

1.64%

0.003%

00:09:43

00:01:14

Piperi - Cythera

10 hrs

100%

0%

0%

00:04:43

00:00:50

Hydra - Samos

8 hrs

83.33%

0%

1.04%

00:00:27

00:00:22

Rhodes - W Crete

13 hrs

99.11%

0%

0%

01:17:27

00:13:10

AC

Route

44

ACCEPTED MANUSCRIPT

Table 7: Grid Information

Coarse

Fine

Grid

Grid

Grid

(SG)

(CG)

(FG)

10,000

6,400

40,000

Distance of Nodes (in miles)

2

2.5

1

Number of Neighbor Nodes

16

16

16

ED

M

AN US

Grid Nodes

CR IP T

Standard

Figure 10: Source-Destination ports of Table 8.

voyage was set again proportional to euclidean distance of the departure and

PT

885

destination port. In all experiments, we set the maximum distance distV P from

CE

the voyage plan equal to 42 miles. Also, in contrast to the previous tests, now the input grids are time-dependent. However, the same weather conditions were assumed for all grids and thus the same time-dependent cost functions were used in all tests concerning each particular grid. Table 8 shows the results of these

AC 890

experiments. Clearly, the proposed algorithm enhanced with the grid pruning and loop

avoidance technique can efficiently solve the point-to-point ship routing problem. The increase in the maximum travel time affects the execution time (lines 5-6,

45

ACCEPTED MANUSCRIPT

895

Table 8) but it does not change the number of the derived solutions. As a side note, since the route planning algorithm is fast when working with a voyage plan, the algorithm can run from scratch and return new Pareto-optimal routes

CR IP T

in case of an unforeseeable situation during the journey. Concerning the impact of grid resolution on the execution time of the algo900

rithm, we can see from Table 8) that the algorithm runs faster on the Coarse

Grid than on Standard Grid except in two cases where the execution time is the same. On other hand, the execution time of the algorithm on the Fine Grid is longer in most tests; it is the same only in one case. The largest increase

905

AN US

in run-time is 16% on the Fine Grid, while the largest decrease is 12% on the

Coarse Grid. This should be expected since the number of edges and vertices of the grid directly affects the number of iterations of the algorithm. However, it should be mentioned again that the algorithm works on a pruned grid around the voyage plan. Otherwise, the impact of the grid resolution on the execution time of the algorithm would be more noticeable since in that case the algorithm search space would be the whole grid and the three grids differ a lot in the

M

910

number of nodes and edges that they contain.

ED

With regard to the solutions returned, the number of the Pareto-optimal solutions is only slightly affected by the resolution of the grid (Table 8). Figure 11 also illustrates the Pareto-fronts obtained for a particular journey, namely the journey from Piraeus Chania. We can see that solutions derived on the Fine

PT

915

Grid are slightly superior and those of the Coarse Grid a little inferior to the

CE

solutions of the Standard Grid. This invariance of the solution quality can be attributed to the use of the pruned grid and the fact that the weather conditions do not abruptly change on a local scale, most of times. Thus, an increase of decrease of detail by using a finer or coarser grid respectively may not be

AC

920

essential due to the same weather over large parts of the sea. Finally, we ran the algorithm with the two enhancements above for finding

the Pareto-optimal routes between two specific ports, namely Piraeus and Chania of the Crete island. In Figure 12, we can see the Pareto front derived by

925

the algorithm, with the maximum distance from the voyage plan set equal to 21 46

ACCEPTED MANUSCRIPT

Departure

Destination

CR IP T

Table 8: Computational results: Execution time

CPU time (in seconds)

Number of Routes

SG

CG

FG

SG

CG

FG

4

33

30

34

9

47

44

49

5

26

26

26

Max Travel Time (in hours)

Paros

3

3

3

Milos

Nauplio

4.5

8

7

Piraeus

Serifos

3

5

4

Chania

Paros

5

Piraeus

Syros

3.5

Piraeus

Syros

4

AN US

Piraeus

16

21

50

45

51

7

6

8

38

36

38

13

13

15

38

36

38

AC

CE

PT

ED

M

18

(a) Standard Grid

(b) Coarse Grid

(c) Fine Grid

Figure 11: Pareto Front from Chania to Paros

47

AN US

CR IP T

ACCEPTED MANUSCRIPT

Figure 12: Grid pruning and loop avoidance technique: Pareto front for the voyage between

M

Piraeus and Chania.

miles and the maximum duration of the voyage up to 3 hours. The ship routing

ED

algorithm found the whole Pareto set which comprises 48 routes.

PT

7. Conclusion

In this paper, we developed an exact algorithm for solving the time dependent, multi-objective and time constrained ship routing problem with fixed

CE

930

departure time. The final routes are optimal with respect to two different conflicting objectives namely, the fuel consumption and the risk along the route.

AC

In order to enhance the safety of the voyage, we have also considered the IMO regulations. Due to heavy computational demands, we focused on reducing the

935

execution time by reforming the grid structure. We have also enhanced the quality of the solution routes by using techniques which ensure that no loops will exist in the derived solutions and also increase the similarity of the solution routes to a given voyage plan. The experimental evaluation of the proposed ap48

ACCEPTED MANUSCRIPT

proach confirms that our techniques efficiently solve the ship-routing problem 940

and they are suitable for real-time applications.

CR IP T

References [1] M. IMO, 1/circ. 1228, Revised guidance to the master for avoiding dangerous situations in adverse weather and sea conditions, adopted 11th January.

[2] C. P. Padhy, D. Sen, P. K. Bhaskaran, Application of wave model for weather routing of ships in the north indian ocean, Natural Hazards 44 (3)

945

AN US

(2008) 373–385.

[3] R. Szlapczynski, A new method of ship routing on raster grids, with turn penalties and collision avoidance, Journal of Navigation 59 (01) (2006) 27– 42. 950

[4] G. Mannarini, G. Coppini, P. Oddo, N. Pinardi, A prototype of ship

M

routing decision support system for an operational oceanographic service, TransNav, the International Journal on Marine Navigation and Safety of

ED

Sea Transportation 7 (1) (2013) 53–59. [5] W. Shao, P. Zhou, S. K. Thong, Development of a novel forward dynamic programming method for weather routing, Journal of marine science and

955

PT

technology 17 (2) (2012) 239–251. [6] A. Azaron, F. Kianfar, Dynamic shortest path in stochastic dynamic net-

CE

works: Ship routing problem, European Journal of Operational Research 144 (1) (2003) 138–156.

[7] H. K. Lo, M. R. McCord, Adaptive ship routing through stochastic ocean

AC

960

currents: General formulations and empirical results, Transportation Research Part A: Policy and Practice 32 (7) (1998) 547–561.

[8] A. A. Montes, Network shortest path application for optimum track ship routing, Tech. rep., DTIC Document (2005).

49

ACCEPTED MANUSCRIPT

965

[9] K. Takashima, B. Mezaoui, R. Shoji, On the fuel saving operation for coastal merchant ships using weather routing, in: Proceedings of Int. Symp. TransNav, Vol. 9, 2009, pp. 431–436.

CR IP T

[10] I. S. Dolinskaya, Optimal path finding in direction, location, and time dependent environments, Naval Research Logistics (NRL) 59 (5) (2012) 325–339.

970

[11] A. Veneti, C. Konstantopoulos, G. Pantziou, Continuous and discrete time

label setting algorithms for the time dependent bi-criteria shortest path

AN US

problem, in: Operations Research and Computing: Algorithms and Software for Analytics, 2015, pp. 62–73. 975

´ Saux, C. Claramunt, A bidirectional path-finding algorithm [12] D. Tsatcha, E. and data structure for maritime routing, International Journal of Geographical Information Science (ahead-of-print) (2014) 1–23.

M

[13] L. Babel, T. Zimmermann, Planning safe navigation routes through mined waters, European Journal of Operational Research. [14] I. Ari, V. Aksakalli, V. Aydogdu, S. Kum, Optimal ship navigation with

ED

980

safety distance and realistic turn constraints, European Journal of Operational Research 229 (3) (2013) 707–717.

PT

[15] O. Kosmas, D. Vlachos, Simulated annealing for optimal ship routing, Computers & Operations Research 39 (3) (2012) 576–581. [16] S. Harries, J. HEIMANN, J. Hinnenthal, Pareto optimal routing of ships,

CE

985

transformation 772 (2003) 1.

AC

[17] S. Marie, E. Courteille, et al., Multi-objective optimization of motor vessel

990

route, in: Proceedings of the Int. Symp. TransNav, Vol. 9, 2009, pp. 411– 418.

[18] A. Dec` o, D. M. Frangopol, Real-time risk of ship structures integrating structural health monitoring data: Application to multi-objective optimal ship routing, Ocean Engineering 96 (2015) 312–329. 50

ACCEPTED MANUSCRIPT

[19] J. Szlapczynska, R. Smierzchalski, Multicriteria optimisation in weather routing, Marine Navigation and Safety of Sea Transportation (2009) 423. 995

[20] M.-C. Tsou, Integration of a geographic information system and evolution-

Navigation 63 (02) (2010) 323–341.

CR IP T

ary computation for automatic routing in coastal navigation, Journal of

[21] S. Bijlsma, A computational method in ship routing using the concept of limited manoeuvrability, Journal of Navigation 57 (03) (2004) 357–369. 1000

[22] M.-C. Fang, Y.-H. Lin, The optimization of ship weather-routing algorithm

AN US

based on the composite influence of multi-dynamic elements (ii): Optimized routings, Applied Ocean Research 50 (2015) 130–140.

[23] A. Orda, R. Rom, Minimum weight paths in time-dependent networks, Networks 21 (3) (1991) 295–319. 1005

[24] A. Orda, R. Rom, Shortest-path and minimum-delay algorithms in net-

ED

37 (3) (1990) 607–625.

M

works with time-dependent edge-length, Journal of the ACM (JACM)

[25] D. E. Kaufman, R. L. Smith, Fastest paths in time-dependent networks for intelligent vehicle-highway systems application, Journal of Intelligent Transportation Systems 1 (1) (1993) 1–11.

PT

1010

[26] M. M. Kostreva, M. M. Wiecek, Time dependency in multiple objective

CE

dynamic programming, Journal of Mathematical Analysis and Applications 173 (1) (1993) 289–307.

AC

[27] T. Getachew, M. Kostreva, L. Lancaster, A generalization of dynamic

1015

programming for pareto optimization in dynamic networks, RAIROOperations Research 34 (01) (2000) 27–47.

[28] H. W. Hamacher, S. Ruzika, S. A. Tjandra, Algorithms for time-dependent bicriteria shortest path problems, Discrete optimization 3 (3) (2006) 238– 254. 51

ACCEPTED MANUSCRIPT

1020

[29] A. Makrygiorgos, I. A. Vetsikas, S. Perantonis, Accelerating multi-objective ship routing using a novel grid structure and a simple heuristic, in: Proceedings of the 6th International Conference on Information, Intelligence,

CR IP T

Systems and Applications, IEEE, 2015. [30] N. Touati, V. Jost, On green routing and scheduling problem, arXiv preprint 1203.1604.

1025

[31] M. Christiansen, K. Fagerholt, D. Ronen, Ship routing and scheduling: Status and perspectives, Transportation science 38 (1) (2004) 1–18.

AN US

[32] S. Bijlsma, A computational method for the solution of optimal control problems in ship routing, Navigation 48 (3) (2001) 145–154. 1030

[33] O. Bolza, Vorlesungen u ¨ber Variationsrechnung, BoD–Books on Demand, 2013.

M

[34] R. W. James, Application of wave forecasts to marine navigation. [35] K.-Y. Chang, G. E. Jan, I. Parberry, A method for searching optimal routes

ED

with collision avoidance on raster charts, The Journal of Navigation 56 (03) (2003) 371–384.

1035

[36] S. E. Dreyfus, An appraisal of some shortest-path algorithms, Operations

PT

research 17 (3) (1969) 395–412. [37] A. Warner-Grieve, Optimal route finding with collision avoidance in marine

CE

navigation, Tech. rep. (2006).

[38] A. Veneti, C. Konstantopoulos, G. Pantziou, An evolutionary approach to

AC

1040

multi-objective ship weather routing, in: Information, Intelligence, Systems and Applications (IISA), 2015 6th International Conference on, IEEE, 2015, pp. 1–6.

[39] A. N. Perakis, N. A. Papadakis, Minimal time vessel routing in a time-

1045

dependent environment, Transportation Science 23 (4) (1989) 266–276.

52

ACCEPTED MANUSCRIPT

[40] H. Lee, G. Kong, S. Kim, C. Kim, J. Lee, Optimum ship routing and its implementation on the web, in: Advanced Internet Services and Applications, Springer, 2002, pp. 125–136.

CR IP T

[41] J. Bisschop, AIMMS-Optimization modeling, Paragon Decision Technology, 2011.

1050

[42] L. Mandow, J. L. P. De La Cruz, Multiobjective a* search with consistent heuristics, Journal of the ACM (JACM) 57 (5) (2010) 27.

[43] I. Koromila, Z. Nivolianitou, T. Giannakopoulos, Bayesian network to pre-

AN US

dict environmental risk of a possible ship accident, in: Proceedings of the

7th International Conference on PErvasive Technologies Related to Assis-

1055

tive Environments, ACM, 2014, p. 44.

[44] S. Wei, P. Zhou, 23. development of a 3d dynamic programming method for weather routing, Methods and Algorithms in Navigation: Marine Nav-

1060

M

igation and Safety of Sea Transportation (2011) 181.

[45] Y. Kwon, Speed loss due to added resistance in wind and waves, Naval

ED

Architect (2008) 14–16.

[46] K. Avgouleas, Optimal ship routing, Ph.D. thesis, Massachusetts Institute

PT

of Technology (2008).

[47] I. MSC, 83/inf. 2: Formal safety assessmentconsolidated text of the guidelines for formal safety assessment (fsa) for use in the imo rule-making pro-

CE

1065

cess (msc/circ. 1023- mepc/circ. 392), International Maritime Organisation:

AC

London, UK.

[48] Z. S. Nivolianitou, I. A. Koromila, T. Giannakopoulos, Bayesian network to

1070

predict environmental risk of a possible ship accident, International Journal of Risk Assessment and Management 19 (3) (2016) 228–239.

[49] C. De Boor, A practical guide to splines, Vol. 27, Springer-Verlag New York, 1978. 53

ACCEPTED MANUSCRIPT

[50] E. Guti´errez, A. L. Medaglia, Labeling algorithm for the shortest path problem with turn prohibitions with application to large-scale road networks, Annals of Operations Research 157 (1) (2008) 169–182.

1075

AC

CE

PT

ED

M

AN US

putation Theory, Springer, 1993, pp. 234–243.

CR IP T

[51] P. Fischer, Finding maximum convex polygons, in: Fundamentals of Com-

54