CN111787608B - Anchor node laying method and device - Google Patents

Anchor node laying method and device Download PDF

Info

Publication number
CN111787608B
CN111787608B CN202010621749.3A CN202010621749A CN111787608B CN 111787608 B CN111787608 B CN 111787608B CN 202010621749 A CN202010621749 A CN 202010621749A CN 111787608 B CN111787608 B CN 111787608B
Authority
CN
China
Prior art keywords
grid
population
positioning error
error limit
center point
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.)
Active
Application number
CN202010621749.3A
Other languages
Chinese (zh)
Other versions
CN111787608A (en
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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202010621749.3A priority Critical patent/CN111787608B/en
Publication of CN111787608A publication Critical patent/CN111787608A/en
Application granted granted Critical
Publication of CN111787608B publication Critical patent/CN111787608B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • H04W64/003Locating users or terminals or network equipment for network management purposes, e.g. mobility management locating network equipment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Abstract

The embodiment of the invention provides an anchor node laying method and device, which relate to the technical field of wireless positioning and can improve positioning precision, and the technical scheme of the embodiment of the invention comprises the following steps: according to a preset search interval, a plurality of grid areas are divided in an area to be positioned, and grid center point coordinates of each grid area are obtained. And then determining a search cost function based on the coordinates of the grid central points and the number of the preset anchor nodes, wherein the search cost function is the limit of minimizing the positioning error of each grid central point. And determining anchor node coordinates by utilizing a multi-objective evolutionary algorithm MOEA/D based on decomposition according to the search cost function.

Description

Anchor node laying method and device
Technical Field
The invention relates to the technical field of wireless positioning, in particular to an anchor node laying method and device.
Background
With the arrival of the world of everything interconnection, the wireless sensor network is taken as one of main data sources, and the effectiveness and the reliability of the acquired data have important significance for everything interconnection. When an object is located, data collected by a plurality of wireless sensors are generally needed, and therefore, each position exists in the communication range of the plurality of wireless sensors in an area to be located. And the distance between each location and the wireless sensor affects the positioning accuracy of the location.
The error homogeneous boundary method is that under each anchor node layout scheme, the positioning error limit of each sampling point in the area is calculated, then the mean value of each positioning error limit is calculated, then the positioning error limit mean values corresponding to each anchor node layout scheme are compared, and the layout scheme with the minimum mean value is selected.
However, the method that the average value of the positioning error limits in the area is used as the layout evaluation factor of the anchor nodes cannot reflect the distribution situation of the positioning error limits in the whole area, that is, under the selected layout scheme, although the average value of the positioning error limits of each sampling point is smaller, the positioning error limits of some sampling points may be larger, and the larger the positioning error limit is, the lower the positioning accuracy of the sampling point is.
Therefore, the positioning accuracy of a partial region is low when positioning is performed after the wireless sensor is arranged at the determined anchor node position by using the anchor node arrangement scheme determined by the error mean boundary method.
Disclosure of Invention
The embodiment of the invention aims to provide an anchor node laying method and device so as to improve positioning accuracy. The specific technical scheme is as follows:
in a first aspect, an embodiment of the present invention provides an anchor node deployment method, where the method includes:
dividing a plurality of grid areas in an area to be positioned according to a preset search interval, and obtaining grid center point coordinates of each grid area;
determining a search cost function based on the grid central point coordinates and the number of preset anchor nodes, wherein the search cost function is a positioning error limit for minimizing each grid central point;
and determining anchor node coordinates by utilizing a multi-objective evolutionary algorithm MOEA/D based on decomposition according to the search cost function.
Optionally, the search cost function is:
min C(R)=[C1(R,H1)C2(R,H2)…Ck(R,Hk)]T
where min represents the minimization, C is the positioning error limit of the center point of each grid, and R ═ R1R2…Rn]N is the preset number of anchor nodes, RnIs the coordinate of anchor node n, H ═ H1H2…Hk]K is the number of grid areas in the area to be positioned, HjAs a coordinate of the mesh center point j, CjIs the positioning error limit for the grid center point j, j is 1, 2.
Optionally, the positioning error limit of the grid center point is:
Figure BDA0002563260580000021
wherein, CjIs the positioning error limit of the grid center point j, j is 1, 2jIs the Jacobian matrix of the positioning equation set of the grid central point j, W is the weight coefficient matrix, trace (-) is the trace of the solving matrix,
Figure BDA0002563260580000022
is GjWhen applied to 2-dimensional positioning,
Figure BDA0002563260580000023
when the application is applied to a 3-dimensional positioning,
Figure BDA0002563260580000024
Tjthe distance between the anchor node and the grid central point j is smaller than the number of anchor nodes in a preset communication range.
Optionally, determining the anchor node coordinates by using a multi-objective evolutionary algorithm MOEA/D based on decomposition according to the search cost function includes:
randomly generating a plurality of populations, wherein each population comprises the preset number of coordinates of the anchor nodes;
according to the arrangement sequence of the multiple populations, aiming at one population to be searched in the multiple populations, randomly generating a target population based on a neighborhood population of the population to be searched, wherein the neighborhood population is a specified number of populations with the shortest distance in the distances between the weight vectors of the multiple populations and the weight vectors of the population to be searched;
obtaining a positioning error limit set to be optimized by utilizing the search cost function, wherein each element included in the positioning error limit set to be optimized is as follows: aiming at a grid center point, setting a smaller positioning error limit of the grid center point when a seed group to be searched is set and the positioning error limit of the grid center point when the target seed group is set;
updating anchor node coordinates in a neighborhood population corresponding to the target population by using an optimization function;
if the positioning error limit set to be optimized dominates a positioning error limit set in a specified vector set, deleting the positioning error limit set in the specified vector set, adding the positioning error limit set to be optimized into the specified vector set, and taking the target population as an optimized population;
and if the optimization of the plurality of populations is completed, obtaining the anchor node coordinates included by the optimized populations.
Optionally, the randomly generating a target population for a population to be searched in a plurality of populations based on a neighborhood population of the population to be searched includes:
randomly selecting a first neighborhood population and a second neighborhood population from neighborhood populations of the population to be searched;
according to the arrangement sequence of anchor nodes in a population, generating a first random number in a preset range aiming at an anchor node with a specified sequence number, and when the first random number is not larger than a first preset threshold value, interchanging the anchor node coordinate of the specified sequence number in the first neighborhood population with the anchor node coordinate of the specified sequence number in the second neighborhood population; generating a second random number within the preset range, and interchanging coordinates of two randomly selected anchor nodes in the first neighborhood population when the second random number is not larger than a second preset threshold value; and taking the first neighborhood population as the target population.
Optionally, the optimization function is:
Figure BDA0002563260580000031
where min represents the minimum, max represents the maximum, λjWeight of the positioning error limit for the grid center point j, CjPositioning error for grid center point jDifference limit, R is the coordinates of each anchor node included in a population, HjJ is a coordinate of a grid central point, j is 1, 2, and k is the number of grid central points in the area to be positioned, and z is a coordinate of a grid central point in the area to be positioned*For the set of positioning error limits to be optimized,
Figure BDA0002563260580000032
is the minimum of the positioning error limits at the grid center point j when setting the various clusters.
In a second aspect, an embodiment of the present invention provides an anchor node deployment apparatus, where the apparatus includes:
the dividing module is used for dividing a plurality of grid areas in the area to be positioned according to a preset search interval and obtaining grid center point coordinates of each grid area;
the determining module is used for determining a searching cost function based on the grid central point coordinates and the number of the preset anchor nodes, wherein the searching cost function is a positioning error limit of each minimized grid central point;
and the determining module is also used for determining anchor node coordinates by utilizing a multi-objective evolutionary algorithm MOEA/D based on decomposition according to the searching cost function.
Optionally, the search cost function is:
min C(R)=[C1(R,H1)C2(R,H2)…Ck(R,Hk)]T
where min represents the minimization, C is the positioning error limit of the center point of each grid, and R ═ R1R2…Rn]N is the preset number of anchor nodes, RnIs the coordinate of anchor node n, H ═ H1H2…Hk]K is the number of grid areas in the area to be positioned, HjAs a coordinate of the mesh center point j, CjIs the positioning error limit for the grid center point j, j is 1, 2.
Optionally, the positioning error limit of the grid center point is:
Figure BDA0002563260580000041
wherein, CjIs the positioning error limit of the grid center point j, j is 1, 2jIs the Jacobian matrix of the positioning equation set of the grid central point j, W is the weight coefficient matrix, trace (-) is the trace of the solving matrix,
Figure BDA0002563260580000042
is GjWhen applied to 2-dimensional positioning,
Figure BDA0002563260580000043
when the application is applied to a 3-dimensional positioning,
Figure BDA0002563260580000044
Tjthe distance between the anchor node and the grid central point j is smaller than the number of anchor nodes in a preset communication range.
Optionally, the determining module is specifically configured to:
randomly generating a plurality of populations, wherein each population comprises the preset number of coordinates of the anchor nodes;
according to the arrangement sequence of the multiple populations, aiming at one population to be searched in the multiple populations, randomly generating a target population based on a neighborhood population of the population to be searched, wherein the neighborhood population is a specified number of populations with the shortest distance in the distances between the weight vectors of the multiple populations and the weight vectors of the population to be searched;
obtaining a positioning error limit set to be optimized by utilizing the search cost function, wherein each element included in the positioning error limit set to be optimized is as follows: aiming at a grid center point, setting a smaller positioning error limit of the grid center point when a seed group to be searched is set and the positioning error limit of the grid center point when the target seed group is set;
updating anchor node coordinates in a neighborhood population corresponding to the target population by using an optimization function;
if the positioning error limit set to be optimized dominates a positioning error limit set in a specified vector set, deleting the positioning error limit set in the specified vector set, adding the positioning error limit set to be optimized into the specified vector set, and taking the target population as an optimized population;
and if the optimization of the plurality of populations is completed, obtaining the anchor node coordinates included by the optimized populations.
Optionally, the determining module is specifically configured to:
randomly selecting a first neighborhood population and a second neighborhood population from neighborhood populations of the population to be searched;
according to the arrangement sequence of anchor nodes in a population, generating a first random number in a preset range aiming at an anchor node with a specified sequence number, and when the first random number is not larger than a first preset threshold value, interchanging the anchor node coordinate of the specified sequence number in the first neighborhood population with the anchor node coordinate of the specified sequence number in the second neighborhood population; generating a second random number within the preset range, and interchanging coordinates of two randomly selected anchor nodes in the first neighborhood population when the second random number is not larger than a second preset threshold value; and taking the first neighborhood population as the target population.
Optionally, the optimization function is:
Figure BDA0002563260580000051
where min represents the minimum, max represents the maximum, λjWeight of the positioning error limit for the grid center point j, CjFor the positioning error limit of the grid center point j, R is the coordinate of each anchor node included in a group, HjJ is a coordinate of a grid central point, j is 1, 2, and k is the number of grid central points in the area to be positioned, and z is a coordinate of a grid central point in the area to be positioned*For the set of positioning error limits to be optimized,
Figure BDA0002563260580000052
is the minimum of the positioning error limits at the grid center point j when setting the various clusters.
In a third aspect, an embodiment of the present invention provides an electronic device, including a processor, a communication interface, a memory, and a communication bus, where the processor and the communication interface complete communication between the memory and the processor through the communication bus;
a memory for storing a computer program;
and the processor is used for realizing the steps of any anchor node laying method when executing the program stored in the memory.
In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when being executed by a processor, the computer program implements the steps of any one of the anchor node deployment methods described above.
In a fifth aspect, embodiments of the present invention also provide a computer program product containing instructions, which when run on a computer, cause the computer to perform any of the above-described anchor node deployment methods.
The technical scheme of the embodiment of the invention can at least bring the following beneficial effects: because the search cost function is to minimize the positioning error limit of each grid central point, and the positioning error limits of the grid central points are simultaneously optimized by utilizing a multi-objective evolutionary algorithm based on decomposition, the anchor node coordinate when the positioning error limits of the grid central points are integrally minimum is finally obtained. Therefore, the embodiment of the invention can optimize the positioning error limit of the central point of each grid from the overall angle, and reduce the condition that the positioning error limit of partial sampling points is larger, thereby improving the positioning precision.
Of course, not all of the advantages described above need to be achieved at the same time in the practice of any one product or method of the invention.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a flowchart of an anchor node laying method according to an embodiment of the present invention;
fig. 2 is an exemplary schematic diagram of a region to be located according to an embodiment of the present invention;
fig. 3 is a flowchart of a method for determining coordinates of an anchor node according to an embodiment of the present invention;
fig. 4 is an exemplary diagram of anchor node positions in an area to be located according to an embodiment of the present invention;
fig. 5a is a contour diagram of a Cramer-Rao Lower Bound (CRLB) in a region to be positioned after anchor node positions are arranged by using the anchor node arrangement method according to the embodiment of the present invention;
fig. 5b is a diagram illustrating a CRLB probability density and an accumulated distribution function in a region to be located after anchor node location is deployed according to the anchor node deployment method provided in the embodiment of the present invention;
fig. 6a is a CRLB contour map in a region to be located after anchor node positions are laid by using an error averaging method according to an embodiment of the present invention;
fig. 6b is a diagram illustrating a CRLB probability density and an accumulated distribution function in a region to be located after anchor node positions are arranged by using an error averaging method according to an embodiment of the present invention;
fig. 7 is a schematic structural diagram of an anchor node deployment apparatus according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In order to improve positioning accuracy, an embodiment of the present invention provides an anchor node laying method, which may be applied to an electronic device, where the electronic device may be a mobile phone, a computer, a tablet computer, or the like, as shown in fig. 1, and the method includes the following steps.
Step 101, dividing a plurality of grid areas in an area to be positioned according to a preset search interval, and obtaining grid center point coordinates of each grid area.
Optionally, the coordinate calibration value of the grid center point may be a relative position or an absolute position, and the coordinate system may be selected according to actual needs. Marking the central point of each grid as H ═ H1,H2,...,Hk]And each element in H is a grid center point coordinate.
And 102, determining a search cost function based on the grid central point coordinates and the preset number of anchor nodes.
Wherein the search cost function is a positioning error limit for minimizing the center point of each grid.
Optionally, the number of the preset anchor nodes may be set according to actual needs, for example, set according to a communication range of the wireless sensor, a size of an area to be located, and the like.
Step 103, determining the coordinates of the anchor node by using a Multi-objective evolution Based on Decomposition (MOEA/D) according to the search cost function.
The technical scheme of the embodiment of the invention can at least bring the following beneficial effects: because the search cost function is to minimize the positioning error limit of each grid central point, and the positioning error limits of the grid central points are simultaneously optimized by utilizing a multi-objective evolutionary algorithm based on decomposition, the anchor node coordinate when the positioning error limits of the grid central points are integrally minimum is finally obtained. Therefore, the embodiment of the invention can optimize the positioning error limit of the central point of each grid from the overall angle, and reduce the condition that the positioning error limit of partial sampling points is larger, thereby improving the positioning precision.
In the embodiment of the present invention, the search cost function may be formula (1).
min C(R)=[C1(R,H1)C2(R,H2)…Ck(R,Hk)]T (1)
Where min represents the minimization, C is the positioning error limit of the center point of each grid, and R ═ R1R2…Rn]N is the preset number of anchor nodes, RnIs the coordinate of anchor node n, H ═ H1H2…Hk]K is the number of grid areas in the area to be positioned, HjAs a coordinate of the mesh center point j, CjIs the positioning error limit for the grid center point j, j is 1, 2.
Optionally, a positioning error limit CjThe function may be equation (2).
Figure BDA0002563260580000081
Wherein, CjIs the positioning error limit of the grid central point j, j is 1, 2, k, k is the number of grid central points in the area to be positioned, GjIs the Jacobian matrix of the positioning equation set of the grid central point j, W is the weight coefficient matrix, trace (-) is the trace of the solving matrix,
Figure BDA0002563260580000082
is GjWhen applied to 2-dimensional positioning,
Figure BDA0002563260580000083
when the application is applied to a 3-dimensional positioning,
Figure BDA0002563260580000084
Tjthe distance between the anchor node and the grid central point j is smaller than the number of anchor nodes in a preset communication range.
The value of a in the embodiment of the present invention may be set according to actual needs, for example, a is 10.
Optionally, the system of positioning equations is
Figure BDA0002563260580000091
Wherein d isjIs the distance measurement value from the mesh center point j to the anchor node, HjIs the coordinate of the grid center point j, L ═ L1,L2,…,Lk],Lj={Ri|||Hj-Ri||2C, j is equal to 1, 2, the.
It can be understood that when applied to 2-dimensional positioning, the communication range of the wireless sensor is a circle with a radius c and an anchor node as a center; when applied to 3-dimensional positioning, the communication range of the wireless sensor is a sphere with a radius c and an anchor node as a center. If the wireless sensors are arranged at the anchor node positions, the communication range of each wireless sensor comprises a certain number of grid central points LjIt can be understood that: and anchor node coordinates of the communication range to which the grid center point j belongs.
For example, as shown in fig. 2, the region to be located in fig. 2 is divided into 9 grids, and the central points of the grids are H1~H9Circle c in FIG. 21Is represented by R1A circular communication range with c as radius, a circle c2Is represented by R2And c is used as the radius of the circular communication range. Center point H of grid6At c1And c2In the range, so L6=[R1,R2]。
Optionally, the Jacobian matrix G of the positioning equation set of the grid center point jiMay be equation (3).
Figure BDA0002563260580000092
Wherein HjIs the coordinate of the grid center point j, L ═ L1,L2,…,Lk],Lj={Ri|||Hj-Ri||2C, j is equal to 1, 2, the.
In an embodiment of the present invention, W may be formula (4).
Figure BDA0002563260580000101
Wherein, for each mesh center point,
Figure BDA0002563260580000102
is the variance of the ranging error between the anchor node i and the center point of the grid, and the ranging error satisfies the sum of zero mean value under the condition of line-of-sight
Figure BDA0002563260580000103
Gaussian distribution of variance.
The technical scheme of the embodiment of the invention can also bring the following beneficial effects: setting alpha (T) in a positioning error limit functionj) And under the condition that the positioning cannot be carried out, the error is large, and whether the positioning can be carried out or not is judged conveniently.
In the embodiment of the present invention, referring to fig. 3, the above-mentioned manner of determining the anchor node coordinates in step 103 includes the following steps.
Step 301, a plurality of populations are randomly generated. And each population comprises the preset number of coordinates of anchor nodes.
Optionally, a plurality of randomly generated populations may be denoted as R1,R2,...,RNWherein, in the step (A),
Figure BDA0002563260580000104
Figure BDA0002563260580000105
Figure BDA0002563260580000106
denotes the anchor node N coordinates in the population i, i ═ 1, 2.
Step 302, according to the arrangement sequence of the plurality of populations, aiming at one population to be searched in the plurality of populations, randomly generating a target population based on the neighborhood population of the population to be searched.
Wherein, the neighborhood population of the population to be searched is: and in the distances between the weight vectors of the plurality of populations and the weight vector of the population to be searched, the designated number of populations with the shortest distance are selected.
Optionally, setting a set of weight vectors λ ═ λ for each population1,λ2,...,λk]Wherein λ isjIs not less than 0 and
Figure BDA0002563260580000107
λjfor the weight of the positioning error limit of the grid center point j when setting the population, j is 1, 2. Calculating Euclidean distances between the weight vector of the population to be searched and the weight vectors of a plurality of populations respectively, and enabling B (i) to be [ i ]1,i2,...,iF]Where i 1, 2.., N, F is a specified number, and each element in b (i) represents a sequence number of a neighborhood population of the population i.
Figure BDA0002563260580000108
Is the sum vector lambdaiF weight vectors, λ, with Euclidean distance being the nearestiIs the weight vector for the population i.
In one embodiment, the first neighborhood population and the second neighborhood population may be randomly selected from the neighborhood populations of the population to be searched. Then according to the arrangement sequence of the anchor nodes in the population, generating a first random number in a preset range aiming at the anchor node with a specified sequence number, and when the first random number is not more than a first preset threshold value, interchanging the coordinates of the anchor node with the specified sequence number in the first neighborhood population with the coordinates of the anchor node with the specified sequence number in the second neighborhood population; generating a second random number within a preset range, and interchanging coordinates of two randomly selected anchor nodes in the first neighborhood population when the second random number is not larger than a second preset threshold value; and taking the first neighborhood population as a target population.
Optionally, the process of generating the target population may be represented as:
For i=1,2,...,n
{ generating a first random number in the range of 0 to 1, if the first random number < ═ 0.6, then will
Figure BDA0002563260580000111
And
Figure BDA0002563260580000112
and (4) interchanging. Wherein q and l are the sequence numbers of the randomly selected neighborhood population, and i represents the anchor node sequence number.
Generating a second random number in the range of 0-1, if the second random number is less than 0.1, generating two random numbers o and p in the range of 1-n, and mixing
Figure BDA0002563260580000113
And
Figure BDA0002563260580000114
and (4) interchanging.
Let y be Rq′. Wherein R isq’Is the exchanged population q. }
And 303, obtaining a positioning error limit set to be optimized by using the search cost function.
Set of positioning error limits to be optimized
Figure BDA0002563260580000115
Each element included is: aiming at a central point of a grid, a population (R) to be searched is seti) The smaller of the positioning error limit of the grid center point and the positioning error limit of the grid center point when the target population (y) is set.
And 304, updating the anchor node coordinates in the neighborhood population corresponding to the target population by using the optimization function.
In an embodiment of the present invention, the optimization function may be formula (6).
Figure BDA0002563260580000116
Where min represents the minimum, max represents the maximum, λjWeight of the positioning error limit for the grid center point j, CjFor the positioning error limit of the grid center point j, R is the coordinate of each anchor node included in a group, HjJ coordinate of the grid central point, j is 1, 2, the*For the set of positioning error limits to be optimized,
Figure BDA0002563260580000117
is the minimum of the positioning error limits at the grid center point j when setting the various clusters.
In one embodiment, when g (y, λ)j,z*)<=g(Rj,λj,z*) Then, the coordinate of the target population y is assigned to the neighborhood population Rj
And 305, if the positioning error limit set to be optimized dominates the positioning error limit set in the appointed vector set, deleting the positioning error limit set in the appointed vector set, adding the positioning error limit set to be optimized into the appointed vector set, and taking the target population (y) as an optimized population.
It will be appreciated that the set of positioning error limits to be optimized (c (y)) dominates the set of positioning error limits in the given set of vectors (EP), meaning that c (y) comprises each element that is smaller than the corresponding element in the set of positioning error limits in the EP.
For example, set A is [1, 2, 3], set B is [4, 5, 6], and set A dominates set B since 1 < 4, 2 < 5, 3 < 6.
And step 306, if the optimization of the plurality of populations is completed, obtaining the anchor node coordinates included by the optimized populations.
It is to be understood that if steps 302-305 are performed for each population generated in step 301, then multiple population optimization is complete. And taking the coordinates of the anchor nodes included in the optimized population as the coordinates of the layout anchor nodes.
In the embodiment of the present invention, if all of steps 302 to 305 are not performed for each population generated in step 301, step 302 is returned to.
In connection with fig. 3, the process of determining anchor node coordinates may be represented as:
For i=1,2,...,N do
{ randomly selecting two population serial numbers q, l from B (i) { generating target population y by using crossover operator and mutation operator
For each j=1,2,...,k if
Figure BDA0002563260580000121
Order to
Figure BDA0002563260580000122
end for
For each j∈B(i),if g(y,λj,z*)<=g(Rj,λj,z*) Let y be Rj end for
Deleting the positioning error limit set governed by the positioning error limit set C (y) to be optimized in the appointed vector set EP, adding C (y) into the EP, and assigning the target population y to the optimization population R }
And End for obtaining the coordinates of each anchor node included in the optimized population R.
Wherein the content of the first and second substances,
Figure BDA0002563260580000123
λjand is the weight corresponding to the population j.
The technical scheme of the embodiment of the invention can also bring the following beneficial effects: compared with the traditional area error boundary equalizing method, the positioning accuracy of the area to be positioned is improved.
The performance of the anchor node positioning method provided by the embodiment of the invention is proved by simulation experiments.
The layout experiment of 6 anchor nodes is carried out in an area to be positioned, which is 10 meters (m) × 11m, and the communication range radius of a single wireless sensor is assumed to be 20m, the wireless signal ranging errors are independently distributed, the ranging errors are 1m (1 sigma), and the probability that the ranging errors are 1m is 66.7%.
In order to analyze the effectiveness of the regional positioning accuracy evaluation index provided herein, the layout results and performances of the regional error homogeneous method and the anchor node layout method provided herein are compared under the condition of the size of 0.4m grid and the same initial distribution, and the simulation results are shown in fig. 4, 5a, 5b, 6a and 6 b.
The circles with a x in fig. 4 represent the anchor node positions determined by the error mean bound method, and x represents the anchor node positions determined by the anchor node laying method provided by the embodiment of the present invention. Wherein the horizontal axis represents the horizontal range of the area to be positioned, and the vertical axis represents the vertical range of the area to be positioned.
Fig. 5a is a CRLB contour map in a region to be positioned after anchor node positions are arranged by using the anchor node arrangement method according to the embodiment of the present invention. Wherein the horizontal axis represents the horizontal range of the area to be positioned, and the vertical axis represents the vertical range of the area to be positioned.
Fig. 5b is a diagram illustrating a CRLB probability density and an accumulative distribution function in a region to be located after anchor node positions are arranged by using the anchor node arrangement method according to the embodiment of the present invention. Wherein the horizontal axis is CRLB, the left vertical axis is probability density, and the right vertical axis is cumulative distribution function. The histogram in fig. 5b represents the probability density and the curve represents the cumulative distribution function.
Fig. 6a is a CRLB contour map in a region to be positioned after anchor node positions are laid by using an error averaging method. Wherein the horizontal axis represents the horizontal range of the area to be positioned, and the vertical axis represents the vertical range of the area to be positioned.
FIG. 6b is a CRLB probability density and cumulative distribution function in the region to be positioned after the anchor node positions are laid by the error averaging method. Wherein the horizontal axis is CRLB, the left vertical axis is probability density, and the right vertical axis is cumulative distribution function. The histogram in fig. 6b represents the probability density and the curve represents the cumulative distribution function.
As can be seen from fig. 5a and 6a, compared with the error homogeneous method, the CRLB of the anchor node layout method provided in the embodiment of the present invention is more gradual in the center of the positioning region, and the area of the region with a larger positioning error is smaller. Comparing the results of fig. 5b and fig. 6b, it can be seen that, compared with the error margin averaging method, the anchor node layout method provided by the embodiment of the present invention can reduce CRLB in the range of 99.74% of the localization area by about 38.79%.
Based on the same technical concept, corresponding to the above method embodiment, an embodiment of the present invention provides an anchor node deployment apparatus, as shown in fig. 7, including: a dividing module 701 and a determining module 702;
the dividing module 701 is configured to divide a plurality of grid regions in a region to be positioned according to a preset search interval, and obtain a grid center point coordinate of each grid region;
a determining module 702, configured to determine a search cost function based on the grid center point coordinates and a preset number of anchor nodes, where the search cost function is a limit of minimizing a positioning error of each grid center point;
the determining module 702 is further configured to determine the anchor node coordinates according to the search cost function by using a multi-objective evolutionary algorithm MOEA/D based on decomposition.
Optionally, the search cost function is:
min C(R)=[C1(R,H1)C2(R,H2)…Ck(R,Hk)]T
wherein, C is the positioning error limit of the center point of each grid, and R is [ R ]1R2…Rn]N is the preset number of anchor nodes, RnIs the coordinate of anchor node n, H ═ H1H2…Hk]K is the number of grid areas in the area to be positioned, HjAs a coordinate of the mesh center point j, CjIs the positioning error limit for the grid center point j, j is 1, 2.
Optionally, the positioning error limit of the grid center point is:
Figure BDA0002563260580000141
wherein, CjThe positioning error limit of a grid central point j is defined as j 1, 2, the k is the number of the grid central points in the area to be positioned, Gj is a Jacobian matrix of a positioning equation set of the grid central point j, W is a weight coefficient matrix, trace (-) is the trace of the matrix,
Figure BDA0002563260580000142
is GjWhen applied to 2-dimensional positioning,
Figure BDA0002563260580000143
when the application is applied to a 3-dimensional positioning,
Figure BDA0002563260580000144
Tjthe distance between the anchor node and the grid central point j is smaller than the number of anchor nodes in a preset communication range.
Optionally, the determining module 702 is specifically configured to:
randomly generating a plurality of populations, wherein each population comprises a preset number of coordinates of anchor nodes;
according to the arrangement sequence of the multiple populations, aiming at one to-be-searched population in the multiple populations, randomly generating a target population based on a neighborhood population of the to-be-searched population, wherein the neighborhood population is a specified number of populations with the shortest distance in the distances between the weight vectors of the multiple populations and the weight vectors of the to-be-searched population;
obtaining a positioning error limit set to be optimized by utilizing a search cost function, wherein each element included in the positioning error limit set to be optimized is as follows: aiming at a grid central point, setting a smaller positioning error limit in the positioning error limit of the grid central point when a seed group to be searched is set and the positioning error limit of the grid central point when a target seed group is set;
updating anchor node coordinates in a neighborhood population corresponding to the target population by using an optimization function;
if the positioning error limit set to be optimized dominates the positioning error limit set in the appointed vector set, deleting the positioning error limit set in the appointed vector set, adding the positioning error limit set to be optimized into the appointed vector set, and taking the target population as an optimized population;
and if the optimization of the plurality of populations is completed, obtaining the anchor node coordinates included by the optimized populations.
Optionally, the determining module 702 is specifically configured to:
randomly selecting a first neighborhood population and a second neighborhood population from neighborhood populations of a population to be searched;
according to the arrangement sequence of anchor nodes in a population, generating a first random number in a preset range aiming at an anchor node with a specified sequence number, and when the first random number is not larger than a first preset threshold value, interchanging the coordinates of the anchor node with the specified sequence number in a first neighborhood population with the coordinates of the anchor node with the specified sequence number in a second neighborhood population; generating a second random number within a preset range, and interchanging coordinates of two randomly selected anchor nodes in the first neighborhood population when the second random number is not larger than a second preset threshold value; and taking the first neighborhood population as a target population.
Optionally, the optimization function is:
Figure BDA0002563260580000151
where min represents the minimum, max represents the maximum, λjWeight of the positioning error limit for the grid center point j, CjFor the positioning error limit of the grid center point j, R is the coordinate of each anchor node included in a group, HjJ coordinate of the grid central point, j is 1, 2, the*For the set of positioning error limits to be optimized,
Figure BDA0002563260580000152
is the minimum of the positioning error limits at the grid center point j when setting the various clusters.
An embodiment of the present invention further provides an electronic device, as shown in fig. 8, which includes a processor 801, a communication interface 802, a memory 803, and a communication bus 804, where the processor 801, the communication interface 802, and the memory 803 complete mutual communication through the communication bus 804,
a memory 803 for storing a computer program;
the processor 801 is configured to implement the method steps in the above-described method embodiments when executing the program stored in the memory 803.
The communication bus mentioned in the electronic device may be a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The communication bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
The communication interface is used for communication between the electronic equipment and other equipment.
The Memory may include a Random Access Memory (RAM) or a Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the processor.
The Processor may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but also Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components.
In still another embodiment of the present invention, a computer-readable storage medium is further provided, in which a computer program is stored, and the computer program, when executed by a processor, implements the steps of any of the above-mentioned anchor node deployment methods.
In yet another embodiment provided by the present invention, there is also provided a computer program product containing instructions which, when run on a computer, cause the computer to perform any of the anchor node deployment methods of the above embodiments.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the invention to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. The term "comprising", without further limitation, means that the element so defined is not excluded from the group consisting of additional identical elements in the process, method, article, or apparatus that comprises the element.
All the embodiments in the present specification are described in a related manner, and the same and similar parts among the embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, as for the apparatus embodiment, since it is substantially similar to the method embodiment, the description is relatively simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention shall fall within the protection scope of the present invention.

Claims (3)

1. A method for laying anchor nodes, which is characterized in that the method comprises the following steps:
dividing a plurality of grid areas in an area to be positioned according to a preset search interval, and obtaining grid center point coordinates of each grid area;
determining a search cost function based on the grid central point coordinates and the number of preset anchor nodes, wherein the search cost function is a positioning error limit for minimizing each grid central point;
the search cost function is: min C (R) ═ C1(R,H1) C2(R,H2) … Ck(R,Hk)]T
Where min represents the minimization, C is the positioning error limit of the center point of each grid, and R ═ R1 R2 … Rn]N is the preset number of anchor nodes, RnIs the coordinate of anchor node n, H ═ H1 H2 … Hk]K is the number of grid areas in the area to be positioned, HjAs a coordinate of the mesh center point j, CjIs the center of the gridA positioning error limit for point j, j ═ 1, 2.., k;
the positioning error limit of the grid center point is as follows:
Figure FDA0003007464070000011
wherein, CjIs the positioning error limit of the grid center point j, j is 1, 2jIs the Jacobian matrix of the positioning equation set of the grid central point j, W is the weight coefficient matrix, trace (-) is the trace of the solving matrix,
Figure FDA0003007464070000012
is GjWhen applied to 2-dimensional positioning,
Figure FDA0003007464070000013
when the application is applied to a 3-dimensional positioning,
Figure FDA0003007464070000014
Tjthe number of anchor nodes is that the distance between the anchor nodes and the grid central point j is smaller than the preset communication range;
randomly generating a plurality of populations, wherein each population comprises the preset number of coordinates of the anchor nodes;
randomly selecting a first neighborhood population and a second neighborhood population from neighborhood populations of the population to be searched; according to the arrangement sequence of anchor nodes in a population, generating a first random number in a preset range aiming at an anchor node with a specified sequence number, and when the first random number is not larger than a first preset threshold value, interchanging the anchor node coordinate of the specified sequence number in the first neighborhood population with the anchor node coordinate of the specified sequence number in the second neighborhood population; generating a second random number within the preset range, and interchanging coordinates of two randomly selected anchor nodes in the first neighborhood population when the second random number is not larger than a second preset threshold value; taking the first neighborhood population as the target population, wherein the neighborhood population is a specified number of populations with the shortest distance in the distances between the weight vectors of the populations and the weight vectors of the populations to be searched;
obtaining a positioning error limit set to be optimized by utilizing the search cost function, wherein each element included in the positioning error limit set to be optimized is as follows: aiming at a grid center point, setting a smaller positioning error limit of the grid center point when a seed group to be searched is set and the positioning error limit of the grid center point when the target seed group is set;
updating anchor node coordinates in a neighborhood population corresponding to the target population by using an optimization function;
if the positioning error limit set to be optimized dominates a positioning error limit set in a specified vector set, deleting the positioning error limit set in the specified vector set, adding the positioning error limit set to be optimized into the specified vector set, and taking the target population as an optimized population;
and if the optimization of the plurality of populations is completed, obtaining the anchor node coordinates included by the optimized populations.
2. The method of claim 1, wherein the optimization function is:
Figure FDA0003007464070000021
where min represents the minimum, max represents the maximum, λjWeight of the positioning error limit for the grid center point j, CjFor the positioning error limit of the grid center point j, R is the coordinate of each anchor node included in a group, HjJ is a coordinate of a grid central point, j is 1, 2, and k is the number of grid central points in the area to be positioned, and z is a coordinate of a grid central point in the area to be positioned*For the set of positioning error limits to be optimized,
Figure FDA0003007464070000022
for positioning errors at the grid center point j when setting up various clustersThe minimum of the difference limits.
3. An anchor node deployment apparatus, the apparatus comprising:
the dividing module is used for dividing a plurality of grid areas in the area to be positioned according to a preset search interval and obtaining grid center point coordinates of each grid area;
the determining module is used for determining a searching cost function based on the grid central point coordinates and the number of the preset anchor nodes, wherein the searching cost function is a positioning error limit of each minimized grid central point; the search cost function is: min C (R) ═ C1(R,H1) C2(R,H2) … Ck(R,Hk)]T
Where min represents the minimization, C is the positioning error limit of the center point of each grid, and R ═ R1 R2 … Rn]N is the preset number of anchor nodes, RnIs the coordinate of anchor node n, H ═ H1 H2 … Hk]K is the number of grid areas in the area to be positioned, HjAs a coordinate of the mesh center point j, CjIs the positioning error limit of the grid center point j, j is 1, 2.
The positioning error limit of the grid center point is as follows:
Figure FDA0003007464070000031
wherein, CjIs the positioning error limit of the grid center point j, j is 1, 2jIs the Jacobian matrix of the positioning equation set of the grid central point j, W is the weight coefficient matrix, trace (-) is the trace of the solving matrix,
Figure FDA0003007464070000032
is GjWhen applied to 2-dimensional positioning,
Figure FDA0003007464070000033
when the application is applied to a 3-dimensional positioning,
Figure FDA0003007464070000034
Xjthe number of anchor nodes is that the distance between the anchor nodes and the grid central point j is smaller than the preset communication range;
the determining module is used for randomly generating a plurality of populations, and each population comprises the preset number of coordinates of the anchor nodes; randomly selecting a first neighborhood population and a second neighborhood population from neighborhood populations of the population to be searched; according to the arrangement sequence of anchor nodes in a population, generating a first random number in a preset range aiming at an anchor node with a specified sequence number, and when the first random number is not larger than a first preset threshold value, interchanging the anchor node coordinate of the specified sequence number in the first neighborhood population with the anchor node coordinate of the specified sequence number in the second neighborhood population; generating a second random number within the preset range, and interchanging coordinates of two randomly selected anchor nodes in the first neighborhood population when the second random number is not larger than a second preset threshold value; taking the first neighborhood population as the target population, wherein the neighborhood population is a specified number of populations with the shortest distance in the distances between the weight vectors of the populations and the weight vectors of the populations to be searched; obtaining a positioning error limit set to be optimized by utilizing the search cost function, wherein each element included in the positioning error limit set to be optimized is as follows: aiming at a grid center point, setting a smaller positioning error limit of the grid center point when a seed group to be searched is set and the positioning error limit of the grid center point when the target seed group is set; updating anchor node coordinates in a neighborhood population corresponding to the target population by using an optimization function; if the positioning error limit set to be optimized dominates a positioning error limit set in a specified vector set, deleting the positioning error limit set in the specified vector set, adding the positioning error limit set to be optimized into the specified vector set, and taking the target population as an optimized population; and if the optimization of the plurality of populations is completed, obtaining the anchor node coordinates included by the optimized populations.
CN202010621749.3A 2020-06-30 2020-06-30 Anchor node laying method and device Active CN111787608B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010621749.3A CN111787608B (en) 2020-06-30 2020-06-30 Anchor node laying method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010621749.3A CN111787608B (en) 2020-06-30 2020-06-30 Anchor node laying method and device

Publications (2)

Publication Number Publication Date
CN111787608A CN111787608A (en) 2020-10-16
CN111787608B true CN111787608B (en) 2021-07-23

Family

ID=72761504

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010621749.3A Active CN111787608B (en) 2020-06-30 2020-06-30 Anchor node laying method and device

Country Status (1)

Country Link
CN (1) CN111787608B (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109819398A (en) * 2019-02-26 2019-05-28 山东科技大学 Indoor high-precision multisource wireless location system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109819398A (en) * 2019-02-26 2019-05-28 山东科技大学 Indoor high-precision multisource wireless location system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
天牛须搜索的锚节点布设优化算法;邓中亮, 刘延旭, 胡恩文;《北京邮电大学学报》;20191231;全文 *

Also Published As

Publication number Publication date
CN111787608A (en) 2020-10-16

Similar Documents

Publication Publication Date Title
CN109283562B (en) Vehicle three-dimensional positioning method and device in Internet of vehicles
CN113282960A (en) Privacy calculation method, device, system and equipment based on federal learning
CN112084289B (en) Track fusion method and device
CN108648156B (en) Method and device for marking stray points in point cloud data, electronic equipment and storage medium
CN112987724A (en) Path optimization method and device, robot and storage medium
CN111982124B (en) Deep learning-based three-dimensional laser radar navigation method and device in glass scene
CN111915657A (en) Point cloud registration method and device, electronic equipment and storage medium
CN109409318A (en) Training method, statistical method, device and the storage medium of statistical model
CN111540202B (en) Similar bayonet determining method and device, electronic equipment and readable storage medium
CN111787608B (en) Anchor node laying method and device
CN110261820B (en) Time difference positioning method and device for multiple measuring stations
CN111565356A (en) Base station position detection method and device
CN114090560B (en) Lane center line generation method, device, equipment and storage medium
CN113689526B (en) Method and device for dividing invalid area in map and electronic equipment
CN112633299B (en) Target detection method, network, device, terminal equipment and storage medium
CN113645630A (en) Base station layout method and device, electronic equipment and storage medium
CN113440054B (en) Method and device for determining range of charging base of sweeping robot
CN109831737B (en) Bluetooth positioning method, device, equipment and system based on confidence degree
CN113868939A (en) Wind power probability density evaluation method, device, equipment and medium
CN112669250A (en) Track alignment method and electronic equipment
CN113613188A (en) Fingerprint library updating method and device, computer equipment and storage medium
CN112118592A (en) Region generation method and device, electronic equipment and storage medium
CN113701768A (en) Path determination method and device and electronic equipment
CN111107162A (en) Indoor positioning data processing method, device and system based on Internet of things
CN111460051B (en) Data association method based on tree structure and layer-by-layer node deletion

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
GR01 Patent grant
GR01 Patent grant