AI-Powered Vessel Routing

Distance, route, and estimated time of arrival are useful starting points for commercial operations within the maritime domain. First-of-its-kind AI-powered routing APIs are discussed below.

Jordan Taylor
Shipping Intel
3 min readJun 4, 2024

--

Introduction

A route that a vessel follows impacts voyage revenue. For example, the longer a vessel travels from point A to point B the bunker, crewing, and technical cost increases. If the revenue vis. freight intake is not enough, the vessel may search for employment elsewhere.

When supply chain transparency is discussed, it cannot be discussed without a basic understanding of revenue and the terms around the source of revenue. To first calculate revenue, the vessel’s anticipated voyage must be known.

An AI-powered routing API is forwarded for consideration below. The API uses GPT to search for ports and coordinates from an IMO-sourced port list, and then uses the EU’s MARNET to unpack an optimal route. The former enables API parameters to contain spelling errors, alternate port names, or aliases, while the latter preserves a grounded-truth-source. This type of augmented effort is, in the author’s opinion, representative of the future of AI within the maritime domain.

Method

Distance API

Summary: The distance API calculates the total distance in nautical miles from one port to another port.

Endpoint: /api/calculate_distance

Method: POST

Calculates the distance in nautical miles between two ports.

Parameters:

  • port1 (string, required): The name of the first port.
  • port2 (string, required): The name of the second port.

Request Example:

curl -X POST https://www.shippingintel.com/api/calculate_distance -d "port1=New York" -d "port2=Los Angeles"

Success Response:

{
"distance": 2465,
"units": "nautical miles",
"port1": "New York",
"port2": "Los Angeles"
}

Notes:

  • The distance is provided in nautical miles.

Route API

Summary: The route API calculates the waypoints from one port to another port.

Endpoint: /api/calculate_route

Method: POST

Calculates the route between two ports.

Parameters:

  • port1 (string, required): The name of the first port.
  • port2 (string, required): The name of the second port.

Request Example:

curl -X POST https://www.shippingintel.com/api/calculate_route -d "port1=New York" -d "port2=Los Angeles"

Success Response:

{
"route": [...],
"port1": "New York",
"port2": "Los Angeles"
}

ETA API

Summary: The ETA API calculates the total hours from one port to another port provided speed in knots is provided as an entering argument.

Endpoint: /api/eta

Method: POST

Calculates the Estimated Time of Arrival (ETA) between two ports given a speed.

Parameters:

  • port1 (string, required): The name of the first port.
  • port2 (string, required): The name of the second port.
  • speed (float, required): The speed of the vessel in knots.

Request Example:

curl -X POST https://www.shippingintel.com/api/eta -d "port1=New York" -d "port2=Los Angeles" -d "speed=12"

Success Response:

{
"hours": 205.42,
"port1": "New York",
"port2": "Los Angeles"
}

Conclusion

The APIs above are free-to-use until my token count becomes unmanageable. For a more stable connection feel free to reach me directly via LinkedIn.

Full API documentation can be found at ShippingIntel.

References

Eurostat. (n.d.). European Commission. Retrieved August 15, 2023, from https://ec.europa.eu/eurostat

Distance Between Ports. (2023). National Geospacial Agency. Retrieved August 15, 2023, from https://msi.nga.mil/Publications/DBP

Gaffuri, J. (2021). Eurostat/Searoute: Compute shortest maritime routes between ports. GitHub. Retrieved August 20, 2023, from https://github.com/eurostat/searoute

Halili, G. (2022). Searoute. Retrieved August 15, 2023, from https://pypi.org/project/searoute/

ShippingIntel (2024). Software Development Tookit. Retrieved June 4th, 2024, from https://www.shippingintel.com/sdk

--

--

Jordan Taylor
Shipping Intel

Merchant marine officer with a B.S. in Marine Transportation and a M.S. in Transportation Management.