# US 11,334,794 B2 · Artificial-intelligence-based waterway information system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,334,794 B2
- Document ID: US11334794B2
- Status: Granted
- Kind: B2
- Application number: 17/190,254
- Filed: 2021-03-02
- Published: 2021-10-28
- Granted: 2022-05-17
- Earliest claimed: 2020-04-28
- Assignees: Trabus
- Applicants: Trabus Technologies
- Inventors: Joseph Celano; David Sathiaraj; Eric Ho; Andrew Nolan Smith; Eric Vincent Rohli
- Web page: https://patentgrep.com/patent/US11334794B2

## CPC

- G06N 3/08: Learning methods
- B63B 79/40: for controlling the operation of vessels, e.g. monitoring their speed, routing or maintenance schedules
- G01C 21/203: {specially adapted for water-borne vessels}
- G06N 3/04: Architecture, e.g. interconnection topology
- G06N 3/045: Combinations of networks
- G06N 3/0464: Convolutional networks [CNN, ConvNet]
- G06N 3/09: Supervised learning
- G06Q 10/047: Optimisation of routes or paths, e.g. travelling salesman problem
- G08G 3/00: Traffic control systems for marine craft (marking of navigational route B63B22/16, B63B51/00)
- B63B 2213/00: Navigational aids and use thereof, not otherwise provided for in this class
- G06N 20/20: Ensemble learning
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- B63B: SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING (arrangements of vessel ventilation, heating, cooling, or air-conditioning B63J2/00; floating substructures as supports of dredgers or soil-shifting machines E02F9/06)
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G08G: TRAFFIC CONTROL SYSTEMS (guiding railway traffic, ensuring the safety of railway traffic B61L; arrangement of road signs or traffic signals E01F9/00; radar or analogous systems, sonar systems, lidar systems specially adapted for traffic control G01S13/91, G01S15/88, G01S17/88; {radar or analogous systems, sonar systems, lidar systems specially adapted for anti-collision purposes G01S13/93, G01S15/93, G01S17/93})

## Abstract

Artificial-intelligence-based river information system. In an embodiment, a first training dataset is used to train a travel time prediction model to predict a travel time along the waterway for a given trip. In addition, a second training dataset is used to train a river level prediction model to predict a river level along the waterway for a given time. For each of a plurality of trips, a request is received that specifies the trip and a time of the trip, and, in response to the request, the travel time prediction model is used to predict a travel time for the trip, and the river level prediction model is used to predict a river level of the waterway at one or more points along the trip. Then, a voyage plan is generated based on one or both of the predicted travel time and the predicted river level.

## Claims

### Claim 1

A method comprising using at least one hardware processor to:
use a first training dataset, comprising positional and non-positional data representing trips with known travel times along a waterway, to train a travel time prediction model to predict a travel time along the waterway for a given trip on the waterway;
use a second training dataset, comprising weather data and river level data, to train a river level prediction model to predict a river level along the waterway for a given time; and,
for each of a plurality of trips by maritime vessels along the waterway,
receive a request that specifies the trip and a time of the trip from a user via a graphical user interface, and,
in response to the request,
use the travel time prediction model to predict the travel time for the trip,
use the river level prediction model to predict the river level of the waterway at one or more points along the trip,
generate a voyage plan based on one or both of the predicted travel time and the predicted river level, and
display the voyage plan on a virtual map within the graphical user interface.

### Claim 2 (depends on 1)

The method of claim 1, wherein the travel time prediction model comprises a gradient boosting model.

### Claim 3 (depends on 2)

The method of claim 2, wherein the gradient boosting model comprises an XGBoost model.

### Claim 4 (depends on 3)

The method of claim 3, wherein training the XGBoost model comprises optimizing parameters of the XGBoost model using a random search.

### Claim 5 (depends on 1)

The method of claim 1, further comprising generating the first training dataset, wherein generating the first training dataset comprises correlating positional data, indexed by first identifiers of vessels, with non-positional data, indexed by second identifiers of vessels, wherein the positional data comprises, for each of a plurality of vessels, information representing trips that the vessel completed along the waterway, and wherein the non-positional data comprises, for each of the plurality of vessels, one or more attributes of the vessel.

### Claim 6 (depends on 5)

The method of claim 5, wherein the one or more attributes of the vessel comprise at least one physical dimension of the vessel.

### Claim 7 (depends on 5)

The method of claim 5, wherein the positional data comprises Automatic Identification System (AIS) data comprising a plurality of AIS messages, and wherein generating the first training dataset further comprises creating a plurality of training trips from the correlated positional data and non-positional data by, for each of the plurality of vessels, bundling a subset of the plurality of AIS messages, in which the vessel is identified, together into one or more trips, based on one or more criteria.

### Claim 8 (depends on 7)

The method of claim 7, wherein the one or more criteria comprise:
each subset must comprise a plurality of AIS messages;
an AIS message is not added to a non-empty subset unless either
a time interval between the AIS messages and an AIS message in the subset is less than or equal to a first predefined threshold, or
the time interval is less than a second predefined threshold, which is greater than the first predefined threshold, and the vessel traveled at least a predefined speed during the time interval; and
a training trip ends whenever either
a speed of the vessel becomes zero,
a direction of the vessel changes between upstream and downstream, or
the vessel stops at a lock.

### Claim 9 (depends on 1)

The method of claim 1, wherein the river level prediction model comprises a convolutional neural network.

### Claim 10 (depends on 1)

The method of claim 1, further comprising generating the second training dataset, wherein generating the second training dataset comprises, for each of a plurality of time intervals and for each of a plurality of measurement stations that acquired river level data:
correlating the river level data, acquired by the measurement station during the time interval, with weather data, acquired by another measurement station, which is associated with the measurement station based on a distance between the measurement station and the other measurement station, during the time interval; and
adding a data structure, comprising the correlated river level data and weather data for the time interval, to the second training dataset.

### Claim 11 (depends on 10)

The method of claim 10, wherein the measurement station comprises a sensor site along a river, and wherein the other measurement station comprises a sensor site at an airport.

### Claim 12 (depends on 1)

The method of claim 1, further comprising using the at least one hardware processor to, for each of the plurality of trips, in response to the request, use vessel data for a vessel and the predicted river level to predict an under-keel clearance for the vessel at the one or more points along the trip, wherein the voyage plan is further based on the predicted under-keel clearance.

### Claim 13 (depends on 1)

The method of claim 1, further comprising using the at least one hardware processor to, for each of the plurality of trips, in response to the request, when a bridge exists over the waterway along the trip, use the non-positional data, the predicted river level, and bridge height data to predict a bridge clearance for the bridge, wherein the voyage plan is further based on the predicted bridge clearance.

### Claim 14 (depends on 1)

The method of claim 1, wherein the voyage plan is further based on one or more of reference data regarding the waterway, notices to skippers, or lock data.

### Claim 15 (depends on 1)

The method of claim 1, further comprising using the at least one hardware processor to:
generate a graphical user interface that represents the voyage plan, wherein the graphical user interface comprises
a virtual map comprising a view of a geographical map,
a traffic indicator overlaid on a representation of the waterway, wherein the traffic indicator indicates predicted traffic levels at a plurality of positions along a route of the trip, and
one or more selectable markers along the route of the trip; and
in response to a user selection of one of the one or more selectable markers, overlay information about a feature represented by the selected marker in the graphical user interface.

### Claim 16 (depends on 1)

The method of claim 1, further comprising using the at least one hardware processor to:
use a third training dataset, comprising representations of calamity incidents correlated with waterway conditions, to train a calamity prediction model to predict a calamity along the waterway;
apply the calamity prediction model to real-time data, comprising waterway conditions, to predict a likelihood of one or more calamities along the waterway; and
alert at least one recipient if the predicted likelihood exceeds a threshold.

### Claim 17 (depends on 1)

The method of claim 1, further comprising using the at least one hardware processor to, for each of the plurality of trips, calculate a recommended cargo load for the trip based on the predicted river level of the waterway at the one or more points along the trip.

### Claim 18 (depends on 1)

The method of claim 1, further comprising, for each of the plurality of trips, updating the voyage plan in real time based on real-time predictions of the travel time for the trip by the travel time prediction model.

### Claim 19

A system comprising:
at least one hardware processor; and
one or more software modules that are configured to, when executed by the at least one hardware processor,
use a first training dataset, comprising positional and non-positional data representing trips with known travel times along a waterway, to train a travel time prediction model to predict a travel time along the waterway for a given trip on the waterway,
use a second training dataset, comprising weather data and river level data, to train a river level prediction model to predict a river level along the waterway for a given time, and,
for each of a plurality of trips by maritime vessels along the waterway,
receive a request that specifies the trip and a time of the trip from a user via a graphical user interface, and,
in response to the request,
use the travel time prediction model to predict the travel time for the trip,
use the river level prediction model to predict the river level of the waterway at one or more points along the trip,
generate a voyage plan based on one or both of the predicted travel time and the predicted river level, and
display the voyage plan on a virtual map within the graphical user interface.

### Claim 20

A non-transitory computer-readable medium having instructions stored therein, wherein the instructions, when executed by a processor, cause the processor to:
use a first training dataset, comprising positional and non-positional data representing trips with known travel times along a waterway, to train a travel time prediction model to predict a travel time along the waterway for a given trip on the waterway;
use a second training dataset, comprising weather data and river level data, to train a river level prediction model to predict a river level along the waterway for a given time; and,
for each of a plurality of trips by maritime vessels along the waterway,
receive a request that specifies the trip and a time of the trip from a user via a graphical user interface, and,
in response to the request,
use the travel time prediction model to predict the travel time for the trip,
use the river level prediction model to predict the river level of the waterway at one or more points along the trip,
generate a voyage plan based on one or both of the predicted travel time and the predicted river level, and
display the voyage plan on a virtual map within the graphical user interface.
