A novel dynamic route optimization method and its implementation using Python
A novel dynamic route optimization method and its implementation using Python
iew
Ahmad A. Moussa (a)*, Amman A. Ali (a), Mohi El Sayeh (b), Ahmad S. Shehata (c)
a Maritime Upgrading Studies Institute, Arab Academy for Science and Technology and Maritime Transport
(AASTMT), Alexandria 1029, Egypt
b College of Maritime Transport and Technology, Arab Academy for Science and Technology and Maritime Transport
ev
and Technology and Maritime Transport (AASTMT), Alexandria 1029, Egypt
r
Declarations
Funding:
er
pe
The authors did not receive support from any organization for the submitted work.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
A novel dynamic route optimization method and its implementation
using Python to optimize ship voyages sailing time based on weather
routing techniques
iew
Ahmad A. Moussa (a)*, Amman A. Ali (a), Mohi El Sayeh (b), Ahmad S. Shehata (c)
a Maritime Upgrading Studies Institute, Arab Academy for Science and Technology and Maritime Transport
(AASTMT), Alexandria 1029, Egypt
b College of Maritime Transport and Technology, Arab Academy for Science and Technology and Maritime Transport
ev
and Technology and Maritime Transport (AASTMT), Alexandria 1029, Egypt
Abstract
r
Energy conservation, emission reduction, and voyage time optimization are critical concerns in the marine
er
sector, where enhancing ship energy efficiency and sailing duration is essential for significant decreases in
energy consumption and CO2 emissions. Existing studies generally focus on either sailing speed or route
optimization, sometimes overlooking their interplay under continuously variable weather conditions, hence
reducing the precision and quality of proposed solutions. This research presents an advanced Time
pe
Boundary Semicircles (TBS) Algorithm, which provides a robust and precise optimization model that
incorporates involuntary speed reduction based on real-time weather data from the Copernicus Marine
Environment Monitoring Service (CMEMS), subject to deterministic time boundaries.
The TBS algorithm employs mathematical modeling to compute speed reductions dynamically and
integrates Python libraries such as NumPy, Pandas, Matplotlib, and Cartopy to enhance waypoint
ot
optimization and software interactivity. This research compares the TBS algorithm to the SIMROUTE
software, demonstrating its superior effectiveness in heavy weather scenarios with sailing time reductions
ranging from 7% to 27.25%. Case studies validate the algorithm's efficacy through comprehensive
simulation outputs, including map plots and detailed reports. They also highlight its potential for broader
tn
applications in aviation and land transport for route optimization. By bridging the gaps in maritime routing
optimization, the TBS algorithm represents a significant advancement in sustainable and efficient
transportation.
rin
Keywords: TBS algorithm; ship weather routing; Sailing time: Path planning problem; Dynamic route
ep
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
1. Introduction
ed
Ship weather routing has emerged as an important area of study and development in the quest for more
energy-efficient marine operations. Ship weather routing has attracted substantial attention in both
academics and industry in recent years. The fundamental purpose of weather routing is to identify the ideal
iew
route for a vessel from its departure to its arrival point based on real-time meteorological and oceanographic
data, such as wind, waves, and currents. By optimizing the ship’s route and speed in response to changing
weather conditions, it is feasible to achieve significant savings in fuel consumption and journey times,
resulting in lower operating costs and fewer emissions (Padhy et al., 2008).
From the perspective of the shipping sector, saving operational expenses is a complicated, multi-faceted
ev
challenge that covers fleet management and vehicle routing problems, such as scheduling and ship weather
routing. Ship weather routing is defined as establishing an appropriate sailing direction and speed for ocean
trips, based on nautical charts, projected sea conditions, the captain’s experience, and the individual features
of a ship on a certain route (Simonsen et al., 2015). Ship weather routing optimization problems are
r
particularly complicated because they are multi-objective; the route must be optimized at least in terms of
passage time and fuel consumption, and they are non-stationary due to the unpredictability of weather
conditions (Dębski & Dreżewski, 2024).
er
The principal approaches applied in ship weather routing include the isochrone method (Hagiwara &
Spaans, 1987), grid-based path-finding algorithms (Mannarini et al., 2016), artificial intelligence (Walther
pe
et al., 2016), and dynamic programming (Shao et al., 2012). Academic research has focused on optimizing
ship routing utilizing pathfinding algorithms ((Szłapczyńska & Śmierzchalski, 2009);(Hinnenthal & Clauss,
2010); (Zhao et al., 2022)) which combine oceanographic forecasts, such as predictions of wind, waves,
and currents. Additionally, some researchers have examined sailing route optimization algorithms that
incorporate the navigational environment, as this is also an efficient approach to reducing a ship’s energy
ot
In recent years, substantial research efforts have been dedicated to the modeling and prediction of a
ship's energy consumption ((Bialystocki & Konovessis, 2016); (Yang et al., 2019)), optimization of sailing
tn
speed ((Li et al., 2020); (Adland & Jia, 2016)), and route optimization ((Kim et al., 2020); (Ma et al., 2020)).
These activities have provided sturdy foundations for boosting energy efficiency and decreasing emissions
in the maritime industry. Environmental elements, such as wind, waves, and currents, influence the energy
utilization of ships during navigation. These metrics display large spatial and temporal variations and
rin
complex variability, resulting in major swings in a ship's operational circumstances and energy
consumption across varied navigational situations (K. Wang et al., 2018). Consequently, energy
consumption prediction and optimization studies must completely evaluate the impact of various
environmental elements, and several noteworthy contributions have been made in this sector. For instance,
ep
(Yan et al., 2014) created a neural network model leveraging ship-collected data to anticipate and evaluate
a ship's energy efficiency under varied navigational scenarios. Additionally, (Meng et al., 2016) suggested
an effective optimization model that examines characteristics like speed, displacement, and ambient
variables through log data, studying their association with energy usage. Zaccone et al. (2018) supported a
Three-Dimensional dynamic programming method for ship trip optimization, employing weather forecast
Pr
maps to pick an appropriate routing and speed profile. This technology displays the ability to enhance
navigational safety and effectively cut a ship's energy consumption. Wen et al. (2017) formulated a multi-
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
objective programming model including fuel consumption, fuel price, freight, and inventory expenses to
ed
optimize route assignment and speed for many ships in transit.
Shao et al. (2012) Reported a meteorological alignment optimization approach utilizing dynamic
programming, demonstrating that improving a ship’s course and power concurrently can achieve a 3%
reduction in fuel usage. Sen & Padhy. (2015) Developed and evaluated a model for route optimization using
iew
the shortest path method. H. Wang et al. (2019) Suggested employing a three-dimensional Dijkstra
algorithm for designing a ship’s waypoints and sailing speeds along each waypoint, which resulted in at
least a 5% reduction in fuel consumption in the investigated scenarios. Gkerekos & Lazakis. (2020)
Presented a novel framework for vessel weather routing based on previous ship performance and present
weather circumstances, employing a modified version of Dijkstra’s algorithm fitted with heuristics, which
is performed recursively until an optimal route is determined. Zhang et al. (2021) Proposed an automatic
ev
route optimization approach, determining that the automatic programming of a ship’s optimal path can be
achieved through the adoption of a clustering algorithm and ant colony algorithm based on data analysis.
Grifoll et al. (2022) Developed and built a comprehensive software for Ship Weather Routing, known
r
as SIMROUTE, using Python and the A* pathfinding algorithm to optimize sailing routes depending on
wave motion. The program is created with consideration of the Copernicus Marine Environment
er
Monitoring Service (CMEMS). Ma et al. (2024) Investigated a multi-objective weather routing problem for
ships, intending to reduce operational expenses, sailing time, and CO2 emissions simultaneously by
utilizing the Non-Dominated Sorting Genetic Algorithm III (NSGA-III). They discovered that the NSGA-
III algorithm, compared to the regularly used A* and 3D Dijkstra techniques, can produce over a 1.5%
pe
decrease in ship operating expenses, with reductions approaching 6% in certain cases.
However, these optimization algorithms have primarily centered on reducing energy consumption
along a single route, overlooking the spatial and temporal variability in the navigational environment within
a designated area to propose routes that could further minimize ship energy consumption. Additionally,
ot
previous research has studied optimization outcomes at fixed, predetermined sailing speeds, failing to
adequately account for the impact of different sailing speeds on optimization results. Consequently,
conventional optimization techniques poorly address the continually time-varying features and spatial-
temporal disparities in environmental and operational information. Over time, real-time information may
tn
In the past three years, academics have tackled this issue by undertaking experiments that focus on a
joint optimization method for sailing routes and speeds. This strategy takes into account the interplay
rin
between route and speed, coupled with multiple environmental elements. K. Wang et al. (2020) Developed
a joint optimization model for sailing routes and speeds based on an energy consumption model that
combines numerous environmental conditions. Building on this, (K. Wang et al., 2021) Introduced a unique
dynamic collaborative optimization technique utilizing the Model Predictive Control (MPC) strategy and
swarm intelligence algorithm to optimize ship energy consumption optimization. Wei et al. (2022)
ep
Established a combination optimization model for ocean shipping routes and sailing speed for ocean-going
vessels. This model estimates the ideal ocean shipping route and related sailing speed to optimize fuel
consumption while considering both involuntary and voluntary speed losses owing to maritime
surroundings and time frame constraints.
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Despite these gains, there are two noteworthy limitations to the approach adopted in the aforementioned
ed
publications. Firstly, researchers assumed a constant ship speed at each time step, omitting unintentional
speed reductions caused by additional resistance. This mistake effects the timeframe of environmental
information acquisition for parameter computations. Secondly, the division of time steps is altered by
velocity variations, leading to reduced lengths traveled within the preset time frame employed in
iew
calculations. This adjustment affects the precision of the model.
This paper aims to introduce and develop the TBS algorithm as a novel methodology to deal
dynamically with path planning optimization problems and its application in the maritime domain for ship
weather routing. Additionally, sophisticated implementation is proposed using Python and some
accompanying libraries as the first version of TBS software that offers an efficient and interactive decision-
making platform for optimizing ship weather routing.
ev
The structure of the paper is as follows: Section 2 provides a detailed illustration of the methodology
employed, including a full explanation of the TBS Algorithm and Python scripts developed and used in the
implementation, data acquisition, and optimization technique of mathematical models. Section 3
r
demonstrates the results and discussions. First, it outlines the main outputs of the TBS software through
two initial trial scenarios. Second, it details the validation process against the SIMROUTE software in four
er
test cases. A discussion follows, addressing the main results, the potential application of the TBS algorithm
in other transportation domains, and its effectiveness in solving path planning optimization problems.
Moreover, limitations will be delineated. Finally, Section 4 presents the conclusions of the study and future
recommendations.
pe
2. Methodology
ot
Materials and methods employed in this study comprise two main stages, developing the TBS algorithm
and implementing this algorithm using Python through TBS software. The methodology framework is
visualized in the following flowchart represented in Figure 1.
tn
frame. The radius of TBS will be the maximum distance the ship could travel given her maximum speed in
the chosen time frame. So, a geographical region that has candidate points as latitudes and longitudes will
be created in which the ship might pick to optimize the route. Environmental conditions will be gathered in
this time frame and involuntary speed reduction based on additional resistance from waves will be
ep
estimated. Positions with the least reduction will be picked to avoid extra power and fuel usage. Distances
will be accumulated and added based on pathways followed by the ship and by using initial velocity as it
will be expected to be maintained all over the journey to optimize and save voyage time, Time Corrected
Values (TCV) will be calculated. When TCV reaches the predetermined time frame another TBS will be
Pr
created. This unique algorithm will cover the aforementioned shortcomings for more exact optimization.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
iew
r ev
er
pe
ot
tn
rin
The proposed approach consists of four fundamental components: meteorological data acquisition, a
mathematical model solving involuntary speed reduction caused by waves, innovative procedures for
ep
solution algorithms, and a test case for assessing TBS with a prior accepted methodology in order to
demonstrate its effectiveness in optimizing voyage time. The solution algorithm strives to present a novel
approach for maximizing the utilization of meteorological forecasting data within predetermined time
frames, including the potential adjustment of these time frames owing to speed reduction. Meteorological
Pr
data collecting is meant to detect sea states relevant to alternate routes. Subsequently, the planned route
undergoes optimization based on accurate meteorological conditions data supplied by the algorithm. The
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
mathematical model analyzes involuntary speed reduction and dynamically feeds this data into the
ed
algorithm, ensuring instantaneous optimization for succeeding time frames. Once the best route is selected,
emphasizing the least drop in speed, further optimizations can be initiated to maximize fuel and energy
consumption dynamically with voyage time and speed optimizations. These further optimizations will be
tackled in future research recommendations.
iew
2.1.1. Metrological data acquisition
The optimization of ocean shipping routes and sailing velocity is substantially influenced by sea states.
Generally, a ship suffers higher resistance when going through wind and irregular waves. Meteorological
data, frequently saved in the NetCDF format, plays a key role in this context. NetCDF datasets comprise
ev
dimensions, variables, and attributes. Variables, such as wind speed, wind direction, wave height, or wave
direction, are applied to store meteorological data in grid forms. Independent variables contain time stamps,
latitude, and longitude of points within the grid. Consequently, meteorological data within the grids can be
retrieved with specified coordinates and time information. Essentially, the NetCDF dataset represents
r
single-value functions with numerous variables. To analyze sea states along maritime routes, consideration
must be given to the grids crossed by these routes. Wave information files supplied from the European
Union's Copernicus Earth observation program are applied. The Copernicus Marine Environment
er
Monitoring Service (CMEMS) offers free access to extensive data relating to the worldwide ocean's
physical status. Various ocean wave products are available in the CMEMS catalog, covering varied
geographical locations. In this study's hypothetical instance centered on the Mediterranean Sea, the Waves
pe
Analysis and Forecast Module is utilized, with specific attributes given in Table 1.
Spatial extent Mediterranean Sea Lat 30.19° to 45.98° , Lon -18.12° to 36.29°
Spatial resolution 0.042° × 0.042°
Temporal resolution Hourly
tn
Format NetCDF-4
reduction in speed despite the constant power output from the main engine. Thus, a higher power input is
required to maintain the desired sailing velocity. Moreover, facing severe sea conditions may provoke
significant rolling motions or even capsizing, endangering both equipment and cargo, as well as the safety
of the crew. Additionally, this decrease in speed alters the time intervals for data collection, potentially
ep
causing inaccuracies in the weather data supplied to the mathematical model and solution algorithm, which
may result in erroneous outputs.
In the initial phase of the study, the focus will solely be on the impact of waves, utilizing the methodology
proposed by (Mannarini et al., 2013), as applied in the research conducted by (Grifoll et al., 2022). It can
Pr
be employed to calculate the additional resistance caused by irregular waves, facilitating the assessment of
involuntarily speed reduction. Bowditch's methodology is utilized to estimate involuntary speed loss at this
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
point due to its straightforwardness and to prioritize the implementation of the new algorithm. The reduced
ed
speed (V) in knots is determined using the subsequent equation:
Where Vo (kn) is the vessel's initial speed without wave effect, Hs (ft) is the significant wave height and
iew
is the ship-to-wave relative direction (clockwise). Table 2 shows the value of F () based on the wave’s
direction in (kn/ft2).
F (kn/ft2)
ev
[0o, 45o] 0.0083
]45o, 135o [ 0.0165
[135o, 225o] 0.02480
]225o, 270o [ 0.0165
r
[270o, 360o] 0.0083
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
1
Outer Boundary: A circle that passes through A&B with radius R1 = AB, in which the ship cannot
ed
2
maneuver outside
Inner Boundary (GCR): The great circle route is the shortest distance between 2 points on the sphere, the
ship will maneuver around them to be close to the shortest path.
iew
A straight line between A&B and the projection line: they are construction lines to determine spatial
properties, for instance, divergence and convergence constraints.
Time Boundary Semicircle (TBS): it demonstrates the time boundary of a preset value of time, in this
study, it will be one hour as data obtained is updated every hour, the ship cannot get out of this semicircle
in the predetermined time frame even it moves with its maximum speed. The radius of this semicircle R2
ev
= Max velocity of the ship * predetermined time frame.
Divergence Constraint: a chord connected between A and the intersection point of the projection line with
the outer boundary circle. This projection line is assumed to be halfway between A & B, this projection
line could move forward or backward to change the angle of divergence and let the ship maneuver in a
r
wider area away from the inner boundary (GCR) If it yields less resistance based on weather conditions
considering achieve time constraint of the voyage.
er
Convergence Constraint: a chord connected between the intersection point of the projection line with the
outer boundary circle and B. This projection line is assumed to be halfway between A & B, this projection
line could move forward or backward to change the angle of convergence to ensure the ship will reach its
pe
destination even if it passes through points with high resistance to achieve time constraints and position of
destination.
Divergence and convergence constraints will be optimized in each step especially the initial and final steps
due to the necessity of including more area of maneuvering at the beginning of the voyage and its end. The
ot
ship will maneuver inside the divergence and convergence constraints area around the inner Boundaries of
GCR. It is a dynamic phase optimization problem that has many variables that will be determined through
the process and fed again to the solution algorithm shown in Table 3 to optimize each step till the destination
and this is the key point for precise results.
tn
2 Construct AB line segment between the start point and end point.
3 R1 = 0.5* AB
4 Construct a Circle with radius R1 passing through A & B (Outer Boundary)
5 Construct GCRs on both sides of AB line segment as (Inner Boundary)
ep
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
9 Construct TBS in the direction of Endpoint with radius R2 = Max. Ship Speed * time
ed
frame
10 Calculate involuntary speed reduction at all positions of intersections between long.
And lat. Inside the TBS using the Mathematical model mentioned
11 Adjust divergence and convergence angles based on minimum values of reduction
iew
regarding their positions, constraints lines will be drawn and pass with farthest points
in both directions.
12 Closest node in a range of 5 Nautical miles with a min. Speed reduction will be
chosen as a waypoint
13 Plot a line segment between this point and the next node.
14 Take its distance and append it to a one-dimensional array of distances between
ev
nodes.
15 Divide corresponding distances with initial speed (assumed to be maintained
constant)
16 Append it to an array of TCV.
r
17 Do summation for elements of the TCV array
18 If elements of the TCV array are ≤ 1 hour (preset time frame)
19
20
21
22
Loop from line 10 to line 18
er
Else if stopping criteria are met, identify the current node position.
Loop from line 9 to 20
This loop will continue till the last TBS.
pe
23 If the node coincides with the Endpoint
24 STOP
If there is an obstacle or land between the start and end point of the voyage, the voyage will be divided into
ot
more than one initial and endpoint with the same condition that there is no land or obstacle between the
new nodes. The same algorithm will be applied in stages till the Endpoint.
Hypothetical case study between Start point (A) with coordinates of (40.4833, 2.5) and Endpoint B with
coordinates of (40.9833, 3.5), the first value is latitude and the second one is longitude. These positions are
located in the Mediterranean Sea. So, weather conditions data of this region is downloaded from CMEMS
rin
with prespecified parameters known as metadata of the simulation. Table 4 shows the metadata of the test
case. This data is downloaded from CMD through the MOTU client.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Lat. Max = 42.150
ed
Data included Wave significant height (Hs) in meters
Wave Periodic Time (T) in seconds
Wave encounter direction in degrees
Involuntary Speed reduction model Bowditch model
iew
Start time of sailing 00:00
Grifoll et al., (2022) Implemented a comprehensive software for ship weather routing referred to as
ev
SIMROUTE. A* pathfinding algorithm is used to optimize the sailing route as a function of the wave action.
This software is open source and consists of many Python scripts to implement weather routing. To apply
this methodology to the test case, we Run 3 scripts and import Metadata from a separate script named
“params” as follows:
r
1- get_waves_CMEMS.py: to download weather data with prespecified parameters
2- make_waves.py: this script is used to mesh-grid wave data and construct a heatmap with waves
er
significant height for each intersection point between latitudes and longitudes.
3- main.py: this is the main script that applies the A* algorithm and cost function implementation and gets
pe
out the results needed.
TBS implementation
The aforementioned algorithm is implemented with little modifications for simplicity using Excel software
with several iterations as follows:
ot
1- The wave data downloaded in (.nc) format has been converted to CSV format to deal with it.
2- The CSV file contains data for 24 hours from 00 to 23 for the data 21-01-2020, so we divide each
hourly data in a separate file as a chunk of data, every file includes data for each TBS constructed
tn
and used.
3- Starting from 00-hour file data as it is the start of the sailing from A, and after setting the closest
range of candidate position to be in range of 5 nautical miles, dead reckoning techniques are used
to determine the boundaries of searching the candidate positions around the start point by finding
rin
3 values from start point which are: max_lat. at 0o, min_lat. at 180o, and max_long. At 90o, these
degrees are measured from the north. So, from the start position we add 5 Nm in 3 directions (0,
90, 180). These positions will construct an inner semicircle with a radius of 5 nautical miles. And
within this boundary, all candidate positions will be considered.
ep
4- Equations used to determine new latitudes and longitudes are as follows in Excel format (as written
in Excel software, these formulas may be written with another format in another software like
Python & Matlab) (Chris Veness, 2019):
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Where φ is latitude, λ is longitude, θ is the bearing (clockwise from north), δ is angular distance d/R; d
ed
being the distance traveled, R the earth’s radius in nautical miles, all positions must be converted to radians.
5- Each new (φ2, λ2) will be calculated to get those boundaries.
6- Based on max_lat. , min_lat., and max_long. filtration of data will take place to determine candidate
positions.
iew
7- After determining candidate positions, involuntary speed reduction calculations are conducted
based on the data. Unit conversion from meter to foot is considered to be compatible with values
of F ().
8- Maximum velocity between candidate positions is chosen as the location of minimum reduction.
The coordinates of this position are chosen to be the optimized next waypoint.
ev
9- By using the spherical law of cosines from the above source, we determine the distance between
the current position (start point) and the following waypoint.
r
Distance = acos( sin(lat1)*sin(lat2) + cos(lat1)*cos(lat2)*cos(lon2-lon1) ) * R (4)
10- Through this methodology, velocity is assumed to be maintained around the initial velocity, so
er
TCV will be calculated by dividing distance by initial velocity.
11- TCV will be accumulated and summation will take place after every iteration till TCV will exceed
1 hour. Subsequently, the next data file for the next hour is used and another TBS will be
pe
constructed.
12- Convergence and Divergence constraints are adjusted and fitted manually for simplicity in this
implementation to ensure arrival to the endpoint.
Results are compared between these 2 methodologies based on 3 criteria:
ot
a- Sailing distance
b- Sailing time (main optimization factor)
tn
c- Optimized route
The prior approach had some drawbacks, Excel software was used to implement the algorithm and
employed a low number of iterations, negatively reducing the model's precision. Additionally, just one
rin
mathematical model was employed to calculate involuntary speed reduction based on weather conditions,
which may not account for all eventualities. Therefore, a more complicated implementation is needed to
enhance the efficiency of the TBS algorithm.
ep
This stage extends the previous stage and makes two main contributions:
Pr
1. It includes a more sophisticated implementation that incorporates Python scripts to handle all
possible weather data with high resolution and various corner cases, thereby maximizing efficiency.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
2. The implementation selects optimum waypoints based on a combination of three mathematical
ed
models to ensure high precision and optimality.
Through this implementation, the TBS software can be employed for any voyage across different time
zones to optimize sailing time, providing superior performance compared to other path-planning
algorithms.
iew
The software structure consists of 5 Python scripts as follows:
Parameters.py
Get_data_new.py
Methods.py
ev
Main1.py
Main2.py
Several Python libraries are utilized, including matplotlib, Cartopy, numpy, pandas, and xarray. The input
variables are consolidated in a single file, parameters.py, which contains all the necessary input parameters
r
for the simulation. These parameters are logged by the user, and a typical set of parameters and their
descriptions are illustrated in Table 5. The code execution is structured into three sequential steps:
downloading data, Phase 1, and Phase 2.
er
The script get_data_new.py downloads sea surface wave variables, specifically significant wave height
(meters), wave direction (degrees measured clockwise from north), and wave period (seconds). This data
pe
is organized in netCDF format (.nc) files based on time, latitudes, and longitudes and is used to calculate
involuntary speed reduction using various mathematical models and optimization techniques. Table 6
provides information on different CMEMS wave products.
The methods.py script includes all methods and functions used to complete the simulation. These methods
are detailed in Figure 3 along with their arguments, returns, and mathematical models.
ot
Phase 1, executed by main1.py, validates the input parameters and outputs a map and report on these
constraints. Phase 2, executed by main2.py, runs the TBS algorithm using optimization techniques to select
tn
the optimum waypoints for the voyage, resulting in a voyage map and two reports: simulation metadata and
a simulation output report that includes the chosen waypoints, total sailing time, and total distance covered.
A step-by-step procedure will be provided to guide TBS software users, including the folder hierarchy. The
open-source code (MIT License), together with support materials, is available at https://github.com/Ahmad-
rin
Moussa1/TBS_Software.git. Downloaded data of waves will not be included for their large sizes, but users
can download it with the constraints and procedures introduced in this section.
The voyage planner must consider safety aspects to avoid zones of heavy weather, coral reefs, land, and
areas of heavy traffic by adjusting the number and coordinates of paths through which the ship will navigate.
The voyage may traverse different spatial and temporal zones (e.g., the Mediterranean Sea, Global Ocean,
Pr
and Baltic Sea), each with distinct spatial boundaries and temporal resolutions as defined by CMEMS wave
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
products. Therefore, the planner must decide the number and IDs of wave products to use based on CMEMS
ed
information.
Additionally, the planner must determine the value of distance per heading, which is the distance between
waypoints. The optimal waypoint may be at a distance either shorter or longer than this value, defined by
reduction and gain factors. The distance between different waypoints will be bounded by these factors as
iew
follows:
Another crucial value is the degree steps, which divide each path into outer boundary circles (OBCs) with
ev
a diameter equal to distance per heading * degree steps. Degree steps refer to the divisions of each OBC; if
the degree steps are 30, the OBC will be divided into 30 waypoints, ideally with the distance between each
waypoint equal to the distance per heading.
r
Ship specifications, including service speed, maximum speed, length between perpendiculars, and
deadweight, must be provided as these will be used to calculate involuntary speed reduction based on
mathematical models and optimization techniques.
er
Math model parameter and optimization technique, which can be either one of two values (1 or 2), is used
to calculate and choose optimum waypoints. The specific optimization techniques and mathematical models
used will be thoroughly discussed in the methods.py script subsection.
pe
Table 5: list of parameters input variables in parameters.py
“D:\TBS\output_phase_1”
(main1.py) are saved (out_phase_1) directory
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Dir_out_phase_2 Computer storage path where outputs of phase 2
“D:\TBS\output_phase_2”
ed
(main2.py) are saved (out_phase_2) directory
Zones_num Spatial zone numbers included in the simulation 1, means the ship will sail in
based on wave products' different boundaries one zone which is the
Mediterranean
iew
Zones IDs of different wave products from CMEMS [2]
Time_res Temporal resolution of the data based on wave
products from CMEMS. It will take 2 values (1 or
[1]
3) hourly or every 3 hours. For all zones, it will be
hourly except the global zone will be 3 hours.
lonMin, lonMax, The spatial boundaries of the zones where data
ev
latitmin, latitmax will be downloaded. [Long_min], [long_max], [-5], [31], [30], [40]
[lat_min], [lat_max]
dx Small differential to be added to maximum (lats
and longs) and subtracted from minimum (lats and
0.5
r
longs) to ensure all data of the voyage are included
in the downloaded files.
Dist_per_head
Reduction_factor er
It is a value in nautical miles between waypoints
This value will determine the minimum distance
per heading that could be chosen for candidate
positions, it must be smaller than 1
8
0.3
pe
Gain_factor This value will determine the maximum distance
per heading that could be chosen for candidate 1.5
positions, it must be greater than or equal to 1
Deg_step Divisions of each OBC 10
Math_model It can take 2 values:
ot
1. All OBCs have the same diameter, resulting in residual distances at the end of each path when the
distances are divided.
ep
2. Residual distances also occur within each OBC due to the reduction and gain factors used.
3. The Estimated Time of Departure (ETD) must begin at the top of the hour, for instance, at 13:00:00.
These constraints will be further discussed in the following subsections and the discussion section.
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
2.2.2. Waves data source and get_data_new.py script
The wave information data are downloaded from the European Union’s Earth monitoring program,
iew
Copernicus. The Copernicus Marine Environment Monitoring Service (CMEMS) offers free, open-access
data and information regarding the physical state of the worldwide ocean. CMEMS provides many ocean
wave products in its catalog, encompassing diverse geographical locations (Grifoll et al., 2022). The service
has undergone multiple modifications, including merging several models and altering the time format.
Table 6 describes the many products utilized in TBS software.
ev
The get_data_new.py script is the first to execute after logging all parameters used in the simulation. It
downloads the wave files in netCDF format, taking an array of wave product IDs based on the number of
zones the voyage will cover as an argument. The script also uses parameters.py to subset the geographical
area of the wave fields through parameters such as min_lat, max_lat, min_long, max_long, dx, ETD, and
r
ETA to capture specific temporal and spatial data for the simulation. The downloaded wave files are stored
in the "storeWaves" folder within the directory specified by “Dir_wave_data” in the parameters.py file. If
the voyage simulation covers two or three different zones, each zone will have a separate file of downloaded
er
data in the same directory, with its spatial extent defined in parameters.py.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Full name: Black Sea Significant Wave Height extreme from Reanalysis
ed
Product ID: BLKSEA_OMI_SEASTATE_extreme_var_swh_mean_and_
anomaly
Black Sea 4 Dataset ID: cmems_mod_glo_wav_anfc_0.083deg_PT3H-i
Spatial extent: Black SeaLat 40.86° to 46.8°Lon 27.37° to 41.96°
iew
Spatial resolution: 0.028° × 0.037°
Temporal resolution: Hourly
Full name: Baltic Sea Wave Analysis and Forecast
Product ID: BALTICSEA_ANALYSISFORECAST_WAV_003_010
Dataset ID: cmems_mod_bal_wav_anfc_PT1H-i
Baltic Sea 5
Spatial extent: Baltic SeaLat 53.01° to 65.91°Lon 9.01° to 30.21°
ev
Spatial resolution: 2 × 2 km
Temporal resolution: Hourly
Full name: Arctic Ocean Wave Analysis and Forecast
Product ID: ARCTIC_ANALYSIS_FORECAST_WAV_002_014
r
Dataset ID: cmems_mod_glo_wav_anfc_0.083deg_PT3H-i
Arctic Ocean 6
Spatial extent: Arctic OceanLat 63° to 90°Lon -180° to 180°
Temporal resolution: er
Spatial resolution: 3 × 3 km
Important note regarding datasets, Black Sea and Arctic Ocean wave products, are not ready yet from
CMEMS, alternatively use global or download .nc file manually.
pe
2.2.3. Methods.py script
This script is central to all executed scripts as it encompasses all the functions required for the simulation,
consisting of 14 methods. Figure 3 visualizes these methods, detailing their arguments, returns, and
ot
descriptions. Comprehensive explanations are provided for the more complex methods.
Methods Explanation
tn
1- Calc_distance: Calculates the distance between two points given their coordinates (latitude and
longitude) in nautical miles using the spherical law of cosines.
2- Calc_initial_bearing: Calculates the initial bearing between two points based on their coordinates
(latitude and longitude). It returns the bearing in degrees, measured clockwise from north.
3- Destination_point: Calculates the destination point given a start point's coordinates (latitude and
rin
longitude), distance in nautical miles, and bearing in degrees. This method uses the dead reckoning
technique to determine positions and returns the latitude and longitude of the destination point.
4- Plot_path: Uses the Cartopy and matplotlib libraries in Python to plot a map illustrating the outer
boundary circles (OBCs) for the intended voyage, labeling the start and end of each path. It takes
ep
an array of tuples (latitude and longitude) representing the outer boundaries of each circle and the
start and end coordinates of the paths as arguments and returns a map.
5- Plot_path2: Uses the Cartopy and matplotlib libraries in Python to plot a map showing the optimal
route for the voyage, optimizing sailing time between start and end points. It takes an array of tuples
Pr
(latitude and longitude) representing the optimal waypoints chosen after optimization and returns
a map.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
iew
r ev
er
pe
ot
tn
rin
ep
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
iew
r ev
er
pe
ot
tn
rin
ep
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
6- Check_land: Takes the coordinates of a given point along with time and checks the downloaded
ed
wave data files for specific values, such as significant wave height and direction. If these values
are found and not equal to (NaN), the method returns the status as “is_water”. If the values are
(NaN), the method returns the status as “is_land”.
7- Transform_matrix:
iew
Transforms the heading between the start and end of each OBC into a divergence array,
convergence array, and TBS array. To fully explain this, refer to Figure 3, which visualizes the
anatomy of one OBC. The route of the voyage is initially divided by the planner into several paths,
each of which is subdivided into OBCs. One OBC is explained, and the same procedures are applied
to all OBCs using a divide-and-conquer programming paradigm.
Consider point A as the starting point. The primary objective is to select the optimal next waypoint
ev
based on weather data, ensuring that the chosen point has minimal involuntary speed reduction,
indicating the least weather impact. Spatial and temporal boundaries must be applied to confine
candidate waypoints, followed by the application of an optimization technique to select the optimal
one.
r
For spatial boundaries, a range of distances will be established based on reduction and gain factors
er
to identify candidate positions. Additionally, two more spatial constraints, divergence and
convergence constraints, must be set to ensure that the chosen waypoints eventually lead to the
destination point. These constraints are related to the “Deg_step” parameter.
pe
Consider the following example: if the degree steps are 30, the OBC will ideally be divided into 30
waypoints. To ensure the route progresses from start to end, a divergence chord is drawn from the
start point (point A) to the OBC circumference. From this point, a convergence chord is drawn to
the end point (point B). Geometrically, the angle between these two chords will always be 90
degrees, as they are circumscribed by the diameter of the OBC. These 90 degrees are divided by
ot
the Deg_step value, which in this case (90/30) equals 3 degrees. This means the divergence chord
angles with the diameter will narrow from 90 to 45 degrees on both sides of the diameter. All
degrees are measured clockwise from north (0 degrees).
tn
In this example, the divergence array will be set as follows: [3, 177, 6, 174, 9, 171, 12, 168, ..., 45,
135]. Each step will have a range of two consecutive indices in the array. For the first waypoint,
the angles chosen will be in the range of (3:177), and so on for the following waypoints. Bearings
will be calculated between candidate positions and the last waypoint chosen (in this case, the start
rin
After completing the divergence array, the convergence array begins. It operates similarly, except
the values narrow from 45 to 0 degrees on both sides of the diameter. Bearings will be calculated
between candidate positions and the endpoint of the OBC (point B), and those within the
ep
convergence array range will be chosen. The convergence array in this example is calculated as
follows: [315, 225, 312, 228, 309, 231, ..., 270, 270]. By employing divergence and convergence
constraints, the route will be directed to the destination point of the OBCs, paths, and the endpoint
of the voyage.
Pr
In the previous example, the heading between the start and end points (A and B) is 90 degrees. This
heading affects divergence and convergence angles. Changing this angle will adjust the divergence
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
and convergence angles accordingly. All headings between paths and OBC start and end points are
ed
handled in the code to cover all possibilities around 360 degrees. At this point, a fourth constraint
can be added to the first version of the TBS software: each path will have a heading between its
start and end points, and the same heading will be applied to all OBCs on that path. The heading
array will be returned from this method, comprising all headings between the start and end of each
iew
OBC.
The final output of this method is the TBS array, which aids in defining boundaries where data will
be obtained from the downloaded files.
To summarize, this method takes an array of tuples (latitudes and longitudes) of the start and end
points of OBCs along all paths and returns four arrays: heading_array, divergence_array,
ev
convergence_array, and TBS_array.
8- Mathematical models:
Three models are employed in TBS software to calculate involuntary speed reduction based on
r
weather conditions and other factors. three models are used to calculate this reduction (Bowditch,
Artessen, Khokhlov).
Aertssen’s formula (Aertssen, 1975) takes into account the ship’s dimensions, in particular, the
ship’s length. For approximating the speed reduction, Aertssen proposes the following equation:
𝑚 𝑉0
tn
where LBP is the vessel’s length between perpendiculars and m and n are empirical coefficients
defined in Table 7.
rin
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Values of m and n Aertssen coefficients depending on the wave characteristics (BN= Beaufort
ed
number, Hs = significant wave height, Wspeed = wind speed). The columns of the table contain
estimated values of m and n coefficients for waves hitting a vessel at a particular angle θ in degrees.
iew
The Khokhlov formula, proposed by (Lubkovsky, 2009), accounts for the height and direction of
the waves as well as the ship’s dimensions, particularly its deadweight. According to (Maisiuk &
Gribkovskaia, 2014), the standard error for this formula does not exceed 0.5 knots. The Khokhlov
method calculates speed reduction as follows:
ev
where θ (here in radians) and D is the vessel’s deadweight (DWT) in tons. Khokhlov method is
applicable for vessels with a deadweight range from 4.000 to 20.000 DWT including supply
vessels, and design speeds between 9 and 20 knots.
r
9- Optimization Technique:
er
models. These methods take averages, select the row index of minimum reduction among all
combinations, append these indices to an array, and choose the most frequently repeated index as
the optimum waypoint. The latitude and longitude of this waypoint are then returned. The methods
pe
are categorized as follows:
Combination Methods:
1. Without_khokhlov: This method returns the average value between the Bowditch and
Artessen models.
ot
2. With_khokhlov: This method returns the average values between the following combinations
of models:
tn
Optimization Methods:
1. Optimize_without_khokhlov:
ep
o This method takes a data frame containing all wave data and calculates involuntary
speed reduction based on different combinations of mathematical models.
'Bowditch_Artessen').
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
o The index of the maximum reduced velocity value in each column is appended to an
ed
array, and the most repeated index is chosen.
o Using this index, all data for the optimum waypoint is extracted, including latitude,
longitude, bearing between this point and the previously chosen point, and distance
between this point and the previously chosen point.
iew
2. Optimize_with_khokhlov:
o This method takes a data frame containing all wave data and calculates involuntary
speed reduction based on different combinations of mathematical models.
ev
'Bowditch_Artessen', 'Bowditch_Khokhlov', 'Artessen_Khokhlov',
'Bowditch_Khokhlov_Artessen').
o The index of the maximum reduced velocity value in each column is appended to an
r
array, and the most repeated index is chosen.
o Using this index, all data for the optimum waypoint is extracted, including latitude,
er
longitude, bearing between this point and the previously chosen point, and distance
between this point and the previously chosen point.
o As mentioned, the OBC diameter is calculated as the product of distance per heading and
degree steps. It is crucial to ensure that the OBC diameter does not exceed the path distance.
If it does, the planner must adjust the values of distance per heading or degree steps.
tn
o Since OBCs have the same diameter, dividing the path distance by the OBC diameters will
result in residual distances on each path. The last OBC on each path is constructed with
rin
this residual distance as its diameter. It is necessary to check if the diameter of this last
OBC in each path is greater than the TBS radius, which is the product of the time resolution
of the downloaded data (according to the zone) and the maximum speed of the ship. If the
last OBC diameter is smaller than the TBS radius, adjustments must be made to the distance
ep
3. Positions Check:
o After calculating the latitudes and longitudes of the start and end of each OBC, it is
Pr
essential to verify the state of these positions to ensure the ship will pass through water and
not land. Selecting a position that lies on land is unreasonable.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
The outputs of this script include a report file showing all checks and a map that plots the OBCs. The
ed
planner must review the values in the report to ensure they are acceptable and check the map before deciding
to run the final script.
iew
2.2.5. Main2.py script
The third and final script to be executed begins with the main input: the OBCs array, which contains the
start and end coordinates of the OBCs. Data will be extracted from the downloaded wave files using the
TBS boundaries defined by the TBS array, which specifies the maximum and minimum latitudes and
ev
longitudes as bounding semicircles.
1. Bearing Calculations: Bearings between candidate positions and the last chosen waypoint will be
r
computed to satisfy divergence and convergence constraints.
2. Distance Calculations: Distances between candidate positions and the last chosen waypoint will
Based on the mathematical model selected by the planner (1: without_khokhlov; 2: with_khokhlov) taking
pe
into consideration the Khokhlov method constraints (service speed [9:20] knots; DWT [4000, 20000] tons),
different combinations of mathematical models will be evaluated. The optimization technique will follow
the chosen mathematical model. The optimal waypoint will be added to the waypoints array, and its distance
from the previous waypoint will be appended to the distances array. The heading from the previous point
will be calculated and added to the headings array. Given that service speed is constant, the time required
ot
to cover this distance will be computed and added to the time-corrected values (TCV) array. If the total
time in the TCV array exceeds the time resolution of the wave data, the time input used for data extraction
will be increased by the time resolution value. This process will repeat until all OBCs are processed and
tn
1. Simulation Metadata: Includes all input parameters essential for the simulation.
rin
2. Simulation Report: Contains waypoints with their headings, distances, and times, as well as total
sailing time and distance covered.
3. Waypoints Map: A plot showing the start point, end point, and optimized route.
ep
In summary, the following step-by-step procedures outline how to implement and run the TBS software.
The execution of this software is straightforward and does not require programming skills except for
running the Python scripts from the command line:
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Procedures:
ed
1. Log Main Inputs: The planner must enter the main simulation inputs in parameters.py, including
the directories where wave data will be downloaded and the outputs for phase 1 and phase 2.
2. Execute Get_Data_new.py: This script requires a user account with credentials on the Copernicus
iew
Marine Services website, as it will prompt for login information to download the data. After
downloading, the planner should comment out the code snippet responsible for downloading to
avoid redundant data retrieval in subsequent script executions.
3. Verify Data Download: Ensure that the wave files have been downloaded and are stored in the
specified directory.
ev
4. Execute main1.py: After running this script, the planner must review the report to confirm that all
three checks and the output plot are satisfactory. Make any necessary adjustments based on the
checks before proceeding to the next script.
r
5. Execute main2.py: This script performs the optimization and generates the optimal voyage path
on a map. It also produces reports containing metadata and a list of waypoints, along with the total
voyage distance and sailing time, which will be stored in the designated directories.
er
6. Save Output Plots: The planner should save the output plots from both phase 1 and 2.
Two initial trial scenarios are provided to demonstrate the TBS software's outputs, with all data for these
pe
scenarios stored in the “main_initial_trials” directory. Additionally, four cases are compared with
SIMROUTE software to validate the effectiveness of TBS and to identify any limitations and future work
recommendations. Data for these four test cases can be found in the “validation” directory. Results will be
detailed in the next section. A video will be available in the supplementary materials, showcasing the
execution of both TBS and SIMROUTE software for one of the validation cases.
ot
Upon executing the SIMROUTE software, the resultant outputs include Figure 4 and two (.txt) files
containing data on sailing distance, sailing duration, and the optimum path delineated by waypoints from
rin
starting point A to endpoint B. Figure 4 illustrates two suggested routes from SIMROUTE. The initial route
represents the minimum distance trajectory, determining the shortest path between two points along a great
circle, without accounting for optimizations related to weather conditions. Conversely, the optimized route
enhances the initial trajectory by incorporating weather factors, employing a cost function that encompasses
ep
various elements such as wave impact on navigation, speed reduction, and a minimum pathfinding
algorithm. Figure 4 illustrates a heat map depicting significant wave height in the examined region.
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
iew
r ev
er
Figure 4: SIMROUTE output simulation of weather routing between A and B
pe
Table 8 encapsulates the primary results of the simulation addressing the optimization challenge for
minimizing sailing time in relation to weather conditions. The optimum path between A and B took 7.53
hours, covering a greater distance than the minimal distance route; but it mitigates the effects of weather
conditions, resulting in a swifter arrival for the ship. Furthermore, the SIMROUTE Algorithm segmented
the route into 24 waypoints from A to B, indicating that 24 iterations are employed to arrive at the endpoint.
ot
Table 8: Sailing time and travel distance for both proposed routes
On the other hand, after applying the TBS method using Excel software, we found that 6 TBSs are produced
rin
with a total of 20 iterations to reach endpoint B. Table 9 outlines the results of TBS implementation. As we
can see below the total sailing time for the voyage between A and B is 5.4631 hours with 2.07 hours saving
time by applying the TBS algorithm. The overall distance covered is 86.605 nautical miles which is more
than the SIMROUTE algorithm by 19.425 nautical miles. However, it is recommended to choose longer
routes with minimized time of arrival and with minimum impact of weather to assure less fuel usage and
ep
greater safety considerations. Results illustrate the significance of TBS over SIMROUTE with A*
Algorithm in minimizing sailing time as a major target for this current problem. Sailing time is lowered by
27.5 % by applying TBS. In addition, a more exact model for calculating the consequences of weather
conditions is offered using continuous time-varying situations.
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Table 9: TBS Algorithm implementation results
ed
TBS Iterations Latitudes Distance
Longitudes TCV (hours)
(Nautical miles)
start 40.48330000 2.500000000 null null
1 40.39583206 2.500000715 5.25161541 0.32822596
TBS 1
iew
2 40.31250000 2.541667223 5.35419406 0.33463712
3 40.27083206 2.666667223 6.24736521 0.39046032
4 40.22916794 2.791667223 6.250506259 0.390656641
5 40.27083206 2.916667223 6.250506259 0.390656641
TBS 2
ev
7 40.3125 3.000000715 3.146430415 0.196651901
8 40.35416794 3.041667223 3.145710124 0.196606883
9 40.39583206 3.041667223 2.501532961 0.15634581
TBS 3
r
11 40.4375 3.125000715 1.90407162 0.119004476
12 40.52083206 3.125000715 5.003295276 0.312705955
13
14
40.5625
40.64583206 er
3.166667223
3.291667223
3.142136889
7.582899766
0.196383556
0.473931235
TBS 4
Despite the limitations of this simple implementation, the model of first stage was validated against (Grifoll
tn
et al., 2022) SIMROUTE software for a test case with the same inputs, showing a reduction in sailing time
of 27.25% by implementing the TBS algorithm.
TBS software is designed to be implemented in various zones with different areas and time resolutions. The
test cases presented in the results section cover multiple regions, including the Mediterranean Sea, Black
Sea, Baltic Sea, and North Atlantic. TBS offers control and monitoring features in an interactive way,
ep
allowing users to log parameters and verify their suitability for the simulation. If adjustments are needed,
the software provides alternative outputs for the same simulation. TBS serves as a decision-making platform
that users can fully control and monitor based on input parameters, rather than acting as a black box where
users input variables and receive outputs without transparency. Furthermore, for the same voyage (identical
Pr
start and destination) with the same parameters shared between TBS and SIMROUTE, TBS can produce
multiple acceptable outputs with varying sailing times and distances, unlike SIMROUTE software.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
3.2.1. Main initial trials
ed
These 2 cases demonstrate the outputs of TBS software through 2 voyages:
iew
Table 10: Alex_Almeria Simulation Metadata
ev
Endpoint coord. (36.8299675, -2.47345209)
[(31.25, 29.8800659), (35, 15), (37, 12), (38, 10), (36.4, 0), (36.8299675, -
Paths coordinate
2.47345209)]
ETD 2024-03-16T14:00:00
r
Wave data zone Mediterranean Sea
Time resolution Hourly
Distance per head. 9
Reduction factor
Gain factor
Degree steps
er 0.3
1.1
7
pe
OBC diameter 63
Math model used 1
Service speed 16
Max. speed 20
TBS radius 20
ot
LBP 250
DWT 56000
The following two maps represented in Figure 5 and Figure 6 are the outputs of Phase 1 and Phase 2.
tn
rin
ep
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Each red star in Figure 5 is the start and end of each path, within these paths, OBCs are drawn to optimize
ed
candidate waypoints inside it. In Figure 6 start point is the green star and the end point is the yellow star.
“TBS check report” and “Simulation report” will be provided in Appendix A and supplementary materials.
The main results of the simulation are provided in Table 11.
iew
Main results of Alex-Almeria simulation
Number of way points 169
Total Sailing time 1959.02 nautical miles
Total Voyage Distance 122.44 hours
r ev
er
pe
ot
tn
All data about this simulation is found in “main_initail_trials\sim_2”. Simulation metadata are listed in
Table 12.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Wave data zone Global
ed
Time resolution 3-hours
Distance per head. 10
Reduction factor 0.3
Gain factor 1.4
iew
Degree steps 10
OBC diameter 100
Math model used 1
Service speed 31
Max. speed 32
TBS radius 96
ev
LBP 85
DWT 11200
The OBCs map is shown in Figure 7 and the route map is shown in Figure 8, Main results are shown in
Table 13.
r
er
pe
ot
tn
rin
Number of waypoints 61
Total Sailing time 724.34 nautical miles
Total Voyage Distance 23.36 hours
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
iew
r ev
3.2.2. Validation test cases
er
Figure 8: Route map Bergen_Papey island
pe
The following 4 cases will show a comparison between TBS software and SIMROUTE software proposed
by (Grifoll et al., 2022).
All data regarding these simulations is found in “Validation\case_1”. Simulation metadata are listed in
Table 14. A video of this simulation execution will be provided in supplementary materials.
OBC diameter 75
Math model used 1
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Service speed 21
ed
Max. speed 25
TBS radius 25
LBP 120
DWT 23000
iew
Figure 9 represents a comparison between the outputs of TBS and SIMROUTE. In Table 15 main results
are provided for both software.
ev
Total Voyage Distance(nm) 332.4 320.12
Although more distance is covered by ship in TBS implementation (about 12 nautical miles), it reached the
r
destination in less time approximately (2 hours) with a reduction of 10.87 % in time. The color bar in the
SIMROUTE figure represents significant wave height, this scenario has been simulated in slightly heavy
weather (4-7) meters wave height.
er
pe
ot
tn
rin
ep
Figure 9: Casablanca-Lisbon route maps; TBS implementation (Left) and SIMROUTE implementation
Pr
(Right)
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
(Istanbul, Turkey) to (Sevastopol, Ukraine)
ed
All data regarding these simulations is found in “Validation\case_2”. Simulation metadata are listed in
Table 16.
iew
Simulation name TBS_Istanbul_Sevastopol
Paths number 1
Start point coord. (41.3, 29.1)
Endpoint coord. (44.6, 33.35)
Paths coordinate [(41.3, 29.1), (44.6, 33.35)]
ETD 2024-01-09T22:00:00
ev
Wave data zone Black Sea - Global
Time resolution 3-hours
Distance per head. 713
Reduction factor 0.3
r
Gain factor 1.05
Degree steps 7
OBC diameter
Math model used
Service speed
Max. speed
er 91
1
19
25
pe
TBS radius 75
LBP 150
DWT 60000
Figure 10 represents a comparison between the outputs of TBS and SIMROUTE. In Table 17 main results
are provided for both software.
ot
tn
rin
ep
Pr
Figure 10: Istanbul – Sevastopol route maps; TBS implementation (Left) and SIMROUTE
implementation (Right)
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
Table 17: Istanbul_Sevastopol main results
iew
Total Voyage Distance(nm) 287.24 268.15
Although more distance is covered by ship in TBS implementation (about 19 nautical miles), it reached the
destination in less time approximately (1 hour) with a reduction of 7.13 % in time. This scenario has been
simulated in moderate weather (2-3) meters wave height.
ev
All data regarding these simulations is found in “Validation\case_3”. Simulation metadata are listed in
Table 18.
r
Simulation name TBS_Gdynia_Stockholm
Paths number 2
Start point coord.
End point coord.
Paths coordinates
ETD
er (54.8, 18.5)
(58.9, 18)
[(54.8, 18.5), (57.5, 18), (58.9, 18)]
2024-02-11T08:00:00
pe
Wave data zone Baltic Sea
Time resolution Hourly
Distance per head. 7.5
Reduction factor 0.3
Gain factor 1.05
ot
Degree steps 7
OBC diameter 52.5
Math model used 1
tn
Service speed 17
Max. speed 22
TBS radius 22
LBP 180
rin
DWT 72000
Figure 11 represents a comparison between the outputs of TBS and SIMROUTE. In Table 19 main results
are provided for both software.
ep
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
iew
r ev
er
Figure 11: Gdynia – Stockholm route maps; TBS implementation (Left) and SIMROUTE implementation
pe
(Right)
Slight difference in sailing time and distance covered between these 2 implementations. About a 0.7%
difference in sailing time in favor of SIMROUTE. This scenario has been simulated in calm to moderate
weather (1-2.5) meters wave height.
ot
this implementation is the timing of the simulation, due to updates in the time formats and ranges made by
the Copernicus Marine Services. All data regarding these simulations is found in “Validation\case_4”.
Simulation metadata are listed in Table 20.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Gain factor 1.02
ed
Degree steps 10
OBC diameter 80
Math model used 2
Service speed 16
iew
Max. speed 20
TBS radius 20
LBP 80
DWT 20000
ev
Figure 12 represents a comparison between the outputs of TBS and SIMROUTE. In Table 21 main results
are provided for both software.
r
Criteria TBS SIMROUTE
Total Sailing Time (hrs) 3.53 4.67
Total Voyage Distance(nm) 56.5 55.28
er
In this simulation, distances covered by both Software are approximately the same (1 nm) difference, the
ship using TBS will reach its destination faster than SIMROUTE by (1.14) hours with a reduction value of
24.4%. This scenario has been simulated in slightly heavy weather (4-6) meters wave height.
pe
ot
tn
rin
Figure 12: Hypothetical case route maps; TBS implementation (Left) and SIMROUTE implementation
ep
(Right)
The results and comparisons between TBS and SIMROUTE indicate that TBS has an advantage in heavy
weather conditions, while in calm to moderate weather, both software performs similarly, with a slight
Pr
advantage for SIMROUTE. However, this claim requires further research for validation. Both software
could potentially be used together to maximize efficiency. Additionally, in all test case scenarios, TBS
covered greater total distances than SIMROUTE. This is because TBS maintains a constant ship speed with
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
variable power consumption to optimize sailing time, resulting in more distance covered in less time. This
ed
study primarily focuses on visualizing and demonstrating the sophisticated implementation of the TBS
algorithm to optimize total sailing time. Future work will consider optimizing power consumption relative
to sailing time and safety considerations.
TBS can generate various outputs by adjusting four key parameters: degree steps, distance per heading,
iew
reduction factor, and gain factor. By optimizing these parameters, different candidate waypoints can be
selected, leading to multiple optimized routes with varying sailing times and distances based on the input
values. Further work is required to establish guidelines for determining the optimal values for these four
parameters to achieve the best route for the voyage according to the optimization target, such as minimizing
sailing time, reducing power consumption, or enhancing safety considerations.
ev
The reduction and gain factors, which determine the range of acceptable distances for candidate waypoints,
introduce a complication in the simulation. After selecting candidate waypoints within the divergence or
convergence constraints, there is often a residual distance within each OBC that needs to be optimized to
allow for a wider range of values for these two parameters. From the results of this first version of the TBS
r
software, the ranges used in the test cases were 0.2 to 0.3 for the reduction factor and 1.02 to 1.4 for the
gain factor. These values yielded the optimal routes based on trials. By optimizing the residual distances
The significance of the proposed algorithm and its implementation in the TBS software lies in its versatility
pe
for application across different transportation domains, such as aviation and land transportation, by
providing a dynamic solution for path planning problems. This algorithm can be adapted and developed to
optimize routes for flights and land transportation. Additionally, it could play a crucial role in addressing
the Traveling Salesman Problem (TSP), classified as a non-deterministic polynomial-time problem (NP-
hard) in complexity theory (Johnson, 1990; Karp, 2010). The Clay Mathematics Institute has offered a $1
ot
million prize for solving the P vs. NP problem, one of the Millennium Prize Problems. Thus, the TBS
algorithm and software represent a significant contribution towards potentially solving this problem.
Researchers are encouraged to consider this algorithm's approach when tackling the P vs. NP problem.
tn
The first version of the TBS software has several limitations and constraints. As previously mentioned, the
residual distances in each OBC need to be addressed. Additionally, the OBCs currently have uniform
diameters and headings, a constraint that requires optimization. Thorough research is necessary to
determine if this uniformity is optimal or if varying diameters and headings would yield better results.
rin
Furthermore, all voyages must start at the top of each hour, a constraint that, while handled in the current
code, needs more trials to debug all edge cases. Another limitation is the reliance on a single data source,
CMEMS from Copernicus Marine Services. Future versions should address this by incorporating multiple
data sources.
ep
In this study, the TBS innovative approach is provided to bridge the gap in the prior academic achievements
Pr
regarding continuous time-varying weather conditions and their impact on the prediction of optimum
routes. The route is optimized by locating sites (lat., long.) where the meteorological circumstances have
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
the least impact in a variety of divergence–convergence restrictions. In the first stage, an involuntary speed
ed
reduction model is adopted (Bowditch) to predict these positions and offer an optimum path consisting of
points of least speed decrease which reflect the least wave influences on navigation. A test case involving
2 hypothetical positions in the Mediterranean Sea has been done to compare between TBS methodology
and the previously approved methodology which is SIMROUTE software with an A* Algorithm produced
iew
by (Grifoll et al., 2022). The results confirm the relevance of the TBS algorithm by lowering the sailing
time by 27.25 % from the SIMROUTE methodology for the same initial conditions.
In the second stage, TBS software was developed and implemented as an advanced version that executes
the TBS algorithm to optimize voyage routes for achieving the best sailing times. Two scenarios were
provided as initial trials to demonstrate the software's inputs and outputs, and four test case scenarios were
conducted to validate the implementation of TBS compared to SIMROUTE software. The following results
ev
were obtained from this research:
TBS software was developed using Python programming language along with several
accompanying libraries. It serves as a decision-making platform for optimizing ship voyage routes.
r
TBS software minimizes voyage sailing time by 7% to 25% in heavy weather scenarios when
compared to SIMROUTE software.
er
In cases where weather conditions are calm to moderate, both software are approximately the same
in their optimization output with a slight advantage for SIMROUTE.
pe
The TBS algorithm and its implementation represent a novel methodology and a new approach to
addressing the dynamic problem of path planning optimization.
The first version of the software has limitations, including residual OBC distance, uniform OBC diameter
and headings, ETD at the top of each hour, and reliance on a single data source for weather conditions.
Future recommendations include developing TBS 2.0 to address these limitations and introducing a
ot
graphical user interface, either as a console application or a web application, to make the software user-
friendly for those without prior programming skills. This tool can be used for academic purposes to teach
new officers how to optimize routes using the TBS algorithm in an interactive environment.
tn
Acknowledgment
We, the authors, confirm that no external funding was received for the conduct of this research. This work
is a product of our independent efforts and dedication.
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Declaration of Generative AI and AI-assisted technologies in the
ed
writing process
During the preparation of this work, the authors used ChatGPT in order to Proofread the
manuscript to improve its readability. After using this tool, the authors reviewed and edited the
iew
content as needed and took full responsibility for the content of the publication.
References
Adland, R. O., & Jia, H. (2016). Vessel speed analytics using satellite-based ship position data. IEEE
ev
International Conference on Industrial Engineering and Engineering Management, 2016-Decem,
1299–1303. https://doi.org/10.1109/IEEM.2016.7798088
Aertssen, G. (1975). THE EFFECT OF WEATHER ON TWO CLASSES OF CONTAINER SHIPS IN
r
THE NORTH ATLANTIC. Naval Architect. https://api.semanticscholar.org/CorpusID:107017084
Bialystocki, N., & Konovessis, D. (2016). On the estimation of ship’s fuel consumption and speed curve:
https://doi.org/10.1016/J.JOES.2016.02.001 er
A statistical approach. Journal of Ocean Engineering and Science, 1(2), 157–166.
Chris Veness. (2019). Calculate distance, bearing and more between Latitude/Longitude points.
pe
Https://Www.Movable-Type.Co.Uk/Scripts/Latlong.Html.
Dębski, R., & Dreżewski, R. (2024). Multi-Objective Ship Route Optimisation Using Estimation of
Distribution Algorithm. Applied Sciences, 14(13). https://doi.org/10.3390/app14135919
Gkerekos, C., & Lazakis, I. (2020). A novel, data-driven heuristic framework for vessel weather routing.
Ocean Engineering, 197. https://doi.org/10.1016/j.oceaneng.2019.106887
ot
Grifoll, M., Borén, C., & Castells-Sanabra, M. (2022). A comprehensive ship weather routing system
using CMEMS products and A* algorithm. Ocean Engineering, 255.
https://doi.org/10.1016/j.oceaneng.2022.111427
tn
Hagiwara, H., & Spaans, J. A. (1987). Practical Weather Routing of Sail-assisted Motor Vessels. Journal
of Navigation, 40(1), 96–119. https://doi.org/10.1017/S0373463300000333
Hinnenthal, J., & Clauss, G. (2010). Robust Pareto-optimum routing of ships utilising deterministic and
rin
Kim, S. W., Jang, H. K., Cha, Y. J., Yu, H. S., Lee, S. J., Yu, D. H., Lee, A. R., & Jin, E. J. (2020).
Development of a ship route decision-making algorithm based on a real number grid method.
Applied Ocean Research, 101. https://doi.org/10.1016/j.apor.2020.102230
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Li, X., Sun, B., Guo, C., Du, W., & Li, Y. (2020). Speed optimization of a container ship on a given route
ed
considering voluntary speed loss and emissions. Applied Ocean Research, 94, 101995.
https://doi.org/10.1016/J.APOR.2019.101995
Lubkovsky, V. (2009). Determination of wind-wave speed loss of vessels for mixed type navigation with
measurement of wave parameters by means of orthogonally-linear wave meters. Novosibirsk,
iew
Russia.
Ma, D., Ma, W., Jin, S., & Ma, X. (2020). Method for simultaneously optimizing ship route and speed
with emission control areas. Ocean Engineering, 202, 107170.
https://doi.org/10.1016/J.OCEANENG.2020.107170
Ma, D., Zhou, S., Han, Y., Ma, W., & Huang, H. (2024). Multi-objective ship weather routing method
ev
based on the improved NSGA-III algorithm. Journal of Industrial Information Integration, 38.
https://doi.org/10.1016/j.jii.2024.100570
Maisiuk, Y., & Gribkovskaia, I. (2014). Fleet sizing for offshore supply vessels with stochastic sailing
and service times. Procedia Computer Science, 31, 939–948.
r
https://doi.org/10.1016/j.procs.2014.05.346
Mannarini, G., Coppini, G., Oddo, P., & Pinardi, N. (2013). A Prototype of Ship Routing Decision
er
Support System for an Operational Oceanographic Service. TransNav, the International Journal on
Marine Navigation and Safety of Sea Transportation, 7(2). https://doi.org/10.12716/1001.07.01.06
Mannarini, G., Pinardi, N., Coppini, G., Oddo, P., & Iafrati, A. (2016). VISIR-I: Small vessels - Least-
pe
time nautical routes using wave forecasts. Geoscientific Model Development, 9(4).
https://doi.org/10.5194/gmd-9-1597-2016
Meng, Q., Du, Y., & Wang, Y. (2016). Shipping log data based container ship fuel efficiency modeling.
Transportation Research Part B: Methodological, 83, 207–229.
https://doi.org/10.1016/J.TRB.2015.11.007
ot
Padhy, C. P., Sen, D., & Bhaskaran, P. K. (2008). Application of wave model for weather routing of ships
in the North Indian Ocean. Natural Hazards, 44(3), 373–385. https://doi.org/10.1007/s11069-007-
9126-1
tn
Sen, D., & Padhy, C. P. (2015). An approach for development of a ship routing algorithm for application
in the North Indian Ocean region. Applied Ocean Research, 50, 173–191.
https://doi.org/10.1016/j.apor.2015.01.019
rin
Shao, W., Zhou, P., & Thong, S. K. (2012). Development of a novel forward dynamic programming
method for weather routing. Journal of Marine Science and Technology (Japan), 17(2), 239–251.
https://doi.org/10.1007/s00773-011-0152-z
Simonsen, M. H., Larsson, E., Mao, W., & Ringsberg, J. W. (2015). State-of-the-art within ship weather
ep
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Vettor, R., & Soares, C. G. (2016). Assessment of the Storm Avoidance Effect on the Wave Climate
ed
along the Main North Atlantic Routes. Journal of Navigation, 69(1), 127–144.
https://doi.org/10.1017/S037346331500048X
Walther, L., Rizvanolli, A., Wendebourg, M., & Jahn, C. (2016). Modeling and Optimization Algorithms
in Ship Weather Routing. International Journal of E-Navigation and Maritime Economy, 4.
iew
https://doi.org/10.1016/j.enavi.2016.06.004
Wang, H., Mao, W., & Eriksson, L. (2019). A Three-Dimensional Dijkstra’s algorithm for multi-
objective ship voyage optimization. Ocean Engineering, 186.
https://doi.org/10.1016/j.oceaneng.2019.106131
Wang, K., Li, J., Huang, L., Ma, R., Jiang, X., Yuan, Y., Mwero, N. A., Negenborn, R. R., Sun, P., &
ev
Yan, X. (2020). A novel method for joint optimization of the sailing route and speed considering
multiple environmental factors for more energy efficient shipping. Ocean Engineering, 216.
https://doi.org/10.1016/j.oceaneng.2020.107591
Wang, K., Xu, H., Li, J., Huang, L., Ma, R., Jiang, X., Yuan, Y., Mwero, N. A., Sun, P., Negenborn, R.
r
R., Negenborn, R. R., & Yan, X. (2021). A novel dynamical collaborative optimization method of
ship energy consumption based on a spatial and temporal distribution analysis of voyage data.
er
Applied Ocean Research, 112. https://doi.org/10.1016/j.apor.2021.102657
Wang, K., Yan, X., Yuan, Y., & Tang, D. (2018). Optimizing ship energy efficiency: Application of
particle swarm optimization algorithm. Proceedings of the Institution of Mechanical Engineers Part
pe
M: Journal of Engineering for the Maritime Environment, 232(4).
https://doi.org/10.1177/1475090216638879
Wei, Z., Zhao, L., Zhang, X., & Lv, W. (2022). Jointly optimizing ocean shipping routes and sailing
speed while considering involuntary and voluntary speed loss. Ocean Engineering, 245.
https://doi.org/10.1016/j.oceaneng.2021.110460
ot
Wen, M., Pacino, D., Kontovas, C. A., & Psaraftis, H. N. (2017). A multiple ship routing and speed
optimization problem under time, cost and environmental objectives. Transportation Research Part
D: Transport and Environment, 52, 303–321. https://doi.org/10.1016/J.TRD.2017.03.009
tn
Yan, X., Sun, X., & Yin, Q. (2014). Multiparameter sensitivity analysis of operational energy efficiency
for inland river ships based on backpropagation neural network method. Marine Technology Society
Journal, 49(1), 148–153. https://doi.org/10.4031/MTSJ.49.1.5
rin
Yang, L., Chen, G., Rytter, N. G. M., Zhao, J., & Yang, D. (2019). A genetic algorithm-based grey-box
model for ship fuel consumption prediction towards sustainable shipping. Annals of Operations
Research. https://doi.org/10.1007/s10479-019-03183-5
Zaccone, R., Figari, M., & Martelli, M. (2018). An optimization tool for ship route planning in real
ep
weather scenarios. Proceedings of the International Offshore and Polar Engineering Conference,
2018-June, 738–744.
Zhang, G., Wang, H., Zhao, W., Guan, Z., & Li, P. (2021). Application of Improved Multi-Objective Ant
Colony Optimization Algorithm in Ship Weather Routing. Journal of Ocean University of China,
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Zhao, W., Wang, H., Geng, J., Hu, W., Zhang, Z., & Zhang, G. (2022). Multi-Objective Weather Routing
ed
Algorithm for Ships Based on Hybrid Particle Swarm Optimization. Journal of Ocean University of
China, 21(1), 28–38. https://doi.org/10.1007/s11802-022-4709-8
iew
Appendix-A
TBS check report (output of phase 1) for TBS simulation of (Alex, Almeria) case
ev
PHASE I report: TBS_Alex_Almeria
=========================================================================
1st Check: OBC Diameter is greater than TBS radius && smaller than the distance between paths
r
coordinates
** number of checks equal number of paths
** All values must be "OBC Diameter is acceptable"
er
pe
path 1: OBC Diameter is acceptable
path 2: OBC Diameter is acceptable
path 3: OBC Diameter is acceptable
path 4: OBC Diameter is acceptable
ot
2nd Check: Check OBC Diameter (specially Last OBC in each path) is smaller than TBS radius
** number of checks equal number of OBCs
** All Values must be "Last OBC Diameter is acceptable"
rin
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
OBC number 7: OBC diameter 2nd Check is acceptable
ed
OBC number 8: OBC diameter 2nd Check is acceptable
OBC number 9: OBC diameter 2nd Check is acceptable
OBC number 10: OBC diameter 2nd Check is acceptable
iew
OBC number 11: OBC diameter 2nd Check is acceptable
OBC number 12: OBC diameter 2nd Check is acceptable
OBC number 13: OBC diameter 2nd Check is acceptable
OBC number 14: OBC diameter 2nd Check is acceptable
ev
OBC number 15: OBC diameter 2nd Check is acceptable
OBC number 16: OBC diameter 2nd Check is acceptable
r
OBC number 17: OBC diameter 2nd Check is acceptable
OBC number 18: OBC diameter 2nd Check is acceptable
OBC number 19: OBC diameter 2nd Check is acceptable
OBC number 20: OBC diameter 2nd Check is acceptable
er
pe
OBC number 21: OBC diameter 2nd Check is acceptable
OBC number 22: OBC diameter 2nd Check is acceptable
OBC number 23: OBC diameter 2nd Check is acceptable
OBC number 24: OBC diameter 2nd Check is acceptable
ot
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
31.983 27.571 ['is_water']
ed
32.349 26.409 ['is_water']
32.715 25.243 ['is_water']
33.081 24.072 ['is_water']
iew
33.448 22.896 ['is_water']
33.814 21.715 ['is_water']
34.179 20.528 ['is_water']
34.545 19.337 ['is_water']
ev
34.911 18.140 ['is_water']
35.277 16.938 ['is_water']
r
35.642 15.731 ['is_water']
35.000 15.000 ['is_water']
35.676
36.351
14.016
13.023
['is_water']
['is_water']
er
pe
37.000 12.000 ['is_water']
37.564 10.888 ['is_water']
38.000 10.000 ['is_water']
37.841 8.685 ['is_water']
ot
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
ed
TBS simulation report (waypoints) for TBS simulation of (Alex, Almeria) case
iew
PHASE II Simulation Report: TBS_Alex_Almeria
=========================================================================
ev
(Lat1,Long1) (Lat2,Long2) heading distance time
r
31.250, 29.880 31.396, 29.875 358.302 8.760 0.547
31.396, 29.875 31.521, 29.792 330.396 8.634 0.540
31.521, 29.792
31.646, 29.667
31.646, 29.667
31.646, 29.542
319.606
270.033
er 9.859
6.389
0.616
0.399
pe
31.646, 29.542 31.729, 29.417 308.110 8.113 0.507
31.729, 29.417 31.616, 28.728 259.299 35.848 2.241
31.616, 28.728 31.646, 28.542 280.559 9.674 0.605
31.646, 28.542 31.688, 28.375 286.413 8.877 0.555
ot
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
32.604, 26.292 32.646, 26.250 319.905 3.271 0.204
ed
32.646, 26.250 32.688, 26.208 319.920 3.270 0.204
32.688, 26.208 32.729, 26.125 300.743 4.897 0.306
32.729, 26.125 32.715, 25.243 269.170 44.565 2.785
iew
32.715, 25.243 32.854, 25.208 348.191 8.517 0.532
32.854, 25.208 32.979, 25.167 344.379 7.793 0.487
32.979, 25.167 33.104, 25.083 330.824 8.598 0.537
33.104, 25.083 33.229, 24.958 320.102 9.787 0.612
ev
33.229, 24.958 33.271, 24.875 300.896 4.875 0.305
33.271, 24.875 33.081, 24.072 254.490 41.938 2.621
r
33.081, 24.072 33.146, 23.917 296.405 8.703 0.544
33.146, 23.917 33.271, 23.792 320.116 9.786 0.612
33.271, 23.792
33.396, 23.667
33.396, 23.667
33.521, 23.542
320.156
320.197
er 9.780
9.774
0.611
0.611
pe
33.521, 23.542 33.604, 23.375 301.012 9.724 0.608
33.604, 23.375 33.448, 22.896 248.728 25.770 1.611
33.448, 22.896 33.604, 22.875 353.734 9.461 0.591
33.604, 22.875 33.729, 22.833 344.506 7.789 0.487
ot
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
34.438, 20.375 34.562, 20.292 331.238 8.563 0.535
ed
34.562, 20.292 34.562, 20.125 270.047 8.241 0.515
34.562, 20.125 34.646, 20.000 309.041 7.949 0.497
34.646, 20.000 34.545, 19.337 259.747 33.320 2.083
iew
34.545, 19.337 34.562, 19.250 283.555 4.425 0.277
34.562, 19.250 34.688, 19.208 344.673 7.782 0.486
34.688, 19.208 34.771, 19.167 337.673 5.409 0.338
34.771, 19.167 34.771, 19.083 270.024 4.110 0.257
ev
34.771, 19.083 34.854, 18.958 309.113 7.937 0.496
34.854, 18.958 34.911, 18.140 275.076 40.433 2.527
r
34.911, 18.140 35.062, 18.125 355.263 9.127 0.570
35.062, 18.125 35.146, 17.958 301.479 9.594 0.600
35.146, 17.958
35.229, 17.917
35.229, 17.917
35.354, 17.792
337.786
320.814
er 5.405
9.688
0.338
0.605
pe
35.354, 17.792 35.396, 17.625 287.093 8.534 0.533
35.396, 17.625 35.277, 16.938 258.191 34.387 2.149
35.277, 16.938 35.438, 16.917 353.747 9.714 0.607
35.438, 16.917 35.521, 16.750 301.598 9.562 0.598
ot
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
35.229, 14.750 35.354, 14.750 0.000 7.505 0.469
ed
35.354, 14.750 35.479, 14.625 320.858 9.682 0.605
35.479, 14.625 35.604, 14.500 320.901 9.676 0.605
35.604, 14.500 35.676, 14.016 280.431 24.012 1.501
iew
35.676, 14.016 35.729, 13.833 289.927 9.460 0.591
35.729, 13.833 35.854, 13.792 344.882 7.775 0.486
35.854, 13.792 35.938, 13.625 301.732 9.526 0.595
35.938, 13.625 35.979, 13.583 321.025 3.219 0.201
ev
35.979, 13.583 36.021, 13.542 321.038 3.218 0.201
36.021, 13.542 36.351, 13.023 308.432 32.010 2.001
r
36.351, 13.023 36.479, 13.000 351.737 7.769 0.486
36.479, 13.000 36.521, 12.917 301.905 4.736 0.296
36.521, 12.917
36.604, 12.750
36.604, 12.750
36.646, 12.583
301.953
287.351
er 9.468
8.412
0.592
0.526
pe
36.646, 12.583 36.688, 12.542 321.280 3.207 0.200
36.688, 12.542 37.000, 12.000 305.950 32.084 2.005
37.000, 12.000 37.021, 11.833 278.946 8.088 0.505
37.021, 11.833 37.021, 11.667 270.050 7.990 0.499
ot
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
38.021, 9.792 37.979, 9.625 252.450 8.273 0.517
ed
37.979, 9.625 37.938, 9.542 237.644 4.671 0.292
37.938, 9.542 37.896, 9.417 247.132 6.428 0.402
37.896, 9.417 37.841, 8.685 264.818 34.825 2.177
iew
37.841, 8.685 37.979, 8.583 329.818 9.587 0.599
37.979, 8.583 38.062, 8.500 321.795 6.369 0.398
38.062, 8.500 38.062, 8.292 270.064 9.848 0.616
38.062, 8.292 37.979, 8.167 229.799 7.745 0.484
ev
37.979, 8.167 37.938, 8.042 247.121 6.425 0.402
37.938, 8.042 37.682, 7.373 244.424 35.215 2.201
r
37.682, 7.373 37.688, 7.250 273.033 5.861 0.366
37.688, 7.250 37.729, 7.083 287.588 8.303 0.519
37.729, 7.083
37.688, 6.958
37.688, 6.958
37.688, 6.875
247.190
270.025
er 6.443
3.959
0.403
0.247
pe
37.688, 6.875 37.688, 6.792 270.025 3.959 0.247
37.688, 6.792 37.524, 6.064 254.357 35.984 2.249
37.524, 6.064 37.562, 5.875 284.589 9.294 0.581
37.562, 5.875 37.562, 5.792 270.025 3.966 0.248
ot
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
36.938, 3.250 36.979, 3.167 302.061 4.716 0.295
ed
36.979, 3.167 36.896, 3.042 230.206 7.812 0.488
36.896, 3.042 36.854, 2.917 247.418 6.504 0.406
36.854, 2.917 37.048, 2.153 287.822 38.443 2.403
iew
37.048, 2.153 37.146, 2.000 308.865 9.400 0.587
37.146, 2.000 37.188, 1.833 287.469 8.357 0.522
37.188, 1.833 37.062, 1.708 218.604 9.599 0.600
37.062, 1.708 37.104, 1.542 287.451 8.366 0.523
ev
37.104, 1.542 37.062, 1.375 252.650 8.366 0.523
37.062, 1.375 36.889, 0.855 247.515 27.041 1.690
r
36.889, 0.855 36.812, 0.708 236.851 8.403 0.525
36.812, 0.708 36.688, 0.667 194.966 7.768 0.486
36.688, 0.667
36.646, 0.542
36.646, 0.542
36.521, 0.417
247.471
218.801
er 6.519
9.625
0.407
0.602
pe
36.521, 0.417 36.396, 0.292 218.847 9.631 0.602
36.396, 0.292 36.400, 0.000 271.104 14.098 0.881
36.400, 0.000 36.438, -0.042 318.212 3.020 0.189
36.438, -0.042 36.479, -0.208 287.317 8.428 0.527
ot
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641
Total Voyage Distance: 1959.027680742692
ed
Total Sailing Time: 122.43923004641825
--------------------End of Report----------------------
iew
r ev
er
pe
ot
tn
rin
ep
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=5066641