A crucial step during commissioning of wireless sensor and automation networks is assigning high-level node addresses (e.g., floor/room/fixture) to nodes mounted at their respective location. This address assignment typically requires visiting every single node prior to, during, or after mounting. For large-scale networks it also presents a considerable logistical effort. This paper describes a new approach to automatically assign high-level addresses without visiting every node. First, the wireless channel is simulated using a deterministic channel simulation in order to obtain node-to-node estimates of path loss. Next, the channel is measured by a precommissioning test procedure on the live network. In a third step, results from measurements and simulation are condensed into graphs and matched against each other. The resulting problem, identified as weighted graph matching, is solved heuristically. Viability of the approach and its performance is demonstrated by means of a publicly available test data set, which the algorithm is able to solve flawlessly. Further points of interest are the conditions that lead to high quality address assignments.
Building automation is not a new technology. However, with the advent of smart environments and the Internet of Things, the topic is again the focus of increased attention. This is especially true for
By
Some protocols are explicit in their distinction between low-level address and high-level address. Other protocols, such as ZigBee, rely on low-level addresses for communication but support high-level roles with group membership or binding tables. High-level addresses become explicit again if dealt with in the context of a deployment plan or professional commissioning tool. Address assignment is a necessary step of commissioning of automation networks.
While this work deals with both location and wireless channel measurements, it is different from the field of sensor node localization. Localization is typically a continuous problem; address assignment is a combinatorial problem. It is range free; that is, it does not assume any empirical relation between signal attenuation and distance. It does not rely on fingerprinting the wireless channel and does not need anchor nodes like indoor GPS. Instead, it uses a deterministic channel simulation to deal with the problems of multipath propagation. There is an ample body of literature showing that indoor localization based on channel measurements alone is not able to provide the necessary precision to reliably and unambiguously identify mounting locations with acceptable error rate.
This work is also not about autoconfiguration protocols. The latter are the consumers of the address mapping produced by address assignment. A device without flash memory can use an autoconfiguration protocol to download its configuration from network management. But network management needs to have prior knowledge about the mapping between hardware addresses and configuration records.
Address assignment is relatively expensive because it traditionally requires manual intervention on a per-node basis. This work presents a novel way to conduct address assignment without manipulating nodes individually. The presented technique therefore bears the potential of substantially lowering the cost of commissioning wireless building automation networks.
The presented technique for address assignment works on a freshly installed network. The nodes are powered and an initial, maybe temporary, wireless network has been formed. No further parametrization is needed; the only perquisite is that nodes are reachable by hardware address.
We present the following three-step technique. Channel estimation: using the deployment plan of the network and the floor plan of the building as inputs, a three-dimensional deterministic channel simulation produces the Channel measurement: all participating nodes cooperate to perform measurements of the wireless channel, such as RSSI measurement. The measurements are transmitted to the management workstation to assemble the Matching algorithm: simulated and measured connectivity graphs are isomorphic. They are thus matched against each other, producing the sought after mapping between hardware addresses and logical addresses.
Measured and simulated connectivity graphs are depicted in Figure
The connectivity graphs for illustration purposes. Real ones are dramatically bigger and weights have added noise. (a) Simulated connectivity graph attributed with logical addresses based on device location. (b) Measured connectivity graph attributed with MAC addresses.
For the purpose of demonstrating the presented technique, the publicly available data set of King et al., recorded in 2008 at the University of Mannheim, is adapted and used [
This work assumes the prior availability of detailed computer readable plans of the building, as well as a deployment plan of the network. This requirement is easily satisfiable for large, professional installations because the necessary plans are provided by the planning agency as part of their contractual obligations. The plans need to be available before the responsible contractor can begin installation of the automation network. Indeed, it is a stated goal of this work to devise an address assignment technique that naturally fits into established work flows.
Traditionally, address assignment happens prior to, during, or after mounting [ Address assignment prior to mounting: the mapping is produced as soon as the hardware addresses of the components become known. From there, a plan is devised that documents which of the individual components should be installed into exactly which position. The components and the plan are handed to the installer who is responsible for the plan to be followed without errors [ Address assignment during mounting: the mapping is created on the fly by the installer. He may be supported by a commissioning tool that can automatically read and record hardware addresses from printed labels. Another option is that components do not require hardware addresses at all and instead the logical addresses are programmed by the installer on the fly [ Address assignment after mounting: components are mounted flexibly in any order. As part of the commissioning procedure, a technician visits every mounting location and records the hardware address of the component thereby creating the mapping. The important downside of this approach is that components may already be covered by panels, or components may be mounted in inaccessible locations. Luminaires, on the other hand, can locally transmit their MAC address out of band by modulating their light source [
All of the above is executed by workers on a per-devices basis, which is the major downside of the approach. It is a cost driver, a monotonous exercise, error prone, and requires extra training. The presented approach, by contrast, only requires few manual steps—all of those with network-wide impact.
Node localization is a related problem. It assumes no prior knowledge of mounting locations or, at least, does not make use of it. The field of node localization is of substantial breadth. Based on the taxonomies of [ Active localization—all system components emit signals. The cooperation of localization target with infrastructure is needed to compute locations. The algorithm is centralized. Sensing via RF RSS—measurements of received signal strength (RSS) or alternatively time of flight (TOF). In contrast to many systems based on RSS measurements, no empirical relationship between measured data and distance is assumed. The system needs no dedicated hardware other than what is available in industry standard sensor nodes. Multihop localization based on radio connectivity, multilateration, without anchors—physical locations are calculated based on the devices position in the networks connectivity graph. In contrast to other works, the usage of anchors—special nodes with preconfigured location—is optional. Locations are expressed symbolically (e.g., floor/room/fixture) and relatively to the particular structure or building.
For indoor localization based on signal attenuation, there are several approaches for overcoming the challenges presented by multipath propagation. Fingerprinting relies on building a detailed channel map of the building [
Alternatively, statistics can be used to combat the problems of multipath propagation by using a very dense network of anchors, up to several per room. While multipath propagation breaks the inverse-square-law relationship between signal attenuation and distance for any particular measurement, it still applies on average. Zanca et al. compared several localization algorithms [
Anchor selection algorithms, finally, combat the effects of multipath propagation by sorting anchors into those having line of sight to the localization target and those that do not have [
The informal description of the three-step process of address assignment is given in Section
All matrices are square matrices
The global offset
Vertex noise captures all deviations between measurement and simulation affecting a specific node. The physical phenomena underlying those deviations are related to the node itself and its immediate vicinity, most importantly the antenna and its misalignment or mistuning due to inappropriate placement or defects. The term
Vertex noise and edge noise as defined previously are expected to be Gaussian. This is due to the central limit theorem in the logarithmic domain. The delogarithmized equivalents of the adjacency matrices
Inferring distance directly from the values in
Distance versus RSSI of the test data set. The solid line is an empirical inverse-square-law model fitted to the data, with an inverse square of −3.7.
Sections
This section discusses the first step (channel estimation) of the three-step process outlined in Section
Since this work assumes availability of building and deployment plan, there is nothing to impede application of the most sophisticated channel models available, like ray-optical ray tracing. For the prototype presented in this work, AWE Software’s WinProp channel modelling software is used. Unless otherwise noted, we primarily consider the 2.4–2.48 GHz ISM band.
The channel is assumed to be static, that is, static enough that time variations need not be considered and cannot be taken advantage of. At commissioning time of the building automation network, the building is assumed uninhabited and network components are mounted in their respective fixtures.
The two main challenges for static indoor channels are line of sight (LOS) versus non line of sight (NLOS), as well as fading due to multipath propagation. Doppler fading is no concern for static channels. Polarization is dependent on antenna choices and, wherever known, can be adequately represented in the simulation. Badly oriented antennas of single nodes result in vertex noise and can be dealt with; confer Section
In the NLOS channel, good estimates for signal attenuation and reflection properties of the different materials are crucial. Signal attenuation varies between 1 dB for some types of dry walls and up to 60 dB for the thick walls of historical buildings. Metal plating acts as near-perfect shielding up to the sensitivity limit of measurement equipment, although in practice gaps in the plating allow some of the signal through. Attenuation due to reflection on surfaces is in the order of 15 dB for walls and furniture and in the order of 0.3 dB for metal-plated surfaces. Because the matching algorithm can tolerate a certain amount of noise, empirical estimates based on approximate wall thickness and material class are sufficient. It is, however, essential to model large metal surfaces, such as radiators, metal suspended ceilings, metal doors, and metallized surface coating on windows and glass doors. Easily overlooked metal surfaces are air and cable conduits above suspended ceilings. In most cases, modelling of those surfaces is not necessary because their overall contribution to the field configuration is limited enough—as long as they do not obstruct crucial propagation paths. (The point becomes apparent if the radar equation is considered. A reflection on relatively small metal surfaces does not change the overall distribution of RF energy within the indoor channel.) The Winprop software comes with a material database that adequately covers common cases of building materials.
Fading due to multipath propagation needs to be considered in any meaningful discussion of indoor channels. It is a highly localized (centimetres) phenomenon, which is geometry and frequency dependent, and causes local variations of the signal strength in the order of 30 dB [
Still, the effects of fading are severe enough that they need to be accounted for. This can either be done in the channel simulation or in the channel measurements. The Winprop software can do coherent simulations although in the 2.4 GHz band, where the free-space wavelength
The alternative approach is to measure the channel while avoiding fading effects. This is most easily done by measuring the channel at different frequencies. Wireless nodes compliant with IEEE 802.15.4 support 16 channels in the 2.4 GHz band, 5 MHz apart. If the coherence bandwidth (
The described approach to fading compensation is not possible in sub-GHz radio because the available frequency bands are too narrow to observe uncorrelated fading behaviour. Whether the larger wavelength makes coherent channel simulation practical is the subject of future testing.
Ray tracing and ray casting are Monte-Carlo methods for predicting wave propagation in cluttered environments. Taken together, the rays represent an unbiased sample approximating the field configuration. Clever sampling strategies, high quality geometry data, and realistic material parameters lead to high-quality channel models. Landstorfer reports standard deviations between measurements and simulations between 4.2 dB and 11.9 dB [
The most important phenomena to be modelled by raytracing are as follows. Reflection—especially specular reflection. Diffuse reflections (scattering) are of secondary concern in the microwave bands. Transmission—optionally considering refraction. Both reflection and transmission may be modelled based on Fresnel equations or based on empirical (measured) data. Diffraction—different approximations exist, with the ones receiving the most attention being the geometrical and the unified theory of diffraction [
Assembling
This section discusses the second step (channel measurement) of the three-step process outlined in Section
While the simulated connectivity graph can be created ahead of time, assembling the measured connectivity graph is an on-site activity. The wireless network is assumed noncommissioned, but the nodes are powered and an initial, maybe temporary, network has been formed by a procedure such as ZigBee network forming. Nodes are reachable via their low-level network or MAC address. The wireless channel can be measured as a whole, or the problem can be subdivided rudimentarily, for example, by only powering nodes on a particular floor or section of the building.
A procedure and protocol has been devised to gather the measured connectivity graph. It is formulated in terms of ZigBee, but it is not directly dependent on particular ZigBee features. Support for many-to-one routing, however, is desirable for fast and efficient data collection. The procedure works as follows. The network is put into graph-assembly mode, temporarily suspending routing and other network-layer mechanism. Participating nodes visit a set of channels. In each channel participating nodes listen for incoming graph-assembly beacons. Receivers are in promiscuous mode; that is, MAC filtering is suspended, as well as power cycling. Received beacons are stored in a graph-assembly table, also recording the beacon’s RSSI. Every node also sends a small number of graph-assembly beacons at random points of time in each channel, containing mainly its low-level address and device type. Stay time in each channel is chosen such that beacon collisions are sufficiently improbable. After the last visited channel, normal network operation is restored and the graph-assembly tables are downloaded to the data sink.
Based on the downloaded graph tables (cf. Table Each vertex is represented by one table; vertices are attributed with low-level address and node type descriptor. Each edge is represented by a pair of rows in the tables of the respective vertices. Edge weights are given by
Graph-assembly table.
Low-level address | Node type descriptor | TX-power | RSSI channel 1 | RSSI channel |
An alternative edge weight is given by
This section discusses the third step (matching algorithm) of the three-step process outlined in Section optionally thinning out edges with very small weights (e.g., −95 dB and below), estimation of the global offset, normalization, dynamic range compression, cancellation of vertex noise.
There is a strong correlation between distance and path loss (cf. Figure
In the simulation, receivers are not limited with respect to sensitivity or noise. The low end of the weight distribution in measured and simulated connectivity graphs therefore tends to look markedly dissimilar. There are more issues complicating things. Graph-assembly tables may be limited in size, which results in edges missing in the measured but not the simulated connectivity graph, also predominately at the low end. Edge noise also tends to be larger at the low end because inaccuracies with respect to material parameters and geometry tend to accumulate in transmission paths that are subject to several transmissions and reflections.
There is a tradeoff with respect to choosing which edges to keep and which to discard. Discarding many edges at the low end reduces noise and thereby increases the accuracy of the match and simultaneously lowers computation time of graph matching. The problem lies with choosing corresponding edges to discard in both graphs, especially considering that the graphs are permuted and the data is noisy. Eagerly discarding many edges means potentially discarding noncorresponding edges in measured and simulated connectivity graphs, and thereby amplifying a small amount of noise to a much bigger problem by having many unmatched edges.
The approach taken by the reference implementation is therefore to keep all edges. An alternative, but ultimately abandoned, approach is to try to minimize the number of unmatched edges by forcing the number of edges in both graphs to be equal. This can be achieved by discarding edges from the bottom of the simulated weight distribution until the number becomes equal. The strategy fails whenever there are outliers with respect to vertex noise. Vertices with high positive vertex noise end up almost without any edges, which reduces the quality of the match.
Finding the multipliers and stochastic matrices is achieved by applying the Sinkhorn-Knopp (SK) algorithm [
The transformed graphs
Since
The first part of (
The inputs into the SK algorithm (
This case is studied by first introducing modified vertex noise
In general,
The downside of vertex noise elimination is that the edge weight distribution of
This section discusses the third step (matching algorithm) of the three-step process outlined in Section performance—in the sense of low-order computational complexity; Zaslavskiy lists it amongst the best performing [ converges well on noisy data, deals with missing and spurious vertices and edges, takes advantage of optional vertex attributes, supports sparse problems, relatively simple and parallelizable algorithm, which makes it suitable for implementation with GPGPU (general purpose computation on graphics processing unit).
The graduated assignment approach of Gold and Rangarajan is related to deterministic annealing. It relaxes or convexifies the problem by first allowing values other than “0” and “1” in the vertex assignments. Instead of a permutation matrix, the algorithm computes a doubly stochastic matrix, indicating the similarity of vertices given no particular assignment. As the control parameter increases, the problem becomes increasingly nonconvex; the doubly stochastic matrix is pushed more and more towards a permutation matrix. The algorithm thereby avoids local minima because it started off in the global minimum of the convex problem and tracks the evolution of this global minimum from the maximally convex version of the problem to the original nonconvex version.
The algorithm is implemented using a combination of Matlab and CUDA. It performs well (minutes) for graphs up to 2000 vertices and 80000 edges, at which point the necessary data structures become too large to fit into GPU (Nvidia GeForce GTX 560 Ti, 384 CUDA cores, 2 GB RAM) memory.
Anchors are nodes for which the address assignment is known a priori. Typically, this is the network’s coordinator, nodes specially joined to the network for the sole purpose of commissioning, or any other node that the commissioning technician visits manually during the procedure. In terms of the matching algorithm, anchors are not unlike additional vertex attributes (like device type) in that they amend the objective function and thereby bias or restrict the state space. Indeed, anchors could be implemented within the formalism of Gold and Rangarajan in terms of vertex attributes, whereas each anchor corresponds to one extra global binary vertex attribute which is zero for all vertices except the anchor.
On the other hand, anchors are a column and row of the permutation matrix
Weighted graph matching is a least square-error optimization. This leads to ambiguity in the interpretation of matching errors, that is, misassigned nodes. An error can mean one of two things. The weighted graph-matching algorithm converged to a suboptimal solution. The weighted graph matching algorithm converged to the optimal solution and noise was biased in a way that made the wrong solution optimal.
For all but for toy-sized problems (less than approximately 11 vertices), it is essentially impossible to compare the result with the real optimal solution, so in the majority of cases the question cannot be answered.
The number of vertices in measured and simulated graphs may be unequal. Failure to transmit the graph-assembly table should not normally be the cause of missing vertices because the existence of the underlying node is evident in the graph-assembly tables of neighbouring nodes. Not working, not installed, or spuriously installed nodes, however, result in graphs of unequal sizes. The weighted graph-matching algorithm deals with that by introducing a suitable number of slacks. They should be introduced only in this stage because zero-sum rows and columns cause problems during vertex-noise elimination.
In order to demonstrate the viability of the approach, we leverage the data set originally collected by King et al. [
The site is modelled with WinProp (cf. Figure
Floor plan of the Mannheim site as viewed in the WinProp simulation tool. “Site x” are WiFi access points and “Node x” are the selected points of measurement and together form the simulated connectivity graph.
Raw measurement data versus simulation data. Measurements are cut off at −95 dBm due to interference and receiver sensitivity. “
Not included in the model are furniture, conduits above the suspended ceiling, columns of the building’s reinforced frame, details of the façade, and the characteristics of the reception antenna. Also unknown is the state of the metal doors (fully open/half open/closed) at the time of the measurements. In the simulation all doors are assumed closed. This may be one of the major contributors to noise in the test data set. Table
Most important configuration parameters of the ray-tracing simulation with WinProp.
Max transmissions/reflections/diffractions/scattering of each ray | 4/4/2/1 |
Total max interactions (reflections + diffractions + scattering) | 4 |
Uncorrelated simulation (not coherent, no phase) | |
Empirical loss model (not based on Fresnel equation) |
Figure
Measured versus simulated data, noise distribution, and no preprocessing except elimination of global offset. Outliers in vertex noise are due to modelling inaccuracies. As expected, edge noise fits the Gaussian model well, especially when expressed relatively to edge weight.
The data set of King et al. was recorded for the purpose of fingerprinting the channel rather than address assignment. Instead of wireless node-to-node measurement of RSSI, it contains measurements from access point to fingerprinting position. What is missing are RSSI measurements from access point to access point and from fingerprinting position to fingerprinting position.
The missing edges of the measured connectivity graph are estimated by taking values from the simulation and overlaying them with the noise profile extracted from comparing the available measurements with the corresponding data from the simulation; confer Figure
The experiment is set up as follows. Analyse noise, fill in missing edges in Apply random permutation Preprocess; use weighted graph matching to recover address assignment Compare
No anchors or additional vertex attributes are added to the data set.
There are two sources of randomness in the test data set and graph-matching procedure: the random Gaussian noise used to complement the measured connectivity graph and the random permutation. The results of ten test runs are therefore averaged.
The presented method of address assignment is able to perfectly match (34 of 34 vertices) the test data set. Figure
Artificial amplification of noise in the test data set. The factor in the abscissa scales a logarithmic quantity. Vertex noise is well suppressed and edge noise shouldnot be any bigger than
Figure
A second experiment is conducted with fully random graphs of 500 nodes. The graph
Edge noise versus vertex noise on random graphs of 500 vertices. Contrary to Figure
Section
In order to assess the potential general applicability of the method, it is necessary to put the experimental results of Section The site is difficult to handle because of metal-plated walls. The situation during which the measurement was performed by King et al. was more challenging and less controlled than what can be expected during typical application of the address assignment procedure (furniture, unknown state of metal-plated doors). Additional vertex attributes (especially device type) are not present in the data set but would be in typical applications.
Yet, the proposed address assignment procedure is able to solve the problem perfectly and reliably. This is achieved without low-level optimization of the material properties used in the ray tracer. The existence of outliers (vertex noise) in the data set and the fact that the proposed method is able to cope with it suggest that it will also cope with real-world challenges such as misplaced and inappropriately mounted nodes.
The results show that the proposed method of address assignment is able to significantly lower the cost of commissioning large-scale indoor wireless automation networks. This is achieved by changing a task that previously requires manual intervention on a per-node basis to one that is performed once, for the whole network.
Easy address assignment is an enabler for the Internet of Things because it is an enabler for ubiquitous positioning. The address assignment procedure provides as its byproduct a dense network of anchors (wireless nodes with known ID and known location) and a detailed channel map. This is precisely what indoor positioning systems as surveyed in Section
For industrial application of the proposed method, the different pieces of the solution have to be more closely integrated: building automation planning tool, 3D modelling package, ray tracer, and, last but not least, the matching procedure. This has to be done in a way that integrates with established industry procedures and with respect to roles and responsibilities. The architect or planner has to deliver 3D models of the structure, the planner of the automation network the deployment plan. Both have to be imported and refined in the ray tracer. Using the commissioning tool, the commissioning technician has to perform the channel measurement and do the graph matching. The resulting address assignment needs to be committed to the network, again using the commissioning tool.
Furthermore, the commissioning technician may decide on site to perform the procedure on the whole network or on smaller parts. The technician may have last minute changes or may define a small number of anchors, for example, in parts of the building where the ray-tracing model is lacking for some reason. The proposed procedure supports all these scenarios, but the tools need to be created.
Topics of future research include the study of applicability of the procedure to outdoor environments, for example, in environmental monitoring or street lighting scenarios. Some low-power wireless platforms also come with the ability to perform time-of-flight measurements. While the graph-matching stays the same, preprocessing the time-of-flight data poses different challenges.
The authors declare that there is no conflict of interests or competing financial interest related to the work described.
The work presented in this paper has been carried out in the SmartCoDe project, cofunded by the European Commission within the 7th Framework Programme (FP7/2007–2013) under Grant no. 247473.