CN114564393A - Unmanned aerial vehicle configuration module range specification error detection method, system and storage medium - Google Patents

Unmanned aerial vehicle configuration module range specification error detection method, system and storage medium Download PDF

Info

Publication number
CN114564393A
CN114564393A CN202210181809.3A CN202210181809A CN114564393A CN 114564393 A CN114564393 A CN 114564393A CN 202210181809 A CN202210181809 A CN 202210181809A CN 114564393 A CN114564393 A CN 114564393A
Authority
CN
China
Prior art keywords
configuration
fitness
range
module
state change
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210181809.3A
Other languages
Chinese (zh)
Inventor
马建峰
施敏强
韩瑞冬
杨超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN202210181809.3A priority Critical patent/CN114564393A/en
Publication of CN114564393A publication Critical patent/CN114564393A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3604Analysis of software for verifying properties of programs
    • G06F11/3612Analysis of software for verifying properties of programs by runtime analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3604Analysis of software for verifying properties of programs
    • G06F11/3616Analysis of software for verifying properties of programs using software metrics
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Probability & Statistics with Applications (AREA)
  • Traffic Control Systems (AREA)

Abstract

一种无人机配置模块范围规范错误检测方法、系统及存储介质,方法包括通过执行无人机飞行任务生成日志文件;将日志文件中的数据划分为两部分,其中一部分数据用于提取特征并利用所提取到的特征生成状态变化预测器,另一部分数据进行聚类,并从每个聚类中选择代表样本;使用每个代表样本找出相应的错误配置发送给搜索器;迭代地改变配置并使用搜索器与状态变化预测器评估配置适应度;满足迭代停止条件时,合并每个代表样本的搜索结果,生成一个潜在不正确的配置集;对潜在不正确的配置集中的配置进行模拟验证;根据模拟验证结果,利用多目标优化为每个配置生成一个有效参数范围。本发明能够高覆盖率地提供所有可能的参数值并且进行高效地验证。

Figure 202210181809

A method, system and storage medium for detecting errors in the scope specification of a UAV configuration module. The method includes generating a log file by executing a UAV flight mission; dividing data in the log file into two parts, wherein a part of the data is used to extract features and Use the extracted features to generate a state change predictor, cluster another part of the data, and select representative samples from each cluster; use each representative sample to find the corresponding misconfiguration and send it to the searcher; iteratively change the configuration And use the searcher and state change predictor to evaluate the configuration fitness; when the iteration stopping condition is met, the search results of each representative sample are merged to generate a potentially incorrect configuration set; the configuration in the potentially incorrect configuration set is simulated and verified ; Based on the simulation verification results, a multi-objective optimization is used to generate a valid parameter range for each configuration. The present invention can provide all possible parameter values with high coverage and perform efficient verification.

Figure 202210181809

Description

Unmanned aerial vehicle configuration module range specification error detection method, system and storage medium
Technical Field
The invention belongs to the field of unmanned aerial vehicle communication, and particularly relates to a method and a system for detecting the range specification error of an unmanned aerial vehicle configuration module and a storage medium.
Background
Because drones are unmanned, small, and fast, they are often used to perform tasks, such as delivery and surveillance, to locations that are otherwise difficult or costly to reach. However, as drones are increasingly used for critical tasks, their reliability and adaptability becomes critical to ensure that tasks can be successfully completed.
To achieve reliability and adaptability, the enhanced flight control system provides a large number of control parameters that can be configured to modify the flight state of the drone, such as linear and angular positions, and through parameter adjustments, different configurations can be set to support various tasks and to handle different flight environments. However, due to the lack of adequate checking of the control parameter values, adjusting the parameters may introduce certain vulnerabilities (known as range specification errors). In particular, when selecting parameter values within the range provided by the manufacturer to set some specific configurations, unstable flight conditions may be triggered, such as trajectory deviation or even crash of the drone.
During flight, the Ground Control Station (GCS) communicates with the drone by sending a series of commands to the flight control program. Before the unmanned aerial vehicle takes off, a user can configure a flight control program by adjusting parameters, so that the flight state (such as linear position, angular velocity, speed, acceleration and the like) of the unmanned aerial vehicle is controlled. To ensure that the drone successfully completes the flight mission, the flight control program may periodically observe the current location's flight status and sensor data (e.g., from GPS, gyroscopes, and accelerometers) to estimate a reference state indicative of the next state of the drone. The control program then generates actuator signals (e.g., motor commands) to move the drone to the reference state. The locating state and the reference state need to be close enough, i.e. within the standard deviation. If this is not the case, the drone flight may become unstable, leading to trajectory deviation and crashes.
Although the value ranges of the control parameters are typically hard-coded in the control program, and one would expect all possible combinations of these values to be correct, some of them are actually incorrect. Any configuration that triggers an unstable flight condition is considered incorrect. The flight control program may specify hundreds of corresponding control parameters, and identifying range specification errors by validating all parameter values is time consuming because some parameters may not affect flight stability.
Existing vulnerability detection techniques are unable to detect such range specification errors, and if a source of the control program is available, static program analysis may be used to detect data/control dependencies and discover such errors. However, this method is only suitable for small code fragments, and if the method is used for large complex programs, the static analysis has the problem of expandability. To address scalability issues, taint analysis can be used by tracking the input data stream, which depends more on the input configuration. However, when dealing with a very large number of control parameters, each having a wide range of values, it is time consuming to analyze the configuration by contaminating all parameter values.
The reason is that different parameter values often lead to different execution flows, which involve very different control program parts. Unfortunately, flight control programs are of a large scale (e.g., over 70 ten thousand lines of code) and have complex control and data dependencies. Also for unstable flight conditions, each configuration needs to be verified by real or simulated flight execution. Because of the large number of control parameters, each having its value range, it is inefficient to alter the parameter values to generate configurations and verify all of these configurations. Therefore, it is crucial to design an efficient and effective configuration verification method, i.e. capable of providing all possible parameter values with high coverage and performing efficient verification.
Disclosure of Invention
The invention aims to provide a method, a system and a storage medium for detecting the range specification error of an unmanned aerial vehicle configuration module, so as to realize high-efficiency verification and enable the adaptability and stability of the unmanned aerial vehicle to achieve the optimal balance.
In order to achieve the purpose, the invention has the following technical scheme:
in a first aspect, an embodiment of the present invention provides a method for detecting an error in a range specification of an unmanned aerial vehicle configuration module, including:
generating a log file by executing the flight mission of the unmanned aerial vehicle;
dividing data in the log file into two parts, wherein one part of data is used for extracting features and generating a state change predictor by using the extracted features, and the other part of data is clustered, and selecting a representative sample from each cluster;
using each representative sample to find out corresponding error configuration and sending the error configuration to a searcher;
iteratively changing the configuration and evaluating the configuration fitness using a searcher and a state change predictor;
merging the search results of each representative sample when the iteration stop condition is met, and generating a configuration set which is potentially incorrect;
performing simulation verification on the configuration in the configuration set which is potentially incorrect;
and generating an effective parameter range for each configuration by utilizing multi-objective optimization according to the simulation verification result.
Further, each log in the log file contains flight status, sensor data, configuration, and a timestamp.
Preferably, in the process of generating the state change predictor, one feature is composed of a state unit a with a timestamp, a sensor data unit s and a configuration unit x, the combination of a specific state unit and a sensor data unit is used as a context c ═ a, s }, and one feature is normalized into a feature vector v { c, x }; the state change predictor predicts the next reference state by adopting long-term and short-term memory, specifically:
for a preprocessed feature vector v with time stamp ti={ct,xtH consecutive time-stamped vectors V { V } preceding tt-h-1,...,vt-1,vtAs input and return the next referenceState cell at+1′Is predicted with the maximum conditional probability.
Further, training the state change predictor using a mean square error loss; in the training process of the state change predictor, the weight is updated through iteration to enable the predicted reference state at+1′With the true state at+1Reaches a set threshold range to ensure the predicted reference state at+1′Closer to the true state at+1
Firstly, dividing data in a log file into a plurality of fragments Ci={ci,ci+1,...,ci+hI mod (h +1) ═ 0, where i is the number of data segments, clustering the above data segments and randomly extracting a representative sample m from each cluster for subsequent search;
in said step of using each representative sample to find a corresponding misconfiguration to send to the searcher: and (4) carrying out genetic algorithm search on each representative sample m, finding out corresponding error configuration through iterative mutation, intersection and selection, and sending the corresponding error configuration to a searcher.
Furthermore, in the process of carrying out genetic algorithm search, the fitness is adopted to quantify the deviation caused by the given configuration, and the deviation probability of the configuration is returned by the fitness evaluation function; in particular, assume that the current search is for context segment C { C }1,...ch,ch+1Selecting C' C by fitness evaluation function1,c2,...chAs input to the state change predictor, and selects ch+1A of (a)h+1Used as a ground truth for calculating deviations; in the evaluation configuration x { x1,...,xDD is the number of parameters, which the fitness evaluation function combines with the segments to create the feature V { { c { (c) }1,x},...,{chX } and then inputs these features to the state change predictor, returning a predicted reference state a'h+1(ii) a The evaluation of the configuration fitness depends on the L1 distance | a between the predicted state and the true stateh+1-a′h+1II, the goal of the search is to find incorrect configurations that are predicted to maximize fitnessMaximizing the probability of causing unstable states is obtained.
Preferably, the iteratively changing the configuration and evaluating the configuration fitness using the searcher and state change predictor comprises:
in the G-th iteration, G ∈ [1, G ]max],GmaxFor the maximum number of iterations, the current population is first subjected to variation popg{x1,g...,xNP,gAnd generating variant population popv{y1,g,...,yNP,g}; each configuration of the variant population is obtained as follows:
yi,g=xi,g+F*(xbest,g-xi,g)+F*(xr1,g-xr2,g)
in the formula, xr1,g、xr2,gIs a random configuration, xi,gIs a previous generation configuration, xbest,gIs the best fitness configuration, F is the scaling factor;
second, popgWith popvCross-producing a new experimental population pope{e1,g,...,eNP,gIs of the ith configuration ei,g{ei1,g,ei2,g,...,eij,gJ is e [1, D ]](ii) a Parameter value e for each configurationij,gCalculated as follows:
Figure BDA0003521469290000041
in the formula, jrandIs [1, D ]]Is a random integer of (1), CR is the crossover rate, xij,gIs popgThe jth parameter value, y, of the ith configurationij,gIs popvThe jth parameter value of the ith configuration;
then, the pop was evaluatedgAnd popeThe fitness of each configuration in (1): selecting some configurations from the population according to the fitness to obtain the next generation population popg+1{x1,g+1,...,xNP,g+1This process uses the following selection function:
Figure BDA0003521469290000042
wherein f is a fitness evaluation function;
finally, if the fitness of each configuration in the population no longer increases or reaches a maximum number GmaxThe search stops mutating.
Preferably, the step of generating a valid parameter range for each configuration by using multi-objective optimization comprises:
range guidance Range' is estimated based on the following optimization problem:
Figure BDA0003521469290000051
in the formula, RincorrectFor the wrong configuration of R range coverage, R is the reduced range to be sought, origin range is the original range, f1To optimize the objective 1, f2To optimize objective 2.
In a second aspect, an embodiment of the present invention provides an unmanned aerial vehicle configuration module range specification error detection system, including:
the log generation module is used for generating a log file by executing the flight mission of the unmanned aerial vehicle;
the predictor generation and cluster sampling module is used for dividing data in the log file into two parts, wherein one part of data is used for extracting features and generating a state change predictor by using the extracted features, and the other part of data is clustered and a representative sample is selected from each cluster;
the sample error configuration searching module is used for finding out corresponding error configuration by using each representative sample and sending the corresponding error configuration to the searcher;
a fitness evaluation module for iteratively changing the configuration and evaluating the configuration fitness using the searcher and the state change predictor;
a configuration set generation module which is used for merging the search results of each representative sample when the iteration stop condition is met and generating a configuration set which is potential incorrect;
a simulation verification module for performing simulation verification on the configuration in the potentially incorrect configuration set;
and the effective parameter range determining module is used for generating an effective parameter range for each configuration by utilizing multi-objective optimization according to the simulation verification result.
In a third aspect, an embodiment of the present invention provides a computer-readable storage medium, where at least one instruction is stored, and the at least one instruction is executed by a processor in an electronic device to implement the method for detecting the error in the drone configuration module range specification according to the first aspect.
Compared with the prior art, the first aspect of the invention has at least the following beneficial effects:
the range specification error detection method first collects flight log files, each containing flight status, sensor data, configuration, and timestamp data. Using these log file data, a state change predictor is trained for estimating the state that the drone will arrive at the next timestamp, called the reference state. Meanwhile, unlike conventional configuration verification schemes that test configurations on flight simulators or real drones, the present invention uses a state change predictor to estimate a reference state and infers whether the configuration is correct or not according to the deviation of the reference state from an expected state, specifically, uses each representative sample to find out a corresponding incorrect configuration to send to the searcher, iteratively changes the configuration and uses the searcher and the state change predictor to evaluate the configuration fitness. Finally, the invention carries out simulation verification on the configuration in the configuration set which is potentially incorrect, verifies the configuration which is predicted to be incorrect, and utilizes multi-objective optimization to generate an effective parameter range for each configuration. By combining the characteristics, the invention can provide all possible parameter values with high coverage rate and carry out verification efficiently.
It is to be understood that, the beneficial effects of the second to third aspects may be referred to the related description of the first aspect, and are not described herein again.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a schematic flow chart of a method for detecting a range specification error of an unmanned aerial vehicle configuration module according to the present invention.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
Furthermore, in the description of the present application and the appended claims, the terms "first," "second," "third," and the like are used for distinguishing between descriptions and not necessarily for describing a relative importance or importance.
Referring to fig. 1, in the method for detecting the range specification error of the unmanned aerial vehicle configuration module according to the present invention, the system model mainly includes the following three components: a state change predictor, a module for predicting flight conditions and evaluating whether the configuration would result in an unstable condition; a learning-guided mutation searcher, a Genetic Algorithm (GA) search module for detecting misconfigurations; a range guidance estimator, a module for providing safety parameter range guidance.
The specific steps of the range specification error detection method shown in the figure comprise:
1) and generating a log file (i) by repeatedly executing the flight mission of the unmanned aerial vehicle.
2) The data in the log file is divided into two parts, one part is used by a state change predictor to generate features, and the other part is clustered and sampled by a variation searcher guided by learning.
3) These features generated from the log file are used to generate a state change predictor (c).
4) The searcher clusters the data in the log file and selects a representative sample from each cluster.
5) The searcher uses each representative sample to find the corresponding wrong configuration (c).
6) The searcher iteratively changes the configuration and uses a predictor to evaluate which configuration is more likely to result in the unstable state.
7) When the iteration stop condition is met, the searcher merges the search results for each sample and generates a set of potentially incorrect configurations.
8) These potentially incorrect configurations are verified by simulation
Figure BDA0003521469290000071
9) Using the validation results, the estimator uses multi-objective optimization to generate multiple feasible range guides to balance usability and stability under specific conditions
Figure BDA0003521469290000072
With respect to the state change predictor, since the flight control program estimates the next reference state from the current positioning state and sensor data, based on this input-output control process, a Machine Learning (ML) predictor is utilized to model this input-output relationship and evaluate the impact of the configuration. The present invention uses such ML predictors for several reasons. First, the diversity and flexibility of the ML predictor makes it suitable for modeling nonlinear input-output control processes. Second, the ML predictor can estimate the next reference state while accurately reflecting the bias caused by the misconfiguration. Specifically, for flight data, the learning algorithm trains a predictor that takes as input the positioning state, sensor data, and configuration to predict (estimate) the next reference state.
As with the control algorithm, large deviations between the predicted and actual reference states indicate that the flight state may become unstable.
Two steps are performed to train the predictor: feature extraction and predictor generation.
Firstly, feature extraction
The predictor is trained using a data set, extracting state, sensor data and configuration from raw logs, and represented according to a fixed feature vector format. The flight control program may specify hundreds of corresponding control parameters, and identifying range specification errors by validating all parameter values is time consuming because some parameters may not affect flight stability.
The method proposed by the invention therefore only concerns the parameters that may affect the angular position and the angular velocity state, since they directly affect the flight attitude and their erroneous values are more likely to lead to unstable states. Since only the unstable states that affect the angle (i.e., position and velocity) are of interest, the predictor of the inventive method considers: (i) angular position and angular velocity of the state; (ii) data obtained from gyroscopes and accelerometers. One feature consists of a status cell a, a sensor data cell s and a configuration cell x. For ease of description, the combination of a particular state element and sensor data element is referred to as the context c ═ a, s. Finally, a feature is composed of these three time-stamped units and is normalized to the vector v { c, x }.
Second, predictor generation
Long Short Term Memory (LSTM) techniques can efficiently fit the complex input/output of a nonlinear model, and therefore use LSTM as a predictor of the next reference state. In particular, for a preprocessed feature vector v with a time stamp ti={ct,xt}, LSTM takes as input h consecutive time-stamped vectors h before t (i.e., V { V })t-h-1,...,vt-1,vt}) and returns the next reference state element at+1′Is predicted with the maximum conditional probability. In the training phase, the weight of the predictor is iteratively updated to ensure the predicted reference state at+1′Closer to the true state at+1. The present invention uses Mean Square Error (MSE) loss for training.
In embodiments of the invention, a learning-guided mutation searcher is employed, and to search for incorrect configurations, the method of the invention uses a genetic algorithm, i.e., a meta-heuristic search that relies on operators of biological heuristics (e.g., mutation, intersection, and selection). Initially, the system of the inventive method searches a plurality of specific contexts to find an incorrect configuration, since an incorrect configuration may only result in unstable states in a specific context (i.e. states and sensor data). The method divides the data in the log into a plurality of segments Ci={ci,ci+1,...,ci+hI mod (h +1) ═ 0, where i is the number of data. But searching each segment yields a large number of repeated results, taking into account the similarity between segments. To address this problem, the method of the present invention clusters the segments and samples from the clusters to reduce redundancy while preserving diversity. The invention utilizes a meanshift algorithm, namely a nonparametric self-adaptive clustering algorithm based on probability density, to cluster the fragments, and randomly extract a representative sample m from each cluster for subsequent search. Then, for each sample segment, the searcher performs a Genetic Algorithm (GA) search through iterative mutation, crossover, and selection to explore incorrect configurations. When the searcher collects all incorrect configurations for each sample, it merges and deduplicates them as a unique set, called a set of potentially incorrect configurations. Detailed information about the fitness evaluation function (used to evaluate the configured fitness) and the search process is provided in the face.
A fitness evaluation function is introduced in the specific steps of the method, and a Genetic Algorithm (GA) search quantifies the deviation possibly caused by a given configuration by using a predictor and adopting the fitness. Intuitively, the fitness evaluation function returns a bias to the configurationThe difference probability. In particular, assume that the current search is for context segment C { C }1,...ch,ch+1The function selects C' { C }1,c2,...chIs used as input to the prediction model and selects ch+1A of (a)h+1Used as a ground truth for calculating deviations.
In the evaluation configuration x { x1,...,xDWhen (D is the number of parameters), the function merges it with the segment to create the feature V { { c { (C) }1,x},...,{chX } }. These features are then input to the predictor, which returns a predicted reference state a'h+1. The fitness is the L1 distance | a between the predicted and true statesh+1-a′h+1|. The goal of the search is then to find incorrect configurations that are predicted to maximize fitness, i.e., bias (and thus the probability of causing an unstable state).
The specific search process of the method of the invention is as follows:
for each context segment sample, the searcher first initializes an individual as a configured population, with the parameter value for each configuration set to its default value. In this embodiment, assume that the population size is NP and the maximum number of iterations is Gmax
The search process iteratively mutates and updates populations as follows:
first iterate at the G < th > (G e [1, G)max]) In the method, a searcher firstly performs variation pop on a current populationg{x1,g...,xNP,g} generating variant populations popv{y1,g,...,yNP,g}. Each configuration of variant populations was obtained as follows:
yi,g=xi,g+F*(xbest,g-xi,g)+F*(xr1,g-xr2,g)
wherein x isr1,g、xr2,gIs a random configuration, xi,gIs a previous generation configuration, xbest,gIs the best fitness configuration and F is the scaling factor.
Second, popgAnd popvCross-producing a new experimental population pope{e1,g,...,eNP,gIs of the ith configuration ei,g{ei1,g,ei2,g,...,eij,gJ is e [1, D ]]. Parameter value e for each configurationij,gThe calculation formula is as follows:
Figure BDA0003521469290000101
wherein j israndIs [1, D ]]Is a random integer of (1), CR is the crossover rate, xij,gIs popgThe j parameter value, y, of the i-th configurationij,gIs popvThe jth parameter value of the ith configuration.
The searcher then evaluates the popgAnd popeThe fitness of each configuration. The searcher selects some configurations from the population according to their fitness to obtain the next generation population popg+1{x1,g+1,...,xNP,g+1Using the following selection function:
Figure BDA0003521469290000102
where f is a fitness evaluation function.
Finally, if the fitness of each configuration in the population no longer increases or reaches a maximum number GmaxThe search stops mutating.
The present embodiment selects the top 10 highest fitness configurations from the last generation population as incorrect configurations.
With respect to the range guidance estimator, the range guidance provided to the user should take into account stability and adaptability while eliminating discrete misconfigurations and preserving relatively complete space for each parameter. Meanwhile, because the method of the present invention cannot ensure the stability of the unverified configuration, the estimation of the range guidance should refer to the obtained verification result and avoid considering the incorrect configuration. Thus, the present invention utilizes multivariate optimization to determine the appropriate range guidance. The present invention considers a configuration to be covered if all parameter values in the configuration are within the guidelines. The present invention attempts to estimate the Range guidance (Range') based on the following optimization problem:
Figure BDA0003521469290000111
the optimization problem has two goals: (a) maximizing the number of local optimal range coverage verification configurations R; (b) minimizing misconfiguration RincorrectThe coverage of (c). If the allowable range is narrowed to avoid misconfigurations, the range of each parameter value is also narrowed, and vice versa. Thus, rather than defining a strict range for each parameter, the system solves this optimization problem using multiple constraints to obtain a different set of Pareto solutions. These pareto solutions form a boundary consisting of the best possible solutions, allowing the user to select the best configuration according to his own requirements. The system provides this range guidance based primarily on the following considerations: (1) as the number of parameters increases, it is difficult to completely exclude unsafe parameter values, since the safe parameter range may not be continuous. (2) While stability is the most important, users may be willing to take some minor risk to better control flexibility or usability.
Another embodiment of the present invention further provides a system for detecting an error in a range specification of an unmanned aerial vehicle configuration module, which specifically includes:
the log generation module is used for generating a log file by executing the flight mission of the unmanned aerial vehicle;
the predictor generation and cluster sampling module is used for dividing data in the log file into two parts, wherein one part of data is used for extracting features and generating a state change predictor by using the extracted features, and the other part of data is clustered and a representative sample is selected from each cluster;
the sample error configuration searching module is used for finding out corresponding error configuration by using each representative sample and sending the corresponding error configuration to the searcher;
a fitness evaluation module for iteratively changing the configuration and evaluating the configuration fitness using the searcher and the state change predictor;
a configuration set generation module which is used for merging the search results of each representative sample when the iteration stop condition is met and generating a configuration set which is potential incorrect;
a simulation verification module for performing simulation verification on the configuration in the potentially incorrect configuration set;
and the effective parameter range determining module is used for generating an effective parameter range for each configuration by utilizing multi-objective optimization according to the simulation verification result.
Another embodiment of the present invention provides a computer-readable storage medium having at least one instruction stored therein, the at least one instruction being executable by a processor in an electronic device to implement the drone configuration module range specification error detection method.
Illustratively, the computer program may be partitioned into one or more modules/units, which are stored in a computer readable storage medium and executed by the processor to perform the steps in the drone configuration module range specification error detection method of the present invention. The one or more modules/units may be a series of computer-readable instruction segments capable of performing certain functions, which are used to describe the execution of the computer program in the server.
The server can be a computing device such as a smart phone, a notebook, a palm computer and a cloud server. The server may include, but is not limited to, a processor, a memory. It will be appreciated by those skilled in the art that the server may also include more or fewer components, or some components in combination, or different components, e.g., the server may also include input output devices, network access devices, buses, etc.
The Processor may be a CentraL Processing Unit (CPU), other general purpose Processor, a DigitaL SignaL Processor (DSP), an AppLication Specific Integrated Circuit (ASIC), an off-the-shelf ProgrammabLe Gate Array (FPGA) or other ProgrammabLe logic device, discrete Gate or transistor logic device, discrete hardware component, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The storage may be an internal storage unit of the server, such as a hard disk or a memory of the server. The memory may also be an external storage device of the server, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure DigitaL (SD) Card, a FLash memory Card (FLash Card), or the like provided on the server. Further, the memory may also include both an internal storage unit of the server and an external storage device. The memory is used to store the computer readable instructions and other programs and data needed by the server. The memory may also be used to temporarily store data that has been output or is to be output.
It should be noted that, for the information interaction, execution process, and other contents between the above-mentioned devices/units, the specific functions and technical effects thereof are based on the same concept as those of the method embodiment, and specific reference may be made to the part of the method embodiment, which is not described herein again.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, all or part of the processes in the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer-readable storage medium and can implement the steps of the embodiments of the methods described above when the computer program is executed by a processor. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer readable medium may include at least: any entity or device capable of carrying computer program code to a photographing apparatus/terminal apparatus, a recording medium, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), an electrical carrier signal, a telecommunications signal, and a software distribution medium. Such as a usb-disk, a removable hard disk, a magnetic or optical disk, etc.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present application and are intended to be included within the scope of the present application.

Claims (10)

1. The utility model provides an unmanned aerial vehicle configuration module scope specification error detection method which characterized in that includes:
generating a log file by executing the flight mission of the unmanned aerial vehicle;
dividing data in the log file into two parts, wherein one part of data is used for extracting features and generating a state change predictor by using the extracted features, and the other part of data is clustered, and selecting a representative sample from each cluster;
using each representative sample to find out corresponding error configuration and sending the error configuration to a searcher;
iteratively changing the configuration and evaluating the configuration fitness using a searcher and a state change predictor;
when the iteration stop condition is met, combining the search results of each representative sample to generate a potential incorrect configuration set;
performing simulation verification on the configuration in the configuration set which is potentially incorrect;
and generating an effective parameter range for each configuration by utilizing multi-objective optimization according to the simulation verification result.
2. The drone configuration module wide specification error detection method of claim 1, wherein each log in the log file contains flight status, sensor data, configuration, and timestamps.
3. The method of claim 1, wherein the state change predictor uses a machine learning predictor to simulate a nonlinear input to an output control process, and in generating the state change predictor, one feature is composed of a state unit a with a timestamp, a sensor data unit s, and a configuration unit x, and a combination of a specific state unit and sensor data unit is used as a context c ═ a, s }, and one feature is normalized to a feature vector v { c, x };
the state change predictor predicts the next reference state by using long-short term memory, specifically:
for a preprocessed feature vector v with time stamp ti={ct,xiH consecutive time-stamped vectors V { V } preceding tt-h-1,...,vt-1,vtAs input and returns to the next reference state cell at+1′Is predicted with the maximum conditional probability.
4. The drone configuration module range specification error detection method of claim 3, wherein the state change predictor is trained using mean square error loss; in the training process of the state change predictor, the weight is updated through iteration to enable the predicted reference state at+1′With the true state at+1The degree of similarity reaches a set threshold range.
5. The UAV configuration module range specification error detection method of claim 3, wherein data in a log file is first divided into a plurality of segments Ci={ci,ci+1,...,ci+hI mod (h +1) ═ 0, where i is the number of data, clustering the above data segments and randomly extracting a representative sample m from each cluster for subsequent search;
in said step of using each representative sample to find a corresponding misconfiguration to send to the searcher: and (4) carrying out genetic algorithm search on each representative sample m, finding out corresponding error configuration through iterative mutation, intersection and selection, and sending the corresponding error configuration to a searcher.
6. The method of claim 5, wherein the fitness used in the genetic algorithm search is used to quantify how much deviation a given configuration will cause, and the fitness evaluation function returns the probability of the deviation of the configuration; in particular, assume that the current search is for context segment C { C }1,...ch,ch+1Selecting C' C by fitness evaluation function1,c2,...chAs input to the state change predictor, and selects ch+1A of (a)h+1Used as basic facts for calculating deviations(ii) a In the evaluation configuration x { x1,...,xDD is the number of parameters, which the fitness evaluation function combines with the segments to create the feature V { { c { (c) }1,x},...,{chX } and then inputs these features to the state change predictor, returning a predicted reference state a'h+1(ii) a The evaluation of the configuration fitness depends on the L1 distance between the predicted state and the real state | | ah+1-a′h+1The goal of the search is to find incorrect configurations that are predicted to maximize fitness, resulting in maximizing the probability of causing unstable states.
7. The drone configuration module range specification error detection method of claim 6, wherein the step of iteratively changing the configuration and evaluating the configuration fitness using a searcher and state change predictor comprises:
in the G-th iteration, G ∈ [1, G ]max],GmaxFor the maximum number of iterations, the current population is first subjected to variation popg{x1,g...,xNP,gAnd generating variant population popv{yl,g,...,yNP,g}; each configuration of the variant population is obtained as follows:
yi,g=xi,g+F*(xbest,g-xi,g)+F*(xr1,g-xr2,g)
in the formula, xr1,g、xr2,gIs a random configuration, xi,gIs a previous generation configuration, xbest,gIs the best fitness configuration, F is the scaling factor;
second, popgWith popvCross-producing a new experimental population pope{e1,g,...,eNP,gIs of the ith configuration ei,g{ei1,g,ei2,g,...,eij,gJ is e [1, D ]](ii) a Parameter value e for each configurationij,gCalculated as follows:
Figure FDA0003521469280000021
in the formula, jrandIs [1, D ]]Is a random integer of (1), CR is the crossover rate, xij,gIs popgThe jth parameter value, y, of the ith configurationij,gIs popvThe jth parameter value of the ith configuration;
then, the pop was evaluatedgAnd popeFitness of each configuration in (1): selecting some configurations from the population according to the fitness to obtain the next generation population popg+1{x1,g+1,...,xNP,g+1This process uses the following selection function:
Figure FDA0003521469280000031
wherein f is a fitness evaluation function;
finally, if the fitness of each configuration in the population no longer increases or reaches a maximum number GmaxThe search stops mutating.
8. The method of claim 1, wherein the step of generating a valid parameter range for each configuration using multi-objective optimization based on simulation verification results comprises:
range guidance was estimated based on the following optimization problem:
Figure FDA0003521469280000032
in the formula, RincorrectFor the wrong configuration of R range coverage, R is the reduced range to be sought, origin range is the original range, f1To optimize the objective 1, f2To optimize objective 2.
9. An unmanned aerial vehicle configuration module range specification error detection system, comprising:
the log generation module is used for generating a log file by executing the flight mission of the unmanned aerial vehicle;
the predictor generation and cluster sampling module is used for dividing data in the log file into two parts, wherein one part of data is used for extracting features and generating a state change predictor by using the extracted features, and the other part of data is clustered and a representative sample is selected from each cluster;
the sample error configuration searching module is used for finding out corresponding error configuration by using each representative sample and sending the corresponding error configuration to the searcher;
a fitness evaluation module for iteratively changing the configuration and evaluating the configuration fitness using the searcher and the state change predictor;
a configuration set generation module which is used for combining the search results of each representative sample when the iteration stop condition is met and generating a configuration set which is potential incorrect;
a simulation verification module for performing simulation verification on the configuration in the potentially incorrect configuration set;
and the effective parameter range determining module is used for generating an effective parameter range for each configuration by utilizing multi-objective optimization according to the simulation verification result.
10. A computer-readable storage medium characterized by: the computer-readable storage medium has stored therein at least one instruction that is executable by a processor in an electronic device to implement the drone configuration module range specification error detection method of any one of claims 1 to 8.
CN202210181809.3A 2022-02-25 2022-02-25 Unmanned aerial vehicle configuration module range specification error detection method, system and storage medium Pending CN114564393A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210181809.3A CN114564393A (en) 2022-02-25 2022-02-25 Unmanned aerial vehicle configuration module range specification error detection method, system and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210181809.3A CN114564393A (en) 2022-02-25 2022-02-25 Unmanned aerial vehicle configuration module range specification error detection method, system and storage medium

Publications (1)

Publication Number Publication Date
CN114564393A true CN114564393A (en) 2022-05-31

Family

ID=81715944

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210181809.3A Pending CN114564393A (en) 2022-02-25 2022-02-25 Unmanned aerial vehicle configuration module range specification error detection method, system and storage medium

Country Status (1)

Country Link
CN (1) CN114564393A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20250059734A (en) * 2023-10-25 2025-05-07 세종대학교산학협력단 Method and system for parallel performance of unmanned vehicle simulation and flight data analysis to analyze the cause of abnormal behavior of unmanned vehicle

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150032297A1 (en) * 2013-07-23 2015-01-29 Micropilot Inc. Electronic flight test card
US20170255198A1 (en) * 2016-03-04 2017-09-07 Animusoft Corporation Drone and robot control systems and methods
CN112668697A (en) * 2020-12-25 2021-04-16 西安电子科技大学 Fuzzy test method and system for flight control parameters of unmanned aerial vehicle

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150032297A1 (en) * 2013-07-23 2015-01-29 Micropilot Inc. Electronic flight test card
US20170255198A1 (en) * 2016-03-04 2017-09-07 Animusoft Corporation Drone and robot control systems and methods
CN112668697A (en) * 2020-12-25 2021-04-16 西安电子科技大学 Fuzzy test method and system for flight control parameters of unmanned aerial vehicle

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RUIDONG HAN 等: "Control Parameters Considered Harmful: Detecting Range Specification Bugs in Drone Configuration Modules via Learning-Guided Search", 《ARXIV E-PRINTS》, 7 December 2021 (2021-12-07), pages 1 - 12 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20250059734A (en) * 2023-10-25 2025-05-07 세종대학교산학협력단 Method and system for parallel performance of unmanned vehicle simulation and flight data analysis to analyze the cause of abnormal behavior of unmanned vehicle
KR102913502B1 (en) * 2023-10-25 2026-01-15 세종대학교산학협력단 Method and system for parallel performance of unmanned vehicle simulation and flight data analysis to analyze the cause of abnormal behavior of unmanned vehicle

Similar Documents

Publication Publication Date Title
CN102445902B (en) For the system and method for the condition multi-output regression that machine condition monitors
US12014282B2 (en) Data processing method and apparatus, electronic device, and storage medium
CN112199189B (en) Adaptation of deep learning models to resource-constrained edge devices
US11645498B2 (en) Semi-supervised reinforcement learning
US10726335B2 (en) Generating compressed representation neural networks having high degree of accuracy
US20210182602A1 (en) Flexible imputation of missing data
WO2023167817A1 (en) Systems and methods of uncertainty-aware self-supervised-learning for malware and threat detection
US12555046B2 (en) Quantum machine learning model feature space generation
KR101828215B1 (en) A method and apparatus for learning cyclic state transition model on long short term memory network
Míguez et al. On the convergence of two sequential Monte Carlo methods for maximum a posteriori sequence estimation and stochastic global optimization
US11267128B2 (en) Online utility-driven spatially-referenced data collector for classification
US20220092381A1 (en) Neural architecture search via similarity-based operator ranking
WO2023051974A1 (en) Calibrated decoders for implementations of quantum codes
KR102038703B1 (en) Method for estimation on online multivariate time series using ensemble dynamic transfer models and system thereof
CN114925938A (en) A method and device for predicting the operating state of an electric energy meter based on an adaptive SVM model
Luo et al. ProactiveCrowd: Modelling Proactive Steering Behaviours for Agent‐Based Crowd Simulation
Abate et al. Adaptive aggregation of Markov chains: quantitative analysis of chemical reaction networks
CN113449012A (en) Internet service mining method based on big data prediction and big data prediction system
CN118843870A (en) Method and system for training neural networks to improve robustness against
JP2024504179A (en) Method and system for lightweighting artificial intelligence inference models
Maddu et al. Inferring biological processes with intrinsic noise from cross-sectional data
CN114564393A (en) Unmanned aerial vehicle configuration module range specification error detection method, system and storage medium
Yang Optimized and automated machine learning techniques towards IoT data analytics and cybersecurity
Chang et al. Low-cost fuzzing drone control system for configuration errors threatening flight safety in edge terminals
US11860769B1 (en) Automatic test maintenance leveraging machine learning algorithms

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20220531