EARLY WARNING SYSTEM FOR LOCOMOTIVE BEARINGS FAILURES

Information

  • Patent Application
  • 20170183016
  • Publication Number
    20170183016
  • Date Filed
    December 28, 2015
    8 years ago
  • Date Published
    June 29, 2017
    7 years ago
Abstract
Aspects of the present disclosure involve a system and a method for predicting locomotive engine bearing failures (e.g., main bearing failures). In example embodiments, the method may access locomotive data about a particular locomotive engine, and generate a set of element concentration trajectories therefrom. Each element concentration trajectory includes a measure of element concentrations in the locomotive engine's oil over a period of time. The method further includes determining a health score of the locomotive engine based on a comparison of the set of element concentrations with a set of baseline element concentration trajectories that are representative of element concentrations of a group of locomotive engines' oil over the period of time. The health score provides a measure of the likelihood of bearing failure in the particular locomotive engine. A message regarding the likelihood of bearing failure may then be provided.
Description
TECHNICAL FIELD

The subject matter disclosed herein relates generally to locomotive engines. In particular, example embodiments relate to systems and methods for predicting bearing failures in locomotive engines.


BACKGROUND

A locomotive engine's main bearings bear the main load of the engine's crank-shaft and provide a smooth operating surface. Damage or rapid wear of main bearings due to factors such as manufacturing defects, incorrect installation, oil contamination, or excessive debris can ultimately lead to early failure of the main bearings, which can be costly to repair and cause locomotive service disruptions. Because visual inspection of main bearings is costly and frequently inaccurate, a conventional approach used to assess a bearings health is to monitor concentration of wear metal, contaminants, and debris by analyzing the engine oil at routine intervals (e.g., every two weeks) for each locomotive. This conventional approach involves analyzing element concentration levels (e.g., lead, nickel, potassium, and sodium) and raising an alarm if individual element concentrations exceed set thresholds. Frequently, the concentration levels reported are noisy, and often provide an incorrect depiction of actual element content in the oil because engine oil is consumed over time and concentration levels can be elevated artificially.





BRIEF DESCRIPTION OF THE DRAWINGS

Various ones of the appended drawings merely illustrate example embodiments of the present disclosure and are not intended to limit its scope to the illustrated embodiments. On the contrary, these examples are intended to cover alternatives, modifications, and equivalents as may be included within the scope of the disclosure.



FIG. 1 is a block diagram illustrating various functional components of a locomotive bearing failure warning system, consistent with some example embodiments.



FIG. 2 is a diagrammatic representation of a machine in the example form of a computer system within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein may be executed.



FIG. 3 is a flow chart illustrating a method for creating locomotive data records using data from multiple sources, according to some example embodiments.



FIG. 4 is a flow chart illustrating a method for providing a warning of a potential locomotive bearing failure, according to some example embodiments.



FIG. 5 is a flow chart illustrating a method for calculating a health score of a locomotive engine bearing, according to some example embodiments.



FIG. 6 is a flow chart illustrating a method for displaying a ranked list of locomotive engine bearings, according to some example embodiments.



FIG. 7 is an interface diagram illustrating a user interface for presenting graphical representations of concentration trajectories and health scores, according to some example embodiments.





DETAILED DESCRIPTION

Reference will now be made in detail to specific example embodiments for carrying out the inventive subject matter of the present disclosure. In the following description, specific details are set forth in order to provide a thorough understanding of the subject matter. It shall be appreciated that embodiments may be practiced without some or all of these specific details.


Aspects of the present disclosure involve a system and method for predicting locomotive engine bearing failures and providing alarms for predicted failures. In example embodiments, the operation of the system may be described in three phases: (1) data collection; (2) trajectory creation; and (3) health scoring. During the data collection phase, the system collects and aggregates information about locomotives from various sources assessable over a network. The data includes, for example, oil change reports, reports of bearing failures, reports of bearing change-outs, and maintenance reports.


During the trajectory creation phase, the system generates element concentration trajectories for each bearing from the aggregated information. Each element concentration trajectory includes concentrations (e.g., in parts per million (PPM)) of elements (e.g., lead, nickel, potassium, and sodium) in a particular locomotive engine's oil over a period of time (e.g., the lifetime of the engine). During the trajectory creation phase, the system also generates baseline concentration trajectories using an aggregate of element concentration trajectories from a large collection of locomotive engines. The system may select a portion of the aggregated element concentration trajectories (e.g., 90th percentile) for the baseline element concentration trajectories. In this way, each baseline element concentration trajectory provides representative (e.g., typical) concentration measurements of the collection of locomotive engines over the period of time.


During the health scoring phase, the system compares individual locomotive engine element concentration trajectories with the baseline element concentration trajectories to create a set of comparison features including, for example, age (e.g., measured in MWH), instantaneous values, global averages, local averages, trends, and area above baseline. The system then compares the set of comparison features of the individual locomotive engine to a set of comparison features of failed bearings, and calculates a health score for the locomotive engine based on the degree of similarity of the two sets of comparison features. The health score provides a quantified measure of the likelihood of bearing failure (e.g., main bearing failure) in a locomotive engine over a given time horizon. If the health score is above a certain threshold, the system provides a failure alarm message regarding the potential for failure of the bearing. By providing failure alarms before an actual failure, the system can aid railroads avoiding costly mission failures and service disruptions. Additionally, the system may also employ a ranking scheme to help prioritize locomotives for inspection or bearing replacement.



FIG. 1 is a block diagram illustrating various functional components of a bearing failure warning system 100, consistent with some embodiments. To avoid obscuring the inventive subject matter with unnecessary detail, various functional components (e.g., modules and engines) that are not germane to conveying an understanding of the inventive subject matter have been omitted from FIG. 1. However, a skilled artisan will readily recognize that various additional functional components may be supported by the bearing failure warning system 100 to facilitate additional functionality that is not specifically described herein.


As is understood by skilled artisans in the relevant computer arts, each functional component (e.g., module) illustrated in FIG. 1 may be implemented using hardware (e.g., a processor of a machine) or a combination of logic (e.g., executable software instructions) and hardware (e.g., memory and processor of a machine) for executing the logic. Furthermore, the various functional components depicted in FIG. 1 may reside on a single computer (e.g., a laptop), or may be distributed across several computers in various arrangements such as cloud-based architectures. Moreover, it shall be appreciated that while the functional components (e.g., modules) of FIG. 1 are discussed in the singular sense, in other embodiments, multiple instances of one or more of the modules may be employed.


As illustrated in FIG. 1, the bearing failure warning system 100 includes a user interface module 102, a data collection module 104, a trajectory creation module 106, a health scoring module 108, and a ranking module 110, all configured to be in communication with each other (e.g., via a bus, a shared memory, a network, or a switch) so as to allow information to be passed between the functional components or so as to allow the functional components to share and access common data. Additionally, each of the functional components illustrated in FIG. 1 may access and retrieve data from one or more networked databases.


As shown, the bearing failure warning system 100 is generally based on three-layer software architecture, consisting of a front-end layer, a logic layer, and a data layer, although the inventive subject matter is by no means limited to such architecture. The presentation layer consists of the user interface module 102 that is responsible for presenting information and handling user interactions related to the functions of the bearing failure warning system 100. Accordingly, the interface module 102 may provide a number of interfaces to users (e.g., interfaces that are presented on a computing system operated by the user) that allow the users to view information related to locomotive engine bearings. For example, the interface module 102 provides user interfaces for presenting graphical representations of element concentration trajectories of locomotive engine bearings over a given time period. As another example, the user interfaces provided by the interface module 102 may also include a display of health scores for locomotive engine bearings along with applicable alarm messages related thereto. As yet another example, the interface module 102 also provides user interfaces for presenting an ordered list of locomotive engines to aid users in prioritizing locomotives for inspection or bearing replacement.


The interface module 102 may further transmit messages to user devices regarding information about locomotive engines. Accordingly, the interface module 102 may include various communication modules (not shown) that utilize any one of a number of message delivery networks and platforms to deliver messages such as, for example, electronic mail (email), push notifications, instant message (IM), Short Message Service (SMS), text, facsimile, or voice (e.g., Voice over IP (VoIP)) messages.


The application layer of the bearing failure warning system 100 includes the data collection module 104, the trajectory creation module 106, the health scoring module 108, and the ranking module 110. The data collection module 104 is responsible for collecting and aggregating locomotive data from multiple sources. The locomotive data obtained by the data collection module 104 includes information about multiple different locomotives engines, including, for example, oil change records 112, maintenance records 114, bearing failure records 116, and bearing change-out records 118. The data collection module 104 may obtain the locomotive data from one or more network-accessible databases over a network (e.g., the Internet or an Intranet). The network-accessible databases may be internal or external to the bearing failure warning system 100.


Individual oil change records 112 include an identifier of a locomotive engine, an oil change event, a date of the oil change event, and a set of measurement values (e.g., in PPM) of element concentrations (e.g. lead, copper, silicon, nickel, potassium, and sodium) in locomotive engine oil at the time of the oil change event. Individual maintenance records 114 include an identifier of a locomotive engine, a description of a maintenance event (e.g., routine maintenance performed on a locomotive engine), and a date of the maintenance event. Individual bearing failure records 116 include an identifier of a locomotive engine and a date of a failed bearing in the identified locomotive engine. Individual bearing change-out records 118 include an identifier of a locomotive engine and a date of a bearing replacement in the identified locomotive engine.


The data collection module 104 creates a locomotive data record for each locomotive engine identifier included in the locomotive data. The locomotive data records created by the data collection module 104 collectively compose locomotive data records 120. Each locomotive data record included in the locomotive data records 120 is a data structure that includes a locomotive engine identifier, and information particular to the locomotive engine including oil change events, maintenance events, bearing failures, or bearing replacements. Each locomotive record further includes indications of oil change intervals for the locomotive engine. In generating each locomotive data record included in locomotive data records 120, the data collection module 104 also removes any outlier values (e.g. impossible values) from the corresponding locomotive data.


The trajectory creation module 106 is responsible for creating element concentration trajectories for each locomotive data record included in the locomotive data records 120. The trajectory creation module 106 may create an element concentration trajectory for each element that has a corresponding element concentration measurement in an oil change record associated with the locomotive engine. For example, the trajectory creation module may create an element concentration trajectory for lead, copper, chromium, potassium, and nickel for each locomotive data record in the locomotive data records 120.


Each element concentration trajectory includes concentrations (e.g. measured in parts per million (ppm)) of the corresponding element in a particular locomotive engines oil over a period of time (e.g., the period of time spanning the first oil change event to the most recent oil change event). The trajectory creation module 106 may generate element concentration trajectories using intra oil change regression. For example, the trajectory creation module 106 uses linear regression to estimate a local concentration rates from concentration measurements within any two consecutive oil changes included in the locomotive data record. These local concentration rates may be accumulated across all consecutive change intervals to obtain a piecewise linear approximation of element concentrations over time. The trajectory creation module 106 may further apply smoothing techniques to the piecewise linear approximation to filter accumulated concentration levels across oil change intervals to reduce noise, thereby obtaining an empirical cumulative element concentration trajectory Each of the element concentration trajectories created by the trajectory creation module 106 are stored in the corresponding locomotive data record.


The trajectory creation module 106 is also responsible for creating baseline element trajectories for each element. In doing so, the trajectory creation module 106 utilizes the element concentration trajectories created for each of the locomotives in the locomotive data records 120 to establish a population level baseline concentration trajectory for each element. More specifically, the trajectory creation module 106 creates each baseline element concentration trajectory by aggregating each element concentration trajectory of a particular element included in the locomotive data records 120, and selecting a representative portion of the aggregate trajectories as the baseline trajectory (e.g., the 90th percentile). For example, the trajectory creation module 106 may select a portion of the aggregated element concentration trajectory that demarcates normal cases from extreme cases as determined by a statistical mean of concentration values. In this way, each baseline element concentration trajectory provides representative concentration measurements of the locomotives in the locomotive data records 120 over the period of time.


The health scoring module 108 is responsible for determining a health score for each locomotive engine with a locomotive data record included in locomotive data records 120. The health scoring module 108 determines the health score of a particular locomotive engine based on a comparison of element concentration trajectories of the particular locomotive engine to the corresponding baseline element concentration trajectories. More specifically, in comparing the element concentration trajectories of a particular locomotive engine to the baseline element concentration trajectories, the trajectory creation module creates a set of comparison features. The set of comparison features may, for example, include locomotive engine age (e.g., measured in MWH), instantaneous values, global averages, local averages, trends, and area above baseline trajectories. The health scoring module 108 uses machine learning techniques to score the set of comparison features based on a collection of historical locomotive data. For example, in some embodiments, the health scoring module 108 may utilize a one class support vector machine (SVM) provided with a training set of comparison features generated from historical locomotive data.


The health scoring module 108 utilizes the SVM to construct a model including a representation of the training set as a collection of points in space (e.g., coordinates in a Cartesian coordinate system) that collectively define a region in the space. For example, in some embodiments, the training set of comparison features is generated by comparing baseline element concentration trajectories with element concentration trajectories of locomotive engines that have previously experienced a bearing failure. In these embodiments, the one class SVM may be utilized to build a separating hyperplane in space that characterizes a region of failure. As another example, in some embodiments, the training set of comparison features is generated by comparing baseline element concentration trajectories with element concentration trajectories of locomotive engines that never experienced a bearing failure. In these embodiments, the one class SVM may be utilized to build a separating hyperplane in space that characterizes a region of normality.


The health scoring module 108 utilizes the model created by the SVM to map a set of comparison features of a particular locomotive engine as an additional point in the space defined by the model. Based on the distance of the mapped set of comparison features to the region defined by the training set, the health scoring module 108 calculates a value that corresponds to the health score of the particular locomotive engine. The health scores determined by the health scoring module 108 provide a measure of the likelihood of a bearing failure (e.g., main bearing failure)in the respective locomotive engines. As an example, in embodiments in which the training set defines a region of failure in the space, the health score calculated by the health scoring module 108 decreases as the mapped set of comparison features gets closer to the region defined by the training set, thus indicating a higher likelihood of bearing failure. As another example, in embodiments in which the training set defines a region of normality in the space, the health score calculated by the health scoring module 108 increases as the mapped set of comparison features gets closer to the region defined by the training set, thus indicating a lower likelihood of bearing failure.


The ranking module 110 is responsible for ranking each of the locomotive engines included in locomotive data records 120. The ranking scheme used by the ranking module 110 may include flexible weighted variables such as age, alarms per year, total number of alarms, max health score, last alarm date, number of alarm in the last six months, maximum health score over the last six months, number of reports in the last six months, day since last alarm, or oil related recommended actions and faults. The ranking assigned to each locomotive engine by the ranking module 110 may be used to display each of the locomotive engines in an ordered list to help users prioritize locomotive engines for inspection or bearing replacement.


The data layer of the bearing failure warning system 100 includes the oil change records 112, the maintenance records 114, the bearing failure records 116, the bearing change-out records 118, and the locomotive data records 120. The data layer may reside on one or more external or internal databases that may be accessed via a network (e.g., through interaction with appropriate database servers).



FIG. 2 is a block diagram illustrating components of a machine 200, according to some example embodiments, able to read instructions from a machine-readable medium (e.g., a machine-readable storage medium) and perform any one or more of the methodologies discussed herein. Specifically, FIG. 2 shows a diagrammatic representation of the machine 200 in the example form of a computer system, within which instructions 216 (e.g., software, a program, an application, an applet, an app, or other executable code) for causing the machine 200 to perform any one or more of the methodologies discussed herein may be executed. For example, the instructions 216 may transform the general, non-programmed machine into the bearing failure warning system 100, which is a particular machine programmed to carry out the described and illustrated functions in the manner described herein.


The machine 200 may operate as a standalone device or may be coupled (e.g., networked) to other machines. In a networked deployment, the machine 200 may operate in the capacity of a server machine or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. By way of non-limiting example, the machine 200 may comprise or correspond to a server computer, a client computer, a personal computer (PC), a tablet computer, a laptop computer, a netbook, a smart phone, a mobile device, a wearable device (e.g., a smart watch), a network switch, a network bridge, or any machine capable of executing the instructions 216, sequentially or otherwise, that specify actions to be taken by machine 200. Further, while only a single machine 200 is illustrated, the term “machine” shall also be taken to include a collection of machines 200 that individually or jointly execute the instructions 216 to perform any one or more of the methodologies discussed herein.


The machine 200 may include processors 210, memory 230, and input/output (I/O) components 250, which may be configured to communicate with each other such as via a bus 202. In an example embodiment, the processors 210 (e.g., a Central Processing Unit (CPU), a Reduced Instruction Set Computing (RISC) processor, a Complex Instruction Set Computing (CISC) processor, a Graphics Processing Unit (GPU), a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Radio-Frequency Integrated Circuit (RFIC), another processor, or any suitable combination thereof) may include, for example, processor 212 and processor 214 that may execute instructions 216. The term “processor” is intended to include multi-core processor that may comprise two or more independent processors (sometimes referred to as “cores”) that may execute instructions contemporaneously. Although FIG. 2 shows multiple processors, the machine 200 may include a single processor with a single core, a single processor with multiple cores (e.g., a multi-core process), multiple processors with a single core, multiple processors with multiples cores, or any combination thereof.


The memory/storage 230 may include a memory 232, such as a main memory, or other memory storage, and a storage unit 236, both accessible to the processors 210 such as via the bus 202. The storage unit 236 and memory 232 store the instructions 216 embodying any one or more of the methodologies or functions described herein. In some embodiments, the storage unit 236 may also store all or part of the oil change records 112, maintenance records 114, bearing failure records 116, bearing change-out records 118, and locomotive records 120. The instructions 216 may also reside, completely or partially, within the memory 232, within the storage unit 236, within at least one of the processors 210 (e.g., within the processor's cache memory), or any suitable combination thereof, during execution thereof by the machine 200. Accordingly, the memory 232, the storage unit 236, and the memory of processors 210 are examples of machine-readable media.


As used herein, “machine-readable medium” means a device able to store instructions and data temporarily or permanently and may include, but is not be limited to, random-access memory (RAM), read-only memory (ROM), buffer memory, flash memory, optical media, magnetic media, cache memory, other types of storage (e.g., Erasable Programmable Read-Only Memory (EEPROM)) and/or any suitable combination thereof. The term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) able to store instructions 216. The term “machine-readable medium” shall also be taken to include any medium, or combination of multiple media, that is capable of storing instructions (e.g., instructions 216) for execution by a machine (e.g., machine 200), such that the instructions, when executed by one or more processors of the machine 200 (e.g., processors 210), cause the machine 200 to perform any one or more of the methodologies described herein. Accordingly, a “machine-readable medium” refers to a single storage apparatus or device, as well as “cloud-based” storage systems or storage networks that include multiple storage apparatus or devices. The term “machine-readable medium” excludes signals per se.


The I/O components 250 may include a wide variety of components to receive input, provide output, produce output, transmit information, exchange information, capture measurements, and so on. The specific I/O components 250 that are included in a particular machine will depend on the type of machine. For example, portable machines such as mobile phones will likely include a touch input device or other such input mechanisms, while a headless server machine will likely not include such a touch input device. It will be appreciated that the I/O components 250 may include many other components that are not shown in FIG. 2. The I/O components 250 are grouped according to functionality merely for simplifying the following discussion and the grouping is in no way limiting. In various example embodiments, the I/O components 250 may include output components 252 and input components 254. The output components 252 may include visual components (e.g., a display such as a plasma display panel (PDP), a light emitting diode (LED) display, a liquid crystal display (LCD), a projector, or a cathode ray tube (CRT)), acoustic components (e.g., speakers), haptic components (e.g., a vibratory motor, resistance mechanisms), other signal generators, and so forth. The input components 254 may include alphanumeric input components (e.g., a keyboard, a touch screen configured to receive alphanumeric input, a photo-optical keyboard, or other alphanumeric input components), point based input components (e.g., a mouse, a touchpad, a trackball, a joystick, a motion sensor, or other pointing instrument), tactile input components (e.g., a physical button, a touch screen that provides location and/or force of touches or touch gestures, or other tactile input components), audio input components (e.g., a microphone), and the like.


In further example embodiments, the I/O components 250 may include biometric components 256, motion components 258, environmental components 260, or position components 262 among a wide array of other components. For example, the biometric components 256 may include components to detect expressions (e.g., hand expressions, facial expressions, vocal expressions, body gestures, or eye tracking), measure biosignals (e.g., blood pressure, heart rate, body temperature, perspiration, or brain waves), identify a person (e.g., voice identification, retinal identification, facial identification, fingerprint identification, or electroencephalogram based identification), and the like. The motion components 258 may include acceleration sensor components (e.g., accelerometer), gravitation sensor components, rotation sensor components (e.g., gyroscope), and so forth. The environmental components 260 may include, for example, illumination sensor components (e.g., photometer), temperature sensor components (e.g., one or more thermometer that detect ambient temperature), humidity sensor components, pressure sensor components (e.g., barometer), acoustic sensor components (e.g., one or more microphones that detect background noise), proximity sensor components (e.g., infrared sensors that detect nearby objects), gas sensors (e.g., gas detection sensors to detection concentrations of hazardous gases for safety or to measure pollutants in the atmosphere), or other components that may provide indications, measurements, or signals corresponding to a surrounding physical environment. The position components 262 may include location sensor components (e.g., a Global Position System (GPS) receiver component), altitude sensor components (e.g., altimeters or barometers that detect air pressure from which altitude may be derived), orientation sensor components (e.g., magnetometers), and the like.


Communication may be implemented using a wide variety of technologies. The I/O components 250 may include communication components 264 operable to couple the machine 200 to a network 280 or devices 270 via coupling 282 and coupling 272, respectively. For example, the communication components 264 may include a network interface component or other suitable device to interface with the network 280. In further examples, communication components 264 may include wired communication components, wireless communication components, cellular communication components, Near Field Communication (NFC) components, Bluetooth® components (e.g., Bluetooth® Low Energy), Wi-Fi® components, and other communication components to provide communication via other modalities. The devices 270 may be another machine or any of a wide variety of peripheral devices (e.g., a peripheral device coupled via a Universal Serial Bus (USB)).


Moreover, the communication components 264 may detect identifiers or include components operable to detect identifiers. For example, the communication components 264 may include Radio Frequency Identification (RFID) tag reader components, NFC smart tag detection components, optical reader components (e.g., an optical sensor to detect one-dimensional bar codes such as Universal Product Code (UPC) bar code, multi-dimensional bar codes such as Quick Response (QR) code, Aztec code, Data Matrix, Dataglyph, MaxiCode, PDF417, Ultra Code, UCC RSS-2D bar code, and other optical codes), or acoustic detection components (e.g., microphones to identify tagged audio signals). In addition, a variety of information may be derived via the communication components 264, such as, location via Internet Protocol (IP) geo-location, location via Wi-Fi® signal triangulation, location via detecting a NFC beacon signal that may indicate a particular location, and so forth.


In various example embodiments, one or more portions of the network 280 may be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), the Internet, a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a plain old telephone service (POTS) network, a cellular telephone network, a wireless network, a Wi-Fi® network, another type of network, or a combination of two or more such networks. For example, the network 280 or a portion of the network 280 may include a wireless or cellular network and the coupling 282 may be a Code Division Multiple Access (CDMA) connection, a Global System for Mobile communications (GSM) connection, or other type of cellular or wireless coupling. In this example, the coupling 282 may implement any of a variety of types of data transfer technology, such as Single Carrier Radio Transmission Technology (1xRTT), Evolution-Data Optimized (EVDO) technology, General Packet Radio Service (GPRS) technology, Enhanced Data rates for GSM Evolution (EDGE) technology, third Generation Partnership Project (3GPP) including 3G, fourth generation wireless (4G) networks, Universal Mobile Telecommunications System (UMTS), High Speed Packet Access (HSPA), Worldwide Interoperability for Microwave Access (WiMAX), Long Term Evolution (LTE) standard, others defined by various standard setting organizations, other long range protocols, or other data transfer technology.


The instructions 216 may be transmitted or received over the network 280 using a transmission medium via a network interface device (e.g., a network interface component included in the communication components 264) and utilizing any one of a number of well-known transfer protocols (e.g., Hypertext Transfer Protocol (HTTP)). Similarly, the instructions 216 may be transmitted or received using a transmission medium via the coupling 272 (e.g., a peer-to-peer coupling) to devices 270. The term “transmission medium” shall be taken to include any intangible medium that is capable of storing, encoding, or carrying instructions 216 for execution by the machine 200, and includes digital or analog communications signals or other intangible medium to facilitate communication of such software.



FIG. 3 is a flow chart illustrating a method 300 for creating locomotive data records using data from multiple sources, according to some example embodiments. The method 300 may be embodied in computer-readable instructions for execution by a hardware component (e.g., a processor) such that the operations of the method 300 may be performed by the bearing failure warning system 100. In particular, the operations of the method 300 may be performed in part or in whole by the functional components forming the bearing failure warning system 100, accordingly, the method 300 is described below, by way of example with reference thereto. However, it shall be appreciated that the method 300 may be deployed on various other hardware configurations and is not intended to be limited to the bearing failure warning system 100.


At operation 305, the data collection module 104 obtains oil change records 112 from one or more network-accessible databases (e.g., over the network 280). Individual oil change records 112 include a locomotive engine identifier, an oil change event, a date (e.g., including a month, day of the month, year, and time) of the oil change event, and a set of measurement values (e.g., in PPM) of element concentrations in engine oil at the time of the oil change event. For example, oil change records may include measurement values for concentrations of lead, copper, chromium, potassium, and nickel.


At operation 310, the data collection module 104 obtains maintenance records 114 from one or more network-accessible databases (e.g., over the network 280). Individual maintenance records 114 include an identifier of a locomotive engine, a description of a maintenance event (e.g., routine maintenance performed on a locomotive engine), and a date of the maintenance event.


At operation 315, the data collection module obtains bearing failure records 116 from one or more network-accessible databases (e.g., over the network 280). Individual bearing failure records 116 include an identifier of a locomotive engine and a date of a failed bearing in the identified locomotive engine.


At operation 320, the data collection module 104 obtains bearing change-out records 118 from one or more network-accessible databases. The bearing change-out records 118 include records of bearing replacements in locomotive engines. Individual bearing change-out records 118 include an identifier of a locomotive engine and a date of a bearing replacement in the identified locomotive engine.


At operation 325, the data collection module 104 identifies individual locomotive engines included in the obtained oil change records 112, maintenance records 114, bearing failure records 116, and bearing change-out records 118. For each locomotive engine identified, the data collection module 104 creates a locomotive data record in a network-accessible database, at operation 330. Each locomotive data record includes locomotive data comprising pertinent oil change records, maintenance records, bearing failure records, and bearing change-out records.


At operation 335, the data collection module 104 determines an engine age for each locomotive data record. The engine age may be represented by the amount of energy produced by the locomotive engine over its lifetime which may, for example, be measured in MWH. The engine age is stored in the corresponding locomotive data record.


At operation 340, the data collection module 104 determines an oil change interval for each locomotive data record. The data collection module 104 determines individual oil change intervals based on an analysis of oil change events included in the locomotive data record. The data collection module 104 stores the determined oil change interval in the corresponding locomotive data record.



FIG. 4 is a flow chart illustrating a method for providing a warning of a potential locomotive bearing failure, according to some example embodiments. The method 400 may be embodied in computer-readable instructions for execution by a hardware component (e.g., a processor) such that the operations of the method 400 may be performed by the bearing failure warning system 100. In particular, the operations of the method 400 may be performed in part or in whole by the functional components forming the bearing failure warning system 100, accordingly, the method 400 is described below, by way of example with reference thereto. However, it shall be appreciated that the method 400 may be deployed on various other hardware configurations and is not intended to be limited to the bearing failure warning system 100.


At operation 405, the trajectory creation module 106 accesses a locomotive data record for a particular locomotive engine (e.g., from a database on the bearing failure warning system 100). The locomotive data record includes locomotive data about the locomotive engine including, for example, oil change events, sets of element concentration measurements for each oil change event, maintenance records, bearing failure records, and bearing change-out records.


At operation 410, the trajectory creation module 106 creates a set of element concentration trajectories for the particular locomotive engine. The set of element concentration trajectories includes a concentration trajectory for each element included in the set of element concentration measurements included in the locomotive data record. For example, if the locomotive data record includes concentration measurements for lead, copper, chromium, potassium, and nickel, the trajectory creation module 106 creates an element concentration trajectory for lead, copper, chromium, potassium, and nickel. Each element concentration trajectory includes concentrations (e.g., ppm) of the corresponding element in the particular locomotive engine's oil over a period of time (e.g., the period of time spanning the first oil change event to the most recent oil change event).


The trajectory creation module 106 may generate cumulative element concentration trajectories using intra oil change regression. For example, the trajectory creation module 106 uses linear regression to estimate a local concentration rates from concentration measurements within any two consecutive oil changes included in the locomotive data record. These local concentration rates may be accumulated across all consecutive change intervals to obtain a piecewise linear approximation of element concentrations over time. The trajectory creation module 106 may further apply smoothing techniques to the piecewise linear approximation to filter accumulated concentration levels across oil change intervals to reduce noise, thereby obtaining an empirical cumulative element concentration trajectory.


At operation 415, the trajectory creation module 106 creates a set of baseline element concentration trajectories from an aggregate of respective element concentration trajectories of a collection of locomotive engines. The set of baseline element concentration trajectories may include a baseline concentration trajectory for each element found in locomotive engine oil. For example, the trajectory creation module 106 may create element concentration trajectories for each locomotive engine included in locomotive data records 120. In creating the set of baseline element concentration trajectories, the trajectory creation module 106 aggregates the element concentration trajectories for each element to establish a population level baseline. For example, the trajectory creation module 106 may create a population level baseline for each of lead, copper, chromium, potassium, and nickel using an aggregate of corresponding element concentration trajectories included in individual locomotive data records. The trajectory creation module 106 may then select a representative portion of the population level baseline of each element as the baseline concentration trajectory (e.g., a portion of the data that demarcates normal cases from extreme cases) for each element. In this manner, each baseline element concentration trajectory provides a representative (e.g., typical) concentration values for a particular element for the collection of locomotive engines.


At operation 420, the health scoring module 108 calculates a health score for the locomotive engine based on a comparison of the particular locomotive engine's element concentration trajectories (e.g., cumulative element concentration trajectories) with the corresponding baseline element concentration trajectories. The health scoring module 108 may, in some embodiments, employ machine learning techniques to score the set of comparison features based on a collection of historical locomotive data. For example, in some embodiments, the health scoring module 108 may utilize a one class SVM provided with a training set of comparison features generated from historical locomotive data. The scoring of the locomotive engine by the health scoring module 108 may include developing the set of comparison features based on the comparison with the baseline element concentration trajectories and classifying and scoring the set of comparison features using a one class SVM. Further details of the calculation of the health score are discussed below in reference to FIG. 5, according to some example embodiments. At operation 425, the health scoring module 108 updates the locomotive data record with the determined health score of the locomotive engine.


At operation 430, the health scoring module 108 determines whether the health score is above a predefined threshold. The predefined threshold score may be based on historical health score values determined through analysis of historical data records. If at operation 430, the health scoring module 108 determines that the health score is not above the predefined threshold, performance of the method 400 is suspended until an update to the locomotive data occurs (e.g., due to a new oil change report being generated).


If at operation 430, the health scoring module 108 determines that the health score is above the threshold, the interface module 102 provides an alarm message regarding the likelihood of failure of a bearing (e.g., main bearing) in the locomotive engine, at operation 435. The providing of the alarm message may, in some embodiments, include transmitting a message (e.g., an e-mail, a text message, or a push notification) to one or more computing devices of a responsible party. In some other embodiments, the providing of the alarm message may include causing display of a user interface on a computer device (e.g. one of the devices 270) that includes the alarm message regarding the likelihood of bearing failure (e.g., main bearing failure) in the locomotive engine.


The method 400 may be performed on an ongoing basis such that if any portion of the locomotive data record is updated, the method 400 is repeated. In this way, the bearing failure warning system 100 re-calculates the health score for the particular locomotive engine in response to an update to the locomotive data. For example, if a new oil change report is generated based on a new oil change occurring on the locomotive engine, the method 400 will be performed based on the updated oil change data (e.g., new element concentration measurements).



FIG. 5 is a flow chart illustrating a method 500 for calculating a health score of a locomotive engine bearing, according to some example embodiments. Consistent with some embodiments, the operations of the method 500 may be performed as part of the operation 420 of the method 500. The method 500 may be embodied in computer-readable instructions for execution by a hardware component (e.g., a processor) such that the operations of the method 500 may be performed by the bearing failure warning system 100. In particular, the operations of the method 500 may be performed in part or in whole by the functional components forming the bearing failure warning system 100, accordingly, the method 500 is described below, by way of example with reference thereto. However, it shall be appreciated that the method 500 may be deployed on various other hardware configurations and is not intended to be limited to the bearing failure warning system 100.


At operation 505, the health scoring module 108 accesses a previously generated training set of comparison features. The training set of comparison features may be generated by the health scoring module 108 based on a comparison of historical locomotive data with the baseline element concentration trajectories determined by the trajectory creation module 106. The training set of comparison features may, for example, include locomotive engine age (e.g., MWH), instantaneous values, global averages, local averages, trends, and area above baseline trajectories. In some embodiments, the training set of comparison features is generated by comparing baseline element concentration trajectories with element concentration trajectories of locomotive engines that have previously experienced a bearing failure. In other embodiments, the training set of comparison features is generated by comparing baseline element concentration trajectories with element concentration trajectories of locomotive engines that have never experienced a bearing failure.


At operation 510, the health scoring module 108 builds a one class SVM model using the training set. In this way, the health scoring module 108 creates a representation of the training set as points in space (e.g., in a Cartesian coordinate system) forming a region. In instances in which the training set is based on locomotive engines that have experienced bearing failure, the generating of the representation of the training set as points in space may include building a separating hyperplane characterizing a region of failure. In instances in which the train set is based on locomotive engines that have not experienced bearing failure, the generating of the representation of the training set as points in space may include building a separating hyperplane characterizing the region of normality.


At operation 515, the health scoring module 108 generates a set of comparison features for a particular locomotive engine using the element concentration trajectories of the particular locomotive engine. The set of comparison features for the particular locomotive engine may, for example, include age, instantaneous values, global averages, local averages, trends, and area above baseline trajectories, though the set of comparison features may vary depending on locomotive engine type. Accordingly, the generating of the set of comparison features may include determining locomotive engine age, determining instantaneous values, calculating global averages, calculating local averages, determining trends, and determining an area between element concentration trajectories and baseline element concentration trajectories.


In some embodiments, the generating of the set of comparison features may include performing smoothing techniques on the element concentration trajectories, and normalizing the data with respect to age. The normalization of the data may include using a difference in ratio between the actual values of the element concentration trajectories and the baseline values of the baseline element concentration trajectories. In some instances, localized slopes of smoothed concentration trajectories and divergence from the baseline trajectories may be used to generate features. In some instances, the generation of the set of comparison features may be based on domain knowledge (e.g., wear metals, contaminants, and quality indicators).


At operation 520, the health scoring module 108 maps the set of comparison features into the SVM model space. In other words, the health scoring module 108 generates a representation of the set of comparison features as points in the space in which the representations of the training set of comparison features reside.


At operation 525, the health scoring module 108 determines the health score of the locomotive engine based on the mapping of the set of comparison features into the SVM model. More specifically, the health scoring module 108 determines the health score of the locomotive engine based on the distance of the mapped set of comparison features of the particular locomotive engine to the mapped training set of comparison features. The health score provides a measure of the likelihood of a failure of a bearing (e.g., a main bearing) in the particular locomotive engine.


As an example, in embodiments in which the training set defines a region of failure in the space, the distance from the mapped set of comparison features to the region of failure indicates the locomotive engine's similarity to locomotive engines that have experienced bearing failure, and thus, the closer the mapped set of comparison features is to the region of failure the higher the likelihood that the locomotive engine will experience bearing failure. Accordingly, consistent with these embodiments, the health scoring module 108 calculates the health score such that the health score decreases the closer the mapped set of comparison features is to the region of failure. In other words, the health score is directly proportional to the distance from the mapped set of comparison features to the region of failure.


As another example, in embodiments in which the training set defines a region of normality in the space, the distance from the mapped set of comparison features to the region of normality indicates the locomotive engine's similarity to locomotive engines that have not experienced bearing failure, and thus, the closer the mapped set of comparison features is to the region of normality the lower the likelihood that the locomotive engine will experience bearing failure. Accordingly, consistent with these embodiments, the health scoring module 108 calculates the health score such that the health score increases the closer the mapped set of comparison features is to the region of normality. In other words, the health score is inversely proportional to the distance from the mapped set of comparison features to the region of normality.


It shall be appreciated that the method 500 is merely an example of operations that may be included in determining a health score of a locomotive, and the determination of the health score is not limited in application by use of a one class SVM. In other embodiments, other machine learning techniques may be employed. For example, in other embodiments, an SVM with multiple classes of training sets may be employed so as to include consideration of both regions of normality and regions of failure in calculating the health score.



FIG. 6 is a flow chart illustrating a method 600 for displaying a ranked list of locomotive engine bearings, according to some example embodiments. The method 600 may be embodied in computer-readable instructions for execution by a hardware component (e.g., a processor) such that the operations of the method 600 may be performed by the bearing failure warning system 100. In particular, the operations of the method 600 may be performed in part or in whole by the functional components forming the bearing failure warning system 100, accordingly, the method 600 is described below, by way of example with reference thereto. However, it shall be appreciated that the method 600 may be deployed on various other hardware configurations and is not intended to be limited to the bearing failure warning system 100.


At operation 605, the health scoring module 108 calculates health scores for a group of locomotive engines. For example, the health scoring module 108 may calculate a health score for each locomotive engine with a corresponding locomotive data record maintained in a database of the bearing failure warning system 100 (e.g., locomotive data records 120) based on information included therein. Individual health scores provide a measure of likelihood of bearing failure in respective locomotive engines. Further details regarding the calculation of health scores are discussed above in reference to FIG. 5, according to some example embodiments.


At operation 610, the ranking module 110 ranks the group of locomotive engines based in part on the calculated health score. The ranking module 110 may rank the locomotive engines according to a number of weighted or unweighted variables including, for example, engine age, alarms per year, total number of alarms, maximum health score, last alarm date, number of alarms in the last six months, maximum health score in the last six months, number of reports in the last six months, day since last alarm, or oil prescriptions and faults.


At operation 615, the interface module 102 causes display of a user interface including an ordered list of locomotive engine identifiers in which the order is based on the rank determined by the ranking module 110. In this way, the bearing failure warning system 100 helps users prioritize locomotive engines for inspection or bearing replacement. To this end, the user interface may further include one or more indicators or messages regarding the likelihood of bearing failure in any one of the listed locomotive engines.



FIG. 7 is an interface diagram illustrating a user interface 700 for presenting graphical representations of concentration trajectories and health scores, according to some example embodiments. As shown, the user interface 700 includes graphical representations of element concentration trajectories and health scores for multiple locomotive engines, namely locomotive engines 702, 704, 706, and 708, an identifier of each of which is displayed on top of each column of graphical representations. The user interface 700 includes a graphs of element concentration trajectories for lead, copper, chromium, potassium, and nickel for each of the locomotive engines 702, 704, 706, and 708. Each graph further includes a plot of a baseline element trajectory for the corresponding element to provide a visual comparison of the element concentration trajectories of each of the locomotive engines 702, 704, 706, and 708 with the baseline concentration trajectories for each element. For each element trajectory graph displayed in user interface 700, the horizontal or “X” axis corresponds to time, and the vertical or “Y” axis corresponds to concentration levels measured in PPM. Accordingly, each plotted point corresponds to an element concentration level of a particular locomotive engine's oil at a particular time (e.g., a date of an oil change event, which is included in the locomotive data record of each locomotive).


As a representative example, for locomotive engine 702 user interface 700 includes: a graph 710 depicting a lead concentration trajectory 712 and a baseline lead concentration trajectory 714; a graph 716 depicting a copper concentration trajectory 718 and a baseline copper concentration trajectory 720; a graph 722 depicting a chromium concentration trajectory 724 and a baseline chromium concentration trajectory 726; a graph 728 depicting a potassium concentration trajectory 730 and a baseline potassium concentration trajectory 732; and a graph 734 depicting a nickel concentration trajectory 736 and a baseline concentration trajectory 738.


The user interface 700 further includes a graph of health scores for each of the locomotive engines 702, 704, 706, and 708. For each health score graph displayed in user interface 700, the horizontal or “X” axis corresponds to time, and the vertical or “Y” axis corresponds to health score. Accordingly, each plotted point in the health score graphs corresponds to a health score of a particular locomotive engine oil at a particular time. Each health score provides an indication of the likelihood of a bearing failure in a particular locomotive engine at the particular time. Each plotted health score is determined based on a comparison of element concentration trajectories with baseline element concentration trajectories according to the methodologies described herein. Each plotted health score may further include a plot of a threshold score to aid users in visual comparison and assessment of locomotive engine health (e.g., the likelihood that the engine will experience bearing failure). As a representative example, for locomotive engine 704 the user interface 700 includes a graph 740 depicting health scores of the locomotive engine 704 over time and a threshold score 744, which indicates a high likelihood of engine bearing failure. As shown, the graph 740 includes instances in which the health score of the locomotive engine 704 transgresses the threshold score 744, which is an indicator that, in those instances, the locomotive engine 704 had a high likelihood of engine bearing failure.


Modules, Components and Logic

Certain embodiments are described herein as including logic or a number of components, modules, or mechanisms. Modules may constitute either software modules (e.g., code embodied on a machine-readable medium or in a transmission signal) or hardware modules. A hardware module is a tangible unit capable of performing certain operations and may be configured or arranged in a certain manner. In example embodiments, one or more computer systems (e.g., a standalone, client, or server computer system) or one or more hardware modules of a computer system (e.g., a processor or a group of processors) may be configured by software (e.g., an application or application portion) as a hardware module that operates to perform certain operations as described herein.


In various embodiments, a hardware module may be implemented mechanically or electronically. For example, a hardware module may comprise dedicated circuitry or logic that is permanently configured (e.g., as a special-purpose processor, such as a field-programmable gate array (FPGA) or an ASIC) to perform certain operations. A hardware module may also comprise programmable logic or circuitry (e.g., as encompassed within a general-purpose processor or other programmable processor) that is temporarily configured by software to perform certain operations. It will be appreciated that the decision to implement a hardware module mechanically, in dedicated and permanently configured circuitry, or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.


Accordingly, the term “hardware module” should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired) or temporarily configured (e.g., programmed) to operate in a certain manner and/or to perform certain operations described herein. Considering embodiments in which hardware modules are temporarily configured (e.g., programmed), each of the hardware modules need not be configured or instantiated at any one instance in time. For example, where the hardware modules comprise a general-purpose processor configured using software, the general-purpose processor may be configured as respective different hardware modules at different times. Software may accordingly configure a processor, for example, to constitute a particular hardware module at one instance of time and to constitute a different hardware module at a different instance of time.


Hardware modules can provide information to, and receive information from, other hardware modules. Accordingly, the described hardware modules may be regarded as being communicatively coupled. Where multiple of such hardware modules exist contemporaneously, communications may be achieved through signal transmission (e.g., over appropriate circuits and buses that connect the hardware modules). In embodiments in which multiple hardware modules are configured or instantiated at different times, communications between such hardware modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple hardware modules have access. For example, one hardware module may perform an operation and store the output of that operation in a memory device to which it is communicatively coupled. A further hardware module may then, at a later time, access the memory device to retrieve and process the stored output. Hardware modules may also initiate communications with input or output devices, and can operate on a resource (e.g., a collection of information).


The various operations of example methods described herein may be performed, at least partially, by one or more processors that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions. The modules referred to herein may, in some example embodiments, comprise processor-implemented modules.


Similarly, the methods described herein may be at least partially processor-implemented. For example, at least some of the operations of a method may be performed by one or more processors or processor-implemented modules. The performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the processor or processors may be located in a single location (e.g., within a home environment, an office environment, or a server farm), while in other embodiments the processors may be distributed across a number of locations.


The one or more processors may also operate to support performance of the relevant operations in a “cloud computing” environment or as a “software as a service” (SaaS). For example, at least some of the operations may be performed by a group of computers (as examples of machines including processors), with these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., APIs).


Electronic Apparatus and System

Example embodiments may be implemented in digital electronic circuitry, or in computer hardware, firmware, or software, or in combinations of them. Example embodiments may be implemented using a computer program product, for example, a computer program tangibly embodied in an information carrier, for example, in a machine-readable medium for execution by, or to control the operation of, data processing apparatus, for example, a programmable processor, a computer, or multiple computers.


A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a standalone program or as a module, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site, or distributed across multiple sites and interconnected by a communication network.


In example embodiments, operations may be performed by one or more programmable processors executing a computer program to perform functions by operating on input data and generating output. Method operations can also be performed by, and apparatus of example embodiments may be implemented as, special purpose logic circuitry (e.g., an FPGA or an ASIC).


The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In embodiments deploying a programmable computing system, it will be appreciated that both hardware and software architectures merit consideration. Specifically, it will be appreciated that the choice of whether to implement certain functionality in permanently configured hardware (e.g., an ASIC), in temporarily configured hardware (e.g., a combination of software and a programmable processor), or in a combination of permanently and temporarily configured hardware may be a design choice. Below are set out hardware (e.g., machine) and software architectures that may be deployed, in various example embodiments.


Although the embodiments of the present invention have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader scope of the inventive subject matter. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. The accompanying drawings that form a part hereof show by way of illustration, and not of limitation, specific embodiments in which the subject matter may be practiced. The embodiments illustrated are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein. Other embodiments may be used and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. This Detailed Description, therefore, is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled.


Such embodiments of the inventive subject matter may be referred to herein, individually and/or collectively, by the term “invention” merely for convenience and without intending to voluntarily limit the scope of this application to any single invention or inventive concept if more than one is in fact disclosed. Thus, although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent, to those of skill in the art, upon reviewing the above description.


All publications, patents, and patent documents referred to in this document are incorporated by reference herein in their entirety, as though individually incorporated by reference. In the event of inconsistent usages between this document and those documents so incorporated by reference, the usage in the incorporated references should be considered supplementary to that of this document; for irreconcilable inconsistencies, the usage in this document controls.


In this document, the terms “a” or “an” are used, as is common in patent documents, to include one or more than one, independent of any other instances or usages of “at least one” or “one or more.” In this document, the term “or” is used to refer to a nonexclusive or, such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein.” Also, in the following claims, the terms “including” and “comprising” are open-ended; that is, a system, device, article, or process that includes elements in addition to those listed after such a term in a claim are still deemed to fall within the scope of that claim.

Claims
  • 1. A method comprising: accessing locomotive data corresponding to a particular locomotive engine, the locomotive data including one or more sets of element concentration measurements associated with the particular locomotive engine;creating a set of element concentration trajectories for the particular locomotive engine based on the locomotive data, each element concentration trajectory including concentration measurements of a particular element over a period of time;creating a set of baseline element concentration trajectories using information about a plurality of locomotive engines, each baseline element concentration trajectory providing representative concentration measurements of the plurality of locomotive engines over the period of time;calculating, using one or more processors of a machine, a health score for the particular locomotive engine based on a comparison of the set of element concentration trajectories of the particular locomotive with the set of baseline element concentration trajectories, the health score indicating a likelihood of a bearing failure in the particular locomotive engine; andproviding a message regarding the likelihood of failure of the bearing of the particular locomotive engine.
  • 2. The method of claim 1, further comprising: comparing the health score to a predefined threshold; andwherein the providing of the message is based on a result of the comparing of the health score to the predefined threshold.
  • 3. The method of claim 1, wherein the creating of each element concentration trajectory includes: obtaining a piecewise linear approximation of element concentrations over the period of time by applying linear regression to concentration measurement values included in the locomotive data;applying smoothing techniques to the piecewise linear approximation to accumulate concentration measurements across oil change intervals; andfiltering accumulated concentration measurements.
  • 4. The method of claim 1, wherein the creating of each baseline element concentration trajectory includes: creating an element concentration trajectory for each locomotive engine in the plurality of locomotive engines;aggregating the created element concentration trajectories to create a population level baseline; andselecting a representative portion of the population level baseline as the baseline element concentration trajectory.
  • 5. The method of claim 1, wherein the calculating of the health score includes: comparing the set of element concentration trajectories of the particular locomotive with the set of baseline element concentration trajectories;determining a set of comparison features based on the comparing of the set of element concentrations trajectories of the particular locomotive with the set of baseline element concentration trajectories; andcomparing the set of comparison features with a training set of comparison features generated based on a comparison of historical locomotive data of the plurality of locomotives with the set of baseline element concentration trajectories.
  • 6. The method of claim 5, wherein the comparing of the set of comparison features with the training set of comparison features includes using a one class support vector machine (SVM) to determine a similarity between the set of comparison features and the training set of comparison features, wherein the health score is based on the similarity.
  • 7. The method of claim 5, wherein the set of comparison features includes at least one of the group comprising: engine age, instantaneous values, global averages, local averages, trends, and area above baseline trajectory.
  • 8. The method of claim 1, further comprising: calculating health scores for the plurality of locomotive engines;ranking the plurality of locomotive engines based in part on the determined health scores; andcausing display of a list of locomotive engine identifiers corresponding to the plurality of locomotive engines, the list of locomotive engine identifiers being ordered according to the ranking of the locomotive engine.
  • 9. The method of claim 1, further comprising: receiving updated locomotive data corresponding to the particular locomotive engine, the updated locomotive data including at least one new element concentration value; andre-calculating the health score in response to receiving the updated locomotive data.
  • 10. The method of claim 1, wherein the locomotive data includes at least one of oil change events, maintenance events, bearing failure events, and bearing change-out events.
  • 11. The method of claim 1, wherein the providing of the message includes transmitting at least one of an electronic mail message, text message, or notification to a computer device.
  • 12. The method of claim 1, wherein the providing of the message includes causing display of a user interface, the user interface presenting the message.
  • 13. The method of claim 12, wherein the user interface further includes a graphical representation of the comparison of the set of element concentration trajectories of the particular locomotive with the set of baseline element concentration trajectories.
  • 14. A system comprising: one or more processors of a machine; anda machine-readable storage medium storing instructions that, when executed by the one or more processors, cause the machine to perform operations comprising:accessing locomotive data corresponding to a particular locomotive engine, the locomotive data including one or more sets of element concentration measurements associated with the particular locomotive engine;creating a set of element concentration trajectories for the particular locomotive engine based on the locomotive data, each element concentration trajectory including concentration measurements of a particular element over a period of time;creating a set of baseline element concentration trajectories using information about a plurality of locomotive engines, each baseline element concentration trajectory providing representative concentration measurements of the plurality of locomotive engines over the period of time;calculating, using one or more processors of a machine, a health score for the particular locomotive engine based on a comparison of the set of element concentration trajectories of the particular locomotive with the set of baseline element concentration trajectories, the health score indicating a likelihood of a bearing failure in the particular locomotive engine; andproviding a message regarding the likelihood of failure of the bearing of the particular locomotive engine.
  • 15. The system of claim 14, wherein the calculating of the health score includes: comparing the set of element concentration trajectories of the particular locomotive with the set of baseline element concentration trajectories;determining a set of comparison features based on the comparing of the set of element concentrations trajectories of the particular locomotive with the set of baseline element concentration trajectories; andcomparing the set of comparison features with a training set of comparison features generated based on a comparison of historical locomotive data of the plurality of locomotives with the set of baseline element concentration trajectories.
  • 16. The system of claim 15, wherein the set of comparison features includes at least one of the group comprising: engine age, instantaneous values, global averages, local averages, trends, and area above baseline trajectory.
  • 17. The system of claim 14, wherein the operations further comprise: calculating health scores for the plurality of locomotive engines;ranking the plurality of locomotive engines based in part on the determined health scores; andcausing display of a list of locomotive engine identifiers corresponding to the plurality of locomotive engines, the list of locomotive engine identifiers being ordered according to the ranking of the locomotive engine.
  • 18. The system of claim 14, wherein the providing of the message includes causing display of a user interface, the user interface including the message and a graphical representation of the comparison of the set of element concentration trajectories of the particular locomotive with the set of baseline element concentration trajectories.
  • 19. The system of claim 14, wherein the operations further comprise: receiving updated locomotive data corresponding to the particular locomotive engine, the updated locomotive data including at least one new value when compared to the historical locomotive data; andre-calculating the health score for the bearing based on the updated locomotive data.
  • 20. A non-transitory machine-readable storage medium embodying instructions that, when executed by at least one processor of a machine, cause the machine to perform operations comprising: accessing locomotive data corresponding to a particular locomotive engine, the locomotive data including one or more sets of element concentration measurements associated with the particular locomotive engine;creating a set of element concentration trajectories for the particular locomotive engine based on the locomotive data, each element concentration trajectory including concentration measurements of a particular element over a period of time;creating a set of baseline element concentration trajectories using information about a plurality of locomotive engines, each baseline element concentration trajectory providing representative concentration measurements of the plurality of locomotive engines over the period of time;calculating, using one or more processors of a machine, a health score for the particular locomotive engine based on a comparison of the set of element concentration trajectories of the particular locomotive with the set of baseline element concentration trajectories, the health score indicating a likelihood of a bearing failure in the particular locomotive engine; andproviding a message regarding the likelihood of failure of the bearing of the particular locomotive engine.