Patent Description:
Some background information can be found in <CIT>, <CIT>, <CIT>, <CIT>, <CIT> and <CIT>.

Any examples mentioned in the description which do not fall within the scope of the appended set of claims are to be interpreted as examples of background information, useful only for understanding the invention.

Many Many industries are selling device usage and maintenance as a service. Devices associated with the service can include maintenance costs, such as technical support visits and replacements of parts that have worn out. Device monitoring systems can be utilized to identify failures associated with the devices quickly, thereby speeding up a return to production when downtime occurs. However, maintenance on devices, such as printers, provided as a service may either be reactive or preventive. The former may lead to unexpected costs or scheduling conflicts that may increase the downtime of the device. The latter may result in unnecessary costs that could be avoided in cases where the device is not approaching a failure.

Maintenance intervention predicting, as described herein, can provide insight to when devices will most likely fail in a particular time period, which can improve maintenance scheduling. For example, a maintenance team may decide to visit a site to perform maintenance on devices that are evaluated as being close to failing (e.g., failing within a particular time period). Moreover, after attending a maintenance call, the maintenance team may perform maintenance on devices located nearby that are likely to fail in a particular time period.

Some examples of the present disclosure are directed to maintenance intervention predicting. Maintenance intervention predicting as disclosed herein can include predictive maintenance driven by data analytics and machine learning techniques, which can allow for a maintenance schedule that reduces maintenance costs. For instance, intervention predicting can include monitoring sensory inputs and a first maintenance intervention related to a device. Data relating to the monitored sensory inputs and the first maintenance intervention can be stored in a centralized database, and a second maintenance intervention can be predicted based on the data stored in the centralized database.

<FIG> illustrates a flow chart <NUM> for selecting a machine learning model for maintenance intervention predicting consistent with the disclosure. The machine learning model is a supervised machine learning model. As described herein, machine learning includes building a model that can receive input data and uses statistical analysis to predict an output value. Supervised machine learning includes inputting data and a desired output into a machine learning model, in addition to furnishing feedback about the accuracy of predictions during training. A trained machine learning model may be applied to a set of data to calculate an output value.

For example, a supervised machine learning model can be used to predict an upcoming maintenance intervention based on data relating to device usage and past maintenance. As described herein, a centralized database, such as a cloud computing environment, can store data related to events retrieved from at least one device. The device is a printer.

Selecting a machine learning model can include logging events data <NUM>. For example, as described herein, events data relating to monitored sensory inputs and maintenance interventions of at least one device can be exported to the centralized database, where it can be stored. The events data can include data relating to usage and maintenance interventions of the at least one device. A device can include a system to generate an events log to log events data based on events that occur relating to the device. For example, the device can include a system to generate an events log that tracks a series of events that occurred in the time prior to a maintenance intervention. The data used to generate the events log can be exported to the centralized database.

As illustrated in <FIG>, selecting a machine learning model can include data cleaning <NUM>. Data cleaning <NUM> can include processing the data stored within the centralized database to provide a machine learning model used for maintenance intervention predicting with a training data set. Data cleaning <NUM> can include retrieving data, such as a serial number of the device, an event code, a severity of the event, a finish date of a maintenance intervention, a start date of a maintenance intervention, a date of an event that occurred between a first maintenance intervention and a second intervention, a sequential number to identify events related to each intervention, an amount of printed pages, an amount of scanned pages, and/or other data relating to the usage or the maintenance intervention of the device.

Predicting when a device may experience failure can include using at least one machine learning model. For example, a classification model may be used to predict whether the device is at risk of an upcoming failure, while a regression model can be used to predict a float number. The float number can be a value indicating an amount of time until the device may experience the upcoming failure. Thus, if the classification model predicts an upcoming device failure, the regression model can be used to predict when the next maintenance intervention of the device would be.

The prediction of an upcoming maintenance intervention can be referred to as a health status. The health status can include multiple categories. For example, the health status may be classified as either "good" or "bad". A device that is classified as "bad" can indicate that the device is at risk of experiencing an upcoming failure, while a device that is classified as "good" can indicate that the device is not at risk of experiencing an upcoming failure. As described herein, the health status may be used to detect a wear out failure. A wear out failure can occur when the device has exceeded its estimated lifetime. Usage of the device can damage components of the device, which may result in failure. Moreover, replacement of such components may overload additional components, which can lead to a maintenance intervention.

In some examples, selecting the machine learning model can include using data stored within the centralized database to train the machine learning models. The data used to train the machine learning models may be processed by data cleaning <NUM>. For example, data cleaning <NUM> can process data stored within the centralized database and create a comma separated values (CSV) file that can be used to train and validate the machine learning model. The CSV file can include information such as an event code, severity of the event, and a timestamp of events related to the usage of the device, among other information.

Feature engineering <NUM> can be applied to the CSV file to identify and convert the information into a format that can be used to train the machine learning model. For example, feature engineering <NUM> may identify a run time of the device between a first maintenance intervention and a selected event, a number of printed pages between the first maintenance intervention and the selected event, a number of scanned pages between the first maintenance intervention and the selected event, and/or other features that can be used to predict a maintenance intervention.

Information identified by feature engineering <NUM> can be used to train machine learning models to predict the health status and the float number of the device. Model selecting <NUM> can include two stages to select a machine learning model: model training <NUM> and model testing <NUM>. As described herein, a first machine learning model can predict the health status of the device and a second machine learning model can predict the float number of the device.

Model training <NUM> can include training the number of machine learning models, and model testing <NUM> can include evaluating each of the number of machine learning models using a set of metrics. A training sample to train the machine learning model to predict the health status of the device includes a set of values based on data retrieved within a selected interval of time. The selected interval of time is between the first day of a first detected event after a first maintenance intervention and a second day of a second detected event before a second maintenance intervention.

Each training sample can be labeled as "good" or "bad" to allow the machine learning training process to identify patterns in the time leading up to a maintenance intervention. Data retrieved from the device can be evaluated to determine which machine learning model among the number of machine learning models to use to predict the health status of the device based on similarities between the identified patterns and retrieved data.

A training sample to train the machine learning model to predict the float number of the device can include a set of values based on data retrieved within a selected interval of time. The selected interval of time is between the first day of a first detected event after a first maintenance intervention and a second day of a second detected event before a second maintenance intervention. Each training sample can be labeled with a float number that is a time interval between the second detected event and the last detected event before the second maintenance intervention to allow the machine learning training process to identify patterns in the time leading up to the maintenance intervention. Data retrieved from the device may be evaluated to determine which machine learning model to use to predict the float number of the device based on similarities between the identified patterns and the retrieved data.

Selecting the machine learning model can include a validating <NUM> the machine learning model selected at model selecting <NUM>. For example, the selected machine learning model, which has been trained and tested can be validated using data retrieved from the device. Validating <NUM> can include determining whether the information processed at feature engineering <NUM> provides what is classified as a "good result". A "good result" can include either the same metrics of the machine learning model testing or a simulation of the model on production. Validating <NUM> can include measuring the quality of the prediction using data that was not part of model selecting <NUM>. For example, if validating <NUM> results in a determination that the results of the machine learning model selected at model selecting <NUM> are good, then the selected machine learning model can be used to predict the maintenance intervention. If validating <NUM> results in a determination that the results of the machine learning model selected at model selecting <NUM> are not good, then feature engineering <NUM> can include processing the information to create a new features set to train the machine learning models, and a new machine learning model can be selected.

<FIG> illustrates an example system <NUM> for maintenance intervention predicting consistent with the disclosure. System <NUM> can include a non-transitory machine-readable storage medium <NUM>. Non-transitory machine-readable storage medium <NUM> can be an electronic, magnetic, optical, or other physical storage device that stores executable instructions. Thus, non-transitory machine-readable storage medium <NUM> can be, for example, Random Access Memory (RAM), an Electrically-Erasable Programmable Read-Only Memory (EEPROM), a storage drive, an optical disc, and the like. In this example, the executable instructions may be "installed" on the system <NUM>. Additionally and/or alternatively, non-transitory machine-readable storage medium <NUM> can be a portable, external or remote storage medium, for example, that allows system <NUM> to download the instructions from the portable/external/remote storage medium. In this situation, the executable instructions can be part of an "installation package".

Instructions <NUM> includes instructions executable to monitor sensory inputs related to a device. The device is a printer or any other output device. The device can include at least one sensor configured to collect sensory inputs, such as, but not limited to, sensory signals, ultrasound signals, light, movement, tracking indicators, temperature, energy consumption indicators, and the like based on operation of the device. The sensors can include, but are not limited to, sound capturing sensors, motion tracking sensors, energy consumption meters, temperature meters, and the like. The sensors can be communicatively coupled or otherwise connected to the device.

Monitoring sensory inputs related to the device can include monitoring data related to the usage of the device. Monitoring the sensory inputs includes selecting a time interval to monitor the sensory inputs. Sensory inputs are monitored between a first event that occurred after a first maintenance intervention and a second event that occurred after the first maintenance intervention.

The device can include an information log. The information log can include data related to the usage of the device and can generate an events log according to the sensory data. The events log can be stored in a system log within the device. Additionally, as described herein, the events log can export the data relating to the sensory inputs to a centralized database. The data relating to the sensory inputs can be used to predict a maintenance intervention as a result of the device or a component of the device approaching a failure.

Instructions <NUM> can include instructions executable to monitor a first maintenance intervention related to the device. As described herein, a maintenance intervention can include maintenance performed on a device that has experienced a failure or is identified as being at risk of an upcoming failure. The failure can include a wear out failure, which may occur when the device or a component of the device has exceeded its estimated lifetime.

Monitoring the first maintenance intervention related to the device can include recording each time the device experiences a failure resulting in a maintenance intervention. As described herein, the data recorded relating to the maintenance intervention may be stored in the centralized database. Storing a record of maintenance interventions of the device can allow for the retrieval of the events that occurred prior to the maintenance intervention. These events may be used to predict maintenance interventions of the same device or a similar device.

Instructions <NUM> can include instructions executable to store data relating to the monitored sensory inputs and the first maintenance intervention in a centralized database. The centralized database can include a cloud computing environment. The centralized database can receive and store data relating to the monitored sensory inputs and the maintenance interventions of device.

Additionally, as described herein, the centralized database can store data relating to the monitored sensory inputs and maintenance interventions of more than one device. For example, the database can store data of a fleet of devices. The stored data can be used to select a machine learning model to predict a maintenance intervention of the device. The centralized database may include more than one machine learning model that can be used to predict an upcoming maintenance intervention of the device.

Instructions <NUM> can include instructions executable to predict a second maintenance intervention based on the data stored in the centralized database. For example, predicting a second maintenance intervention of the device can include analyzing the data stored in the central database. The analysis can include, but is not limited to, inputting data related to the sensory inputs and the recorded maintenance interventions into supervised machine learning model to predict an upcoming maintenance intervention.

Additionally, the analysis can also include selecting a supervised machine learning model to analyze the data stored in the centralized database. The centralized database can include a machine learning model library, where the machine learning model library includes at least one machine learning model. As illustrated by <FIG>, the data stored within the centralized database can be used to select a machine learning model among the number of machine learning models. For example, the data stored within the centralized database can be processed and used to train and test the number of stored machine learning models. A selected machine learning model can be validated and selected to predict the upcoming maintenance intervention.

Predicting the upcoming maintenance intervention may include providing a notification of an upcoming maintenance intervention. The notification can include displaying the device's health status and/or float number. For example, the format of the health status can include good-bad, <NUM>-<NUM>, true-false, or other format that may describe the health status of the device. The format of the time left to the predicted maintenance intervention can include a float number that represents an interval of time using a unit such as months, weeks, days, hours, minutes, second, among others.

If the machine learning model predicts that the device is not at risk of experiencing failure, the notification can be an indication that the device is not at risk of experiencing a failure that would result in a maintenance intervention. In another example, if the machine learning model predicts that the device is at risk of experiencing failure, the notification can be an indication that the device may be at risk of experiencing failure resulting in a maintenance intervention. The indication may also include the amount of time until the maintenance intervention.

<FIG> illustrates an example of a system <NUM> for maintenance intervention predicting consistent with the disclosure. As illustrated in <FIG>, the system <NUM> can include a processing resource <NUM> coupled to the memory resource <NUM>, on which instructions may be stored, such as instructions <NUM>, <NUM>, <NUM>, <NUM>, and <NUM>. Although the following descriptions refer to an individual processing resource and an individual memory resource, the descriptions may also apply to a system with multiple processing resources and multiple memory resources. In such examples, the instructions may be distributed (e.g., stored) across multiple processing resources.

Processing resource <NUM> can be a central processing unit (CPU), a semiconductor based microprocessor, and/or other hardware devices suitable for retrieval and execution of instructions stored in memory resource <NUM>. Processing resource <NUM> can fetch, decode, and execute instructions <NUM>, <NUM>, <NUM>, <NUM>, and <NUM>, or a combination thereof. As an alternative or in addition to retrieving and executing instructions, processing resource <NUM> may include an electronic circuit that includes electronic components for performing the functionality of instructions <NUM>, <NUM>, <NUM>, <NUM>, and <NUM>, or combination thereof.

Memory resource <NUM> can be volatile or nonvolatile memory. Memory resource <NUM> can be removable (e.g., portable) memory, or non-removable (e.g., internal) memory. For example, memory resource <NUM> can be random access memory (RAM) (e.g., dynamic random access memory (DRAM) and/or phase change random access memory (PCRAM)), read-only memory (ROM) (e.g., EEPROM and/or compact-disk read-only memory (CR-ROM), flash memory, a laser disc, a digital versatile disk (DVD) or other optical disk storage, and/or a magnetic medium such as magnetic cassettes, tapes, or disks, among other types of memory.

Instructions <NUM>, when executed by processing resource <NUM>, can cause memory resource <NUM> to monitor sensory inputs related to a device. The device can be a printer. As described herein, monitoring sensory inputs relating to the device can include generating system log information. For example, the system log information can include data relating to the usage of the device. The system log information can be exported from the device to a centralized database.

Instructions <NUM>, when executed by processing resource <NUM>, can cause memory resource <NUM> to monitor a first maintenance intervention related to the device. A maintenance intervention can be related to a device failure, where the device failure can be based on the device exceeding an estimated lifetime. As described herein, monitoring the first maintenance intervention related to the device can include tracking each maintenance intervention of the device. The system log information can include information relating to the events and device usage leading up to the maintenance intervention.

Instructions <NUM>, when executed by processing resource <NUM>, can cause memory resource <NUM> to store data relating to the monitored sensory inputs and the first maintenance intervention in a centralized database. As described herein, the centralized database can store data received from a number of devices. For example, the centralized database can store data received from a single device or a fleet of devices. The data stored in the centralized database may be used to select at least one machine learning model to predict an upcoming maintenance intervention of the device.

Instructions <NUM>, when executed by processing resource <NUM>, can cause memory resource <NUM> to analyze, via supervised machine learning, the data stored in the centralized database. The centralized database can include a machine learning model library that can include at least one machine learning model. The system <NUM> can include instructions that are executable to select a supervised machine learning model to analyze the data stored in the centralized database.

As described herein, analyzing the data stored in the centralized database related to the device can provide a health status of the device. For example, the health status of the device can indicate whether the device is at risk of experiencing a failure.

Instructions <NUM>, when executed by processing resource <NUM>, can cause memory resource <NUM> to predict a second maintenance intervention based on the analyzed data stored in the centralized database. As described herein, predicting a second maintenance intervention can be based on the analyzed data stored in the centralized database. If the health status indicates that the device is at risk of failure, then a maintenance intervention can be predicted, as well as the amount of time until the predicted maintenance intervention. As described herein, a maintenance intervention can be related to a device failure due to the device exceeding the estimated lifetime of the device.

Predicting the second maintenance intervention can include providing a notification of the second maintenance intervention. Providing a notification of the second maintenance intervention can include providing a warning of an upcoming maintenance intervention, an amount of time until the upcoming maintenance intervention, or both.

<FIG> illustrates an example of method <NUM> for maintenance intervention predicting consistent with the disclosure. At <NUM>, the method <NUM> can include monitoring sensory inputs related to a device. The device is a printer, and monitoring sensory inputs relating to the device can include generating system log information. For example, the system log information can include data relating to the usage of the device. The system log information can be exported from the device to a centralized database.

At <NUM>, the method <NUM> can include monitoring a first maintenance intervention related to the device. Monitoring the first maintenance intervention related to the device can include tracking each maintenance intervention of the device. The system log information can include information relating to the events and device usage leading up to the maintenance intervention.

At <NUM>, the method <NUM> can include storing data relating to the monitored sensory inputs and the first maintenance intervention in a centralized database. The centralized database can store data received from a number of devices. For example, the centralized database can store data received from a single device or a fleet of devices. The data stored in the centralized database may be used to select at least one machine learning model to predict a maintenance intervention of the device.

At <NUM>, the method <NUM> includes analyzing, via supervised machine learning, the data stored in the centralized database. Analyzing the data stored in the centralized database related to the device can provide a health status of the device. For example, the health status of the device can indicate whether the device is at risk of experiencing a failure that may result in a maintenance intervention.

The method <NUM>, at <NUM>, can include predicting a second maintenance intervention based on the analyzed data stored in the centralized database. If the health status indicates that the device is at risk of failure, then a maintenance intervention can be predicted, as well as the amount of time until the predicted maintenance intervention.

At <NUM>, the method <NUM> can include providing a notification of the second maintenance intervention. Providing a notification of the second maintenance intervention can include providing a warning of an upcoming maintenance intervention, an amount of time until the upcoming maintenance intervention, or both.

In the foregoing detailed description of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration how examples of the disclosure may be practiced. These examples are described in sufficient detail to allow those of ordinary skill in the art to practice the examples of this disclosure, and it is to be understood that other examples may be utilized and that process, electrical, and/or structural changes may be made without departing from the scope of the present disclosure.

Claim 1:
A non-transitory machine-readable storage medium <NUM> having stored thereon machine-readable instructions executable to cause a processing resource to:
Monitor (<NUM>) sensory inputs related to a printer;
Monitor (<NUM>) a second maintenance intervention related to the printer;
wherein the instructions are executable to select a time interval to monitor the sensory inputs as a training sample to train a machine learning model to predict a health status of the printer, wherein the selected time interval is between a first day of a first detected event after a first maintenance intervention and a second day of a second detected event before the second maintenance intervention;
store data (<NUM>) relating to the monitored sensory inputs and the second maintenance intervention in a centralized database;
analyze the data stored in the centralized database via supervised machine learning; and
predict (<NUM>) a further maintenance intervention based on the analyzed data stored in the centralized database.