Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
APPARATUS AND COMPUTER IMPLEMENTED METHOD FOR DETECTING ANOMALY IN MARINE VESSEL DATA SYSTEM USING SENSOR DATA AND OPERATIONAL DATA
Document Type and Number:
WIPO Patent Application WO/2020/253935
Kind Code:
A1
Abstract:
A computer implemented method and apparatus for detecting an anomaly in a marine vessel data system, the method comprising: determining historical data based on sensor data of the marine vessel data system; providing the historical data as input to a neural network; generating predicted sensor data as output by the neural network; combining the predicted sensor data with actual data to provide error data, wherein the actual data is determined from the sensor data; receiving engine operational data; determining level of data deviation based on the engine operational data; and detecting the anomaly based on the error data and the level of data deviation.

Inventors:
VAN MIERT RONALD (NL)
KOP JOHN (NL)
VELTHUIS FRANK (NL)
UUSITALO JAAKKO (NL)
Application Number:
PCT/EP2019/065861
Publication Date:
December 24, 2020
Filing Date:
June 17, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
WAERTSILAE NETHERLANDS B V (NL)
International Classes:
G05B23/02; B63B79/30; G06N3/08
Foreign References:
US5402521A1995-03-28
Attorney, Agent or Firm:
BOCO IP OY AB (FI)
Download PDF:
Claims:
Claims:

1. A computer implemented method for detecting an anomaly in a marine vessel data system, the method comprising:

determining historical data based on sensor data of the marine vessel data system;

providing the historical data as input to a neural network;

generating predicted sensor data as output by the neural network;

combining the predicted sensor data with actual data to provide error data, wherein the actual data is determined from the sensor data;

receiving engine operational data;

determining level of data deviation based on the engine operational data; and detecting the anomaly based on the error data and the level of data deviation.

2. The method of claim 1 , further comprising:

generating an anomaly detection model using the historical data and the error data.

3. The method of claim 2, wherein the anomaly detection model is arranged at a remote server apparatus.

4. The method of any claim 1 to 3, wherein a plurality of sensors are operationally arranged to an engine system of the marine vessel.

5. The method of any claim 1 to 4, wherein generating the predicted sensor data comprises reconstructing data of at least one sensor, by the neural network, based on the sensor data.

6. The method of any claim 1 to 5, wherein generating the predicted sensor data comprises determining correlation, by the neural network, between data from a plurality of sensors.

7. The method of claim 6, further comprising: determining correlation, by the neural network, for a subset of the plurality of sensors among the historical data.

8. The method of claim 7, wherein the subset of the plurality of sensors comprises at least one sensor and the historical data comprises data from the plurality of sensors.

9. The method of claim 7 or 8, wherein the neural network is trained by means of signals from the individual sensors for determining internal neural network parameters.

10. The method of any claim 1 to 9, wherein the neural network is used for determination of the anomaly based on the error data.

11. The method of any claim 1 to 10, wherein the neural network is configured to simulate the predicted sensor data correlating with the history data, and the neural network is adjusted to the sensor data by means of a training function.

12. The method of claim 11 , wherein the training function comprises at least one of the following:

- Gradient descent function;

- Newton's method function;

- Conjugate gradient function;

- Quasi-Newton method function; and

- Levenberg-Marquardt function.

13. The method of any claim 1 to 12, wherein the level of data deviation comprises an error threshold value, and the method further comprises:

normalizing error values of the error data;

detecting the anomaly in response to a normalized error value of the error data exceeding the error threshold value.

14. The method of claim 13, wherein error values of the error data are normalized, and the method further comprises: comparing an amplitude of an error value with the error threshold value and detecting the anomaly in response to the amplitude of the error value being greater than the error threshold value.

15. The method of claim 13 or 14, wherein the level of data deviation comprises a plurality of error threshold values associated with at least one of the following: a sensor generating the sensor data; and

engine operational status determined based on the engine operational data.

16. The method of any claim 1 to 12, further comprising:

determining engine operational status information based on the engine operational data; and

determining the level of data deviation associated to an engine operational status using the engine operational status information.

17. The method of claim 16, wherein determining the level of data deviation comprises configuration of the error data according to a standard deviation function.

18. The method of claim 16 or 17, further comprising:

defining a first mean error value for a first engine operational status and a second mean error value for a second engine operational status, wherein the first and second mean error values are different; and

detecting the anomaly in the first engine operation status using the first mean error value and in the second engine operation status using the second mean error value.

19. The method of claim 18, wherein the anomaly in the first engine operation status is detected using at least one of the following criteria:

- two standard deviations from the first mean error value;

- three standard deviations from the first mean error value; and

- four standard deviations from the first mean error value.

20. The method of claim 18 or 19, wherein the anomaly in the second engine operation status is detected using at least one of the following criteria:

- two standard deviations from the second mean error value;

- three standard deviations from the second mean error value; and

- four standard deviations from the second mean error value.

21. The method of any claim 16 to 20, wherein the level of data deviation associated to the engine operational status is configured to define a histogram of error range values.

22. The method of any claim 1 to 21 , wherein the engine operational data comprises at least one of the following:

engine status information indicating engine on/off status;

used fuel information of the engine;

operating hours information;

running hours information since last service; and

number of engine starts.

23. A server apparatus for detecting an anomaly in a marine vessel data system, comprising:

a communication interface;

at least one processor; and

at least one memory including computer program code;

the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to:

determine historical data based on sensor data of the marine vessel data system;

provide the historical data as input to a neural network;

generate predicted sensor data as output by the neural network;

combine the predicted sensor data with actual data to provide error data, wherein the actual data is determined from the sensor data;

receive engine operational data;

determine level of data deviation based on the engine operational data; and detect the anomaly based on the error data and the level of data deviation.

24. A computer program embodied on a computer readable medium comprising computer executable program code, which code, when executed by at least one processor of an apparatus, causes the apparatus to:

determine historical data based on sensor data of the marine vessel data system;

provide the historical data as input to a neural network;

generate predicted sensor data as output by the neural network;

combine the predicted sensor data with actual data to provide error data, wherein the actual data is determined from the sensor data;

receive engine operational data;

determine level of data deviation based on the engine operational data; and detect the anomaly based on the error data and the level of data deviation.

Description:
APPARATUS AND COMPUTER IMPLEMENTED METHOD FOR DETECTING ANOMALY IN MARINE VESSEL DATA SYSTEM USING SENSOR DATA AND OPERATIONAL DATA

TECHNICAL FIELD

[0001] The present application generally relates to an apparatus, a method and software code for detecting anomalities in marine vessel or power plant environment.

BRIEF DESCRIPTION OF RELATED DEVELOPMENTS

[0002] This section illustrates useful background information without admission of any technique described herein representative of the state of the art.

[0003] Modern vehicles, such as marine vessels, face different kinds of efficiency and performance requirements that are becoming increasingly more stringent. New legislation in the United States and European Union within the past few years has set, for example, fuel economy and emissions targets not readily achievable with prior known vehicle and fuel technology.

[0004] To address these increasing standards, engine equipment manufacturers are demanding better performance, while maintaining deposit control and oxidative stability requirements.

[0005] Modern engine system may comprise hundreds of sensors generating vast amount of data, such as big data. Detecting anomalies from the big data is cumbersome and challenging task, impossible for many installations as such. Correlation between all collected engine signals may be high and you need to be an expert to understand even the overall situation.

[0006] It is known from the prior art, for example, to provide an arrangement for taking a signal sample e.g. from an internal combustion engine and set threshold limits for pre-defined signal samples for triggering anomalities.

[0007] However, receiving a vast number of signals from a single system and setting thresholds or triggers for certain data samples during system operation is unreliable, cumbersome, difficult and requires more complexity. Due to even more stringent demands on efficiency and operational reliability, a need has emerged to improve the possibilities of tracking the operation of a marine vessel system, or power plant system, by processing gathered data to detect anomalities.

[0008] Thus, an easy to set-up, accurate, and highly functional and reliable solution is needed to provide more accurate system for detecting anomalities in marine vessel environment.

SUMMARY

[0009] According to a first example aspect of the disclosed embodiments there is provided a computer implemented method for detecting an anomaly in a marine vessel data system, the method comprising:

determining historical data based on sensor data of the marine vessel data system;

providing the historical data as input to a neural network;

generating predicted sensor data as output by the neural network;

combining the predicted sensor data with actual data to provide error data, wherein the actual data is determined from the sensor data;

receiving engine operational data;

determining level of data deviation based on the engine operational data; and detecting the anomaly based on the error data and the level of data deviation.

[0010] In an embodiment, the method comprises generating an anomaly detection model using the historical data and the error data.

[0011] In an embodiment, the anomaly detection model is arranged at a remote server apparatus.

[0012] In an embodiment, a plurality of sensors are operationally arranged to an engine system of the marine vessel.

[0013] In an embodiment, generating the predicted sensor data comprises reconstructing data of at least one sensor, by the neural network, based on the sensor data.

[0014] In an embodiment, generating the predicted sensor data comprises determining correlation, by the neural network, between data from a plurality of sensors. [0015] In an embodiment, the method further comprises determining correlation, by the neural network, for a subset of the plurality of sensors among the historical data.

[0016] In an embodiment, the subset of the plurality of sensors comprises at least one sensor and the historical data comprises data from the plurality of sensors.

[0017] In an embodiment, the neural network is trained by means of signals from the individual sensors for determining internal neural network parameters.

[0018] In an embodiment, the neural network is used for determination of the anomaly based on the error data.

[0019] In an embodiment, the neural network is configured to simulate the predicted sensor data correlating with the history data, and the neural network is adjusted to the sensor data by means of a training function.

[0020] In an embodiment, the training function comprises at least one of the following: Gradient descent function; Newton's method function; Conjugate gradient function; Quasi-Newton method function; and Levenberg-Marquardt function.

[0021] In an embodiment, the level of data deviation comprises an error threshold value, and the method further comprises:

normalizing error values of the error data; and

detecting the anomaly in response to a normalized error value of the error data exceeding the error threshold value.

[0022] In an embodiment, error values of the error data are normalized, and the method further comprises:

comparing an amplitude of an error value with the error threshold value and detecting the anomaly in response to the amplitude of the error value being greater than the error threshold value.

[0023] In an embodiment, the level of data deviation comprises a plurality of error threshold values associated with at least one of the following:

a sensor generating the sensor data; and

engine operational status determined based on the engine operational data.

[0024] In an embodiment, the method further comprises:

determining engine operational status information based on the engine operational data; and determining the level of data deviation associated to an engine operational status using the engine operational status information.

[0025] In an embodiment, determining the level of data deviation comprises configuration of the error data according to a standard deviation function .

[0026] In an embodiment, the method further comprises:

defining a first mean error value for a first engine operational status and a second mean error value for a second engine operational status, wherein the first and second mean error values are different; and

detecting the anomaly in the first engine operation status using the first mean error value and in the second engine operation status using the second mean error value.

[0027] In an embodiment, the anomaly in the first engine operation status is detected using at least one of the following criteria:

two standard deviations from the first mean error value;

three standard deviations from the first mean error value; and

four standard deviations from the first mean error value.

[0028] In an embodiment, the anomaly in the second engine operation status is detected using at least one of the following criteria:

two standard deviations from the second mean error value;

three standard deviations from the second mean error value; and

four standard deviations from the second mean error value.

[0029] In an embodiment, the level of data deviation associated to the engine operational status is configured to define a histogram of error range values.

[0030] In an embodiment, the engine operational data comprises at least one of the following:

engine status information indicating engine on/off status;

used fuel information of the engine;

operating hours information;

running hours information since last service; and

number of engine starts.

[0031] According to a second example aspect of the disclosed embodiments there is provided a server apparatus for detecting an anomaly in a marine vessel data system, comprising: a communication interface;

at least one processor; and

at least one memory including computer program code;

the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to:

determine historical data based on sensor data of the marine vessel data system;

provide the historical data as input to a neural network;

generate predicted sensor data as output by the neural network;

combine the predicted sensor data with actual data to provide error data, wherein the actual data is determined from the sensor data;

receive engine operational data;

determine level of data deviation based on the engine operational data; and

detect the anomaly based on the error data and the level of data deviation.

[0032] According to a third example aspect of the disclosed embodiments there is provided a computer program embodied on a computer readable medium comprising computer executable program code, which code, when executed by at least one processor of an apparatus, causes the apparatus to:

determine historical data based on sensor data of the marine vessel data system;

provide the historical data as input to a neural network;

generate predicted sensor data as output by the neural network;

combine the predicted sensor data with actual data to provide error data, wherein the actual data is determined from the sensor data;

receive engine operational data;

determine level of data deviation based on the engine operational data; and detect the anomaly based on the error data and the level of data deviation.

[0033] Different non-binding example aspects and embodiments of the disclosure have been illustrated in the foregoing. The above embodiments are used merely to explain selected aspects or steps that may be utilized in implementations of the present invention. Some embodiments may be presented only with reference to certain example aspects of the invention. It should be appreciated that corresponding embodiments may apply to other example aspects as well.

BRIEF DESCRIPTION OF THE DRAWINGS

[0034] The aspects of the disclosed embodiments will be described, by way of example only, with reference to the accompanying drawings, in which:

[0035] Fig. 1 shows a schematic picture of a system according to an aspect of the disclosed embodiments;

[0036] Fig. 2 presents an example block diagram of a control apparatus (within a marine vessel or a power plant, for example) in which various embodiments of the invention may be applied;

[0037] Fig. 3 presents an example block diagram of a sensor device in which various embodiments of the invention may be applied;

[0038] Fig. 4 shows a schematic picture of a computer implemented method and system of an anomaly detection model for detecting an anomaly in a marine vessel data system according to an example embodiment;

[0039] Fig. 5a-d show a schematic picture of various signals of the anomaly detection process according to an example embodiment;

[0040] Fig. 6 shows a schematic diagram of a sensor data item in accordance with an example embodiment;

[0041] Fig. 7 shows a schematic picture of a system according to an example embodiment;

[0042] Fig. 8 presents an example block diagram of a server apparatus in which various embodiments of the invention may be applied;

[0043] Fig. 9 presents an example block diagram of a remote computer apparatus in which various embodiments of the invention may be applied;

[0044] Fig. 10 shows a schematic diagram of an exemplary reference engine related data items for determining anomalities in accordance with an example embodiment;

[0045] Fig. 11 shows a schematic picture of an anomaly detection model (ADM)

121 and related information flows according to an example embodiment;

[0046] Fig. 12 shows a flow diagram showing operations in accordance with an example embodiment of the invention; [0047] Fig. 13 shows a schematic picture of determining level of data deviation 1400 based on second engine operational data according to an example embodiment; and

[0048] Fig. 14 shows a schematic picture of determining level of data deviation 1400 based on second engine operational data according to an example embodiment.

DETAILED DESCRIPTION

[0049] In the following description, like numbers denote like elements.

[0050] Fig. 1 shows a schematic picture of a marine vessel 105 and a marine vessel data system 1 10 according to an example embodiment.

[0051] The marine vessel data system 1 10 comprises a control apparatus 120 configured to provide and operate an anomaly detection model (ADM) 121 or at least part of the operations needed for the anomaly detection model (ADM) 121 , such as providing sensor data from the marine vessel data system 100 to a remote server apparatus where the anomaly detection model (ADM) is configured to be maintained and operated.

[0052] When operating a marine vessel with a plurality of sensors operationally connected to the marine vessel data system 1 10, data 122 is generated. Data 122 may be received from the plurality of sensors operationally arranged to the marine vessel 105 to provide sensor data 124. The sensor data 124 may be maintained within a data storage system. The data 122 may also comprise data from various data sources within the marine vessel data system 1 10, such as computer systems or communication systems, for example.

[0053] The dynamic anomaly detection model (ADM) 121 may be maintained and operated by the control apparatus 120 and receives data 122 as input. Further inputs may be provided from various data sources, internal or external, as well as operational or environmental, as discussed throughout the description. Alternatively, the dynamic anomaly detection model (ADM) may be maintained and operated by a remote server apparatus and receive input data 122 from the control apparatus 120. In such scenario the ADM 121 illustrated in Fig. 1 may be the plain data collection point or collection unit to provide the data to the remote server apparatus for the actual anomaly detection model (ADM). [0054] In an embodiment, the anomaly detection model 121 utilizes a neural network to predict signal behavior of equipment within the marine vessel 105 with the goal of detecting abnormal behavior within the marine vessel data system 1 10, for example.

[0055] In an embodiment, by establishing an extended interface between the ADM model 121 (or data collection unit in case the ADM model is operated at remote server apparatus) and other systems like the navigation system 130, automation system 190, power generation system 140, propulsion system 150, fuel system 160, energy load system 170 and auxiliary sensor system 180, for example, it is possible to gather vast amount of complex input data for ADM 121 to process, learn, predict and detect anomalities.

[0056] The power generation system 140 may comprise different power generation sources, such as engines operating with diesel oil, LNG, LPG, synthetic fuels or like. Propulsion system 150 may be configured to change the propulsion energy source (e.g. electric motor powering the propulsion wherein the energy source for the energy motor is changed), or for activating exhaust gas cleaning system (e.g. scrubber and/or SCR), for example. By establishing an ADM 121 (or data collection unit or point for the remote ADM) for communicating between systems 120-190 it is possible to use artificial neural networks as computing systems. The neural network within the ADM 121 itself may not be a single algorithm but a framework for many different machine learning algorithms to work together and process complex data inputs. Such systems learn to perform tasks by considering a lot of examples.

[0057] The neural network of the ADM 121 is configured to learn to reconstruct each data signal of the data 122 from an equipment of the system 1 10, based on all other data signals of the data 122.

[0058] Based on the difference between the reconstruction of a data signal and the actual signal, abnormal sensor behavior can be detected, as discussed in the description.

[0059] Uniqueness of the embodiments are based on the fact that, in general, the approach to anomaly detection is different. Essential feature is to use a neural network within the ADM 121 to reconstruct (historical) data of the data 122 and compare it to actual data of the data 122 with the goal of detecting deviations (abnormal, anomalous behavior) in the marine vessel 105. This will be discussed more in relation to following figures and associated description.

[0060] In an embodiment, for the marine vessel 105 related anomaly detection, top priority for detection may be defined to be safety, and second and third priority can be set by the ship operator (fuel consumption, speed/time, etc.), for example. The ADM 121 operates as a virtual expert for providing insight on anomalities.

[0061] The fuel system 160 may be configured to select from at least one of the following energy sources: diesel, liquified natural gas (LNG), liquified petroleum gas (LPG), methanol, low sulphur heavy fuel oil (HFO), marine gas oil (MGO), and hydrogen, for example.

[0062] Propulsion system 150 may utilize power source to be selected from at least one of the following: combustion-engine based power source; hybrid power source; and full electric power source.

[0063] The ADM 121 solution will allow different levels of automation within vessels. In first operation mode, ADM 121 may be configured to provide an anomaly detection plan, which the engineers can use for scheduling their activities. In second operation mode, ADM 121 may be configured to provide an embedded solution, wherein the sub-systems can notify the operator based on the anomaly detection plan, when to perform certain tasks or be switched on or set to standby. This notification may be repeated on the main display in the engine control room or remote-control station. In third operation mode, ADM 121 may be configured to provide a solution to be fully automated and automatically executing the anomaly detection plan of the ADM 121 with merely notification provided to the operator or remote-control station when performing different automated tasks.

[0064] Furthermore, characteristic information representing at least one operating characteristic of the marine vessel 105 may be received as data 122. The dynamic ADM 121 may use any available internal or external data such as weather forecasts, route plan information, and the vessel related data including the characteristic information.

[0065] In an embodiment, the anomality detection model 121 may be configured to perform a computer implemented method for detecting an anomaly in a marine vessel data system 1 10, wherein the method comprises receiving data 122,124 from a plurality of sensors operationally arranged to the marine vessel 105 to provide sensor data 124 and maintaining the sensor data 124 within a data storage system. The method further comprises determining historical data based on the sensor data 124 of the data storage system, providing the historical data as input to a neural network of the ADM 121 , generating predicted data for a subset of the plurality of sensors as output by the neural network, combining the predicted data with actual data for the subset of the plurality of sensors to provide error data, wherein the actual data is determined from the sensor data of the data storage system based on association to the subset of the plurality of sensors, and detecting the anomaly based on the error data.

[0066] Fig. 2 presents an example block diagram of a control apparatus 120 (within a marine vessel or a power plant, for example) in which various embodiments of the invention may be applied. The control apparatus 120 may comprise a user equipment (UE), user device or apparatus, such as a vessel computer system, in addition to the engine.

[0067] The general structure of the apparatus 120 comprises a control unit 200 and an engine unit 201 . Engine unit 201 may be integrated to the control unit 200 or even optional, as such.

[0068] The general structure of the control unit 200 may comprise a user interface 240, a communication interface 250, a satellite positioning device (GPS) 270, capturing/sensor device(s) 260 for capturing current activity data and/or current environmental data relating to the vessel or the power plant, a processor 210, and a memory 220 coupled to the processor 210. The control unit 200 further comprises software 230 stored in the memory 220 and operable to be loaded into and executed in the processor 210. The software 230 may comprise one or more software modules and can be in the form of a computer program product. The control unit 200 may further comprise a user interface controller 280.

[0069] The processor 210 may be, e.g., a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a graphics processing unit, or the like. Fig. 2 shows one processor 210, but the apparatus 120 may comprise a plurality of processors.

[0070] The memory 220 may be for example a non-volatile or a volatile memory, such as a read-only memory (ROM), a programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), a random-access memory (RAM), a flash memory, a data disk, an optical storage, a magnetic storage, a smart card, or the like. The apparatus 120 may comprise a plurality of memories. The memory 220 may be constructed as a part of the apparatus 120 or it may be inserted into a slot, port, or the like of the apparatus 120 by a user. The memory 220 may serve the sole purpose of storing data, or it may be constructed as a part of an apparatus serving other purposes, such as processing data. A proprietary anomaly detection application (client application) 231 comprising the anomaly detection model ADM 121 (or ADM data collection point in case the ADM is arranged remotely at server apparatus) is stored at the memory 220. Engine data, sensor data and environmental data may also be stored to the memory 220. The program code 230 may comprise the dynamic anomaly detection model (ADM) 121 and the proprietary application 231 may comprise a client application for the ADM, for example.

[0071] The user interface controller 280 may comprise circuitry for receiving input from a user of the apparatus 120, e.g., via a keyboard, graphical user interface shown on the display of the user interfaces 240 of the control apparatus 120, speech recognition circuitry, or an accessory device, such as a headset, and for providing output to the user via, e.g., a graphical user interface or a loudspeaker.

[0072] The satellite positioning device 270 is configured to provide location information or time information, for example. Such information may comprise, for example, position coordinates, speed, direction of movement, GPS time, and altitude information.

[0073] The communication interface module 250 implements at least part of data transmission. The communication interface module 250 may comprise, e.g., a wireless or a wired interface module. The wireless interface may comprise such as a WLAN, Bluetooth, infrared (IR), radio frequency identification (RF ID), GSM/GPRS, CDMA, WCDMA, LTE (Long Term Evolution), or 5G radio module. The wired interface may comprise such as universal serial bus (USB) or National Marine Electronics Association (NMEA) 0183/2000 standard for example. The communication interface module 250 may be integrated into the apparatus 120, or into an adapter, card or the like that may be inserted into a suitable slot or port of the apparatus 120. The communication interface module 250 may support one radio interface technology or a plurality of technologies. The apparatus 120 may comprise a plurality of communication interface modules 250. [0074] A skilled person appreciates that in addition to the elements shown in Fig. 2, the apparatus 120 may comprise other elements, such as microphones, extra displays, as well as additional circuitry such as input/output (I/O) circuitry, memory chips, application-specific integrated circuits (ASIC), processing circuitry for specific purposes such as source coding/decoding circuitry, channel coding/decoding circuitry, ciphering/deciphering circuitry, and the like. Additionally, the apparatus 120 may comprise a disposable or rechargeable battery (not shown) for powering when external power if external power supply is not available.

[0075] In an embodiment, the apparatus 120 comprises speech recognition means. Using these means, a pre-defined phrase may be recognized from the speech and translated into control information for the apparatus 120, for example.

[0076] The satellite positioning device 270 and the sensor device(s) 260 may be configured to be comprised by the apparatus 120 or connected as separate devices to the apparatus 120. In case the satellite positioning device 270 and the capturing device 260 are comprised in the apparatus 120 they may be connected to the apparatus 120 using an internal bus of the apparatus 120. In case the satellite positioning device 270 and the sensor device 260 are external devices connected to the apparatus 120 they may be connected to the apparatus 120 using communication interface 250 of the apparatus 120 or using the internal bus.

[0077] The general structure of the engine unit 201 may comprise an engine 291 , engine sensor device(s) 290 and a communication interface 293. The sensor device(s) 290 may be not necessarily connected to the internal bus and to the main processor 210 and memory 220. Such sensor device(s) 290 may be connected to the engine 291 and the communication interface 293 of the engine unit 201 . Furthermore, sensor data items with sensor data provided by the sensor device(s) 290 may be transmitted over the communication interface 293. Alternatively, sensor data items with sensor data provided by the sensor device(s) 290 may be provided for and transmitted by the communication interface 250.

[0078] In an embodiment, second sensor device(s) 260 may be configured to be integrated to a marine vessel's information system 200, and the first sensor device(s) 290 are configured not to be integrated to the marine vessel's information system 200 but to the engine 291 only. [0079] In an embodiment, the first sensor device(s) 290 are configured to be integrated to the engine 291 . No matter a single sensor 290 is shown, the sensor 290 may comprise a plurality of sensors 290. The sensor devices 290 may be configured to, for example, measure engine performance or operational data.

[0080] In an embodiment, a communication interface (see e.g., Fig. 3) of the sensor device 290 itself or the communication interface 293 of the engine unit 201 comprises an automatic identification system (AIS) receiver for receiving a wireless transmission comprising automatic identification system data, e.g. from the marine vessel. The AIS receiver may include an antenna configured to receive the automatic identification system data or the sensor device 290 may include an antenna configured to receive the automatic identification system data. In another example, AIS receiver is configured to receive the automatic identification system data from an antenna external to the sensor device 290.

[0081] In an embodiment, the engine 291 and at least one sensor device 290 are configured to generate sensor data items based on the received automatic identification system data and sensor data. The sensor data item may thus comprise sensor data generated by the sensor device 290 and an identifier information. The identifier information may comprise at least one of the following: sensor-ID (S-ID); engine-ID (E-ID), and vessel-ID (V-ID) that comprises at least part of the received automatic identification system data.

[0082] The sensor data item may also comprise information identifying the marine vessel (for example, International Maritime Organization (IMO) ship identification number or Maritime Mobile Service Identity (MMSI)). This identifying information may be taken from the automatic identification system (AIS) signal or it may be stored within the apparatus 120 when installed.

[0083] The sensor data relating to the engine 291 performance and operation measured by the at least one sensor device 260, 290 or GPS 270 may comprise measured data values as they were measured and/or data after processing at least some of the measured data values first.

[0084] In an embodiment, universal clock information of the control unit 200 is determined based on a vessel receiver device, comprising at least one of the Global Positioning System (GPS) receiver 270 and a communication interface 250 of the marine vessel. The universal clock information may comprise at least one of the following: a Global Positioning System (GPS) time and a Coordinated Universal Time (UTC).

[0085] In an embodiment, it is provided a method for determining the speed through water of the marine vessel for optimisation of vessel operation, using a sensor system with a plurality of sensors comprising at least one first sensor 290 of a first type and at least one second sensor 260, 270 of a second type. The method comprises obtaining propeller revolutions per minute and at least one of torque at propeller, propulsion power, thrust, and engine fuel consumption using at least one first sensor 290, obtaining speed over ground of the vessel using at least one second sensor 260, 270; and using the obtained data and hydrodynamic modeling to determine the speed through water of the vessel. The sensor data may be sent to the server apparatus as raw sensor data and the processing of the data and determination of vessel data may be carried out at the server. Additional first sensors

290 may be used, for example, to provide wind and sea state information that can also be used for determining vessel data, such as speed through water (STW). Traditionally, optimising operation of the vessel has been carried out using the STW measured by an STW log, which is inadequate due to calibration and noise issues. Hydrodynamic modeling data may be maintained at the control unit 200, e.g. in memory 220, and the hydrodynamic modeling data may be updated and downloaded from the server apparatus over the network when access is available, such as when docked in a harbor, for example.

[0086] In an embodiment, a proprietary anomaly detection application (client application) 231 is maintained at the apparatus 120. The application 231 may comprise the ADM model 231 or the ADM model related data, such as anomaly detection data that is received from the server apparatus where the ADM model is run, for example. Engine parameters relating to operation conditions of an engine

291 of the control apparatus 120 are measured using at least one sensor 260, 290. Anomalities are then determined using the ADM model 230, 231 (item 121 in Fig. 1 ) at control apparatus or at remote server apparatus if the ADM model is located there using the input data.

[0087] In an embodiment, at least one of the propeller revolutions per minute, torque at propeller, propulsion power, thrust, and engine fuel consumption is a measurement value resulting from a corresponding indirect measurement based on vessel vibrations, and can be used as further input for the ADM model.

[0088] For at least one first sensor 290, instead of a direct measurement of for example the propeller revolutions, it is possible to obtain this measurement value or data from an indirect measurement based on vessel vibrations detected by the sensor 290 attached to the vessel hull or engine, for example.

[0089] No matter a plurality of elements is shown, all elements are not essential for all embodiments. Some elements are optional, such as GPS 270, sensor device 260, user interface 240 and user interface controller 280.

[0090] Fig. 3 presents an example block diagram of a sensor device 260, 290 in which various embodiments of the invention may be applied. The sensor device 260, 290 may comprise various means for activity data detection, operational data detection and environmental data detection, for example. The sensor device 260, 290 may be used for both engine related data and environmental data capturing. The sensor device 260 may correspond to the sensor device 290 elements illustrated in Fig. 3.

[0091] In an embodiment, the sensor device 260, 290 and the processing of the sensor data may provide a plurality of parameters relating to an engine, for example one or more of the following: time, position (latitude & longitude), SOG (speed over ground), COG (course over ground), vibrations in three dimensions, propeller/engine RPM the operation conditions of the engine comprises at least one of the following: number of engine starts; operating hours since last oil change; load cycles of the engine; miles traveled with the engine; amount of fuel used by the engine; and integral sensor data of the engine to provide engine sensor data, such as temperature information, pressure information and mass flow information, for example. The number of engine starts may not be give as ready input data but that may be configured to be derived by the dynamic anomaly detection model (ADM) (item 121 in 1 , and item 400 in 4, for example) based on the acquired data (for example from the engine load or engine speed).

[0092] The sensor device 260, 290 may also comprise several capturing devices, combinations of any above-mentioned devices, and the like. The environmental temperature may comprise air temperature, water temperature or ground surface temperature, for example. [0093] The sensor device 260, 290 may comprise also a communication interface capable of connecting with at least one of the communication interfaces 250, 293 of Fig. 2. The generated sensor data may be transmitted to the communication interface 293 of Fig. 2. The sensor device 290 may also transmit its sensor data via its internal communication interface to the communication interface 250 of the control unit 200 in setup as in Fig. 2.

[0094] In an embodiment, the communication interface within the sensor device 290 or the communication interface 293 of Fig. 2 is, for example, a wireless transmitter or a wireless transceiver (for example, Wireless Local Area Network (WLAN) transceiver or any mobile or cellular communication network transceiver (for example, Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE) etc.), 5G or a local data port (e.g. Ethernet, Universal Serial Bus (USB) etc.).

[0095] In an embodiment, the sensor device 290 may also store information identifying the engine, the marine vessel or the power plant. This may have been preconfigured to the sensor device 290. Since the automatic identification system data identifies e.g. the marine vessel to which the received data relates to, the sensor device 290 is thus able to make sure that the received automatic identification system data relates to the marine vessel to which the sensor device 290 is affixed. One possibility for identifying the correct marine vessel is to use, for example, wireless signal strength of the AIS signal. The strongest AIS signal relates to the marine vessel to which the sensor device 290 is attached. Yet another possibility is to compare the acceleration signal from the acceleration sensor to the data indicating vessel movements in the AIS signals and to determine the correct AIS signal based on the comparison.

[0096] A second sensor device 260 of the marine vessel main information system 200 may comprise corresponding elements as disclosed for the first sensor device 290.

[0097] In an embodiment, a sensor device 290 is configured to measure the marine vessel performance related data when the sensor device 290 is affixed to the hull structure of the marine vessel 105 of Fig. 1 . For example, bolting, gluing or any other way for affixing or attaching the sensor device 290 to the hull structure or engine body may be used. In other words, since the sensor device 290 is firmly attached to the hull structure or engine body, there is no relative motion between the sensor device 290 and the hull structure or engine body respectively, and thus the sensor or sensors 290 sense the motions and vibrations of marine vessel or the engine via the hull structure or the engine body.

[0098] The AIS receiver (comprised by the communication interface 293 or the communication interface within the sensor device 290 of Fig. 2) may receive a wireless transmission comprising an AIS signal from the same marine vessel to which the sensor device 290 is affixed. The sensor device 290 may beforehand store information identifying the marine vessel (for example, International Maritime Organization (IMO) ship identification number or Maritime Mobile Service Identity (MMSI)) so that it is able to determine that the AIS signal relates to the marine vessel 121 to which it is affixed. The AIS signal includes several pieces of information relating to the marine vessel, for example, the vessel's identity, engine(s) identifier(s) and type, position, course, speed, navigational status and other related information. The sensor device 290 may utilize the AIS signal as it was received (in other words, every piece of information contained in the AIS signal). In another example, the sensor device 290 may select a subset of information included in the AIS signal to be included in the sensor data. In one example, the subset includes at least position and/or time information of the marine vessel.

[0099] Normally the AIS signal is intended to assist a vessel's watch standing officers to track and monitor movements of other vessels and allow maritime authorities to track and monitor movements of vessels. It also identifies and locates vessels by electronically exchanging data with other nearby ships.

[00100] In an embodiment, the AIS signal is received by a sensor device 290 installed in a vessel that is sending the AIS signal. This makes it possible for the sensor device to link the AIS signal with sensor data measured by the sensor or sensors 290. Since the sensor device 290 has the information included in the AIS signal and measurements from one or more sensors 290, there is no need to make the traditional integration tasks to the marine vessel's information systems. The AIS signal sent by the marine vessel to the sensor device 290 is a strong signal. Therefore, it may not be necessary to install a separate antenna in order to be able to receive the AIS signal. This makes the installation of the sensor device 290 simpler and quicker. For example, it is possible to install the sensor device 290 including only an internal antenna inside a marine vessel because the AIS signal leaks to the interior of the marine vessel via various existing cables, for example.

[00101] In an embodiment, a video camera is configured to provide video signal as input data for the dynamic anomaly detection model (ADM) 121 (Fig. 1 ), 230 (Fig. 2). The camera may be regarded as sensor 260, 290 in relation to Fig. 2 or 3. Based on the video signal the apparatus may determine at least part of the environmental or operational data. The determination may be done by video image processing, pattern recognition, filtering or other such means, for example. Alternatively, or additionally, direct sensor data or online data (such as weather information) may be used.

[00102] The sensor device 260, 290 may comprise communication interface module implementing at least part of data transmission. The communication interface module may comprise, e.g., a wireless or a wired interface module. The wireless interface may comprise such as a WLAN, Bluetooth, infrared (IR), radio frequency identification (RF ID), GSM/GPRS, CDMA, WCDMA, LTE (Long Term Evolution), or 5G radio module. The wired interface may comprise such as universal serial bus (USB) or National Marine Electronics Association (NMEA) 0183/2000 standard for example. The communication interface module may be integrated into the sensor device 260, 290 or into an adapter, card or the like that may be inserted into a suitable slot or port of the sensor device 260, 290. The communication interface module may support one radio interface technology or a plurality of technologies. The sensor device 260, 290 may comprise a plurality of communication interface modules.

[00103] The sensor device 290 disclosed in Figs. 2-3 may include at least one accelerometer or three-dimensional accelerometer. Since the sensor device 290 may be affixed to the hull of the marine vessel or the engine body, the accelerometer is able to sense vibrations in the hull of the body. From the vibrations sensed by the accelerometer, it is possible to determine, for example, speed of rotation of a propeller of the marine vessel or of the main engine. In most vessels, the speed of rotation of the propeller is identical with the speed of rotation of an engine of a marine vessel. Thus, it is possible to determine, based on an analysis of the measurements of the accelerometer, the speed of rotation of a propeller and an engine of a marine vessel. [00104] In an embodiment, in order to determine the speed of rotation of the propeller, the sensor device 290 or the associated computer device may analyze the signals measured by the accelerometer to identify the fundamental frequency in the signals. The fundamental frequency is the RPM (Revolutions Per Minute) of the engine or its multiple. One possible method for pitch detection (i.e. find the fundamental frequency) is the Harmonic Product Spectrum (HPS) method. In the method, a spectrum is compressed a number of times (down sampling), and it is compared with the original spectrum. It can then be seen that the strongest harmonic peaks line up. The first peak in the original spectrum coincides with the second peak in the spectrum compressed by a factor of two, which coincides with the third peak in the spectrum compressed by a factor of three. Hence, when the various spectrums are multiplied together, the result will form a clear peak at the fundamental frequency. It is obvious that the HPS is only one possible method for finding the fundamental frequency and other methods may be used. The speed of rotation of the propeller may also be stored in the memory of the sensor device 290 to be transmitted to or accessed by an external entity. Related data may be used also as input for the dynamic anomaly detection model (ADM) 121 .

[00105] Furthermore, device or apparatus analyzing the sensor data, such as a server apparatus, the sensor device itself, the control unit 200 or the remote apparatus may perform frequency analysis of the signals measured by at least one acceleration sensor of the sensor device 290. In case the sensor device or some other device or apparatus performs the frequency analysis, the amount of sensor data to be transmitted outside the sensor device/computer device is reduced. The frequency analysis may comprise, for example, frequency-time analysis, such as Short-Time Fourier Transform (STFT) or Discrete Wavelet Transform (WFT). With the frequency analysis, an understanding of frequency components over a short time is received. The frequency analysis is performed, for example, so that motions of a marine vessel 105 (see Fig. 1 ) can be understood better and analyzed.

[00106] Further, the frequency analysis may comprise applying a dimensionality reduction method, for example, Principal Component Analysis (PCA) in order to identify the most significant components in the frequency domain.

[00107] An accelerometer and an inclinometer can be used to measure the same parameters since both measure acceleration. One of the main differences is that the accelerometer provides acceleration components separately, but they are more inaccurate. However, acceleration components are usually provided within a larger dynamic range. The inclinometer measures inclination more accurately but within a narrower range. Therefore, it is possible to perform RPM measurements also with the inclinometer if its bandwidth is high enough. Further, it may be possible to perform a frequency analysis for the data provided by the inclinometer and get the same or almost the same results than based on accelerometer data. One difference, however, is that the inclinometer does not measure vertical acceleration.

[00108] Based on the analysis of the sensor data, it may be possible to determine the operation efficiency of the marine vessel (or the power plant, for example) and its engine and to automatically trigger service requests such as oil change for the engine 291 , for example.

[00109] Based on the information available and generated by the sensor device 260, 290 it may be possible to optimize and analyze various factors relating to the marine vessel 105 (see Fig. 1 ), such as preventing unplanned downtime, extending maintenance interval, or improving energy efficiency of a marine vessel using the ADM model 230 (ADM 121 in Fig. 1 ).

[00110] Marine vessel data and engine data may be generated based on received sensor data from at least one sensor. Based on the input data and the ADM model it is possible to detect anomalities and further provide triggers for tasks or determine automated performance optimization, for example. Sensor detected engine data may also be transmitted to the server apparatus and utilize the data and the model there for determining anomalities or triggering customer related services, such as calculation of optimized oil-change time, for example.

[00111] Fig. 4 shows a schematic picture of a computer implemented method and system of an anomaly detection model (ADM) 400 for detecting an anomaly in a marine vessel data system according to an example embodiment. The anomaly detection model (ADM) 400 may be configured to be maintained at a remote server apparatus, at a remote control apparatus, at a marine vessel control apparatus or any combination of those. For example, data collection 410 may be arranged from one apparatus (e.g. marine vessel control or engine apparatus), an insight input 495 from a second apparatus (e.g. remote control apparatus) and the actual data processing and neural network involvement at a third apparatus (e.g. remote server apparatus), for example.

[00112] First, data is collected from various sensors 410 operationally arranged to the marine vessel (or power plant), or from other data sources within the data system, for example. For example, a plurality of sensors may be operationally arranged to an engine system of the marine vessel or a power plant.

[00113] Received data is maintained as sensor data within a data storage system 420. The data storage system 420 may be arranged to a remote server apparatus, such as cloud server, but may also be at least temporarily stored at marine vessel data storage. The maintained sensor data of the data storage system 420 is provided as source data for further processing.

[00114] Second, historical data 430 is determined based on the sensor data of the data storage system 420. The historical data 430 comprises data from a plurality of sensors. The historical data 430 is then provided as input to a neural network 440.

[00115] Third, the neural network 440 generates predicted data 450 for a subset of the plurality of sensors as output by the neural network 440. The subset comprises at least one sensor of the plurality of sensors. Historical data may comprise data from a plurality of sensors. Parallel to the generation of predicted data 450, actual data 460 is determined from the sensor data of the data storage system 420 based on association to the subset of the plurality of sensors.

[00116] In an embodiment, the subset of the plurality of sensors may comprise several sensors but usually not the total number of sensors wherefrom sensor data is received. For example, sensor data is received from N sensors. Of these N sensors, the anomaly detection model (ADM) 400 is configured to reconstruct a total of n sensors, in which n is close to but (almost) never equal to N, resulting as n<N.

[00117] In an embodiment, the anomaly detection model (ADM) 400 is configured to generate reconstruction data 450 for a period of time, for sensor S1 , based on all other sensor data 430 in that same period, S2 ... Sn using the neural network 440. This is done for each sensor S1 ... Sn. If reconstruction data 450 is made for sensor Sx, that reconstruction data 450 is compared to the actual data 460 of Sx in the same period of time. Similar comparison can then be done for each sensor S1 ... Sn. [00118] Fourth, the predicted data 450 is combined with the actual data 460 for the subset of the plurality of sensors to provide error data 470. The actual data 460 is determined from the sensor data of the data storage 420 system based on association to the subset of the plurality of sensors.

[00119] Fifth, the error data 470 is processed by error data processing 480 of the anomaly detection model 400 by combining the error data 470 with a selected subset 435 of the historical data 430.

[00120] Sixth, anomalous data 490 is detected based on the error data processing 480. The anomaly detection model 400 and related processing 430, 440, 480, and combining with the history data 430 of sensor data, may for example result to a peak in certain actual sensor data that is not as predicted by the model as predicted data. Such deviation may indicate an anomaly even though the peak may be not high compared to the expected sensor behavior. Alternatively, values in certain sensor may be much higher than usual, but the model has predicted such behavior based on the other sensor signals. Therefore, such data may not be anomalous.

[00121] In an embodiment, the neural network 440 is used for determination of an anomaly 490 based on the error data 470.

[00122] In an embodiment, the neural network 440 is configured to simulate the predicted data 450 correlating with the history data 430, and the neural network 440 is adjusted to the sensor data 420 by means of a training function. The training function may comprise at least one of the following: Gradient descent function; Newton's method function; Conjugate gradient function; Quasi-Newton method function; and Levenberg-Marquardt function.

[00123] Detected anomality may trigger certain tasks within the marine vessel data system, either automatically, or in response to some confirmation by operating user, for example.

[00124] In an embodiment, a continuous evaluation application 495 for evaluating the neural network based anomality results may be provided. The evaluation application 495 may receive user input by experts via online application, for example. The results 490 of the neural network process 410-480 may be labeled in the form of an 'indication of unusual data'. A tool of the application 495 used may be called an Anomaly Timeline, and it may show heat bars per sensor, per asset, and/or per installation. The redder a heat bar is, the more unusual the data behavior is at that point in time.

[00125] The engine experts may use the Anomaly Timeline tool to find the 'needles in the haystack'. The experts may review all the periods of data indicated by the model 400 as unusual in step 490 and verify these. The expert users may confirm if it is really something that should be reported to the customer, for example. Similarly, they decide if the anomaly 490 is a 'false positive' no matter the model 400 marked some period as unusual while the expert thinks it is as expected .

[00126] Once the engine expert is convinced that data is unexpected, he/she may create a case about it in communication channel, such as Case Collaboration Chat. Here the data can be discussed with all stakeholders; experts, installation crew, etc. Together the data can be studied, and a solution can be found to tackle the problem and make the data return to expected behavior.

[00127] Once the problem is solved, the case can be closed. While doing this, the stakeholders can indicate what the end solution was that solved the problem, what the severity of the case was, and more case related information.

[00128] Both the first validation round (the Anomaly Timeline) as the second (the Case Collaboration Chat) provide valuable feedback on the output 490 of the anomaly detection model (ADM) 400. The model itself can be trained better if it knows what anomalies are considered relevant (with a high severity), and what output of the model is falsely positive. The output of the model can be processed more automatically if it can be taught to know what approach often solves unexpected data behavior.

[00129] In an embodiment, the neural network 440 is trained by means of signals from the individual sensors 410 for determining internal neural network parameters.

[00130] The feedback information may be gathered by the evaluation application 495 continuously. If the engine expert marks a period of data as irrelevant in the Anomaly Timeline, it may be configured to disappear at the view of all other engine experts, so nobody must check that period of data anymore. Then again, if a stakeholder of a case closes the cases and marks the case as highly severe, a separate model may learn this so that future similar anomalies will be more prominently indicated in the Anomaly Timeline. This will lead to the engine expert validating the data earlier, thereby shortening the time between model output and case creation. This would benefit the stakeholders as this enables information to be available faster to them.

[00131] If a stakeholder of a case closes the case and indicates the solution that solved the unexpected behavior, the Case Collaboration Chat can, next time the behavior occurs, come up with an automatic proposed solution. This greatly improves the time to solve a case. This learning will be utilizing pattern recognition techniques on the related data of all cases created on all engines. This will enable knowledge from one single expert to become available to all experts.

[00132] Fig. 5a-d show a schematic picture of various signals of the anomaly detection process according to an example embodiment.

[00133] In Fig 5a, it is shown an exemplary layout of different signals or sensor data as well as predicted data by the model. A first curve 510 indicates sensor data from a first sensor (sensor 1 ). A second curve 520 indicates sensor data from a second sensor (sensor 2). A third curve 530 indicates sensor data from a third sensor (sensor 3). A fourth curve 540 indicates actual sensor data from a fourth sensor (Actual sensor 4). A fifth curve 550 indicates predicted sensor data for the fourth sensor (Predicted sensor 4).

[00134] The anomaly detection model ADM 121 , 400 (see Figs. 1 and 4), determines correlations between signals and the neural network (see item 440 in Fig. 4) is configured to predict what different sensor values should be. Such prediction is based on processing and combination of the other sensor values. By comparing the predicted values to the actual sensor values, deviations (anomalous behavior) can be detected. Correlation may be determined, by the neural network, for a subset of the plurality of sensors among the historical data.

[00135] In item“A” of Fig. 5a, one interesting portion of the actual sensor data 540 from the fourth sensor (Actual sensor 4) is determined. This portion is further discussed in relation to Fig. 5b.

[00136] In item“B” of Fig. 5a, another interesting portion of the actual sensor data 540 from the fourth sensor (Actual sensor 4) is determined. This portion is further discussed in relation to Fig. 5c.

[00137] In Fig. 5b, the portion “A” of Fig. 5a is slightly magnified for better understanding. It can be determined that the determined peak 541 in the actual sensor data 540 from the fourth sensor (Actual sensor 4) is not as predicted by the model 121 , 400 and shown as the fifth curve 551 indicating the predicted sensor data 550 for the fourth sensor (Predicted sensor 4). Therefore, the model 121 , 400 determines the peak 541 as an anomaly. Even though the peak 541 is not high compared to the expected sensor behavior 551 .

[00138] In Fig. 5c, the portion “B” of Fig. 5a is slightly magnified for better understanding. It can be determined that the determined peaks 542-543 in the actual sensor data 540 from the fourth sensor (Actual sensor 4) are much higher than usual but the model 121 , 400 has predicted this behavior based on the other signals and shown as the fifth curve 552 indicating the predicted sensor data 550 for the fourth sensor (Predicted sensor 4). Therefore, the data is not anomalous. Therefore, the model 121 , 400 determines the peaks 542-543 as not anomalous.

[00139] In Fig. 5d, a difference between the actual value 540 and the predicted value 550 is illustrated. The difference is shown as the error value 560 that correlates with the item 470 of Fig. 4.

[00140] Fig. 6 shows a schematic diagram of a sensor data item 124 in accordance with an example embodiment. The sensor data item 124 as disclosed may comprise at least one identifier.

[00141] In an embodiment, the engine 291 and at least one sensor device 290 (see e.g. Fig. 2) are configured to generate sensor data items based on the received identification system data and sensor data. The sensor data item may thus comprise sensor data generated by the sensor device 290 and an identifier information. The identifier information may comprise at least one of the following: sensor-ID (S-ID); engine-ID (E-ID), and vessel-ID (V-ID) that may comprise at least part of the received automatic identification system (AIS) data, for example.

[00142] A sensor data item, such as engine parameters 124, is generated by a sensor device of the marine vessel 105 (see Fig. 1 ) or power plant and transmitted to control apparatus 120 and/or remote server apparatus 730 (see Fig. 7 or 8) as input data for the anomaly detection model (ADM) 121 , 400. Sensor data items may be processed at the control apparatus 120 or server apparatus 730 before inputting to ADM or transmitting to the server apparatus or they may be inputted or sent without further processing.

[00143] Fig. 7 shows a schematic picture of a system 700 according to an example embodiment. A marine vessel 105 or a power plant 105 may comprise a control apparatus 120 and an engine 291 , for example. Instead of a marine vessel or a power plant, the entity 105 may comprise any setup utilizing an operating data system with a plurality of sensors operationally connected thereto.

[00144] As an example, a marine vessel 105 is discussed. The marine vessel 105 comprises the control apparatus 120 comprising means for generating, processing and transceiving engine related data through a communication interface, for example. The apparatus 120 is capable of downloading and locally executing software program code. The software program code may be a client application of a service whose possible server application is running on a server apparatus 730, 731 of the system 700. The marine vessel 105 comprises the engine 291 with a plurality of sensors operationally connected to provide sensor data 124. The apparatus 120 is configured to receive the sensor data 124 and process the data utilizing neural network and anomality detection model (ADM) 121 , 400 (see Fig. 4). The ADM 121 , 400 may be operated at a server apparatus 730 or at local apparatus 120. The apparatus 120 may further comprise a capturing device, such a sensor device, for providing operational or environmental data relating to the marine vessel 105 for providing such data as further input to the ADM 121 , 400 and neural network, for example. The sensor device may comprise an accelerometer, a gyroscope, a temperature sensor, a pressure sensor, a measuring sensor or a camera, for example. The camera may also be used to provide video data and a microphone may be used for providing audio data, for example.

[00145] In an embodiment, there is provided a computer implemented method for detecting an anomaly in a marine vessel data system, the method comprising receiving data from a plurality of sensors operationally arranged to the marine vessel 105 to provide sensor data 124, maintaining the sensor data 124 within a data storage system 120, 730, determining historical data based on the sensor data of the data storage system, providing the historical data as input to a neural network of the anomaly detection model (ADM) 121 , 400 (see Fig. 4), generating predicted data for a subset of the plurality of sensors as output by the neural network of the anomaly detection model (ADM), combining the predicted data with actual data for the subset of the plurality of sensors to provide error data, wherein the actual data is determined from the sensor data of the data storage system based on association to the subset of the plurality of sensors, and detecting the anomaly based on the error data.

[00146] In an embodiment, at least one reference engine 770-772 is configured to generate reference engine profile data 782 by determining reference engine parameters 775 of the reference engine 770-772. At least one reference engine 770- 772 is configured to generate reference engine sensor data 783 based on sensors operationally connected to the reference engine 770-772. Reference engine 770- 772 related measurements, data collection and transceiving may be carried out by a reference engine data apparatus 780. A reference anomaly detection model 784 may be generated based on the reference engine profile data 782 and the sensor data 783. The profile data 782 may comprise, for example, operational or environmental characteristics, service data, oil measurement data, spare part data, service provider manual input data etc. of the reference engines 770-772.

[00147] The reference anomaly detection model 784 may be transmitted to a server apparatus 730, 731 for storing and processing over connection 781 . The reference engine profile data 782 and/or the reference sensor data 783 may also be transmitted to a server apparatus 730, 731 for storing and processing. The reference anomaly detection model 784 may also be generated at the server apparatus 730, 731 .

[00148] In an embodiment, reference engine profile data 782, reference engine sensor data 783 or the reference anomaly detection model 784 may be configured to be received at a control apparatus 120 that may comprise on-site engine 291 or engine 291 operated in the marine vessel 105, for example. At the apparatus 120, sensor data 124 are received relating to operation conditions of an engine 291 of the marine vessel 105, and anomality detection may be performed by selecting optimal model between the reference model 784 and the model 121 , 400 (see Fig. 4), as well as by selecting between the sensor data 124 and the reference engine profile data 782 with the reference engine sensor data 783.

[00149] In an embodiment, local operational or environmental parameters may be determined at the marine vessel 105 to define which sensor data 124 is used for the ADM 121 , 400. In case the circumstances of the marine vessel 105 or the engine 291 are such that there is not reliable history data to be used for the ADM 121 , 400 (see Fig. 4), reference engine sensor data 783 may be used as history data for the ADM 121 , 400. Same applies if the environmental or operational parameters change and better environmental data associated with sensor data can be received from the reference engines 770-772. The reference engine profile data 782 may be configured to associate reference engine sensor data 783 to the operational (load, speed, service time, operating hours) and environmental (temperature, pressure, wind, humidity, wave height) circumstances and to assist the selection of the most appropriate reference data 783 to be used for the ADM 121 , 400 (see Fig. 4) eventually.

[00150] In an embodiment, an ADM 400 (see e.g. Fig. 4) may be operated at remote server 730 and configured to receive reference data 782-784 from a remote apparatus 780 comprising a plurality of reference sensors operationally arranged to a reference marine vessel 770-772 to provide reference sensor data, determine reference historical data based on the reference sensor data; and provide the reference historical data as input to the neural network 440 (see Fig. 4). Reference data may be received from a plurality of remote apparatuses each comprising a plurality of reference sensors to provide reference sensor data. The reference data may relate to different operational conditions of the reference engine 770-772. The reference data may relate to operational and environmental measurement data of the reference engine. Furthermore, reference data may be maintained at a server apparatus 730, and the reference historical data may be dynamically updated based on the reference sensor data, and the reference historical data may be provided as input to the neural network 440 (see Fig. 4).

[00151] In the present description, by vessel are meant any kinds of waterborne vessels, typically marine vessels. Most typically the vessel is a cargo ship or large cruise vessel, but the present disclosure is also applicable for yachts, for example. In the present description, by power plant are meant any kinds of power generating systems, typically power plants with a power producing combustion engine 291 , such as an LNG engine, LPG engine, a diesel engine or a hybrid engine. Most typically the power plant is a multi-source plant implementing also solar, wind or battery management system, but the present disclosure is also applicable for any system comprising a data system with a plurality of sensors.

[00152] The control apparatus 120 is configured to be connectable at least occasionally to a public network 750, such as Internet, directly via local connection or via a wireless communication network 740 over a wireless connection 722. The wireless connection 722 may comprise a mobile cellular network, a satellite network or a wireless local area network (WLAN), for example. The wireless communication network 740 may be connected to a public data communication network 750, for example the Internet, over a data connection 741 . The control apparatus 120 may be configured to be connectable to the public data communication network 750, for example the Internet, directly over a data connection that may comprise a fixed or wireless mobile broadband access. The wireless communication network 740 may be connected to a server apparatus 730 of the system 700, over a data connection.

[00153] In an embodiment, the control apparatus 120 may set up local connections within the marine vessel 105 (or power plant, for example) with at least one capturing device, such as a sensor, and a computer device. The capturing device, such as a sensor, may be integrated to the control apparatus 120, the engine 291 or the marine vessel 105, attached to the hull of the marine vessel 105 and connected to the vessel control system or arranged as separate sensor device and connectable over separate connection.

[00154] The control apparatus 120 and its client application may be allowed to log into a vessel or engine data service run on a server 730, for example.

[00155] Real-time interaction may be provided between the control apparatus 120 and the server 730 to collaborate for marine vessel data and ADM 121 , 400 (see Fig. 4), over a network 150. Real-time interaction may also be provided between the apparatus 120 and the remote user device 760 to collaborate for marine vessel or engine data over a network 750, 761 .

[00156] A sensor data item, such as engine parameters 124, is generated by a sensor device of the marine vessel 105 and transmitted to the control apparatus 120 and/or to the server 730. Sensor data items may be processed at the apparatus 120 before transmitting or they may be sent without further processing.

[00157] Sensor data may also be stored within the control apparatus 120 before transmission over the network 750. Then again, transmitted sensor data may be stored/and or processed at the server apparats 730 or at the remote user device 160.

[00158] A capturing device (e.g. a sensor device) may capture and send sensor data as a real-time content or non-real time data to the server apparatus 730 or to the remote user device 760 over a peer-to-peer connection formed over network, for example.

[00159] The control apparatus 120 may be connected to a plurality of different capturing devices and instruments and the apparatus 120 may be configured to select which sensor device(s) is actively collaborated with.

[00160] The user of the control apparatus 120 or the remote user device 760 may need to be logged in with user credentials to a chosen service of the network server 730.

[00161] In an embodiment, the system 700 comprises a sensor device configured to be comprised by or connectable to the control apparatus 120 over a local connection. The local connection may comprise a wired connection or a wireless connection. The wired connection may comprise Universal Serial Bus (USB), High- Definition Multimedia Interface (HDMI), or RCA interface, for example. The wireless connection may comprise acoustic connection, Bluetooth™, Radio Frequency Identification (RF-ID) or wireless local area network (WLAN), for example. Near field communication (NFC) may be used for sensor device identification between the sensor device and the control apparatus 120, for example.

[00162] A sensor device may also be connected directly to the public network 750, such as Internet, via direct local connection or via a wireless cellular network connection 740, 741 .

[00163] In an embodiment, the system 700 may comprise a server apparatus 730, which comprises a storage device 731 for storing service data, service metrics and subscriber information, over data connection 751 . The service data may comprise configuration data; account creation data; sensor data; sensor ID’s; reference data items; anomaly detection model related data; user input data; real time collaboration data; reference engine profile data; reference engine parameters; predefined settings; and attribute data, for example.

[00164] In an embodiment, a proprietary application in the control apparatus 120 may be a client application of a service whose server application is running on the server apparatus 730 of the system 700.

[00165] The proprietary anomaly detection application 121 , 230,231 (see Fig. 2), 400 (see Fig. 4), 830,831 (see Fig. 8), may receive sensor input data and provide the output data. The input data may comprise data captured by the capturing device, such as a sensor device or a camera and the output data may comprise anomaly data or automated task in response to the detected anomaly, for example.

[00166] In an embodiment, configuration information or application download information for any apparatus may be automatically downloaded and configured by the server 730. Thus, the user of the devices may not need to do any initialization or configuration for the service. The system server 730 may also take care of account creation process for the service, sensor devices, apparatuses and users.

[00167] In an embodiment, the association of the devices can be one-time or stored persistently on any of the devices or the server 730.

[00168] In an embodiment, authentication of a sensor device or control apparatus 120 on a system server 730 may utilize hardware or SIM credentials, such as International Mobile Equipment Identity (IMEI) or International Mobile Subscriber Identity (IMSI). The sensor device or control apparatus 120 may transmit authentication information comprising IMEI and/or IMSI, for example, to the system server 730. The system server 730 authenticates the device or control apparatus 120 by comparing the received authentication information to authentication information of registered users/devices/vessels/apparatuses stored at the system server database 731 , for example. Such authentication information may be used for pairing the devices and/or apparatuses to generate association between them for a vessel or power plant data connection.

[00169] In an embodiment, a service web application may be used for configuration of a system. The service web application may be run on any user device, admin device, or a remote control device 760, such as a personal computer connected to a public data network, such as Internet 750, for example. The remote control apparatus 760 may also be connected locally to the control apparatus 120 over a local connection 723 and may utilize the network connections of the apparatus 120 for configuration purposes. The service web application of the remote apparatus 760 may provide searching/adding instruments, determining attributes, device setup and configuration, for example. The service web application of the remote apparatus 760 may be a general configuration tool for tasks being too complex to be performed on the user interface of the control apparatus 120, for example. [00170] In an embodiment, a remote control apparatus 760 may be authenticated and configuration data sent from the control apparatus 760 to the system server 730, 731 , wherein configuration settings may be modified based on the received data. In an embodiment, the modified settings may then be sent to the control apparatus 120 over the network 750 and the local connection or the wireless operator. The modified settings may also be sent to external devices correspondingly, through the control apparatus 120 or directly over the network 750, for example.

[00171] In an embodiment, the sensor device may be wireless or wired.

[00172] The system 700 may also comprise a plurality of satellites 710 in orbit about the Earth. The orbit of each satellite 710 is not necessarily synchronous with the orbits of other satellites and, in fact, is likely asynchronous. A global positioning system receiver apparatus such as the ones described in connection with preferred embodiments of the present invention is shown receiving spread spectrum global positioning system (GPS) satellite signals 712 from the various satellites 710. The plurality of satellites 710 may be used for location purposes, input for determining traveled distance (since oil change, for example), or input for accurate time (since oil change, for example).

[00173] The remote control apparatus 760 may be configured to be operated by a remote operator of the vessel 105. The remote control apparatus 760 may be arranged on a ground station, on the vessel 105 or on another vessel, for example.

[00174] In an embodiment, the control apparatus 120 is configured to receive environment data relating to the marine vessel 105, maintain the environment data within the data storage system, determine historical environment data based on the environment data of the data storage system, and provide the historical environment data as input to the neural network 440 (see Fig. 4) that may be operated at the server apparatus 730 or within the model 121 , for example. If the model 121 is operated at the server 730, sensor data 124 may be transferred to the server either in real-time or non-real-time. Sensor data 124 may relate to operational or environmental measurement data of the marine vessel. The sensor data 124 comprises engine sensor data, for example. The engine sensor data comprises information on at least one of the following: number of engine starts; operating hours since last service; load cycles of the engine; miles traveled with the engine; amount of fuel used by the engine; and temperature data of the engine.

[00175] Fig. 8 presents an example block diagram of a server apparatus 730 in which various embodiments of the invention may be applied.

[00176] The general structure of the server apparatus 730 comprises a processor 810, and a memory 820 coupled to the processor 810. The server apparatus 730 further comprises software 830 stored in the memory 820 and operable to be loaded into and executed in the processor 810. The software 830 may comprise one or more software modules, such as service application 831 and can be in the form of a computer program product. The software 830 may comprise the anomaly detection model (ADM) 121 , 400 and the service application 831 may be configured to communicate with the client application 231 (see Fig. 2) arranged at control apparatus 120, for example. The client application 231 may be configured to provide the sensor data from the marine vessel data system to the ADM model 400, 830, for example.

[00177] The processor 810 may be, e.g., a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a graphics processing unit, or the like. Fig. 8 shows one processor 810, but the server apparatus 730 may comprise a plurality of processors.

[00178] The memory 820 may be for example a non-volatile or a volatile memory, such as a read-only memory (ROM), a programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), a random-access memory (RAM), a flash memory, a data disk, an optical storage, a magnetic storage, a smart card, or the like. The server apparatus 730 may comprise a plurality of memories. The memory 820 may be constructed as a part of the server apparatus 730 or it may be inserted into a slot, port, or the like of the server apparatus 730 by a user. The memory 820 may serve the sole purpose of storing data, or it may be constructed as a part of an apparatus serving other purposes, such as processing data.

[00179] The communication interface module 850 implements at least part of radio transmission. The communication interface module 850 may comprise a wireless or wired interface module. The wireless interface may comprise such as a WLAN, Bluetooth, infrared (IR), radio frequency identification (RF ID), GSM/GPRS, CDMA, WCDMA, LTE (Long Term Evolution), or 5G radio module. The wired interface may comprise universal serial bus (USB) or National Marine Electronics Association (NMEA) 0183/2000 standard for example. The communication interface module 850 may be integrated into the server apparatus 730, or into an adapter, card or the like that may be inserted into a suitable slot or port of the server apparatus 730. The communication interface module 850 may support one radio interface technology or a plurality of technologies. Captured data associated with environmental data of the marine vessel 105 (or from power plant), as well as measured engine parameters relating to operation conditions of the engine may be received by the server apparatus 730 using the communication interface 850.

[00180] The e-mail server process 860, which receives e-mail messages sent from control apparatuses 120, such as marine vessel or power plant apparatuses, and remote computer apparatuses 760 via the network 750. The server 860 may comprise a content analyzer module 861 , which checks if the content of the received message meets the criteria that are set for new activity data item of the service. The content analyzer module 861 may for example check whether the e-mail message contains a valid activity data item to be used as reference data item. The valid reference data item received by the e-mail server is then sent to an application server 840, which provides application services e.g. relating to the user accounts stored in a user database 870 and content of the content management service. Content provided by the service system 700 is stored in a content database 880.

[00181] A skilled person appreciates that in addition to the elements shown in Fig. 8, the server apparatus 730 may comprise other elements, such as microphones, displays, as well as additional circuitry such as input/output (I/O) circuitry, memory chips, application-specific integrated circuits (ASIC), processing circuitry for specific purposes such as source coding/decoding circuitry, channel coding/decoding circuitry, ciphering/deciphering circuitry, and the like. Not all elements disclosed in Fig. 8 are mandatory for all embodiments.

[00182] According to an embodiment, the server apparatus 730 may receive selection information for a plurality of reference engines and generate the reference engine profile data by determining reference engine parameters of the plurality of reference engines based on the selection information. The reference engine parameters may be generated based on sensor data received from at least one reference engine. The reference engine parameters may relate to different operation conditions of the reference engine.

[00183] In an embodiment, a reference engine data apparatus 780 (see Fig. 7) may be configured to determine the reference engine sensor data, reference environmental data, and reference operational data, and generate reference model based on the reference inputs.

[00184] The reference model data of the reference model 784 may be maintained at a server apparatus 730, and dynamically updated in response to receiving updated reference engine data.

[00185] Fig. 9 presents an example block diagram of a remote computer apparatus 760 in which various embodiments of the invention may be applied. The computer apparatus 760 may be a user equipment (UE), user device or apparatus, such as a mobile terminal, a smart phone, a laptop computer, a desktop computer or other communication device. The remote control apparatus 760 may be configured to be operated by a remote operator of the vessel 105 or the power plant (Fig. 1 ). The remote control apparatus 760 may be arranged on a ground station, on the vessel 105 or on another vessel, for example.

[00186] The general structure of the computer apparatus 760 comprises a user interface 940, a communication interface 950, a processor 910, and a memory 920 coupled to the processor 910. The computer apparatus 760 further comprises software 930 stored in the memory 920 and operable to be loaded into and executed in the processor 910. The software 930 may comprise one or more software modules, such as remote client software application 931 , and can be in the form of a computer program product. The computer apparatus 760 may further comprise a user interface controller 960. The program code 930 may comprise the anomaly detection model (ADM) 121 , 400 (see Fig. 4) or a client application relating to the ADM model, such as expert insight application or chat application.

[00187] The processor 910 may be, e.g., a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a graphics processing unit, or the like. Fig. 9 shows one processor 910, but the computer apparatus 760 may comprise a plurality of processors.

[00188] The memory 920 may be for example a non-volatile or a volatile memory, such as a read-only memory (ROM), a programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), a random-access memory (RAM), a flash memory, a data disk, an optical storage, a magnetic storage, a smart card, or the like. The computer apparatus 760 may comprise a plurality of memories. The memory 920 may be constructed as a part of the computer apparatus 760 or it may be inserted into a slot, port, or the like of the computer apparatus 760. The memory 920 may serve the sole purpose of storing data, or it may be constructed as a part of an apparatus serving other purposes, such as processing data.

[00189] The user interface controller 960 may comprise circuitry for receiving input from a user of the computer apparatus 760, e.g., via a keyboard, graphical Ul shown on the display of the user interfaces 940 of the computer apparatus 760, speech recognition circuitry, or an accessory device, such as a headset, and for providing output to the user via, e.g., a graphical user interface or a loudspeaker.

[00190] The communication interface module 950 implements at least part of radio transmission. The communication interface module 950 may comprise, e.g., a wireless or a wired interface module. The wireless interface may comprise such as a WLAN, Bluetooth, infrared (IR), radio frequency identification (RF ID), GSM/GPRS, CDMA, WCDMA, LTE (Long Term Evolution), or 5G radio module. The wired interface may comprise such as universal serial bus (USB) or National Marine Electronics Association (NMEA) 0183/2000 standard for example. The communication interface module 950 may be integrated into the remote computer apparatus 760, or into an adapter, card or the like that may be inserted into a suitable slot or port of the remote computer apparatus 760. The communication interface module 950 may support one radio interface technology or a plurality of technologies. The computer apparatus 760 may comprise a plurality of communication interface modules 950. Sensor data items from engines 291 , 770- 772 may be downloaded from the server apparatus 730 and stored to the remote computer apparatus 760.

[00191] A skilled person appreciates that in addition to elements shown in Fig. 9, the computer apparatus 760 may comprise other elements, such as microphones, extra displays, and additional circuitry such as input/output (I/O) circuitry, memory chips, application-specific integrated circuits (ASIC), processing circuitry for specific purposes such as source coding/decoding circuitry, channel coding/decoding circuitry, ciphering/deciphering circuitry, and the like. Additionally, the computer apparatus 760 may comprise a disposable or rechargeable battery (not shown) for powering when external power if external power supply is not available.

[00192] Fig. 10 shows a schematic diagram of an exemplary reference engine related data items for determining anomalities in accordance with an example embodiment.

[00193] First, from a plurality of candidate reference engines 770-772 at least one reference engine 770 and related engine data and operational data is selected.

[00194] In an embodiment, selection information may be received for a plurality of reference engines from an operator of the system or defined automatically based on engine type identifiers, for example. The reference engine profile data 782 may be generated by determining reference engine parameters 775 of the plurality of reference engines based on the selection information.

[00195] At least one reference engine 770-772 is configured to generate the reference engine profile data 782 by determining reference engine parameters 775 of the reference engine 770-772. The reference engine parameters 775 may be detected using at least one sensor either integrated to the engine 770 or external to the engine 770. The reference engine profile data 782 may be generated based on the reference engine parameters that are combined as reference engine sensor data 783 from at least one engine 770. The reference engine parameters may relate to different operation conditions of the reference engine and the operational data may be maintained as reference engine profile data 782.

[00196] Reference engine 770-772 related measurements, data collection and transceiving may be carried out by a reference engine data apparatus 780. A reference model 784 is generated by associating the reference engine profile data 782 with the reference engine sensor data 783.

[00197] In an embodiment, reference model data of the reference model may be maintained at a server apparatus, and dynamically updating the reference model data over network 750 in response to receiving reference engine profile data 782 or reference engine sensor data 783.

[00198] Fig. 1 1 shows a schematic picture of an anomaly detection model (ADM) 400 and related information flows according to an example embodiment.

[00199] Elements 1 120-1 180 may have alternative ways to connect with each other and Fig. 1 1 only shows one example embodiment. Furthermore, only connections that may relate somehow to anomaly detection model (ADM) 400 are illustrated. For example, environmental information 1 140 may also be used for route planning and thus for the route plan information 1 120 but direct connection between blocks 1 120 and 1 140 is not shown for simplifying the Fig. 1 1 .

[00200] The anomaly detection model (ADM) 400 can be configured to operate as a stand-alone solution or as an integrated part of the data management system of the marine vessel. The anomaly detection model (ADM) 400 enables automation and further enables a higher degree of autonomous operation on board marine vessels and paves the way for data management for autonomous marine vessels.

[00201] In an embodiment, the anomaly detection model (ADM) 400 is interfaced with the navigation system, automation system, power management system and sub-systems like engines and generators, as shown in Fig. 1 , for example. The anomaly detection model (ADM) 400 may further be configured to receive and manage information about the health status of sub-systems directly or through the power management and automation systems. The anomaly detection model (ADM) 400 can generate tasks and/or instructions for the automation and power management systems based on input data, such as sensor data from the engine of the marine vessel.

[00202] The anomaly detection model (ADM) 400 is arranged to receive characteristic information 1 130 representing at least one operating characteristic of the marine vessel. The operating characteristic information 1 130 may comprise at least one of the following: sensor data 124, information on currently active propulsion system; status information of energy generation sub-system; and status information of energy storage sub-system, such as a battery system.

[00203] The anomaly detection model (ADM) 400 may further be arranged to receive route plan information 1 120 including information like weather forecasts, navigation information for the dedicated route, waypoint information for the dedicated route, emission restricted areas, environmental restrictions and other relevant information. The route plan information 1 120 may be received from the navigation system of the marine vessel system or the route plan information 1 120 may be generated by the control apparatus 120. The route plan information 1 120 may comprise at least one of the following: navigation information; and environmental information. The navigation information may comprise at least one of the following: destination information of the dedicated route; remaining travel time of the dedicated route; remaining distance of the dedicated route; navigation information for the dedicated route; waypoint information for the dedicated route; emission restricted area information of the dedicated route; and environmental restriction information of the dedicated route.

[00204] Energy consumption information 1 160 associated to the dedicated route may be determined using the route plan information 1 120. The energy consumption information 1 160 relates to predicted energy consumption of at least one of the following: hotel load of the marine vessel, at least one propulsion device of the marine vessel, and automation system of the marine vessel. The hotel load may represent load relating to at least one of lighting, heating, ventilation and fresh water generation during the dedicated voyage. Thus, hotel load may relate to any electrical load caused by all systems on a vehicle (especially a marine vessel) other than propulsion. Energy consumption information 1 160 may comprise planned energy consumption in relation to different tasks and health status information and availability of the vessel systems during the voyage and used as an input for the anomaly detection model (ADM) 400. The energy consumption information 1 160 may be used as input by the anomaly detection model (ADM) 400.

[00205] In an embodiment, the anomaly detection model (ADM) 400 may be configured to automate interaction between navigational route planning and service planning. Such operation may include scheduling of service actions in view of the planned route.

[00206] In an embodiment, the control apparatus 120 (see e.g. Fig. 1 ) may be configured to determine a task relating to the route plan information 1 120 automatically based on the anomaly detection model (ADM) 400. Thus, the route plan information 1 120 that is determined for a dedicated route, may be dynamically adjusted automatically using the anomaly detection model (ADM) 400.

[00207] In an embodiment, the control apparatus 120 (see e.g. Fig. 1 ) may be configured to dynamically adjust navigation information of the route plan information. Furthermore, the control apparatus may be configured to dynamically adjust navigation information for the dedicated route, and, for example, dynamically adjusting waypoint information for the dedicated route. [00208] In an embodiment, the control apparatus 120 (see e.g. Fig. 1 ) may be configured to dynamically adjust destination information, service plan information or remaining travel time of the dedicated route.

[00209] The anomaly detection model (ADM) 400 may further be arranged to receive environmental information 1 140 separate or in addition to possible environmental information included in the route plan information 1 120. The environmental information 1 140 may represent at least one current environmental characteristic of the marine vessel, such as weather information; wind information; air pressure information; ice information; wave height, frequency or direction information; tidal data; current information; water temperature information; water saline level information; and roll or pitch information.

[00210] In an embodiment, the control apparatus 120 (see e.g. Fig. 1 ) is configured to schedule services or adjust engine operation parameters using a determined task automatically based on the anomaly detection model (ADM) 400.

[00211] In an embodiment, the anomaly detection model (ADM) 400 may generate at least one task for controlling an automation element of the automation system 1 150 of the marine vessel automatically based on the anomaly detection model (ADM) 400 and control the associated automation element of the marine vessel automation system 1 150 based on the determined task.

[00212] In an embodiment, the automation element of the marine vessel automation system 1 150 is configured to control at least one of the following: power management system of the marine vessel and navigation system of the marine vessel. The automation element may be configured to control, for example, power management system of the marine vessel for at least one of the following: schedule for adjusting load or operating set point of the engine, schedule for changing propulsion power source; schedule for changing used fuel; schedule for activating exhaust gas cleaning system (e.g. SOx cleaner and/or SCR for NOx cleaner); and schedule for operating HVAC (Heating, Ventilation and Air Conditioning). The automation element may also be configured to control, for example, power management system of the marine vessel for schedule for changing operating modes of combustion engine(s) or other power sources.

[00213] In an embodiment, a control apparatus 120, 730 (see e.g. Fig. 1 and 7) processing the anomaly detection model (ADM) 400 is configured to receive confirmation of the task being performed from an automation element 350 being controlled by the task, and to update the anomaly detection model (ADM) 400 based on the route plan information, the energy consumption information and the characteristic information in response to the received confirmation.

[00214] In an embodiment, the anomaly detection model (ADM) 400 may generate automation plan (AP) 1 170 and utilize the automation plan (AP) 1 170 for determining control tasks within the marine vessel automatically based on the anomaly detection model (ADM) 400.

[00215] While cruising and performing transit during the voyage, the anomaly detection model (ADM) 400 maintains a dynamic and up-to-date situational awareness in relation to the executed route (navigation) and energy route plan and the continued health status from all energy consumers, producers and data system elements. If the situation changes and a system health status changes, the anomaly detection model (ADM) 400 may be configured to update the automation plan 1 170 including tasks and automatically notifying the marine vessel data system to modify the marine vessel related information, such as route plan 1 120, accordingly.

[00216] Because the anomaly detection model (ADM) 400 has access to information about optimal operation conditions of the sub-systems, the model can help to avoid stressing engines, generators and other subsystems, as the safety limit parameters are known to the anomaly detection model (ADM) 400. An operating mode may be used wherein only confirmed request from the operator is needed, and the anomaly detection model (ADM) 400 may allow running sub systems outside the optimal operation conditions.

[00217] The automation plan 1 170 information can be provided in a first mode as a schedule made available to the engineers to follow. The engineers may perform the scheduled tasks for the automation system 1 150 based on the plan 1 170. In a second mode, the automation plan 1 170 may be embedded in the main display of the engine control room and the power management system, for example. The automation system may be further configured to provide an integrated guidance tool to prompt the operator when a task should take place and by acknowledgement from the operator enable and perform the task and end the task when performed. A third mode allows a fully automated solution, where the operator may only be informed about the automation plan 1 170 or the tasks determined by the anomaly detection model (ADM) 400. Optionally, current status of the model and next steps may be informed to the operator but the anomaly detection model (ADM) 400 is configured to control automation elements automatically. In such embodiment the automation plan 1 170 may be optional.

[00218] It is possible to override the anomaly detection model (ADM) 400 by changing it to standby mode and allowing a manual operation of the power management and automation systems and the sub-systems. At the third mode, the anomaly detection model (ADM) 400 can operate autonomously together with the navigation system and all the sub-systems. Instead of notifying the operator, the anomaly detection model (ADM) 400 may log (e.g. using the automation plan 1 170) the activities and events and will only request assistance from the mission controller or a human operator in case the anomaly detection model (ADM) 400 is facing a situation it cannot handle or it is not available for operation.

[00219] In an embodiment, the automation plan 1 170 may also comprise automatic information being sent to port authority system for approaching arrival. The information being sent may relate to, for example, estimate of services needed, or power and/or energy required while staying at berth. By doing that the harbor authorities can make a better estimate the spare parts and labor, and how much electricity they need to buy on the spot market for the vessel about to be docked.

[00220] In an embodiment, the anomaly detection model (ADM) 400 is configured to receive input from an operator (USR) 1 180 either on-board the vessel or remote at other vessel or ground station, for example. In certain p re -defined operating modes or tasks, it may be required that operator acknowledgement is received from the operator (USR) 1 180 for the detected anomaly, for adjusting other inputs for the model, for determined task the anomaly detection model (ADM) 400 before controlling an automation element of the marine vessel based on the determined task in response to the received operator acknowledgement. The user input 1 180 may be provided by an insight application discussed earlier.

[00221] In an embodiment, the anomaly detection model (ADM) 400 may be updated in real-time based on the sensor data 124, other characteristic information 1 130 and user input 1 180, for example.

[00222] In an embodiment, in autonomous vessel operation mode, automatic route planning may be executed to provide the route plan information 1 120 for a safe and optimized route taking into account planned destination and ETA, up to date chart data from the ECDIS, draft of the vessel, predicted environmental conditions (ocean current, wind and sea state) as well as status information's from the power and propulsion plant. Furthermore, a contingency plan to stop the vessel safely in case of emergency is generated along the route for every leg or even leg segment, for example. The approval mechanisms of the route plan 1 120 may vary depending on autonomy level in use, authority rule sets and customer specifications. Once the route plan is activated and being executed by the Integrated Navigation / DP System (Trackpilot, Speedpilot, DP), the control system is permanently monitoring and adapting the route execution with regards to track- and schedule keeping) if necessary. Reasons for adaptation can be, for example: new destination and/or new ETA, differences between predicted and real environmental conditions, collision avoidance maneuvers, and unexpected changes in the propulsion / power plant (i.e. unforeseen equipment failure).

[00223] Fig. 12 shows a flow diagram showing operations in accordance with an example embodiment of the invention. In step 1200, the method for detecting an anomaly in a marine vessel data system is started. In step 1210, historical data is determined based on sensor data of the marine vessel data system. In step 1220, the historical data is provided as input to a neural network. In step 1230, predicted sensor data is generated as output by the neural network. In step 1240, the predicted sensor data is combined with actual data to provide error data, wherein the actual data is determined from the sensor data. In step 1250, engine operational data is received. In step 1260, level of data deviation is determined based on the engine operational data. In step 1270, the anomaly is detected based on the error data and the level of data deviation. The method is ended in step 1280.

[00224] In an embodiment, the level of data deviation comprises an error threshold value, and the method further comprises normalizing error values of the error data and detecting the anomaly in response to a normalized error value of the error data exceeding the error threshold value.

[00225] One example option would be to use a threshold value, where if the error signal is higher than the threshold value, a notification task is triggered (equipment expert to be notified, for example). [00226] In an embodiment, error values of the error data may be normalized, and the method further comprises comparing an amplitude of an error value with the error threshold value and detecting the anomaly in response to the amplitude of the error value being greater than the error threshold value.

[00227] In an embodiment, the level of data deviation may comprise a plurality of error threshold values associated with at least one of the following: a sensor generating the sensor data; and engine operational status determined based on the engine operational data.

[00228] Although straightforward, maintaining such thresholds may be cumbersome. The threshold values may need to be set for every sensor, for every equipment on every installation. A better option might be to have some error signal processing logic in place that is data driven, wherein the data itself determines what is an unusual error and what not.

[00229] However, by making a histogram of all error values for an error signal, the distribution will be (close to) normal. The number of standard deviations (s) that an error value is away from the average error value (m), is therefore a good indication for how unusual that error value is. This logic may be used as an indication for anomaly.

[00230] In an embodiment, when using some equipment specific information, the anomaly detection process can be improved further. It turns out, for example, that the normal distribution of error signals for periods where an engine is running, is quite different than when the engine is off; and thus, the anomaly detection model is better or worse in making a reconstruction of the data depending on the engine state. Thus, an engine state-dependent error score processing logic is applied . If the engine is on, it is determined how many s_oh the error value is away from m_oh. If the engine is off, the same can be done for o_off and m_o1T The result is the same unitless number that can be used as indication of unusual data.

[00231] Similar concept can be used for other things than engine state, like the used fuel, the configuration in which multiple engines are running, or environmental conditions like air temperature or (for ships), wave height or route information.

[00232] Fig. 13 shows a schematic picture of determining level of data deviation 1300 based on first engine operational data according to an example embodiment. [00233] Historical data is determined based on sensor data of the marine vessel data system as disclosed earlier in Fig. 4, for example. Furthermore, the historical data is provided as input to a neural network and predicted sensor data is generated as output by the neural network. The predicted sensor data may then be combined with actual data to provide error data, wherein the actual data is determined from the sensor data.

[00234] In an embodiment, engine operational data is received. For example, engine operational status, such as engine off/on information, may be determined based on the engine operational data.

[00235] In Fig. 13, level of data deviation 1300 is determined based on the engine operational data for a first engine operational status (e.g. engine on). Horizontal axis 1310 defines error value ranges 1330-1331 for the error data (see item 470 of Fig. 4, for example) provided. Vertical axis 1320 defines number of occurrences for different error value ranges 1330-1331 for the error data.

[00236] As can be seen in the defined level of data deviation 1300, there are error values occurring in error value ranges 1340-1341 that do not occur very often and indicates potential anomalous data.

[00237] In an embodiment, error range 1330 may indicate one standard deviation from a first mean error value (MEV1 ), error range 1331 may indicate two standard deviations from the first mean error value (MEV1 ), and error range 1340 may indicate three or four standard deviations from the first mean error value (MEV1 ), for example.

[00238] Fig. 14 shows a schematic picture of determining level of data deviation 1400 based on second engine operational data according to an example embodiment.

[00239] In Fig. 14, level of data deviation 1400 is determined based on the engine operational data for a second engine operational status (e.g. engine off). Horizontal axis 1310 defines error value ranges 1430-1431 for the error data (see item 470 of Fig. 4, for example) provided. Vertical axis 1320 defines number of occurrences for different error value ranges 1430-1431 for the error data.

[00240] As can be seen in the defined level of data deviation 1400, there are error values occurring in error value ranges 1440-1441 that do not occur very often and indicates potential anomalous data. [00241] In an embodiment, error range 1430 may indicate one standard deviation from a second mean error value (MEV2), error range 1431 may indicate two standard deviations from the second mean error value (MEV2), and error range 1440 may indicate three standard deviations from the first mean error value (MEV2).

[00242] It is possible to keep track (even for each sensor) of what error values take place more often, and even detected when the error value for each sensor is unusual. This is advanced insight, but to determine if some data is marked anomalous does not directly depend on the difference between the expected and actual data as can be seen from Figs. 13-14 where error value ranges are illustrated in view of standard deviation(s) of the mean value(s) of the error range values.

[00243] As can be seen when comparing the level of data deviation 1300 of Fig. 13 and the level of data deviation 1400 of Fig. 14, the spread in error data values 1330-1341 , 1430-1441 differ strongly depending on the engine operational status of Fig. 13 (e.g. engine on) and Fig. 14 (e.g. engine off).

[00244] In an embodiment, engine operational status information may be determined based on the engine operational data; and the level of data deviation associated to an engine operational status is determined using the engine operational status information. Determining the level of data deviation may comprises configuration of the error data according to a standard deviation function.

[00245] In an embodiment, a first mean error value (MEV1 ) may be defined for a first engine operational status and a second mean error value (MEV2) for a second engine operational status, wherein the first and second mean error values are different, and the anomaly may be detected in the first engine operation status using the first mean error value and in the second engine operation status using the second mean error value.

[00246] In an embodiment, the anomaly in the first engine operation status is detected using at least one of the following criteria: two standard deviations from the first mean error value; three standard deviations from the first mean error value; and four standard deviations from the first mean error value.

[00247] Correspondingly, the anomaly in the second engine operation status may be detected using at least one of the following criteria: two standard deviations from the second mean error value; three standard deviations from the second mean error value; and four standard deviations from the second mean error value. [00248] In an embodiment, the level of data deviation associated to the engine operational status may be configured to define a histogram of error range values. The histogram may be represented as data deviations 1300, 1400 in Fig. 13-14.

[00249] In an embodiment, the engine operational data may comprise at least one of the following: engine status information indicating engine on/off status; used fuel information of the engine; operating hours information; running hours information since last service; and number of engine starts.

[00250] So, by taking the engine operational state into account while determining if an error value is abnormal or not, even better detecting of abnormal engine behavior is achieved. Different operational status input may be used either separately or combined, such as used fuel, that will affect these histograms and can be used as an embodiment.

[00251] Without in any way limiting the scope, interpretation, or application of the claims appearing below, a technical effect of one or more of the example embodiments disclosed herein is an improved system for a control apparatus or an engine apparatus.

[00252] A technical effect of one or more of the example embodiments disclosed herein is that marine vessel performance is improved. A technical effect of one or more of the example embodiments disclosed herein is that fuel efficiency of an engine is improved. A further technical effect of one or more of the example embodiments disclosed herein is that operational efficiency of an engine apparatus, is improved. Another technical effect of one or more of the example embodiments disclosed herein is that possible faults or malfunctions are detected early enough to avoid any major break of marine vessel elements.

[00253] Although various aspects of the invention are set out in the independent claims, other aspects of the invention comprise other combinations of features from the described embodiments and/or the dependent claims with the features of the independent claims, and not solely the combinations explicitly set out in the claims.

[00254] It is also noted herein that while the foregoing describes example embodiments of the invention, these descriptions should not be viewed in a limiting sense. Rather, there are several variations and modifications that may be made without departing from the scope of the present invention as defined in the appended claims.