Method of predicting route failure for an autonomous agricultural vehicle adapted to perform an animal related action in an animal-related space and animal farm system comprising an autonomous agricultural vehicle and processsor adapted for carrying out the method
A stochastic neural network algorithm for autonomous agricultural vehicles predicts route failures in livestock spaces, addressing navigation errors by analyzing sensor data patterns, reducing downtime and enhancing reliability through real-time prevention and adjustment.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- LELY PATENT NV
- Filing Date
- 2025-12-10
- Publication Date
- 2026-06-25
AI Technical Summary
Autonomous agricultural vehicles in livestock-related spaces face navigation errors due to harsh environments, leading to unpredictable route failures and significant downtime, which are difficult to identify and remediate, especially when sensors slip or become dirty, requiring manual intervention and in-depth analysis.
Implementing a stochastic neural network algorithm for multivariate time series anomaly detection to predict route failures by analyzing live sensor data from vehicles, trained on historical datasets to recognize patterns indicative of impending failures, allowing for real-time or post-hoc adjustments to prevent or mitigate such failures.
Reduces vehicle downtime and user intervention time by providing early warnings and enabling proactive measures to prevent route failures, improving navigation reliability and accuracy through automated failure prediction and prevention.
Smart Images

Figure IB2025062648_25062026_PF_FP_ABST
Abstract
Description
[0001] METHOD OF PREDICTING ROUTE FAILURE FOR AN AUTONOMOUS AGRICULTURAL VEHICLE ADAPTED TO PERFORM AN ANIMAL RELATED ACTION IN AN ANIMAL-RELATED SPACE AND ANIMAL FARM SYSTEM COMPRISING AN AUTONOMOUS AGRICULTURAL VEHICLE AND PROCESSOR ADAPTED FOR CARRYING OUT THE METHOD
[0002] FIELD
[0003]
[0001] The invention relates to a method of predicting route failure for an autonomous agricultural vehicle adapted to perform an animal related action related to at least one of cleaning up and providing feed in an animal-related space, wherein the vehicle is arranged to drive at least one pre-planned route in order to perform the animal related action. The invention further relates to a computer program, a processor comprising a memory containing the computer program and a user interface system adapted for being operably connectable to the processor. Furthermore, the invention relates to an animal farm system comprising an autonomous agricultural vehicle and a processor comprising a memory containing the computer program.
[0004] BACKGROUND
[0005]
[0002] Autonomous vehicles in a livestock-related space are known per se, such as the Lely Discovery® manure removal vehicle and the Lely Vector® feeding vehicle. It is clearly important that vehicles of this type are able to move around reliably and precisely, such that a farmer can trust his autonomous vehicle(s) to perform animal- related tasks as planned. The vehicles are provided with a navigation system, which comprises a sensor system for collecting vehicle movement and localization information and a memory for navigation information. In particular, the vehicles navigate using a floorplan of the livestock-related space and pre-planned routes consisting of discrete actions that guide the vehicle through the livestock-related space. As the environment is so harsh for external sensors and to keep costs of the vehicles relatively low, the sensor system mainly relies on current measures of the vehicle’s actuated wheels and ultrasonic sensors facing in different directions with respect to the vehicle’s longitudinal axis. However, due to the floor conditions being wet and covered in manure, the wheels may slip, and the ultrasonic sensors may become dirty, causing the vehicle location as measured along the route to drift.
[0006]
[0003] To remedy navigation errors caused by imperfect vehicle localization due to the limited sensing capability, the pre-planned routes are normally provided with a number of positions where the vehicle contacts a wall or other fixed object in the livestock-related space to recalibrate its position. Furthermore, the vehicles are pre-programmed to undertake so-called recovery actions when sensor values indicate an unexpected obstruction, which may indicate a moveable object that is suddenly present along the preplanned route or an indication the vehicle is no longer in the correct location along the route as the pre-planned route is being carried out. When the recovery actions are unsuccessful, the vehicle will take on a failure state and not move anymore until manual intervention. Depending on the farmer’s other tasks at the moment of failure, this may result in substantial downtime for the vehicle, as well as require effort from the farmer to identify the cause of failure to prevent the failure to complete the route from occurring again. In particular since the autonomous vehicle may have steered off route a fair bit before taking on the failure state, in part due to the recovery actions, it can be hard to identify where the cause of failure along the route is to be found. For example, when the farmer sees a moveable object that is blocking the road, there is a fair chance this is the cause of failure. Remedying subsequent attempts for the vehicle to complete the route from failing is easily achieved by removing the moveable object.
[0007]
[0004] Other causes, however, such as for example failing sensors or a locally degraded floor condition, often require a more in-depth assessment of the situation to learn from and preferably prevent from being further repeated. Any such failures in route completion are currently assessed post hoc, analysing autonomous vehicle logs available from before the failure using expert domain knowledge to determine when and where along the route the first failure occurred. This is a complicated process usually involving estimated guesses of root causes.
[0008]
[0005] A goal of the invention is to improve upon at least one of these aspects related to route failure. In particular, a goal of the invention is to reduce failure time for the vehicle and / or to reduce user-time spent on remedying subsequent route failures.
[0009] SUMMARY OF THE INVENTION
[0010]
[0006] In this application, the terms "animal" and "animal- related" are always understood to mean "non-human animal" and "related to a non-human animal". The animal-related action is an action for the purpose of managing the animal, such as feeding, removing manure or other dirt, cleaning of or litter-dispensing in cubicles, generally monitoring animals, etc., wherein the action is carried out by an autonomous vehicle. Here, the livestock- related space is a space that is suitable for carrying out a livestock-related action, such as a livestock building or a specific part thereof, such as a feeding alley. The “pose” of the vehicle is the position and / or orientation of the vehicle, somehow relatable to boundaries of the animal-related space.
[0011]
[0007] According to a first aspect of the disclosure, a solution is provided through a method, in particular a computer-implemented method, of predicting route failure for an autonomous agricultural vehicle adapted to perform an animal related action related to at least one of cleaning up and providing feed in an animal-related space, wherein the vehicle is arranged to drive at least one pre-planned route in order to perform the animal related action.
[0012]
[0008] According to a second aspect of the disclosure, a solution is provided through a method, in particular a computer-implemented method, of training a stochastic neural network algorithm for multivariate time series anomaly detection for predicting route failure of an autonomous agricultural vehicle.
[0013]
[0009] As described herein, the method in line with the first aspect comprises the steps of: obtaining live sensor data from the vehicle whilst performing the pre-planned route in order to perform the animal related action; obtaining associated target or expected values for said sensor data; processing the sensor data, and target or expected values using a trained and tested stochastic neural network algorithm for multivariate time series anomaly detection; and providing a failure prediction based on the processing, when an anomaly score value exceeds the failure threshold value.
[0014]
[0010] The live sensor data may relate to a controlled variable indicative of driving performance and / or pose of the vehicle while driving the route, and is a measurable, i.e. controlled, variable such as a sensor value, that is somehow relatable to the driving and / or pose of the vehicle. Examples of such variables include, but are not limited to, power consumption by a drive motor, temperature of the drive motor, rotational speed of a component of or component attached to the drive motor, a gyroscope, an acceleration sensor, an optical distance sensor and a GPS locator.
[0015]
[0011] The trained and tested stochastic neural network algorithm for use in the method according to the first aspect, may be obtained using the method according to the second aspect. The training method, in line with this second aspect, comprises the steps of: inputting a normalized training dataset based on data from a historical dataset from at least one nominally performed route by the autonomous agricultural vehicle, the nominally performed route being a pre-planned route execution that starts and ends at a base station of the vehicle and wherein the historical dataset comprises a time series of a datatype corresponding to a controlled variable indicative of driving performance and / or pose of the vehicle while driving the route and an associated target or expected value for said datatype at each given time in the time series; training the stochastic neural network algorithm with the normalized training dataset; inputting a normalized testing dataset based on data from a second historical dataset from a mix of at least one nominally performed route and at least one failed route performance of a pre-planned route by the agricultural vehicle; and selecting a failure threshold value corresponding to an anomaly score value exceeding any anomaly score value determined for nominally performed route data in the testing dataset;, and which will be described later.
[0016]
[0012] Thus, the method comprises obtaining an algorithm with a neural network that is trained and tested with historical datasets (i.e. the historical dataset and the second historical dataset) such that the algorithm has learned to recognize patterns in data that indicate a deviation from normal behavior of the vehicle along the route. Based on the dataset used for testing the algorithm a failure threshold is determined such that only identified deviations from the normal behavior exceeding this threshold and originating from data corresponding to failed pre-planned routes in the dataset result in a failure prediction output by the algorithm. Using this trained and tested algorithm, with the appropriately selected failure threshold, with data from the vehicle then allows the algorithm to output failure predictions for this data, based on which prediction appropriate action can be undertaken to remedy the predicted failure or future failures corresponding to the predicted failure from occurring. The algorithm picks up patterns in data that eventually lead to failure, but which precede the failure. These patterns are often difficult for humans to pick up and are mostly only partially identified when analyzing datasets from failed route performance through analyzing backwards from the moment of failure. Thus, the patterns are currently only found and used in post-hoc analysis and require in- depth analysis by an experienced engineer. Using the algorithm as proposed here offers a vast improvement in that patterns in data leading up to failure may be detected such that failure can be predicted with reasonable certainty before it occurs.
[0017]
[0013] The historical datasets may consist or comprise of data sourced from a similar type of vehicle to the vehicle of which the vehicle data is processed from. Similar type vehicle is to be understood as being a vehicle of the same make and model. Furthermore, the historical datasets may consist or comprise datasets from route performances of pre-planned routes in the animal-related space the actual vehicle is operating in, or consist or comprise of datasets from route performances of pre-planned routes performed in at least one different animal-related space therefrom. Thus, the steps relating to obtaining a trained and tested stochastic neural network algorithm for multivariate time series anomaly detection may at least partially be performed with datasets that are readily available in a database from someone servicing multiple vehicles from the same make and model, such as for example the manufacturer thereof. As such, newly installed vehicles, i.e. vehicles that are either completely new to a particular animal- related space and / or are installed with at least one new pre-planned route, may be monitored for route failure through this method from the moment of being installed using an algorithm that is trained and tested with datasets from similar vehicles.
[0018]
[0014] It will be generally understood that the training dataset and testing dataset comprise data of matching datatype(s), i.e. data from a corresponding data source, such as for example a motor sensor or a distance sensor and that the algorithm is to be trained and tested with the same datatype(s) that will also be obtained as live data from the vehicle. The live data from the vehicle may be data coming into the algorithm as a (close to) real-time data stream, or as a complete dataset of a single route performance.
[0019]
[0015] The live data from the vehicle being a real-time data stream from the vehicle is used to monitor vehicles route performance whereby a failure prediction output by the algorithm is a real-time prediction that may be signaled to a user and / or the vehicle to trigger an action that leads to a faster resolving of even prevention of the failure from actually occurring. The faster resolving of failure in this case compared to the current situation where the (on-site) user, such as the farmer, only receives a failure notification when the vehicle is already stuck somewhere in the animal-related space and needs human intervention, while now the user may receive a notification of upcoming failure such that downtime of the vehicle can be reduced as he can intervene sooner. The failure notification may even lead to the user being present with the vehicle before actual failure occurs, allowing for manual prevention of the failure. The real-time prediction may also be signaled to the vehicle, which may be adapted to have a preventative action triggered by the signal. This preventative action is carried out before the vehicle would carry out a recovery action, thus having a higher chance of preventing the need of such a recovery action and / or route failure.
[0020]
[0016] The live data from the vehicle being a complete dataset of a single route performance may be used for validating the pre-planned route the dataset originates from, or for post-hoc analysis in case failure did occur. In particular, if the complete dataset is from a nominally performed route, such as for example a first route performance of a new pre-planned route that started and ended at the base station, the method may be used to check the dataset for patterns that are close to failure. In other words, the method may result in a failure prediction despite the route having been completed successfully, indicating that the pre-planned route may include one or more sections where the vehicle had difficulty staying enroute under the current conditions and which may thus lead to failure if the conditions were to deteriorate (such as wheels wearing down and floor becoming more dirty or slippery). These difficulties may normally not be picked up by a user, while the “false positive”, i.e. failure prediction by the algorithm for a route that is considered to have been performed successfully, may be used to adjust the pre-planned route in order to prevent future failures. Similarly, the algorithm could make post-hoc analysis easier and / or better, since the algorithm outputs a failure prediction based on a pattern in the data that is recognized as leading to failure. Thus though using the algorithm to perform post hoc analysis of failed routes, a user will be able to pinpoint the moment of the root-cause of the failure occurred, thereby making it faster and easier to relate back to a position along the route where failure occurred and possibly also easier to find the actual cause of route failure. The quality of the post-hoc analysis is no longer heavily dependent on how talented and / or well-trained the person performing the analysis is.
[0021]
[0017] In an embodiment, the output anomaly score value for each time within the data time series is a continuous moving average anomaly score value, such as a sliding window average, over a predetermined timestep going backwards from each time within the time series. Using a continuous moving average enables the anomaly output to take account of a cumulative effect of anomalies that together lead to failure and thereby also correctly identifying failed routes that were not caused by a single significant peak anomaly.
[0022]
[0018] In an embodiment, the steps of processing the normalized training dataset and processing the normalized testing dataset are together, sequentially, repeatedly performed as a tuning step, wherein one of at least one changeable hyperparameter of the algorithm is adjusted in between each repetition, to obtain a value for each of said at least one changeable hyperparameters that results in the algorithm optimally identifying nominal and failed route performances in the testing dataset, and wherein the steps of processing the normalized training dataset and processing the normalized testing dataset are finally performed with the algorithm having the obtained value of each of the at least one changeable hyperparameters. The changeable hyperparameters are settings of the algorithm that can be adjusted to optimize the learning process. Thus, by performing the tuning step to find and set the optimal hyperparameters for the algorithm, the algorithm’s performance is optimized. To ensure the algorithm has the correct failure threshold set for further use, it is important to perform a final processing “run” with the training and the testing datasets while the algorithm has the found optimal values set for the changeable hyperparameters.
[0023]
[0019] Optionally, the second historical dataset comprises at least a part of the historical dataset on which the training dataset is based. This allows training and testing of the algorithm being performed with a relatively low number of route performances from which historical data is available. Moreover, through using a part of the historical dataset that was used during training also during testing, the algorithm’s performance on the training dataset can be verified. This may be of particular interest if the historical data was manipulated, to, for example, remove noise data, before forming the training dataset, while the historical data was not manipulated as such to form the testing dataset.
[0024]
[0020] Preferably, the historical dataset comprises data from the at least one preplanned route of the vehicle. This ensures the algorithm is trained with vehicle behavior patterns in the actual environment the method is used to detect failure of the vehicle and of the actual route through that environment that will be used. As a result thereof, the algorithm has higher in situ failure detection accuracy.
[0025]
[0021] In an embodiment, the live data comprises at least two datatypes and the step of obtaining a stochastic neural network algorithm for multivariate time series anomaly detection comprises obtaining at least two stochastic neural network algorithms that are each trained and tested for another one of the at least two datatypes. The live data of each of the at least two datatypes is processed with a respective correspondingly trained and tested one of the algorithms. Thus, each of the at least two algorithms is used to predict failure based on a different datatype. It was found that using separately trained and tested algorithms for different datatypes results in more accurate failure predictions than when training a single algorithm for multiple datatypes. Moreover, through using individually trained and tested algorithms to process different datatypes in parallel, data leading to failure can more easily be related back to a particular data-source and thereby enable easier root-cause analysis for a predicted failure. In case the failure prediction signal is sent to the vehicle to trigger a preventative action, the different route-causes may be used to tailor the preventative action to be most suited for the scenario at hand.
[0026]
[0022] Preferably, the failure decision output, in the case of the live data comprising at least two datatypes, is based on at least one of the at least two stochastic neural network algorithms finding an anomaly score output exceeding its failure threshold value. Thus, the failure decision does not need to be based on all algorithms predicting a failure (at the same time). Although it may result in a higher accuracy for the failure prediction to require the individual output of more than one of the algorithms exceeding a corresponding failure threshold, awaiting a moment where all algorithms exceed their respective failure threshold may be too close to actual failure, i.e. vehicle shutdown, for the failure decision output to be of use as a prediction to base prevention on. Therefore, it may be preferred to have a failure decision output when a preset amount of the analyzed datatypes output an anomaly score output exceeding its failure threshold. Optionally, the failure decision is based on a majority vote of the at least two stochastic neural network algorithms. In other words, the preset amount may be set to half the total amount of algorithms that are running in parallel or to half the total weight of algorithms that are running in parallel, when each algorithm is given a weighing-factor based on for example an accuracy or failure risk factor associated with a particular datatype when determining route failure based thereon.
[0027]
[0023] In an embodiment, the stochastic neural network algorithm comprises a variational auto-encoder adapted for determining route anomalies and a post-processor adapted to determine what route anomalies lead to route failure, wherein the variational auto-encoder comprises an encoder, a latent space and a decoder and wherein both the encoder and the decoder comprise a type of recurrent neural network layers to account for temporal dependence of the input datasets and wherein the latent space is adapted to capture stochasticity of the data. The variational auto-encoder allows for temporal dependence among stochastic variables in the (input) data being explicitly modelled by the algorithm, while the type of recurrent neural network layers capture the temporal dependence of the data, i.e. account for a current state of the vehicle being affected by a previous state of the vehicle. A known variational auto-encoder (VAE) comprising a type of recurrent neural network layers that may be adapted for use is “OmniAnomaly”. This algorithm uses a grated recurrent unit (GRU) for the recurrent neural network layers and outputs all anomaly score values, i.e. anomaly values obtained per timestep in the time series. Through the post-processor, these anomaly score values are compared to the failure threshold, preferably after being time averaged, and a failure prediction is given for a route as a whole, rather than a particular time-step. Instead of this readily available algorithm, an alternative algorithm may be devised using one of a regular recurrent neural network or long short-term memory (LSTM) for the recurrent neural network layers.
[0028]
[0024] In an alternative embodiment, the stochastic neural network algorithm comprises a generative adversarial network, adapted to account for stochasticity, together with recurrent neural network layers to account for temporal dependence of the input datasets and a post-processor adapted to determine what route anomalies lead to route failure.
[0029]
[0025] In an embodiment, the multivariate time series anomaly detection of the stochastic neural network algorithm is achieved through segmenting input data set(s) into sequences through sliding windows of a predetermined length. The segmenting through sliding windows enables time series modelling wherein preceding values within a predetermined timestep back from the current time provide context to current time data in each set. The predetermined length of the windows may be chosen in dependence of the data-frequency and / or length of the route.
[0030]
[0026] In an embodiment, wherein the controlled variable indicative of driving performance and / or pose of the vehicle performing at least one known route, for each time within the time series, comprises a measured value and a target value, or consists of a delta between the measured value and the target or expected value. Thus, the controlled variable may be provided as input which contains a list of targets or expected values alongside the list of live or historical data as measured during route performance. Alternatively, the controlled variable may be provided as input which contains a list of delta values. Each list corresponds to a data-source of the vehicle, such as for example (one of) a motor sensor or a distance sensor. A single input (of historical data and live data) may comprise lists of input from multiple data-sources, preferably from similar type data-sources, such as for example from a left and a right motor sensor of the vehicle. Although any datatype indicative of vehicle performance along a route may be used to predict failure, preferably the controlled variable indicative of driving performance and / or pose of the vehicle performing at least one known route is one of a sensor value indicative of or related to motor-speed and a sensor value indicative of a pose of the vehicle. Herein, the pose may be determined as a global / absolute value, such as using GPS, gyroscope or beacons, or may be a relative value, i.e. determined with respect to sensed boundaries in the space, such as using optical or ultrasonic sensors. Non-limiting examples of sensor values indicative of or related to motor-speed are measures of motor current, wheel rotational speed and motor torque. Preferably, when at least two algorithms are used in parallel, at least one of the algorithms is used for a sensor value indicative of or related to motor-speed or a sensor value indicative of a pose of the vehicle.
[0031]
[0027] According to a third aspect of the disclosure, a solution is provided through a system for predicting route failure of an autonomous agricultural vehicle, the system comprising.
[0032]
[0028] According to a fourth aspect of the disclosure, a solution is provided through a computer program comprising instructions which, when the program is executed by a computer, cause the computer to carry out the method of the first aspect of the invention.
[0029] According to a fifth aspect of the disclosure, a solution is provided through a processor comprising a memory containing the computer program of the second aspect of the invention. The processor may be comprised in a computer device with a user interface. Alternatively, the processor may be comprised in a server, that is either located on the farm itself or remotely and for example set up to provide a shared service such as via cloud. In a further alternative, the processor is comprised in an autonomous agricultural vehicle adapted to perform an animal related action in an animal-related space.
[0033]
[0030] According to a sixth aspect of the disclosure, a user interface system is provided, adapted for being operably connectable to the processor according to the third aspect of the invention, wherein the user interface system is arranged to receive output information from the processor and communicate said output to a user thereof, the output consisting or comprising one or more of a sound message, a visual message, a visualization of predicted failure along the route in a graph along a timeline of the route being performed by the vehicle and / or a on map of the animal space, or portion thereof. Through the user interface system, failure output decisions from the method carried out by the processor may thus be communicated to a user. The communication may be through sound and / or visually. The failure communication allows the user to take one or more desired actions, depending on the particular set-up of the system and the particular user. For example, when the user is the farmer / owner of the associated vehicle for which failure is predicted, the user may be prompted to clean a particular part of the vehicle or the floor surface enroute and / or restart the vehicle to thereby reduce downtime. In a further example, such as when the user is a technician, the failure communication allows analysis of failure(risk) and optional (manual) adaptation of the route to prevent future failures.
[0034]
[0031] According to a seventh aspect of the disclosure, a solution is provided through an animal farm system comprising: an autonomous agricultural vehicle adapted to perform an animal related action related to at least one of cleaning up and providing feed in an animal-related space, wherein the vehicle comprises at least one drive wheel under the control of a control device, for controlling the at least one wheel to move the vehicle in accordance with control signals that are based on a pre-planned route, and at least one of a drive sensor system adapted to collect vehicle driving data and a localization sensor, such as a distance sensor, for collecting data related to localization of the vehicle within the animal- related space and a vehicle communication device; a processor according to the third aspect of the invention, adapted for being operably connectable to a user interface system according to the fourth aspect of the invention and for receiving data collected by the vehicle drive sensor system and / or localization sensor via the vehicle communication device.
[0035] The advantages and variations as discussed for the first aspect of the disclosure apply.
[0032] Preferably, the processor is arranged to prompt a failure notification message being output by the user interface system when route failure is predicted. In addition to the previously indicated advantages for the user interface system, that allow a user to more quickly tend to a vehicle and thereby reduce downtime and / or to adjust one or more of the vehicle, animal-related space or route to prevent further future failure, the system could also help prevent failures that have not occurred yet. More specifically, when a failure notification message is provided without the vehicle experiencing a route failure shortly thereafter, the computer program experienced a false positive, provided no further preventative action was undertaken. Although a false positive might be an indication of the algorithm having accuracy issues and requiring retraining, this may also be an indication of the vehicle having been close to failure, i.e. having difficulty performing the route and actually failing if conditions of either animal-space or vehicle deteriorate, such as the floor becoming dirtier or the wheels degrading. In particular when a false positive is experienced for a newly implemented route, such a notification may be used to re-evaluate and adjust the route.
[0036]
[0033] Additionally or alternatively, the processor may be adapted to communicate with the vehicle’s controller and arranged to prompt a preventative action being initiated by the controller for the vehicle to perform, the preventative action consisting or comprising at least one of: driving to a pre-determined recovery location within the animal space, the predetermined recovery location optionally being the base station location; or changing the vehicle’s driving speed.
[0037] Thus, the system may be adapted to automatically attempt to resolve upcoming route failure, i.e. one or more actions may be triggered that remedy the vehicle from needing recovery actions and keep the vehicle further from situations where it requires human intervention to return to a base station. DRAWINGS
[0038]
[0034] The invention will be explained below with reference to the drawings, which show non-limiting exemplary embodiments of the invention, in which identical reference numerals indicate identical or similar components, and in which:
[0039]
[0035] Figure 1 conceptually illustrates application of embodiments of the invention;
[0040]
[0036] Figures 2a and 2b conceptually illustrate application of embodiments of the invention;
[0041]
[0037] Figure 3 conceptually shows an exemplary matrix of a drive sensor data set for use as input;
[0042]
[0038] Figure 4 is a flowchart of method steps according to embodiments of the invention;
[0043]
[0039] Figure 5 is a flowchart of method steps according to embodiments of the invention;
[0044]
[0040] Figure 6 schematically illustrates a methodology for determining route failure;
[0045]
[0041] Figure 7 conceptually shows an exemplary graphical representation of determining route failure;
[0046]
[0042] Figure 8 schematically illustrates a further methodology for determining route failure; and
[0047]
[0043] Figures 9a and 9b each show an exemplary graphical representation of route failure on a map representation for the same route section, respectively showing failure related to wheel slip and failure related to distance sensor failure.
[0048] DETAILED DESCRIPTION
[0049]
[0044] In the present detailed description, various embodiments of the system and method according to the present invention are described with reference to an autonomous vehicle in the form of a manure removal vehicle and an animal farm system designed for milking animals. However, the present invention may equally be used with other autonomous vehicles adapted to perform some animal-related action, such as but not limited to providing feed. Some exemplary alternative types of autonomous vehicles are briefly introduced in the description of Figure 1. Moreover, the present invention may equally be used in animal farm systems designed for other animals, such as meat cattle. In such cases, fewer, more or other animal related structures may be provided in the animal-related space and have to be accounted for during vehicle route planning and performance.
[0050]
[0045] Figure 1 conceptually illustrates application of embodiments of the invention. Figure 1 diagrammatically shows a part of an animal farm system, that is generally designated with reference numeral 1. It comprises a livestock-related space in the form of a barn 2 in which animals such as cows (not shown here) can move about freely. The barn has walls 3 and animal related structures like a feed fence 4, a drinking trough 8, cubicles 9 and a milking system 10. Behind the feed fence 4 is a feed alley 5 with feed 6, pushed by a feed pusher 7. Another vehicle is an autonomous manure removal vehicle 11 , here at a charging device 12 and about to follow a route indicated by the line 13. In the present case, there is feed fence 4 that separates a barn part that is accessible for animals from the feed alley 5 that is not. In the feed alley 5, a farmer or automated system may provide feed 6 such as roughage. Here, an autonomous feed pusher 7 vehicle such as the Lely Juno® is provided, that pushes tossed about feed toward the feed fence 4, so that the animals can reach it again. The feed pusher 7 thereto moves along the arrow shown, along a route parallel to the feed fence 4. Even though the feed alley 5 cannot be reached by animals, it is still part of the barn 2. Another autonomous vehicle provided here is a manure removal vehicle 11 , such as the Lely Discovery®. It is shown here at a charging device 12, for recharging its battery. Such position is a useful reference point for orientation and navigation and is commonly used as start and end position in the routes to be followed by vehicles, such as the diagrammatic route indicated with the line marked 13. This route is very simple and given only for illustrational purposes. For reliable operation, it is important that the vehicle returns to the charging station before the battery runs out, which requires the vehicle not to get lost and / or stuck while driving the route.
[0051]
[0046] Figures 2a and 2b further conceptually illustrate application of embodiments of the invention. Figure 2a shows the manure removal vehicle 11 and Figure 2b shows an external communication device 20.
[0052]
[0047] The manure removal vehicle 11 comprises a first drive wheel 19a, a second drive wheel 19b, a control unit 14 with a memory (not shown), a drive sensor system 15, a first distance sensor 16, a second distance sensor 17 and a vehicle communication device 18.
[0053]
[0048] The vehicle 11 can move manure across the floor with a scraping device and / or collect the manure. Thereto, it moves along a pre-planned route, such as the schematically indicated route 13 in Fig. 1 , under the control of the control device 14, which operates each of the drive wheels 19a, 19b of the vehicle 11 individually and in accordance with the pre-planned route. The control device 14 is operably connected to the drive sensor system 15, the distance sensors 16, 17 and the vehicle communication device 18.
[0054]
[0049] The drive sensor system 15 is adapted to collect vehicle driving data, comprising a sensor for monitoring motor-speeds of the drive motor actuating each drive wheel and / or a directly proportional value such as motor-current and wheel revolutions. Further, the drive sensor system 15 may comprise a system adapted for monitoring a relative orientation, and optionally position, with respect to a previous orientation, and optionally position, such as a gyroscope or IMU unit. This may be particularly relevant for alternative vehicle designs which for example make use of a single drive wheel and a steering wheel.
[0055]
[0050] Furthermore, the vehicle has a first distance sensor 16 and optionally a second distance sensor 17, such as in each case an ultrasonic sensor that is less sensitive to manure and other dirt in a barn, for determining distances to objects, such as walls, in the animal-related space. However, other sensors such as optical sensors and cameras could be used in addition or as an alternative. The distance sensor(s) 16,17 are used to monitor the vehicles distance with respect to closest objects within range thereof within the barn, which ideally consist of known objects also identified in the map, such as walls, to enable a localization of the vehicle 11 within the barn, such as along the preplanned route 13, being estimated by a localization module of the vehicle (not shown, may be comprised in the control device 14) with increased accuracy. Hereto, the localization module combines the data from the distance sensor(s) with at least a part of the vehicle driving data obtained by the vehicle drive sensor system 15 at a current pose along the route, as well as a localization of a preceding pose along the route.
[0056]
[0051] The external communication device 20 is shown as consisting of a processor 25 and a user interface system 35 with a display screen 21 showing a map 22, as well as buttons 24. The processor 25 has a memory (not shown) having a stochastic neural network for multivariate time series anomaly detection stored thereon for identifying failures of route completion. The stochastic neural network for multivariate time series anomaly detection is also referred to as the algorithm. Further details of the algorithm are described with reference to figures 3 - 8 below. The user interface system 35 and processor 25 may be comprised in a single device, such as a computer. Alternatively, the processor 25 may be comprised in a device or system that is operably connectable to the user interface system 35, preferably in a wireless manner. For example, the processor 25 may be comprised in a server, that is either located on the farm itself or remotely and for example set up to provide a shared service such as via cloud. In a further alternative, the processor 25 may be comprised in the vehicle 11. The operably connectable user interface system 35 may be a computer, tablet or smartphone, communicating with the processor 25 via an app, which may be web-based.
[0057]
[0052] It will be obvious to the skilled person that the display screen, regardless of the external communication device being a computer, a tablet or a smartphone, may be a touchscreen. As such, the displayed buttons 24 may be provided as physical buttons and / or touch-screen buttons, wherein the latter might be displayed as buttons that are always available, or buttons that become available in dependence of previously selected buttons or via prompts, i.e. “ pop-up screens” that are displayed in dependence of predetermined occurrences or actions, such as received user input, collected data, an identified upcoming failure of route completion and / or a vehicle failure message. In the latter two cases, a message is displayed as a prompt to trigger action from the user to tend to the vehicle 11 via the external communication device 20 and / or physically at the location of the vehicle 11.
[0058]
[0053] The vehicle 11 can communicate through the vehicle communication device 18 with the external communication device 20, such as to send data collected through the drive sensor system 15 and distance sensors 16, 17, and to receive navigation information. The navigation information may comprise the route 13 as a pre-planned, fixed list of movements through the barn, or comprise user input for generating a route, as a list of movements through the barn, onboard the vehicle 11. Thus, the route 13 may be inputted stepwise by a user or auto generated based on user input requirements and constraints, such as for example a predetermined location or area, optionally with a coverage requirement and / or limitations.
[0059]
[0054] The route 13 ultimately consists of a series of straight sections, each having a predetermined length, and curved path sections, each having a predetermined length and radius. To navigate the vehicle 11 along this series of straight sections and curved path sections, the control unit 14 operates the drive wheels of the vehicle to rotate under a predetermined motor-speed for a predetermined amount of time to reach subsequent positions along the route 13. Thus the route 13 is translated to a time-series of target motor-speeds to be controlled by the control device 14 and target / expected distances to objects in the barn to be returned to the control device by the distance sensors 16, 17. It will be obvious that in vehicles of an aforementioned alternative design, comprising a steering wheel instead of two independently operated drive wheels, the route 13 is translated into a time-series of target motor-speeds combined with wheel-orientations with respect to a forward driving direction F of the vehicle. As the vehicle 11 is performing the route 13, the drive sensor system 15 and distance sensors 16, 17 measure the aforementioned data. The vehicle driving data provides information about the actual motion of the vehicle while the distance sensor data provides information about actual relative distances to surrounding objects. The data is compared to the target / expected data, to determine the pose of the vehicle 11 along the route 13 and such as to determine the next action for the control unit 14 to be instigated for the route 13 to be continued. When an action as instigated by the control unit 14 cannot be carried out by the vehicle 11 , the vehicle 11 is adapted to execute a preprogrammed recovery action. For example, the vehicle 11 cannot drive in the forward driving direction F for the predetermined time and / or speed set by the control device due to an object that is not identified in the vehicle’s map 22 and thus not accounted for in the route 13. In this case, the vehicle 11 may be controlled to drive back and forth over a relatively small distance, such as less than 1 meter, to attempt continuation of the same path in case the unidentified blocking object has removed itself from the route 13. Additionally or alternatively, the vehicle may be controlled to make a slight turn, for example less than 45° or more preferably less than 25°, to attempt continuation of the route using a path along or around the unidentified blocking object. The recovery action(s) attempt to enable the vehicle 11 to continue driving along a path until localization along the route 13 and / or within the map is regained and to enable the vehicle 11 to return to the charging device 12 autonomously and before running out of battery, with or without completion of the route 13. If localization is not regained after a predetermined amount of recovery actions and / or time, the vehicle 11 is shut down to preserve battery such that a user may guide the vehicle back to the charging device through manual input via the user interface system 35. Preferably, the system is adapted to have the vehicle 11 send a failure message to the user interface system 35 prior to shutting down.
[0060]
[0055] The route 13 is a single round-trip from the vehicle’s base station, around the livestock-related space, ending back at the base station. In the depicted route, the charging device 12 location is considered the base station. As mentioned before, this location will commonly be chosen as the base station, although alternative locations, such as a filling or dumping location, could also serve as base stations. Any route execution that starts and ends at the base station is considered a nominal route. Any route execution that does not end at the base station is declared anomalous, since failure to return to the base station means that a failure must have occurred with the vehicle enroute resulting in the vehicle not being able to return to the base station autonomously. A failure in this context is considered as the above-described situation wherein the vehicle 11 is completely lost within the livestock-related space and has shut down to preserve battery charge for a user to manually control the vehicle to drive back to the base station. The moment of shutting down is considered the exact moment of failure. Thus, failure in the present disclosure is intended to be understood as only failures as a result of executed vehicle behaviour and disregards any hardware failure with the exception of sensor failure. Moreover, in the context of the present disclosure, an anomaly is defined as a deviation of nominal behaviour, i.e. a difference between a target value and a sensed value in the vehicle’s data, which may result in failure and a root cause is the reason an eventual failure occurs. A root cause can be a combination of a series of smaller, and optionally different, events that during a route execution, or a single big event that is disruptive enough on its own to lead to failure. Thus, failure occurs when the anomaly, which may be a single anomaly or a series of consecutive anomalies that add up, exceed a threshold. For example, a root cause may be the first distance sensor 16 being obstructed by manure, preventing the vehicle 11 from measuring the distance to the wall on one side, resulting in an increased uncertainty of the vehicle’s current location. In this case, the missing distance measurements are the anomaly. If, as a result of the missing measurements, the localization of the vehicle 11 at a crucial part of the route has deviated from the actual position too much and the vehicle 11 starts to take the wrong actions (i.e. take turns at wrong locations) causing the vehicle to get completely lost within the barn, the ultimate shut-down of the vehicle to await manual intervention is the resulting failure.
[0056] The stochastic neural network for multivariate time series anomaly detection stored on the processor 25 is trained and tested to identify failure based on live sensor data, preferably to identify upcoming failure based on learned patterns from historical data that lead to failure. When the algorithm predicts an upcoming failure, this prediction may be prompted via the user interface system 35 to a user, enabling the user to tend to the vehicle 11 sooner than if the aforementioned failure message sent upon shut down was the first notification provided. Thus, the user is provided with earlier warning, such that downtime of the system may be reduced. Additionally or alternatively, the predicted upcoming failure may instigate a predetermined preventative action by the control device unit 14 of the vehicle, to reduce the chance of the predicted failure becoming reality. The predetermined preventative action may be a single action that is always undertaken, or a series of actions which are triggered in a particular order or in dependence of a particular predicted failure, i.e. in dependence of a particular root cause. The predetermined preventative action may comprise or consist of changing the driving behaviour of the vehicle to keep the vehicle on the intended route 13, such as change the driving speed, which may for example remedy slip. The preventative action may also comprise or alternatively consist of changing the driving trajectory, i.e. abandon the pre-planned route 13, to go back to the charger or some other location on the map that allows localization to be reliably recalibrated and avoid getting lost or stuck.
[0061]
[0057] The training of the algorithm is performed with historical data sets of successfully completed (i.e. nominal) routes, which are preferably performed by the same or a similar type of vehicle 11 , i.e. make and model. Preferably, the algorithm is trained with data sets from a single route. Most preferred, to achieve the best accuracy, the algorithm is trained with data sets from the route 13 that is to be repeatedly performed by the vehicle 11. The testing of the algorithm is performed with historical data sets comprising both nominal routes and failed routes. The testing of the algorithm may be performed using data sets from different routes. The testing steps are used to verify the performance of the trained algorithm to correctly identify data sets corresponding to nominal routes and to find the failure threshold based on which the algorithm evaluates input data to correspond to a failed route. All data sets are based on equally spaced timesteps. The trained and tested algorithm is referred to as full algorithm from hereon and is used with live data of a vehicle performing a route. The data sets are further described in reference to Figure 3, while the training and testing of the algorithm is described in more detail in reference to Figure 4.
[0062]
[0058] Figure 3 conceptually shows an exemplary matrix of a drive sensor data set for use as input 26 to the stochastic neural network for multivariate time series anomaly detection. The list 27a (i.e. a column in the matrix) comprises the motor-speeds of the left drive motor as measured by the drive sensor system 15 for a time series ti-tN. The list 27b comprises the motor-speeds of the right drive motor as measured by the drive sensor system 15 for the time series ti-tN. The lists 28a and 28b comprise the target motorspeeds for the respective left and right drive motor. Alternatively, the four lists comprising the measured data 27a, 27b and the target data 28a, 28b for left and right, may be replaced by two lists comprising the difference between the measured data and the target data for left and right respectively, thereby saving the algorithm from having to compare the measured data with the target data. An additional data type list or lists (not shown) may be further included, containing discrete indicators for the driving direction of the vehicle at the specific time within the time series. For example, a list may be included for indicating movement along the forward driving direction of the vehicle, using -1 , 0 and 1 for backwards, standstill or forwards respectively and further lists may be included for left and right turning actions, using 0 if not turning and 1 if turning into that direction.
[0063]
[0059] The matrices, one for each of the routes, are put into the stochastic neural network for multivariate time series anomaly detection for training and testing, as well as during use with live data. Since failure is determined on route-level, i.e. certain anomalies that occurred in a specific route caused the route performance of the vehicle to fail, the route origin during training and testing needs to be tracked to enable an evaluation process of the algorithm to classify a failure decision per route. In some implementations a single 2-dimensional matrix comprises the data for all routes. In further possible implementations the drive sensor data for each route is included in a 3-dimensional matrix, i.e. as a stack of 2-dimensional matrices. In these cases, optional list 29, which contains a route label for the data in the preceding lists, may be used. The inclusion of a route label makes route tracking possible for data, i.e. enables output resulting from the processed input to be linked back to the specific route the input belonged to. Other methods of data tracking are generally known and may be implemented alternatively. A particular alternative solution may for example be to use a second data-file in which particular sets of rows are linked to particular routes. This second data-file is then not used with the algorithm itself, but merely to evaluate performance afterwards. When using the full algorithm for processing live drive sensor data it is not necessary to keep track of the route, such that the matrix for input 26 to the full algorithm may be without list 29 or any alternative thereto.
[0064]
[0060] In principle, the algorithm works with any data type or types for which a target or expected value along the route can be determined and a live value can be measured, the value being indicative of the vehicle’s state along the route and performance of the route. Thus, the principles for the input matrix 26 as explained above for the drive sensor data are also applicable to these other data types, which may be used additionally or alternatively as input and matrices may be generated in similar fashion. For example, and in line with the exemplary vehicle described here further comprising distance sensors, in similar fashion to the depicted conceptual matrix, a matrix of a distance sensor data set may be provided, as alternative or additional input to the algorithm. Instead of the list(s) of motor-speeds of the left and right drive motor, the matrix comprises at least one list from which a difference between a measured distance and an expected distance can be obtained for a time series ti-tN. Where multiple matrices are generated, these may be inputted individually, concatenated or generated as a stacked matrix.
[0061] Figure 4 is a flowchart of method steps according to embodiments of the invention, in particular method steps for training and testing the algorithm. The training of the algorithm is performed along steps S101 , S102, S103, S104 and S105, after which the testing of the trained algorithm is performed along steps S101 , S104 and S106. Steps S105 and S106 may together be repeated as a tuning step 107, before performing a final training step S105 and testing step S106 to obtain a “full” stochastic neural network algorithm 110 for further use in detecting route failure.
[0065]
[0062] In the first step S101 , historical data sets of at least one route are obtained. The historical data sets comprise one or more data types, i.e. associated with one or more of the indicated sensor modalities, as indicated in reference to figure 3 above. For the training data set(s), data set(s) corresponding to failed routes are removed from the historical data sets in following step S102. The training data sets may be processed as a plurality of single sets, optionally as a single set consisting of multiple sets that are stacked or concatenated. During optional step S103, the data set(s) are further optimized by removing noise data from each set. The removal of noise may be at least partially achieved by increasing the time step-size for the data, such as, for example, by lowering the data interval from 10Hz to 2Hz. From performance point of view, it is preferred that the timestep-size for all datasets processed by the algorithm is the same, thus if the timestep-size for the training set is adjusted, it is preferred that the timestep-size of the test set, and the live sets is adjusted correspondingly. The removing of noise data may optionally also comprise the removal of data corresponding to recovery actions, i.e. minor instances of the vehicle “being lost” along the route without resulting in failure. The removal of noise data from the data set(s) may be performed manually, i.e. by a user, and / or automatically, such as through application of rules that are pre-set by the user. The final training data set(s) are then subsequently preprocessed in step S104. During data preprocessing, each of the data set(s) is transformed by data standardization via a known method so that all lists of data within the set have a value between 0 and 1 , or between -1 and 1. Where a route identification is included within the data set(s), this identification also needs to be transformed to a standardized value between -1 and 1. After preprocessing, the data set(s) are fed into the stochastic neural network algorithm to train the algorithm, i.e. the algorithm learns model parameters that capture normal patterns of a vehicle driving a route and output an anomaly score. Model parameters are variables of the stochastic neural network algorithm that are automatically estimated by the algorithm during training by fitting data of the training data set(s) to a model that is formed by the algorithm. The anomaly score is a score that indicates how anomalous the datapoint is compared to other datapoints. The trained model, i.e. model with selected model parameters, recognises patterns in the input data that correspond to patterns from the input data and the anomaly score output thus indicates deviations from these learned patterns. A detailed description of the stochastic neural network algorithm is provided later on, in reference to figure 6. The historical data sets used for training may comprise data from various vehicles (of the same type), operating various routes and / or on various farms. Nonetheless, it may be preferred to use normalised data used for training containing only data from a single vehicle, driving a single route on a single farm, such that the algorithm learns more specific behavioural patterns, thereby detecting less false negatives, i.e. having a higher accuracy at identifying nominal routes.
[0066]
[0063] Historical data sets are also used for testing the algorithm and may be the same data sets obtained under step S101. In this case, the series of historical data sets is kept “as is”, i.e. data set(s) corresponding to failed routes are kept, as well as data therein corresponding to moments of auto-recovery. The same preprocessing step S104 as performed on the training data set(s) is then carried out for the testing data set(s) before submitting to the algorithm resulting from the training steps, i.e. to the stochastic neural network with model parameters that were obtained from the training step S105, in the algorithm testing step S106. For each set of testing data that is submitted to the trained algorithm, the anomaly result output by the algorithm may be compared to the known route status (i.e. input data is from a nominal or failed route) to determine the algorithm performance, i.e. determine the percentage of nominal and anomalous routes that are correctly identified by the algorithm.
[0067]
[0064] While performing the testing step S106, a good performing failure threshold value is also selected. The good performing failure threshold value may be selected “supervised”, i.e. determined by a user, by comparing anomaly output from the algorithm to the associated route for the output being nominal or not and choosing the optimal threshold such that only, and preferably all, known nominal routes have corresponding nominal output from the algorithm. Alternatively, the threshold value may be determined “unsupervised”, i.e. chosen automatically by the algorithm, by implementing the Peaks- Over-Threshold (POT) method to the output.
[0068]
[0065] The POT method is known per se. POT fits the tail portion of a probability distribution to a generalized pareto distribution using only two parameters, low quantile and q, which are algorithm-wide and can be set empirically. The low quantile parameter indicates for what part of the data the pareto distribution is to be fitted, while the q parameter indicates what percentage is thereof is allowed to deviate from the distribution. For the present definition of anomaly and failure, the low quantile value may be calculated by multiplying two ratios, wherein the first ratio is the amount of timesteps exceeding the threshold within an anomalous route divided by all route timesteps, averaged over all anomalous routes within the datasets and the second ratio is the routes that are anomalous compared to all performed routes. By multiplying these two ratios an empiric probability of a timestep being anomalous or not is obtained. A good working value for q was found to be 1 e-4.
[0069]
[0066] To enable the algorithm to optimally learn the model parameters, the algorithm training step S105 and the algorithm testing step S106 may be used in an iterative tuning step S107 before performing a final testing step S106 and testing step S107 with the tuned algorithm that results in the “full” stochastic neural network algorithm for further use. During the tuning step S107, the training and testing steps are repeatedly performed while changing a single hyperparameter within the algorithm at a time in between each repeat, to find the optimum for each of the changeable hyperparameters, i.e. leading to the best accuracy for the algorithm to consistently return correct output for nominal and failed routes in the test set input. A hyperparameter is a parameter that can be set in order to define any configurable part of the algorithm’s learning process. De amount of hyperparameters depend on the particular algorithm used. The changing of the hyperparameters to obtain their optimal values may be performed manually but ideally is performed as an automated iterative process.
[0070]
[0067] To ensure accuracy of the full algorithm 110 is kept sufficiently high, the offline training and testing steps S105, S106 can be conducted routinely. For example, to ensure performance of the algorithm remains within desired boundaries, the step of testing could be performed once per week or month. It may be desirable to repeat the training step S105 in addition to the testing step S106 when the algorithm is to be used with new additional data input, i.e. when at least one new route or adjusted route is to be put in use with the vehicle, for the algorithm to also learn the patterns of this new route and have the failure threshold adjusted accordingly. In this case, a data set of the new route or adjusted route is to be included in the historical vehicle data sets of step S101 and processed accordingly in steps S102, S103 and S104. The step of tuning the algorithm S107 may only need redoing if an entirely new set of historical vehicle data is used under step S101.
[0071]
[0068] Figure 5 is a flowchart of method steps according to embodiments of the invention. In particular, figure 5 is a flowchart of method steps related to live use of the full algorithm 110. In the first step S201 of this method, live drive sensor data is obtained comprising one or more data types, i.e. associated with one or more of the indicated sensor modalities, as indicated in reference to figure 3 above. The live data may be communicated by vehicles communication device to the processor with the algorithm continuously or at regular intervals. Since the data is used to analyze an ongoing route the vehicle “knows” it is performing, the data does not need to contain a route label. In a subsequent step S202, the data is preprocessed to live normalized data, whereby the preprocessing is carried out in the same manner as the preprocessing of the historical data that was used for testing and testing. To obtain consistently accurate results, the live data time-step-size, at least after preprocessing, matches that of the training and testing data. The preprocessed data is then processed in the full algorithm 110 in the following step S204 to obtain anomaly scores for the route as it is being performed. In a further step S205, the obtained anomaly scores are compared to the failure threshold that was selected during testing of the algorithm, and a failure decision is output. Depending on the decision that is output, finally a system action may be prompted in response, in the last and optional step S206. In particular, when the decision amounts to the route being nominal thus far, no further steps need to be taken, i.e. the optional step S206 is not performed. When the decision amounts to the route data received so far indicating a(n upcoming) failure, the optional step S206 is preferably carried out, and a predetermined system action is set in motion. The predetermined system action may depend on the system, such as comprising a particular type of vehicle, a particular set-up thereof and / or a particular failure pattern that is identified by the full algorithm 110. For example, the predetermined system action may consist or comprise of a warning message of (upcoming) failure being prompted on the user-interface, and / or optionally forwarded to a connected mobile phone, enabling the associated user to faster resolve the failure and possible shutting down manually then if a failure was only notified after several unsuccessful recovery attempts. Additionally or alternatively, the predetermined system action may consist or comprise of sending a signal to the control device unit 14 of the vehicle to instigate a predetermined preventative action, such as to reduce the chance of the predicted failure becoming reality. The predetermined preventative action may be a single action that is always undertaken, or a series of actions which are triggered in a particular order or in dependence of a particular predicted failure, i.e. in dependence of a particular root cause of the failure identified by the algorithm. The predetermined preventative action may comprise or consist of changing the driving behaviour of the vehicle to keep the vehicle on the intended route 13, such as change the driving speed. The preventative action may also comprise or alternatively consist of changing the driving trajectory, i.e. abandon the pre-planned route 13, to go back to the charger or some other location on the map that allows localization to be reliably recalibrated and avoid getting lost or stuck.
[0072]
[0069] Instead of using live data in the “full” stochastic neural network algorithm, in step S201 , one could also use data of a completed route (historical data) to perform post- hoc analysis. A particular example where this use of the algorithm may be of interest is to perform a post-installation check-up where a vehicle is recently installed and / or provided with a new route. The algorithm may then process data from one or more completed route performances and return a failure decision, therefore. If a failure is indicated while the route was nominal, i.e. completed as expected, this “false positive” could be an indication that the route as currently planned comprises one or more sections that are difficult for the autonomous vehicle. These difficult sections could result in actual failure if circumstances, such as the condition of one or more of floor, wheel(s) and sensors degrading, change over time. Through the algorithm, these difficult sections may be identified, i.e. indicated to the user on the user interface as system action in step S206, and the route may be adjusted before any actual failures have occurred.
[0073]
[0070] Figure 6 illustrates a possible approach of implementing the aforementioned stochastic neural network for multivariate time series anomaly detection for determining and predicting route failure 200. Figure 6 specifically illustrates the stochastic neural network algorithm 200 as a block diagram comprising a variational auto-encoder 100 used for determining route anomalies and a post- processor 119 adapted to determine what route anomalies lead to route failure. The block diagram consists of an input 126, a variational auto-encoder 100, the aforementioned post-processor 119 and an output decision or prediction 30. The input 126 consists of the preprocessed input data, i.e. input data 26 such as depicted in Fig. 3 that has gone through preprocessing step S104 or S202 such as described in reference to Fig. 4 or Fig. 5. The output decision or prediction 30 contains the outcome of the algorithm’s analysis of the input data indicating an (upcoming) failure or not. The variational auto-encoder 100 consists of an input layer 111 for receiving the input 126, an encoder 112, a latent space 114, a decoder 116 and an output layer 117 for generating anomaly output for the sliding window post-processor 119 to base decision or prediction 30 on. Route failure prediction may be carried out continuously during operation of the vehicle for fast resolution and / or improved prevention efforts, i.e. using live data for input in this full stochastic neural network algorithm 110. Post-hoc route failure determination may also be carried out with this full stochastic neural network algorithm 110, i.e. using a historical data set of a failed route, to make analysis of when the route failed and find the cause faster, easier and more comprehensive.
[0074]
[0071] The input layer 111 receives the normalized inputs resulting from the preprocessing and forwards these to the encoder 112. Each input data set is segmented into sequences through sliding windows of a predetermined length so that a multivariate time series is obtained, thereby enabling time series modelling wherein preceding values within a predetermined timestep back from the current time provide context to current time data in each set. The predetermined length may be chosen in dependence of the data-frequency and / or length of the route. For example, the performance of the route may result in approximately 1000 timesteps (i.e. n=1000) and the predetermined length is chosen to cover 100 timesteps such that the model takes “chunks” of data covering steps 0 - 99, then 1 - 100, then 2 - 101 , etc. The model itself may choose the predetermined length, for example in dependence of the total amount of data timesteps presented, such as when using historical data. Preferably, the predetermined length used during training is also used when processing live data with the full algorithm 110. The input layer 111 takes up the data in the segmented sequences (or “chunks”) for further processing by the algorithm, such that the output layer 117 contains output values for each segmented sequence.
[0075]
[0072] The encoder 112 maps each data point from each of the segmented sequence of normalized input data into a distribution within the latent space 114, which is smaller than the space of the normalized input. To illustrate, the input of Fig. 3 (minus the optional route indication) corresponds to four features, i.e. left and right motor-speed as measured and left and right motor-speed as targeted, such that the latent space must be smaller than 4. The stochasticity is captured in the latent space representation to which the encoder learns to map the input to. The decoder 116 samples datapoints from the latent space and maps these back to the input space. To ensure the stochastic variables in the algorithm also account for the temporal dependence, i.e. take into account the vehicles state based both on current data and data from moments preceding the current moment, the encoder 112 and decoder 116 both rely on a type of recurrent neural network (RNN) layers. The model parameters of the stochastic model for correctly identifying anomalies are determined during (unsupervised) training sessions, such as described in relation to Figure 4. Preferably, the temporal dependence among the model parameters is explicitly modelled to learn robust representation of input data, i.e. obtain a high model accuracy for capturing anomalies in (live) data.
[0076]
[0073] All anomalies identified by the variational auto-encoder 100 are output to the output layer 117. To ensure the algorithm does not return all anomalies as a predicted route failure, i.e. anomalies from which the vehicle can recover are not to be captured, the outputted anomalies are post-processed in the post-processor 119 using a sliding window average of a predetermined time and compared against a failure threshold, which is determined during testing of the algorithm as described with reference to figure 4. For the sliding window averages, the output values in the output layer 117 are averaged in segments that are taken similarly to the segmented sequences for the input layer 111, i.e. the output values are taken in “chunks” of a predetermined amount of timesteps and averaged for each chunk. For example, for an input of n = 1000, the algorithm generates 901 output values (m = 901), which are post-processed in sequences of 600 timesteps, such that a first average is generated for values 0 - 599, a second average for 1 - 600, etc. Thus for each time within the time-series of a particular route being performed by the vehicle, the individual anomalies that occurred during a predetermined timespan back from the assessed time are averaged and the average anomaly value is compared against the selected failure threshold to determine or predict route failure. The predetermined timespan for the sliding window average is chosen such that momentary uncertainty of the vehicle, i.e. a significant difference between measured data and target / expected data, does not result in a significant average anomaly. The optimum value depends on data acquisition frequency of a respective data type monitored by the vehicle. A practically relevant timespan is expected to be between 1 minute and 30 minutes, optionally between 2 minutes and 10 minutes. If a route failure is predicted, the algorithm outputs this as an anomaly decision 30 for said route as a whole, prompting further actions by the system, such as showing a warning or failure message to a user on the interface, or, prompt the vehicle to start a recalibration and / or recovery action to thereby break the anomaly pattern that would otherwise result in the predicted failure. The time between predicted failure and actual failure depends on the particular algorithm set-up and the root-cause of the failure. During tests performed by the applicant, the prediction was usually at least one minute prior to failure, and often within 5 minutes from failure. The variational auto-encoder 100 and post-processor 119 together, when trained, tuned to have appropriate hyperparameters and with the failure threshold value selected, correspond to the full stochastic neural network algorithm 110 as described in reference to figure 4.
[0077]
[0074] A particular and readily available variational auto-encoder 100 that may be adapted for use in this method is “OmniAnomaly”. “OmniAnomaly” uses a gated recurrent unit (GRU) for the encoding and decoding. To explicitly model temporal dependence among the model parameters of the stochastic model, “OmniAnomaly” uses a Linear Gaussian State Space Model (SSM) connection between the model variables and a concatenation of each stochastic variable and GRU hidden variable associated with the nodes of the encoder and the decoder Moreover, to improve the model parameters in the stochastic model capture the complex distributions of input data, “OmniAnomaly” uses a series of invertible mappings to learn non-Gaussian posterior distributions, also known as planar normalizing flows or planar NF. For more details of the model, reference is made to “Robust Anomaly Detection for Multivariate Time Series through Stochastic Recurrent Neural Network” by Su et al. If used, “OmniAnomaly” is to be adapted by including the post-processor 119 as described above. Moreover, quantitative evaluation steps classifying each step as false or true positive or negative as readily present in “OmniAnomaly” are to be changed to classify an entire route that is associated with the output of the sliding window average as anomalous when reaching above the selected failure threshold. Other algorithms adapted to generate the same outcome from the same types of input could be used with similar results. For example, alternatively to GRU, one may choose to use a variational auto-encoder combined with regular RNN or long shortterm memory (LSTM). As an alternative to the variational auto-encoder, a generative adversarial network, adapted to account for stochasticity, may be implemented together with recurrent neural network layers of one of the aforementioned types.
[0078]
[0075] Figure 7 conceptually shows an exemplary graphical representation of determining route failure in the post-processor 119. The graph shows the average anomaly score 119a, i.e. the output of the stochastic neural network after the sliding window averaging has been applied, plotted along the series of time steps 36 for which route-specific input was provided to the algorithm. The average anomaly score 119a is compared against the failure threshold value 106 obtained during testing of the algorithm and indicating an excessive deviation from nominal behavior 30a, i.e. a peak-value in the average anomaly score that exceeds the threshold value. The excessive deviation 30a is indicative of route failure and leads to a failure-output decision by the full algorithm 110. Peaks that do not exceed the failure threshold value 106, such as the non-excessive deviation 30b relate to deviations between measured data and target / expected data indicative of temporary uncertainty of the vehicles pose with respect to the planned route from which the vehicle could recover on its own. The tail of the graph 118 proceeding from the excessive deviation 30a reflects the vehicles movements until failure. Such a tail 118 will normally not be present when processing live vehicle data, since the system is adapted to remedy failure immediately upon determining an excessive deviation 30a, but may be observed when working with historical data, such as during training or post-hoc evaluations. The depicted graphical representation may be made available to a user via the user-interface.
[0079]
[0076] Figure 8 schematically illustrates a further methodology 200’ for determining route failure. In particular, figure 8 illustrates a further possible approach of implementing the aforementioned stochastic neural network for multivariate time series anomaly detection for determining and predicting route failure as described in relation to figure 6. In the methodology illustrated in figure 8, two full algorithms 110’, 110”, are running in parallel to one another. Each of the two full algorithms 110’, 110” is associated with a different data type from the other. Thus the first of the two full algorithms 110’ is tuned, trained and has a failure threshold selected with a first type of data from the drive sensor data, such as for example one of the aforementioned motor-speed data, or distance sensor data, and the second of the two full algorithms 110” is tuned, trained and has a failure threshold selected with another type of data, such as for example the other of the aforementioned types of data. Although the present schematic only shows use of two full algorithms, additional full algorithms, tuned, trained and with selected failure thresholds for further types of data, may be included. The live input data 126’, 126” is of the same data types as the two full algorithms 110’, 110” are trained and tuned for. For ease of processing, the live input data 126’, 126” may be kept in / split into separate data-streams prior to being preprocessed in the input layer 111 , such as depicted, although the data types could also be preprocessed all-together and routed to the corresponding full algorithm 110’, 110” thereafter. To obtain a final decision on route failure, the individual outputs are passed to a final decision layer 120 prior to outputting the anomaly decision 30 for the route as a whole. The final decision layer 120 is adapted to weigh the decisions output for each of the full algorithms 110’, 110” and base a final decision thereon. For example, the final decision layer 120 may output a failure decision if at least one of the individual outputs indicates a failure. Preferably, the final decision layer 120 may comprise a majority voting algorithm in which the decision outputs of each individual full algorithm 110’, 110” is submitted and if a preset amount of the individual full algorithms or more outputs a failure, the majority voting algorithm returns the anomaly decision 30 for the route as a whole. The preset amount of the individual full algorithms may be set to half the total amount of the full algorithms that are running parallel. The combined outcome of parallel calculations may result in more detailed failure patterns, enabling the better recognition of upcoming failures. Additionally or alternatively, the final decision layer 120 may be adapted to output a source of failure, i.e. if the data origin (the sensor linked to the particular data types for the respective full algorithms 110’, 110”) is linked to the output, the dataset or sets having the most significant contribution to the identified failure may be output. The most significant contribution may for example be a first set to have anomalies that contributed to the excessive anomaly for that particular data type. The most significant contribution may, for example also result from a combination of data types, i.e. relating to a particular combination of sensors, which together may form the root cause of the failure. Additionally or alternatively, the output of the parallel running algorithms analyzing different datatypes may be visualized to a user, in one or multiple graphs, such as for example similar to the graph shown in Figure 7, or similar to the graphs shown in Figures 9a and 9b.
[0080]
[0077] Figures 9a and 9b each show an exemplary graphical representation of route failure on a map representation for the same route section. The graphical representations may be obtained by combining the anomaly output at each timestep, i.e. before the sliding window average is calculated, with global pose (position, optionally with orientation) information at each respective timestep, as is commonly available or derivable from data obtained by the drive sensor system of the vehicle, into a heat map. The heat map may be calculated using Kernel Density Estimation (KDE) and provides a visualization of aggregated anomaly output matched to map locations of the vehicle. This visualization may be provided to the user via the user interface described in reference to figure 1 , to assist in root-cause analysis of failure.
[0081]
[0078] Figures 9a and 9b respectively show anomaly score output for wheel slip and for distance sensor failure, projected on a map(section) of the same barn, for the same pre-planned route 13, i.e. two data types from the same route performance are processed in individual full algorithms. The map(section) has a wall 3 and shows both the pre-planned route 13 the vehicle was supposed to drive, as well as the actual route 113 driven by the vehicle. The point 113a is the moment of failure, i.e. the point of the vehicle actually shutting down. Anomalies are represented as heat map data 123, 133. The majority of data represents minor anomalies 133, such as small moments of localization uncertainty that do not have a significant effect on route performance of the vehicle. Various hot spots 123 within the anomaly data are also identified, representing route sections that may deserve more attention when looking for a failure root cause.
[0082]
[0079] The present invention has been described above with reference to a number of exemplary embodiments as shown in the drawings. It will be clear to a person skilled in the art that the scope of the invention is not limited to these examples, nor to the explicitly mentioned alternatives, but that a number of further variations and modifications thereof are possible without departing from the scope of the invention as defined in the attached claims.
Claims
CLAIMS1. Method of predicting route failure for an autonomous agricultural vehicle adapted to perform an animal related action related to at least one of cleaning up and providing feed in an animal-related space, wherein the vehicle is arranged to drive at least one pre-planned route in order to perform the animal related action, the method comprising: obtaining live sensor data from the vehicle whilst performing a pre-planned route in order to perform the animal related action; obtaining associated target or expected values for said sensor data; processing the sensor data, and target or expected values using a trained and tested stochastic neural network algorithm for multivariate time series anomaly detection; comparing output anomaly score values to a selected failure threshold value; and providing a failure prediction, based on the processing, when an anomaly score value exceeds the failure threshold value.
2. The method according to claim 1 , wherein the output anomaly score value for each time within the data time series is a continuous moving average anomaly score value, such as a sliding window average, over a predetermined timestep going backwards from each time within the time series.
3. Method according to claim 1 or 2, wherein the live sensor data comprises a controlled variable indicative of driving performance and / or pose of the vehicle while driving the route.
4. Method according to claim 3, wherein the controlled variable indicative of driving performance and / or pose of the vehicle performing at least one known route, for each time within the time series, comprises a measured value and a target value, or consists of a delta between the measured value and the target or expected value.
5. The method according claim 3 or 4, wherein the controlled variable indicative of driving performance and / or pose of the vehicle performing at least one known route is one of a sensor value indicative of or related to motor-speed and a sensor value indicative of a pose of the vehicle.
6. Method according to any one of the preceding claims, wherein the live data comprises at least two datatypes.
7. Method according to claim 6, wherein the step of processing the sensor datacomprises using at least two stochastic neural network algorithms that are each trained and tested for another one of the at least two datatypes and wherein the live data of each of the at least two datatypes is processed with a respective correspondingly trained and tested one of the algorithms.
8. Method according to claim 7, wherein the failure prediction is based on at least one of the at least two stochastic neural network algorithms finding an anomaly score output exceeding its failure threshold value.
9. Method according to claim 8, wherein the failure decision is based on a majority vote of the at least two stochastic neural network algorithms.
10. Method of training a stochastic neural network algorithm for multivariate time series anomaly detection for predicting route failure of an autonomous agricultural vehicle, the method comprising: inputting a normalized training dataset based on data from a historical dataset from at least one nominally performed route by the autonomous agricultural vehicle, the nominally performed route being a pre-planned route execution that starts and ends at a base station of the vehicle and wherein the historical dataset comprises a time series of a datatype corresponding to a controlled variable indicative of driving performance and / or pose of the vehicle while driving the route, and an associated target or expected value for said datatype at each given time in the time series; training the stochastic neural network algorithm with the normalized training dataset (S105); inputting a normalized testing dataset based on data from a second historical dataset from a mix of at least one nominally performed route and at least one failed route performance of a pre-planned route by the agricultural vehicle; and selecting a failure threshold value (S106) corresponding to an anomaly score value exceeding any anomaly score value determined for nominally performed route data in the testing dataset.
11. The method according to claim 10, wherein the steps of inputting the normalized training dataset (S105) and inputting the normalized testing dataset (S106) are together, sequentially, repeatedly performed as a tuning step (S107), wherein one of at least one changeable hyperparameter of the algorithm is adjusted in between each repetition, to obtain a value for each of said at least one changeable hyperparameters that results in the algorithm optimally identifying nominal and failed route performances in the testing dataset, and wherein the steps of inputting the normalized training dataset and inputting the normalized testing dataset are finally performed with the algorithmhaving the obtained value of each of the at least one changeable hyperparameters.
12. The method according to any one of the preceding claims 10 or 11 , wherein the second historical dataset comprises at least a part of the historical dataset on which the training dataset is based.
13. The method according to any one of the preceding claims 10-12, wherein the historical dataset comprises data from the at least one pre-planned route of the vehicle.
14. The method according to any one of the preceding claims 10-13, wherein the stochastic neural network algorithm comprises a variational auto-encoder (100) adapted for determining route anomalies and a post-processor (119) adapted to determine what route anomalies lead to route failure, wherein the variational autoencoder (100) comprises an encoder (112), a latent space (114) and a decoder (116) and wherein both the encoder and the decoder comprise a type of recurrent neural network layers to account for temporal dependence of the input datasets and wherein the latent space is adapted to capture stochasticity of the data.
15. The method according to any one of claims 10-14, wherein the stochastic neural network algorithm comprises a generative adversarial network, adapted to account for stochasticity, together with recurrent neural network layers to account for temporal dependence of the input datasets and a post-processor adapted to determine what route anomalies lead to route failure.
16. The method according to any one of the preceding claims 10-15, wherein the multivariate time series anomaly detection of the stochastic neural network algorithm is achieved through segmenting input data set(s) into sequences through sliding windows of a predetermined length.
17. A system for predicting route failure of an autonomous agricultural vehicle, the system comprising: a data acquisition module configured to obtain live time series data and expected values during route execution; a processor configured to execute a trained stochastic neural network algorithm for multivariate time series anomaly detection; a comparator module configured to compare anomaly scores to a failure threshold; and a prediction module configured to output a failure prediction when the threshold is exceeded.
18. The system of claim 17, wherein the processor is configured to trigger apreventative action based on the failure prediction.
19. A computer program comprising instructions which, when the program is executed by a computer, cause the computer to carry out the method of any of claims 1 - 9.
20. The computer program of claim 19, wherein the instructions include a module for threshold calibration based on historical anomaly scores.21 . A processor (25) comprising a memory containing the computer program of claim 20 or 21.
22. A user interface system (35) adapted for being operably connectable to the processor (25) according to claim 19, wherein the user interface system is arranged to receive output information from the processor (25) and communicate said output to a user thereof, the output consisting of, or comprising one or more of: a sound message, a visual message, a visualization of predicted failure along the route in a graph along a timeline of the route being performed by the vehicle and / or a on map of the animal space, or portion thereof.
23. An animal farm system comprising: an autonomous agricultural vehicle adapted to perform an animal related action related to at least one of cleaning up and providing feed in an animal-related space, wherein the vehicle comprises at least one drive wheel (19a, 19b) under the control of a control device (14), for controlling the at least one wheel to move the vehicle in accordance with control signals that are based on a pre-planned route (13), and at least one of a drive sensor system (15) adapted to collect vehicle driving data and a localization sensor, such as a distance sensor (16, 17), for collecting data related to localization of the vehicle within the animal-related space and a vehicle communication device; a processor (25) according to claim 21 , adapted for being operably connectable to a user interface system (35) according to claim 22 and for receiving data collected by the vehicle drive sensor system and / or localization sensor via the vehicle communication device.
24. The animal farm system according to claim 23, wherein the processor is arranged to prompt a failure notification message being output by the user interface system when route failure is predicted.
25. The animal farm system according to claim 23 or 24, wherein the processor is adapted to communicate with the vehicle’s controller and arranged to prompt a preventative action being initiated by the controller for the vehicle to perform, the preventative action consisting or comprising at least one of:driving to a pre-determined recovery location within the animal space, the predetermined recovery location optionally being the base station location; or changing the vehicle’s driving speed.