Unsupervised anomaly detection for autonomous vehicles
By using smooth pruning loss and robust least squares estimation trained on machine learning models on autonomous vehicles, the challenge of anomaly detection in autonomous vehicle telemetry information is solved, enabling efficient and automated anomaly labeling and processing, and improving the reliability and security of the system.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- WING AVIATION LLC
- Filing Date
- 2020-08-05
- Publication Date
- 2026-06-09
AI Technical Summary
Existing technologies are insufficient to effectively detect anomalies in telemetry information of autonomous vehicles, especially in complex missions and with multiple vehicle types. Manually designed statistical thresholds and logical rules cannot exhaustively cover all potential failure modes, and manually sifting through thousands of flight logs to find anomalies is beyond human capability.
The machine learning model is trained on a large amount of time series data to learn a predictive model of time series data records. By fitting the weight set and optimizing the weight set of time series data records, combined with smooth pruning loss and robust least squares estimation, anomalies are detected and processing commands are sent.
It achieves high-precision detection of anomalies in the telemetry information of autonomous vehicles, can automatically mark anomalies and take corresponding measures, improves the operational reliability and safety of the system, and reduces the need for manual intervention.
Smart Images

Figure CN114365091B_ABST
Abstract
Description
[0001] Cross-references to related applications
[0002] This application is based on U.S. Application No. 16 / 887,194, filed May 29, 2020, which claims priority to U.S. Provisional Application No. 62 / 900,380, filed September 13, 2019, the contents of which are incorporated herein by reference for all purposes. Technical Field
[0003] This disclosure generally relates to detecting anomalies in time series data, and nonexclusively to detecting anomalies in telemetry information from autonomous vehicles. Background Technology
[0004] As aerial robots become increasingly capable of complex navigation, perceptual reasoning, and learning from experience, a large number of delivery missions are expected to soon be performed by autonomous, small air-vehicles, flying far beyond line of sight over densely populated areas, hovering within human reach of residential areas to deliver packages, and returning to their "homes" after completing their missions. Ensuring the same level of operational reliability and safety as passenger aircraft is crucial for delivery drones to achieve economies of scale. Summary of the Invention
[0005] In some embodiments, a non-transitory computer-readable medium is provided. The computer-readable medium has logic stored thereon that responds to execution by one or more processors of a computing system, causing the computing system to perform actions for detecting anomalies in time series data records. These actions include: receiving a plurality of time series data records by the computing system; initializing a machine learning model with a set of fitting weights and a set of weights for the time series data records by the computing system; optimizing the set of fitting weights for the machine learning model by the computing system while keeping a set of trip weights for the machine learning model constant; optimizing the set of weights for the time series data records by the computing system while keeping the set of fitting weights constant; and storing the optimized weights for the time series data records and the optimized fitting weights by the computing system for monitoring anomalies.
[0006] In some embodiments, a method for detecting anomalies in time-series data records is provided. A computing device receives time-series data records from a monitored system. The computing device processes the time-series data records using a machine learning model to generate an anomaly score, wherein the machine learning model is trained on multiple previous time-series data records. The computing device compares the anomaly score to an anomaly threshold. In response to determining that the anomaly score is greater than the anomaly threshold, the computing device determines an action to be taken to handle the anomaly and sends a command to the monitored system to cause the monitored system to perform the anomaly handling action.
[0007] In some embodiments, a system is provided. The system includes at least one computing device, which includes at least one processor and a non-transitory computer-readable medium. The computer-readable medium has logic stored thereon that, in response to execution by the at least one processor, causes the system to perform actions including: receiving time-series data records from a monitored system; processing the time-series data records using a machine learning model to generate an anomaly score, wherein the machine learning model is trained on a plurality of previous time-series data records; comparing the anomaly score with an anomaly threshold; and, in response to determining that the anomaly score is greater than the anomaly threshold: determining an action to be taken to handle the anomaly; and sending a command to the monitored system to cause the monitored system to perform the anomaly handling action. Attached Figure Description
[0008] Non-limiting and non-exclusive embodiments of the invention are described with reference to the following accompanying drawings, wherein similar reference numerals in the various figures refer to similar parts unless otherwise stated. Not all instances of an element need to be labeled to avoid confusion in the drawings where appropriate. The drawings are not necessarily drawn to scale; the focus is on illustrating the described principles. For ease of identification of any particular element or action discussed, the most significant digit in the reference numerals refers to the figure number at which that element was first introduced.
[0009] Figure 1 This is a perspective top view of a non-limiting exemplary embodiment of an autonomous vehicle according to various aspects of this disclosure.
[0010] Figure 2 yes Figure 1 The diagram shows the bottom side plan of the autonomous vehicle.
[0011] Figure 3 This is a block diagram illustrating a non-limiting example embodiment of an autonomous vehicle according to various aspects of this disclosure.
[0012] Figures 4 to 6 Includes several diagrams illustrating non-limiting example embodiments of telemetry information collected by autonomous vehicles according to various aspects of this disclosure.
[0013] Figure 7 This is a block diagram illustrating a non-limiting example embodiment of an anomaly detection system according to various aspects of this disclosure.
[0014] Figure 8 and Figure 9 This is a flowchart illustrating a non-limiting example embodiment of a method for detecting anomalies in telemetry information according to various aspects of this disclosure.
[0015] Figure 10 Includes graphs showing the results of alternating optimization of the smoothed trimmed loss according to various aspects of this disclosure.
[0016] Figure 11 This is a graph showing a comparison between the anomaly detector based on the method disclosed in this paper and several M-estimators proposed in the literature on pure least-squares models and robust statistics.
[0017] Figures 12 to 14 This includes several graphs illustrating experimental results of using machine learning models to detect anomalies according to various aspects of this disclosure.
[0018] Figures 15 to 16 Includes graphs showing the performance of various detectors according to various aspects of this disclosure on a test set of 5000 tasks.
[0019] Figure 17 This is a graph showing the smooth distribution of task weights learned from experimental example embodiments of the pruning technique.
[0020] Figure 18 This is a block diagram illustrating a non-limiting example embodiment of a computing device suitable for use as a computing device having embodiments of the present disclosure. Detailed Implementation
[0021] In some embodiments of this disclosure, techniques are provided for analyzing time-series data to detect anomalies. Time-series data are processed using machine learning models. These models are trained in an unsupervised manner on a large amount of previous time-series data, allowing for the creation of highly accurate models from new data. Because of the use of machine learning models, anomalies in complex systems can be detected, including but not limited to autonomous vehicles such as unmanned aerial vehicles. When an anomaly is detected, commands can be sent to the monitored system (such as the autonomous vehicle) to respond to the anomaly.
[0022] While simple statistical thresholds and logical rules can be manually designed to trigger recurring problem events for autonomous vehicles (e.g., low battery or control surface malfunction), they cannot exhaustively cover all potential future failure modes that are not known in the prior knowledge, especially as the mission complexity and vehicle types of the autonomous vehicle fleet increase. Motivated by this, embodiments of this disclosure provide an anomaly detection system based on a machine learning model, continuously trained on thousands of time-series data records, such as flight logs including telemetry information. When this model reports significant prediction errors for new trips, the autonomous vehicle can be flagged for manual inspection and may be taken out of service for safety reasons until the problem is resolved. Importantly, embodiments of this disclosure are designed to detect normality and do not require upfront labeling of normal and abnormal trips or time-series data records. In fact, sifting through thousands of flight logs consisting of dozens of time series to find subtle anomalies is beyond the scope of manual feasibility.
[0023] This disclosure is configured to learn predictive models from time-series data records, such as those reflecting flight dynamics. An aircraft's linear and angular accelerations depend on the aerodynamic forces it experiences, which are functions of vehicle state, control commands, dynamic pressures, and other flight condition variables. Simple linear or quadratic models trained on historical flight logs have demonstrated impressive predictive capabilities. The norm of the predictive residual for a given time of flight, or the average residual over the entire flight, can be used as a threshold for anomaly detection. However, contrary to previous work that focused solely on the performance of large fixed-wing aircraft and cruise capabilities, we are more interested in monitoring much smaller delivery drones throughout their flight missions, including takeoff, package delivery, and landing.
[0024] Figure 1 and Figure 2 A non-limiting example embodiment of an aircraft or UAV 100 according to embodiments of this disclosure is shown. An exemplary embodiment of UAV 100 is a vertical takeoff and landing (VTOL) unmanned aerial vehicle (UAV) including separate propulsion units 106 and 112 for providing horizontal and vertical propulsion, respectively. UAV 100 is a fixed-wing aircraft, and as the name suggests, it has a wing assembly 102 that can generate lift based on the wing shape and the vehicle's forward airspeed when horizontally propelled by the propulsion unit 106. Figure 1 This is a perspective top view of UAV 100, and Figure 2 This is a bottom plan view of UAV 100.
[0025] An exemplary embodiment of the UAV 100 includes a fuselage 104. In one embodiment, the fuselage 104 is modular and includes a battery module, an avionics module, and a mission payload module. These modules are detachable from each other and can be mechanically secured to each other to form at least a portion of the fuselage 104 or the main body of the UAV in a contiguous manner.
[0026] The battery module includes a cavity for housing one or more batteries that power the UAV 100. The avionics module houses the flight control circuitry of the UAV 100 and may include processors and memory, communication electronics and antennas (e.g., cellular transceivers, Wi-Fi transceivers, etc.), and various sensors (e.g., GPS sensors, inertial measurement units (IMUs), magnetic compasses, etc.). The mission payload module houses equipment associated with the mission of the UAV 100. For example, the mission payload module may include a payload actuator for holding and releasing externally attached payloads. In another embodiment, the mission payload module may include a camera / sensor holder for carrying camera / sensor equipment (e.g., cameras, lenses, radar, LiDAR, pollution monitoring sensors, weather monitoring sensors, etc.). Figure 3 The diagram shows some other components that may be carried by some embodiments of the UAV100.
[0027] An exemplary embodiment of the UAV 100 also includes horizontal propulsion units 106 located on the wing assembly 102. Each horizontal propulsion unit 106 may include a motor, shaft, motor mount, and propeller for propelling the UAV 100. An exemplary embodiment of the UAV 100 includes two cantilever assemblies 110 fixed to the wing assembly 102.
[0028] Each of the exemplary embodiments of the cantilever assembly 110 includes a cantilever housing 116, a vertical propulsion unit 112, a printed circuit board 118, and a stabilizer 108 in which the cantilever is disposed. Each vertical propulsion unit 112 may include a motor, a shaft, a motor mount, and a propeller for providing vertical propulsion. The vertical propulsion unit 112 may be used during hovering modes of the UAV 100, either descending (e.g., to a delivery position) or ascending (e.g., after delivery). The stabilizer 108 (or wing) may be included in the UAV 100 to stabilize the yaw (left or right turn) of the UAV during flight. In some embodiments, the UAV 100 may be configured to function as a glider. For this purpose, the UAV 100 may shut down its propulsion unit and glide for a period of time.
[0029] During flight, UAV 100 can control the direction and / or speed of its motion by controlling its pitch, roll, yaw, and / or altitude. For example, stabilizer 108 may include one or more rudders 122 for controlling UAV yaw, and wing assembly 102 may include elevators for controlling UAV pitch and / or ailerons 124 for controlling UAV roll. As another example, simultaneously increasing or decreasing the speed of all propellers may cause UAV 100 to increase or decrease its altitude, respectively. UAV 100 may also include components for sensing the environment surrounding UAV 100, including but not limited to, audio sensor 114 and audio sensor 120. Further examples of sensor devices are provided in... Figure 3 It is shown in the figure and described below.
[0030] The fixed-wing aircraft shown can have many variations. For example, aircraft with more wings (e.g., an "X-wing" configuration with four wings) are also possible. Although Figure 1 and Figure 2 A wing assembly 102, two cantilever assemblies 110, two horizontal propulsion units 106, and six vertical propulsion units 112 for each cantilever assembly 110 are shown, but it should be understood that other variants of the UAV 100 can be implemented with more or fewer of these components.
[0031] It should be understood that the term "unmanned" aircraft or UAV mentioned here also applies to autonomous and semi-autonomous aircraft. In a fully autonomous implementation, all functions of the aircraft are automated; for example, pre-programmed or controlled via real-time computer functions that respond to inputs and / or predetermined information from various sensors. In a semi-autonomous implementation, some functions of the aircraft can be controlled by a human operator, while others are performed autonomously. Furthermore, in some embodiments, a UAV can be configured to allow a remote operator to take over functions that would otherwise be autonomously controlled by the UAV. Additionally, a given type of function can be remotely controlled at one level of abstraction and autonomously performed at another. For example, a remote operator can control high-level navigation decisions of the UAV, such as specifying that the UAV should travel from one location to another (e.g., from a suburban warehouse to a delivery address in a nearby city), while the UAV's navigation system autonomously controls finer-grained navigation decisions, such as the specific route to take between two locations, specific flight controls to implement the route, and obstacle avoidance along the route.
[0032] Some embodiments of this disclosure are designed to be consistent with Figure 1 and Figure 2The hybrid small aircraft shown work together. In UAV 100, an array of 12 vertical propulsion units 112 provides thrust for hovering flight. Two horizontal propulsion units 106, two ailerons 124, and two rudders 122 are primarily used for cruise flight. This hybrid configuration makes the task of building an accurate model of the system more challenging because the aerodynamic interactions are more complex than in large fixed-wing aircraft (e.g., rotor crossflow, flow around small structures, etc.). As an alternative to pushing the limits of computational fluid dynamics tools or using wind tunnels for complex and expensive measurements, the learned models from raw flight data described below have proven surprisingly effective. Trained on the largest scale of real-world delivery UAV data reported to date, the anomaly detection technique described in this paper successfully flags tasks involving disabled actuators, non-nominal hardware conditions, turbulence, and other anomalous events. The scheme described in this paper is based on a combination of nonparametric dynamic modeling and a novel algorithm for robust and scalable least-pruned squares estimation, which could be of individual interest.
[0033] Figure 3 This is a block diagram illustrating a non-limiting example embodiment of an autonomous vehicle 300 according to various aspects of this disclosure. In some embodiments, the autonomous vehicle 300 is configured to collect telemetry data and transmit the collected telemetry data to an anomaly detection system. In some embodiments, the autonomous vehicle 300 is configured to receive commands from the anomaly detection system upon detecting an anomaly and to take appropriate action to handle the anomaly. In some embodiments, the autonomous vehicle 300 is an aircraft. In other embodiments, any other type of autonomous vehicle 300 capable of navigating along a route, such as a wheeled vehicle, may be used. Figure 1 and Figure 2 The UAV 100 shown is a non-limiting example embodiment of the autonomous vehicle 300. In some embodiments, the autonomous vehicle 300 may be of different types of autonomous vehicles.
[0034] As shown in the figure, the autonomous vehicle 300 includes a communication interface 302, one or more vehicle status sensor devices 304, a power supply 306, one or more processors 308, one or more propulsion devices 310, and a computer-readable medium 312.
[0035] In some embodiments, communication interface 302 includes hardware and software to implement any suitable communication technology for communicating with anomaly detection system. In some embodiments, communication interface 302 includes multiple communication interfaces, each for use in an appropriate environment. For example, communication interface 302 may include a long-range wireless interface, such as a 4G or LTE interface, or any other type of long-range wireless interface (e.g., 2G, 3G, 5G, or WiMAX), for communicating with the anomaly detection system while traversing a route. Communication interface 302 may also include a mid-range wireless interface, such as a Wi-Fi interface used when the autonomous vehicle 300 is in an area near a start or end point where Wi-Fi coverage is available. Communication interface 302 may also include a short-range wireless interface, such as a Bluetooth interface, for use when the autonomous vehicle 300 is in a maintenance position or stationary and waiting to be assigned a route. Communication interface 302 may also include a wired interface, such as an Ethernet interface or a USB interface, which may also be used when the autonomous vehicle 300 is in a maintenance position or stationary and waiting to be assigned a route. In some embodiments, the communication interface 302 may support the transfer of a removable computer-readable medium between the autonomous vehicle 300 and the anomaly detection system to provide information transfer between the systems.
[0036] In some embodiments, power source 306 may be any suitable device or system for storing and / or generating electricity. Some non-limiting examples of power source 306 include one or more batteries, one or more solar panels, a fuel tank, and combinations thereof. In some embodiments, propulsion device 310 may include any suitable device for enabling autonomous vehicle 300 to travel along a path. For aircraft, propulsion device 310 may include various devices such as, but not limited to, horizontal propulsion unit 106, vertical propulsion unit 112, and / or one or more flight control surfaces such as ailerons 124 and / or rudders 122. For wheeled vehicles, propulsion device 310 may include various devices such as, but not limited to, one or more motors, one or more wheels, and one or more steering mechanisms.
[0037] In some embodiments, the vehicle state sensor device 304 is configured to detect the state of various components of the autonomous vehicle 300 and send signals representing these states to other components of the autonomous vehicle 300. Some non-limiting examples of the vehicle state sensor device 304 include a battery state sensor, a sensor reporting the position or state of the propulsion device 310, a sensor reporting the servo state for the movement control surface, an inertial sensor, an attitude sensor, a velocity sensor, and a positioning sensor (such as a Global Navigation Satellite System (GNSS) sensor).
[0038] In some embodiments, processor 308 may include any type of computer processor capable of receiving signals from other components of autonomous vehicle 300 and executing instructions stored on computer-readable medium 312. In some embodiments, computer-readable medium 312 may include one or more devices capable of storing information for access by processor 308. In some embodiments, computer-readable medium 312 may include one or more of hard disk drives, flash drives, EEPROMs, and combinations thereof.
[0039] As shown in the figure, a telemetry data storage store 314, a telemetry collection engine 316, and a telemetry communication engine 318 are stored on a computer-readable medium 312. In some embodiments, the telemetry collection engine 316 is configured to receive information from components of the autonomous vehicle 300 and store the information in the telemetry data storage store 314. In some embodiments, the telemetry communication engine 318 is configured to transmit information from the telemetry data storage store 314 to an anomaly detection system. In some embodiments, the telemetry communication engine 318 can also be configured to receive notifications of detected anomalies from the anomaly detection system and can assist in controlling the autonomous vehicle 300 to respond to detected anomalies.
[0040] In some embodiments, the autonomous vehicle 300 may include Figure 3 Components not shown but which will be understood to be present. For example, the autonomous vehicle 300 may include one or more wired or wireless communication interfaces to allow the shown components of the autonomous vehicle 300 to communicate with each other, including but not limited to Ethernet, USB networks, Bluetooth networks, or CANBUS networks.
[0041] Figures 4 to 6 Includes several diagrams illustrating non-limiting example embodiments of telemetry information collected by autonomous vehicles according to various aspects of this disclosure. Figures 4 to 6 The graphs in the diagram illustrate telemetry information collected by the vehicle status sensor device 304 of the autonomous vehicle 300. For each line in each graph, the telemetry information can provide a value for a time series generated for a given characteristic. In some embodiments, a set of multiple time series, such as those shown, can be collected to create a time series data record for a given time period.
[0042] exist Figure 4 , Figure 5 and Figure 6The top of the graph includes charts showing the speeds of the vertical propulsion unit 112, the horizontal propulsion unit 106, and the control surface servo positions, respectively. The charts include separate lines for each individual device (e.g., the left chart for the speeds of the vertical propulsion unit 112 includes one line for each of the four vertical propulsion units 112, the middle chart for the speeds of the horizontal propulsion units 106 includes one line for each of the two horizontal propulsion units 106, and the right chart for the control surface servo positions includes one line for each of the servo systems of the left rudder 122, right rudder 122, left aileron 124, and right aileron 124). The propulsion unit speeds and servo positions can be reported by a vehicle state sensor device 304 coupled to the propulsion units and servos, by the propulsion units and servos themselves, or by any other suitable technology.
[0043] exist Figure 4 , Figure 5 and Figure 6 The bottom of the display includes graphs showing the linear velocity, attitude or orientation, and angular velocity of the autonomous vehicle 300. These values can be generated from, but are not limited to, positioning sensors (such as GNSS sensors) and / or motion sensors (such as inertial measurement units, IMUs) using any suitable technology.
[0044] Figure 7 This is a block diagram illustrating a non-limiting example embodiment of an anomaly detection system according to various aspects of this disclosure. The anomaly detection system 702 can be implemented by any suitable collection of one or more computing devices, each of which can be a desktop computing device, server computing device, laptop computing device, tablet computing device, mobile computing device, smartphone computing device, or computing device in a cloud computing system. In some embodiments, the functionality of the anomaly detection system 702 can be separated among multiple computing devices. In some embodiments, some components shown as present in the anomaly detection system 702 may also be present in the autonomous vehicle 300. For example, in some embodiments, the anomaly detection engine 710 may be present within the autonomous vehicle 300, rather than within a separate anomaly detection system 702.
[0045] As shown in the figure, the anomaly detection system 702 includes one or more processors 704, a communication interface 712, and a computer-readable medium 714.
[0046] In some embodiments, processor 704 may include one or more commercially available general-purpose computer processors, each of which may include one or more processing cores. In some embodiments, processor 704 may also include one or more special-purpose computer processors, including but not limited to one or more processors adapted to efficiently perform machine learning tasks.
[0047] In some embodiments, the communication interface 712 provides any suitable communication technology as described above for communicating with the communication interface 302 of the autonomous vehicle 300, including but not limited to wired technology, wireless technology, removable media technology and / or combinations thereof as described above.
[0048] As shown in the figure, computer-readable medium 714 includes logic stored thereon that, in response to execution by processor 704, provides a telemetry collection engine 706, a model training engine 708, and an anomaly detection engine 710. In some embodiments, telemetry collection engine 706 is configured to receive time-series data records including telemetry information from an autonomous vehicle and store the time-series data records in telemetry data storage 716. In some embodiments, model training engine 708 is configured to train a machine learning model using the time-series data records stored in telemetry data storage 716 to determine vehicle flight dynamics, discard anomalous data from the training set, and detect anomalies based on the determined vehicle flight dynamics. In some embodiments, anomaly detection engine 710 is configured to use the machine learning model trained by model training engine 708. Further descriptions of the actions performed by each of these components are provided below.
[0049] As used in this article, "engine" refers to the logic embodied in hardware or software instructions, which can be written in programming languages such as C, C++, COBOL, and JAVA. TM , PHP, Perl, HTML, CSS, JavaScript, VBScript, ASPX, Microsoft.NET TM Engines can be written in languages such as Go, Python, etc. They can be compiled into executable programs or written in interpreted programming languages. Software engines can be invoked from other engines or by themselves. Generally, the engine described in this article refers to a logical module that can be merged with other engines or can be divided into sub-engines. Engines can be implemented using logic stored in any type of computer-readable medium or computer storage device, and can be stored and executed by one or more general-purpose computers, thus creating a dedicated computer configured to provide the engine or its functionality. Engines can be implemented using logic programmed into application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or another hardware device.
[0050] As shown in the figure, the anomaly detection system 702 also includes a telemetry data storage 716 and a model data storage 718. In some embodiments, the telemetry data storage 716 stores time-series data records, including telemetry information collected by the telemetry collection engine 706. In some embodiments, the model data storage 718 stores machine learning models trained by the model training engine 708.
[0051] As used herein, “data store” means any suitable device configured to store data for access by a computing device. An example of a data store is a highly reliable, high-speed relational database management system (DBMS) that runs on one or more computing devices and is accessible via a high-speed network. Another example of a data store is a key-value store. However, any other suitable storage technology and / or device capable of providing stored data quickly and reliably in response to queries may be used, and the computing device may be locally accessible rather than network-accessible, or may be provided as a cloud-based service. A data store may also include data stored in an organized manner on a computer-readable storage medium such as a hard disk drive, flash memory, RAM, ROM, or any other type of computer-readable storage medium. Those skilled in the art will recognize that the separate data stores described herein may be combined into a single data store, and / or the single data store described herein may be partitioned into multiple data stores without departing from the scope of this disclosure.
[0052] Figure 8 and Figure 9 This is a flowchart illustrating a non-limiting example embodiment of a method for detecting anomalies in telemetry information according to various aspects of this disclosure. The illustrated method 800 shows both training and using a machine learning model. However, in some embodiments, method 800 may only train or may only use a machine learning model. Furthermore, the illustrated method 800 describes time-series data records including telemetry information from a trip or mission of UAV 100. These should not be considered limiting, and in some embodiments, any other type of information may be stored in the time-series data records and processed by method 800 to train a machine learning model and / or use the machine learning model to detect anomalies.
[0053] Starting from the start box, method 800 proceeds to box 802, wherein, for multiple autonomous vehicles, the telemetry collection engine 316 of each autonomous vehicle 300 receives telemetry information from one or more vehicle status sensor devices 304 of the autonomous vehicle 300 during the journey. The journey (sometimes referred to as a “range” or “mission”) describes the actions taken by the autonomous vehicle 300, typically including one or more of the following: takeoff, package pickup, cruise, package delivery, and landing.
[0054] In block 804, for each of the plurality of autonomous vehicles 300, the telemetry collection engine 316 of each respective autonomous vehicle 300 stores the telemetry information of the journey in the telemetry data memory 314 of the autonomous vehicle 300. In some embodiments, the telemetry collection engine 316 may continuously store telemetry information in the telemetry data memory 314 as telemetry information is generated by the vehicle status sensor device 304. In some embodiments, the telemetry collection engine 316 may collect the telemetry information in a temporary memory and store it in the telemetry data memory 314 once the journey is completed. In some embodiments, the telemetry collection engine 316 stores a time-series data record, including separate time-series entries for each individual vehicle status sensor device, in a single time-series data record. In some embodiments, the telemetry collection engine 316 may store a separate time-series data record for each individual vehicle status sensor device.
[0055] In block 806, for multiple autonomous vehicles, the telemetry communication engine 318 of each autonomous vehicle 300 sends a time-series data record of each trip, including telemetry information for that trip, from its telemetry data storage 314 to the telemetry collection engine 706 of the anomaly detection system 702. In some embodiments, the autonomous vehicle 300 may send multiple time-series data records for each trip, particularly if separate time-series data records are stored for each vehicle status sensor device. In some embodiments, the telemetry communication engine 318 may continuously send time-series data records to the telemetry collection engine 706 as long as the autonomous vehicle 300 is communicatively connected to the anomaly detection system 702. In some embodiments, the telemetry communication engine 318 may send time-series data records once a trip is completed.
[0056] In box 808, the telemetry collection engine 706 of the anomaly detection system 702 stores time-series data records in the telemetry data storage 716 of the anomaly detection system 702. By storing the time-series data records in the telemetry data storage 716, a large number of time-series data records can be collected for model training purposes. It is unnecessary to label the time-series data records as normal or anomalous; this is meaningless because the remainder of method 800 will automatically detect anomalous time-series data records in the training data and process them appropriately.
[0057] In box 810, the model training engine 708 of the anomaly detection system 702 initializes a machine learning model with a fitted set of weights and a set of weights for time-series data records. The anomaly detection system 702 can be configured to train and use any suitable type of machine learning model to detect anomalies. The following describes a non-limiting example of a machine learning model suitable for use with the anomaly detection system 702, which has a fitted set of weights and a set of weights for time-series data records.
[0058] Based on an unknown continuous-time nonlinear dynamic system, consider an autonomous vehicle interacting with its environment.
[0059]
[0060] Among them, state control Suppose that this autonomous vehicle fleet collectively and continuously performs the task of generating trajectory logs in the following form:
[0061]
[0062] Where 'i' indicates the task index.
[0063] Given N task records, one would naturally want to find a suitable function approximator by solving the least squares problem. Learning f on the clan,
[0064]
[0065] Where r represents the prediction residual,
[0066]
[0067] While this is reminiscent of model-based reinforcement learning RL, our interest in this disclosure is not in learning a controller, but rather in estimating the dynamics f * It transforms into a detector capable of marking task anomalies. For any trajectory τ generated by the new task, the residual norm per time step...
[0068]
[0069] It is a measure of "instantaneous unpredictability", while the time-averaged residual r(τ,f) * The exception score for the task is defined.
[0070] Chu et al. employed this method to predict the linear and angular accelerations of an aircraft. A single-pass least-squares estimation of the mission logs was sufficient using linear and quadratic functions. However, this anomaly detection method can become vulnerable to the quality of real-world data. When the training task set is contaminated with operational malfunctions or subtle features of future catastrophes (e.g., sensor degradation), the detector may extract misleading characteristics of normal behavior. Unlike model-based RL settings where all collected trajectories can be useful for learning unknown dynamics, for anomaly detection, the learning process must filter out tasks targeting such anomalies while fitting the model to the remaining data. Without such a filtering mechanism, the quality of the ordinary least-squares estimator and the associated anomaly detector can degrade due to the presence of highly anomalous tasks in the training set.
[0071] One measure of estimator robustness is the finite-sample breakdown point, which, in this context, is a fraction of the task trajectory that could be arbitrarily broken, leading to an explosion (i.e., infinity) of estimator parameters. For least squares estimators, and even minimum absolute bias L1 regressors, the finite-sample breakdown point is... This makes them vulnerable to severe outliers in the training set. A more robust option is to prune the estimators. For any f, the order statistics of the residuals can be expressed as...
[0072] r(τ [1] f)≤r(τ) [2] f)≤…≤r(τ) [N] f)
[0073] Then, we define the trimmed estimator as the sum of the smallest k residuals.
[0074]
[0075] The breakdown point of such an estimator is
[0076]
[0077] Here, k is the number of tasks that should not be pruned. In practice, k is unknown and is considered a hyperparameter. By making k small enough, the crash point can even be greater than 50%.
[0078] The cost of strong robustness is the computational complexity of least-pruned squares estimation: for an exact solution, the complexity scale is...
[0079] O(N d+1 )
[0080] For 3-dimensional regression problems (d>=3), the optimization task is non-smooth and non-convex. Due to its combinatorial flavor, it does not conform to standard gradient techniques or least squares solvers, even for linear models. Therefore, developing practical approximate algorithms is highly valuable. This disclosure presents a novel algorithm for robust learning based on smoothed pruning of squares loss. The algorithm is inspired by the Nesterov smoothing procedure for minimizing non-smooth objective functions and is also closely related to deterministic annealing methods for combinatorial optimization.
[0081] Consider vectors A function that maps to the sum of its k smallest elements.
[0082] Where r [1] ≤r [2] ≤…≤r [N]
[0083] This function allows smoothing as defined below.
[0084]
[0085]
[0086] Where H(u)=ulog(u)+(1-u)log(1-u)
[0087] Above, T is the smoothing parameter, also known as "temperature" in the annealing literature. Intuitively, if α i If the value approaches zero, the corresponding task is considered too atypical for training and is pruned. α can also be interpreted as the probability distribution on a binary indicator variable encoding whether the task is pruned. Therefore, when T is high, the smoothed target is dominated by the entropy of α and tends towards a near-uniform distribution.
[0088]
[0089] As T→0, the weights are hardened toward binary values. This strategy of starting with a highly smooth surrogate of a non-convex, non-smooth function and gradually increasing the degree of convexity is central to homotopy, continuity, and hierarchical non-convex methods for global optimization. Ideally, a highly smooth function is close to being convex, allowing for efficient finding of the global minimum. As smoothness decreases, it is hoped that minimizing the continuous path will lead to the global minimum.
[0090] Smoothing eliminates spurious local minima, making optimization tasks easier. In particular, the smoothing discussed above has the following properties:
[0091] · It is a concave function.
[0092] · It is continuously differentiable.
[0093] · This holds true for some fixed constants R.
[0094] Leveraging the smoothness of this pruning loss, to retain a fixed number of k tasks, we consider the following optimization problem:
[0095]
[0096] Equivalent,
[0097]
[0098] Make
[0099]
[0100] Method 800 then proceeds to the continuation end (“End A”). Method 800 starts from End A ( Figure 9 Proceed to boxes 902 and 904. These boxes represent the fitting and pruning phases, and method 800 alternates between them until convergence. Both phases are fast, efficient, and easily scale to thousands of tasks and millions of measurements. Optimization can be achieved through the following initialization.
[0101]
[0102] This corresponds to the non-robust least squares estimator and the T→∞ constraint. This can be part of the initialization of the machine learning model performed in box 810.
[0103] In box 902, model training engine 708 optimizes the fit of the weight set while keeping the weight set of the time series data records constant. In some embodiments, this optimization may be performed a predetermined number of times before proceeding to box 904. In some embodiments, this optimization may be performed until the loss function for measuring performance converges to a minimum, and then proceeding to box 904.
[0104] When designing machine learning models, we consider a linear combination of fixed nonlinear basis functions.
[0105] f(x,u)=Wφ(x,u)
[0106] in
[0107]
[0108] It is a nonlinear eigenmap, and W is an n×d parameter matrix.
[0109] For a fixed α, optimizing W is a weighted least squares problem that allows for fast single-pass solutions.
[0110] W=[A+λI d ] -1 B
[0111] in
[0112]
[0113]
[0114] In box 904, model training engine 708 optimizes the weight set of time-series data records while keeping the fitted weight set constant. In some embodiments, this optimization may be performed a predetermined number of times before proceeding to decision box 906. In some embodiments, this optimization may be performed until the loss function for measuring performance converges to a minimum, and then proceeding to decision box 906.
[0115] For a fixed W, we calculate the result from r. i =r(τ) i The vector of N residuals is given by ,W). α-optimization uses the form:
[0116]
[0117] When the scalar v satisfies the nonlinear equation
[0118]
[0119] The roots of this equation can be easily solved, for example, by the bisection method, noting that ψ(a) < 0, for
[0120]
[0121] And ψ(b)>0, for
[0122]
[0123] Provides the initial bracketing for the root.
[0124] We conducted experiments using both linear models and nonlinear stochastic basis functions.
[0125]
[0126] in
[0127]
[0128] as well as
[0129]
[0130] Here, the feature map dimension *d* controls the capacity of the dynamics model. Specifically, as *d* approaches infinity, the inner product in the random feature space approximates a Gaussian kernel.
[0131]
[0132] This approximation means that each component of the learned dynamics function is a linear combination similar to the measurements of the training task, in the following sense.
[0133]
[0134] For some coefficients β j,i,t ,in This refers to the j-th row of w.
[0135] The stochastic feature method scales linearly with the number of measurements, unlike the cubic scaling of β when dealing with precise kernels. At the cost of this linear training complexity and the loss of a global optimum, one can also embrace deep networks to parameterize dynamic models for this application.
[0136] Method 800 then proceeds to decision box 906, where it is determined whether the optimization of the machine learning model is complete. In some embodiments, this determination may be based on whether the loss function, which measures the performance of the machine learning model, has converged to a minimum. In some embodiments, the determination may be based on whether a predetermined number of iterations have been completed.
[0137] If the optimization of the machine learning model is not yet complete, the result of decision box 906 is negative, and method 800 returns to box 902 to further iterate the weights. Otherwise, if the optimization of the machine learning model is complete, the result of decision box 906 is positive, and method 800 proceeds to box 908.
[0138] In box 908, model training engine 708 determines anomaly thresholds for the machine learning model and stores the machine learning model and anomaly thresholds in model data storage 718 of anomaly detection system 702. The machine learning model is stored in model data storage 718 so that it can be distributed to other devices to perform anomaly detection without having to retrain the machine learning model. In some embodiments, the anomaly threshold can be determined by a tradeoff between precision and recall. Receiver operating characteristic (ROC) curves can be plotted for the training data, and the desired true positive rate can be used to determine the anomaly threshold. A high true positive rate typically comes at the cost of a high false negative rate (false alarms), and ROC curves are used to determine a good approach.
[0139] In block 910, the anomaly detection engine 710 of the anomaly detection system 702 loads a machine learning model from the model data storage 718. In some embodiments, the anomaly detection system 702 may be an anomaly detection system 702 that is different from the anomaly detection system 702 that initially trained the machine learning model and stored the machine learning model in the model data storage 718.
[0140] In block 912, the telemetry collection engine 706 of the anomaly detection system 702 receives new time-series data records containing telemetry information from the autonomous vehicle 300. In some embodiments, the new time-series data records may represent the entire trip or a portion of the trip. In some embodiments, the new time-series data records may be sent by the autonomous vehicle 300 during the trip, thereby enabling real-time detection of anomalies.
[0141] In box 914, the anomaly detection engine 710 uses a machine learning model to process new time-series data records. In some embodiments, the machine learning model takes the new time-series data records as input and outputs an anomaly score compared to an anomaly threshold.
[0142] Method 800 then proceeds to decision block 916, where it is determined whether an anomaly has been detected. In some embodiments, an anomaly is detected when the anomaly score is greater than or equal to an anomaly threshold.
[0143] If no anomaly is detected, method 800 proceeds to the end block and terminates. If an anomaly has been detected, the result of decision block 916 is yes, and method 800 proceeds to block 918, where the anomaly detection engine 710 sends a command to the autonomous vehicle 300 to handle the anomaly. Any suitable command can be sent. For example, in some embodiments, the anomaly detection engine 710 can determine the action to be taken in response to the anomaly and can send a command to the autonomous vehicle 300 to cause the autonomous vehicle 300 to perform the action to handle the anomaly. In some embodiments, the action can be at least one of rescheduling a future trip, navigating to an emergency repair location, and immediately performing a landing. In some embodiments, the action can include accepting remote control from a human operator to handle the anomaly. Method 800 then proceeds to the end block and terminates. For clarity, method 800 is shown terminating at this point. In some embodiments, method 800 can instead return to block 914 to further examine the time-series data records for anomalies before termination.
[0144] We generated synthetic 8-dimensional input and 3-dimensional output time series according to the following linear model. The output time series of the normal task has moderate Gaussian noise, but the anomalous task is severely corrupted by non-Gaussian noise uniformly sampled from the interval [0,10]. 200 training and 200 test tasks, each with 100 time steps, were performed, generated with 50% anomalous output according to the procedure below. Anomalous labels were discarded for training and used only for evaluation.
[0145]
[0146]
[0147]
[0148] Figure 10 Two graphs are included, showing how alternating optimization of the smoothed pruning loss (temperature T = 1.0) leads to a monotonically decreasing sum of the minimum k = 100 residuals, a result of our smoothing formula. The optimization converges to a task weight set (α) that clearly prunes almost all anomalies present in the training set, although there is 50% severe damage and no explicit anomaly labels provided to the algorithm.
[0149] Figure 11This is a graph illustrating a comparison between the anomaly detector based on the method disclosed in this paper and pure least squares models and several M-estimaters proposed in the robust statistics literature. The least squares detector suffers the most damage due to corruption in the training set, due to its lack of robustness. Robust loss functions (such as l1 and Huber) show improved performance by limiting outlier performance. However, they are still inferior to the proposed pruning scheme, which can give perfect detections even with heavily corrupted training data.
[0150] Figures 12 to 14 Includes several graphs illustrating experimental results of using machine learning models to detect anomalies according to various aspects of this disclosure. These results relate to data collected from delivery drone fleets flying in multiple environments of real-world delivery missions. A typical mission consists of a takeoff, package pickup, a cruise phase involving package delivery, and a subsequent landing. To our knowledge, machine learning on this scale of real-world delivery drone data is unprecedented: 5,000 historical missions generating approximately 80 million measurements prior to the deadline were used for training.
[0151] After the deadline, the trained detector was tested in 5,000 outdoor missions. In comparison, recent articles report results from 20 to 50 test missions in a controlled laboratory environment. Our large-scale flight log data covers a variety of vehicle types, package configurations, and different temperature and wind speed conditions. Furthermore, the mission logs include a mix of various R&D flights, including flight envelope expansion, prototype hardware and software, and other experiments designed to stress test the flight system. Flight missions typically last approximately 5 minutes, including several kilometers of cruise flight.
[0152] The above discussion Figures 4 to 6 An example of the input signals used to train the model to predict the linear and angular acceleration of a vehicle is shown. Each input time series is rescaled so that the values fall within the interval [-1.0, 1.0]. Training a nonlinear pruned model with d = 100 random Fourier features on 80 million measurements, including data preprocessing, was completed in 1.15 hours on a single CPU. Figures 12 to 14 The predictions from normal flight (top) and abnormal flight (bottom) are shown separately. The predictions show a large spike near the end of the abnormal test mission. This large spike results in a large residual error, marking the flight as abnormal.
[0153] The vehicle's position, velocity, and attitude estimates from the EKF-based state estimator are compared with commands generated by the advanced mission planning system. The controller generates actuator commands to reduce errors between the state estimates and the commands. The controller incorporates real-time airspeed estimates to appropriately distribute control across individual hover motors and aerodynamic control surfaces throughout the entire airspeed envelope.
[0154] Figure 15 and Figure 16 Includes graphs showing the performance of various detectors on a test set of 5000 tasks. Figure 15 In the middle, from top to bottom, the charts show the linear model and the linear + pruning model. Figure 16 In the middle, from top to bottom, the chart shows the nonlinear model and the nonlinear plus pruning model.
[0155] We report detection rates for multiple anomaly types:
[0156] • Exceeding basic statistics: Basic statistical measures, such as speed command error, command path error, root mean square of pitch, roll, pitch and roll errors, pitch and roll torque commands, have more than 3 standard deviations from the average calculated across the entire training set.
[0157] • Flight dynamics issues: Due to various factors, such as intentionally disabled actuators or other non-nominal airframe modifications to test system robustness, a particular flight may have non-nominal flight dynamics issues.
[0158] • High wind speed: prevailing wind speed is greater than 10 m / s, which qualitatively indicates an increased level of turbulence.
[0159] These anomalies were present in approximately 12% of the 5,000 test cases.
[0160] For the nonlinear trimmed detector on a test set of 5000 missions (d=100, T=1.0, k=0.75N), the area under the true positive rate vs. false positive rate curve exceeds 0.90. The detector coverage extends beyond simple statistical anomaly measurements for reliable ignition under various factors, such as disabled actuators, non-nominal hardware conditions, and vehicles experiencing turbulent conditions.
[0161] Figure 17 This is a graph showing the smooth distribution of task weights learned by the experimental example implementation of the pruning technique. The distribution of the α peaks is close to 0 compared to the mean of approximately 1.0 across the entire training set. This confirms the proposed method's ability to successfully filter out anomalies from the training set to extract normal flight patterns without any form of supervision. Without nonlinear modeling and pruning, we observe a performance degradation in analyses across more refined anomaly type categories.
[0162] Figure 18 This is a block diagram illustrating various aspects of an exemplary computing device 1800 suitable for use as a computing device according to this disclosure. While many different types of computing devices have been discussed above, the exemplary computing device 1800 describes various elements common to many different types of computing devices. Figure 18 This description is made with reference to a computing device implemented as a device on a network; however, the following description applies to servers, personal computers, mobile phones, smartphones, tablet computers, embedded computing devices, and other devices that may be used to implement portions of the embodiments of this disclosure. Some embodiments of the computing device may be implemented in or may include such devices in application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other custom devices. Furthermore, those skilled in the art will recognize that computing device 1800 may be any of any number of currently available or yet-to-be-developed devices.
[0163] In its most basic configuration, computing device 1800 includes at least one processor 1802 and system memory 1804 connected by a communication bus 1806. Depending on the exact configuration and type of the device, system memory 1804 may be volatile or non-volatile memory, such as read-only memory (“ROM”), random access memory (“RAM”), EEPROM, flash memory, or similar storage technologies. Those skilled in the art will recognize that system memory 1804 typically stores data and / or program modules that are readily accessible and / or currently being operated by processor 1802. In this respect, processor 1802 can act as the computing center of computing device 1800 by supporting instruction execution.
[0164] like Figure 18 The computing device 1800 is also shown to include a network interface 1810, which includes one or more components for communicating with other devices over a network. Embodiments of this disclosure can access basic services for performing communications using public network protocols via the network interface 1810. The network interface 1810 may also include a wireless network interface configured to communicate via one or more wireless communication protocols, such as Wi-Fi, 2G, 3G, LTE, WiMAX, Bluetooth, Bluetooth Low Energy, etc. As will be understood by those skilled in the art, Figure 18 The network interface 1810 shown may represent one or more wireless interfaces or physical communication interfaces described and illustrated above with respect to specific components of computing device 1800.
[0165] exist Figure 18In the exemplary embodiment depicted, the computing device 1800 also includes a storage medium 1808. However, a computing device that does not include means for persistently storing data to a local storage medium can be used to access the service. Therefore, Figure 18 The storage medium 1808 depicted is indicated by a dashed line to show that the storage medium 1808 is optional. In any case, the storage medium 1808 may be volatile or non-volatile, removable or non-removable, and may be implemented using any technology capable of storing information, such as, but not limited to, hard disk drives, solid-state drives, CD-ROMs, DVDs or other disk storage, cassette tapes, magnetic tapes, disk storage, etc.
[0166] Suitable embodiments of a computing device including a processor 1802, system memory 1804, communication bus 1806, storage medium 1808, and network interface 1810 are known and commercially available. For ease of explanation, and because it is not essential for understanding the claimed subject matter, Figure 18 Many typical components of computing devices are not shown. In this regard, computing device 1800 may include input devices such as a keyboard, keypad, mouse, microphone, touch input device, touchscreen, tablet, etc. Such input devices may be coupled to computing device 1800 via wired or wireless connections (including RF, infrared, serial, parallel, Bluetooth, Bluetooth Low Energy, USB, or other suitable connection protocols using wireless or physical connections). Similarly, computing device 1800 may also include output devices such as a display, speakers, printer, etc. Since these devices are well known in the art, they will not be further described or illustrated herein.
[0167] In the foregoing description, numerous specific details have been set forth to provide a thorough understanding of the various embodiments of this disclosure. However, those skilled in the art will recognize that the techniques described herein can be practiced without one or more of these specific details, or with other methods, components, materials, etc. In other instances, well-known structures, materials, or operations have not been shown or described in detail to avoid obscuring certain aspects.
[0168] Throughout this specification, references to "an embodiment" or "an embodiment" mean that a particular feature, structure, or characteristic described in connection with that embodiment is included in at least one embodiment of the invention. Therefore, the phrases "in one embodiment" or "in an embodiment" appearing in different places throughout the specification do not necessarily refer to the same embodiment. Furthermore, specific features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0169] The order of some or all of the boxes appearing in each method flowchart should not be considered restrictive. Rather, those skilled in the art who benefit from this disclosure will understand that the actions associated with some boxes can be performed in various orders, or even in parallel, not shown.
[0170] The processes explained above are described in accordance with computer software and hardware. The described techniques can be embodied in machine-executable instructions contained in a tangible or non-transitory machine-readable storage medium, which, when executed by a machine, will cause the machine to perform the described operations. Furthermore, these processes can be embodied in hardware, such as application-specific integrated circuits (“ASICs”) or others.
[0171] The above description of the embodiments illustrated in this invention, including those described in the abstract, is not intended to be exhaustive or to limit the invention to the exact forms disclosed. Although specific embodiments and examples of the invention have been described herein for illustrative purposes, those skilled in the art will recognize that various modifications are possible within the scope of the invention.
[0172] Based on the detailed description above, these modifications can be made to the invention. The terminology used in the appended claims should not be construed as limiting the invention to the specific embodiments disclosed in the specification. Rather, the scope of the invention is determined entirely by the appended claims, which will be interpreted according to the established principles of claim interpretation.
Claims
1. A non-transitory computer-readable medium having logic stored thereon, the logic being responsive to execution by one or more processors of a computing system, causing the computing system to perform actions for detecting anomalies in time-series data records, the actions comprising: The computing system receives multiple time-series data records, wherein the multiple time-series data records include at least one anomalous time-series data record; A machine learning model with a fitted weight set and a weight set of time series data records is initialized by a computing system; The computing system optimizes the fitting weight set of a machine learning model using multiple time series data records while keeping the time series data record weight set of the machine learning model constant. Optimizing the fitting weight set using multiple time series data records includes using the time series data record weights to identify one or more anomalous time series data records among the multiple time series data records that will be pruned during optimization. The computational system optimizes the weight set of time series data records while keeping the fitted weight set constant; and The computing system stores optimized time-series data records weights and optimized fit weights for monitoring anomalies.
2. The non-transitory computer-readable medium as claimed in claim 1, wherein, The action also includes determining an anomaly threshold.
3. The non-transitory computer-readable medium as claimed in claim 1, wherein, The multiple time-series data records include telemetry information from one or more autonomous vehicles.
4. The non-transitory computer-readable medium as described in claim 3, wherein, The one or more autonomous vehicles include at least one unmanned aerial vehicle (UAV).
5. The non-transitory computer-readable medium as claimed in claim 4, wherein, The UAV includes at least one horizontal propulsion unit and at least one vertical propulsion unit.
6. The non-transitory computer-readable medium as claimed in claim 4, wherein, The telemetry information includes information from at least two of the following: the takeoff portion of the trip, the cruise portion of the trip, and the landing portion of the trip.
7. The non-transitory computer-readable medium as claimed in claim 4, wherein, The time-series data record includes data representing at least one of motor speed, control surface servo position, linear velocity, orientation, and angular velocity.
8. The non-transitory computer-readable medium as claimed in claim 3, wherein, The action also includes: Receive new time-series data records from autonomous vehicles; and Use machine learning models to process new time series data records to detect anomalies.
9. The non-transitory computer-readable medium of claim 8, wherein, The action also includes responding to the detection of an anomaly: Determine the actions to be taken to handle the abnormality; as well as Send commands to the autonomous vehicle to cause it to perform actions to handle exceptions.
10. The non-transitory computer-readable medium of claim 9, wherein, The action to handle the anomaly is at least one of the following: rescheduling the future itinerary, sailing to an emergency repair location, immediately executing a landing procedure, and accepting remote control from a human operator.
11. A method for detecting anomalies in time series data records, the method comprising: Time-series data records are received from the monitored system by computing devices; The computing device uses a machine learning model to process time-series data records to generate anomaly scores; The computing device compares the anomaly score with the anomaly threshold. as well as In response to determining that the anomaly score is greater than the anomaly threshold: The computing device determines the action to be taken to handle the anomaly; as well as The computing device sends commands to the monitored system to cause the monitored system to perform actions to handle anomalies. The machine learning model is trained on multiple previous time series data records, including at least one anomalous time series data record. Among them, based on the weight set of time series data records used to identify anomalous time series data records, one or more previous time series data records are pruned during training; and The weight set of the time series data records is optimized during training.
12. The method of claim 11, wherein, The monitored system is an autonomous vehicle.
13. The method of claim 12, wherein, The autonomous vehicle in question is an unmanned aerial vehicle (UAV).
14. The method of claim 13, wherein, The UAV includes at least one horizontal propulsion unit and at least one vertical propulsion unit.
15. The method of claim 13, wherein, The time-series data records include telemetry information from at least two of the following: the takeoff portion of the trip, the cruise portion of the trip, and the landing portion of the trip.
16. The method of claim 13, wherein, The time-series data record includes data representing at least one of motor speed, control surface servo position, linear velocity, orientation, and angular velocity.
17. The method of claim 13, wherein, The action is at least one of the following: rescheduling the future itinerary, sailing to an emergency repair position, or immediately executing a landing.
18. The method of claim 11, further comprising training a machine learning model by performing actions including: Collect multiple time-series data records; Initialize the machine learning model with a fitted weight set and a time series data record of the weight set; Optimize the fitted weight set while keeping the weight set of time series data records constant; and Optimize the weight set of time series data records while keeping the fitted weight set constant.
19. The method of claim 18, wherein, Training the machine learning model also includes determining anomaly thresholds using multiple time-series data records.
20. A system comprising at least one computing device, the at least one computing device comprising: At least one processor; and A non-transitory computer-readable medium having logic stored thereon, the logic being responsive to execution by at least one processor to cause the system to perform an action, the action including: Receive time-series data records from the monitored system; Use machine learning models to process time-series data records to generate anomaly scores; Compare the outlier score with the outlier threshold; and In response to determining that the anomaly score is greater than the anomaly threshold: Determine the actions to be taken to handle the exception; and Send commands to the monitored system to cause it to perform actions to handle anomalies. The machine learning model is trained on multiple previous time series data records, including at least one anomalous time series data record. Among them, based on the weight set of time series data records used to identify anomalous time series data records, one or more previous time series data records are pruned during training; and The weight set of the time series data records is optimized during training.
21. A computer-implemented method for detecting and processing anomalies in telemetry data of an autonomous vehicle, the method comprising: A set of fitting weights for a machine learning model is initialized by a computing system, wherein the fitting weights are used by the machine learning model to determine the outlier scores of new time series data records; A set of weights for time-series data records associated with a training dataset is initialized by a computing system, wherein each weight of a time-series data record is associated with a time-series data record among a plurality of time-series data records in the training dataset, and wherein the weights of the time-series data records can be used to identify one or more anomalous time-series data records in the training dataset that will be pruned during optimization of the fitting weight set; A machine learning model is trained by a computing system by simultaneously optimizing a fitted weight set based on a training dataset and using a weight set recorded in time-series data, wherein optimizing the weight set recorded in time-series data and using the fitted weight set simultaneously includes pruning at least one of multiple time-series data records in the training dataset based on the weights of the time-series data records; and The computing system stores optimized time-series data records weights and optimized fit weights for monitoring anomalies.
22. The computer-implemented method according to claim 21 further includes determining an anomaly threshold.
23. The computer-implemented method according to claim 21, wherein, The autonomous vehicle in question is an unmanned aerial vehicle (UAV).
24. The computer-implemented method as described in claim 23, wherein, The UAV includes at least one horizontal propulsion unit and at least one vertical propulsion unit.
25. The computer-implemented method as described in claim 23, wherein, The new time-series data records include telemetry information from at least two of the trip's takeoff, cruise, and landing phases.
26. The computer-implemented method as described in claim 23, wherein, The new time-series data record includes data representing at least one of motor speed, control surface servo position, linear velocity, orientation, and angular velocity.
27. A system comprising: Autonomous vehicles; and A computing system communicatively coupled to the autonomous vehicle, the computing system having at least one computing device, the at least one computing device including at least one processor and a non-transitory computer-readable medium storing logic thereon, the logic causing the computing system to perform actions in response to execution by the at least one processor, the actions including: A set of fitting weights for a machine learning model is initialized by a computing system, wherein the fitting weights are used by the machine learning model to determine the outlier scores of new time series data records; A set of weights for time-series data records associated with a training dataset is initialized by a computing system, wherein each weight of a time-series data record is associated with a time-series data record among a plurality of time-series data records in the training dataset, and wherein the weights of the time-series data records can be used to identify one or more anomalous time-series data records in the training dataset that will be pruned during optimization of the fitting weight set; A machine learning model is trained by a computing system by simultaneously optimizing a fitted weight set based on a training dataset and using a weight set recorded in time-series data, wherein simultaneously optimizing the weight set recorded in time-series data and using the fitted weight set includes pruning at least one of multiple time-series data records in the training dataset based on the weights of the time-series data records; and The computing system stores optimized time-series data records weights and optimized fit weights for monitoring anomalies.
28. The system according to claim 27, wherein, The plurality of time-series data records include telemetry information from one or more autonomous vehicles, including at least two of the takeoff, cruise, and landing portions of the journey, and wherein the time-series data records include data representing at least one of motor speed, control surface servo position, linear velocity, orientation, and angular velocity.
29. The system according to claim 27, wherein, The action also includes: The computing system receives new time-series data records from the autonomous vehicle; The new time-series data records are processed by the computing system using the machine learning model to generate anomaly scores; and In response to determining that the anomaly score is greater than the anomaly threshold: The computing system determines the actions to be taken to handle the anomaly; and The computing system sends a command to the autonomous vehicle identifying the action to be taken; and The autonomous vehicle is an unmanned aerial vehicle (UAV), and the autonomous vehicle is configured as follows: Receive the command from the computing system; and It autonomously executes the actions identified by the command.
30. The system according to claim 29, wherein, The action also includes determining an anomaly threshold.
31. The system according to claim 29, wherein, The UAV includes at least one horizontal propulsion unit and at least one vertical propulsion unit.
32. The system according to claim 29, wherein, The autonomous execution of actions identified by the command includes at least one of navigating to an emergency repair position or immediately executing a landing.
33. The system according to claim 29, wherein, The actions to be taken to handle the anomaly include at least one of rescheduling future trips or accepting remote control by a human operator.