Initiating a maintenance operation
Patent Information
- Application Number
- GB2023014454
- Authority / Receiving Office
- GB · GB
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-21
- Publication Date
- 2025-03-26
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
TECHNICAL FIELD The present disclosure relates to initiating a maintenance operation on a vehicle. Aspects of the invention relate to computer implemented methods, to a vehicle, and to computer readable instructions for performing a method. BACKGROUND It is known that vehicles, as with any complex machine, require maintenance in order to prolong a life of the vehicle. A maintenance operation may be a scheduled maintenance operation, where one or more maintenance actions are performed according to a predetermined schedule, which may depend upon a mileage or running time of the vehicle e.g. operational hours, or an age of the vehicle. Alternatively a maintenance operation may be performed according to a condition of the vehicle, including its component parts, i.e. if a determined condition of one or more components requires maintenance such as replacement of the one or more components. Problems have been identified with performing maintenance operations on a vehicle at a correct point in time. It is an aim of the present invention to address one or more of the disadvantages associated with the prior art. SUMMARY OF THE INVENTION Aspects and embodiments of the invention provide methods, a vehicle, and computer readable instructions as claimed in the appended claims. According to an aspect of the present invention there is provided a computer-implemented method for initiating a maintenance operation of a vehicle, the method comprising the steps of receiving vehicle data from a vehicle, the vehicle data being indicative of one or more parameters associated with the vehicle, determining, using a trained model, in dependence on the vehicle data a requirement for a maintenance operation of the vehicle, and outputting an indication of the requirement for the maintenance operation to cause initiation of the maintenance operation. Advantageously the requirement for the maintenance operation is determined in dependence on the parameters associated with the vehicle and the usage pattern of the vehicle. According to an aspect of the present invention there is provided a computer-implemented method for initiating a maintenance operation of a vehicle, the method comprising the steps of receiving vehicle data from a vehicle, the vehicle data being indicative of one or more parameters associated with the vehicle, obtaining usage data associated with the vehicle, the usage data being indicative of one or more attributes of a usage pattern of the vehicle, determining, using a trained model, in dependence on the vehicle data and the usage data a requirement for a maintenance operation of the vehicle, and outputting an indication of the requirement for the maintenance operation to cause initiation of the maintenance operation. Advantageously the requirement for the maintenance operation is determined in dependence on the parameters associated with the vehicle and the usage pattern of the vehicle. Optionally the vehicle data is received in substantially real-time from the vehicle. Advantageously the vehicle data reflects in near real-time a state of the vehicle. The vehicle data may be wirelessly received. Advantageously the vehicle data may be received when the vehicle is operational. The one or more parameters may comprise an indication of a state of one or more components of the vehicle. Advantageously the requirement for the maintenance operation is determined in dependence on the state of the one or more components. Optionally component is a module or unit of the vehicle. The one or more parameters optionally comprise an indication of a current state of the one or more components. The one or more parameters may correspond to one or more measurements associated with the one or more components. Advantageously the parameters reflect the state of the module or unit of the vehicle. The one or more parameters may comprise an indication of a fault associated with one or more components of the vehicle determined at the vehicle. Advantageously the requirement for the maintenance operation is determined in dependence on the indication of the fault. The indication of the fault may comprise an indication of a fault type and a component of the vehicle. Advantageously details of the fault type and the component are utilised to determine the requirement. The vehicle data may comprise an indication of a service status of the vehicle. Advantageously details of the service status are utilised to determine the requirement The indication of the service status optionally comprises an indication of a remaining time or distance for a service operation of the vehicle. Advantageously details of remaining time or distance are utilised to determine the requirement. The usage data may comprise an indication of a historic pattern of use of the vehicle. The usage data may comprise an indication of a historic usage amount of the vehicle. Advantageously the historic use of the vehicle is utilised to determine the requirement for the maintenance operation. Advantageously the historic use may be used to schedule the maintenance operation. The historic use amount may be an indication of a historic distance of travel of the vehicle per unit time period. The historic distance of travel may be a distance per day, per week or per month. Advantageously the maintenance operation may be scheduled in dependence on an extent of the use of the vehicle. The requirement for the maintenance operation may comprise an indication of a user-performability of the maintenance operation. Advantageously the requirement indicates whether a maintenance facility is required to perform the maintenance operation. The requirement for the maintenance operation may comprise an associated duration requirement. Advantageously the duration requirement may inform a schedule for the maintenance operation. The indication of the maintenance operation may comprise an indication of said user-performabihty and / or the associated duration requirement. Advantageously the indication of the user-performability and / or the associated duration requirement is output. The duration requirement may be a duration or period in which the maintenance operation is required. Advantageously the vehicle may be used within the duration or period until the maintenance operation is required. The requirement for the maintenance operation may comprise an indication of a schedule for the maintenance operation. Advantageously the schedule indicates when the maintenance operation is to be performed. The schedule may define a point in time for the maintenance operation to take place. The schedule may be determined by the trained model. Advantageously the schedule is determined in dependence on the usage data. The trained model may be configured through training in dependence on a plurality of vehicle records. The vehicle records optionally comprise historical vehicle data associated with historical usage data. Advantageously the training of the model accounts for the vehicle records and / or usage data. The indication of the requirement for the maintenance operation optionally comprises an identification of one or more components of the vehicle to be maintained in the maintenance operation. Advantageously the one or more components are specified to assist the maintenance operation. The indication of the requirement for the maintenance operation may comprise an identification of one or more parts or consumables required for the maintenance operation. Advantageously the one or more parts or consumables may be obtained prior to the maintenance operation. The initiation of the maintenance operation may comprise obtaining one or more parts or consumables for the maintenance operation in dependence on receiving the indication. Advantageously the maintenance operation may be performed using the one or more parts or consumables. The method optionally comprises performing the maintenance operation on the vehicle in dependence on receiving the notification. Advantageously the vehicle is maintained accordingly. According to an aspect of the present invention there is provided a computer-implemented method fortraining a model to initiate a maintenance operation of a vehicle, the method comprising the steps of obtaining a plurality of sets of vehicle data indicative of one or more parameters associated with one or more vehicles, obtaining usage data associated with the one or more vehicles, the usage data being indicative of one or more attributes of a usage pattern of the vehicle, determining requirements for one or more maintenance operations associated with at least some of the sets ofvehicle data, training a model for determining the requirements for the one or more maintenance operations in dependence on the plurality of sets of vehicle data and the usage data. Advantageously the model is trained in dependence on the vehicle data and the usage data. Optionally each of the plurality of sets of vehicle data and the usage data for the respective one of the plurality of vehicles form a vehicle record or are associated according to an identifier of the vehicle. Advantageously the identifier associates the vehicle data and the usage data. Each of the plurality of sets of vehicle data may be associated with a respective one of the plurality of vehicles, and the usage data comprises usage data for the respective one of the plurality of vehicles. Advantageously the usage data relates to a specific vehicle. The method may comprise labelling the vehicle data indicative of one or both of a severity of the required maintenance operation and a category of the required maintenance operation. Advantageously the labelling assists the training of the model. The category of the required maintenance operation may be indicative of permitted use of the vehicle prior to the maintenance operation. Advantageously the model is trained in dependence on the permitted use. The vehicle data optionally comprises an indication of one or more parameters and the method optionally comprises determining, for each parameter, one or more attributes of the requirements for the one or more maintenance operations. Advantageously the one or more attributes are determined in dependence on the one or more parameters. A parameter may be indicative of a wear of a component of the vehicle. The parameter may be brake pad wear level. Advantageously the wear of the component is utilised. The determining the requirements for the one or more maintenance operations may comprise determining a similarity between the vehicle data for each vehicle and each of one or more rules each indicative of a respective maintenance operation. Advantageously determining the similarity enables clustering of the vehicle data. The determining the similarity may use a cosine similarity algorithm. Advantageously the cosine similarity provides a measure of similarity. The training of the model may comprise using a supervised learning process. According to an aspect of the present invention there is provided a vehicle, comprising a wireless communication module and a user interface, wherein the wireless communication module is arranged to communicate vehicle data to a control system arranged to perform the method as described above, and to receive an indication of a requirement for a maintenance operation from the control system, and wherein the user interface is arranged to output an indication of the requirement for the maintenance operation. According to an aspect of the present invention there is provided computer readable instructions which, when executed by a computer, are arranged to perform a method as described above. The computer readable instructions may be stored on a computer readable medium. According to an aspect of the present invention there is provided a control system comprising one or more controllers collectively comprising at least one electronic processor having an electrical input for receiving an input signal; and at least one memory device electrically coupled to the at least one electronic processor and having instructions stored therein; and wherein the at least one electronic processor is configured to access the at least one memory device and execute the instructions thereon so as to receive vehicle data from a vehicle, the vehicle data being indicative of one or more parameters associated with the vehicle, obtain usage data associated with the vehicle, the usage data being indicative of one or more attributes of a usage pattern of the vehicle, determine, using a trained model, in dependence on the vehicle data and the usage data a requirement for a maintenance operation of the vehicle, and output an indication of the requirement for the maintenance operation to cause initiation of the maintenance operation. Within the scope of this application it is expressly intended that the various aspects, embodiments, examples and alternatives set out in the preceding paragraphs, in the claims and / or in the following description and drawings, and in particular the individual features thereof, may be taken independently or in any combination. That is, all embodiments and / or features of any embodiment can be combined in any way and / or combination, unless such features are incompatible. The applicant reserves the right to change any originally filed claim or file any new claim accordingly, including the right to amend any originally filed claim to depend from and / or incorporate any feature of any other claim although not originally claimed in that manner. BRIEF DESCRIPTION OF THE DRAWINGS One or more embodiments of the invention will now be described, by way of example only, with reference to the accompanying drawings, in which: Figure 1 shows a vehicle according to an embodiment of the invention; Figure 2 shows a computer system according to an embodiment of the invention; Figure 3 shows a system including the vehicle and computer system according to an embodiment of the invention; Figure 4 schematically illustrates the computer system according to an embodiment of the invention; Figure 5 shows a method according to an embodiment of the invention; Figure 6 shows a vehicle record according to an embodiment of the invention; Figure 7 shows a further method according to an embodiment of the invention; and Figure 8 shows communication in the system according to an embodiment of the invention. DETAILED DESCRIPTION A vehicle 100 in accordance with an embodiment of the present invention is described herein with reference to the accompanying Figure 1. As shown in Figure 1, the vehicle 100 is a land-going i.e. wheeled vehicle, although it will be appreciated that embodiments of the present invention may be used with any type of vehicle such as aircraft and watercraft. Embodiments of the present invention may also be useful with any type of machine. The vehicle 100 shown in Figure 1 is a passenger vehicle 100 having a plurality of wheels, although embodiments of the invention may be used with goods or other types of vehicles. With reference to Figure 2, there is illustrated a computer system 200 which may be used with the vehicle 100. The computer system 200 is configured to receive 235 data from the vehicle 100, as will be explained. The computer system 200 may also communicate 235 data to the vehicle 100. The computer system 200 is arranged to initiate a maintenance operation of a vehicle 100 in dependence on the received 235 data. The computer system 200 as illustrated in Figure 2 comprises processing means 210 and memory means 220. The processing means 210 may be one or more electronic processing device 210 or processors 210 which operably executes computer-readable instructions. The memory means 220 may be one or more memory device 220 or memory 220. The memory 220 is electrically coupled to the processing means or processor 210. The memory 220 is configured to store instructions, and the processor 210 is configured to access the memory 220 and execute the instructions stored thereon. The memory 220 may also store data for operation on by a process executing on the processor 210. The computer system 200 comprises a communication means 230. The communication means 230 may comprise an electrical input / output 203 of the computer system 200. The communication means 230 may comprise a wired or wireless communication interface 230 of the computer system 200. In one embodiment, the communication means may be a network interface 230 of the computer system 230. The network interface 230 may communicably connect the computer system 200 to a wired network via which the computer system communicates communicate with a wireless telecommunications network to communicate data 235 with the vehicle 100 as illustrated in Figure 3. The network interface 230 may also allow the computer system 200 to communicate data 245 with one or more other computer systems 300, such as hosting a data store e.g. a database, to retrieve and / or store data therein. The one or more other computer systems 300 may comprise a maintenance computer system 300 for initiating a maintenance operation of the vehicle 100 in dependence on maintenance data 245 received from the computer system 200 e.g. first computer system 200. The computer system 200 comprises a user interface 240 for outputting notifications or indications to a user of the vehicle 100. The user interface 240 may comprise at least one visual and / or audible output device. For example the user interface 240 may comprise a display device and one or more speakers. The user interface may be used to output a notification to the user indicative of the requirement for a maintenance operation. The computer system 200 is arranged to operably execute an inference module 410 which utilises a trained model 420, as illustrated in Figure 4, to initiate the maintenance operation. A method 700 of initiating a maintenance operation is described below with reference to Figure 7. The trained model 420 is produced by a training process, according to an embodiment of the invention, by a computer system. The computer system may be the computer system 200 of Figure 2 or another computer system of equivalent of similar construction or functionality. Thus embodiments of the present invention provide a computer-implemented method 500, such as illustrated in Figure 5, for training the model 420 to initiate a maintenance operation of the vehicle 100. The model 420 may be trained according to a supervised learning process as part of the method 500. Computer readable instructions for performing the method 500 may be stored in the memory 220 of the computer system 200 which, when executed by the processor 210, are arranged to perform the method 500 and provide the trained model 420. Although the computer system 200 is shown in Figures 2-4 as a discrete computer system, and other computer systems are referred to below, it will be appreciated that the computer system 200 and other computer systems may be implemented as a cloud computing system where processes are executed by distributed processors and storage devices. Thus although the term computer system, first computer system etc is referred to herein, it will be realised that these terms are not restrictive. The method 500 comprises a block or step 510 of obtaining 510 a plurality of sets of vehicle data 610, as illustrated in Figure 6, associated with one or more vehicles 100. One set of vehicle data 610 is illustrated in Figure 6. Each set of vehicle data 610 is indicative of one or more parameters associated with a respective vehicle 100. A set of vehicle data 610 is a data structure comprising a plurality of data fields 611,612 or data items indicative of a respective attribute of the vehicle 100 in some embodiments. In Figure 6 the vehicle data 610 is illustrated comprising eight data fields with only two of those 611, 612 being numbered for clarity, although it will be realised that the number of data fields is merely illustrative. A set of vehicle data 610 is generated by the vehicle 100 at a point in time indicative of the state of the vehicle 100 at that time. Thus, for a particular vehicle 100, over a period of time a plurality of sets of vehicle data 610 are generated at respective points in time. The vehicle data 610 may include a field indicative of the time of generation or recording of the vehicle data 610. Furthermore, in some embodiments, the vehicle data 610 may include a unique identifier associated with the vehicle 100. In Figure 6 a vehicle record 600 according to an embodiment of the invention is illustrated which comprises the vehicle data 610 and usage data 620. The vehicle record 600 is a data structure associated with a particular vehicle 100 which is uniquely identified by vehicle identification data 630. As noted above, the vehicle data 610 is indicative of one or more parameters associated with the vehicle 100. The usage data 620 is a data structure indicative of one or more attributes of a usage pattern of the vehicle 100. The usage data 620 may comprise an indication of a historic pattern of use of the vehicle 100 in some embodiments. The usage data 620 may comprise an indication of a historic usage amount of the vehicle 100 and a temporal distribution of that usage. The vehicle record 600 is used in some embodiments of the invention to associate the vehicle data 610 and the usage data 620 for storage in a data store, such as a database. However in other embodiments the vehicle data 610 and usage data 620 may be separately stored and, for example, associated by both comprising the vehicle identification data 630. In Figure 6 the illustrated vehicle record 600 comprises one set ofvehicle data 610 and one set of usage data 620 for a period of time. The vehicle record 600 may comprise a plurality of sets of vehicle data 610 and a plurality of sets of usage data 620 each for a respective period of time e.g. week, month etc. The vehicle data 610 may be a most recent set ofvehicle data 610 received from the vehicle 100. In some embodiments only the most recent vehicle data 610 may be stored in the vehicle record 600, although in other embodiments upto a predetermined number of sets ofvehicle data 610 may be stored e.g. X most recent sets ofvehicle data 610, wherein Xis an integer. The usage data 620 is for the period of time such as a week. In the example shown in Figure 6 the usage data 620 is for a week and comprises seven data items, two of which are numbered 621,622 for clarity. Each data item 621,622 is indicative of use of the vehicle 100 for a respective day e.g. Monday, Tuesday etc. The usage data 620 stores data indicative of use of the vehicle for the respective period of time, such as journeys made by the vehicle 100 during the respective period of time. Alternatively, the usage data may be a data structure comprising a record for each journey made by the vehicle 100 including attributes of that journey such as a date and time of the journey, length of journey etc. The usage data may be analysed to determine when the vehicle 100 is used and one or more periods of time when the vehicle is less, or not, used. The usage data 620 allows statistics or patterns of use of the vehicle 100 to be determined. The usage data 620 is communicated from the vehicle 100, such as at the end of each journey made by the vehicle 100 or periodically e.g. at the end of each day, or similar, to the computer system 200. The usage data 620 may be communicated separately from the vehicle data 610. Returning to the vehicle data 610, as noted above, the vehicle data 610 comprises a plurality of data fields 611, 612 or data items each indicative of a respective observed attribute of the vehicle 100 at a point in time. Thus the vehicle data 610 provides an indication of a status of the vehicle 100 at that point in time. The vehicle data 610 may comprise data indicative of a time at which the vehicle data was generated. At least some data items are vehicle status data items indicative of a current status of the vehicle 100. A vehicle status data item may be indicative of a respective measurement associated with a part, module, or component of the vehicle 100. For example, a vehicle status data item may comprise data indicative of a measurement of tyre pressure or remaining brake pad depth i.e. numerical values indicative of the measurements. Alternatively a vehicle status data item may comprise data, such as a value e.g. 1 or 0 although other values may be used, indicative of a status of a part, module, or component of the vehicle being acceptable or not i.e. within, above or below a threshold measurement. For example, a vehicle status data item corresponding to tyre pressure may have a value of 1 indicating a status of ‘OK’ or above a predetermined pressure threshold. A field of the vehicle data 610 may be indicative of a current mileage of the vehicle 100. One or more data items 611,612 may be indicative ofvehicle alerts i.e. alerts to advise of problems or faults identified with a part, module, or component of the vehicle 100. For example, if a fault is determined with a brake system of the vehicle, or battery charging system (as examples) then a vehicle alert data field may comprise an indication of the part, module, or component of the vehicle 100 having the identified fault condition and an indication of the fault, such as a fault code. One or more data items of the vehicle data 610 may comprise an indication of a remaining time or duration e.g. mileage duration before one or more service maintenance operations are required. For example, a data item of the vehicle data 610 may indicate that 3000km are remaining before the vehicle 100 requires a maintenance operation to replace brake fluid. A data item of the vehicle data 610 may indicate that 245 days remain before the vehicle 100 requires a maintenance operation e.g. to clean a filter of the vehicle 100. The vehicle data 610 is communicated from the vehicle 100 as data 235 as illustrated in Figure 3. The vehicle data 610 may be communicated from the vehicle 100 to the computer system 200 at regular intervals e.g. every 30 minutes or 1 hour (other intervals may be used) or at the start and / or end of a journey e.g. triggered by a change in power state of the vehicle 100. In block 510 of the method 500, the plurality of sets of vehicle data 610 are obtained e.g. by retrieval from the data store. The plurality of sets of vehicle data 610 may be associated with one or a plurality of vehicles 100 e.g. indicative of a state of each vehicle at respective points in time. By obtaining vehicle data 610 from a larger number of vehicles over a greater period of time, the training process may be performed in dependence on a greater diversity of vehicle data 610, to thereby improve the training of the model i.e. to avoid over-fitting. In block 520 usage data 620 associated with the one or more vehicles 100 is obtained. The usage data 620 is indicative of one or more attributes of a usage pattern of each vehicle 100. The usage data 620 is indicative of user behaviour associated with each vehicle 100 i.e. indicative ofwhen the vehicle 100 is used over a period of time. As noted above, the usage data 620 may relate to a period of time, such as a week. The usage data 620 may relate to a week and comprise seven usage data items 621, 622, each for a respective day e.g. Monday, Tuesday etc. Each usage data item 621,622 may store data indicative of use of the vehicle 100 for the respective period of time, such as journeys made by the vehicle 100 during the respective period of time. The usage data 620 thus represents a pattern of use of the vehicle 100. In particular, by assembling usage data 620 for a plurality of periods of time, e.g. a plurality of weeks, for a particular vehicle 100, statistics of the usage data over the duration of time represented by the usage data enables a period of time to be identified on which, historically, the user has used the vehicle 100 the least, which would therefore be more convenient for the maintenance operation to be performed. Blocks 510, 520 may be performed by obtaining one or more vehicle records 600 e.g. from a data storage location, where each vehicle record 600 comprises vehicle data 610 and usage data 620 as discussed above. However in other embodiments the vehicle data 610 and usage data may be obtained separately, such as from different data stores. In some embodiments, particularly when separately obtained, the vehicle data 610 and usage data 620 may each comprise the vehicle identification data 630 allowing a relationship therebetween to be determined. In block 510, block 520 or a combination of both, further data may be obtained for use in training the model in some embodiments of the method 500. The further data may comprise one or more of engineering campaign data, service data and predicted issue data. The engineering campaign data is data indicative of one or more engineering issues which may concern maintenance or service issues affecting a vehicle model or all vehicle models of a manufacturer. Where the engineering issue affects one or more particular vehicle models, a comparison of the model of vehicle 100 as determined using the vehicle identification data 630 with models associated with any engineering campaign data is used to retrieve engineering campaign data relevant to the vehicle 100 i.e. by retrieving engineering campaign data from a data store associated with the same vehicle identifier or a genus thereof. The engineering campaign data may identify one or more maintenance operations required to address the associated engineering issue e.g. replacement or modification of one or more the parts, modules, or components of the vehicle 100. The service data is indicative of a predetermined service schedule for the vehicle 100. In dependence on the vehicle identification data 630, the service schedule data is obtained e.g. relating to the model and other specification of the particular vehicle 100 e.g. engine, motor or battery type, specification, features etc., of the vehicle 100. The service schedule data is indicative of one or more scheduled maintenance operations required by the vehicle 100. The schedule may relate to one or both of a mileage and age of the vehicle. A comparison of the service schedule data with an age of the vehicle 100 and the current mileage of the vehicle enables a determination of any maintenance operations required e.g. within a predetermined time, such as 3 or 6 months, or within a predetermined mileage e.g. 1000km of the current mileage ofthe vehicle 100. The predicted issue data is data indicative of any issues predicted with the vehicle 100, parts, components or modules thereof. For example, based on statistical analysis of breakdowns or repairs carried out to vehicles ofthe same type or model, or to simulations of those vehicles, it may be determined that a failure rate of a part exists which has been used for a determined period, such as a number of miles. Therefore the predicted issue data may indicate that it is predicted that the part is liable to failure or incorrect operation above a certain mileage, which may be compared against the current mileage ofthe vehicle 100. The vehicle data 610 and usage data 620 obtained in blocks 510, 520 may be referred to as a historical data set representing historical states and usage of one or more vehicles. The historical data set is used train the model 420 regarding maintenance operations required by the one or more vehicles 100. Block 530 comprises labelling data for use to train the model 420. Block 530 comprises labelling one or both ofthe vehicle data 610 and the usage data 620. In some embodiments, only some of one or both the vehicle data 610 and usage data 620 obtained in blocks 510, 520 is labelled. By labelling it is meant that the vehicle data 610 and / or the usage data 620 is associated with a label. A label may be an appended data field or item indicative of a state ofthe vehicle or usage ofthe vehicle 100. The labels in block 530 may be applied manually to the vehicle data 610 and / or usage data 620, or in an automated process. In an automated process the labels are applied to the vehicle data 610 and / or usage data 620 according to one or more rules. The rules may use one or more thresholds to appropriately label the data. Block 530 comprises determining one or more requirements for a maintenance operation associated with at least some ofthe sets of vehicle data 610. The one or more requirements for the maintenance operation are determined as explained below in order to appropriately label the vehicle data 610 for use in training the model 420. In some embodiments, only vehicle data 610 indicative of a requirement for a maintenance operation is labelled. That is, when the vehicle data 610 does not indicate that the vehicle 100 requires a maintenance operation to be performed, it may not be labelled in block 530. As such some vehicle data 610 may be left unlabelled following block 530. The labelling of vehicle data 610 in block 530 is to associate at least some of the vehicle data 610 with one or more labels indicative of one or more attributes of the requirement for the maintenance operation, which may include one or both of a severity of a required maintenance operation and a category associated with the required maintenance operation. It will be understood that by required, it is meant that the vehicle 100 with which the vehicle data 610 is associated requires a maintenance operation to be performed either at the present time (for example oil pressure is too low) or within a predetermined time or distance period (for example remaining brake pad depth is below a threshold). The label indicative of the severity of a required maintenance operation may be chosen from one of a plurality of predetermined categories. The severity may be indicative of a type of maintenance operation required. Example severity labels may comprise one or more of workshop visit required, roadside triage required and self-help or user maintenance required. Thus the label may indicate a user-performability of the maintenance operation. It will be appreciated that other labels may be used. The label indicative of the category of the required maintenance operation may be indicative of a usability of the vehicle 100 prior to the maintenance operation being performed. For example, category labels of ‘cannot be used’ or ‘should not be used’ may be applied in block 530. Labels indicative of a remaining duration of use e.g. 10 hours or 1000km before the maintenance operation may be applied. Alternatively, the label may be indicative of one or more restrictions under which the vehicle 100 may be used until the maintenance operation is performed. For example, the label may indicate the vehicle being useable upto an identified speed e.g. 100kmh-1 or not suitable fortowing. Other restrictions may be envisaged. The labels may be applied according to the one or more rules. For example, one or more rules may be used to label the vehicle data 610 indicative of the remaining duration of use e.g. 500km or 100km. The one or more rules may use one or more thresholds to determine when to apply respective labels to the vehicle data. The vehicle data 610 may be labelled with a label indicative of attributes of the requirement for the maintenance operation indicative of one or more parts, components or modules of the vehicle 100 to be maintained in the maintenance operation. For example, a label may be indicative of ‘traction motor’, ‘brake pads’ etc. The vehicle data 610 may be labelled indicative of one or more parts or consumables required for the maintenance operation. For example, a label of gearbox oil, pollen filter etc may be applied. In some embodiments, a label may be applied indicative of a duration of the required maintenance operation, such as a number of hours e.g. 1 hour, 2 hours etc, ora number of days (including part-days) e.g. 0.5 days, 1 day, 2 days etc. The usage data 620 may be labelled indicative of one or more suitable periods of time for the maintenance operation to be performed on the vehicle 100. For example, if the vehicle 100 is used least, or not at all, in a time period, such as a day of the week or particular hours of the day / week, then a label may be applied indicative of the time period being suitable for the maintenance operation to be performed on the vehicle 100. Therefore the labelling of the usage data 620 is indicative of one or more most suitable time periods for the vehicle 100 to be unavailable to the user, as determined in dependence on their personal usage data. The vehicle data 610 and usage data 620 obtained in blocks 510, 520 may be divided into at least training and validation data sets. In some embodiments the data is divided into training, validation and test data sets. The training data set is used to tram the model 420, e.g, in the supervised learning process. The validation data set is used to test a performance or accuracy of the trained model 420. The validation dataset is different from the training dataset and is used for determining an accuracy of the trained model 420. The validation dataset may be used whilst tuning one or more hyperparameters as in block 550 below. The test dataset is used to determining an accuracy of the final trained model 420 i.e. following hyperparameter tuning. In block 540 a determination is made as to when the maintenance operation is required to be performed on the vehicle 100. The determination in block 540 is a determination of a period or duration within which the maintenance operation should be performed on the vehicle 100. The period or duration may be a temporal period or duration, ora period of use of the vehicle 100 such as a number of hours use (in the case of a marine craft or industrial vehicle) or mileage (e.g. in the case of a passenger or goods vehicle) within which the maintenance operation is required to be performed. The determination in block 540 is made in dependence on the vehicle data 610. The vehicle data 610 may be pre-processed as part of block 540 into a vectorised form of vehicle data i.e. the pre-processing may provide a vectorized version of the vehicle data 610 indicative of the vehicle’s 100 condition. In some embodiments block 540 utilises reference vehicle data, where the reference vehicle data is indicative of one or more reference vehicle states. The reference vehicle data may comprise a plurality of sets of reference vehicle data, each being indicative of a respective reference vehicle state. For examine, first reference vehicle data is indicative of a condition of a vehicle which immediately requires a maintenance operation e.g. because the oil pressure is low or a battery of the vehicle is producing a voltage below a threshold voltage, and second reference vehicle data is indicative of a vehicle which requires a maintenance operation within 1000km e.g. because the remaining brake pad depth is between first and second thresholds. Other reference vehicle data may be envisaged. Each set of reference vehicle data may have the same format as the vehicle data 610, but being indicative of a known, reference, state of the vehicle. The reference vehicle data may be processed to into a vectorised form in block 540 or prior to the method 500 i.e. the reference vehicle data may be provided to the method in vectorised form. Block 540 comprises training the model 420. The training process in block 550 may comprise training the model 420 in dependence on training data comprising the labelled vehicle data 610 from block 630 and the reference vehicle data. The model 420 is trained to determine, based on the training data, whether new vehicle data 610 i.e. received from the vehicle 100, is indicative of the vehicle 100 requiring a maintenance operation, and a point in time to perform the maintenance operation based on an urgency of the requirement for the maintenance operation and the user’s historic use of the vehicle 100. The training process uses the labels applied in block 530 to the vehicle data 610 and the usage data 620. As part of the training process one or more model parameters are determined, such that the trained model 420 is able to receive new vehicle data (or vehicle data from the validation and test sets) and to provide an output indicative of the requirement for a maintenance operation to be performed on the vehicle 100 corresponding to the vehicle data 610, and to provide an indication of a schedule for the maintenance operation e.g. a point in time for the maintenance operation to take place in dependence on the usage data 620. In one embodiment, block 540 comprises performing a comparison between the vehicle data 610 and the one or more reference vehicle data. Specifically, in some embodiments, block 540 comprises comparing each vector of vehicle data against the one or more of reference vehicle data vectors. The comparison in block 540 may use a content-based recommender, such as a vector space recommender. In some embodiments block 540 comprises using a vector space model (VSM) for each of the vehicle data 610 and reference vehicle data. Each dimension in the VSM represents a value of the vehicle or reference vehicle data. The comparison on block 540 may comprise determining a similarity between the vehicle data VSM and each reference vehicle data VSM. In some embodiments the comparison may be a determination of a cosine similarity between the vehicle data VSM and each reference vehicle data VSM. The comparison may use a Cosine Similarity Clustering (CSC) algorithm. As can be appreciated, cosine similarity is a measure of distance between two vectors and thus provides an indication of a similarity between the vehicle data VSM and each reference data VSM. In this way, the cosine similarity provides a means to generate clusters relating the vehicle data 610 to the reference vehicle data i.e. to determine whether particular vehicle data 610 belongs in a cluster with each reference vehicle data. The determination of the cosine similarity may be performed by a linear kernel. For example, in block 540 the linear kernel may calculate a cosine similarity between the vehicle data VSM and each of the reference data VSMs e.g. each of the first and second reference vehicle data to determine if the vehicle data VSM is similar to the reference vehicle data for a vehicle which immediately requires a maintenance operation, or the vehicle which requires the maintenance operation within 1000km. The similarity may be determined as a value between first and second predetermined limits indicative of an exact match and dissimilar or different. The first and second predetermined limits may be -1 and +1, wherein a value of +1 is indicative of an exact match and -1 is indicative of the two being entirely different or having no similarity. The clustering may be performed in dependence on the similarity value. Furthermore, in some embodiments, the training process of block 540 may generate one or more additional rules to be used in future iterations of block 530 to apply labels to the vehicle data. For example, depending on the similarity to reference vehicle data a corresponding rule may be generated to label vehicle data. As a more specific example, the vehicle data for the vehicle may indicate that: The vehicle is due for a routine service; At least one tyre pressure is above a threshold pressure; and At least one brake pad has a depth below a depth threshold. The vehicle data may be determined to be very similar i.e. having a value close to +1, reference vehicle data indicative of a vehicle: The reference vehicle is due for a routine service; Tyre pressure is acceptable; and At least one brake pad has a depth below a depth threshold. The reference vehicle data may be labelled as corresponding to a vehicle which immediately requires the maintenance operation and, as such, the high level of similarity between the vehicle data and the reference vehicle data indicates that the vehicle also immediately requires the maintenance operation, in comparison with a lower similarity value to reference vehicle data indicative of a vehicle which requires a maintenance operation in 1000km. It will be appreciated that other examples may be envisaged, particularly with VSMs having increased numbers of dimensions. Advantageously the use of cosine similarity clustering provides an efficient algorithm which improves operation of a system hosting the algorithm. As a result of block 540 one or more clusters of labelled vehicle data are generated. For example, a cluster of labelled vehicle data relates to a vehicle requiring a service and having worn brake pads, as above. The method 500 may comprise a block 550 of tuning one or more hyperparameters associated with the training process. As the skilled person will appreciate, hyperparameters influence the model parameters determined during the training process of block 550. An example hyperparameter which may be tuned or adjusted in block 550 is a learning rate hyperparameter which may be used in a gradient descent training algorithm, for example. Other hyperparameters may be tuned in block 550. The training process comprises execution of a training algorithm which may be iteratively performed on the training data, such that an accuracy of the model to predict the requirement and schedule of the maintenance operation improves with each iteration. In some embodiments, blocks 540 and 550 of the method may be performed and iteratively repeated i.e. to adjust one or more hyperparameters with each iteration. Furthermore, subsequently to block 550 an accuracy test may be performed using the trained model and the test data in some embodiments to determine an accuracy of the trained model 420. Steps 540-550 may be repeated to further train the model to increase the accuracy as measured against the test dataset. As a result of the method 500 a trained model 420 is generated which, in use, is able to act upon vehicle data 610 and usage data 620 and to output an indication of whether an associated vehicle 100 requires a maintenance operation and to provide an indication of a schedule for the maintenance operation which is adapted according to the usage data i.e. to be suitable for the user’s use of the vehicle 100. The trained model 420 may be stored in a storage device in block 560, such as the memory 220, of the computer system 200 for later use. Figure 7 illustrates a method 700 according to an embodiment of the invention. The method 700 is a method of using the trained model 420 to initiate a maintenance operation of the vehicle 100. Computer readable instructions for performing the method 700 may be stored in the memory 220 of the computer system 200 which, when executed by the processor 210 are arranged to perform the method 700. The method 700 may be performed by the computer system 200 in the system 250 of Figure 3. The method 700 comprises a block 710 of receiving 810 vehicle data 610 from the vehicle 100. As described above, the vehicle data 610 is indicative of one or more parameters associated with the vehicle 100 at the current time, or at the time of generation, of the vehicle data 610 i.e. the vehicle data may be stored locally at the vehicle 100 for a period of time before communication. As shown in Figure 8 the vehicle data 610 is received at the computer system 200. As described above with reference to Figure 4, the computer system 200 is configured to communicate data 235 with the vehicle 100 via one or more wireless networks e.g. comprising a telecommunications network. To facilitate this communication, the vehicle 100 comprises a wireless communication module for wirelessly communicating data with the computer system 200. In block 710 the vehicle 100 transmits 235, 810 vehicle data 610 to the computer system 200. The vehicle data 610 may relate to a state of the vehicle 100 at one or more points in time i.e. may comprise more than one set of vehicle data 610 each for a respective point in time. The received vehicle data 610 may be stored locally at the computer system 200 such as in the memory 220 or in a data store such as database accessible by the computer system 200. As discussed above, the usage data comprises an indication of one or more parameters associated with the vehicle 100, which may comprise an indication of a state of one or more components of the vehicle 100. The method 700 comprises a block 720 of obtaining usage data 620 associated with the vehicle 100. The usage data 620 is indicative of one or more attributes of the usage pattern of the vehicle 100 as noted above. The usage data may be indicative of one or more previous journeys made by the vehicle 100. The usage data 620 may be obtained by receiving 820 the usage data 620 from the vehicle 100 as illustrated in Figure 8. However, in some embodiments, at least some usage data 620 is obtained other than from the vehicle 100, such as from a data store accessible to the computer system 200 e.g. a database which the computer system 200 can access to retrieve the usage data for the vehicle 100. The usage data 620 may be communicated from the vehicle to a remote computer system e.g. at the end of every journey, with the remote computer system assembling a collection of usage data for the vehicle 100 over a period of time. In block 720 the computer system 200 may desire to obtain usage data for the vehicle 100 for a predetermined period of time, such as the last week or month as examples. The computer system 200 may request the usage data for the predetermined period of time from the computer system or database storing the usage data 620. Thus, in contrast to the illustration of Figure 8, the usage data may not or may only partially be obtained from the vehicle 100 in block 720. The method 700 comprises a block 730 of determining a requirement for a maintenance operation of the vehicle 100. The determination in block 730 is made using the trained model 420 in dependence on the vehicle data 610 and the usage data 620. In particular, in block 730 the inference module 410 executed by the processor 210 of the computer system 200 provides the vehicle data 610 and the usage data 610 as inputs to the trained model 420 i.e. input features. The inference module 410 is arranged to use the trained model 420 to obtain an inference of a required maintenance operation for the vehicle 100 (if one is required, or an indication that no maintenance is required). The inference of the maintenance operation may comprise an indication of a period or duration within which the maintenance operation is required e.g. 1 week, 1 month or within 500km as examples. In block 730 the inference module 410 using the model 420 determines assignment of the vehicle data 610 to a cluster of the trained model 420. The assignment may be determined using the Cosine Similarity Clustering Algorithm (CSCA) to determine the similarity between the vehicle data 610 and each of one or more clusters of the trained model 420. For example, the inference module 410 determines if the vehicle data 610 is similar to the cluster indicative of a vehicle requiring a service and having worn brake pads, as described in the example above in connection with Figure 5. If so, the vehicle 100 having generated the vehicle data 610 is also determined to require a service and to have worn brake pads. The inference of the requirement for the maintenance operation may, in some embodiments, comprise an indication of a user-performability of the maintenance operation. That is, whether the maintenance operation may be performed by the user of the vehicle 100. The indication may indicate that the maintenance operation may be one of user-performed or requires the vehicle 100 to be taken to a maintenance location. The inference may comprise an indication of an duration requirement associated with the maintenance operation i.e. a time required to perform the maintenance operation, such as 30 minutes, 1 hour, 1 day etc., as examples. The indication of the requirement for the maintenance operation in some embodiments comprises an identification of one or more components of the vehicle 100 to be maintained in the maintenance operation e.g. brake system, air condition system etc., as examples. In some embodiments the indication of the requirement for the maintenance operation comprises an identification of one or more parts or consumables required for the maintenance operation, such as filters, lubricants etc Furthermore, in some embodiments, the indication comprises an indication of a schedule for the maintenance operation which considers the usage data for the vehicle 100 i.e. is determined in dependence on the user’s historic use of the vehicle 100. In some embodiments, where the training data for the model 420 also includes data indicative of an availability of resources required to perform the maintenance operation e.g. tools, diagnostic equipment, service equipment etc, the model 420 may receive an indication of current and future availability of those resources and provide the inference in dependence on, not only the usage data 620 for the vehicle 100, but also on the availability of the resources to perform the maintenance operation. Block 740 comprises outputting the indication of the requirement for the maintenance operation. The indication of the requirement for the maintenance operation is output in bock 740 to cause initiation of the maintenance operation on the vehicle 100. In block 740 an indication of the requirement for the maintenance operation may be communicated 830 from the computer system 200 to the vehicle 100 e.g. via wireless communication. In dependence thereon, the vehicle 100 may cause a corresponding output to be provided to the user e.g. via a visual indication displayed on a display device of the vehicle, or audibly within the vehicle 100 to notify the user. Alternatively or additionally in block 740 the indication of the requirement for the maintenance operation may be communicated 840 from the computer system 200 to another, second, computer system 300 or process in a cloud computing environment. For example, the second computer system 300 may be a computer system at a maintenance location or facility for performing the maintenance operation on the vehicle 100. In block 740 the indication may be provided to the user independent of the vehicle 100, such as by providing the indication to an electronic device associated with the user e.g. mobile telephone, smartphone, tablet computer etc. In such cases the notification may be provided from the inference module 410 to a process associated with an application or ‘app’ executing on the device, such that a notification is output from the device. Alternatively the notification may be provided independent of a device e.g. by email or similar communication means to the user. In dependence on the indication being received 840 at the computer system 300 or process in a cloud computing environment, the maintenance operation is initiated in dependence thereon. The initiation of the maintenance operation in some embodiments comprises obtaining one or more parts or consumables to perform the maintenance operation in dependence on receiving the indication. The obtaining may comprise the computer system instructing a roboticized retrieval system obtaining the one or more parts or consumables from respective containers and delivering those parts or consumables to a location to perform the maintenance operation. Blocks 710-740 may be performed in a batch operation, particularly at a cloud computer, where the batch operation performs blocks 710-740 on vehicle data from a plurality of vehicles at a scheduled time. Alternatively, blocks 710-740 may be performed in near- or real-time e.g. on received live vehicle data. Alternatively blocks 710-740 of the method 700 may be executed on a computer system i.e. physical computing hardware hosted on the vehicle 100 i.e. to analyse vehicle data generated locally. In some embodiments, method 700 comprises a block 750 of performing the maintenance operation on the vehicle in dependence on receiving the indication. It can be appreciated that embodiments of the present invention utilise a trained model 420 to determine a requirement for a maintenance operation of a vehicle 100 and a schedule for the maintenance operation which is suitable for the user of the vehicle. Advantageously embodiments of the present invention facilitate preventative maintenance of the vehicle 100, to thereby reduce failures-in-use thereof. It will be appreciated that various changes and modifications can be made to the present invention without departing from the scope of the present application.
Claims
1. A computer-implemented method for initiating a maintenance operation of a vehicle, the method comprising the steps of:receiving vehicle data (610) from a vehicle, the vehicle data being indicative of one or more parameters associated with the vehicle;obtaining usage data (620) associated with the vehicle, the usage data being indicative of one or more attributes of a usage pattern of the vehicle;determining, using a trained model, in dependence on the vehicle data and the usage data a requirement for a maintenance operation of the vehicle; andoutputting an indication of the requirement for the maintenance operation to cause initiation of the maintenance operation.
2. The method of claim 1, wherein the one or more parameters comprise an indication of a state of one or more components of the vehicle.
3. The method of claim 1 or 2, wherein the one or more parameters comprise an indication of a fault associated with one or more components of the vehicle determined at the vehicle.
4. The method of any preceding claim, wherein the usage data comprises one or both of: an indication of a historic pattern of use of the vehicle; and an indication of a historic usage amount of the vehicle.
5. The method of any preceding claim, wherein:the requirement for the maintenance operation comprises an indication of a user-performability of the maintenance operation and an associated duration requirement; andthe indication of the maintenance operation comprises an indication of said user-performability and the associated duration requirement.
6. The method of any preceding claim, wherein the requirement for the maintenance operation comprises an indication of a schedule for the maintenance operation.
7. The method of any preceding claim, wherein the trained model is configured through training in dependence on a plurality of vehicle records, the vehicle records comprising historical vehicle data associated with historical usage data.
8. The method of any preceding claim, wherein the indication of the requirement for the maintenance operation comprises an identification of one or more components of the vehicle to be maintained in the maintenance operation.
9. The method of any preceding claim, wherein the indication of the requirement for the maintenance operation comprises an identification of one or more parts or consumables required for the maintenance operation.
10. A computer-implemented method fortraining a model to initiate a maintenance operation of a vehicle, the method comprising the steps of:obtaining a plurality of sets of vehicle data indicative of one or more parameters associated with one or more vehicles;obtaining usage data associated with the one or more vehicles, the usage data being indicative of one or more attributes of a usage pattern of the vehicle;determining requirements for one or more maintenance operations associated with at least some of the sets of vehicle data;training a model for determining the requirements for the one or more maintenance operations in dependence on the plurality of sets of vehicle data and the usage data.
11. The method of claim 10, wherein each of the plurality of sets of vehicle data is associated with a respective one of the plurality of vehicles, and the usage data comprises usage data for the respective one of the plurality of vehicles.
12. The method of claim 10 or 11, wherein the vehicle data comprises an indication of one or more parameters and the method comprises determining, for each parameter, one or more attributes of the requirements for the one or more maintenance operations.
13. The method of any of claims 10 to 12, wherein the determining the requirements for the one or moremaintenance operations comprises determining a similarity between the vehicle data for each vehicle and each of one or more rules each indicative of a respective maintenance operation.
14. A vehicle, comprising a wireless communication module and a user interface, wherein:the wireless communication module is arranged to communicate vehicle data to a control system (200) arranged to perform the method of any of claims 1 to 9, and to receive an indication of a requirement for a maintenance operation from the control system; andthe user interface is arranged to output an indication of the requirement for the maintenance operation.
15. Computer readable instructions which, when executed by a computer, are arranged to perform a method according to any of claims 1 to 9 or 10 to 13.
Citation Information
Patent Citations
Apparatus and method for vehicle maintenance scheduling and fault monitoring
US20200175779A1
Predictive maintenance of vehicle components
US20220067667A1
Monitoring system for engine performance and failure prediction
US20220155772A1
Aircraft Maintenance of Line Replaceable Units
US20220398550A1
Vehicle prognostic tool
WO2023014418A1