Evaluation of device placement

By calculating the estimated position probability distribution of the target location in the placement of the beacon, the calculation cost and accuracy balance of the equipment placement design in the indoor positioning is solved, and the efficient and accurate beacon placement assessment has been achieved.

CN114491408BActive Publication Date: 2025-01-24INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202111219947.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-10-27
Filing Date
2021-10-20
Publication Date
2025-01-24
Estimated Expiration
2041-10-20

AI Technical Summary

Technical Problem

In indoor positioning, beacon-based positioning systems are difficult to balance calculation costs and evaluate accuracy, especially when designing equipment placement requires expert knowledge.

Method used

By calculating the probability distribution of the estimated position with the target location, the evaluation measurement of the device placement is evaluated using the observation model and the radio wave communication model, and the probability distribution is calculated through the geometric average.

Benefits of technology

It achieves the evaluation of equipment placement with balanced computational cost and high accuracy in indoor positioning, improving the design efficiency and accuracy of beacon placement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114491408B_ABST
    Figure CN114491408B_ABST
Patent Text Reader

Abstract

A set of devices in an environment is evaluated for placement. At least a plurality of neighboring locations are selected for a target location in the environment. A probability of the estimated location conditioned on the target location is calculated for each of the at least a plurality of neighboring locations as the estimated location using an observation model for obtaining a set of observations of locations given the placement. An evaluation metric is calculated using the probability calculated for each of the at least a plurality of neighboring locations.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates generally to supporting techniques for placing a collection of devices, and more particularly, to methods of evaluating placement of a collection of devices in an environment. Background Art

[0002] In order to provide navigation applications that are usable in indoor environments, various indoor localization (or positioning) technologies have been studied. Among these positioning technologies, the technology based on monitoring the strength of radio signals, namely the so-called Wi-Fi TM or Bluetooth TM RSS (Received Signal Strength) over Low Energy (BLE) is one of the most promising approaches due to its relatively low infrastructure cost, no need for special hardware, and potentially high accuracy. Summary of the invention

[0003] According to embodiments, a method, system, and computer program product are disclosed.

[0004] According to an embodiment of the present disclosure, a computer-implemented method for evaluating the placement of a collection of devices in an environment is provided. The method includes selecting at least a plurality of neighboring locations for a target location in the environment. The method also includes calculating the probability of an estimated location conditioned on the target location for each of at least a plurality of neighboring locations as an estimated location by using an observation model for obtaining a set of observations of locations under a given placement. The calculation can be performed approximately. The method also includes calculating an evaluation metric by using the probability calculated for each of at least a plurality of neighboring locations.

[0005] Computer systems and computer program products related to one or more aspects of the present disclosure are also described and claimed herein.

[0006] According to an embodiment of the present disclosure, a computer-implemented method for evaluating the placement of a collection of devices in an environment is provided. The method includes: Function To calculate the evaluation metric, and output the evaluation metric. By using the probability distribution To evaluate the metric. Probability distribution is computed as an estimated position conditioned on a set r of observations The probability distribution of the set r of predicted observations at the target location x The arithmetic mean Ep(r|x) of By using the geometric mean G p(r|x) Instead of the arithmetic mean E p(r|x) To get the function

[0007] Additional features and advantages are realized through the techniques of the present invention.Other embodiments and aspects of the disclosure are described in detail herein and are considered a part of the claimed invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] The accompanying drawings included in this application are incorporated into the specification and form a part of the specification. They show embodiments of the present disclosure and are used to explain the principles of the present disclosure together with the specification. The accompanying drawings only illustrate certain embodiments and do not limit the present disclosure.

[0009] Figure 1 A block diagram of a system for evaluating beacon placement according to some embodiments of the present disclosure is shown, the system including a positioning error estimation system;

[0010] Figure 2 shows a detailed block diagram of a positioning error estimation system according to some embodiments of the present disclosure;

[0011] Figure 3 A schematic diagram showing a radio wave propagation model used in conjunction with a positioning error estimation system according to some embodiments of the present disclosure;

[0012] Figure 4 is a flow chart depicting a process for estimating positioning error for a given beacon placement according to some embodiments of the present disclosure;

[0013] Figure 5 A schematic diagram showing a set of discrete points and beacon placements in a target environment according to some embodiments of the present disclosure;

[0014] Figure 6 A method of extracting neighboring points around a target point in a target environment according to some embodiments of the present disclosure is shown;

[0015] Figure 7 A method of extracting neighboring points around a target point in a target environment according to some embodiments of the present disclosure is shown;

[0016] Figure 8 A plot showing the distribution of the positioning error RMSEMC calculated by Monte Carlo simulation for an environment with 25 randomly placed beacons in a 40m×40m area:

[0017] Fig. 9 It is shown that Figure 8 Plot of the correlation of RMSECE1 calculated by related methods and RMSEE1 calculated by the proposed method with respect to RMSEMC calculated by Monte Carlo simulation in the environment shown.

[0018] Fig.10 A plot showing the distribution of the positioning error RMSEMC calculated by Monte Carlo simulation for an environment with 9 randomly placed beacons in a 30m×30m area:

[0019] Fig.11 It is shown that Fig.10 Plots of the correlation of RMSECE2 calculated by related methods and RMSEE2 calculated by the proposed method against RMSEMC calculated by Monte Carlo simulation for the environment shown: and

[0020] Fig.12 A schematic diagram of a computer system is depicted in accordance with one or more embodiments of the present disclosure.

[0021] Although the present disclosure may be modified into various modifications and alternative forms, the details thereof have been illustrated by the examples in the drawings and will be described in detail. However, it should be understood that the purpose is not to limit the present disclosure to the specific embodiments described. On the contrary, the present invention will cover all modifications, equivalents and alternatives that fall within the spirit and scope of the present disclosure. DETAILED DESCRIPTION

[0022] Hereinafter, the present disclosure will be described with respect to specific embodiments, but those skilled in the art will appreciate that the embodiments described below are mentioned only by way of example and are not intended to limit the scope of the present disclosure.

[0023] In order to provide navigation applications that are usable in indoor environments, various indoor localization (or positioning) technologies have been studied. Among these positioning technologies, the technology based on monitoring the strength of radio signals, namely the so-called Wi-Fi TM or Bluetooth TM RSS (Received Signal Strength) over Low Energy (BLE) is one of the most promising approaches due to its relatively low infrastructure cost, no need for special hardware, and potentially high accuracy.

[0024] BLE-based positioning techniques may require additional installation of signal emitting devices, such as beacons. However, scalar beacon-based positioning systems remain a challenging task because designing device placement may require expert knowledge about indoor positioning methods.

[0025] Therefore, a novel technique that can evaluate the placement of a device with balanced computational cost and evaluation accuracy may be needed.

[0026] One or more embodiments of the present disclosure relate to a computer-implemented method, computer system, and computer program product for evaluating the placement of a collection of devices in a target environment. The placement of a collection of devices for indoor positioning (beacon placement) and the positioning error of a target location in a target environment or space are determined. Where to install the beacon is calculated as an evaluation metric for evaluating the placement.

[0027] In the following, we first refer to Figure 1-3 , a computer system for evaluating beacon placement for indoor positioning according to some embodiments of the present disclosure will be described. Then, with reference to Figure 4-7 , a computer-implemented method for evaluating beacon placement for indoor positioning according to some embodiments of the present disclosure will be described. Then, with reference to Figure 8-11 , an experimental study on novel beacon placement evaluation according to some embodiments of the present disclosure will be described. Finally, reference Fig.12 , a hardware configuration of a computer system according to one or more embodiments of the present disclosure will be described.

[0028] System Configuration

[0029] In the following, reference Figure 1 , describes a block diagram of a system for evaluating beacon placement according to some embodiments of the present disclosure, the system including a positioning error estimation system.

[0030] like Figure 1 As shown, the system 100 may include a positioning error estimation system 110 for performing positioning error estimation, and a radio wave propagation model 150 used in conjunction with the positioning error estimation system 110 .

[0031] The positioning error estimation system 110 may be configured to receive input data describing conditions for positioning error estimation and output results of positioning error estimation under the given conditions.

[0032] The conditions for the positioning error estimation may include the target environment and the placement of the set of beacons in the target environment 102 and may include one or more parameters for the positioning error estimation.

[0033] The beacons whose placement is to be evaluated can be BLE or Wi-Fi for indoor positioning based on monitoring their RSS (Received Signal Strength) TM In some embodiments, each beacon is a signal emitting device that can broadcast or transmit its identifier via radio waves and can be fixed at a specific location to cover a specific area. A beacon can generally be defined as a device that sends signals through physical phenomena such as radio waves, sound waves, light, etc. Note that the “access point” used in Wi-Fi-based indoor positioning can also be included in the scope of the term “beacon”.

[0034] In beacon-based indoor positioning, a receiver can receive radio waves emitted from a beacon placed at a specific location in a target environment, and can estimate the receiver's own location based on the RSS obtained from the beacon. The receiver can be any device, and examples of the receiver can include, but are not limited to, a smart phone, a tablet computer, a smart suitcase, a robot, etc.

[0035] In some embodiments, the target environment of the set of beacons to be placed can be given in the form of two-dimensional (2D) data. The target area where the radio waves propagate and the receiver can move can be defined as a geometric shape in the target environment. For example, in the case of indoor positioning, the target area can include passages and room spaces in a building. The number of beacons and the location of the beacons can be defined in the target environment. In some embodiments, one or more obstacles (e.g., walls, windows, etc.) that attenuate, reflect and / or diffract radio waves can also be placed in the target environment.

[0036] In some embodiments, the positions (or locations) and the distance between two positions may be given in two-dimensional coordinates (e.g., (x, y), (latitude, longitude). However, two dimensions are examples, and three-dimensional coordinates (e.g., (x, y, z), (latitude, longitude, level / altitude)) are also contemplated in some embodiments.

[0037] For these parameters, the granularity of the location error estimate (eg, grid size / resolution) can be given. In addition, under the condition of the location error estimate, the parameters of the radio wave propagation model can also be given.

[0038] The radio wave propagation model 150 can provide a characterization of radio wave propagation and predict RSS as a function of the distance (or range) between the beacon and the receiver. In some embodiments, the radio wave propagation model 150 can also consider the azimuth relative to the reference direction instead of or in addition to the distance. The radio wave propagation model 150 can provide the positioning error estimation system 110 with an observation model (or probability distribution) of an RSS vector (or set of RSS values) conditioned on the position, such as a model of how many intensities are observed from multiple beacons at a given location.

[0039] Examples of radio wave propagation models include, but are not limited to, LDPL (Log Distance Path Loss) models, which predict the path loss that a signal encounters in a target environment over a distance. The above conditions may include the path loss at a reference distance when the LDPL model is adopted. Other examples of radio wave propagation models may include an ITU (International Telecommunication Union) model for indoor attenuation, a model for outdoor attenuation (e.g., an ITU terrain model), a model for free space attenuation (e.g., free space path loss), etc.

[0040] The results 104 provided by the positioning error estimation system 110 for a given condition may include, but are not limited to, an estimated positioning error for an arbitrary position, a map of the distribution of positioning errors on the target environment, a graphical representation of a statistical analysis of the estimated positioning error (such as a histogram), statistics of the estimated positioning error (e.g., mean, median, quantile, etc.), or a combination thereof.

[0041] In a particular use case, an operator may input 102 a candidate for beacon placement into a positioning error estimation system 110 and obtain an evaluation result 104 for the candidate, which may be further used to update the candidate for beacon placement for subsequent estimation. An operator may interactively design beacon placement by examining the positioning error distribution calculated for the candidate for beacon placement.

[0042] In other specific use cases, an operator may pre-list multiple candidates for beacon placement by, for example, performing a site survey, and may select an optimal subset of candidates based on statistics of positioning errors calculated for the multiple candidates for beacon placement. An operator may perform optimization of beacon placement by varying conditions such as the location of the beacons to optimize statistics (e.g., minimize the average of positioning errors).

[0043] Figure 2 Includes more details about positioning error estimation systems according to some embodiments of the present disclosure. Figure 2 A detailed block diagram of the positioning error estimation system 110 is shown. Figure 2 The illustrated positioning error estimation system 110 may include a neighbor point selection module 112 ; a probability distribution calculation module 114 ; an error estimation module 116 ; and a result generation module 118 .

[0044] Positioning and positioning errors

[0045] Prior to describing each of the modules 112-118 that make up the positioning error estimation system 110, the manner in which the position of a receiver is estimated and the manner in which the positioning error for a given beacon placement is evaluated is described.

[0046] Estimating the position of the receiver based on the RSS vector obtained from the beacon can be a task of traversing the causal relationship of observing the RSS vector in reverse at a given arbitrary position. Here, an observation model that represents the relationship between observing the RSS vector r (=(r1,...,rM)T) at a position x (=(x,y)T) under a given position Xb (=(xb1,....,xbM)) can be defined. Note that M can be the number of beacons placed in the target environment. Since the value of the strength of the received signal observed at a given position will fluctuate due to various factors, the observation model can be appropriately represented by the conditional probability distribution p(r|x) of observing the RSS vector r conditioned on the given position x. Based on the conditional probability distribution p(r|x), the position x of the receiver can be estimated as the probability p(x|r) of assuming that the position x of the RSS vector r is observed. In some embodiments, the RSS vector r can be a set of observations.

[0047] Given the observation model p(r|x), the positioning error can be evaluated as the variance or square root of the variance of the probability distribution p(x^|x) of the estimated position x^ conditioned on the true position x. The probability distribution p(x^|x) can be calculated as the arithmetic expectation of the posterior probability distribution p(x^|r) of the estimated position x^ conditioned on the RSS vector r relative to the RSS vector r predicted at the true position x, as follows:

[0048]

[0049] Note that a parameter with a title (^) emphasis symbol in an equation represents an estimated value of a specific parameter and can be expressed as "b^", where in the sentences of this specification, 'b' represents a specific parameter and '^' represents a title.

[0050] Because it is difficult to calculate the expected value on the right side of equation (1), in some embodiments, it can be based on an alternative function The positioning error is approximately calculated. The approximate probability distribution of the substitution function p(x^|x) is as follows:

[0051]

[0052]

[0053] Wherein, the arithmetic expectation (mean value) Ep(r|x) in equation (1) can be approximated by the geometric expectation (mean value) Gp(r|x), and in addition, the normalization constant can be multiplied so that the function (Or, p~0(x^|x)) satisfies the normalization condition. X in the second equation may be a random variable. Note that in the sentences of the specification, functions with a wavy (~) emphasis symbol in equations may represent approximate functions and may be represented as "f~", where f represents a function. Also note that ξ^ may be a substitute for the estimated position x^ for normalization.

[0054] As described above, by replacing the arithmetic expectation (mean value) Ep(r|x) with the geometric expectation (mean value) Gp(r|x) in equation (1), the substitute function p~0(x^|x) can be obtained. The geometric expectation (mean value) Gp(r|x) can be normalized by the normalization constant (the denominator in equation (2)) so that the function p~0(x^|x) satisfies the normalization condition, thereby treating the substitute function p~0(x^|x) as a probability.

[0055] The function p~0(x^|x) can be easily computed because it consists only of the arithmetic expectation of the log-likelihood Ep(r|x)[log p(r|x^)] which can be evaluated analytically.

[0056] As a scalar measure for evaluating the localization error at an arbitrary position x, the mean square error E[(x^-x)2] can be approximately evaluated by using the function p~0(x^|x). In particular, the mean square error E[(x^-x)2] is calculated by numerical integration as follows:

[0057]

[0058] A set of discrete points can be defined in the target environment for numerical integration, x^(j) represents the jth discrete point in a region where the function p~0(x^|x) can be expected to be large, and Nx represents a subset of discrete points in this region.

[0059] Note that MSE can be used as the evaluation metric in equation (3) above. However, other error metrics may also be considered, such as MAE (mean absolute error), RMSE (root mean square error), RMSPE (root mean square percentage error), MAPE (mean absolute percentage error), etc. Note that MSE may correspond to the variance of the probability distribution p(x^|x), while RMSE corresponds to the square root of the variance of the probability distribution p(x^|x).

[0060] Alternative functions Derivation of

[0061] In the following, the probability distribution is described The probability distribution of the estimated position x^ conditional on the true position x is can be evaluated as the posterior probability distribution over a set r of at least one RSS The expectations are as follows:

[0062]

[0063] Assumptions is the approximate probability density function, where the expectation can be generalized by the average substituted, and the normalization constant is multiplied so that The normalization conditions are met as follows:

[0064]

[0065] in,

[0066] When q = 1, the approximate probability density function Corresponding to the original probability density function p(x^|x).

[0067] As an alternative function to approximate the original probability density function Instead of the arithmetic mean (q=1), the geometric mean (which is obtained by taking the limit as q approaches zero (q→0)) can be used as follows:

[0068]

[0069]

[0070] As mentioned above, the approximate probability distribution p~0(x^|x) can be easily calculated compared to the original probability density function p(x^|x) because it only contains the term This term can be evaluated and calculated analytically based on a given observation model p(r|x).

[0071] An example form of the observation model p(r|x) is

[0072] The observation model p(r|x) can be given as the product of the probabilities p(ri|x) of multiple beacons (i={1,...,M}). When the radio wave propagation model is the LDPL model, the specific form of the observation model p(r|x) can be given as follows:

[0073]

[0074] Where m i (x) = P0-10γ′log d i (x)

[0075] Figure 3 Schematic diagram of a radio wave propagation model 150 for use in conjunction with the positioning error estimation system 110 is shown. Figure 3As shown in the graph 210 of FIG. 210 , as the distance di between the position x of the receiver 202 and the position xbi of the beacon (i) 204 increases, the strength of the received radio wave (RSS) signal may decrease. In some embodiments, it is assumed that the RSS of each beacon may follow a normal distribution with a mean value mi(x) and a standard deviation σ, N(r;mi(x),σ2). However, other distributions of RSS may also be considered.

[0076] Note that the LDPL model may be an example of a radio wave propagation model, and more complex radio wave propagation models or simulators may also be employed. In some embodiments, a radio wave propagation model that considers the azimuth angle qi of the direction of the receiver 202 relative to the reference direction of the beacon (i) 204 may be employed instead of or in addition to the distance di(x). In some embodiments, the radio wave propagation model may correspond to a signal propagation model.

[0077] Details about the modules in the positioning error estimation system

[0078] Return to reference Figure 2 , modules 112 - 118 of the positioning error estimation system 110 are described in more detail.

[0079] The neighboring point selection module 112 can be configured to select at least multiple neighboring positions x^(j) for each target position x(i) in a target environment where the expected function p~0(x^(j)|x(i)) is large. In some embodiments, a set of discrete points can be defined in the target environment. Each of the neighboring positions x^(j) and the target position x(i) can be given as one of the discrete points in the set. The set of neighboring positions x^(j) of the target position x(i) can be represented by Nx(i). Among all discrete points defined in the target environment, when the discrete point x^(j) satisfies a predetermined condition, an index j can be added to the set of neighboring positions Nx(i). The index can be a measure of determining the quality of the placement, for example, measuring the effectiveness of the placement.

[0080] In some embodiments, multiple neighboring positions may be selected by finding positions within a range determined by the RSS vector r(x(i)) predicted at the target position x(i) in a manner based on the observation model p(r|x). The predetermined conditions for selecting neighboring positions will be described in more detail later.

[0081] The probability distribution calculation module 114 can be configured to approximately calculate the probability distribution p~0(x^(j)|x(i)) of the estimated position x^(j) conditioned on the target position x(i) at the adjacent position x^(j) (j is included in Nx(i)) for each target position x(i) by using the observation model p(r|x) provided by the radio wave propagation model 150.

[0082] In some embodiments, the probability p~0(x^(j)|x(i)) of the estimated position x^(j) conditioned on the target position x(i) can be calculated by calculating the geometric mean Gp(r|x(i)). The geometric mean Gp(r|x(i)) can be calculated by calculating the arithmetic expectation value (mean value) Ep(r|x(i))[log p(r|x^(j))] of the log-likelihood of the estimated position x^(j) relative to the RSS vector r(x(i)) predicted at the target position x(i), and by calculating the exponent exp[Ep(r|x(i))[log p(r|x^(j))]] of the expected value. The geometric mean Gp(r|x(i)) can be normalized by a normalization constant, which can be calculated from the expected Ep(r|x(i))[log p(r|x^(j))] calculated for the set of neighboring positions x^(j) (j is included in Nx(i)). As described above, the geometric mean Gp(r|x(i)) normalized by the normalization constant can approximate the probability distribution p(x^|x(i)) of the estimated position x^ conditioned on the target position x(i). The geometric mean Gp(r|x(i)) can be suitable for the case where the observation model p(r|x) is given in the form of the product of the probability p(ri|x) of the beacon (i={1,...,M}) and the normal distribution.

[0083] In some embodiments, the probability p~q(x^(j)|x(i)) of the estimated position x^(j) conditioned on the target position x(i) can be calculated by calculating a special case of the generalized mean Mqp(r|x(i))[p(x^(j)|r)] of the likelihood of the estimated position x^(j) relative to the RSS vector r(x(i)) predicted at the target position x(i), and the generalized mean can be normalized by a normalization constant. When the limit is taken when q approaches zero (q->0), the special case can be the geometric mean Gp(r|x(i)), and the probability p~q(x^(j)|x(i)) can be equivalent to the probability of some embodiments. Depending on the specific circumstances of the observation model p(r|x), other special cases of the generalized mean Mqp(r|x(i)) can also be considered.

[0084] The error estimation module 116 can be configured to calculate an evaluation metric for each target position x^(i) by using a probability distribution p~0(x^(j)|x(i)) calculated over neighboring positions x^(j) (j is included in Nx(i)). In some embodiments, the evaluation metric for evaluating the positioning error can be defined as the variance of the probability distribution p~0(x^(j)|x(i)), as follows:

[0085]

[0086] The target position X(i) may vary within a set of discrete points X(={x(1), x(2), ..., x(N)}). Therefore, an evaluation metric may be obtained for each of the target positions in the set X(={x(1), x(2), ..., x(N)}). The result generation module 118 may be configured to generate and output at least one selected from the group consisting of a positioning error estimated for an arbitrary position X(i), a map of the distribution of positioning errors on the target environment X(={x(1), x(2), ..., x(N)}), a graphical representation of a statistical analysis of the estimated positioning error (such as a histogram), statistics of the estimated positioning error (e.g., mean, median, quantile, etc.), or a combination thereof.

[0087] In some embodiments, the error estimation module 116 may also be configured to generate an indication of weaknesses and / or planes of improvement for a given beacon placement based on the above results by performing rule-based analysis, machine learning, etc.

[0088] In some embodiments, Figure 1 The positioning error estimation system 110 and the radio wave propagation model 150 described in Figure 2 The modules 112-118 of the positioning error estimation system 110 described in the specification may be implemented as software modules including program instructions and / or data structures in combination with hardware components such as processors, memories, etc.; as hardware modules including electronic circuits; or as a combination thereof.

[0089] Modules 112 - 118 may be implemented on a single computer device, such as a personal computer and server machine, or in a distributed manner on multiple devices, such as a computer cluster of computer devices, a client-server system, a cloud computing system, an edge computing system, and the like.

[0090] In the following, reference Figure 4-6 , describes a novel process for estimating positioning error for a given beacon placement according to some embodiments of the present disclosure. Figure 4 is a flow chart describing a novel process for localization error estimation. Figure 4 The process shown can be performed by a processing circuit, such as implementing Figure 1 The positioning error estimation system 110 and its Figure 2 Modules 112-118 are shown as processing units of a computer system.

[0091] For example, in response to receiving a request for a positioning error estimate from an operator, Figure 4 The illustrated process may begin at step S100 .

[0092] In step S101, the processing unit may obtain input data of beacon placement and the target environment where the beacon is to be installed. The request received in step S100 may specify conditions for positioning error estimation, including beacon placement and the target environment. In step S102, the processing unit may set discrete points X (={x(1), x(2), ..., x(N)}) in the target environment.

[0093] Figure 5 Schematic diagram showing the discrete points and beacon placement setup in the target environment. Figure 5 It can be described using a square grid or grid. Figure 5 In the target environment 220, a set of vertical lines 222 and a set of horizontal lines 224 may be defined. The vertical lines 222 and the horizontal lines 224 may have predetermined intervals, respectively. The grid points 226 may be defined as the intersections of the vertical lines 222 and the horizontal lines 224. Figure 5 In the figure, a set 204.1, 204.2, 204.3, 204.4, 204.5 to 204.n of beacons (i=1,....M) are placed in the target environment, and the beacon placement is represented by Xb(=(xb1,....,xbM)), where the position xbi of the beacon (i) is given by the two-dimensional coordinates (xbi,ybi)T.

[0094] In some embodiments, the domain of positions x in the target environment can be discretized into equally spaced grid points, particularly a square grid. However, the manner of discretizing the domain of x in the target environment may not be limited to a square grid. In some embodiments, equally spaced grid points other than a square grid, such as a hexagonal grid and non-uniformly spaced discrete points, may also be considered.

[0095] Return to reference Figure 4 , the loop from step S103 to step S108 may be executed by the processing unit for each discrete point x(i) in the set X. The discrete point of interest processed in the current loop may be referred to as a target point (position) x(i).

[0096] In step S104, the processing unit may select a neighboring point (position) x(j) (j included in Nx(i)) for the target point x(i), where the RSS vector r(x(j)) predicted at the neighboring point x(j) may be included within a predetermined range relative to the target point x(i). The predetermined range may be determined by the RSS vector r(x(i)) predicted at the target point x(i) using the radio wave propagation model 150.

[0097] In some embodiments, the j-th point x(j) that satisfies the following condition: r(x^((i)))-3σ≤r(x^((j)))≤r(x^((i)))+3σ is identified as a neighboring point, and its index j is added to the index set Nx(i) adjacent to x(i). A subset of elements that satisfy the aforementioned conditions for all components of the RSS vector can be extracted from the set X.

[0098] Note that extracting a subset from the set X may be optional. However, it may be preferred to perform the extraction of the subset in order to balance the computational cost with respect to the number of beacons. As the number of beacons increases, the computational cost generally tends to increase, however, the accuracy also improves. Therefore, the number of neighboring points that need to be evaluated will be reduced. Therefore, by extracting neighboring points x(j) from the set of discrete points X, the increase in computational cost as the number of beacons increases can be suppressed.

[0099] Figure 6 FIG. 2 shows a method for extracting neighboring points x(j) around a target point x(i) 228 in a target environment 220. Figure 6 As shown, the neighboring points x(j) 229 included in the predetermined range 230 given by the target point x(i) can be extracted to generate a subset (Nx(i)). Note that in some embodiments, the grid of the target point x(i) and the grid of the neighboring point x(j) can be shared. However, in some embodiments, the grid of the neighboring point x(j) can be different from Figure 7 The grid of target points x(i) is shown.

[0100] Figure 7 FIG. 2 shows a method of extracting neighboring points around a target point in a target environment 250 according to some embodiments. A first set 252 of vertical lines and a first set 254 of horizontal lines are defined in the target environment 220. Figure 7 As shown, a second set of vertical lines 262 and a second set of horizontal lines 264 are also defined. The grid point 256 of the target point x(i) is defined as the intersection of the first vertical line 252 and the first horizontal line 254. The grid point 260 of the adjacent point x(j) is defined as the intersection of the second vertical line 262 and the second horizontal line 264. Figure 7 In the illustrated embodiment, the grid of neighboring points x(j) may be denser than the grid of target point x(i).

[0101] Return to reference Figure 4In step S105, the processing unit may calculate the arithmetic expectation Ep(r|x(i))[log p(r|x^(j))] of the log-likelihood of each neighboring point x^(j) (j included in Nx(i)) based on the radio wave propagation model 150. The expected value Ep(r|x(i))[log p(r|x^(j))] of the log-likelihood of each neighboring point x^(j) before normalization may be set to an array f(x(j); x(i)) stored in a memory space.

[0102] In step S106, the processing unit may calculate the approximate probability p~0(x^(j)|x(i)) of the estimated position x^(j) conditioned on the target position x(i) for each of the neighboring points x^(j) (j is included in the subset Nx(i)) by performing the following normalization:

[0103]

[0104] Note that normalization can be performed so that the function p~0(x^(j)|x(i)) can satisfy the normalization condition, thereby treating the function p~0(x^(j)|x(i)) as a probability. Normalization can be performed. However, in some embodiments, normalization can be omitted. The distribution of f(x(j); x(i)) can generally be obtained so that it becomes higher near the target position x(i) and becomes lower as the distance from the target position x(i) increases. The probability p~0(x^(j)|x(i)) can be calculated in some way by considering the shape 270 (wide or narrow, curvature, etc.) of the distribution f(x(j); x(i)) around the target position x(i) 258.

[0105] In step S107, the processing unit may calculate the evaluation metric by using the approximate probability distribution p~0(x^(j)|x(i)). MSE(x(i)) may be calculated as follows:

[0106]

[0107] Another evaluation metric RMSE(x(i)) can be calculated as follows:

[0108]

[0109] When the process from step S104 to step S107 has been performed for each discrete point x(i) in the set X, the process may exit the loop and proceed to step S109.

[0110] In step S109 , the processing unit may generate a result based on the evaluation metric calculated for the discrete point x(i) in the set X. In step S110 , the processing unit may output the generated result, and the process may end in step S111 .

[0111] According to the above-described embodiments, a novel technique capable of evaluating the placement of a device with balanced computational cost and evaluation accuracy can be provided, as will be described later in the experimental study section.

[0112] In terms of the assessment of beacon placement, it may be relevant to quantify the positioning accuracy by using a lower bound (Cramér-Rao lower bound) on the positioning error defined by a radio wave propagation model such as the LDPL model and the geometric arrangement of the receiver and the beacon. A lower bound (Cramér-Rao lower bound) on the covariance of the unbiased estimate of the position x^ can be given by the inverse J(x) of the FIM (Fisher Information Matrix). For example, the trace (J(x)-1), a lower bound on the mean square error, can be used as a metric to assess positioning accuracy.

[0113] However, the related art is not suitable for designing beacon placement because the technique is only applicable to evaluating the positioning accuracy when the position can be accurately estimated from the observed RSS value, and it is difficult to evaluate the positioning accuracy when the positioning accuracy is low. Specifically, the related art may be effective only when the probability density function of the estimated position can be approximated by a normal distribution. When it is difficult to approximate the probability density of the estimated position with a normal distribution, catastrophic errors occur. Therefore, under conditions where beacons are sparsely distributed or the receiver is very close to the beacon, it may be difficult to accurately evaluate the positioning accuracy.

[0114] In contrast, compared to related techniques that quantify positioning accuracy by using a lower bound on the positioning error, the novel positioning error estimation according to one or more embodiments of the present disclosure may provide a way to more accurately assess positioning accuracy at a reasonable computational cost.

[0115] In the above-described embodiments, the computer-implemented method, computer system, and computer program product for evaluating beacon placement can be used for indoor positioning, where the positioning error of the target location is calculated as an evaluation metric. However, the novel placement evaluation technique can be applied to evaluating the placement of base stations for outdoor positioning. In addition, the novel placement evaluation technique can be applied to evaluating the placement of a collection of signal transmitting devices that transmit signals in the form of any physical phenomenon other than radio waves (e.g., sound waves, ultrasonic waves, electromagnetic waves, etc.). The novel placement evaluation technique can be applied to evaluation metrics for applications other than positioning error.

[0116] Experimental studies

[0117] According to some embodiments, implementing Figure 1 and 2 The positioning estimation system shown and Figure 4 The program of the process described is coded and executed for given conditions.

[0118] Experiment I

[0119] A target environment of 40m×40m area with 25 randomly placed beacons is defined. The interval between two adjacent grids can be 1m in both vertical and horizontal dimensions. A grid can be shared by a target location x(i) and the neighboring locations x^(j) around the target location x(i).

[0120] Instead of the true positioning error, the root mean square error can be calculated as a calibrator evaluation metric for each grid point through Monte Carlo simulation. More specifically, for each iteration, an RSS vector y(l) can be generated for a given position x according to an observation model p(y|x) with normally distributed random numbers, and the maximum likelihood estimate (MLE) of the MLE of the position x^(l) is found for the generated RSS vector y(l). The iteration can be repeated NMC times to calculate the RMSE for each position x, which is called RMSEMC(x).

[0121] As Comparative Example 1, the estimated value of RMSECE1(x) can be calculated for each position x by a related art method (referred to as a correlation method) that quantifies positioning accuracy based on a lower limit of positioning error (Bishop, Adrian N., et al. "Optimality analysis of sensor-target localization geometries." Automatica 46.3 (2010): 479-492.).

[0122] As Example 1, an estimate of RMSEE1(x) may be calculated for each position x by the novel positioning error estimation described above (referred to as the proposed method).

[0123] For Comparative Example 1 and Example 1, the calculation time can be given by Core TM The computer with i7-6820HQ CPU (2.70GHz) is used for measurement. Moreover, the correlation coefficient between RMSEMC(x) can be estimated by Monte Carlo simulation, and the estimated values ​​of the positioning errors of Comparative Example 1RMSE1(x) and Example 1RMSE1(x) are calculated. The correlation coefficients and calculation times of Example 1 and Comparative Example 1 can be summarized in Table 1.

[0124] Table 1

[0125]

[0126] Figure 8A graph 300 is shown showing the distribution of the positioning error RMSEMC(x) calculated by Monte Carlo simulation for a target environment of a 40m×40m area with 25 beacons randomly placed. In the graph 300, the positions of the beacons can be indicated by black circles, and the grayscale values ​​represent the RMSEMC.

[0127] Fig. 9 A first plot 310 is depicted, which shows Figure 8 , the correlation between RMSECE1 calculated by the correlation method and RMSEMC calculated by Monte Carlo simulation in the environment shown. A second plot 320 is also shown, which shows Figure 8 In the environment shown, the correlation between RMSEE1 and RMSEMC calculated by the proposed method. The correlation coefficient can represent the evaluation accuracy of the positioning error estimation. A large value of the correlation coefficient can indicate a high evaluation accuracy, indicating a better positioning error estimation. Fig. 9 In the plot shown, ideally the positioning error can be estimated to a reasonable value so that the points are plotted on a diagonal line.

[0128] As shown in Table 1 and Fig. 9 As shown, it can be proved that the proposed method can estimate the positioning error distribution quickly enough in practical use and has higher accuracy than other methods. Note that the reason why the calculation time of the related method (Comparative Example 1) may be shorter is that the related method analytically evaluates the positioning error after approximating the probability density of the position using the normal distribution.

[0129] Experiment II

[0130] A target environment of 30m×30m area with 9 randomly placed beacons is defined. The grid spacing is 1m, and the grid is shared by the target position x(i) and the neighboring position x^(j).

[0131] The baseline RMSEMC can be calculated by Monte Carlo simulation. As for Comparative Example 2, the estimated value of RMSECE2(x) can be calculated by a related method. For Example 2, the estimated value of RMSEE2(x) can be calculated for each position x by the proposed method.

[0132] Fig.10 Graph 330 shows the distribution of positioning error RMSEMC(x) calculated by Monte Carlo simulation for a target environment of a 30m x 30m area with 9 beacons randomly placed.

[0133] exist Fig.11 In the first plot 340, Fig.10 The second plot 350 shows the correlation between RMSECE2 and RMSEMC for the relevant methods in the environment shown. Fig.10The correlation between RMSEE2 and RMSEMC of the proposed method in the environment shown. Fig.11 As shown, the proposed method is able to estimate the localization error distribution more accurately than the related methods even in an environment where beacons are sparsely distributed. In contrast, the performance of the related methods degrades significantly under sparse conditions.

[0134] Although advantages have been described with respect to being achieved with one or more specific embodiments according to the present disclosure, it should be understood that some embodiments may not have these potential advantages, and that these potential advantages are not necessarily required of all embodiments.

[0135] In addition, in some embodiments of the present disclosure, the method may additionally include a computer-implemented method for evaluating the placement of a set of devices in an environment. An evaluation metric may be calculated based on a function of the estimated position conditioned on the target position. The evaluation metric may be output. The evaluation metric may be calculated by using a probability distribution, the probability distribution being calculated as the arithmetic mean of the probability distribution of the estimated position conditioned on the set of observations relative to the set of predicted observations at the target position, and the probability distribution is approximated by a function, and the function is obtained by replacing the arithmetic mean with a geometric mean.

[0136] Furthermore, in some embodiments, the geometric mean may be normalized by a normalization constant so that the function satisfies a normalization condition.

[0137] Computer hardware components

[0138] Reference now Fig.12 , which shows a schematic diagram of an example of a computer system 10 that can be used in the positioning error estimation system 110. Fig.12 The computer system 10 shown can be implemented as a computer system. The computer system 10 is only an example of a suitable processing device and is not intended to impose any limitations on the scope of use or functionality of the embodiments of the present disclosure described herein. In any case, the computer system 10 can be implemented and / or perform any of the functions set forth above.

[0139] The computer system 10 may operate with numerous other general or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and / or configurations suitable for use with the computer system 10 include, but are not limited to, personal computer systems, server computer systems, thin clients, fat clients, handheld or laptop devices, vehicle-mounted devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments including any of the above systems or devices, etc.

[0140] Computer system 10 may be described in the general context of computer system executable instructions, such as program modules, executed by the computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, etc. that perform specific tasks or implement specific abstract data types.

[0141] like Fig.12 As shown, computer system 10 may be shown in the form of a general-purpose computing device. Components of computer system 10 may include, but are not limited to, a processor (or processing unit) 12 and a memory 16 coupled to processor 12 via a bus, including a memory bus or memory controller, and a processor or local bus using any of a variety of bus architectures.

[0142] Computer system 10 typically includes a variety of computer system readable media. Such media can be any available media that can be accessed by computer system 10, and can include volatile and non-volatile media, removable and non-removable media.

[0143] Memory 16 may include computer system readable media in the form of volatile memory, such as random access memory (RAM). Computer system 10 may also include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, storage system 18 may be provided for reading from and writing to non-removable, non-volatile magnetic media. Storage system 18 may include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of embodiments of the present disclosure.

[0144] A program / utility having a set (at least one) of program modules, as well as an operating system, one or more application programs, other program modules, and program data, may be stored in storage system 18, as an example and not limitation. Each of the operating system, one or more application programs, other program modules, and program data, or some combination thereof, may include an implementation of a networking environment. The program modules generally perform the functions and / or methods of embodiments of the present disclosure as described herein.

[0145] The computer system 10 may also communicate with one or more peripheral devices 24, such as a keyboard, pointing device, car navigation system, audio system, etc.; a display 26; one or more devices that enable a user to interact with the computer system 10; and / or any device that enables the computer system 10 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may occur via an input / output (I / O) interface 22, however, the computer system 10 may communicate with one or more networks, such as a local area network (LAN), a general wide area network (WAN), and / or a public network (e.g., the Internet) via a network adapter 20. As described, the network adapter 20 communicates with the other components of the computer system 10 via a bus. It should be understood that, although not shown, other hardware and / or software components may be used in conjunction with the computer system 10, examples of which include, but are not limited to, microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.

[0146] Computer program implementation

[0147] Various aspects of the present invention are described herein with reference to the flow chart and / or block diagram of the method, device (system) and computer program product according to embodiments of the present invention. It will be understood that each frame of the flow chart and / or block diagram and the combination of frames in the flow chart and / or block diagram can be implemented by computer-readable program instructions.

[0148] These computer-readable program instructions can be provided to a processor of a computer or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device create a device for implementing the functions / actions specified in one or more boxes of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, which can guide the computer, programmable data processing device and / or other equipment to work in a specific manner, so that the computer-readable storage medium having the instructions stored therein includes an article of manufacture, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes of the flowchart and / or block diagram.

[0149] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, so that a series of operational steps are performed on the computer, other programmable apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable apparatus, or other device implement the functions / actions specified in one or more boxes of the flowchart and / or block diagram.

[0150] Flowcharts and block diagrams in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention.In this regard, each frame in the flow chart or block diagram can represent a module, segment or part of an instruction, which includes one or more executable instructions for realizing the specified logical function.In some alternative embodiments, the function noted in the frame may not occur in the order noted in the figure.For example, two frames shown continuously can actually be implemented as a step, and are performed simultaneously, substantially simultaneously, in a partially or entirely time-overlapping manner, or these frames can sometimes be performed in reverse order, depending on the function involved.It will also be noted that the combination of the frames in each frame of the block diagram and / or flow chart illustration and the block diagram and / or flow chart illustration can be implemented by a dedicated hardware-based system that performs a specified function or action or performs a combination of special-purpose hardware and computer instructions.

[0151] The description of various embodiments of the present disclosure has been presented for illustrative purposes, but is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terms used herein are selected to explain the principles of the embodiments, practical applications, or technical improvements existing in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.

[0152] The description of various embodiments of the present disclosure has been presented for illustrative purposes, but is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terms used herein are selected to explain the principles of the embodiments, practical applications, or technical improvements existing in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.

Claims

1. A computer-implemented method of evaluating placement of a collection of devices in an environment, the method comprising: Providing a received signal strength RSS propagation model of the environment; providing an observation model from the RSS propagation model, the observation model being represented by a conditional probability distribution p(r|x) of observing an RSS vector r conditioned on a given position in the environment; Given the observation model, based on the following approximate probability distribution Function Calculate the positioning error: in, represents the estimated position conditioned on the RSS vector r The posterior probability distribution of represents the posterior probability distribution The geometric expectation of Indicates estimated position is the conditional probability distribution of the conditional RSS vector r, Represents the conditional probability distribution The arithmetic expectation of the log-likelihood of , Represents the estimated position used for normalization , G[X] represents the geometric expectation of the random variable X, and E[logX i ] indicates X i The arithmetic expectation of the log-likelihood of ; Obtaining a target location represented by a set of discrete points X defined in the environment; Calculating an evaluation metric for each target position x(i) in the target positions, wherein calculating each evaluation metric comprises: Predicting the RSS vector r(x(i)) of the target position x(i) in the set of discrete points X by the observation model; Selecting a subset Nx(i) of points from the set of discrete points X within a predetermined range of the RSS vector r(x(i)) predicted for the target position x(i); Calculate the adjacent positions conditioned on the target position x(i) The approximate probability distribution of where j is included in Nx(i), where the calculation includes for each neighboring position Compute the expected log-likelihood in Indicates adjacent position is the conditional probability distribution of the RSS vector r conditional on ; and Evaluation of the adjacent locations The approximate probability distribution calculated for each The variance of .

2. The method according to claim 1, wherein: The approximate probability distribution is calculated by calculating the geometric mean Gp(r|x(i)) And wherein the calculating further comprises calculating the expected index.

3. The method according to claim 2, wherein: The geometric means are normalized by a normalization constant.

4. The method according to claim 3, wherein: Based on at least the adjacent position The normalization constant is calculated by taking the expectation of each calculation in .

5. The method according to claim 1, wherein: The method further comprises: changing the target position within the set of discrete points X; and A positioning error distribution map of the environment is output based on the evaluation metric.

6. The method according to claim 1, wherein: The method further comprises: changing the target position x(i) within the set of discrete points X; and An index representing placement of a set of devices in the environment is output based on the evaluation metric.

7. The method according to claim 1, wherein: The set of devices includes a set of signal transmitting devices corresponding to observed RSS vectors, wherein each signal transmitting device includes a beacon for positioning performed by a receiver, each observed RSS vector represents a signal strength received by the receiver, and the evaluation metric represents a positioning error.

8. The method according to claim 1, wherein: The method further comprises: Beacons are placed within the environment based on the evaluation metric.

9. The method of claim 1, further comprising generating a result based on an evaluation metric calculated for each of the target positions x(i).

10. The method according to claim 9, wherein: The generating results includes outputting a map of the positioning error distribution over the environment.

11. The method of claim 10, further comprising outputting an indication of a weakness in the environment based on the map of the positioning error distribution.

12. The method of claim 1, wherein each discrete point from the subset Nx(i) satisfies the following condition:

13. The method according to claim 1, wherein the calculating the approximate probability distribution This includes the following normalization: in, Array f(x (j) ;x (i) ) represents the arithmetic expectation E of the log-likelihood of each adjacent position x(j) of the target position x(i) p(r|x(i)) [logp(r|x (j) )].

14. The method of claim 13, wherein the evaluation metric is a mean square error, the mean square error being defined as The variance of is as follows: in, represents the mean square error of the target position x(i).

15. The method of claim 1, wherein the observation model is given as follows: Where m i (x) = P0-10γ′log d i (x), M represents the number of beacons in the target environment.

16. A system for evaluating placement of a collection of devices in an environment by executing program instructions, the system comprising: A memory storing the program instructions; a processing circuit in communication with the memory, for executing the program instructions, wherein the processing circuit is configured to: Providing a received signal strength RSS propagation model of the environment; providing an observation model from the RSS propagation model, the observation model being represented by a conditional probability distribution p(r|x) of observing an RSS vector r conditioned on a given position in the environment; Given the observation model, based on the following approximate probability distribution Function Calculate the positioning error: in, represents the estimated position conditioned on the RSS vector r The posterior probability distribution of represents the posterior probability distribution The geometric expectation of Indicates estimated position is the conditional probability distribution of the conditional RSS vector r, Represents the conditional probability distribution The arithmetic expectation of the log-likelihood of , Represents the estimated position used for normalization , G[X] represents the geometric expectation of the random variable X, and E[logX i ] indicates X i The arithmetic expectation of the log-likelihood of ; Obtaining a target location represented by a set of discrete points X defined in the environment; Calculating an evaluation metric for each target position x(i) in the target positions, wherein calculating each evaluation metric comprises: Predicting the RSS vector r(x(i)) of the target position x(i) in the set of discrete points X through the observation model; Selecting a subset Nx(i) of points from the set of discrete points X within a predetermined range of the RSS vector r(x(i)) predicted for the target position x(i); Calculate the adjacent positions conditioned on the target position x(i) The approximate probability distribution of where j is included in Nx(i), where the calculation includes for each neighboring position Compute the expected log-likelihood in Indicates adjacent position is the conditional probability distribution of the RSS vector r conditional on ; and Evaluation of the adjacent locations The approximate probability distribution calculated for each The variance of .

17. The system of claim 16, wherein: The approximate probability distribution is calculated by calculating the geometric mean Gp(r|x(i)) And wherein the calculating further comprises calculating the expected index.

18. The system of claim 17, wherein: The geometric mean is normalized by a normalization constant, and the normalization constant is based on the geometric mean of the neighboring positions. The expectation of each calculation in is calculated.

19. The system of claim 16, wherein: The processing circuit is further configured to: changing the target position within the set of discrete points X, Based on the calculated evaluation metric, at least one selected from the group consisting of: an evaluation metric for a given location in the environment, a positioning error distribution map of the environment, and an index, each index representing the quality of placement of a set of devices in the environment based on statistics of the evaluation metric calculated for the discrete points.

20. A computer program product for evaluating placement of a collection of devices in an environment, the computer program product comprising: Program instructions, which can be executed by a processor to cause the processor to perform the method according to any one of claims 1-15.

Citation Information

Patent Citations

  • Infrastructure for location discovery

    US20100246485A1