Outlier detection in nautical and engine data on ships

Type of work: Master's thesis

Technical background:

Ships today have a large number of nautical devices that are connected to each other via field buses. The same applies to engine control systems. The data can be permanently analyzed.

The Limanda is a research vessel of the University of Rostock. It is a 15.73m long catamaran, 6.16m wide and has a draught of 1.30m. It was built in 2020 and christened on July 28, 2021. It is powered by two MAN D2676LE438 diesel engines, each with an output of 373kW. The nautical instruments include a radar, a Furuno GP-170 GPS receiver, an LCJ CV3F wind sensor, a Furuno SC-70 satellite compass, magnetic compass, an AIS transmitter with its own Furuno FA-170 AIS GPS receiver, Xsonic Airmar SS260 echo sounder and Navitron NT888G autopilot. The nautical devices are networked with each other via NMEA 0183 or NMEA 2000. J1939 was predominantly used in the engine area.

The nautical devices and the engine control unit send data with different update rates. These range from approx. 0.1 to approx. 10 samples per second for NMEA 2000 and from 0.5 to approx. 50 samples per second for the engine data. Specifically, we have data from over 100 data points with different temporal resolutions in a database or live on the ship.

There are a number of obvious and certainly some less obvious correlations between the measured values. One example is the fuel injection quantity on the engine and the wind speed on the anemometer.

Task description:

As part of the work, a method for outlier detection in the available data is to be developed and tested.

The following questions are to be answered:

  • What causal dependencies, correlations or spurious correlations exist?
  • How can outliers (deviations from the normal) be detected? What methods are available for this?
  • How well does recognition work with individual methods?
  • What is the complexity of the methods used? Can the complexity be reduced?

Possible work steps:

  • Exploration of the data
  • Basic understanding of the nautical parameters and the parameters of the main engine.
  • Graphical representation of some data
  • Familiarization with data analysis methods and tools
  • Search for correlations in the data
  • Evaluation and presentation
  • The exact topic is determined in consultation with the supervisors, taking into account any topics already assigned to other students. It may be possible for several students to work together on different sub-topics. 

Literature and resources:

  • Idris, Ivan. Python data analysis. Packt Publishing Ltd, 2014.
  • Luft, Lee A., Larry Anderson, and Frank Cassidy. "Nmea 2000 a digital interface for the 21st century." Proceedings of the 2002 National Technical Meeting of The Institute of Navigation. 2002.
  • Burakova, Yelizaveta, et al. "Truck hacking: An experimental analysis of the SAE J1939 standard." 10th USENIX Workshop on Offensive Technologies (WOOT 16). 2016.
  • McKinney, Wes. Python for data analysis: Data wrangling with Pandas, NumPy, and IPython. " O'Reilly Media, Inc.", 2012.

Supervisor: Dr. Thomas Mundt (thomas.mundt@uni-rostock.de) 

Prerequisites: None in particular, programming knowledge in a higher programming language is an advantage. A basic understanding of the electrical properties of networks is helpful.