Indoor positioning method and device, electronic equipment, storage medium and program product
Through ultra-wideband signal and neural network model processing, the problem of low positioning accuracy under signal interference is solved, accurate positioning in an interfering environment is achieved, and target positioning accuracy and efficiency are improved.
Patent Information
- Application Number
- CN202411261696.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-10
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2044-09-10
Smart Images

Figure CN119110393A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of artificial intelligence, and in particular to an indoor positioning method, device, electronic device, storage medium and program product. Background Art
[0002] With the construction and development of cities, location-based services have gradually become a hot topic of concern. At present, the technology based on Ultra Wide Band (UWB) transmits data by sending extremely narrow pulses at the nanosecond level, has a bandwidth of GHz, and has the characteristics of low transmission power consumption, strong penetration, and high positioning accuracy, becoming the research focus of indoor positioning technology.
[0003] The existing technology is based on the triangulation positioning algorithm, which calculates the distance between the target and the anchor point, and uses geometric methods to calculate the positioning results to achieve accurate positioning of the target. Although the triangulation positioning method has high accuracy in theory, in actual use, due to the obstruction of obstacles during signal propagation, signal interference such as refraction and scattering will occur. According to the traditional triangulation positioning algorithm, the accuracy of distance measurement is reduced due to signal interference, resulting in poor target positioning accuracy. Summary of the invention
[0004] The present disclosure is proposed in view of the above problems. The present disclosure provides an indoor positioning method, device, electronic device, storage medium and program product.
[0005] According to one aspect of the present disclosure, an indoor positioning method is provided, which is applied to an indoor positioning scenario where multiple anchor points are set. The method includes:
[0006] Acquire distance measurement data of the target to be located, wherein the distance measurement data of the target to be located includes distance information between the target to be located and each anchor point confirmed based on the ultra-wideband signal;
[0007] In the case where the distance measurement data of the target to be located is signal interference data, estimating the preliminary position coordinates of the target to be located according to the distance measurement data of the target to be located, and determining the target position coordinates of the target to be located according to the preliminary position coordinates of the target to be located and the interference positioning model, wherein the interference positioning model is used to output the target position coordinates using the preliminary position coordinates;
[0008] In addition, according to an indoor positioning method according to one aspect of the present disclosure, the method also includes: when the distance measurement data of the target to be located is signal interference-free data, determining the target position coordinates of the target to be located according to the distance measurement data of the target to be located and a non-interference positioning model, wherein the non-interference positioning model is used to output the target position coordinates using the distance measurement data.
[0009] In addition, according to an indoor positioning method according to one aspect of the present disclosure, based on the distance measurement data of the target to be located and a signal classification model, it is determined whether the distance measurement data of the target to be located belongs to data with signal interference or data without signal interference; wherein the signal classification model is used to use the distance measurement data to determine whether the distance measurement data belongs to data with signal interference or data without signal interference.
[0010] In addition, according to an indoor positioning method according to one aspect of the present disclosure, the interference positioning model is obtained by training a BP neural network model using a first training sample, wherein the first training sample includes the initial position coordinates of a sample target and the actual position coordinates of the sample target, and the initial position coordinates of the sample target are estimated based on the distance measurement data of the sample target belonging to the signal interference data.
[0011] In addition, according to an indoor positioning method according to one aspect of the present disclosure, the step of acquiring the first training sample includes:
[0012] Acquire a plurality of data sets, each of which includes a plurality of sample points, each of which includes a set of distance measurement data belonging to the sample target point with signal interference data, and each set of distance measurement data of the sample target point includes distance information between the sample target point and each anchor point;
[0013] Determine a sample point in the data set as a representative point;
[0014] Constructing a Delaunay interior triangulation network based on the plurality of sample points included in the data set;
[0015] Taking each of the representative points as a starting point, searching for adjacent sample points of the representative point based on the Delaunay triangulation, and taking adjacent sample points whose distances to the representative point are greater than a preset threshold as representative points until all the sample points are searched;
[0016] Perform hierarchical clustering on the representative points in each of the data sets to obtain the first training samples.
[0017] In addition, according to an indoor positioning method in one aspect of the present disclosure, the step of optimizing the weights and thresholds of the BP neural network model includes:
[0018] Initializing a sand cat population, wherein the position of the sand cat population represents the weight and threshold of the BP neural network model;
[0019] In the stage of the sand cat searching for prey, the position of the sand cat is updated based on the optimal position of the sand cat, the current position of the sand cat and the sensitivity of the sand cat;
[0020] During the stage when the sand cat attacks its prey, the position of the sand cat is updated based on the optimal position of the sand cat, the current position of the sand cat, the random position of the sand cat, the sensitivity of the sand cat and the attack direction angle of the sand cat; wherein the attack direction angle of the sand cat is randomly determined based on a target interval, and the target interval is determined based on the difference between the current position of the sand cat and the optimal position of the sand cat.
[0021] In addition, according to an indoor positioning method in one aspect of the present disclosure, the step of optimizing the weights and thresholds of the BP neural network model further includes:
[0022] During the stage when the sand cat searches for prey, the search range of the sand cat's position is constrained based on the aggregation radius, wherein the aggregation radius is determined based on the aggregation value, and the aggregation value is a piecewise function based on the number of iterations, so that the aggregation radius is segmented and reduced as the number of iterations increases.
[0023] In addition, according to an indoor positioning method in one aspect of the present disclosure, the step of optimizing the weights and thresholds of the BP neural network model further includes:
[0024] The position of the sand cat is updated based on a target difference, wherein the target difference is determined based on a difference between a first target value and a second target value, wherein the first target value is determined based on the current position of the sand cat, and the second target value is determined based on a sine value of a first random number and a golden weighted distance between the current position of the sand cat and the optimal position of the sand cat.
[0025] In addition, according to an indoor positioning method according to one aspect of the present disclosure, a residual weighted error suppression algorithm is used to estimate the preliminary position coordinates according to the distance measurement data.
[0026] In addition, according to an indoor positioning method according to one aspect of the present disclosure, the interference-free positioning model is obtained by training a single hidden layer feedforward neural network model using a second training sample, wherein the second training sample includes distance measurement data of the sample target point belonging to signal interference-free data and the coordinate position label of the sample target point.
[0027] According to another aspect of the present disclosure, an ultra-wideband indoor positioning device is provided, which is applied to an indoor positioning scenario where multiple anchor points are set. The device includes:
[0028] A data acquisition module, used to acquire distance measurement data of a target point to be located, wherein the distance measurement data of the target point to be located includes distance information between the target point to be located and each anchor point confirmed based on an ultra-wideband signal;
[0029] The positioning module estimates the preliminary position coordinates of the target to be positioned according to the distance measurement data of the target to be positioned when the distance measurement data of the target to be positioned is signal interference data, and determines the target position coordinates of the target to be positioned according to the preliminary position coordinates of the target to be positioned and the interference positioning model, wherein the interference positioning model is used to output the target position coordinates using the preliminary position coordinates.
[0030] According to another aspect of the present disclosure, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of any of the above methods.
[0031] According to another aspect of the present disclosure, there is provided a computer program / instruction stored thereon, which implements the steps of any of the above-mentioned methods when the computer program / instruction is executed by a processor.
[0032] According to another aspect of the present disclosure, a computer program product is provided, including a computer program / instruction, which implements the steps of any of the above methods when executed by a processor.
[0033] As will be described in detail below, according to an indoor positioning method, device, electronic device, storage medium and program product of the disclosed embodiments, when the distance measurement data of the target to be located is signal interference data, the preliminary position coordinates of the target to be located are estimated based on the distance measurement data of the target to be located, and the target position coordinates of the target to be located are determined based on the preliminary position coordinates of the target to be located and the interference positioning model, so that when the signal is interfered by the environment, the target to be located can still be accurately located, thereby improving the positioning accuracy of the target.
[0034] It is to be understood that both the foregoing general description and the following detailed description are exemplary, and are intended to provide further explanation of the technology as claimed. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] The above and other purposes, features and advantages of the present disclosure will become more apparent by describing the embodiments of the present disclosure in more detail in conjunction with the accompanying drawings. The accompanying drawings are used to provide a further understanding of the embodiments of the present disclosure and constitute a part of the specification. Together with the embodiments of the present disclosure, they are used to explain the present disclosure and do not constitute a limitation of the present disclosure. In the accompanying drawings, the same reference numerals generally represent the same components or steps.
[0036] Figure 1 is a flowchart illustrating an indoor positioning method according to an embodiment of the present disclosure.
[0037] Figure 2 It is a schematic diagram of an indoor positioning scenario that further illustrates the indoor positioning method in an embodiment of the present disclosure.
[0038] Figure 3 It is a flowchart further illustrating the acquisition of the first training sample in the indoor positioning method of the embodiment of the present disclosure.
[0039] Figure 4 It is a flowchart further illustrating the optimization of the initial weights and thresholds of the BP neural network in the indoor positioning method of the embodiment of the present disclosure.
[0040] Figure 5 It is a flowchart that further illustrates the construction of an interference positioning model in the indoor positioning method of an embodiment of the present disclosure.
[0041] Figure 6 is a block diagram illustrating an indoor positioning device according to an embodiment of the present disclosure.
[0042] Figure 7 is a schematic diagram illustrating a computer program product according to an embodiment of the present disclosure.
[0043] Figure 8 is a hardware block diagram illustrating an electronic device according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0044] In order to make the purpose, technical solution and advantages of the present disclosure more obvious, the exemplary embodiments according to the present disclosure will be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present disclosure, rather than all the embodiments of the present disclosure, and it should be understood that the present disclosure is not limited to the exemplary embodiments described here.
[0045] See also Figure 1 and Figure 2 , an indoor positioning method, applied to an indoor positioning scene with multiple anchor points, the method comprising:
[0046] S101, obtaining distance measurement data of a target point to be located, where the distance measurement data of the target point to be located includes distance information between the target point to be located and each anchor point confirmed based on an ultra-wideband signal.
[0047] See also Figure 2 , Figure 2is a schematic diagram of an indoor positioning scenario in an indoor positioning method of an embodiment of the present disclosure. In a conventional application scenario, four anchor points are set, such as anchor point A0, anchor point A1, anchor point A2 and anchor point A3, wherein the anchor points send ultra-wideband signals in all directions, and the target point (e.g., the target point to be positioned) receives the ultra-wideband signals sent by each anchor point. It should be understood that in a three-dimensional positioning scenario, four or more anchor points are set.
[0048] In the disclosed embodiment, the anchor point in the indoor positioning scenario is used to send ultra-wideband signals in all directions so that the target point can obtain distance measurement data based on the signals.
[0049] In step S101 of the embodiment of the present disclosure, the distance information may be information directly or indirectly reflecting the distance determined based on the ultra-wideband signal sent by each anchor point to the target to be located. Exemplarily, the step of obtaining the distance measurement data of the target to be located may be: obtaining the ultra-wideband signal sent by each anchor point received by the target to be located, and calculating and determining the distance data from the target to be located to each anchor point respectively according to the arrival time of the ultra-wideband signal using a timestamp-based ranging method, and using the distance data from the target to be located to each anchor point as the distance measurement data of the target to be located. The distance measurement data can be obtained using relevant technologies in the art, and will not be described in detail in this embodiment.
[0050] It should be understood that step S102 of the embodiment of the present disclosure is a step in the case where the distance measurement data of the target to be located is data with signal interference. In the case where the distance measurement data of the target to be located is data without signal interference, the same method can be used for positioning, or other methods can be used to achieve positioning. If other methods are used to achieve positioning, before step S102, it is determined whether the distance measurement data of the target to be located is data with signal interference or data without signal interference. It should be understood that if the signal sent by the anchor point to the target is interfered, then the corresponding distance measurement data is data with signal interference; otherwise, it is data without signal interference. The embodiment of the present disclosure can use relevant technologies in the field to determine whether the distance measurement data of the target to be located is data with signal interference or data without signal interference.
[0051] In one embodiment, in order to quickly and accurately determine whether the distance measurement data belongs to signal interference data or non-signal interference data, the distance measurement data of the target to be located is determined to be signal interference data or non-signal interference data according to the distance measurement data of the target to be located and the signal classification model; wherein the signal classification model is used to use the distance measurement data to determine whether the distance measurement data belongs to signal interference data or non-signal interference data. It should be understood that the signal classification model can be trained using sample distance measurement data and corresponding classification labels (labels of signal interference data or non-signal interference data). Since the error between the approximate coordinates calculated from the distance measurement data using the least squares method and the true coordinates is relatively different when the signal is interfered, the difference can be used as a basis for judging the classification. In this embodiment, a signal classification model can be constructed based on a random forest classification method based on the least squares method, so that the signal classification model can judge whether the distance measurement data belongs to signal interference data or non-signal interference data based on this principle, that is, a random forest signal classification model based on the least squares method is used to judge whether the distance measurement data of the target to be located belongs to signal interference data or non-signal interference data. It should be understood that the signal classification model can also be constructed based on other related technologies in the field.
[0052] S102, when the distance measurement data of the target to be located is signal interference data, the preliminary position coordinates of the target to be located are estimated based on the distance measurement data of the target to be located, and the target position coordinates of the target to be located are determined based on the preliminary position coordinates of the target to be located and the interference positioning model, wherein the interference positioning model is used to output the target position coordinates using the preliminary position coordinates.
[0053] In step S102 of the embodiment of the present disclosure, the interference positioning model is used to output the target position coordinates using the preliminary position coordinates. The interference positioning model can be obtained by training the BP (back propagation) neural network model using the first training sample, wherein the first training sample includes the initial position coordinates of the sample target and the actual position coordinates of the sample target, and the initial position coordinates of the sample target are estimated based on the distance measurement data of the sample target belonging to the signal interference data. It should be understood that the distance measurement data of the sample target contains the distance information between the sample target and each anchor point confirmed based on the ultra-wideband signal. The interference positioning model can effectively improve the positioning accuracy in an interference environment. It should be understood that the BP neural network model includes an input layer, a hidden layer, and an output layer, and the BP neural network model can be constructed based on the requirements of the embodiment of the present disclosure, and will not be described in detail here. The interference positioning model can also be obtained by training a convolutional neural network model, a recurrent neural network, and other related models using the first training sample.
[0054] In one embodiment, because there are many sets of distance measurement data for the same target coordinate, there will be great similarity between the data. In order to reduce the redundant calculation caused by similar data and improve the overall calculation speed of the algorithm, the distance measurement data is hierarchically clustered to obtain the first training sample. It should be understood that the same method can also be used to obtain the second training sample required for training the interference-free positioning model.
[0055] In one embodiment, see Figure 3 , the first training sample acquisition step includes:
[0056] S301, obtaining several data sets, each data set comprising multiple sample points, each sample point comprising a set of distance measurement data belonging to a sample target point with signal interference data, and each set of distance measurement data of the sample target point comprising distance information between the sample target point and each anchor point.
[0057] In the step of acquiring several data sets in step S301 of the embodiment of the present disclosure, multiple target points (sample target points) can be randomly set within the anchor point range to collect signals, and UWB signals with and without signal interference are collected respectively, and there is no interval time requirement between the two data signal collections. Each time the UWB signal is collected, since the target point will stay at the same position for a period of time (there is no requirement for the stay time, which can be set by yourself), and the anchor point and the target point will send and receive signals once every 0.2-0.3 seconds, at the same position, the target point obtains multiple groups of signals and obtains multiple groups of distance measurement data (multiple groups of distance measurement data represent information at the same position). The number of groups depends on the time the target point stays at the same position. The longer the stay time, the more groups there are. For interference environments and non-interference environments, n groups of distance measurement data can be obtained at each sample target point position. Each group of distance measurement data includes distance information from each anchor point to the sample target point. The distance information is determined based on the UWB signal from each anchor point to the sample target point. For example, using a timestamp-based ranging method, the distance data from the four anchor points to the sample target point are calculated respectively according to the UWB signals of the four anchor points.
[0058] S302, determining a sample point in the data set as a representative point.
[0059] Before executing step S302, a target value C of the number of classes of the original distance measurement data used for training can be set, that is, the original distance measurement data is clustered into classes with a target number of classes according to similarity features; then, based on the total amount of the original distance measurement data, it is determined whether to divide the original distance measurement data. If the original distance measurement data is not divided, the original distance measurement data is used as a data set, and each group of original distance measurement data is used as a sample point in the data set; if the original data is divided, the original distance measurement data can be divided, and the divided original distance measurement data are all used as a data set, and steps S301 to S305 are executed for each data set.
[0060] Step S302 of the embodiment of the present disclosure may use a representative point method related to the art to determine a representative point, for example, a sample point may be randomly found near the center of the data set as a representative point. In one embodiment, the average value of all sample points in the data set is used as the sample center of the data set, and the first sample point closest to the sample center is used as the representative point. The method is used to determine the first representative point, so that the subsequent steps can quickly obtain a representative point that is more representative of the data set sample. Exemplarily, the data set includes n sample points X1, X2, ..., X n , calculate the average value of n sample points as the sample center meanX of the sample set, calculate the Euclidean distance between n samples and the sample center meanX, and take the sample point closest to the sample center meanX as the first representative point P1.
[0061] S303, constructing a Delaunay triangulation network based on multiple sample points included in the data set.
[0062] In step S303 of the embodiment of the present disclosure, a Delaunay triangulation network can be constructed based on n sample points. Based on the characteristics of the Delaunay triangulation network, subsequent related steps can be coordinated to make the obtained sample points as dispersed as possible and better reflect the distribution of the original data set.
[0063] S304, taking each representative point as a starting point, searching for adjacent sample points of the representative point based on the Delaunay triangulation, and taking adjacent sample points whose distances to the representative point are greater than a preset threshold as representative points, until all sample points are searched.
[0064] After the representative point is determined in step S302 of the embodiment of the present disclosure, step S304 uses the representative point as the starting point, searches for adjacent sample points of the representative point based on the Delaunay triangulation, and uses the adjacent sample points whose distance to the representative point is greater than a preset threshold as the representative point. At this time, if there is a new representative point, the new representative point is continued to be used as the starting point, and the adjacent sample points of the representative point are searched based on the Delaunay triangulation, and the adjacent sample points whose distance to the representative point is greater than the preset threshold are used as the representative points, until all sample points are searched, thereby obtaining all representative points of all data sets.
[0065] In step S304 of the embodiment of the present disclosure, the data set includes n sample points, and a Delaunay triangulation network can be constructed based on the n sample points. The first representative point P1 is used as the starting point, and the sample points adjacent to the first representative point P1 are searched. The distance between the adjacent sample point and the first representative point P1 is found in the distance matrix. If the distance is greater than the distance threshold D, the sample point is added to the representative point queue, otherwise the next adjacent point is compared until all adjacent sample points are searched; and so on, the representative points in the representative point queue are used as the starting point, and the adjacent sample points are searched based on the Delaunay triangulation network until all sample points are searched, and then the search is terminated. The points in the representative point queue are the representative points of the data set. Among them, the distance threshold D can be set according to actual needs. For example, the distance matrix between n samples can be calculated, and the median midD in the matrix can be found. A distance threshold D=j*midD is set, where j is an adjustment factor, which can be set to 0.9 according to actual experimental conditions.
[0066] S305: Perform hierarchical clustering on representative points in each data set to obtain a first training sample.
[0067] In step S305 of the embodiment of the present disclosure, the data of the representative points in each data set can be hierarchically clustered, with the clustering target being C, to obtain a final clustering result, which is used as the first training sample. Hierarchical clustering of the representative points can reduce the number of iterations of the clustering algorithm, reduce the amount of calculation, and improve clustering accuracy.
[0068] Since the target will collect multiple sets of distance measurement data at the same location, there will be great similarities between the distance measurement data. In order to reduce the redundant calculations caused by similar data and improve the overall calculation speed of the algorithm, the distance measurement data is clustered. This embodiment adopts the Delaunay triangulation strategy to select representative points based on adjacent sample points and thresholds, so that the representative points are as dispersed as possible and can better reflect the distribution of the original data set. Then, the representative points are hierarchically clustered, which can reduce the number of iterations of the clustering algorithm and improve the clustering accuracy, so that the first training sample obtained based on this can better train the relevant model and obtain an accurate interference positioning model. Similarly, the second training sample can be obtained in the same way, so that the relevant model can be better trained based on the second training sample to obtain an accurate non-interference positioning model.
[0069] It should be understood that the target collects multiple sets of distance measurement data at the same location, so effective preprocessing of the distance measurement data can improve the validity of the data and is of decisive significance for the establishment of a positioning model based on the distance measurement data. Steps S301 to S305 in the embodiment of the present disclosure can be used as similar data processing steps in the preprocessed data to overcome the similarity problem of multiple sets of distance measurement data, and the preprocessed data can also include missing data processing and abnormal data processing to overcome the problems of missing data and data anomalies. Similar data processing can be performed after missing data processing and abnormal data processing.
[0070] Among them, missing data processing: determine whether there are missing values in the original data of the data set. That is, in each set of data, whether the distance measurement data between the target point and the four anchor points exist. If not, the data set needs to be deleted.
[0071] Abnormal data processing: In order to reduce the impact of random errors, the 3σ criterion is used to eliminate abnormal values in the sample data. At any target point, the arithmetic mean and residual error of the distance from the target point to the same anchor point are calculated, and then the standard error is calculated using the Bessel formula. If the residual error of a certain measurement value meets the judgment condition, it is considered that the measurement value contains a large measurement error and should be eliminated.
[0072] Through the three types of data preprocessing processes of missing data processing, abnormal data processing, and similar data processing, invalid data such as missing data, abnormal data, redundant data, etc. in the collected original data can be eliminated, reducing the impact of invalid data on the algorithm, and finally obtaining valid data sets at each target location in both interference and non-interference environments.
[0073] In one embodiment, in order to obtain a more accurate interference positioning model, the weights and thresholds of the BP neural network model are optimized by using an improved Scand Cat Optimization (SCSO) algorithm to optimize the weights and thresholds of the BP propagation neural network model. Figure 4 , the optimization steps for the weights and thresholds of the BP neural network model include:
[0074] S401, initializing a sand cat population, wherein the position of the sand cat population represents the weight and threshold of the BP neural network model.
[0075] See also Figure 5 Before executing the optimization step of the weights and thresholds of the BP neural network model, based on the BP neural network, the input data can be normalized, the number of layers and nodes of the hidden layer of the BP neural network can be determined, and the initial weights and thresholds of the BP neural network can be determined.
[0076] After executing the optimization steps of the weights and thresholds of the BP neural network model and outputting the weights and thresholds of the BP neural network model (the optimal weights and thresholds considered by the algorithm), the errors are calculated using the training samples and the weight thresholds are updated until the conditions are met (the conditions of the set BP neural network model can be set according to actual needs) to obtain the interference positioning model.
[0077] In step S401 of the disclosed embodiment, the sand cat population can be initialized using the Scand Cat Optimization (SCSO) algorithm. Initializing the sand cat population can initialize the parameters of the sand cat population optimization algorithm and initialize the sand cat positions. Specifically, the population size N (i.e., the total number of sand cats in the sand cat population), the dimension d (i.e., the total number of potential positions of sand cats), the maximum number of iterations T, the search space upper and lower limits upper (i.e., the upper boundary of the position variable) and lower (i.e., the lower boundary of the position variable) can be set. The original threshold and weight of the BP neural network are used as the initial position of the sand cat population. In the optimization problem with a population size of N and a variable dimension of d, the initialization formula of the sand cat population (i.e., the weight and threshold for optimization) is as follows:
[0078] P Nd =rand(N,d)×(upper-lower)+lower (1)
[0079] Among them, P Nd is the sand cat position matrix; rand(N,d) is a random vector of N×d dimensions; upper is the lower limit of the search space, and lower is the upper limit of the search space.
[0080] S402, in the stage of the sand cat searching for prey, the position of the sand cat is updated based on the optimal position of the sand cat, the current position of the sand cat and the sensitivity of the sand cat.
[0081] In step S402, the positions of the sand cats may be updated with reference to the relevant sand cat colony optimization algorithm.
[0082] In mathematical modeling, the final and main parameter controlling the transition between the search and exploitation phases is R, when |R|>1, during the sand cat's search for prey. Assuming that the sensitivity range of the sand cat is 0 to 2kHz, S M Assume it is 2. The basic parameter settings of the sand cat swarm optimization algorithm are as follows:
[0083]
[0084] r G Represents the sensitivity coefficient, S M represents the sensitive range, t represents the current number of iterations, and T represents the maximum number of iterations;
[0085] R = 2 × r G×rand()-r G (3)
[0086] R represents the switching coefficient parameter of the sand cat, r G Represents the sensitivity coefficient, rand() represents a random number between (0, 1);
[0087] r=r G ×rand() (4)
[0088] r represents the sensitivity of sand cat, r G Represents the sensitivity coefficient, rand() represents a random number between (0, 1);
[0089] In the SCSO algorithm, r is used to update the position of the sand cat in the prey search phase or the sand cat attack phase, and r G It is used to guide the switching coefficient parameter R to achieve transfer control of the two stages.
[0090] The position update formula of the sand cat's search behavior is as follows:
[0091]
[0092] in, represents the updated sand cat position, r represents the sand cat sensitivity (search radius), represents the optimal position of the sand cat (representing the position of the optimal individual in the current population), rand() represents a random number between (0, 1), Indicates the current position of the sand cat (the position of the current iteration individual).
[0093] S403, when the sand cat attacks its prey, the position of the sand cat is updated based on the optimal position of the sand cat, the current position of the sand cat, the random position of the sand cat, the sensitivity of the sand cat and the attack direction angle of the sand cat; the attack direction angle of the sand cat is randomly determined based on the target interval, and the target interval is determined based on the difference between the current position of the sand cat and the optimal position of the sand cat.
[0094] In step S403 of this embodiment, the target interval is determined based on the difference between the current position of the sand cat and the optimal position of the sand cat, and the sand cat attack direction angle is randomly determined based on the target interval, that is, an attack direction angle is randomly determined in the target interval as the sand cat attack direction angle. Compared with the existing sand cat group optimization algorithm, in the definition of the sand cat attack direction angle disclosed in the present invention, the target interval is determined based on the difference between the current position of the sand cat and the optimal position of the sand cat, and the sand cat attack direction angle is randomly determined based on the target interval, so that the attack direction angle can reduce the possibility of missing a better solution and improve the convergence speed.
[0095] Specifically, the attack direction angle of the sand cat is determined based on the vector dot product and vector modulus dot product of the first difference and the second difference, the first difference is the difference between the random position of the sand cat and the optimal position of the sand cat, and the second difference vector is the difference between the current position of the sand cat and the optimal position of the sand cat. Compared with the existing sand cat group optimization algorithm, the attack direction angle of the sand cat disclosed in the present invention is determined based on the vector dot product and vector modulus dot product of the first difference vector and the second difference vector, so as to improve the sand cat attack direction angle of the sand cat attack direction angle determination method and increase the search efficiency.
[0096] It can be known that the updated sand cat position is used as the initial weight and threshold of the BP neural network model. Then, the BP neural network can be built according to the number of input layer, output layer and hidden layer node neural network, and trained to obtain the interference positioning project. This can overcome the technical problem that the initial weight and threshold of the BP neural network are difficult to accurately obtain, and improve the positioning accuracy in an interference environment.
[0097] Specifically, the position update formula is as follows:
[0098]
[0099] P r represents the random position of the sand cat (a random sand cat position near the optimal position of the sand cat), rand() represents a random number between (0, 1), represents the optimal position of the sand cat, represents the current position of the sand cat, and R represents the switching coefficient parameter of the sand cat.
[0100]
[0101] represents the updated sand cat position, represents the optimal position of the sand cat, r represents the sensitivity of the sand cat, P r represents the random position of the sand cat, and θ is the angle.
[0102] In the existing sand cat algorithm, θ is a random angle between 0 and 360, so that each sand cat (individual) in the population can move along different circular directions in the search space. The SCSO algorithm randomly selects an angle for each sand cat so that the sand cat can approach the hunting position. However, this random selection strategy of angle θ may cause the algorithm to miss a better solution and reduce the convergence speed of the algorithm.
[0103] In order to increase the search efficiency of the attack behavior and eliminate the negative impact of the local optimal solution, the present disclosure redefines the attack direction angle θ of the sand cat. For example, for individuals in the initial population, each sand cat (individual) corresponds to an attack interval, and each iteration selects a random angle in one of the intervals to perform the attack behavior, and the interval is determined based on the difference between the current position of the sand cat and the optimal position of the sand cat.
[0104] The angle value formula of the sand cat's attack direction angle θ(s) is as follows:
[0105]
[0106] Among them, P r represents the random position of the sand cat, represents the optimal position of the sand cat, P Nd represents the initial population, s is a random integer generated between 1 and N, and N is the maximum population size. By bringing θ(s) into the position update formula of attacking prey in formula (7), the search efficiency of the sand cat's attack behavior is increased.
[0107] In one embodiment, the step of optimizing the weights and thresholds of the BP neural network model further includes:
[0108] In the stage of searching for prey by the sand cat, the search range of the sand cat's position is constrained based on the aggregation radius, wherein the aggregation radius is determined based on the aggregation value, and the aggregation value is a piecewise function based on the number of iterations, so that the aggregation radius is segmented and reduced as the number of iterations increases.
[0109] This embodiment introduces a clustering radius to update the iteration position during the sand cat's prey search stage, and cooperates with the clustering value to reduce the clustering radius in segments as the number of iterations increases, thereby overcoming the technical problem that the algorithm falls into a local optimum due to the sand cat clustering phenomenon, and at the same time, does not increase the amount of calculation too much.
[0110] As further explained below, the search and attack of the SCSO algorithm are guaranteed by the parameter R, which realizes the switching between the two stages of the sand cat searching for prey and the sand cat attacking prey. When the absolute value of R is less than or equal to 1, it is in the stage of the sand cat attacking prey; otherwise, it is in the stage of the sand cat searching for prey.
[0111] In the stage of searching for prey by sand cats (i.e., the absolute value of R is greater than 1), if the search space of sand cats is reduced too quickly, sand cats will easily aggregate, causing the algorithm to fall into a local optimum and affecting the optimization result. In order to reduce the probability of the algorithm falling into a local optimum, the embodiment of the present disclosure introduces the aggregation radius into the algorithm to constrain the updated sand cat positions, that is, each time the sand cat searches only within the range of the optimal individual position. The center of the circle is within the concentration radius. The concentration radius can be calculated according to formula (9). In each iteration, the concentration radius is calculated. The control of the aggregation value G affects the aggregation radius
[0112]
[0113] in, represents the aggregation radius, G represents the aggregation value, d represents the population dimension, upper(j) and lower(j) are the upper and lower limits of the search space of the function in the jth dimension. The aggregation value G is a piecewise function, and the formula is as follows. Among them, T is the maximum number of iterations, and t1 and t2 are numbers between 0 and T:
[0114]
[0115] Use the following formula to update the position of the sand cat:
[0116]
[0117] in, represents the updated sand cat position, represents the aggregation radius, d(i) represents the Euclidean distance between the current iteration individual and the current optimal individual, represents the updated position of the sand cat according to formula (7), Indicates the optimal position of the sand cat.
[0118] In the stage when the sand cat attacks its prey (i.e., the absolute value of R is less than or equal to 1), a random sand cat (individual) position is generated according to formula (6), a random number s is generated, and the distance between the random position of the sand cat (individual) and the optimal position of the sand cat (the current optimal individual) is calculated. Then, the attack direction angle is calculated according to formula (8), and the attack direction angle is substituted into formula (7) to obtain the updated sand cat position. Then, the aggregation radius is calculated according to formula (9), and the aggregation radius is substituted into formula (11) to finally obtain the optimal sand cat position (optimal individual).
[0119] In the implementation of the present disclosure, the clustering radius and the clustering value are designed to balance exploration and exploitation during the optimization process. By adjusting the clustering radius to control the search range of the sand cat, over-clustering and falling into the local optimum can be effectively avoided. The segmented clustering value G enables the algorithm to conduct extensive exploration in the early stage, gradually converge in the middle stage, and perform fine local optimization in the late stage, thereby improving the global search ability and local optimization ability of the algorithm.
[0120] In one embodiment, the step of optimizing the weights and thresholds of the BP neural network model also includes: updating the position of the sand cat based on the target difference, the target difference is determined based on the difference between the first target value and the second target value, the first target value is determined based on the current position of the sand cat, and the second target value is determined based on the sine value of the first random number and the golden weighted distance between the current position of the sand cat and the optimal position of the sand cat.
[0121] In the disclosed embodiment, the golden sine strategy is introduced to enhance the local optimization capability. The golden weighted distance refers to the distance between the current position of the sand cat and the optimal position of the sand cat after golden weighting. In combination with the sine value of the first random number, the golden sine strategy is used to reduce the search space based on the golden ratio to approach the optimal solution of the algorithm, so that the poor individuals can approach the optimal individuals as quickly as possible, and the individuals with insufficient survival rate can move around the optimal individuals to increase their own survival probability.
[0122] Specifically, the first target value is determined based on the product of the current position of the sand cat and the sine value of the first random number, the second target value is determined based on the second random number, the sine value of the first random number, and the golden weighted distance between the current position of the sand cat and the optimal position of the sand cat, and the golden weighted distance is determined based on the product of the first constant of the golden ratio and the optimal position of the sand cat and the product of the second constant based on the golden ratio and the current position of the sand cat.
[0123] More specifically, it can be calculated using formula (12).
[0124]
[0125] in, represents the position of the sand cat updated in t+1 iterations, represents the position of the sand cat at the tth iteration, r1 represents the first random number, which uses a random number between [0,2π], r2 represents the second random number, which uses a random number between [0,2], c1 represents the first constant based on the golden ratio, represents the optimal position of the sand cat at the tth iteration, c2 represents the second constant based on the golden ratio, Indicates the current position of the sand cat at the tth iteration.
[0126] c1=-π*(1-0.618)+π*0.618 (13)
[0127] c2=-π*0.618+π*(1-0.618) (14)
[0128] In one embodiment, a residual weighted error suppression algorithm is used to estimate preliminary position coordinates based on distance measurement data. Specifically, a residual weighted error suppression algorithm is used to estimate approximate target coordinates based on distance measurement data and target coordinates. The approximate target coordinates are input into an interference precise positioning model to obtain accurate target coordinates.
[0129] In one embodiment, when the distance measurement data of the target to be located is signal interference-free data, the target position coordinates of the target to be located are determined based on the distance measurement data of the target to be located and a non-interference positioning model, wherein the non-interference positioning model is used to output the target position coordinates using the distance measurement data.
[0130] It can be known that the signal classification model, the interference positioning model and the non-interference positioning model can be constructed in the offline stage, and the corresponding data collection and data preprocessing are also performed in the offline stage. Positioning using the signal classification model, the interference positioning model and the non-interference positioning model can be performed in the online stage, and the corresponding data collection can be performed in the online stage. At the same time, the online stage can also include the step of preprocessing data. The step of preprocessing data can refer to the data preprocessing step in the offline stage. Please refer to the previous content for details and will not be described in detail here.
[0131] In one embodiment, the interference-free positioning model is obtained by training a single hidden layer feedforward neural network model using second training samples, wherein the second training samples include distance measurement data of sample targets belonging to signal interference-free data and coordinate position labels of sample targets.
[0132] Non-interference positioning is easier than interference positioning. Therefore, a positioning model with higher accuracy in the prior art can be used here to determine the target position coordinates of the target to be located using distance measurement data. For example, a non-interference positioning model based on the extreme learning machine algorithm (ELM) can be used to implement it, or other non-interference positioning models can be used to implement it. Compared with the interference positioning model, the non-interference positioning model does not need to consider the accuracy problem caused by signal interference. The method for obtaining the second training sample can refer to the first training sample. The difference is that the first training sample is based on the distance measurement data belonging to the interference data, and the second training sample is based on the distance measurement data belonging to the non-interference data.
[0133] See also Figure 6 An ultra-wideband indoor positioning device is applied to an indoor positioning scene with multiple anchor points, and the device includes:
[0134] The data acquisition module 601 is used to acquire distance measurement data of the target to be located, where the distance measurement data of the target to be located includes distance information between the target to be located and each anchor point confirmed based on the ultra-wideband signal;
[0135] The positioning module 602 is used to estimate the preliminary position coordinates of the target to be positioned based on the distance measurement data of the target to be positioned when the distance measurement data of the target to be positioned is signal interference data, and to determine the target position coordinates of the target to be positioned based on the preliminary position coordinates of the target to be positioned and the interference positioning model, wherein the interference positioning model is used to output the target position coordinates using the preliminary position coordinates.
[0136] In one embodiment, the positioning module is also used to determine the target position coordinates of the target to be positioned according to the distance measurement data of the target to be positioned and the non-interference positioning model when the distance measurement data of the target to be positioned is signal interference-free data, wherein the non-interference positioning model is used to output the target position coordinates using the distance measurement data.
[0137] In one embodiment, the ultra-wideband indoor positioning device includes a determination module for determining whether the distance measurement data of the target to be located is data with signal interference or data without signal interference based on the distance measurement data of the target to be located and a signal classification model; wherein the signal classification model is used to use the distance measurement data to determine whether the distance measurement data is data with signal interference or data without signal interference.
[0138] In one embodiment, the interference positioning model is obtained by training the BP neural network model using the first training sample, wherein the first training sample includes the initial position coordinates of the sample target and the actual position coordinates of the sample target, and the initial position coordinates of the sample target are estimated based on the distance measurement data of the sample target belonging to the signal interference data. Training the BP neural network model using the first training sample can be performed by the model training module.
[0139] In one embodiment, the ultra-wideband indoor positioning device includes a sample acquisition module, which is used to perform a step of acquiring a first training sample; the step of acquiring the first training sample includes:
[0140] Acquire several data sets, each data set includes multiple sample points, each sample point includes a set of distance measurement data belonging to a sample target point with signal interference data, and each set of distance measurement data of the sample target point includes distance information between the sample target point and each anchor point;
[0141] Determine a sample point in the data set as a representative point;
[0142] Based on multiple sample points contained in the data set, a Delaunay triangulation network is constructed;
[0143] Taking each representative point as the starting point, searching for adjacent sample points of the representative point based on the Delaunay triangulation, and taking the adjacent sample points whose distance to the representative point is greater than a preset threshold as representative points until all sample points are searched;
[0144] Perform hierarchical clustering on the representative points in each data set to obtain the first training sample.
[0145] In one embodiment, the ultra-wideband indoor positioning device includes an optimization module for performing an optimization step of weights and thresholds of a BP neural network model, and the optimization step of weights and thresholds of the BP neural network model includes:
[0146] Initialize the sand cat population, where the position of the sand cat population represents the weight and threshold of the BP neural network model;
[0147] In the stage of the sand cat searching for prey, the position of the sand cat is updated based on the optimal position of the sand cat, the current position of the sand cat and the sensitivity of the sand cat;
[0148] During the stage when the sand cat attacks its prey, the position of the sand cat is updated based on the optimal position of the sand cat, the current position of the sand cat, the random position of the sand cat, the sensitivity of the sand cat and the attack direction angle of the sand cat; among which, the attack direction angle of the sand cat is randomly determined based on the target interval, and the target interval is determined based on the difference between the current position of the sand cat and the optimal position of the sand cat.
[0149] In one embodiment, the ultra-wideband indoor positioning device includes an optimization module for performing the optimization step of the weights and thresholds of the BP neural network model, and the optimization step of the weights and thresholds of the BP neural network model also includes:
[0150] In the stage of searching for prey by the sand cat, the search range of the sand cat's position is constrained based on the aggregation radius, wherein the aggregation radius is determined based on the aggregation value, and the aggregation value is a piecewise function based on the number of iterations, so that the aggregation radius is segmented and reduced as the number of iterations increases.
[0151] In one embodiment, the ultra-wideband indoor positioning device includes an optimization module for performing the optimization step of the weights and thresholds of the BP neural network model, and the optimization step of the weights and thresholds of the BP neural network model also includes:
[0152] The position of the sand cat is updated based on the target difference, the target difference is determined based on the difference between the first target value and the second target value, the first target value is determined based on the current position of the sand cat, and the second target value is determined based on the sine value of the first random number and the golden weighted distance between the current position of the sand cat and the optimal position of the sand cat.
[0153] In one embodiment, the ultra-wideband indoor positioning device includes an estimation module, and the estimation module is used to estimate the preliminary position coordinates according to the distance measurement data by using a residual weighted error suppression algorithm.
[0154] In one embodiment, the interference-free positioning model is obtained by training a single hidden layer feedforward neural network model using second training samples, wherein the second training samples include distance measurement data of sample targets belonging to signal interference-free data and coordinate position labels of sample targets.
[0155] The exemplary embodiment of the present disclosure also provides an electronic device, comprising: at least one processor; and a memory connected to the at least one processor in communication. The memory stores a computer program that can be executed by the at least one processor, and the computer program is used to cause the electronic device to perform the method according to the embodiment of the present disclosure when executed by the at least one processor.
[0156] Exemplary embodiments of the present disclosure also provide a non-transitory computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor of a computer, is used to cause the computer to execute the method according to an embodiment of the present disclosure.
[0157] refer to Figure 7 The exemplary embodiment of the present disclosure further provides a computer program product 700, including a computer program 701, wherein when the computer program is executed by a processor of a computer, it is used to enable the computer to perform the method according to the embodiment of the present disclosure.
[0158] refer to Figure 8 , a block diagram of an electronic device 800 that can be used as a server or client of the present disclosure will now be described, which is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device is intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are only examples and are not intended to limit the implementation of the present disclosure described and / or required herein.
[0159] The electronic device 800 includes a computing unit 801, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 802 or a computer program loaded from a storage unit 808 into a random access memory (RAM) 803. In the RAM 803, various programs and data required for the operation of the device can also be stored. The computing unit 801, the ROM 802, and the RAM 803 are connected to each other via a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.
[0160] A plurality of components in the electronic device 800 are connected to the I / O interface 805, including: an input unit 806, an output unit 807, a storage unit 808, and a communication unit 809. The input unit 806 may be any type of device capable of inputting information to the electronic device 800, and the input unit 806 may receive input digital or character information, and generate key signal inputs related to user settings and / or function control of the electronic device. The output unit 807 may be any type of device capable of presenting information, and may include, but is not limited to, a display, a speaker, a video / audio output terminal, a vibrator, and / or a printer. The storage unit 808 may include, but is not limited to, a disk, an optical disk. The communication unit 809 allows the electronic device 800 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks, and may include, but is not limited to, a modem, a network card, an infrared communication device, a wireless communication transceiver, and / or a chipset, such as a Bluetooth™ device, a WiFi device, a WiMax device, a cellular communication device, and / or the like.
[0161] The computing unit 801 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 801 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 801 performs the various methods and processes described above. For example, in some embodiments, the method of the embodiment of the present disclosure may be implemented as a computer software program, which is tangibly included in a machine-readable medium, such as a storage unit 808. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 800 via the ROM 802 and / or the communication unit 809. In some embodiments, the computing unit 801 may be configured to perform the method of the embodiment of the present disclosure in any other appropriate manner (e.g., by means of firmware).
[0162] In the above, an indoor positioning method, device, electronic device, storage medium and program product according to an embodiment of the present disclosure are described with reference to the accompanying drawings. When the distance measurement data of the target to be positioned is signal interference data, the preliminary position coordinates of the target to be positioned are estimated according to the distance measurement data of the target to be positioned, and the target position coordinates of the target to be positioned are determined according to the preliminary position coordinates of the target to be positioned and the interference positioning model, so that when the signal is interfered by the environment, it can still be accurately positioned, thereby improving the positioning accuracy of the target; the technical solution of the present disclosure can also determine the target position coordinates of the target to be positioned according to the distance measurement data of the target to be positioned and the interference-free positioning model when the distance measurement data of the target to be positioned is signal interference-free data, so as to achieve accurate positioning under signal interference and signal interference-free conditions under the premise of taking into account the positioning efficiency, wherein, in the case of signal interference, the initial position coordinates are estimated by using the residual weighted error suppression algorithm, and then the initial position coordinates are corrected by using the interference positioning model to obtain accurate position coordinates, and in the case of signal interference-free conditions, other related positioning methods are used to obtain accurate position coordinates by using the distance measurement data, so as to improve the positioning accuracy of the target under the premise of taking into account the positioning efficiency.
[0163] An indoor positioning method, device, electronic device, storage medium and program product of the disclosed embodiments propose an improved sand cat swarm optimization algorithm to optimize the initial weights and thresholds of the BP neural network. The method redefines the attack direction angle of the sand cat, uses the golden sine strategy to narrow the sand cat search space, and introduces the aggregation radius to constrain the search range. Through the above process, the convergence speed of the sand cat swarm optimization algorithm can be improved, the algorithm can jump out of the local optimum, and the amount of calculation can be reduced.
[0164] An indoor positioning method, device, electronic device, storage medium and program product of the disclosed embodiments redefine the attack direction angle of the sand cat. In each iteration, the difference between the current position of the sand cat (current individual) and the optimal position of the sand cat (current optimal individual) is calculated, and the difference is used as the attack interval of the current sand cat. Then, the attack direction angle of the sand cat is calculated according to the arc cosine function. By redefining the attack direction angle, the problem of missing a better solution due to the random selection of the direction angle of the sand cat group optimization algorithm is solved. By redefining the attack direction angle of the sand cat, the search efficiency of the sand cat's attack behavior is improved, and the negative impact of the local optimal solution is eliminated.
[0165] An indoor positioning method, device, electronic device, storage medium and program product of the disclosed embodiments introduce the definition of a clustering radius to constrain the search range of a sand cat. First, a piecewise function is defined according to the number of iterations, and then the clustering radius is calculated according to the upper and lower limits of the search space and the piecewise function. By defining the clustering radius, the updated sand cat position is constrained, which solves the sand cat clustering phenomenon caused by the sand cat search space being reduced too quickly. By constraining the search range, the probability of the algorithm falling into a local optimum can be reduced.
[0166] The disclosed embodiments provide an indoor positioning method, device, electronic device, storage medium and program product, which pre-process similar data using an improved hierarchical clustering algorithm, select representative points by data sampling and combining the Delaunay triangulation strategy, and then pre-process similar data using a hierarchical clustering algorithm based on the selected representative points. This process reduces the number of iterations of the clustering algorithm, reduces the amount of calculation, and can better remove redundant data and improve clustering accuracy.
[0167] The basic principles of the present disclosure are described above in conjunction with specific embodiments. However, it should be noted that the advantages, strengths, effects, etc. mentioned in the present disclosure are only examples and not limitations, and it cannot be considered that these advantages, strengths, effects, etc. are required by each embodiment of the present disclosure. In addition, the specific details disclosed above are only for the purpose of illustration and ease of understanding, and are not limitations. The above details do not limit the present disclosure to the necessity of adopting the above specific details to be implemented.
[0168] The block diagrams of the devices, apparatuses, equipment, and systems involved in the present disclosure are only illustrative examples and are not intended to require or imply that they must be connected, arranged, and configured in the manner shown in the block diagrams. As will be appreciated by those skilled in the art, these devices, apparatuses, equipment, and systems can be connected, arranged, and configured in any manner. Words such as "including", "comprising", "having", etc. are open words, referring to "including but not limited to", and can be used interchangeably with them. The words "or" and "and" used here refer to the words "and / or" and can be used interchangeably with them, unless the context clearly indicates otherwise. The word "such as" used here refers to the phrase "such as but not limited to", and can be used interchangeably with it.
[0169] Additionally, as used herein, "or" used in a list of items beginning with "at least one" indicates a separate list, so that, for example, a list of "at least one of A, B, or C" means A or B or C, or AB or AC or BC, or ABC (i.e., A and B and C). Furthermore, the word "exemplary" does not mean that the example described is preferred or better than other examples.
[0170] It should also be noted that in the system and method of the present disclosure, each component or each step can be decomposed and / or recombined. Such decomposition and / or recombination should be regarded as equivalent solutions of the present disclosure.
[0171] Various changes, substitutions, and modifications of the technology herein may be made without departing from the technology of the teachings defined by the appended claims. Furthermore, the scope of the claims of the present disclosure is not limited to the specific aspects of the above processes, machines, manufactures, compositions of events, means, methods, and actions. Currently existing or later to be developed processes, machines, manufactures, compositions of events, means, methods, or actions that perform substantially the same functions or achieve substantially the same results as the corresponding aspects herein may be utilized. Thus, the appended claims include such processes, machines, manufactures, compositions of events, means, methods, or actions within their scope.
[0172] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of the present disclosure. Therefore, the present disclosure is not intended to be limited to the aspects shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.
[0173] The above description has been given for the purpose of illustration and description. In addition, this description is not intended to limit the embodiments of the present disclosure to the forms disclosed herein. Although multiple example aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, changes, additions and sub-combinations thereof.
Claims
1. An indoor positioning method, applied to an indoor positioning scene with multiple anchor points, It is characterized in that The method comprises: Acquire distance measurement data of the target to be located, wherein the distance measurement data of the target to be located includes distance information between the target to be located and each anchor point confirmed based on the ultra-wideband signal; In the case where the distance measurement data of the target to be located is signal interference data, the preliminary position coordinates of the target to be located are estimated based on the distance measurement data of the target to be located, and the target position coordinates of the target to be located are determined based on the preliminary position coordinates of the target to be located and a positioning model with interference, wherein the positioning model with interference is used to output the target position coordinates using the preliminary position coordinates.
2. The method according to claim 1, It is characterized in that The method further comprises: In the case where the distance measurement data of the target to be located is signal interference-free data, the target position coordinates of the target to be located are determined based on the distance measurement data of the target to be located and a non-interference positioning model, wherein the non-interference positioning model is used to output the target position coordinates using the distance measurement data.
3. The method according to claim 2, It is characterized in that According to the distance measurement data of the target to be located and the signal classification model, determine whether the distance measurement data of the target to be located belongs to data with signal interference or data without signal interference; wherein the signal classification model is used to use the distance measurement data to determine whether the distance measurement data belongs to data with signal interference or data without signal interference.
4. The method according to claim 1, It is characterized in that The interference positioning model is obtained by training the BP neural network model using the first training sample, wherein the first training sample includes the initial position coordinates of the sample target and the actual position coordinates of the sample target, and the initial position coordinates of the sample target are estimated based on the distance measurement data of the sample target belonging to the signal interference data.
5. The method according to claim 4, It is characterized in that The step of obtaining the first training sample comprises: Acquire a plurality of data sets, each of which includes a plurality of sample points, each of which includes a set of distance measurement data belonging to the sample target point with signal interference data, and each set of distance measurement data of the sample target point includes distance information between the sample target point and each anchor point; Determine a sample point in the data set as a representative point; Constructing a Delaunay triangulation network based on the plurality of sample points included in the data set; Taking each of the representative points as a starting point, searching for adjacent sample points of the representative point based on the Delaunay triangulation, and taking adjacent sample points whose distances to the representative point are greater than a preset threshold as representative points until all the sample points are searched; Perform hierarchical clustering on the representative points in each of the data sets to obtain the first training samples.
6. The method according to claim 4, It is characterized in that The steps of optimizing the weights and thresholds of the BP neural network model include: Initializing a sand cat population, wherein the position of the sand cat population represents the weight and threshold of the BP neural network model; In the stage of the sand cat searching for prey, the position of the sand cat is updated based on the optimal position of the sand cat, the current position of the sand cat and the sensitivity of the sand cat; During the stage when the sand cat attacks its prey, the position of the sand cat is updated based on the optimal position of the sand cat, the current position of the sand cat, the random position of the sand cat, the sensitivity of the sand cat and the attack direction angle of the sand cat; wherein the attack direction angle of the sand cat is randomly determined based on a target interval, and the target interval is determined based on the difference between the current position of the sand cat and the optimal position of the sand cat.
7. The method according to claim 6, It is characterized in that The step of optimizing the weights and thresholds of the BP neural network model also includes: During the stage when the sand cat searches for prey, the search range of the sand cat's position is constrained based on the aggregation radius, wherein the aggregation radius is determined based on the aggregation value, and the aggregation value is a piecewise function based on the number of iterations, so that the aggregation radius is segmented and reduced as the number of iterations increases.
8. The method according to claim 6, It is characterized in that The step of optimizing the weights and thresholds of the BP neural network model also includes: The position of the sand cat is updated based on a target difference, wherein the target difference is determined based on a difference between a first target value and a second target value, wherein the first target value is determined based on the current position of the sand cat, and the second target value is determined based on a sine value of a first random number and a golden weighted distance between the current position of the sand cat and the optimal position of the sand cat.
9. The method according to any one of claims 1 to 8, It is characterized in that The preliminary position coordinates are estimated based on the distance measurement data using a residual weighted error suppression algorithm.
10. The method according to claim 2, It is characterized in that The interference-free positioning model is obtained by training a single hidden layer feedforward neural network model using a second training sample, wherein the second training sample includes distance measurement data of a sample target point belonging to signal interference-free data and a coordinate position label of the sample target point.
11. An ultra-wideband indoor positioning device, applied to indoor positioning scenarios with multiple anchor points. It is characterized in that The device comprises: A data acquisition module, used to acquire distance measurement data of a target point to be located, wherein the distance measurement data of the target point to be located includes distance information between the target point to be located and each anchor point confirmed based on an ultra-wideband signal; A positioning module is used to estimate the preliminary position coordinates of the target to be located based on the distance measurement data of the target to be located when the distance measurement data of the target to be located is signal interference data, and to determine the target position coordinates of the target to be located based on the preliminary position coordinates of the target to be located and a positioning model with interference, wherein the positioning model with interference is used to output the target position coordinates using the preliminary position coordinates.
12. An electronic device comprising a memory, a processor and a computer program stored in the memory, It is characterized in that The processor executes the computer program to implement the steps of any one of claims 1 to 10.
13. A computer-readable storage medium having a computer program / instructions stored thereon, It is characterized in that When the computer program / instruction is executed by a processor, the steps of any method described in claims 1 to 10 are implemented.
14. A computer program product comprising a computer program / instructions, It is characterized in that When the computer program / instruction is executed by a processor, the steps of any method described in claims 1 to 10 are implemented.
Citation Information
Patent Citations
Ultra-wideband precise positioning system based on Min-Max multilayer perceptron fusion under signal interference
CN114089275A
Ultra-wideband positioning method and device facing electric field signal interference
CN115604819A
Ultra-wideband indoor positioning method under signal interference
CN115955652A
ISCSO-LMNN-based accurate space positioning method for magnetic control capsule robot
CN116337074A
Indoor positioning method based on UWB
CN116684838A
Cited By
Bus data processing method and device and server equipment
CN115907242A
A bus data processing method and device and a server device
CN115907242B
