d3.3: demonstration and evaluation of the context ... · and contextualization. location-based...

102
Grant Agreement No.: 688116 Call: H2020-ICT-2015 Topic: ICT-12-2015 Type of action: RIA D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms Revision: v.1.0 Work package WP3 Task Task 3.3 Due date 28/02/2018 Submission date Deliverable lead TCD Version 1.0 Authors Erika Fonseca (TCD), Luiz DaSilva (TCD), Yi Zhang(TCD), Shekhar Jain(TCD), Diarmuid Collins (TCD), Niels Karowski (TUB), Filip Lemic (TUB), Sven Zehl (TUB), Anatolij Zubow (TUB), Tomaz Solc (JSI), Carolina Fortuna (JSI), Klemen Bregar (JSI), Andrej Hrovat (JSI), Tomaž Javornik (JSI), Tobias Kadur (TUD), Martin Danneberg (TUD), Zhitao Lin (TUD), Martin Schlüter (TUD) Reviewers Shahab Ehsanfar (TUD) and Łukasz Kwiatkowski (ISW)

Upload: dangtram

Post on 27-Jul-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

Grant Agreement No.: 688116

Call: H2020-ICT-2015

Topic: ICT-12-2015 Type of action: RIA

D3.3: Demonstration and evaluation of the context provisioning and

sensing algorithms Revision: v.1.0

Work package WP3

Task Task 3.3

Due date 28/02/2018

Submission date

Deliverable lead TCD

Version 1.0

Authors Erika Fonseca (TCD), Luiz DaSilva (TCD), Yi Zhang(TCD),

Shekhar Jain(TCD), Diarmuid Collins (TCD), Niels Karowski

(TUB), Filip Lemic (TUB), Sven Zehl (TUB), Anatolij Zubow

(TUB), Tomaz Solc (JSI), Carolina Fortuna (JSI), Klemen Bregar

(JSI), Andrej Hrovat (JSI), Tomaž Javornik (JSI), Tobias Kadur

(TUD), Martin Danneberg (TUD), Zhitao Lin (TUD), Martin

Schlüter (TUD)

Reviewers Shahab Ehsanfar (TUD) and Łukasz Kwiatkowski (ISW)

Page 2: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 2 of 102

Abstract This deliverable show and review different sources of context

awareness in wireless networks. This is done with the end goal of

increasing the elasticity of next-generation wireless network, as

specified with the eWINE showcases. Moreover, we discuss an

approach for ultra-narrowband spectrum sensing and detect

relevant context information for two device-to-device

communication scenarios. As part of the document, we also discuss

location information where we cover our contribution to

cooperative localization and indoor localization. For the exchange

of the discussed context among interested network entities, the

document shows how can be provided diversity in the wireless

access to end users, as applying D2D to LTE and WiFi networks

experimentally, or with simulation with our distributed control

framework and a simulation framework.

Keywords Context provisioning; location information; radio environmental

map; spectrum sensing; device-to-device communication; network

control framework; front-end for wireless experimentation

Document Revision History

Version Date Description of change List of contributor(s)

V1.0

Disclaimer

The information, documentation and figures available in this deliverable, is written by the eWINE

(Elastic wireless networking experimentation) – project consortium under EC grant agreement 688116

and does not necessarily reflect the views of the European Commission. The European Commission is

not liable for any use that may be made of the information contained herein.

Confidential - The information contained in this document and any attachments are confidential. It is

governed according to the terms of the project consortium agreement

Copyright notice

Page 3: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 3 of 102

© 2016 - 2018 eWINE Consortium

Acknowledgment

This report has received funding from the EC under the grant agreement 688116

* R: Document, report (excluding the periodic and final reports)

DEM: Demonstrator, pilot, prototype, plan designs

DEC: Websites, patents filing, press & media actions, videos, etc.

OTHER: Software, technical diagram, etc

Project co-funded by the European Commission in the H2020 Programme

Nature of the deliverable: R

Dissemination Level

PU Public, fully open, e.g. web ✓

CI Classified, information as referred to in Commission Decision 2001/844/EC

CO Confidential to eWINE project and Commission Services

Page 4: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 4 of 102

EXECUTIVE SUMMARY

The purpose of this deliverable is to identify context information that can be used to improve the

elasticity of wireless networks. To create the context information, we use two approaches, localisation

and contextualization. Location-based services and context information in wireless networks need

accurate location information for mobile devices. Location information is a fundamental part of the

Showcase 1. In this deliverable, it is explained in a generalised architecture, in a cooperative scope and

also, in an indoor environment. From our simulations, we verified that the cooperative localization

algorithms could achieve better location of devices when compared to a non-cooperative algorithm. We

also investigate how to mitigate errors in indoor ambiences.

In the scope of contextualization, in Showcase 1, we explore the communication of device-to-device

(D2D) in two different ways. First, analysing the SNR and throughput to be used as a parameter to

decide an automatic mode selection. Second, we present different approaches to discover neighbours,

using cooperative information through the devices. We utilise the eWINE Intelligent End-to-End

Controller to collect relevant information and availability of the devices. The controller makes it possible

to compute a content exchange schedule on the network.

The reliable detection of other radio spectrum users is a critical component of future intelligent radios,

and it is explored in Showcase 2. It may also contain valuable context information. Ultra-narrowband

signals are an interesting approach as it is expected to be abundant in the near future. Additionally, we

discussed the capability of making informed decisions and the possibility of cooperating with other

technologies in a fair coexistent scenario. In this field, we also propose a channel list metric to classify

channels in white bands.

In Showcase 3, with the goal of accommodating different application requirements in a multi-RAT

scenario, we developed an extension to the WiSHFUL control framework that allows applications the

ability to express their communication needs. Finally, we utilise a load balancing over different PHYs,

what can provide a better experience end-to-end.

Page 5: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 5 of 102

TABLE OF CONTENTS

EXECUTIVE SUMMARY ....................................................................................................................4

TABLE OF CONTENTS .......................................................................................................................5

ABBREVIATIONS ................................................................................................................................7

1 INTRODUCTION ................................................................................................................10

2 CONTEXTUALIZATION ...................................................................................................13

2.1 SNR/throughput estimation for automated mode selection D2D ...........................................13

2.1.1 Introduction .............................................................................................................................13

2.1.2 System description and implementation details ......................................................................14

2.1.3 Evaluation ...............................................................................................................................16

2.2 Detecting ultra-narrowband signals ........................................................................................22

2.2.1 Introduction .............................................................................................................................22

2.2.2 System description ..................................................................................................................23

2.2.3 Implementation details ............................................................................................................25

2.3 Channel Quality (CQ) estimation ...........................................................................................27

2.3.1 Introduction .............................................................................................................................27

2.3.2 Deriving a channel quality estimator for spectrum sensing data ............................................27

2.3.3 Empirically estimating PRR ...................................................................................................29

2.3.4 Results.....................................................................................................................................32

2.3.5 Summary .................................................................................................................................34

2.4 Description of application requirements .................................................................................34

2.4.1 Introduction .............................................................................................................................34

2.4.2 System description ..................................................................................................................34

2.4.3 Illustrative Example ................................................................................................................36

2.4.4 Implementation details ............................................................................................................37

2.4.5 Evaluation ...............................................................................................................................37

2.5 Estimator for link quality by computing expected SNR based on (inaccurate) location

information .............................................................................................................................................38

2.5.1 Introduction .............................................................................................................................38

2.5.2 D2D Link Establishment Scenario .........................................................................................39

2.5.3 System description ..................................................................................................................40

2.5.4 Evaluation ...............................................................................................................................42

2.6 Cooperation in Neighbour Discovery .....................................................................................45

2.6.1 Executive Summary ................................................................................................................45

2.6.2 Introduction .............................................................................................................................46

2.6.3 Related work ...........................................................................................................................47

Page 6: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 6 of 102

2.6.4 System description ..................................................................................................................48

2.6.5 Cooperation in neighbour discovery .......................................................................................49

2.6.6 Evaluation ...............................................................................................................................52

2.6.7 Conclusion ..............................................................................................................................57

2.7 Throughput measurements and interface for load balancing between several PHY

technologies (mmWave, GFDM) ...........................................................................................................57

2.7.1 Introduction .............................................................................................................................57

2.7.2 System description ..................................................................................................................58

2.7.3 Implementation details ............................................................................................................60

2.7.4 Evaluation ...............................................................................................................................61

3 LOCALIZATION .................................................................................................................63

3.1 Generalized architecture .........................................................................................................63

3.1.1 Introduction .............................................................................................................................63

3.1.2 High-Level Overview of the SLSR ........................................................................................64

3.1.3 Design of the SLSR ................................................................................................................65

3.1.4. Implementation of the SLSR ..................................................................................................67

3.1.5. Instantiation of the SLSR ........................................................................................................69

3.1.6. Evaluation Setup, Scenarios, and Procedure ...........................................................................70

3.1.7. Evaluation Results ..................................................................................................................72

3.2 Cooperative localization .........................................................................................................74

3.2.1 Classification of cooperative localization methods ................................................................76

3.2.2 Least square localization algorithm based on convex relaxation ............................................78

3.2.3 Cooperative convex relaxation LS localization algorithm ......................................................78

3.2.4 Non-cooperative LS localization algorithm ............................................................................81

3.2.5 Evaluation criteria of localization algorithms .........................................................................82

3.2.6 Evaluation of convex relaxation cooperative algorithm .........................................................82

3.2.7 Conclusion ..............................................................................................................................87

3.3 Indoor localization with multilateration .................................................................................88

3.3.1 Introduction .............................................................................................................................88

3.3.2 System description ..................................................................................................................88

3.3.3 Implementation details ............................................................................................................89

3.3.4 Evaluation ...............................................................................................................................93

4 CONCLUSIONS ...................................................................................................................95

REFERENCES .....................................................................................................................................97

Page 7: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 7 of 102

ABBREVIATIONS

AoA Angle of Arrival

AP Access Point

BI Beacon Interval

BLER Block Error Rate

BPSK Binary Phase Shift Keying

BS Base Station

CDF Cumulative Distribution Function

CIR Channel Impulse Response

CN Cognitive Network

CQ Channel Quality

D2D Device-to-Device

DFT Discrete Fourier Transform

DSP Digital Signal Processor

ED Euclidean Distance

FDD Frequency-division duplex

GDP Global Data Plane

GFSK Gaussian Frequency Shift Keying

GLONNAS Globalnaya Navigatsionnaya Sputnikovaya Sistema

GPS Global Positioning System

HD High-Definition

HP High Power

IDFT Inverse DFT

ILP Integer Linear Program

ILS Integrated Location Service

IMM Immediate Accounting

IMU Inertial Measurement Unit

IoT Internet of Things

ISM Industrial, Scientific, and Medical

ITS Intelligent Transportation Systems

kNN k-Nearest Neighbours

LBA Location-based application

LDT Last Discovery Time

LoS Line-of-Sight

LoS Line-of-Sight

LP Low Power

Page 8: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 8 of 102

LS Least Square error estimator

LTE Long-Term Evolution

MAP Maximum a Posteriori

MCS Modulation Coding Scheme

MDT Mean Discovery Time

MIB Master Information Block

ML Maximum Likelihood estimator

MLE Maximum Likelihood Estimate

MMSE Minimum Mean Square Error

MPTCP Multipath TCP

MT-OPT Multi-Transceiver Optimized

NLoS Non-Line-of-Sight

OFDM Orthogonal frequency-division multiplexing

PDCCH Physical Downlink Control Channel

PDSCH Physical Downlink Shared Channel

PH Pompeiu–Hausdorff

PRB Physical Resource Block

PRR Packet Reception Ratio

PRSA Per-Request Satisfaction Algorithm

PSCCH Physical Sidelink Control Channel

PSI Provisioning Service Interface

PSS Primary Synchronization Signal

PSSCH Physical Sidelink Shared Channel

PSSS Sidelink Synchronization Signal

PTSA Per-Time bucket Satisfaction Algorithm

QAM Quadrature Amplitude Modulation

QoS Quality of Service

REST Representational State Transfer

RF Radio Frequency

RII Resource Interaction Interface

RMSE Root Mean Squared Error

RSS Received Signal Strength

RSSI Received Signal Strength Indicator

Rx Receiver

SBI Southbound Interface

SC-FDMA Single-carrier FDMA

Page 9: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 9 of 102

SCI Sidelink Control Information

SLI Standardized Localization Interface

SLIP Location Information Provisioning

SLSR Standardized Localization Service

SLSR Standardized Localization Service

SNR Signal-to-Noise Ratio

TDoA Time Difference of Arrival

ToA Time of Arrival

ToF Time of Flight

Tx Transmitter

UE Remote User

UHD USRP Hardware Driver

UNB Ultra-narrowband

UWB Ultra-wide-band

VER Verified Accounting

VoIP Voice over IP

WAVE Wireless Access in Vehicular Environment

WLS Weighted Least Squares

Page 10: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 10 of 102

1 INTRODUCTION

The eWINE project objective is to enable elastic wireless networks using the Cognitive Network (CN)

to perform adaptations and provide end-to-end solutions. The idea is to use a smart loop that guides

adjustments in the network. The loop considers what wireless devices can perform sensing, which is

intensified with a context extension. The information acquired is processed and utilised in the learning

and planning process ahead of the decision. After the decision, the loop leads a reconfiguration and

acting phase.

This deliverable is an extension of D3.1, which shows the ideas and results from Year 1 of the project

related to context provisioning, sensing algorithms, and cooperative localisation. In this deliverable, we

consider distinct techniques to sense and make the context extensions, which are split based on

localisation and contextualization approaches. These techniques are discussed in the context with the

following Showcases:

• Showcase 1: Elastic on-demand and end-to-end wireless connectivity service provisioning.

• Showcase 2: Elastic resource-sharing in dense heterogeneous and small cells

• Showcase 3: Open and reconfigurable physical layer for context-based service provisioning

Contextualisation approaches are discussed in Section 2, while Localisation is covered in Section 3.

Contextualisation approaches include:

• In Section 2.1, the contextualization approach covers concepts related to Showcase 1, where we

explain how to use the SNR/throughput estimation for automated mode selection in Device to

Device (D2D) communications. It shows the necessity to use some parameters to make the

decision between the downlink and sidelink. We executed experiments evaluating the

throughput and SNR related to the distance from the point of view of the remote user.

• Section 2.2 detecting ultra-narrowband signals, reports on follow-up work carried out in Year 1

of the eWINE project. In Year 1, we focused on detecting ultra-narrowband activity in the 868

MHz. In Year 2, we focused on tagging this activity to be able to make more informed decisions

and possibly cooperate with other technology for a fair sharing scheme. In this regard, we used

an existing machine vision algorithm to tag detected spectrum activity.

• In 2.3, we analyse the best channel quality metric to be used by the base station to select channels

for whitelisting. We assume that each channel can be assigned a quality metric and that the base

station will sort the channels according to this metric and include the best N channels in the

whitelist.

• In Section 2.4 we present an extension to the WiSHFUL control framework allowing

applications to proactively express their needs in terms of communications patterns and

preferences like type of traffic, bitrate, burstiness and timeliness. To select a suitable PHY

technology the base station requires knowledge about the requirements of applications running

on the device.

• In Section 2.5, a main component of Showcase 1 is the eWINE Intelligent End-to-End

Controller that collects interests and availability of content of devices. In order to compute a

content exchange schedule, the controller requires an estimate of the link quality between

content provider and consumer based on their location information. We developed an estimator

for link quality by computing expected SNR band on location information.

• In Section 2.6, we present neighbour discovery approaches in a D2D field that utilize

cooperation among devices in order to improve the discovery process. Devices include

information about discovered neighbours in their periodically transmitted beaconing messages.

Neighbours may use the received gossiped information to modify their listening schedules.

Page 11: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 11 of 102

• In Section 2.7, throughput measurements and interface for load balancing between several PHY

technologies has been provided. Here, we do an extension of the SC3 demonstrator in Year 2.

We assume an intelligent base station is equipped with multiple radio access technologies

(multi-RAT) and via a load-balancing algorithm multiplexes the data over multiple PHY layers.

Combining the resilience of GFDM with the broadband communication of mmWave, we aim

at providing a high throughput and robust communication between the access point and the user

device. The throughput measurements where the data is multiplexed between the two PHY

layers is provided in this section.

In Section 3, Location information of mobile devices is a foundational input to location-based services

and a valuable source of context information in wireless networks. Unfortunately, individual localization

services seldom satisfy all these requirements. For achieving that vision, a set of challenges has to be

addressed, pertaining to handover, fusion, and integration of different sources of location information.

Current approaches for integration of individual localization services are either not specific enough or

are limited in scope and lack flexibility. To maximize the value, we need location information that is

accurate, robust, and promptly and seamlessly available. Towards this goal, we developed the following

localisation services:

• In the Section 3.1, we provide a detailed design and a prototypical implementation of the

Standardized Localization Service (SLSR), a middleware architecture for achieving those

goals.

• Cooperative localization is approached in Section 3.2. In Year 1 we focused on non-cooperative

localization algorithms and preparation of the experimental/simulation environment for testing

localization algorithms. In contrast, the main activities for Year 2 were focused on the

development, implementation and evaluation of the cooperative localization algorithms. The

selected algorithm based on the convex relaxation approach has been evaluated applying

computer simulations and also applying signal strength measurements from Log-a-Tec testbed.

The location error applying cooperative localization algorithm is several times lower compared

to localization error achieved by the reference non-cooperative algorithms.

• In Section 3.3 indoor localisation with multilateration, is a continuation and extension of work

previously presented in WP3 Y1 report. It presents UWB indoor localization approaches with

various error mitigation techniques based on deep learning NLoS classification and ranging

error regression models described in details in WP5 Y2 report.

The mapping of the D3.3 deliverable contributions with the three eWINE showcases can be seen in

Table 1. The design and implementations of the showcases 1, 2 and 3 in the form of contributions are

presented in the sections 2, 3 and 4, respectively.

Table 1 Mapping of the contributions to the eWINE showcases.

Showcase 1 Showcase 2 Showcase 3

SNR/throughput estimation for

automated mode selection in D2D Detecting ultra-narrowband signals

Description of application

requirements

Cooperation in Neighbour Discovery Channel Quality estimation

Estimator for link quality by

computing expected SNR based on

(inaccurate) location information

Generalized architecture

Throughput measurements and

interface for load balancing between

several PHY technologies (mmWave,

GFDM)

Page 12: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 12 of 102

Cooperative localization

Indoor localization with

multilateration

Page 13: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 13 of 102

2 CONTEXTUALIZATION

2.1 SNR/throughput estimation for automated mode selection D2D

2.1.1 Introduction

Device to device communication was included in the release 12 of the standard of LTE [1] as an option

of the link between the remote user (UE) and the eNodeB, but what was not included in the release is

how a UE will choose between these two links.

Usually, the UE seeks for some content of the network, or it wants to transmit to the network. Depending

on what the user needs to do, the threshold of the link can be changed and the necessity of change the

link can happen. Another case that can occur is the link that is being used gets weak, in this case, it’s

also necessary to choose another link for the communication does not break.

In some locations (e.g. in the edge of cells) where coverage from the LTE base station cannot be

guaranteed, it is possible to use a UE as a relay from the eNodeB to a more remote UE, as illustrated in

Figure 1. As the user may exhibit mobility and channel conditions change from time to time, dynamic

mode selection functionality between infrastructure mode eNodeB-to-UE and D2D mode UE-to-UE is

needed.

Figure 1 Sidelink communication in LTE networks.

The SNR is often used in the literature to classify the quality of a transmission and reception in

communications. If the SNR is too low, it is not possible to decode the signal because when it arrives in

the reception with low power, it makes difficult for the system to understand what the signal is and what

is noise. When the SNR is high, it is possible to increase the modulation complexity what make possible

transmit more information using the same structure (band, channel, etc.). Thinking in the point of view

of the UE, we decided to use this parameter to choose the link in our mode selection.

Page 14: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 14 of 102

The level of throughput that can be achieved in communication is related to the SNR and the modulation

that is used. The throughput expresses the successful rate that a user can receive or transmit in a link

what is extremely important in the point of view of the UE for its uses.

As SNR and throughput are directly related to the user experience in the link, in our approach we choose

these parameters to make the evaluation of our mode selection.

The mode selection between infrastructure mode and D2D mode developed in our work can optimize

the performance of LTE network links so mobile users can achieve higher QoS. Our work on this open-

source D2D communication is a useful reference for future 3GPP standardization activities.

2.1.2 System description and implementation details

The system that integrate LTE and D2D need to have at least 3 components, eNodeB, the relay UE and

the remote UE. The eNodeB is the component that provide connection to the network infrastructure, it

is the base station (BS) in LTE. The relay UE is a user from the LTE network that can provide connection

to other users from its own connection, in other words, this user can transmit to other users some content

that comes from the eNodeB in a different channel than what it receives. The remote UE is the user that

has the capability of using more than one channel to communicate, in our approach, when this

component fells a degradation in the link where it does its communication, it uses the mode selection to

choose another link.

Our design and implementation focuses on the LTE sidelink and relay functionality. The first challenge

is to develop the sidelink PHY layer data transmission channels, which adopt a SC-FDMA waveform,

according to the LTE standard. The second challenge is to build the relay functionality for the UE. The

third challenge is to design the mode selection functionality in the remote UE to establish either a

sidelink (with the relay UE) or a downlink connection (with the eNodeB).

For implementing the sidelink communication and relay functionality, and to make it compliant with

the LTE standard, we have used the srsLTE library [2], an open source PHY layer platform for software-

defined radio implementation of the FDD mode of LTE [3]. The library follows a modular approach,

which helps in combining different PHY layer DSP components together without the need to change

every element. We have extended the code, implementing the sidelink and relay functionalities while

also making use of existing components in srsLTE, namely the uplink and downlink modules, which are

compliant to 3GPP LTE Release 8.

2.1.2.1 Implementation of Physical Sidelink Shared Channel (PSSCH) with SC-FDMA

The PSSCH is the PHY channel for data transmission on the sidelink. According to the 3GPP LTE

standard Release 12, the PSSCH must use SC-FDMA for data transmission. The main difference in

implementation between SC-FDMA and OFDM (which is used in the downlink) is that an additional

Discrete Fourier Transform (DFT) is needed in the transmitter and an additional Inverse Discrete Fourier

Transform (IDFT) is needed in the receiver, as shown in Figure 2. We implement the PSSCH by

inserting the DFT and IDFT modules, available at the FFTW3 and srsLTE software library, into the

OFDM radio DSP chain for the PSSCH.

Page 15: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 15 of 102

Figure 2 Block diagram of SC-FDMA transmitter (Tx) and receiver (Rx).

A Physical Sidelink Control Channel (PSCCH) is also needed for accomplishing the functionality of

PSSCH. In our sidelink implementation, three symbols per subframe are allocated for the PSCCH, and

Sidelink Control Information (SCI) is included in these symbols. The SCI may include information on

the MCS, a group destination identifier, the resource block assignment and hopping resource allocation,

a frequency hopping flag, etc. In our implementation we include minimum functionality for the PSCCH,

supporting flexible MCS selection by the sidelink controller (to be described in the following sections).

For the moment, we assign the entire set of resource blocks in the frequency channel of the sidelink to

a single pair of UEs. Figure 3 describes the software modules that we have reused from the srsLTE

software and the modules that we have revised/rebuilt by ourselves for the implementation of sidelink.

Figure 3 Block diagram of the modules used in the implementation.

2.1.2.2 Implementation of relay functionality in the relay UE

The relay UE is called upon to relay the data received in the downlink to the remote UE, communicating

over the sidelink. In order to run the downlink and sidelink in parallel, we create two different threads,

which individually perform the two sets of operations without interrupting each other. The internal

Page 16: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 16 of 102

functionality of the relay UE is shown in Figure 4. A UE must establish the link with the eNodeB, first

searching for beaconing signals periodically transmitted by the base station (in the figure, this process

is referred to as a cell search). After the downlink is established, the UE must decode the Primary

Synchronization Signal (PSS) and Master Information Block (MIB) signals to synchronize with the

eNodeB. Then, it decodes the Physical Downlink Control Channel (PDCCH) and the Physical Downlink

Shared Channel (PDSCH) signals to receive data, which subsequently needs to be forwarded to the

remote UE over the sidelink. This data is then transmitted over the PSSCH using SC-FDMA. The

Primary Sidelink Synchronization Signal (PSSS) signal is also generated simultaneously, for

synchronization between two UEs that have established a sidelink.

Figure 4 Block diagram of the relay UE.

2.1.3 Evaluation

To verify the correct operation of the solutions described above, and to collect performance

measurement results, we have set up an experiment as shown in Error! Reference source not found..

The figure shows the eNodeB on the left-hand side, a UE that serves as a relay in the middle, and the

remote UE on the right-hand side. For the experiments reported here, we adopted the USRP

reconfigurable radio model B210 and the USRP Hardware Driver (UHD) interface. The USRP B210

hardware supports a 30.72 MHz clock, matching LTE sampling frequencies and enabling the decoding

of signals from live LTE base stations. Our experiment consists of three USRP B210 and three laptops

Page 17: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 17 of 102

running srsLTE software, extended with our sidelink and relay implementation. Each USRP connects

to a different laptop through a UHD driver and USB 3.0.

In our measurements we maintain the locations of eNodeB and relay UE fixed and move the remote UE,

starting from the position of the eNodeB, towards the edge of the cell as depicted in Error! Reference

source not found.. A photograph of the measurement set-up is shown in Error! Reference source not

found.. The measurements focus on how the SNR and throughput vary with the position of the remote

UE. In the tests, a downlink signal is transmitted from the eNodeB to the remote UE and sidelink signal

is transmitted from the relay UE to the remote UE. To accommodate the range restrictions of the RF

hardware and the space available in the laboratory where the experiments took place, we fixed the

transmitter gain for the eNodeB at 55 dB, yielding a cell boundary at approximately 256 cm.

Figure 5 Experimental Set-up.

Figure 6 Measurement scenario.

Page 18: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 18 of 102

Figure 7 Measurement Setup.

The following subsections describe the measurement results.

2.1.3.1 SNR measurements and mode selection

Figure 8 shows the average SNR as a function of distance, measured from the location of the eNodeB

to the remote UE, for both the sidelink (orange curve) and downlink (blue curve), when the transmitter

gain of the sidelink is fixed at 40 dB. (This is lower than the transmitter gain for the downlink because

the relay UE is supposed to have lower power consumption for transmission and lower coverage than

an eNodeB.) It is clear that, up to around 160 cm from the eNodeB, the downlink offers superior SNR

to the sidelink; past that point, establishing a sidelink to a relay UE provides an SNR advantage. Beyond

a distance of around 240 cm from the eNodeB, the only option available to the remote UE is to set up a

sidelink: this illustrates the range extension capabilities of D2D.

Figure 9 shows similar results of average SNR versus distance, but in this case the sidelink transmitter

gain has been set to 30 dB. We can see that around 180 cm is the switching point from downlink to

sidelink, if the objective is to maximize SNR. We can also see that the SNR for the sidelink is lower

than that reported in Figure 8, and the effective range extension is also reduced, reflecting the lower

setting for the sidelink gain.

Each point in Figure 8 and Figure 9 is the average of 1000 collected measurements. We also report the

standard deviation, the width of the 95% confidence internal, minimum, and maximum SNR in the Table

2,Table 3 and Table 4. Statistical analysis reveals that, for each value of distance, the SNR varies very

Page 19: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 19 of 102

little and hence we have very tight confidence intervals.

Figure 8 SNR vs. distance for 40 dB sidelink transmitter gain.

Figure 9 SNR vs. distance for 30 dB sidelink transmitter gain.

Page 20: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 20 of 102

Table 2 Statistical Analysis of the SNR for the sidelink, at 30dB transmitter gain.

Table 3 Statistical analysis of the SNR for the sidelink, at 40 dB transmitter gain.

Table 4 Statistical analysis of the SNR for the downlink, at 55dB transmitter gain.

Page 21: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 21 of 102

2.1.3.2 Throughput measurements and mode selection

We also measure the maximum throughput using the same experimental setup shown in Error!

Reference source not found. and Error! Reference source not found.. In the 3GPP LTE standard, the

throughput is determined by the MCS index and number of Physical Resource Blocks (PRBs) utilized

for transmission. We allocate 25 PRBs for both downlink and sidelink in our experiment. Therefore, at

each measurement location we seek to reach the maximum throughput by increasing the MCS index of

the transmitters, for the downlink and sidelink, and record the maximum throughput while the observed

Block Error Rate (BLER) remains at zero. The highest modulation for the downlink is 64 Quadrature

Amplitude Modulation (QAM) and the highest modulation for the sidelink is 16 QAM according to the

LTE standard. Figure 10 and Figure 11 show how the throughput varies according to the position of the

remote UE; the trends follow closely those reported for the SNR.

Figure 10 Maximum throughput versus distance, for 40 dB sidelink gain.

Figure 11 Maximum throughput versus distance for 30 dB sidelink gain.

Page 22: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 22 of 102

2.2 Detecting ultra-narrowband signals

2.2.1 Introduction

Ultra-narrowband (UNB) networks have recently emerged to provide connectivity to large numbers of

small, embedded devices. These devices mostly lie at the very bottom of the Internet of Things spectrum:

they require very little bandwidth and have very lax latency requirements. For example, a typical device

using UNB is a battery-powered water meter that sends a 32-byte payload, containing a meter reading

and identification, once per day to the communal services company. Mobile wireless technologies

oriented more towards interactive, high-bandwidth applications are not well suited for such use, due to

higher cost, transceiver and protocol complexity and energy use.

Ultra-narrowband networks employ very low bit-rate transmissions (on the order of 100 to 1000 bits/s)

using Binary Phase Shift Keying (BPSK) or Gaussian Frequency Shift Keying (GFSK) modulations

with bandwidths on the order of 100 Hz to 1 kHz. Typical packet transmission times are on the order of

1 to 10 seconds. They exhibit high spectral efficiency and low preamble overhead with short payloads

[4].

Some ultra-narrowband networks, such as Sigfox and Weightless operate in the unlicensed bands, such

as the 868 MHz European SRD band. Hence, they are expected to share the spectrum with many other

devices and technologies, such as LoRa, IEEE 802.15.4, etc. Many approaches to efficient spectrum

sharing in unlicensed bands depends on the capability to detect the presence of other users. For example,

if a network operator can detect that another spectrum user is occupying certain frequency channels in

a cell covered by one of their base stations, they can adapt their use of the spectrum to avoid the occupied

frequencies. Transmission detection can also be useful in avoiding collisions within the same network,

caused by two devices transmitting at the same frequency at the same time.

In the year 1 of the eWINE project, we explored the possibility of using covariance detectors for efficient

detection of ultra-narrowband transmissions (see eWINE deliverable D3.1, section 2.4.1 “Covariance-

based detection for ultra-narrowband transmissions”). We found that covariance detectors can provide

benefits over energy detection in regard to sensitivity. However, they are not suitable for use cases when

more than just a binary decision is needed. For network optimization, fine-grained information on the

use of individual frequency channels can be extremely useful. This is especially true in UNB networks,

where the uplink band can be divided into thousands of microchannels.

Also in year 1, we have created a demonstrator for an optimized protocol for use in the Sigfox network

(see eWINE deliverable D4.1, section 3.2 “Sigfox dynamic channel selection”) The demonstrated

protocol used energy detection to detect other users of the shared 868 MHz band and dynamically

allocated uplink microchannels so that minimal packet loss occurred. This both increased the quality of

service of the Sigfox network, reduced the need to frame retransmissions and at the same time decreased

interference to other technologies in the 868 MHz band. The spectrum sensor in our demonstrator

determined the occupancy of microchannels using energy detection with a dynamic threshold using the

ROHT algorithm [5]. Occupancy statistics for microchannels was calculated over a time window of

approximately 10 minutes (see eWINE deliverable D3.1, section 2.4.3 “SIGFOX narrowband spectrum

sensing setup”).

During the project we received several comments regarding our demonstrator. One of the concerns

raised was that our demonstrator performed the Sigfox network optimization in isolation. It was difficult

to envision how it could be adapted for a more cooperative approach to 868 MHz band sharing. An

approach where multiple operators can adapt their use of the spectrum could yield better results than

when operators perform optimizations in isolation. In such a cooperation case, it would be useful for a

network operator to be able to distinguish the source of interference they are detecting. Another concern

was that occupancy decision individually for each microchannel was a simplistic view of the spectrum,

Page 23: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 23 of 102

Transmissions from non-UNB technologies tend to span many UNB microchannels. Hence, it seemed

worth exploring an approach to spectrum sensing that would be able to detect and parametrize individual

transmissions of various technologies both across the frequency and time axis. We also wanted the new

detector to be able to provide information usable for a technology classification (for instance such as

classifiers developed in Work Package 5 – see eWINE deliverable D5.3)

The following sections describe our enhanced transmission detector for the 868 MHz band. The detector

is part of the eWINE year 2 Showcase 2 demonstrator. It can be considered an extension of the work

done in year 1 on narrowband sensing.

2.2.2 System description

Based on the apparent shortcomings of covariance detection and our relatively good experience with the

energy detector in the year 1 demonstrator, we decided to base the new transmission detector on energy

detection as well. However, in this enhanced version we replaced the ROHT algorithm with a detector

based on a machine vision approach. This type of detector is often called “event detector”, “burst

detector” or “burst tagger” in literature. We adopted the last name for our work.

Figure 12 Block diagram of the new transmission detector, called "burst tagger".

The block diagram of the new detector is shown in Figure 12. The input to the detector is a two-

dimensional matrix of RSSI values, where one dimension represents time and the other frequency. We

used a similar form of input in our previous work with energy detection. When visualized, the matrix

forms the well-known waterfall plot of the spectrum (see Figure 13a). The detector is based on the

observation that a person watching the waterfall plot on a computer can often immediately recognize

individual transmissions based on their visual representations on the waterfall plot and determine their

start and stop times and occupied range of frequencies. Furthermore, with some experience a person can

often even guess the type of transmission and wireless technology in use, even though the waterfall plot

is a severely reduced representation of the radio spectrum: it is typically greatly under sampled and

contains no phase information.

Machine vision has advanced significantly in recent years, with tools readily available that can mimic

many kinds of object detection performed by biological systems. Hence, it seemed plausible that an

application of machine vision algorithms to waterfall plots might yield a usable detector that will also

be able to characterize transmissions in terms of time and frequency. The fact that a human observer can

distinguish different types of technologies also suggested that its output would be usable in connection

to a technology classifier.

After receiving a matrix of RSSI values, the detector first performs a two-dimensional Gaussian filter

on the matrix. This effectively blurs the waterfall plot and decreases the effect of noise by trading off

some time and frequency resolution. The waterfall plot after the filtering step is shown in Figure 13b.

Next step performs an adaptive threshold. Each element of the matrix is compared to a threshold value

and replaced with the binary result of the comparison. Threshold is calculated for each individual

element separately. We use a weighted sum of neighbouring values as a threshold. A Gaussian window

is used as weights. The plot after the thresholding step is shown in Figure 13c.

Page 24: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 24 of 102

Figure 13 Visualization of the individual processing steps in our detector.

To further reduce the effect of noise, the binary matrix is then subject to a number of dilate and erode

operations. A dilate operation replaces a matrix element with a logical OR function over a region. An

erode operation similarly replaces a matrix element with a logical AND over a region. These steps are

designed to remove single, isolated matrix elements that were above the threshold and are most

commonly due to noise. They also merge neighbouring regions of the plot that appeared above the

threshold into a single contiguous region. Matrix after the dilate and erode operations is shown in Figure

13d.

Finally, the data is converted from a binary matrix form to a list of bounding boxes, encircling the

individual transmissions. This operation consists of two steps: first the matrix is transformed into a list

of vector contours that trace the positive regions in the matrix. Then the contours of individual isolated

regions are transformed into minimal bounding rectangles. At this point it is assumed that the bounding

Page 25: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 25 of 102

rectangle describes the region containing the RSSI samples from an isolated transmission. Calculated

bounding boxes overlaid over original RSSI data are shown in Figure 13e.

Each bounding box is described by two coordinates in the original matrix (upper-left and lower-right

corners). These coordinates correspond to the start and end times and lower- and upper-most frequency

of the detected transmission. A list of these values for all detected transmissions forms the output of the

detector.

2.2.3 Implementation details

The source code of our implementation is available on GitHub as open source software under the terms

of the GNU public license1. The detector is implemented in Python programming language and uses the

OpenCV library [6] to perform image processing steps.

Our implementation follows the general architecture we used for the Y1 demonstrator (see eWINE

deliverable D3.1, section 2.4.3 “SIGFOX narrowband spectrum sensing setup”). The detector itself is

implemented as a stand-alone Python process with a HTTP interface that accepts and returns a JSON-

formatted payload. High-level integration with the rest of the system is performed using a Node-RED

flow. This approach allows us to implement data processing with relatively efficient Python libraries,

while retaining the rapid-experimentation qualities of Node-RED.

Figure 14 Example Node-RED flow incorporating the burst tagging component.

An example Node-RED flow incorporating the burst tagging component is shown in Figure 14. The

spectrum data enters the flow through a MQTT connection from a Sigfox base station in form of JSON

structures. The data is then routed to the burst tagger component that processes the data and returns a

list of detected transmissions.

The spectrum sensor delivers periodic updates on the current detected power spectral density. The burst

tagger component receives individual updates and keeps a certain number updates in memory, in effect

keeping a moving window over the waterfall plot. Periodically, the burst detection algorithm is

performed on the current state of the window.

JSON structure returned by the burst tagger is show below:

{ 'bursts': [ { 'tstart': burst start time, 'tstop': burst stop time, 'fc': burst central frequency, 'bw': burst bandwidth, 'data': [ RSSI in dBm], }, ... ] }

1 https://github.com/sensorlab/sigfox-toolbox/tree/master/node-red-burst-tagging

Page 26: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 26 of 102

The bursts element contains a list of detected transmission. Each element in the bursts list contains

extracted information about the transmission: tstart and tstop are the transmission start and stop times

(in seconds). fc and bw are central frequency and bandwidth in hertz. The data element contains a cut-

out from the original RSSI matrix, containing only those elements that fall within the bounding box of

the detected transmission.

In the example Node-RED flow shown in Figure 14, this structure is passed through the technology

identification block that assigns a possible technology to individual transmissions.

To help with development and visualization of the results of the burst tagger, we also developed a Node-

RED component that shows a real-time waterfall plot with the detected transmissions and their

recognized technologies in an overlay. A screenshot of the visualization is shown in Figure 15.

Figure 15 Burst display - a tool for visualization of the burst detection results.

Page 27: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 27 of 102

2.3 Channel Quality (CQ) estimation

2.3.1 Introduction

In this section we analyse the optimum method for the base station to choose channels for whitelisting.

We assume that each channel can be assigned a channel quality metric and that the base station will sort

the channels according to this metric and include the best N channels in the whitelist. What is the optimal

channel quality metric for this purpose?

2.3.2 Deriving a channel quality estimator for spectrum sensing data

We can find many channel quality estimators in the literature. In our case, we are specifically interested

in an estimator that can give a reliable prediction for packet loss based on a history of RSSI

measurements from a spectrum sensor.

An alternative approach would be to base our channel quality metric on the past packet loss for

individual channels. However, this approach has a significant drawback: a large number of packets must

be sent before a reliable statistic per channel can be generated. This problem is further emphasized by

the large number of channels in a typical ultra-narrowband system. It also follows that using this

approach a large number of packets must be lost before a channel is recognized as unfavourable. This

packet loss might be unacceptable for the required quality of service in the network.

One simple channel quality metric that satisfies our requirement is the mean channel availability. It is

defined as a percentage of time where interference power in a channel is below a threshold Rthr. Say our

spectrum sensor samples the channel power at times ti, i[1, 2, …], then this metric can be defined as:

𝐶𝐴 = 1

𝑁∑ 𝑠𝑖

𝑖0+𝑁

𝑖=𝑖0

(1)

Where:

𝑆𝑖 = { 0 𝑖𝑓 𝑃𝑖 < 𝑅𝑡ℎ𝑟, 1 𝑖𝑓 𝑃𝑖 ≥ 𝑅𝑡ℎ𝑟} (2)

and

𝑅𝑡ℎ𝑟 = 𝑅𝑟𝑥 − 𝑆𝐼𝑁𝑅𝑚𝑖𝑛 (3)

Rrx is the power of the received signal from the devices at the base station and SINRmin is the minimum

signal-to-noise-and-interference ratio at which the base station is able to receive the signal.

This metric is problematic, since it assumes a sharp threshold in SINR upon reception. In other words,

it assumes that 100% of packets will be lost if interference is above a certain threshold and 0% packet

loss otherwise. In reality, the packet loss more or less slowly transitions between these two extremes as

SINR deteriorates.

A metric that attempts to address this problem is the mean signal power over a time window:

𝑀𝑆𝑃 = 1

𝑁∑ 𝑃𝑖

𝑖0+𝑁

𝑖=𝑖0

(4)

Where Pi is the measured power at instant ti.

Page 28: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 28 of 102

A problem with this metric is that it does not take into account time distribution of interference. Consider

a channel where a single strong interferer very occasionally transmits and a channel where a weak

interferer transmits continuously. The MSP metric will consider both of these channels identical,

however the first channel will have very little packet loss since there will be very little probability that

a packet in the network will collide with the infrequent interferer. On the other hand, the second channel

will continuously loose packets due to constant interference.

A metric that attempts to account for time distribution of interference is the CQ() metric [1]:

𝐶𝑄() = 1

𝑛 − 1∑ 𝑗1+𝑚𝑗

𝑗|(𝑗−1)𝑃>𝑟

(5)

Here n is the number of samples in a time window where the metric is calculated. mj is the number of

opportunities where the channel is vacant for j consecutive samples. The metric considers the channel

vacant when the measured power in the channel is below threshold Rthr (equation 3). P is the RSSI

sampling period. is a parameter of metric: it is the time duration of the packet being transmitted.

j mj is the total number of RSSI samples, that appear in vacancies of length j. The metric sums up all

such opportunities where their length ((j-1)P) is longer than the duration of the packet being transmitted

(). It then divides the number of samples with the total number of samples n in the time window being

considered. The authors of [1] also chose to include another parameter, , that determines the bias of

the metric towards the channels that have longer transmit opportunities. It is not clear how to determine

the value for for best packet reception ratio.

We observe that the CQ () metric is very similar to a maximum likelihood estimate (MLE) for the

probability of successful transmission of a packet with length , assuming any instance of interference

more powerful than Rthr results in a lost packet. Hence, we can calculate the MLE, we need to calculate

the total number of observed transmit opportunities ntotal and the number of observed transmit

opportunities that did not encounter interference stronger than Rthr, nclear:

𝑀𝐿𝐸 =𝑛𝑐𝑙𝑒𝑎𝑟

𝑛𝑡𝑜𝑡𝑎𝑙 (6)

Total number of observed transmit opportunities depends on the length of the observed time window n

(in RSSI samples) and the length of the transmitted packet :

𝑛𝑡𝑜𝑡𝑎𝑙 = 𝑛 − /𝑃 (7)

The number of observed transmit opportunities with no interference can be written as follows (using

Page 29: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 29 of 102

same variables as in Equation 5:

𝑛𝑐𝑙𝑒𝑎𝑟 = ∑ (𝑗

𝑗|(𝑗−1)𝑃>𝑟

− /𝑃)𝑚𝑗

(8)

Since calculating the MLE requires the same data as calculating the CQ() metric and does not need the

parameter, we can directly use it as an improved channel quality metric:

𝐶𝑄∗() =1

𝑛 − /𝑃∑ (𝑗

𝑗|(𝑗−1)𝑃>𝑟

− /𝑃)𝑚𝑗

(9)

CQ* metric still doesn't take into account that probability of successful frame reception smoothly varies

with SINR. We can further improve it as follows.

Given a recorded history of interference power measurements in a channel, we can estimate the mean

interference power over the duration of a hypothetical packet transmission starting at sample i0 (time

ti0):

𝑃𝐼𝑁′(𝑖0) = 1

/𝑃∑ 𝑃𝑖

𝑖0+/𝑃

𝑖=𝑖0

(10)

where Pi is measured interference power in the channel at instance ti. Then hypothetical SINR during

reception can be approximated by:

𝑆𝐼𝑁𝑅(𝑖0) =𝑅𝑟𝑥

𝑃𝐼𝑁′(𝑖0)

(11)

Assuming we know the packet reception ratio (PRR) as a function of SINR, we can calculate the

predicted mean PRR for the channel by averaging calculated PRRs for all possible packet transmission

times:

𝑃𝑅𝑅′ =1

𝑛 − /𝑃∑ 𝑃𝑅𝑅(𝑆𝐼𝑁𝑅(𝑖0)

𝑛−/𝑃

𝑖=0

(12)

2.3.3 Empirically estimating PRR

In Equation 12 we require the packet reception ratio as a function of the signal-to-noise-and-interference

ratio at the base station. This is a characteristic of the receiver that depends on the receiver design,

modulation, etc. Analytical calculations exist for various modulations and Gaussian noise. For example,

for BPSK, the bit error rate is equal to:

𝑃𝑏 =1

2𝑒𝑟𝑓𝑐(√

𝐸𝑏

𝑁0)

(13)

Page 30: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 30 of 102

However, real receivers only approximate optimal decoding and real noise and interference are not

Gaussian. Hence it is desirable for our calculations to use the PRR(SINR) of a real ultra-narrowband

receiver. This section describes the experiment we performed to measure the PRR(SINR) function for

our setup.

The experiment consisted of sending 1000 packets from an indoor transmitter to an outdoor ultra-

narrowband base station. The transmitter was a USRP N200 device. All packets were sent on a single

channel in the 868 MHz band for easier post processing of data. To vary the signal-to-noise ratio of the

packets, the transmitter varied the transmit power by randomly changing the baseband gain from -50 to

-20 dB. This range was chosen empirically to cover the entire range of PRR, from 0 to 100%.

On the base station side, we simultaneously recorded the power spectral density on the base station

antenna (in the form of RSSI samples for all uplink channels) and the received packets. Based on the

sequence numbers of the packets we matched the received packets with transmitted packets and marked

transmitted packets that were not received successfully. Data about received packets was also correlated

with spectrum recording, adjusting for time and frequency offsets.

Our base station did not have the capability to reliably estimate SINR directly. Hence to calculate SINR

at the receive side for each transmitted packet we used the recorded spectrum data. For each packet, we

had to estimate the received signal strength and noise and interference power. We did this by summing

RSSI samples from the recorded spectrum data using two masks: one that covered only the signal

transmission (Figure 16, left) and one that covered the immediate surroundings of the transmission

(Figure 16, right). We were able to do this since the transmitted packets had known time duration and

frequency bandwidth. Figure 17 shows these masks applied to real data for a single packet. Masks used

to estimate signal and interference plus noise power from RSSI recordings. Frequency is on the

horizontal axis and time is on the vertical axis. Yellow color shows 1, purple shows 0.

Figure 16 Masks used to estimate signal and interference plus noise power from RSSI recordings.

Frequency is on the horizontal axis and time is on the vertical axis. Yellow colour shows 1, purple

shows 0.

Page 31: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 31 of 102

Figure 17 Effect of applying masks to spectrum recording of a single transmission. Left: unmasked

data. Center: masked data for signal. Right: masked data for noise and interference.

We assumed that power estimated using the first mask included signal power as well as interference

and noise power:

𝑃1 = 𝑆 + 𝐼 + 𝑁

(14)

We assumed that power estimated using the second mask included only interference and noise power.

We also assumed that interference and noise power was constant during the time-frequency window:

𝑃2 = 𝐼 + 𝑁

(15)

From these two samples we could estimate SINR for each packet:

𝑆𝐼𝑁𝑅 =𝑃1 + 𝑃2

𝑃2

(16)

Figure 18 shows the result of this calculation. The estimated SINR shows linear dependence on the

transmit gain, which suggests that our method works as expected.

Figure 18 Estimated SINR versus transmit gain.

Page 32: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 32 of 102

2.3.4 Results

Figure 19, Figure 20, Figure 21 and Figure 22 show different channel metrics calculated for a recorded

history of the 868 MHz band. In these figures, the frequency (channel) is on the horizontal axis, the

metric is on the vertical axis. All metrics have been calculated for a range of received powers levels Rrx.

The received power level Rrx is shown on the colour scale.

The bottom plot shows the calculation over the entire span of the metric (0 - 1), the top plot shows a

zoomed-in view on the vertical axis (the channels we are most interested in are ones that have the metric

close to 1).

Figure 19 Channel availability metric.

Figure 20 PRR' metric using PRR(SINR)

function.

Figure 21 Proposed CQ*() metric.

Figure 22 PRR' metric using theoretical

PRR(SINR) function for BPSK modulation.

With these results, we use PRR estimate from Equation 12 (and shown on Figure 20 as Pi and data

shown in Figure 18. In this way, we can simulate several scenarios and estimate the effect of whitelisting

Page 33: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 33 of 102

based on real measurements of the spectrum, depending on various parameters. Figure 23 and Figure 24

show the results of such a simulation from several perspectives. In all shown simulations, the devices

transmitted the data infrequently (once per day).

Figure 23 Estimated maximum number of devices Ndev in a cell versus number of frame repetitions Nf

for a minimum probability of packet reception Prx = 0.99. Results are shown for several signal strengths

for received packets Rrx (assuming that p packets from all devices in a cell arrive with identical power).

Figure 24 Estimated maximum number of devices Ndev in a cell versus signal strength for received

packets Rrx (assuming that packets from all devices in a cell arrive with identical power at the base

station). Minimum probability of packet reception Prx is 0.99, devices transmit Nf=3 frame repetitions.

Number of devices is calculated several times for different sizes of the white list, expressed as the

percentage of all available channels.

From Figure 23 we can see that in the observed conditions, reducing the number of frame repetitions

decreases the capacity of the network and there is no clear optimum. For high signal strengths, the

capacity doesn't significantly increase beyond 7 frame repetitions.

In Figure 24, the 100% line (blue) shows the condition in the network without any whitelisting (i.e. the

network is using 100% of the available channels). At the chosen quality of service (minimum Prx), the

number of devices that the network can support falls with the falling received signal power. If the

received signal power is lower than around -118 dBm, the network cannot support any devices at all

(Ndev falls to 0). If we compare the 100% line with the lines showing decreasing size of the whitelist, we

Page 34: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 34 of 102

can observe that when the received signal power is high (right side of the graph), the capacity of the

network decreases. However, we can see that with whitelist sizes smaller than 100%, there is a region

between -120 dBm and -118 dBm where the network can in fact support some devices at the chosen

quality of service (while that would not be possible if all channels would be used).

2.3.5 Summary

In this section we derived a new channel quality metric and we used to it analyse the feasibility of

whitelisting in RFDMA ultra-narrowband networks. We showed that there is a region between -120

dBm and -118 dBm where the network can support some devices at the chosen quality of service WITH

whitelisting while that would not be possible if all channels (no whitelist) would be used.

2.4 Description of application requirements

2.4.1 Introduction

We see a wide range of applications with different requirements ranging from bulk transfer to control

application. While the former requires very high throughput it can tolerate a large packet delay and is

also not negatively affected by packet loss. The latter is different as it requires very low latency and

guaranteed packet delivery. Another difference is the required low bitrate of just few kbit/s. Hence, in

order to be able to optimize the network for specific metrics (KPIs) there is a need for applications to

express their needs.

2.4.2 System description

We follow a proactive and dynamic application informed approach where applications are able to

describe their needs, called intents [7], in terms of communications patterns and preferences like type

of traffic, bitrate, burstiness and timeliness. Table 5 shows the list of proposed application intents which

is based on classification from [7] and are extended to meet our needs, i.e. direction of traffic.

Table 5. List of application intents (based on [7]).

Intent Type Value

Direction Enum Downlink, uplink, downlink+uplink

Category Enum Query, bulk transfer, control traffic, stream, IoT

File size Int Number of bytes transferred by the application

Duration Int Time between first and last packet in seconds

Bitrate Int Size divided by duration in bytes per second

Burstiness Enum Random bursts, regular bursts, no bursts or bulk (congestion window limited)

Timeliness Enum Stream (low delay, low jitter), interactive (low delay), transfer (completes

eventually)

Resilience Enum Sensitive to connection loss, undesirable (loss can be handled) or resilient (loss is

tolerable)

Figure 25 shows the integration into the WiSHFUL control framework [8]. Here applications express

their needs by sending a WiSHFUL event piggybacked with an application intent. In the given example

four such events will be send, i.e. one by each application on each network node. An application intent

manager being deployed on a central compute node can subscribe to those events. Depending on the

application needs it will reconfigure the network protocol stack of network nodes in order to meet the

application requirements. The data packets generated by the VoIP (voice over IP) application will be

Page 35: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 35 of 102

optimized for low latency and high reliability. Therefore, at physical layer the bitrate control algorithm

is configured to select only robust bitrates for transmissions. At the MAC layer the medium access is

optimized for low latency, i.e. in case of IEEE 802.11 small AIFS and CWmin/max are used. Finally,

also at the transport layer optimization can be done, i.e. in case of multipath TCP (MPTCP) multiple

concurrent subflows can be used to achieve diversity and hence to increase reliability [9]. In contrast the

FTP application is optimized for transfer of bulk data and hence throughput.

Note, other options for integration with WiSHFUL framework are possible. Instead of using a

global/central controller the decisions on network protocol layer can be performed locally using local

controllers. However, for networks where packets are traversing multiple network nodes, i.e. multi-hop

relaying, are global controller is recommended as it can also optimize the protocol layers of pure relaying

nodes.

Figure 25. Integration of application intents into the WiSHFUL control framework.

The meta-model describing application intents and their usage in WiSHFUL using custom events is

shown in Figure 26.

Figure 26. Meta-model of application intents and their usage in WiSHFUL using custom events.

Application requirements/intents belong to context information and are used in showcase 3 to determine

the suitable network interface´, i.e. subGHz or mmWave, to be used for the transfer of application data.

Hence, the information is used to decide on a handover between different network interfaces. In addition,

Compute Node

VoIPapp

FTP server Network

Node

FTP client

VoIP app

NetworkNode

AppIntents Manager

3. per app (VoIP/FTP) adaptation:- PHY: robust / thr opt ratecontrol- MAC: high prio / thr opt AC- MPTCP: diversity / multiplexing subflows

2. configure protocol layers

1. send application intent events

1. send application intent events

link

Page 36: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 36 of 102

the information about the application intents is utilized to adjust the configuration of the interfaces to

suit the needs of the application.

2.4.3 Illustrative Example

A code fragment of an application listening to application intents for purpose of adaptation of the

network protocol stack to the application needs is shown below. It implements the behavior shown in

Figure 25.

'''

Central controller handling application intents.

'''

class ApplicationIntentsModule(modules.ControlApplication):

...

@modules.on_event(AppIntentEvent)

def handle_app_intent(self, event):

"""

Handling an application intent event

:param event: event contains all information to adapt to application intents.

"""

# get intent description

app_intent_desc = event.app_intent_desc

# get intent fields

category = app_intent_desc.category

''' Adapt protocol layers according to category '''

if category == Category.BULK_TRANSFER:

# PHY: use aggressiv rate control

device.set_rate_control(RATECONTROL.THROUGHPUT)

# MAC: configure for efficiency

device.set_mac_access_parameters(1, QueueParams.HIGH_THR)

# Transport: use multiple flows for multiplexing

trans_protocol.set_subflow_mgmt(MPTCP.MULTI_SUBFLOWS)

if category == Category.CONTROL_TRAFFIC:

# PHY: use robust or at least not aggressiv rate control

device.set_rate_control(RATECONTROL.ROBUST)

# MAC: control traffic use high prio for channel access

device.set_mac_access_parameters(1, QueueParams.LOW_ACCESS_DELAY)

# Transport: use multiple flows for path diversity (reliability)

trans_protocol.set_subflow_mgmt(MPTCP.DIVERSITY_SUBFLOWS)

This above application intent-aware app can be used by any local or global controllers. Therefore, it has

to be deployed in the corresponding config_local.yaml file. Here an example for a local controller is

shown:

# UniFlex Agent config file

config:

name: 'Local_IPerf_Controller_with_Intents'

info: 'Local UniFlex control program testing intents in iperf app'

iface: 'lo'

control_applications:

myController:

file : local_control_app.py

class_name : MyIperfController

app_intents:

module : uniflex_app_intents

Page 37: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 37 of 102

class_name : ApplicationIntentsModule

2.4.4 Implementation details

We provide a reference implementation of application intents in WiSHFUL control framework

(https://github.com/uniflex/ ). Therefore the following modifications were made to the framework:

1. Extension of the WiSHFUL southbound interface (SBI): https://github.com/uniflex/sbi/

2. Example implementation of an application listening to application intents for purpose of

adaptation of the network protocol stack to the application needs

(https://github.com/uniflex/app_intents). An example local controller is given in

https://github.com/uniflex/examples/tree/master/app_intents

2.4.5 Evaluation

The evaluation was performed by means of experiments in a testbed. Therefore, we set-up a small

network consisting of two IEEE 802.11 nodes connected directly using Adhoc mode. As application we

emulated VoIP using ping command. As performance metric we measured the E2E round trip delay. In

case of the usage of application intents we set the category to Category.CONTROL_TRAFFIC and the

adaptation of the network protocol layers was performed as given in the previous example.

Figure 27 show the results for different types of background traffic. Here we can clearly see how even

in a scenario with high priority background traffic the RTT of the VoIP flow remains low.

Figure 27. Evaluation results – using proposed application intents the delay (RTT) of a VoIP flow

remains low even in scenario with high priority background traffic.

Page 38: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 38 of 102

2.5 Estimator for link quality by computing expected SNR based on

(inaccurate) location information

Device-to-Device (D2D) communication has a high potential in reducing the amount of network traffic

and improving the latency and energy efficiency of communication. Currently, D2D link establishment

decisions are based on active probing between devices that wish to establish a D2D link. The main

drawback of such approaches is a large overhead as during active probing no data communication can

take place. We leverage physical locations of the devices that wish to establish a D2D link in order to

estimate the probability of success in establishing the link before making an attempt to communicate.

The probability of success is given as a closed form equation that takes into account the imperfections

of location information of the devices and intrinsic randomness of wireless environments. We

experimentally evaluate the proposed location-based decision-making mechanism for D2D link

establishment in a complex office-like indoor environment. We show that setting the SNR threshold of

the proposed mechanism to a value that is 5 dB higher than the nominal SNR required for

communication results in reliable link establishment with false positive rate of less than 2%.

Furthermore, we show a relatively small loss of link establishment potential due to an increase in the

inaccuracies of location information.

2.5.1 Introduction

A massive growth in the amount of wireless traffic is expected in the near future. In comparison to

leveraging the available infrastructure (i.e., intermediate nodes) for communication between end-

devices, D2D communication represents a potential for reducing the amount of network traffic and

improving the latency and energy efficiency of communication [10]. Currently, mechanisms for

establishing D2D links rely of manual pairing between devices that are in communication range. Such

manual pairings are widely available in WiFi and Bluetooth networks. However, manual pairing is not

able to support autonomous and dynamic D2D link establishment between devices that are in proximity.

To avert these limitations, D2D communication link establishment can also be based on Received Signal

Strength (RSS). Mechanisms for RSS-based D2D link establishment assume that communication links

between devices can be established if RSS values from probe packets transmitted by one device and

observed by the other are above a certain threshold. However, such mechanisms require active probing,

i.e., transmission of probe packets by one device and listening for probe packets by the other. During

probing the devices are not able to communicate with the infrastructure, which represents a loss of

communication potential in case D2D links cannot be established. Furthermore, RSS is a highly

fluctuating signal feature [11], therefore RSS-based D2D link establishment decisions can be unreliable.

At the same time, an increase in location-awareness is witnessed in wireless networks [12]. In other

words, physical locations of mobile devices can be determined and can therefore be used on the network

level. Hence, location awareness in wireless networks provides a potential for D2D link establishment

based on physical location information of the devices that wish to communicate. In contrast to RSS-

based mechanisms, location-based D2D link establishment does not need active probing, which is

beneficial in terms of maintaining the connectivity with the infrastructure.

This has been recognized in the Long-Term Evolution (LTE) supported D2D link establishment (e.g.,

[13],[14],[15]). In this context, LTE infrastructure informs the devices that are in proximity (e.g.,

connected to the same base station) and wish to establish a D2D link about their roles (transmitter and

listener) and configuration for establishing a link (e.g., an operating channel). However, the problem of

deciding if the devices that are in proximity and are hence good candidates for D2D operation can really

establish a D2D link with a desired quality has not been addressed. In other words, LTE supported D2D

link establishment still requires active probing (i.e., a discovery signal) to evaluate the quality of a D2D

link between two devices.

We believe that the usage of location information of devices that wish to establish a D2D link and some

Page 39: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 39 of 102

knowledge about the propagation characteristics in a wireless environment can entirely remove the need

for active probing. When leveraging location information for D2D link establishment, one needs to keep

in mind that location information of mobile devices are generally not ideal, i.e., localization errors are

to be expected. In addition, wireless signals intrinsically contain randomness, resulting from both large-

scale (shadowing) and small-scale fading (multi-path fading). Hence, even if the distance between

devices is small enough to establish a D2D link, this does not necessarily imply that the devices will be

able to communicate. Therefore, the imperfections exist in both propagation and location information

and have to be considered while designing a reliable location-based D2D link establishment mechanism.

To address these issues, we propose a mechanism for location-based D2D link establishment that takes

into account inaccuracies caused by randomness in wireless propagation and errors in location

information of mobile devices. It is firstly shown that that the Euclidean distance between the devices,

if calculated using their erroneous location information, is a Rice-distributed random variable, assuming

that the localization errors per-axis are zero-mean Gaussian distributions. The derived distance is utilized

in a multi-wall propagation model for modelling path-loss and large-scale fading, while small-scale

fading is modelled by a Rayleigh distributed random variable. A closed form equation is obtained for

the probability of establishing a D2D link between two devices.

We evaluate the proposed mechanism by comparing the link establishment decisions yielded by the

proposed mechanism with the measured Signal-to-Noise Ratio (SNR) between the devices in a complex

office-like indoor environment. This is done for multiple SNR thresholds used as inputs to the

mechanism, for different locations of the devices, and for various distances between the devices. We

show that by using a 5 dB SNR safety margin, i.e., by setting the SNR threshold 5 dB above the one

nominally needed for communication, the mechanism can achieve the rate of false positive link

establishment decisions of less than 2%. Furthermore, we show a relatively small increase in the

percentage of false negative link establishment decisions as a function of increasing localization errors.

2.5.2 D2D Link Establishment Scenario

We envision a D2D link establishment scenario as depicted in

Figure 28. Mobile devices that wish to communicate express their intentions to the infrastructure to

which they are connected. The infrastructure is aware of the mobile devices' physical locations, which

are to a certain level erroneous. In case the devices are in the proximity, the infrastructure notifies both

devices that a D2D communication link can be reliably established. The decision if the devices are in

the proximity is made by the decision-making mechanism for location-based D2D link establishment.

The aim of the mechanism is to calculate the probability that a SNR between the devices is higher than

Page 40: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 40 of 102

a desired SNR threshold. If this probability is sufficiently high, a D2D link can be reliably established.

Figure 28: Overview of the envisioned scenario.

Location of each mobile device is specified with its x and y coordinates in a 2D coordinate system.

Location information of each device is erroneous with error per-coordinate being a zero-mean Gaussian

distributed random variable. Modelling per-coordinate localization errors with Gaussian distribution is

a usual and well-established procedure in the literature, some examples being [16], [17]. All per-

coordinate localization errors have the same standard deviation σ. This assumption is justified since at

these relatively small distances between devices (i.e., in the same environment) location information of

the devices are usually provided by the same localization service. Small-scale fading in a wireless

channel is characterized with a Rayleigh distribution because a harsh and complex indoor environment

is assumed with people carrying the devices (hence body shadowing), thus the probability of a Line-of-

Sight (LoS) component arriving at the receiver is very small.

2.5.3 System description

2.5.3.1 Euclidean Distance Between Devices

Suppose that the location information of the devices 1 and 2 are provided by the localization service as

(μX1, μY1) and μX2, μY2). Assuming that each coordinate of the ground-truth location information of the

devices ((X1, Y1) and (X2, Y2)) is a normally distributed random variable specified by its mean value μ

and standard deviation σ, it follows:

𝑋1~ℵ(𝜇𝑋1, 𝜎2), 𝑌1~ℵ(𝜇𝑌1, 𝜎

2)

𝑋2~ℵ(𝜇𝑋2, 𝜎2), 𝑌2~ℵ(𝜇𝑌2, 𝜎

2)

Euclidean distance between the devices is given by:

𝑑 = √(𝑋1 − 𝑋2)2 + (𝑌1 − 𝑌2)

2

If the true locations of the two devices are distributed as shown above, the Euclidean distance between

the devices is a random variable distributed according to Rice distribution 𝑑~𝑅𝑖𝑐𝑒(𝜈, √2𝜎) with the

Cumulative Distribution Function (CDF) given as follows:

𝐹(𝛿) = ℙ(d ≤ 𝛿) = 1 − 𝑄1 (𝜈

√2𝜎,

𝛿

√2𝜎)

Infrastructure

d~Rice(ν,√2σ)

Device1

Device2

σ

σ

(x2,y2)

(x1,y1)

X2=Ν(μx2,σ2)

Y2=Ν(μy2,σ2)

X1=Ν(μx1,σ2)

Y1=Ν(μy1,σ2)

Page 41: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 41 of 102

Where Q1 is the Marcum 1 function [18] and 𝜈 = √(𝜇𝑋1 − 𝜇𝑋2)2 + (𝜇𝑌1 − 𝜇𝑌2)

2.

2.5.3.2 Propagation Model

In the propagation model, path-loss, large-scale fading (shadowing), and small-scale fading (multi-path

fading) are considered. For modeling path loss and large-scale fading, we use the multi-wall model [19].

The applicability of the model for modeling indoor environments has been demonstrated in [20]. In the

model, the signal attenuation L(d) in dB, which is a result of path-loss and shadowing, is given by:

𝐿(𝑑) = 𝑙𝐶 + 10𝛾 log(𝑑) + 𝑀𝑤

lC is a constant value related to the model fitting procedure discussed below. The attenuation L(d) is

dependent on the distance d from the transmitting device, path-loss coefficient γ of the environment,

and the total attenuation from all walls Mw in the direct path between the transmitter and the receiver.

Each wall has its attenuation contribution lw, hence for the number of walls Nw in the direct path between

the transmitter and receiver total attenuation from all walls Mw is given as:

𝑀𝑤 = ∑𝑙𝑤

𝑁𝑤

𝑖=1

Therefore, the total attenuation in linear units, i.e. in Watt, is given by:

𝑙(𝑑) = 10𝐿(𝑑)10 = 𝑑𝛾10

𝑙𝑐+∑ 𝑙𝑤𝑁𝑤𝑖=1

10 = 𝜅𝑑𝛾

If the small-scale fading channel gain is denoted by the parameter h, the instantaneous SNR is given by:

𝑆𝑁𝑅 =ℎ𝑃𝑡𝑥

𝑁𝜅𝑑𝛾

Where N is the noise power. If the small-scale fading is Rayleigh distributed, then the channel gain h is

exponentially distributed in linear units [21]. For the rest we assume that h has exponential distribution

with mean value 1. Note that the instantaneous SNR is affected by two random parameters: h and d. Let

SNRth represents the SNR threshold above which a D2D communicational link can be reliably

established. Assuming that small-scale fading gain is exponentially distributed and d has Rice

distribution, the probability that a link can be reliably established is denoted by Fh,d(link) and

characterized as follows:

𝐹ℎ,𝑑(𝑙𝑖𝑛𝑘) = 𝔼 [𝑒𝑥𝑝 (−𝑆𝑁𝑅𝑡ℎ

𝑆𝑁𝑅̅̅ ̅̅ ̅̅)]

Where 𝑆𝑁𝑅̅̅ ̅̅ ̅̅ is the average SNR given by 𝑃𝑡𝑥

𝑁𝜅𝑑𝛾⁄ and the expectation is taken over d. Moreover, if

free-space path-loss exponent 𝛾 equals 2, we have:

𝐹ℎ,𝑑(𝑙𝑖𝑛𝑘) =𝑃𝑡𝑥𝑒𝑥𝑝 (

−2𝜈2𝜎2𝜅𝑁𝑆𝑁𝑅𝑡ℎ

𝑃𝑡𝑥 + 4𝜎2𝜅𝑁𝑆𝑁𝑅𝑡ℎ)

𝑃𝑡𝑥 + 4𝜎2𝜅𝑁𝑆𝑁𝑅𝑡ℎ

The above equation can be computationally complex. With further simplification, we assume that the

small-scale fading effect is averaged out. In this scenario, SNR is given by 𝑃𝑡𝑥

𝑁𝜅𝑑2⁄ . The link

probability Fd(link) is then given by:

𝐹𝑑(𝑙𝑖𝑛𝑘) = 1 − 𝑄1 (𝜈

√2𝜎,

1

√2𝜎(

𝑃𝑡𝑥

𝑁𝜅𝑆𝑁𝑅𝑡ℎ)

12⁄

)

The proofs of the derived equations are given in [22].

Page 42: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 42 of 102

2.5.3.3 Discussion

The proposed decision-making mechanism for location-based D2D link establishment leverages the

multi-wall model for modelling large-scale fading and path-loss. The multi-wall model assumes that an

accurate floor plan of the served environment is available and can be used for determining the number

of walls in the direct path between the devices that wish to establish a D2D link. The requirement for

the availability of a floor plan should not pose a challenge for the deployment of the proposed

mechanism. On the contrary, the floor plan will in most cases already be available since the environment

is served by an indoor localization service, and such services usually require a floor plan of the served

environment.

Furthermore, the multi-wall model requires an estimation of model parameters, i.e. the wall attenuation

lw and the constant lc related to a model fitting procedure. The model fitting procedure is a procedure of

calculating model parameters using measurements collected at different locations in a targeted

environment. The used model fitting procedure is a simple least-square fitting procedure given as

follows:

{𝑙𝑤 , 𝑙𝑐}𝑜𝑝𝑡 = 𝑎𝑟𝑔min𝑙𝑤,𝑙𝑐

{∑|𝑃𝑚 − (𝑃𝑡𝑥 − 𝐿(𝑑𝑚))|2𝑀

𝑚=1

}

The procedure allows minimization of the differences between powers Pm measured in each m-th (m =

1, 2, ... , M) measurement location and the model estimated received power Ptx−L(dm), where Ptx denotes

the transmit power at the transmitter. Obviously, the model fitting procedure requires a certain number

of measurements to be collected before the model parameters could be calculated. This again should not

pose a challenge for the deployment of the proposed mechanism. The usual procedure of almost

effortless collection of the required measurements is crowd-sourcing in which mobile devices in a

targeted environment opportunistically collect measurements, in this case RSS scans. These

measurements are then, together with the locations where they are collected, reported to the network

and can be leveraged for calculating the model parameters lc and lw. The locations of collected

measurements can be obtained from a localization service that is deployed in the targeted environment.

2.5.4 Evaluation

In the following, we describe evaluation of the proposed mechanism using WiFi as an example

technology. However, it should be noted that the proposed mechanism is also applicable for various

other technologies for wireless communication. For the evaluation of the proposed decision-making

mechanism for location-based D2D link establishment we leveraged measurements from 41 locations

in TWIST WiFi testbed environment, as shown in Figure 29. TWIST testbed is equipped with an

autonomous mobility platform for accurate positioning of a measuring device at different measurement

locations. The average per-axis localization error of the autonomous mobility platform in the testbed is

10 cm. At each measurement location we collected a set of 40 WiFi scans for WiFi beacon packets.

From the obtained packets we extracted Received Signal Strength Indicator (RSSI) values from four

transmitters with locations as indicated in Figure 29.

The transmitting devices were TL-WDR4300 wireless routers operating in the 2.4 GHz Industrial,

Scientific, and Medical (ISM) frequency band (channel 11) with their transmission powers set to 20

dBm (100 mW). As the receiving device a MacBook Pro notebook with the AirPort Extreme network

interface card was used. The experiments were performed during weekends where there were no people

present. Furthermore, all neighbouring WiFi nodes are operating in the 5 GHz ISM frequency band,

hence the wireless interference was minimized.

Page 43: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 43 of 102

Figure 29: Locations of WiFi APs and evaluation points in the testbed environment.

Two measurement collections were performed at different days. The first one was leveraged for the least

square fitting procedure for calculating the multi-wall parameters. The procedure yielded the wall

attenuation lw of 4.81 dBm and the constant lc of 43.73~dBm.

The second measurement collection was used for the evaluation of the proposed mechanism. The idea

of the evaluation procedure was to leverage the previously derived equation for calculating the

probability of establishing a D2D communication link between the transmitting device (one of the WiFi

routers) and the receiving device (MacBook Pro). This was done per location and per transmitting device

by setting the SNR threshold SNRth to different values around the measured average SNR value. The

measured average SNR value was obtained by averaging the obtained RSSI values from certain

transmitter and receiver locations and subtracting the network interface card's noise floor of -96 dBm.

In our evaluation procedure, we therefore in total leveraged 164 transmitter-receiver pairs (41 receiver

x 4 transmitter locations). In practical deployment scenarios, the SNR threshold is usually going to be

set to a certain value that is required for achieving the desired quality of a D2D communication link.

However, the aim of our experiments was to characterize the behaviour of the proposed mechanism for

SNR threshold values that are close to the measured average SNR, i.e. for which the proposed

mechanism has a higher chance of making wrong decisions. For that reason, in the experiments different

SNR threshold values ranged from values that were 5 dB lower to values 5 dB higher than the measured

average SNR value. We assumed that a D2D communication link can be reliably established if the

probability of establishing a link Fd(link) is higher than 0.95. We further assumed that the link cannot

be established if the probability Fd(link) is lower than 0.95. The evaluation metrics were the number of

false positive and false negative decisions about the possibility of establishing a D2D communication

link between two devices. As a reference for the evaluation, for the SNR threshold values strictly higher

than the average measured SNR values we assumed the link cannot be reliably established. Similarly,

for the SNR threshold values strictly lower than the measured average SNR we assumed that the

communication link could be reliably established.

The percentage of false positive link establishment decisions for various differences between SNR

threshold and measured average SNR is given in Figure 30. Similarly, the percentage of false negative

decisions is given in Figure 31. For deriving the results the per-axis localization error σ of both devices

was set to 0.1 m, since that is the positioning error of the leveraged autonomous mobility platform. As

visible in Figure 30, setting the SNR threshold to a value 5 dB higher than the average measured SNR

results in less than 2% of false positive link establishment decisions. Similarly, as visible in Figure 31,

if the measured average SNR is a value that is more than 4 dB lower than the SNR threshold the

probability of false negative link establishment decisions is reduced to less than 2%. In conclusion, the

results show that, even for a complex indoor environment, by setting the SNR threshold value to a value

that is 5 dB higher than the desired one for establishing a D2D link, the probability of false positive

decisions is reduced to less than 2%. However, such a conservative configuration of the SNR threshold

could yield false negative link establishment decisions for SNR values that are higher than the set

threshold, as depicted in Figure 31.

AP3

AP2

AP1

AP4

Page 44: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 44 of 102

Figure 30: Percentage of false positive link establishment decisions for various differences between

SNR threshold and measured average SNR.

Figure 31 Percentage of false negative link establishment decisions for various differences between SNR

threshold and measured average SNR.

As mentioned, for the previous results we used the per-axis localization error value σ of 0.1 m, since

that is the localization accuracy of the leveraged autonomous mobility platform. In the following, we

aim at establishing the correlation between the number of false negative D2D link establishment

decisions and per-axis localization error σ. We set the SNR threshold to a value that is 5 dB higher than

the one nominally needed for establishing a D2D link. We then increase the value of σ from 0.1 to 1.5

m and accordingly change the location coordinates of both devices by adding to their coordinates x and

y a number drawn from a zero-mean Gaussian distribution with variance σ2. By doing that we artificially

increase the error of location information of both devices. Since the SNR threshold is lower than the

average measured SNR, the devices should nominally be able to establish a D2D communication link,

hence the number of false negative decisions should be low. However, due to increased localization

Page 45: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 45 of 102

errors, the proposed mechanism becomes more conservative in its calculation of the probability of

establishing a D2D link.

Figure 32: Percentage of false negative link establishment decisions vs. per-axis localization error σ.

This ``loss of opportunity for D2D communication'' is depicted in Figure 32. As visible in the figure,

with an increase of per-axis localization error σ from 0.1 to 1.5 m the number of false negative decisions

increases from roughly 2% to roughly 12%. This relatively small loss of opportunity for D2D

communication due to an increase in localization errors comes from the fact that SNR is inversely related

to the distance between communication devices. In other words, SNR decreases relatively slowly with

an increase in the distance between devices. Hence, today's off-the-shelf indoor localization systems

with average localization errors of roughly 1 m in a 2D coordinate system (i.e. ~0.7 m localization errors

per-axis) can already support the operation of the proposed decision-making mechanism.

An increase in localization errors further results in a decrease in the number of false positive link

establishment decisions. Additionally, for a large margin between the average measured SNR and SNR

threshold (i.e. larger than 4 dB) there is no effect of the increased localization errors because the number

of false positives is even for small localization errors very close to zero. A decrease in the number of

false positives with an increase in localization errors should not be interpreted as a benefit of larger

localization errors in the proposed mechanism. That is to say, an increase in localization errors results

in a loss of potential for establishing a D2D communication link, as discussed previously. The side effect

here is that, due to increased localization errors, the proposed mechanism becomes more conservative

in making a positive link establishment decision, hence a decrease in the number of false positive link

establishment decision is observed.

2.6 Cooperation in Neighbour Discovery

2.6.1 Executive Summary

Neighbour discovery is a fundamental task in wireless networks in order to find potential communication

partners, discover services, and to efficiently access the wireless resource. In this work we focus on the

passive neighbour discovery in multi-channel environments. We present different discovery approaches

with low computational complexity that utilize cooperation between devices by exchanging discovery

Page 46: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 46 of 102

results in order to improve the discovery process. Furthermore, we present an optimized discovery

approach that uses multiple transceivers and evaluate the bounds on the performance under idealized

conditions. We analyse the impact of different network parameters such as number of channels and

number of neighbours on the discovery times of the developed approaches by using a simulative

evaluation. By putting the discovery times achievable with the cooperative or “gossiping” approaches

into perspective with the multi-transceiver results, we can quantify the value of cooperation in terms of

numbers of transceivers.

2.6.2 Introduction

Nowadays humans are surrounded by an abundance of different wireless networks, leading to situations

where many networks of the same or different wireless technologies are available in the same spot.

Switching on a WiFi transceiver in a densely populated city often reveals dozens of access points in

close vicinity, people wearing wireless body sensor networks can observe many other body sensor

networks when many people flock together, cars equipped with Wireless Access in Vehicular

Environment (WAVE) transceivers exchange information with nearby cars or roadside infrastructure in

intelligent transportation systems (ITS) and so on. In many scenarios it is useful or even required for a

device to discover other devices of the same wireless technology, be it to exchange information (e.g.

positions and headings in vehicular networks), to use services offered by other devices (e.g. Internet

access), or to negotiate on how to share physical resources like spectrum or time to achieve greater

efficiency and reduce resource competition.

Neighbour discovery can be done in two fundamentally different ways: in active discovery the searching

node actively sends packets, to which some other device belonging to an external network has to respond

to complete discovery. In contrast, in passive discovery a searching node does not transmit extra packets,

but instead just listens for “external” transmissions. Hence, the passive approach consumes fewer

channel resources, but discovery will generally take longer than in the active case and the discovery

time will depend on the activity levels of an external network.

Passive discovery is greatly helped by a characteristic shared by many modern wireless technologies:

the periodic transmission of beacon packets. For example, the IEEE 802.15.4 wireless personal area

network standard offers periodic beacon transmissions in its beaconed mode (as does IEEE 802.15.6),

many WiFi access points are configured to transmit beacons periodically and so on. At the same time,

however, discovery is made more complicated by the fact that very often these technologies can actually

pick one of several distinct frequency channels to operate on, and to discover a neighbour requires to

receive a beacon (or any other packet) on the right frequency channel. In the absence of any additional

information a searching node has to scan all available channels according to some search strategy.

In previous work [23], [24], [25], [26] we have considered sub-optimal and optimal search strategies for

the problem of discovering all neighbours and found that the number of frequency channels and the set

of allowable beacon periods (assumed to be always integer multiples of some base period) have a

substantial impact on the discovery time. We have formulated optimization problems and identified

optimal search strategies for some selected classes of allowable beacon sets. A key assumption in

previous work has always been that the searching node only has a single transceiver and works in

isolation, i.e. it does not collaborate with external devices or networks in the search process.

We consider the effect which cooperation has on discovery times when all involved nodes only have a

single transceiver. By cooperation we mean that each node includes the devices it has discovered so far

into its beacons (indicating their frequency channel, beacon period and “phase shift” or timing offset

with respect to the node sending the beacon) so that a searching node receiving such a beacon can learn

about the included devices at once. Secondly, we consider the effects of using multiple transceivers in

the discovery process and evaluate the achievable speedups under idealized conditions, giving bounds

on the performance that can be expected under more realistic assumptions. By putting the discovery

times achievable with this cooperative or “gossiping” approach into perspective with the multi-

transceiver results, we can quantify the value of cooperation in terms of numbers of transceivers. Our

results (obtained in an idealized setting and under a number of simplifying assumptions) suggest that

Page 47: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 47 of 102

increasing the number of transceivers for listening indeed can reduce the discovery times substantially,

with marginal additional returns for larger numbers of transceivers. Furthermore, for varying numbers

of channels the gossiping strategies achieve a performance that is comparable to having between two

and four transceivers for listening. When increasing the number of neighbouring devices while keeping

the number of channels fixed to 8, gossiping becomes even more beneficial and approaches the optimal

performance of having eight transceivers.

2.6.3 Related work

The approaches presented in the following split time into time slots and describe schedules in which

certain time slots are marked as active slots. A slot is called active when a neighboured device transmits

a beacon (or any other packet) in it or when the searching node decides to listen in it. Discovery occurs

when an active slot of the searching node overlaps with an active slot of at least one neighbour on the

same channel.

First, we present neighbour discovery approaches in which devices perform the discovery without any

cooperation. These non-cooperative neighbour discovery strategies can be classified into deterministic

and probabilistic approaches with respect to the selection of active slots. Deterministic approaches work

either with quorums, prime numbers or static/dynamic slot schemes. In quorum approaches discovery

is based on the intersection of schedules generated either by a grid or a cyclic pattern [27], [28]. In the

former case time slots are arranged in a square matrix from which each device picks one column and

one row to serve as its active slots. In the latter case discovery is achieved by constructing schedules

based on cyclic difference sets which have guaranteed overlaps. With approaches based on prime

numbers, such as DISCO [29] and U-Connect [30], devices are active during time slots that are multiples

of each device’s selected prime numbers. Discovery is then ensured by the Chinese Remainder Theorem.

Most recent work has been published in the area of static/dynamic slot schemes. Discovery schedules

generated by, e.g., Searchlight [31], Hello [32] and BlindDate [33] consist of multiple cycles, where in

each cycle there is one active slot at a fixed position and at least one dynamic slot whose position is

shifted each cycle. Probabilistic approaches have in common that devices select their operational state

for any time slot out of at least two states, transmit and listen, with a predefined probability [34], [35],

[36]. In [34], devices may also select with some probability an additional state sleep.

The approaches presented in the following utilize cooperation or coordination between devices to

improve the discovery results. First, we present approaches in which devices cooperate by exchanging

discovery results. An approach named the rumor-based scheme for IEEE 802.15.4 is presented in [37],

in which a mobile device is searching for a particular fixed network. In order to speed up the discovery,

devices exchange knowledge about the frequency channels on which fixed devices can be found and

their beacon period, but not about their time offset. If the target device is among the rumored devices,

the scan is focused on the corresponding channel. In [38] devices form groups after performing a

pairwise discovery. If a new node is discovered by a group member, it will schedule an additional active

slot when the new node will be active the next time in order to transmit its known neighbours. The set

of reported neighbours is filtered by a spatial selection using an estimation of the closeness of nodes

based on communication range and node density as well as a temporal selection based on the

communication range and maximum node velocity. The approaches presented in [39], [40] assume that

devices possess an omnidirectional as well as a directional antenna. Furthermore, devices know their

location. Neighbours discovered via the omnidirectional antenna are propagated using the directional

antenna [40] and vice versa [39]. In these works no quantitative comparison with multi-transceiver

strategies is carried out, and we investigate a wider range of cooperative strategies.

The following approaches use additional signalling between the devices performing the discovery or

with an external source to support the discovery process. In [41] nodes form groups and coordinate their

listening and beacon transmission schedules in order to achieve high propagation speed of group

membership information as well as to decrease discovery times for new nodes finding and joining the

group. A similar approach is described in [42] that focuses on continuous neighbour discovery rather

than on the initial discovery which is used for building segments of devices. If a segment member

Page 48: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 48 of 102

discovers a new device, it issues a wake-up message that is distributed to all other members via the

already known links of the segment, allowing to discover all hidden links inside the segment. Devices

in [43] exploit existent infrastructure Access Points (AP’s) as an external source of synchronization to

coordinate energy-efficient scanning to discover each other and form or join existing clusters. An

approach named CQuest [44] assumes that devices have a Low Power (LP) and High Power (HP) radio.

Devices within the communication range of the LP radio agree on a subset of devices by using a

contention-based approach that defines which devices will perform the energy expensive scan using the

HP radio. Neighbours discovered via the HP radio are included in the hello messages transmitted with

the LP radio. The cooperative approach presented in [45] utilizes an infrastructure-supported neighbour

discovery in the 2.4GHz range with the help of an AP to schedule data transmissions using a mmWave

radio. In contrast to these works, the approaches considered in this work do not require extra signalling

messages, they only require the ability to include additional information into the beacon messages.

2.6.4 System description

We consider devices interested in exploring their network environment in order to discover neighbours,

that is, other devices or networks within the communication range operating on a shared set of wireless

channels. The goals include looking for potential communication partners, devices providing specific

services, or avoiding conflicting resource allocations. All devices use the same wireless technology, are

static and are placed in the same location, so that we can disregard the effects of mobility, channel errors,

hidden-terminal scenarios and so on, and to make the task for one device to discover all other devices

meaningful.

We assume that each device announces its presence by periodically broadcasting beacon signalling

messages at certain individual Beacon Intervals (BI’s). If a neighbour is a network, beacons might be

transmitted by a selected device acting as network coordinator. The discovery is performed by passively

listening to the transmitted beacon messages. The only prior knowledge shared by all devices is the set

of possible operating channels and the set of BI’s that might be used by the neighbours.

We denote the shared set of wireless channels by 𝐶, and the set of allowable BI’s by 𝐵 ⊂ ℕ+. We

denote the set of devices by 𝐷 and the set of transceivers involved in the discovery by each device by

𝑅. The usage of multiple transceivers by a device can either be achieved by using multiple radios (which

we assume for the purposes of this work) or by having a coordinator splitting up the discovery process

and tasking multiple slave devices. We furthermore assume that all considered devices have the same

number of transceivers. The operating channel of device 𝑣 ∈ 𝐷 is denoted by 𝑐𝑣 ∈ 𝐶 and the interval

at which it sends its beacons is given by 𝑏𝑣 ∈ 𝐵. The set of BI’s 𝐵 might be determined by the choice

of communication technology or a set of common policies. We assume that time is divided into time

slots and that the maximum beacon transmission time (time required to send one beacon) is much smaller

than one-time slot. All devices magically agree on time slot boundaries. We denote the offset, that is,

the first-time slot, in which device 𝑣 sends a beacon, by 𝛿𝑣 ≤ 𝑏𝑣. We denote the set of beaconing time

slots of a device 𝑣 by Τ𝑣 = {𝛿𝑣 + 𝑖 ∙ 𝑏𝑣 ∶ 𝑖 ∈ ℕ0} . We call the resulting set of (channel, time slot) pairs,

Β𝑣 = {𝑐𝑣} × Τ𝑣 the beacon schedule of device 𝑣.

With the given notation, each device 𝑣 is assigned a triple (𝑐𝑣 , 𝑏𝑣 , 𝛿𝑣), which we call a device

configuration. Each device includes a device identification and its own device configuration into its

beacons, so that for a neighboured device it suffices to receive just one beacon to know the configuration.

We denote the set of possible device configurations for a given BI set 𝐵 and a given set of channels 𝐶

by 𝐾𝐵𝐶 = {(𝑐, 𝑏, 𝛿): 𝑐 𝜖 𝐶, 𝑏 𝜖 𝐵, 𝛿 𝜖 {1, … , 𝑏}}. For a time, slot 𝑡 and a BI 𝑏, 𝛿𝑏(𝑡) = (𝑡 𝑚𝑜𝑑 𝑏) + 1

shall denote the unique offset such that a neighbour with configuration (𝑐, 𝑏, 𝛿𝑏(𝑡)), 𝑐 𝜖 𝐶, transmits its

beacon in time slot 𝑡. Observe that 𝛿𝑏(𝑡) has periodicity 𝑏, that is, 𝛿𝑏(𝑡) = 𝛿𝑏(𝑡 + 𝑏) for each 𝑡, 𝑏.

Additionally, we assume that each configuration is assigned to at most one device. This assumption,

together with the assumption that beacon packets transmitted in the same slot do not collide with each

other, is designed to keep the problem deterministic, as otherwise repeated collisions between beacons

in the same slot / frequency would lead to randomized discovery times. We denote by 𝐾(𝑐, 𝑡) =

Page 49: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 49 of 102

{(𝑐, 𝑏, 𝛿𝑏(𝑡))𝜖 𝐾𝐵𝐶 : 𝑏 𝜖 𝐵} the set of all configurations from 𝐾𝐵𝐶 transmitting a beacon in slot 𝑡 on

channel 𝑐.

The devices perform the discovery by selecting time slots during which each of their transceivers 𝑟 𝜖 𝑅

listen on particular channels in order to overhear beacons transmitted by neighbours. If we fix a

particular transceiver 𝑟 𝜖 𝑅, then this transceiver follows a particular listening schedule ℒ, which

specifies a contiguous set of time slots in which to listen, and for each such time slot indicates the

channel on which to listen, i.e.ℒ = {(𝑐, 𝑡): 𝑐 ∈ 𝐶, 𝑡 ∈ {1,… , |ℒ|}}. Since we assume that a transceiver

cannot simultaneously listen on multiple channels, we demand 𝑡 = 𝑡′ ⟹ 𝑐 = 𝑐′for two pairs (𝑐, 𝑡) ∈ ℒ and (𝑐′, 𝑡′) ∈ ℒ. Each transceiver of a device will have its own listening schedule. We furthermore

assume that the time a transceiver requires to switch channels is negligible. If no beacons are lost and

the set of neighbours does not change during the discovery, and if a schedule ℒ contains at least one

element from the beacon schedule 𝐵𝐾 for each configuration 𝑘 ∈ 𝐾𝐵𝐶, one can discover all neighbours

operating with any BI 𝑏 ∈ 𝐵 on a channel 𝑐 ∈ 𝐶. Additionally, we denote the set of previously scanned

(channel, time slot) pairs of a listening schedule ℒ by ℒ𝑝.

Devices may include information obtained during discovery in their beacon messages in order to support

the discovery process of nearby devices. The information included about discovered neighbours (which

we call gossip information) consists of their identifier, operating channel, BI, and time of contact,

relative to the transmission of the beacon transporting the information. Using this information devices

are able to determine the corresponding device configuration (𝑐𝑣 , 𝑏𝑣 , 𝛿𝑣) which may be used for

modifying the listening schedules. We denote the set of (channel, time slot) pairs resulting from the

algorithm processing the gossip information as ℒ𝑔.

In the following results are obtained under the idealizing assumption that there are no beacon losses due

to collisions or interference, no deaf periods when switching between channels (switching time is 0),

and that beacons which would cross time slot borders are received correctly (beacon transmission/

reception time is 0). There is no jitter in beacon transmissions. Furthermore, we assume that devices are

synchronized to time slot boundaries.

2.6.5 Cooperation in neighbour discovery

A main goal of this work is to investigate cooperative discovery strategies (i.e. strategies in which

devices include their current knowledge about existing neighbours and their configuration into their

beacons to help each other in the discovery process) as a means of “poor-man’s-parallelization” of the

discovery process. Some benefits of cooperation are resource sharing among devices (e.g. energy

required to listen for beacon transmissions) or to speed up the discovery process. To investigate the

effectiveness of cooperative discovery, we compare the cooperative strategy not only against optimal

single-transceiver strategies, but also against (optimal) strategies in which a discovering device

possesses multiple transceivers and uses them in a coordinated fashion. In the next Section 2.6.5.1 we

present a range of cooperative or “gossip based” approaches utilizing the exchange of discovery results

and in Section 2.6.5.2 we describe a discovery approach using multiple transceivers.

2.6.5.1 Gossip-based Discovery Approaches

In the following we present a number of cooperative or gossip-based approaches. All devices only use

single radio transceivers and can only listen on one channel at a time. However, each device includes

all the information it has collected so far (device/network identifiers and their configuration) into its

own beacons, where we assume that beacons can be arbitrarily large (note that in Section 2.6.6.4 we

also consider the case of bounded beacon sizes).

The starting point for the design of our gossip-based algorithms is the GREEDY DTR-SWT strategy

presented in [26], which we briefly summarize and which henceforth we simply refer to as the GREEDY

strategy. We represent by ℒ𝑝(𝑡) the previous listening schedule (pairs of (channel, time slot)) followed

in the slots before time slot 𝑡. By our worst-case assumption that all possible configurations from 𝐾𝐵𝐶

Page 50: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 50 of 102

are actually used by neighbouring devices, ℒ𝑝(𝑡) then also determines the set of configurations 𝐷(𝑡) we

have already discovered before time 𝑡. In time slot 𝑡 we pick the channel 𝑐 on which to listen as:

𝑐 = 𝑎𝑟𝑔𝑚𝑎𝑥𝑐′∈𝐶 |𝐾(𝑐′, 𝑡) 𝐷(𝑡)|

i.e. it picks the channel on which the largest number of yet-undiscovered configurations can be

discovered in a greedy fashion. This selection rule is then repeatedly applied from slot to slot until all

configurations have been discovered.

To properly explain our gossiping strategies, we need a few more notions. We refer to configurations

which the searching device has discovered by receiving a beacon sent by the owning device as a direct

discovery, whereas a configuration only learned from a neighbour’s beacon and not directly observed

before is called an indirect discovery. For an indirectly discovered configuration there are two choices

for setting its discovery time: in the case of immediate accounting (IMM) the discovery time is set to

be the time where the foreign beacon listing the configuration in its payload has been received (i.e.

where the searching device has received gossip information). In the case of verified accounting (VER)

the discovery time is set to the (later) time where a direct beacon is received from the indirectly

discovered configuration. The discovery time of a directly discovered configuration is clearly the time

slot in which the discovery has been made.

In our first gossiping strategy, termed GSP-UNMODIMM, indirectly discovered configurations are

immediately accounted for, but they are not added to the set 𝐷(𝑡) of already known configurations that

is used in the underlying GREEDY algorithm to calculate the next channel to listen on. In other words:

indirectly discovered configurations do not lead to a modification of the listening schedule.

In all the remaining strategies the indirectly discovered configurations are added to 𝐷(𝑡) and hence can

modify the listening schedule (and hopefully shorten it). To achieve this, the new information is included

into the current knowledge 𝐷(𝑡) while using the GREEDY channel selection rule (see equation above)

as before. In the GSP-MOD-IMM strategy, indirectly discovered configurations are immediately

accounted for. The GSP-MOD-IMM-REV strategy builds on the GSP-MOD-IMM strategy (in

particular, indirect discoveries are immediately accounted for), but adds a “re-visiting” feature: by virtue

of including indirectly discovered configurations into the set 𝐷(𝑡) it can well happen that the schedule

calculated after the discovery will not lead to any direct beacon reception from an indirectly discovered

device, and we may miss out on any information that this device might have for us. Therefore, in addition

to the (modified) GREEDY schedule calculated in response to indirect discoveries, an additional

schedule is created in which extra slots are scheduled to receive a beacon once from indirectly

discovered devices. Indirectly discovered devices with larger BI are prioritized in the creation of the

schedule. This additional schedule “overrides” the modified GREEDY schedule, i.e. when both

schedules prescribe some channel for a given time slot t, the channel coming from the additional

schedule is chosen. Finally, the GSP-MOD-VER is similar to the GSP-MOD-IMM-REV strategy, but

applies verified accounting instead of immediate accounting. This may be appropriate when indirectly

discovered configurations are not immediately trusted – for example, in a multi-hop network a neighbour

might report a configuration hidden from the discovering device.

In scenarios in which the number of gossip entries in beacon messages is limited and not sufficient to

include all discovery results, the strategies have to make a choice. Selecting the entries just based on

how recently they have been discovered (i.e. the point in time when the last beacon was received) favors

devices with a small BI which can generally be detected quickly even without the usage of gossiping.

Therefore, we give preference to configurations with a smaller last contact time in multiples of their BI.

With this we aim to avoid penalizing neighbours operating with larger BI, e.g. a neighbour operating

with BI 10 and a relative last contact time of -16 time slots will be prioritized over an entry with BI 5

and a relative last contact time of -10 time slots.

Table 6 gives an overview of the discovery strategies.

Page 51: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 51 of 102

Table 6 Overview of the discovery strategies and properties.

Strategy Description

GREEDY Low complex discovery strategies that greedily selects the channel with the

maximum number of discoverable configurations in each time slot.

MT-OPT-R Optimized discovery strategy obtained by solving an Integer Linear Program

(ILP) that utilizes up to R transceivers in parallel.

GSP In gossip (GSP) based discovery strategies devices include information

about their discoveries in broadcasted beacon messages.

GSP Property

MOD / UNMOD When a device receives new gossip information, the discovery strategy can

either MODify the listening schedule or stick to the original schedule

keeping it UNMODified.

IMM / VER Specifies the discovery time in case of indirect discovery via gossiping. It

can either be IMMediately accounted or accounted later to a point in time

when a beacon is received directly from the device previously being

gossiped and therefore VERified.

REV Discovery strategies may alter the listening schedule to REVisit already

discovered neighbours in order to gather additional gossip information.

2.6.5.2 Multi-Transceiver Optimized (MT-OPT) Strategy

In the MT-OPT approach we assume that a single device with 𝑟 separately controllable transceivers sets

out to discover its neighbourhood (instead of a single device with multiple radios one could equivalently

consider distributing the discovery task within one network to multiple closely coordinated member

nodes). The searching node does not make use of any information found in the beacons of other devices

beyond the configuration and identification of that device. Broadly, the MT-OPT strategy is given by

an optimal solution to an ILP that is an extension of the GENOPT strategy presented in [26] supporting

multiple transceivers. The result of the optimization are listening schedules ℒ𝑟 for each transceiver 𝑟 ∈𝑅, so that the Mean Discovery Time (MDT) (see Section 2.6.6.2) for all configurations (𝑐, 𝑏, 𝛿) (with

𝑐 𝜖 𝐶, 𝑏 𝜖 𝐵 𝑎𝑛𝑑 𝛿 𝜖 {1,… . , 𝑏}) is being minimized. We refer to the MT-OPT strategy with 𝑅

transceivers as MT-OPT-R.

First, we define the decision variables 𝑥𝑐,𝑡,𝑏,𝑟 and the auxiliary variables ℎ𝑐,𝑡,,𝑟 as follows:

In the following 𝐿𝐶𝑀(𝑋) denotes the least common multiple of a set 𝑋 ⊂ ℕ+. Then MT-OPT can be

formulated as follows:

Page 52: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 52 of 102

In this formulation, constraint (C1) ensures that each configuration is detected, (C2) ensures that a

configuration (𝑐, 𝑏, 𝛿𝑏(𝑡)) can only be detected by transceiver 𝑟 if channel 𝑐 is scanned during time slot

𝑡 by 𝑟, (C3) makes sure that each transceiver 𝑟 scans at most one channel during a time slot.

2.6.6 Evaluation

In this section, we first detail the parameter settings of the analysed scenarios and the evaluation

methodology. We then describe the performance metrics used in this evaluation. Finally, we present the

evaluation results when varying important network parameters: the number of channels, the number of

transceivers and the number of neighbours.

2.6.6.1 Setting

In order to evaluate the proposed strategies for different numbers of channels and devices we use a

custom-made discrete-event simulator written in Java. We draw random samples for the BI sets 𝐵 and

apply all algorithms to the same set of samples. Due to the high computational complexity of the MT-

OPT strategy, we had to restrict the size of the studied scenarios, that is, the number of channels, as well

as the number and magnitude of elements in the BI sets.

First, we draw |𝐵| from a uniform distribution over [3; 6] and then draw individual BI’s from a uniform

distribution over [1; 10] for a total of 50 BI sets 𝐵. For each drawn BI set 𝐵, number of channels and

number of devices we run 30 replications, in each of which the device configurations (for the given

parameters) are generated randomly (but they are unique). More specifically, each device configuration

is assigned a channel, a BI and start offset randomly according to a uniform distribution.

We vary the number of devices between 5 and 80 and the number of channels between 2 and 30. Since

listening schedules for the MT-OPT strategy are obtained by solving an ILP requiring lots of

computational power, the maximum number of channels for this strategy is limited to 10. In those

experiments where we vary the number of devices we consistently use eight channels. In those

experiments where we vary the number of channels we use 15 devices.

For comparison we included the GREEDY strategy in the evaluation. This strategy does not utilize any

cooperation in the discovery process and is based on fixed listening schedules for a specific set of

channels and set of BI’s.

All results presented in the following are accompanied by confidence intervals for a confidence level of

95%.

Page 53: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 53 of 102

2.6.6.2 Performance metrics

We next describe the performance metrics that we are using to evaluate the different algorithms. The

evaluation is performed from the view of the device with the lowest identifier, i.e. a simulation run is

finished when this device has discovered all its neighbours.

For each of the following metrics the results are normalized to the results achieved by the best possible

non-cooperative strategy, i.e. the strategy of listening on all channels at the same time (where all

neighbours are discovered when their first beacon is transmitted). For a specific scenario and specific

scheme, the considered metrics are computed and then normalized. Then the mean of the normalized

values over the 30 scenarios for a BI set 𝐵 is computed. Lastly, the mean of the averaged results of all

50 drawn BI sets 𝐵 is computed.

The discovery time of a neighbour is the difference between the time at which the listening device starts

operating (at time 0) and the time at which the first beacon of this neighbour is received. In case of

strategies which apply immediate accounting for indirectly discovered neighbours (see Section 2.6.5.1),

a discovery is also recorded when gossip information of a previously unknown neighbour is received.

We mainly use two metrics. The Mean Discovery Time (MDT) is the mean of the discovery times of all

neighbours discovered. The MDT is an important metric in scenarios in which devices are interested in

finding some subset of all existing neighbours, e.g. devices looking for one particular access point. The

Last Discovery Time (LDT) is the discovery time of the last neighbour discovered. The LDT is

important in scenarios in which a device is interested in discovering the complete neighbourhood, e.g.

devices that want to start a new network and use the discovery results to find a suitable channel and BI

combination that does not interfere with already existing networks.

2.6.6.3 Results for Unbounded Beacon Size

In this section we present results for the case of an unbounded beacon size, i.e. there is no constraint on

the number of gossip entries in a beacon message.

1) MDT: We first consider results for the MDT.

a) Varying Number of Channels: In Figure 33 we show the normalized MDT of all considered strategies

(including three different versions of the MT-OPT scheme with different numbers of transceivers) for

varying number of channels. The following points are noteworthy:

• If we compare the results of the GSP-MOD-IMM, GSP-UNMOD-IMM and GSP-MOD-IMM-

REV strategies with the results for the MT-OPT approach with different numbers of

transceivers, it can be seen that the best gossiping strategy show a performance equivalent to

between two and four transceivers (and optimal scheduling of their listening activities).

• Surprisingly, the GSP-UNMOD-IMM strategy (in which the listening schedule is not

recomputed after indirect discoveries) achieves a slightly smaller MDT than the GSP-MOD-

IMM strategies (which attempt to shorten the schedule after indirect discoveries). This suggests

that attempting to shorten the schedule based on indirect discoveries can actually be harmful.

One possible explanation for this is that by dropping these later slots from our schedule we

deprive the listener of opportunities to hear directly from indirectly discovered neighbours and

pick up any additional gossip information they might have obtained in the meantime. Note that,

heuristically, the later we hear a beacon from a neighbour, the more information is included in

them.

• The results for the GSP-MOD-VER scheme correspond to the usage of one to two transceivers

in the MTOPT strategy. However, it appears that with increasing number of channels the GSP-

MOD-VER scheme starts to outperform MT-OPT-2.

b) Varying Number of Neighbours: In Figure 34 we show the impact of the number of neighbours

Page 54: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 54 of 102

on the normalized MDT of the discovery strategies (considering five different versions of MT-OPT)

while keeping the number of channels fixed to the default value of 8. The following points are

interesting:

• With increasing number of neighbours the MDT of the GSP-MOD-IMM and GSP-

UNMOD-IMM strategies decreases monotonically and reaches the performance of the MT-

OPT-6 strategy at 80 neighbours.

• Interestingly, the MDT of the GSP-MOD-VER is not monotonically decreasing but rather

shows a minimum around 20 neighbours and increases again with larger numbers of

neighbours. This is caused by the recomputation of listening schedules forcing to validate

gossiped information. With lower numbers of neighbours the validation decreases the MDT

even though it is still higher than the results of the other three strategies assuming all gossip

information to be correct. Since the number of neighbours have no impact on the length of

the original listening schedule, the forced validation slots added to the schedule result in a

delayed discovery of other neighbours that have not yet been gossiped. The impact of the

validation of neighbours can also be seen in the results of the GSPMOD- IMM-REV

strategy. It results in a larger MDT than for the GSP-MOD-IMM and GSP-UNMOD-IMM

strategies, with an equivalent of around 4 transceivers using the MT-OPT approach with 80

neighbours.

2) LDT: We next consider the LDT.

a) Varying Number of Channels: Figure 35 depicts the normalized LDT with varying number of

channels. Broadly, we can observe the same trends as for the MDT and varying number of channels,

with some slight differences. Compared to the MDT results the GSP-MOD-IMM-REV strategy has a

higher LDT than the GSP-UNMOD-IMM strategy and very similar results to GSP-MOD-IMM. The

LDT of the GSPMOD- VER strategies is lower than MT-OPT-2 for higher numbers of channels.

Furthermore, the LDT of the GSPUNMOD- IMM strategy is closer to MT-OPT-4 compared to the

results of the MDT.

b) Varying Number of Neighbours: Figure 36 shows the normalized LDT when varying the number of

neighbours. The LDT of the GSP-UNMOD-IMM scheme decreases towards the optimum of MT-OPT-

8 with increasing number of neighbours. When looking at the GSP-MOD-IMM-REV strategy, the

combination of removing discovered configurations during schedule recomputation and having to revisit

gossiped neighbour’s results in large and even increasing LDT values for larger numbers of neighbours.

Furthermore, the results are similar to GSP-MOD-VER but with an offset caused by the immediate

accounting property of GSP-MOD-IMM-REV, which simply counts discoveries earlier than GSP-

MOD-VER does.

Figure 33 Normalized MDT under varying number of channels.

Page 55: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 55 of 102

Figure 34 Normalized MDT under varying number of neighbours.

Figure 35 Normalized LDT under varying number of channels.

Figure 36 Normalized LDT under varying number of neighbours.

2.6.6.4 Results for Bounded Beacon Size

In the results presented so far, we have assumed that beacons are sufficiently large and can contain all

discoveries that a device has ever made. In the following we introduce restrictions on the number of

configurations that can be reported in a beacon and compare the resulting MDT performance of selected

strategies against the performance achievable with an unlimited beacon size. We again vary the number

of channels and the number of neighbours. The number of gossip entries has been set to 1, 5 and

Page 56: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 56 of 102

unlimited entries. Please note that a limitation on the number of configurations that can be included also

introduces the problem of selecting the configurations to include into beacons when many more are

known than can be included. The selection rule is explained in Section IV-A.

Varying Number of Channels: In Figure 37 the normalized MDT of the gossip-based strategies is shown

for different limits for the number of gossip entries and for varying numbers of channels (with 15

neighbours). As expected, allowing devices to exchange more gossip information per beacon message

decreases the MDT for all analysed strategies when considering the same number of channels and

neighbours. In contrast to the results of Section V-C1 in which only a small number of channels has

been analysed (so we could include results for the ILP-based MT-OPT approach), the GSPMOD- IMM-

REV strategy has the lowest MDT among the gossip-based strategies. Since the number of neighbours

is set to the fixed value of 15, higher numbers of channels result in a longer time required to detect all

neighbours. Therefore, receiving additional gossip information in the process of validating/revisiting

indirectly discovered neighbours helps with finishing the detection of all neighbours in scenarios with a

large number of channels and/or a BI set B with large entries.

Even though the GSP-MOD-VER strategy considers a discovery of a neighbour only if one of its

beacons is directly received, it has a lower MDT than GSP-MOD-IMM and GSPUNMOD- IMM for

large numbers of channels and limited number of gossip entries per beacon.

2) Varying Number of Neighbours: Figure 38 depicts the normalized MDT for limited beacon entries

and different numbers of neighbours. The MDT of GSP-MOD-VER and GSP-MOD-IMM-REV suffers

from the process of validating or revisiting neighbours as described in V-C1b and is increasing for more

than 25 neighbours for limited beacon entries. On the other hand, for an unlimited number of entries the

MDT of GSP-MOD-IMM-REV is continuously decreasing when increasing the number of neighbours.

However, for more than 25 neighbours the GSP-MOD-IMM-REV strategy has the highest MDT among

the strategies assuming gossip entries to be true.

A large number of gossip entries has only minor impact on the MDT of GSP-MOD-VER; the results for

5 entries and an unlimited number of entries are very close to each other. Furthermore, for large numbers

of neighbours the gap between the results of the different allowed number of beacon entries vanishes.

The results of the GSP-MOD-IMM and GSPUNMOD- IMM strategy are almost similar when only a

single beacon entry is allowed. However, for larger number of entries the GSP-UNMOD-IMM achieves

a faster MDT.

Figure 37 Normalized MDT of the gossiping strategies with different limits for the gossip entries per

beacon for varying number of channels.

Page 57: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 57 of 102

Figure 38 Normalized MDT of the gossiping strategies with different limits for the gossip entries per

beacon for varying number of neighbours.

2.6.7 Conclusion

This paper presented different neighbour discovery approaches utilizing cooperation between devices

in order to improve the discovery process. We have developed gossip based discovery strategies that

exchange discovery results by including them in periodically transmitted beacon messages. The gossip-

based approaches have been compared to an optimal multi-transceiver approach whose listening

schedules are optimized regarding the Mean Discovery Time (MDT). We have shown that by only

exchanging discovery results via beacon messages, devices can achieve a significant improvement in

the MDT and Last Discovery Time (LDT) depending on the number of channels and neighbours

comparable to the utilization of up to the optimal number of transceivers being equal to the number of

channels.

• KPI -- “20% decrease in D2D neighbour discovery time “

In comparison to the ILP optimized single transceiver discovery strategy MT-OPT-1 the discovery

strategies using cooperation show already an improvement of the MDT of up to 50% for only two

channels with a decreased discovery time of up to 60% for 10 channels. Furthermore, for larger number

of channels the gap between MT-OPT-1 and the gossip based strategies even increases.

Similar improvements can be observed for the LDT in which the discovery time is decreased by up to

50% for two channels and up to 60% for 10 channels.

Therefore we can see that the KPI “20% decrease in D2D neighbour discovery time“ is clearly fulfilled

by using cooperation approaches in the discovery process.

2.7 Throughput measurements and interface for load balancing between several

PHY technologies (mmWave, GFDM)

2.7.1 Introduction

The 5G architecture and its vertical sectors are foreseen to accommodate various types of application

requirements such as latency, throughput, resilience, etc. The promising solution for addressing such

wide range of requirements is a type of infrastructure equipped with multiple radio access technologies

(multi-RAT). Hence, assuming an intelligent base station that is equipped with different physical layers

(PHY), we target a robust and high throughput communication scenario. Here, we employ generalized

frequency division multiplexing (GFDM) as a flexible waveform and millimeter wave (mmWave) as a

broadband type of communication.

Page 58: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 58 of 102

Precisely, GFDM is a flexible waveform, which can adapt itself to the application requirements by

simply changing its on-the-fly parameter values. For instance, by changing the number of active

subcarriers on a packet basis, GFDM changes the bandwidth of the signal in order to fit itself into the

spectrum holes suitable for cognitive radio scenarios. Thanks to the low out of band emission of GFDM,

a significantly smaller number of guard subcarriers are required when it is compared to an OFDM signal.

Such advantage of GFDM over OFDM allows increase of spectral efficiency in frequency domain. On

the other hand, if an application requires a considerably high throughput, mmWave is our choice due to

its broadband type of communication. However, transmission at much higher frequencies suffer from

different propagation characteristics compared to traditional bands, specifically the large free space

pathloss. Caused by the small wavelength, the severe loss can be compensated by high directional

transmission using large antenna arrays. However, new cellular protocols have to be developed, which

can find the initial beam combination to start communication between access point and user device

(beam-alignment) and to adaptively update the beam direction according to the user devices movement

(beam-tracking). The corresponding algorithms are designed to ponder the robustness and overhead,

resulting in a general lower resilience of the mmWave transmission compared to cellular transmission

in lower frequency bands. Additionally, the pathloss and reflection properties of the channel result in a

sparse channel, meaning that NLOS connections are infeasible in certain situations (if no corresponding

reflector is available).

One solution to cope with the problems described is to combine transmission in a lower frequency band

(and lower bandwidth and rate) with a high bandwith mmWave transmission. For the reasons of different

sampling, frame and latency constraints, the physical layers are separated, giving the higher layer the

flexibility to balance the transmission load according to the current quality of the mmWave link. By

combining the high capacity of the mmWave link and the resilience of the lower frequency link, the

overall cellular link can combine both of the features. It is worth to be noted, that traditional cellular

systems operate usually at a larger scale (macrocell) as the mmWave cellular systems (microcell), so

that one lower frequency band base station could connect the user devices of several mmWave

microcells. The overall setup of the scenario is depicted in Figure 39.

2.7.2 System description

We assume an intelligent base station and an intelligent user are equipped with multi-RAT e.g. GFDM

and mmWave and they can operate them in parallel. GFDM operates at lower frequency bands e.g. 1.99

GHz while the mmWave link operates at 58.32-64.8 GHz (according to IEEE 802.11ad) with a

frequency span of 750 MHz. The GFDM PHY uses a robust modulation and coding scheme (MCS) in

order to improve the resilience of the link while the mmWave setup adapts the beam forming algorithms

for maximizing the throughput.

Figure 39: GFDM/mmWave multi-RAT scenario.

Page 59: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 59 of 102

Here, we use the flexible GFDM PHY software component in order to implement the physical layer on

FPGA of the NI USRP RIOs. The flexible GFDM PHY (i.e. uploaded to the eWine intelligent toolbox)

is a software defined radio that implements and runs all the necessary PHY components on hardware. A

block-diagram of the implemented PHY components is depicted in Figure 40. The implemented MCS

is QPSK with 1/2 code-rate of convolutional code. The synchronization and channel estimation are

preamble based with 64 subcarriers and 2 subsymbols.

The mmWave setup consists of an Access Point (AP) and a User Device (UD), which have identical

hardware. Each node consists of one baseband unit with several FPGAs, one power supply and one

integrated transceiver and antenna unit. The physical layer is programmed on several FPGAs, making a

real time and bidirectional processing possible. The system uses Single Carrier with Null-CP for

modulation and features a full L1 implementation including channel equalization and turbo coding. To

adapt to the channel quality needs, several MCS are introduced, ranging from BPSK rate 1/2 to 16 QAM

rate 7/8. We separate the uplink and downlink communication via time division multiplexing (TDM).

Additionally, parts of the MAC code were implemented in a real time processing unit, controlling the

radio resource control and the signalling protocol between AP and UD. The integrated transceiver and

antenna chip uses physically separated phased arrays for transmission and reception. For each mode, 12

antenna elements are available, while only 5 elements are arranged in azimuthal direction. This results

in a nominal half power beam width (HPBW) of 36◦. Each node has a fixed codebook of 25 beams for

transmitter and receiver equally distributed in angular. The codebook for the transmit and receive beams

is different and was measured in the anechoic chamber.

Figure 40: flexible GFDM PHY.

Page 60: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 60 of 102

Figure 41: Multi-RAT (GFDM, mmWave) system setup.

An overview of the GFDM and mmWave setup is shown in Figure 41. The above application scenario

is implemented in an indoor environment. Therefore, despite of wireless transmission of both GFDM

and mmWave, the GFDM signal would go through a slow- and flat-fading channel.

2.7.3 Implementation details

The load balancing algorithm is implemented on a host PC and multiplexes the UDP packets to either

one or multiple physical layers. Although, in this scenario, the packets are only forwarded to one PHY

at the same time instant, meaning that if mmWave is available (e.g. it has line-of-sight connection) the

payload is forwarded to the mmWave link transmitter. If the throughput of the mmWave link drops from

a certain threshold (e.g. it loses the LoS connection and no strong reflector exists), a feedback from Rx

is sent to the multiplexer in order to switch the payload transmission from mmWave link to GFDM. In

this scenario, we assume GFDM has a robust connection to the receiver.

An initial version of the load balancing was implemented and presented during 5G summit 2017 in

Dresden and a video of the demo was uploaded to the eWine website as a news feed. Figure 42 shows a

screen-shot of the video with the two PHY Multi-RAT system while mmWave UD has mobility. In the

presented demo, if the throughput of the mmWave PHY falls below 50 Mbit/s, the load-balancing

algorithm sends the payload packets to GFDM.

mmWave indicator (0/1)

PHY 1: GFDM

PHY 2: mmWave

Page 61: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 61 of 102

Figure 42: Multi-RAT Demo at 5G Summit 2017, Dresden.

2.7.4 Evaluation

In this section we provide the real-time throughput measurements of the Multi-RAT (GFDM, mmWave)

system. Since the load-balancing algorithm forwards the payload packets to one PHY at the same time

instant, we performed the measurements separately for GFDM and mmWave.

Figure 43 shows the throughput measurements for GFDM. Here, we adapt 15 subsymbols in 64

subcarriers over bandwidth of 20 MHz at 1.99 GHz carrier frequency. Each subcarrier is circularly pulse

shaped with a filter roll-off factor of 0.5. The dot points in the figure are the exact measurements and

their average is also shown via a trendline. One can see that the throughput increases linearly as the

number of active subcarriers increases and a maximum throughput value of 9.6 Mbit/s has been achieved

via GFDM while the modulation and coding scheme was QPSK 1/2.

Figure 43: Throughput measurements for GFDM with QPSK 1/2 modulation and coding.

0

2

4

6

8

10

12

0 10 20 30 40 50 60

Th

rou

ghp

ut

(Mb

it/s

)

Number of active subcarriers

Page 62: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 62 of 102

The throughput measurements for mmWave link is depicted in Figure 44. The mmWave carrier

frequency is 60.48 GHz with a bandwidth of 750 MHz. The beam pair combinations for the AP and

UD can switch every TDM slot, consisting of 150 blocks of 0.68μs length. As shown in figure, the left

three columns compare the throughput for different MCS while the beam tracking is active and the UD

is allowed to have mobility. In this case, a maximum accumulated throughput of 639 Mbit/s is

achieved via the MCS 3/4 QPSK. On the other hand, if the UD and AP have fixed positions, the beam

tracking algorithm can be switched off which leads to less overhead of data communication. Hence,

higher throughput of up to 760 Mbit/s via MCS 3/4 QPSK is achieved.

Figure 44: Throughput measurements for mmWave.

0

100

200

300

400

500

600

700

800

BeamTracking

BeamTracking

BeamTracking

No mobility No mobility No mobility

1/5 BPSK 1/2 QPSK 3/4 QPSK 1/5 BPSK 1/2 QPSK 3/4 QPSK

Thro

ugh

pu

t (M

bit

/s)

Downlink Uplink Accumulated

Page 63: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 63 of 102

3 LOCALIZATION

3.1 Generalized architecture

Location information of mobile devices is a foundational input to location-based services and a valuable

source of context information in wireless networks. To maximize the value, we need location

information that is accurate, robust, and promptly and seamlessly available. Unfortunately, individual

localization services seldom satisfy all these requirements. For achieving that vision, a set of challenges

has to be addressed, pertaining to handover, fusion, and integration of different sources of location

information. Current approaches for integration of individual localization services are either not specific

enough or are limited in scope and lack flexibility. In the following, we provide a detailed design and a

prototypical implementation of the Standardized Localization Service (SLSR), a middleware

architecture for achieving those goals. We instantiate the service in an office environment and perform

exhaustive performance benchmarking in a testbed specifically designed for supporting such

experimentation. Our results characterize the effects of different functional components envisioned in

the SLSR on its performance. Our results also quantify the accuracy benefits of fusion of representative

sources of location information.

3.1.1 Introduction

We are witnessing a rapid growth in demand for location information of mobile devices. Location

information is an enabler of location-based services [46] and decisive context information for improving

and enhancing wireless networks [47]. These use-case scenarios require seamless, accurate, and robust

location information. However, there is no single prominent solution that currently satisfies all specified

requirements. On the contrary, some solutions are able to provide satisfactory performance in some

environments, while some others provide good performance in other environments. Their deployments

can overlap, which is pronounced for indoor environments due to the absence of the Global Positioning

System (GPS), resulting in a plethora of alternative approaches for such environments.

For promptly, seamlessly, and robustly achieving the desired accuracy, there is a need for an entity for

fusion, handover, and integration of different sources of location information. This can be done either

on the level of fusion of raw data, i.e. resources used for generating location information, or on the level

of fusion of location estimates provided by different elementary sources of such information. The former

introduces organizational issues, an example being that many sources of raw data for localization are

part of other systems to which a localization service does not have full access. Furthermore, this

approach raises ownership and privacy issues, e.g. it is hard to put a price on the access to resources for

generating location information and it is difficult to prevent their leakage.

We envision a future where localization services are not going to leak out raw data, but will rather be

black-box services with a price tag for providing location estimates. Hence, to improve localization

performance, we are facilitating the handover between and the fusion of black-box services that can

provide location estimates in a given space at a certain time. Standardization of such an architecture is

given in the EU eWine Deliverable “D3.1: Context provisioning and sensing algorithms design and

implementation”. While such architectures have been abstractly specified, examples being [48], [49], a

full specification and implementation of such a service is still lacking.

To fill this gap, we provide the SLSR, a fully specified and implemented localization service

architecture. The architecture enables provisioning of location information to the applications regardless

of the services that are providing this information. This functionality is supported by a middleware entity

of the SLSR, i.e. the Integrated Location Service (ILS). Assuming that the user is mobile and serviced

by different Services for Location Information Provisioning (SLIPs), the ILS becomes a proxy with

respect to the requirements for location information. We contribute by specifying functional properties

of the SLSR, e.g. long-term interpretation of requests for location information, usage of cached location

information, mapping of location information types, selection of SLIPs that can provide location

information, and fusion of their results. Our contributions also include an implementation of the SLSR

Page 64: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 64 of 102

and its rigorous evaluation in an office-like testbed environment designed for performance

benchmarking of localization solutions.

Our results characterize the influence of different functional components to the overall performance of

the SLSR. Example-wise, our results show that the usage of cached location information benefits both

accuracy and latency of provisioning, while different strategies for selection of SLIPs change the

dynamics of the performance of the SLSR, e.g. improve its power consumption, while trading-off

accuracy. We further demonstrate the benefits of this middleware approach compared to a single

localization solution in terms of localization accuracy enhancements.

3.1.2 High-Level Overview of the SLSR

A high-level overview of the SLSR is given in Figure 45. The Location-based application (LBA) is

defined as an entity that requires location information of a mobile device. The central entity of the

architecture is the ILS, serving as a setting for fusion, integration, and handover of different SLIPs. SLIP

is an entirety capable of providing location information of a mobile device. The Resources for

generating location information is an entity serving as input data for generating location information by

location information provisioning services.

Figure 45: High-level overview of the SLSR.

In the following we shortly overview only the most relevant parts in regard to the interaction between

architectural components of the SLSR is specified by a set of standardized APIs in details discussed in

[50]. The relevant integration primitives are also in more details discussed in the EU eWine Deliverable

“D3.1: Context provisioning and sensing algorithms design and implementation”.

The Standardized Localization Interface (SLI) provides a set of primitives for standardized interaction

between the LBA and the ILS. The Provisioning Service Interface (PSI) specifies the interaction

between the ILS and each SLIP, while the Resource Interaction Interface (RII) specifies the interaction

between each SLIP and resources for generating location information.

LBAs can request location information of different types. Global location information is the one in

reference to a global reference location, usually used in the GPS. Local location information is in

reference to a local “zero-point'', largely used in indoor environments. Finally, semantic location

information provides a contextual meaning, in terms of a mobile device being in vicinity to an object or

inside of a space.

Location information of each type can be requested with certain accuracy and latency features, and can

be requested once, periodically for certain duration, or on an event upon its sufficient change from the

Location-based application

Integrated location

service

Resources for generating location information

Service for location information provisioning

Architectural module

Standardized interface

Interaction indicator

Location-based application

RII instances

PSI instances

SLI instances

Service for location information provisioning

Page 65: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 65 of 102

previous location. To be compliant with the PSI, a SLIP has, upon receiving a request from the ILS,

announce its features of provisioning. These features are the expected accuracy, latency, and power

consumption of location information provisioning. Based on the provisioning features of the available

SLIPs and based on the requirements from the LBAs, the ILS makes a decision on the SLIPs to be

invoked for generating of location information.

3.1.3 Design of the SLSR

Previously described main components of the SLSR could be stand-alone applications on a mobile

device to be localized, but could as well be deployed in an environment surrounding the device. The

latter is tightly related to the Internet of Things (IoT) vision of smart environments providing services

to the users and devices in them [51]. The first design decision pertains to positioning each of the

specified components in these classes.

The majority of LBAs are stand-alone entities on a mobile device, primarily used for providing some

location-based service to the users. However, it has been suggested that location information could be

used for improving various aspects of wireless networks. Such scenarios often require location

information of a mobile device to be shared with other entities surrounding the device, and therefore we

also envision LBAs to be deployed in the environment surrounding the device.

The ILS can be viewed as an individual per-device entity, but also as a global centralized entity for all

mobile devices. The latter would allow for a global optimization of invocation of SLIPs and would

simplify sharing of location information across devices and applications. However, such a global ILS

would intrinsically have increased privacy and security risks, while the avoidance of such issues is of

immense importance for location information [52]. Furthermore, such a global ILS would, because of

the large number of devices to be supported, be hardly scalable and would therefore have to be a stateless

entity. Hence, the ``intelligence'' of requesting location information would have to be pushed to the

LBA. This means that, for example, periodic or on an event-based provisioning of location information

(i.e. when the location information substantially changes from the previous one) could not be explicitly

specified, but should be done by periodically issuing requests for current location information by the

LBA. However, if such advanced knowledge of future requests for location information is available at

the ILS level, the ILS could leverage it for optimizing the invocation of SLIPs. This could yield

reductions in power consumption and latency of location information provisioning, as indicated in [53].

We therefore believe the ILS should be fully operating on a mobile device to be localized.

Along the IoT vision of smart environments, we believe that SLIPs could be stand-alone entities on a

mobile device, but could also be embedded in smart environments surrounding the device. Examples

from the stand-alone category include the usage of dead-reckoning that leverages Inertial Measurement

Unit (IMU) readings for generating location information [54]. An example in the latter category is WiFi-

based fingerprinting, where a training database, i.e. a sampling of a WiFi environment at training

locations, is needed for generating location information of a mobile device. In this case, a fingerprinting

server containing the training database is deployed either in a served environment or remotely in a cloud

instance, while a fingerprinting client deployed on a mobile device interacts with the server for obtaining

location information [55].

A detailed functional overview of the SLSR is given in Figure 46. The procedure starts by different

LBAs requesting location information of certain features from the ILS. The features of provisioning are

desired accuracy and latency of location information, where location information can be requested once,

or periodically or on an event for certain duration. These requests for location information are received

at a listener for requests for location information, where their arrival times are logged.

Page 66: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 66 of 102

Figure 46: Detailed functional overview of the SLSR.

The requests are then forwarded to a long-term requests interpretation entity. The role of the long-term

requests interpretation is to translate a request for periodic provisioning or a request for provisioning on

events into repeated individual requests for location information. For example, if a request specifies

periodic provisioning with a period of 1 s in the duration of 30 s, the long-term requests interpretation

will translate such request into 30 requests for location information with the latency of 1 s at appropriate

times.

Each request is then potentially resolved with cached location information in case such information is

not stale and if it has acceptable accuracy attribute for addressing the request. Similarly, each request is

potentially resolved by mapping of location information types. For example, if point-level location

estimate is requested, while a room-level cached information exists and is not stale, the mapping of one

type to another can be performed, hence the request can be resolved. All requests resolved by either

cached or mapped location information are immediately reported back to the LBAs.

All unresolved requests are used as an input in an algorithm for selection of SLIPs. In addition,

provisioning features of available SLIPs are also used as an input to the algorithm. These features of

provisioning are obtained through the discovery of SLIPs and their features, which is initiated by the

ILS. Upon request, all available SLIPs estimate and report their provisioning features to the ILS.

Selection of SLIPs to be invoked is therefore based on the requirements from LBAs and provisioning

features of available SLIPs. The selection can be subject to various optimizations in relation to relevant

metrics, i.e. accuracy of location information, and latency and power consumption of provisioning. The

selected SLIPs are finally invoked for generating location information.

Location information from different SLIPs are received at a listener for location information. Upon

receiving each location information, the ILS decides, based on the requirements from an LBA, if this

information should be reported back to the LBA. Adversely, the location information can be fused with

location information from other SLIPs before its reporting. This fusion process enhances the accuracy

of reported location information, while trading-off latency of provisioning, since a certain delay is

introduced by waiting for multiple SLIPs (usually with different latency features) to report their location

information. The reported information is additionally used for updating cached location information.

Listeningforrequestsforloca1oninforma1on

requestforloca1oninforma1on

requestforloca1oninforma1on

Interpreta1onoflong-termrequestsforloca1oninforma1on

Solvingrequestswithcachedloca1oninforma1on

Solvingrequestsbymappingtootherloca1oninforma1ontype

Selec1onofloca1oninforma1onprovisioningservices

Listeningforfeaturesofprovisioning

…provisioningfeatures

Es1ma1onofprovisioningfeatures

Es1ma1onofprovisioningfeatures

provisioningfeatures

Reques1ngloca1oninforma1onfromselectedprovisioningservices

Listeningforloca1oninforma1on

Loca1oninforma1onfusionandrepor1ngtoapplica1ons

Upda1ngcachedloca1oninforma1on

Provisioningofloca1oninforma1on

Discoveryofprovisioningservicesandfeatures

Provisioningservicefunc. onalityIntegratedloca. onservicefunc. onality

Page 67: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 67 of 102

3.1.4. Implementation of the SLSR

3.1.4.1. GDP-based Implementation of Distributed Messaging

For the prototypical implementation of the distributed messaging in the SLSR we have selected the

Global Data Plane (GDP) [56]. The GDP is designed as a universal middleware platform, offering

prominent types of data access. The GDP natively supports a single-writer log-based messaging, while

also providing a Representational State Transfer (REST) and publish/subscribe interfaces for accessing

data. Logs are encrypted and only applications with proper encryption keys can access their data, which

ensures data privacy and security.

Distributed single-writer log is a messaging pattern based on a partitioned and replicated commit log

service. The GDP also supports the discovery of such logs and granting reading access to a particular

log. A log is named by an opaque 256-bit number and consists of a series of records, each record

consisting of a record number, a timestamp, and data. The mapping of the distributed messaging between

the components of the SLSR and the GDP is performed by modelling each interaction primitive by a

log in which one entity is allowed to write new data. Other entities are allowed to read and receive

notification of the data being written in the log. A favourable feature of the GDP-based distributed

messaging is the support for caching and historical information storage and retrieval. This feature is

used for the implementation of the module for resolving requests for location information by leveraging

cached location information. The GDP provides the possibility of addressing services of the same type

at once, which is leveraged in the implementation of the module for the discovery of SLIPs and their

features.

Interaction between the ILS and each LBA is implemented as a set of GDP logs. Distributed messaging

supported by the GDP allows the LBA to access location information provided by the ILS even in case

such LBA is not deployed on a mobile device. The LBA is envisioned to be the only writer to its log for

requesting location, with the entry data being the parameters defining the desired features of location

information (location type (e.g. point or room-level location estimate), accuracy, latency,

once/periodically/on events, duration). The ILS is subscribed to that log and upon request reports

location information by writing it to a log for reporting location information to which the LBA is

subscribed. The registration of an LBA with the ILS is therefore a matter of creating a set of GDP logs

and registering them with the ILS.

The registration of a SLIP is performed by the SLIP granting the ILS a read permission to its ``reporting

location log'', where the first entry to that log is the address of the SLIP (256 bit identifier) and the

location information type(s) that can be provided. The ILS is a writer to a discovery log to which all

SLIPs are subscribed. SLIPs subscribed to that log report their availability and provisioning features by

writing into a log for reporting provisioning features, where an entry defines an offering (i.e. accuracy,

latency, and power consumption). The procedure continues in the same way as for the interaction

between the LBA and the ILS.

As mentioned, the GDP provides support for REST and publish/subscribe-based messaging. In the

following, we will shortly discuss how the REST messaging paradigm can support the distributed

messaging in the SLSR. Given the REST support, the implementation using publish/subscribe

paradigms is straightforward and it is therefore omitted.

The REST messaging pattern's key abstraction is a resource, where the resource is any named

information. The REST pattern bases messaging on four operations: creating, reading, updating, and

deleting a resource. An LBA can request location information from the ILS using a request for location

information, with the payload being the desired features of this information. The ILS reports this

information as the response to the request, where the response consists of the requested location

information. In case the consuming LBA requires periodic or on an event reporting of location

information, an observe flag should be set in the request. When the observe flag is set by the LBA, the

Page 68: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 68 of 102

ILS will continue to reply after the initial resource has been reported, therefore the asynchronous nature

of responses can be achieved.

Registration of a SLIP with the ILS is done by issuing a register service request to the ILS, with the

payload being the address of the SLIP and location information type that can be provided by the SLIP.

During the discovery of SLIPs, the ILS issues a service discovery request to each suitable registered

SLIP. As the response, the invoked SLIPs report their provisioning features. The ILS requests location

information provisioning from a SLIP in the same way, as an LBA requests location information from

the ILS.

3.1.4.2. Selection of SLIPs

A time-bucketed operation of the ILS allows for better utilization of the SLIPs by resolving multiple

requests with the same invocation of SLIPs, hence it offers benefits in terms of reduced power

consumption of the SLSR [57]. The SLSR is for that reason implemented to operate in a periodic time-

bucketed fashion. The duration of each time-bucket is hard-coded to 0.5 s, corresponding to half of the

usual update period of roughly 1-2 s needed for users' tracking scenarios [58].

Selection of SLIPs can be subject to various optimizations in relation to accuracy, latency, and power

consumption of location information provisioning. In the current implementation of the ILS, the

selection of SLIPs can be based on two selection algorithms [59]. The primary aim of both algorithms

is latency requirements satisfaction and the secondary aim is the satisfaction of accuracy requirements

of all requests received in the duration of a time-bucket. The Per-Request Satisfaction Algorithm

(PRSA) is subject to per-request power minimization, while the Per-Time bucket Satisfaction Algorithm

(PTSA) is subject to a more global per-time-bucket power minimization. The decision on which

algorithm to use is left to the user, since one algorithm achieves better performance in terms of power

consumption, while trading-off accuracy satisfaction, as analytically indicated in [60] and

experimentally evaluated and confirmed in this work.

A step preceding the execution of both algorithms is the generation of “virtual SLIPs”. The currently

used algorithm for the generation of virtual SLIPs is based on fusion of SLIPs with similar accuracy

features. Such a fusion yields a more accurate virtual SLIP in comparison to each SLIP in the

combination. The similarity in the accuracy is based on the accuracy difference threshold accth between

the accuracy features of different SLIPs. If the similarity between SLIPs exists, the virtual SLIPs are

created as all possible combinations of such SLIPs.

The latency of each combination then equals the maximum latency among all SLIPs, while the power

consumption feature equals the sum of power consumption features of all SLIPs in the combination.

The accuracy accvirtual of the generated virtual SLIP can, assuming uncorrelated location information

from the SLIPs, be approximated as follows, with accpr,i being the accuracy of the ith SLIP:

𝑎𝑐𝑐𝑣𝑖𝑟𝑡𝑢𝑎𝑙 =

1𝑁

∑ 𝑎𝑐𝑐𝑝𝑟,𝑖𝑁𝑖=1

√𝑁

3.1.4.3. Implementation of the ILS

The ILS is realized as a multi-threaded service, as shown in Figure 47. One thread supports listening for

requests for location information from LBAs and for provisioning features from SLIPs, and notifies

other threads if a request or a provisioning feature was received. Moreover, the same thread performs

the discovery of available SLIPs by reading from a register service log and discovery of their

provisioning features by writing a discovery request in a proper discovery log. The discovery duration

for the SLIPs that are closer to a mobile device is fairly small, while this duration increases with the

increase in the distance between the mobile device and a particular SLIP. By proper time-stamping of

the requests and responses for discovery and provisioning features, we leverage this property for

distinguishing SLIP surrounding a mobile device from the ones that cannot provide location information

Page 69: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 69 of 102

of the device in a given environment.

The second thread aims at addressing newly arrived requests for location information by leveraging

cached location information or by performing mapping between different location information types.

For leveraging cached location information, the second thread requires the parameter specifying cached

location information, which is generated in the third thread discussed below. In the current

implementation, we use a very simple strategy for determining if cached location information is

considered stale, i.e. it is stale if it is older than 0.5 s. With the same intuition as for the previously

discussed time-bucket duration, the staleness metric of 0.5 s has been selected because it is two times

smaller than the update period of 1 s required for users' tracking scenarios. The second thread also

handles the selection of SLIPs to be invoked for provisioning.

The third thread handles listening for location information from SLIPs. The same thread also handles

fusion of location information and reports location information to LBAs based on their requirements.

Finally, this thread deals with updating the cached information with the newly arrived location

information and reporting the updated cached information to the second thread.

Figure 47: Multi-threaded implementation of the ILS.

3.1.5. Instantiation of the SLSR

For the instantiation of the prototype implementation of the SLSR we selected TWIST testbed, which is

an office environment in its usual usage. We used a Lenovo ThinkPad laptop as a mobile device in the

instantiation. The components of the SLSR were realized as Python~2.7-based daemon processes.

For the instantiation of SLIP we selected a set of WiFi RSSI fingerprinting-based localization solutions

that are in more details discussed in the EU eWine Deliverable “D3.1: Context provisioning and sensing

algorithms design and implementation”. As discussed in that deliverable in more details, WiFi RSSI

fingerprinting-based localization solutions require a training phase in which a survey of a WiFi

environment is performed at predefined locations, i.e. at each location a set of scans for WiFi beacon

packets' RSSI measurements is taken and stored in the training database. A mobile device, whose

location is to be determined, then generates its own scan of the WiFi environment and sends it to a

fingerprinting server. At the server, this scan is compared with the scans from the database and the most

similar one is reported as the estimated location of the mobile device. Additionally, fingerprinting can

Listeningforrequestsforloca1oninforma1onfromtheapplica1onsandforprovisioningfeaturesfromtheloca1oninforma1onprovisioningservices;Reques1ngdiscoveryofloca1oninforma1onprovisioningfeaturesfromprovisioningservices;

Solvingrequestsbyleveragingcashedloca1oninforma1onorbymappingtoanotherloca1oninforma1ontype;selec1onofloca1oninforma1onprovisioningservicesandreques1ngloca1oninforma1onfromselectedprovisioningservices

Listeningforloca1oninforma1onfromtheprovisioningservices,fusionofthereceivedloca1oninforma1on,anditsrepor1ngtotheapplica1onsbasedontheirrequirements

Requestsforloca1oninforma1on

Provisioningfeatures

Selec1ondecision

Cashedloca1oninforma1on

Page 70: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 70 of 102

also include a post-processing procedure, e.g. k-Nearest Neighbours (kNN), where instead of reporting

just one training location as the estimated location, a set of closest matches is merged and reported as

the location estimate, which benefits the accuracy and decreases the variability of errors.

An increase in the density of training locations benefits the accuracy of fingerprinting. Similarly, as

shown in the EU eWine Deliverable D3.1, different procedures for calculating similarities between

training fingerprints and the user's generated one yield different accuracies and latencies of provisioning.

For generating multiple instances of SLIP with different accuracy and latency features, we therefore

used different densities of training locations and different algorithms for calculating similarities between

fingerprints.

Different densities of training locations are depicted in Figure 48. The first set of SLIPs uses a “small”

number of training points, namely one training point per office, with training points as indicated with

blue dots in the figure. The second set of SLIPs uses a “medium” number of training points, i.e. two or

four training points per office, depending on an office size, as indicated with red dots in the figure. The

third set of SLIPs uses a “large” number of training points, i.e. the combination of the small and medium

sets of training points. Black squares indicate the locations of WiFi Access Points (APs) used as

transmitters of beacon packets for all instantiated SLIPs. We used two algorithms for calculating

similarities between fingerprints, namely Euclidean Distance (ED) of averaged RSSIs and Pompeiu–

Hausdorff (PH) distance of RSSI quantiles, with their detailed descriptions given in the EU eWine

Deliverable D3.1.

Figure 48: Locations of training points, WiFi APs, discrete evaluation points, and movement

trajectory.

As the result, we instantiated six SLIPs out of the combination of training dataset densities and

algorithms for calculating similarities between fingerprints. These SLIPs were able to generate and

provide point or room-level estimate of location information of a mobile device. In addition, we

instantiated two SLIPs that were able to provide only room-level location estimates. This mimics a usual

positioning service based on iBeacons that is able to provide only coarse-grained room-level accuracy

of localization with lower power consumption in comparison to WiFi-based fingerprinting (e.g. [61]).

Due to the shortage of iBeacons, we mimicked their operation by leveraging fingerprinting, more

precisely by using a small training dataset and the two algorithms for calculating similarities between

fingerprints, and by limiting the reporting of location information to only a room-level type of

provisioning.

3.1.6. Evaluation Setup, Scenarios, and Procedure

TWIST testbed is deployed in a usual office environment and it offers a fully automated testbed

infrastructure for the evaluation of indoor localization solutions. The testbed features a mobility platform

capable of autonomously carrying a device to be localized to different evaluation locations. The same

mobility platform can be used for moving a device to be localized over a predefined trajectory, which is

Ini$alloca$on

Finalloca$on

Discreteevalua- onpointsTrainingpoints(small)

Trainingpoints(medium)AnchorpointsMovementtrajectory

Page 71: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 71 of 102

suitable for the evaluation in tracking solutions, in contrast to evaluation at discrete points only. For its

positioning in space, the autonomous mobility platform matches a highly accurate floor-plan of the

testbed environment with depth information provided by a Kinect camera, achieving less than 10 cm in

average localization errors in the testbed space. This is an order of magnitude lower localization error

than what the current state of the art indoor off-the-shelf indoor localization solutions can achieve, hence

the location information from the mobility platform can be used as the ground-truth location of a mobile

device for the evaluation purposes. The mobility platform with its speed of 0.5 m/s is somewhat slower

than a usual walking speed of a person and the trajectory followed by the platform is to a certain level

unnatural for a person. However, the platform reduced the disturbances due to a person's body, such as

shadowing and subtle shaking, thus increases the objectiveness of the evaluation results. Furthermore,

the mobility platform enables extraction of reference locations of a mobile device that are unavoidable

for the evaluation. This cannot be achieved by a test-person, especially in tracking scenarios, and we

therefore leveraged location information provided by the mobility platform as the reference in our

evaluation.

The testbed infrastructure also supports monitoring of Radio Frequency (RF) interference context that

can considerably degrade the performance of RF-based localization solutions [62], thus reduce the

objectiveness of evaluation. The evaluation experiments have therefore been performed on weekends

with minimized and controlled influence of RF interferences. The raw data from the experiments, i.e.

the WiFi beacon packets' RSSI scans at different locations in the testbed, were collected and stored in a

web-platform for streamlined experimental evaluation of localization solutions [63].

This enabled streamlined evaluation of the SLSR by inputting the collected raw data, calculating

location information, comparing them with ground truths, and calculating performance metrics. The

web-platform enhanced the objectiveness and comparability of our results, for example when typifying

the benefits of different functional components of the SLSR. Two repetitions of all experiments were

performed to make an argument about the stability of our performance results.

The evaluation was performed in one localization and two tracking scenarios. For the localization

scenario a set of 20 discrete evaluation points was defined, as with orange dots indicated in Figure 48.

As the performance metrics we specified point and room-level accuracies. The point accuracy is defined

as the Euclidean distance between a ground-truth and an estimated location, while the room-level

accuracy characterizes the correctness of estimated room. Clearly, increasing the number of SLIPs also

benefits the availability and robustness of location information provisioning by increasing the

redundancy of information, but due to the lack of space these influences have not been explicitly

characterized.

For the evaluation in the tracking scenarios, we specified the trajectory of movement of a mobile device,

as shown in Figure 48. During the course of movement along the trajectory, we constantly collected and

stored the raw RSSI scans. We then leveraged the collected scans as input for generating location

estimates, while changing the structure and parameterization of the SLSR. The aim of the evaluation in

the first tracking scenario was to demonstrate that an increase in the number of SLIPs benefits

localization accuracy and to characterize the nature of this benefit. In this scenario, we used each scan

of WiFi environment taken along the trajectory for estimating the location of the mobile device.

In the second tracking scenario, we aimed at showing the benefits of different functional components of

the SLSR: using the long-term requests interpretation in contrast to “pushing the intelligence” of

requesting location information to the LBAs; using cached location information and mapping between

location information types for potentially resolving requests for location information; using different

algorithms for selection of SLIPs; using different estimators of provisioning features. Metrics used for

performance evaluation in the second tracking scenario include satisfaction of accuracy, latency, and

both requirements, and the total power consumption of the SLSR. Requirement satisfaction is a binary

metrics defined as the capability of the SLSR to provide location information of with a better

characteristic than the requirement specified in a given request.

Requests for location information have been generated according to, what we believe is, a realistic

scenario for location information requirements. The first request represents a usual person' tracking

Page 72: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 72 of 102

scenario with conventional requirements, i.e. 1 m in average localization error provided periodically

with the period of 1 s during the course of the trajectory and with the location information type being

point-level location information. The second requirement resembles a light-switching scenario, in which

based on the presence of a person in a room the light is either turned on or off. The location information

type is semantic (i.e. room-based) provisioning required periodically and frequently with the period of

1 s. The third request mimics a smart thermostat scenario, in which the heating in a room in turned on

based on the presence of a person in the room. Clearly, this request requires a periodic semantic

provisioning of location information with a high requirement for accuracy and low requirement for

latency of provisioning (5 s). The fourth scenario mimics a self-configuring printer scenario in which,

if the mobile device is in the same room as the printer, a fine-grained periodic provisioning is needed

with the accuracy of 1.5 m and latency of 3 s, while in all other rooms only room-level information is

needed upon a change of location information. The fifth scenario resembles a High-Definition (HD)

uncompressed video streaming using 60 GHz narrow beams, in which these narrow beams have to

“track” the user as it moves in the environment. In this scenario, fast (1 s) and accurate (1 m) periodic

provisioning of location information has to be available for successful tracking of the user. The sixth

request mimics a location-aided horizontal WiFi handover mechanism, in which a fine-grained tracking

is required in handover areas (1.5 m / 1 s), while a course-grained on an event provisioning of location

information is needed in non-handover areas. The seventh request represents the D2D link establishment

scenario, in which if two devices are in vicinity a D2D communicational link is established between

them. This scenario requires a fairly fast provisioning of location information (1.5 s) when it changes

from the previous location, with low requirement on the accuracy of location information (2 m).

3.1.7. Evaluation Results

In the first step of the evaluation, we aimed at evaluating the static performance of each SLIP instantiated

under the SLSR. The summary results averaged over two (highly comparable) repetitions of each

experiment are given in Table 7. As visible from the table, with an increase in the density of used training

dataset (from “small” to “medium” and “large”), the average accuracy of location information

provisioning increases as well. Furthermore, the algorithm PH distance of RSSI quantiles shows better

accuracy of provisioning. This is due to higher complexity of its pattern matching procedure and due to

the fact that RSSI quantiles were used as fingerprints, which provides more information than the usage

of average RSSI values in the other algorithm (more details in the EU eWine Deliverable D3.1). Both

conclusions are consistent for both repetitions of experiments, making an argument about the reliability

of the results. Furthermore, with an increase in the number of training points the latency of reporting

location estimates also increases, which is consistent with the well-known trade-offs of WiFi

fingerprinting. Also, a more complex algorithm has higher latency of location information provisioning.

These summarized performance results are used as static provisioning features of each SLIP in the

second tracking scenario. Due to the inability to directly measure the power consumption of location

information provisioning, we leverage a simple characterization of a power profile of each SLIP, i.e. all

WiFi-based SLIPs are given a constant power profile of 2. The SLIPs that mimic iBeacon-based location

information provisioning were given a two times smaller power profile. This is consistent with reported

comparisons of the WiFi vs. Bluetooth power consumptions, e.g., [64].

The results for the first tracking scenario are given in Figure 49: Influence of fusion of location estimates

on the final accuracy of location information provisioning. Each group of box-plots depicts localization

errors for two repetitions of an experiment. The results demonstrate a high level of stability across the

two repetitions, which excludes potential unforeseen outside influences.

Table 7: Summary performance results of the instantiated SLIPs.

SLIP Accuracy Room

accuracy Latency Power

consumption

Page 73: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 73 of 102

Euclidean small 3.14 m 52.5% 0.66s 2

Quantile small 3.05 m 55.0% 0.72s 2

Euclidean medium 2.41 m 62.5% 0.86s 2

Quantile medium 2.22 m 65.0% 0.91s 2

Euclidean large 1.96 m 75.0% 1.05s 2

Quantile large 1.81 m 80.0% 1.12s 2

Euclidean semantic / 52.5% 0.66s 1

Quantile semantic / 55.0% 0.72s 1

The first six groups of box-plots depict the results achieved by the two algorithms with different densities

of a training dataset, namely small (S), medium (M), and large (L). As visible from the figure, there is

a substantial increase in average localization errors in comparison to the static scenario. The reason for

that is the movement of the device to be localized in this scenario, which influences the quality of the

obtained WiFi RSSI measurements. Furthermore, in this scenario the less complex algorithm, i.e. the

ED of Averaged RSSIs, achieved better performance. This is due to the fact that in moving scenarios

the usage of multiple RSSI scans for estimating location does not benefit the localization accuracy

because the older scans are essentially taken at some previous locations along the movement trajectory.

Figure 49: Influence of fusion of location estimates on the final accuracy of location information

provisioning.

The following box-plots depict the localization accuracies in case of fusion of estimates provided by the

two algorithms. For example, the “Comb. S” group of box-plots presents the results of fusion of location

estimates provided by the two algorithms, both of them leveraging the small training dataset. Similarly,

the “Comb. S-M'” depicts the localization accuracies in case the estimates provided by four instances of

SLIPs, i.e. the two algorithms leveraging small and medium datasets. The figure shows that the fusion

of location estimates is beneficial, but only if the fused instances have comparable accuracy features of

provisioning. For example, the “Comb. S” localization errors are generally smaller than the localization

errors of any instance of SLIPs that leverages the small training dataset. The same conclusion holds

for instances leveraging medium and large training datasets, for both algorithms, and for both repetitions

of the experiment. However, in case instances with different localization accuracies are fused, the

resulting localization errors are generally comparable or worse than the ones obtained by fusion of only

instances with the highest accuracies. For example, the instances labelled with “Comb. S-M” have larger

localization errors than the ones labelled with “Comb. M”. This means that the fusion should be

performed only if the fused instances have comparable accuracies.

Page 74: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 74 of 102

In the second tracking scenario, we generated a realistic load for the ILS by using the previously

specified requests for location information. We captured the satisfaction of requirements using the

following procedure. If the localization error of location information reported to an LBA is smaller than

the localization error (i.e. accuracy) specified in the corresponding request for location information, then

the requirement is considered satisfied. Similarly, if the latency of provisioning of location information

is smaller than the one specified by the request, the latency requirement is considered satisfied. Both

requirements of a request are satisfied if both accuracy and latency exceed the ones specified in the

request. The consumed power metric specifies the total power consumed by all SLIPs during the course

of a movement along the trajectory, with the power profile of each SLIP being as specified in Table 8.

Table 8 summarizes the obtained results for the two algorithms for selection of SLIPs (i.e. PRSA and

PTSA). The total number of requirements differs slightly for the two repetitions of the experiment

because of small differences in movement of the mobility platform in different repetitions. The “Basic”

type of the SLSR includes only basic functionalities of the ILS, i.e. reception of requests, discovery and

invocation of SLIPs, reception of location estimates, their fusion and reporting to the LBAs. The

“Caching & mapping” type additionally includes caching and mapping functionalities. Caching

functionality enables addressing requests with cached location information if the features of such

information exceed the requirements of the request and if cached location information is not stale.

Mapping functionality supports mapping of point to room-level location information type and vice-

versa, if appropriate type of location information exists in the cache. The “Long-term interpretation”

type of the SLSR includes the long-term requests interpretation. In other words, previous types assumed

that the LBA would issue a request for location each time this information is needed. The “Long-term

interpretation” type assumes that requests for periodic or on an event provisioning for certain duration

can be specified in one request. This request is received by the long-term requests interpretation entity,

which does a request translation to multiple requests at appropriate time instances. The previously listed

types of SLSR leverage static features of provisioning of different SLIPs, as specified in Table 7. The

“Dynamic'” type uses a dynamic specification of the latency and accuracy features of provision of

different SLIPs. This is possible because we know the accuracy and latency features of provisioning of

all SLIPs and for all WiFi scans collected along a trajectory, as discussed in the previous tracking

scenario.

Table 8: Satisfaction of requirements for different instances of the SLSR.

3.2 Cooperative localization

The object, human or animal location used to be and is becoming important information in human life.

In ancient times people estimated their location using line of sight visibility to mountains, trees, islands,

beacons, etc. An important breakthrough happened by astronavigation, where stars, sun and moon are

assumed as anchors, i.e. object with known location, to estimate the position of a human on the earth.

Page 75: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 75 of 102

The ancient navigation approach requires clear visibility to the anchors, which in many situations is not

possible, for example in the case of fog, etc.

By invention of radio waves, the localization based on anchor visibility is replaced by radio navigation

systems. The radio navigation system consists of a set of anchors, which transmit the radio signal, and

a device, called agent, which observes the received signal from several anchors and based on properties

of the received signal estimates the location of the device. The progress in radio navigation was mainly

driven by military needs. The majority of radio navigation systems were born before, during and after

the Second World War and in the cold war. At the beginning, the beacons located at the earth surface

were applied as in Omega, Loran, Decca systems [65]. Those systems provide limited service depending

on the geographic area, for example the Atlantic Ocean or in particular a port or a bay. Although the

radio navigation system has been born as a military tool, after a period it became available for civilian

use. The global coverage of the radio navigation system has been achieved by using a set of medium

earth orbit satellites as anchors. Today, United States NAVSTAR, the Global Positioning System (GPS)

and Globalnaya Navigatsionnaya Sputnikovaya Sistema (GLONNAS) operating by Russia are two

satellite navigation systems available globally offering location accuracy of some tens of meters [65].

Europe and China try to find independency; thus, they launch alternative systems to GPS namely Galileo

and Compass, respectively [65].

While satellite navigation systems provide sufficient accuracy outdoors, in city centres with street

canyons, in forest with dense forest canopy and indoors those systems become unusable. Furthermore,

the satellite receivers are too expensive to be a part of low cost wireless nodes in wireless sensor network

applications. In this respect, new localization approaches have been developed, mainly based on

observing parameters of the received signal coming from anchors, such as received signal strength

(RSS), time of arrival (ToA), time difference of arrival (TDoA), angle of arrival (AoA) and channel

impulse response. In order to find the location of the nodes with an unknown location, i.e. agents, each

agent has to be in the range of at least three anchors. In the case of systems consisting of a huge number

of distributed nodes, the number of anchors is huge and they need to be uniformly spread across the

area, which is not true in life examples of using wireless sensor networks. In this case the concept of

cooperative localization is applied.

If there is no communication between agents, but only communication between agents and anchors, the

localization is non-cooperative localization [66]. The limited range of wireless communications reduce

the number of nodes to which a particular node can communicate, thus every agent cannot measure the

distance to a sufficient number of anchors. Consequently, the agent location cannot be estimated only

based on anchor to agent distances, but also agent-to-agent distances have to be applied, which force

nodes to cooperate. The cooperation means to share your information to neighbouring nodes and to

retrieve information from neighbouring nodes. Thus, the main goal of cooperative localization

algorithms is to allow nodes that are not in the range of a sufficient number of nodes with the known

location, to be located and to further improve the localization estimates of all nodes in a network [66].

The basic principle of cooperative localization in shown in Figure 50

Page 76: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 76 of 102

agent

anchor

links (noisy measurements)

Figure 50: Basic principle of cooperative localization.

3.2.1 Classification of cooperative localization methods

The cooperative localization methods can be classified in (Figure 51):

• centralized and distributed methods,

• range free and range-based methods

• Bayesian and Non-Bayesian

One of the main considerations for a localization scheme is where the computation of the position

estimates occurs. In centralized localization, the positions of all agents are determined by a central

processor [66]. This processor gathers measurements from anchors as well as agents and computes the

positions of all the agents. Nodes have to communicate with centralized unit and that communication

consumes more energy than computation. In such network, it is convenient to use a centralized

localization scheme. Once feasible to implement, the main motive behind the interest in centralized

localization schemes is the likelihood of providing more accurate location estimates than those provided

by distributed algorithms.

In distributed localization the location of the node is calculated at each node. There are two big

motivations for developing distributed localization algorithms. First, for some applications, no central

processor (or none with enough computational power) is available to handle the calculations. Second,

when a large network of nodes must forward all measurement data to a single central processor, there is

a communication bottleneck and higher energy drain at and near the central processor. Distributed

algorithms are scalable and thus attractive for large networks.

Page 77: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 77 of 102

Figure 51: Classification of localization methods.

Range-free algorithms use techniques that only use connectivity information to determine the node's

location. Range-free localization algorithms never try to estimate the absolute point-to point distance,

but exploit the protocol-oriented metric such as the number of listened beacons and the hop-count. As a

range-free positioning algorithm, DV-Hop is the typical representation.

Range-based algorithms rely on the distance between the nodes and require absolute point-to-point

distance estimation (range) or angle estimation for positioning. These algorithms include RSSI, TDoA

and ToA techniques for internode range estimation.

The common non-Bayesian approaches are least square error estimator (LS) [66][67] and maximum

likelihood estimator (ML) [68].

The LS approach tries to minimize the mean square error between measured and calculated distances

between nodes in a network:

�̂�𝐿𝑆 = 𝑚𝑖𝑛⏟𝑥

∑1

2 (‖𝒙𝒊 − 𝒙𝒋‖ − 𝑟𝑖,𝑗)

2

𝑖∊ℕ,𝑗∊ℕ𝑖

(17)

where xi is the position of node i and ri,j is the measured distance between node i and node j, and �̂�𝐿𝑆 is

a vector of estimated position of nodes. The LS optimizer does not exploit any knowledge regarding the

statistic on ri,j. In general, the problem is not convex, and thus applying any gradient descent algorithm,

the solution can fall in the local minima. Many authors try to solve the problem as convex optimization

problem, namely linear programming [69], semidefinite programming [70], [71], multi-dimensional

scaling [72] or by convex relaxation of the LS optimization problem [79].

While the LS approach does not assume any knowledge of the noise source in measurements, i.e. r, the

ML approach assumes the statistics of noise source is known and tries to maximize the likelihood

function:

𝑥𝑀𝐿 = arg𝑚𝑎𝑥⏟𝑥

𝑝𝑟|𝑥(r|𝑥) (18)

Page 78: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 78 of 102

where r represents the vector of distance measurements, x the vector of nodes locations and pr|x is the

likelihood of distance vector r if nodes are at location x. If the likelihood is Gaussian the ML approach

converges to LS approach. Generally, the likelihood function is not known, thus the ML approach is

difficult to implement.

LS and ML are both non-Bayesian estimators, which means that they treat x as a deterministic unknown

parameter. In each iteration node constructs its own cost functions based on the distance measurements

gathered and the estimated positions broadcasted by the others. Then each node tries to find a minimum

of the cost function moving to the opposite side of the gradient. Even though the algorithm is well

developed, there is no guarantee to always reach the correct solution of the problem. The reason comes

from the cost function, because depending on the geometry of the scenario sometimes there is more than

one minimum. If in this situation the initialization is close to the absolute minimum, the algorithm

converges to it but if the initial point is near any other minimum, the algorithm goes to this wrong one.

Bayesian estimators treat x as a realization of a random variable x with a prior distribution px(x). Two

common Bayesian estimators are well known, namely minimum mean square error (MMSE) and

maximum a posteriori (MAP) estimator. MMSE estimator finds mean of a posteriori distribution:

𝑥𝑀𝑀𝑆𝐸 = ∫𝑥 𝑝𝑥|𝑟(𝑥|𝑟) 𝑑𝑥

(19)

The MAP estimator finds the maximum of the a posteriori distribution:

𝑥𝑀𝐴𝑃 = arg𝑚𝑎𝑥⏟𝑥

𝑝𝑥|𝑟(𝑥|𝑟)

(20)

while a posteriori distribution is difficult to find or its dimensionality is too high that the maximization

or integration is too complicated for implementation. Fortunately, in many problems a posteriori

distribution can be written as a product of functions, and in this case solution can be found by using

factor graphs [66] or believe propagation algorithm [66], [73], [74].

Ad hoc approach to obtain agents location is to iteratively determine location of agents which are in the

range of at least three anchors. In the next step the agents with estimated location is assumed as anchors.

The procedure is repeated iteratively until all agent locations are estimated. The procedure is not

optimum and may lead to significant location errors.

3.2.2 Least square localization algorithm based on convex relaxation

The LS localization algorithms described in [66], [67], [70], [72], [75], [76], [77], [78] try to find a

location assuming a problem as convex, while in the [79], [80], [81], [82] it is revealed that the

optimization problem is non-convex, which may lead the results of the optimization to fall in a local

minima. They use a convex relaxation approach to wrap a non-convex envelope, and apply a LS

algorithm on the convex envelope.

3.2.3 Cooperative convex relaxation LS localization algorithm

The maximum likelihood estimator for the agent positions, under the assumption of zero-mean,

independent and identically-distributed, additive Gaussian measurement noise, is the solution of the

optimization problem:

𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑓(𝑥),𝑥

(21)

Page 79: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 79 of 102

where:

𝑓(𝑥) = ∑1

2𝑖~𝑗

(‖𝑥𝑖 − 𝑥𝑗‖ − 𝑑𝑖,𝑗)2 + ∑ ∑

1

2𝑘∈𝐴𝑖𝑖

(‖𝑥𝑖 − 𝑎𝑘‖ − 𝑟𝑖𝑘)2

(22)

and where 𝑥𝑖 represents the position of agent i, 𝑑𝑖𝑗 noisy measurement between agent i and j, available

at both i and j, 𝑎𝑘 anchor positions and 𝑟𝑖𝑘 denote the noisy range measurement between agent i and

anchor k.

Problem is nonconvex and difficult to solve, although function f is continuous and coercive, it has a

global minimum.

Convex relaxation methods aim to solve these hard models by approximating the energy functionals by

convex ones. The motivation is that they are much easier to solve since any local minimum is

automatically a global one. In practice, solutions of the approximating convex functionals lie within a

small bound near the actual solutions, or even give exact solutions of the original functionals. Since ML

method yields non-convex optimization problems that are in general NP-hard, convex relaxation

techniques can be employed to solve them in an efficient way. Using a simple and fast convex relaxation

method authors convert the non-convex maximum-likelihood function to convex one. They set forth a

convex under estimator of the maximum likelihood cost for the sensor network localization problem and

present an algorithm to minimize this convex under estimator.

This algorithm does the convex relaxation on the following way. Instead of using function

𝑖𝑛𝑓‖𝑧 − 𝑦‖, ‖𝑦‖ = 𝑑 which is not convex, it uses set of functions 𝑖𝑛𝑓‖𝑧 − 𝑦‖, ‖𝑦‖˂𝑑 and gets the

convex shape on this way. Then using Nesterov’s fast gradient algorithm [79], which is an optimal

method for smooth convex optimization, authors came to the algorithm which is used in this report in

order to do comparison with non-cooperative algorithm. This algorithm used for cooperative localization

requires computing the gradient of the cost function and its Lipschitz constant. Due to the fact that 𝑓 has

a Lipschitz continuous gradient [79], it is possible to follow Nesterov’s optimal method. In Figure 52

example of non-convex function is shown. Figure 53 shows illustration of the convex envelope for

internode terms of the non-convex cost function. The squared distance to the ball Bij (dotted line) is the

convex hull of the squared distance to the sphere 𝑆ij (dashed line). In this one-dimensional example the

value of the range measurement is 𝑑ij = 0.5.

Page 80: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 80 of 102

Figure 52: Example of non-convex function.

Figure 53: Illustration of the convex envelope for internode terms of the non-convex cost function.

The procedure is shown in Algorithm 1. The input to algorithm is a set of distance measurements, and

anchor locations. Initially, the agents are allocated randomly in an observed space. In the iteration loop

(lines 5 to 14), first the vector w of the extrapolation points is calculated. Initially, x(k = -1) is equal x(k

= 0). The points are broadcasted to neighbours. The core of the algorithm follows. The gradient 𝛁𝐠,

related to agent to agent link, is calculated first from the arc node matrix A, vector of extrapolation

points w and orthogonal projection of vector Aw on the subset Bd of measured distances. The next for

loop is applied to calculate the second part of gradient 𝛁𝐟, which is related to anchor to agent links.

Finally, in line 13 the new estimate of location is found. The algorithm proposed in Algorithm 1: Convex

relaxation method.

is a central, but is extension to distributed version is straightforward.

Page 81: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 81 of 102

Algorithm 1: Convex relaxation method.

This algorithm is fully distributed, has a simple implementation at each node, and capitalizes on an

optimal gradient method to attain fast convergence. For more detailed information about this algorithm

and comparison between this and other cooperative algorithms, reader is referred to [79].

3.2.4 Non-cooperative LS localization algorithm

In order to compare non-cooperative and cooperative approach, we choose a simple non-cooperative

algorithm based on least square optimization applying Gauss-Newton method. The procedure is depicted

in Algorithm 2. This is distance based localization algorithm and it is based on Gauss Newton iteration

method. Here only the distance-based localization of agent/agents is considered. As inputs to this non-

cooperative algorithm we have anchor locations, measured distances, number of iterations and size of

the network. There are N anchors in the system and one or more agents. At first, agents are randomly

distributed in the area of interest, line 6. The agent loop, line 7 to 13, includes the iteration loop and it

computes Euclidian distances. First, the distance between estimated agent location and all anchors are

calculated, line 9. Next, the normalized direction vector between estimated agent location and anchors

is estimated in line 11 which is needed to calculate next location of the agent.

Page 82: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 82 of 102

Algorithm 2: Non-cooperative localization algorithm, Gauss Newton method.

3.2.5 Evaluation criteria of localization algorithms

The accuracy of the algorithms is measured by the Root Mean Squared Error (RMSE) per node. The

RMSE for an agent 𝑖 is defined as:

𝑅𝑀𝑆𝐸𝑖 = √𝔼(‖�̂�𝑖 − 𝑥𝑖‖2) ≈ √

1

𝐾∑‖�̂�𝑖(𝑘) − 𝑥𝑖‖

2

𝐾

𝑘=1

, 𝑖 = 1,…𝑀

(23)

where 𝑥𝑖(𝑘), 𝑘 = 1,2, … , 𝐾, are the estimates of agent 𝑖 at position 𝑥𝑖, given by a positioning algorithm

for the 𝑘th realization of noise or network deployment. The RMSE for a network consisting of M agents

can then be computed as:

𝑅𝑀𝑆𝐸 =1

𝑀∑𝑅𝑀𝑆𝐸𝑖

𝑀

𝑖=1

(24)

3.2.6 Evaluation of convex relaxation cooperative algorithm

In order to investigate the behaviour of the convex relaxation cooperative algorithm and the non-

cooperative reference algorithm we constructed a simple simulation scenario

We limited our analysis to a 2-dimensional simulation scenario, thus 3 anchor nodes would be sufficient

to avoid ambiguity caused by rotation, translation or mirroring. However, we used 4 anchors located at

the border of the observation area in each corner as natural positions the anchors would have in real life.

The error of the node-to-node distance is modelled applying normal distribution with mean value set to

zero, and standard deviation as a parameter. The value of standard deviation is express as a percentage

of error of the observation area. The number of agents has been assumed as a parameter. An example of

simulated scenario, anchor and agent locations and estimated location of agents is shown in Figure 54.

The number of agents is set to 8. The number of anchors is four and they are set in the corners of the

1000x1000m area. The circles denote the estimated location, while the locations of agents are marked

by plus sign. The error in distance measurement are set to zero, while the range of agents and anchors

Page 83: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 83 of 102

are set to infinity, meaning all agents have information about the distance to four anchors. The algorithm

used to achieve this result is the non-cooperative localization algorithm. The estimated mean square

error is negligible and reaching the value of 0.016462m.

Figure 54: Simulation scenario.

Figure 55: RMSE error as a function of number of agents, distance error is 2%, agents range is

infinite.

Page 84: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 84 of 102

Figure 56: RMSE error as a function of number of agents, distance error is 2%, agents range is 200m.

Figure 57: RMSE error as a function of number of agents, distance error is 20%, agents range is

infinite.

The impact of distance measurement error, number of agents and range of agents is shown in Figure 55,

Figure 56 and Figure 57. At small distance errors, i.e. 2% of the node -to-node distance and infinite

range of agents, the non-cooperative algorithm outperforms cooperative convex relaxation algorithm.

In the case of non-cooperative algorithm, the agents have obtained the accurate distance information

from sufficient number of anchors resulting in low location error. While in the case of cooperative

algorithm, the agent location is calculated observing distance to all nodes in a system resulting in

Page 85: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 85 of 102

increase of cumulative location error. As a consequence, the RMSE error of cooperative localization

algorithm is increased.

If the range of agents/anchors is set to 200m some nodes in the case of non-cooperative localization do

not obtain information about the distance to sufficient number of nodes, which result in increased RMSE

of non-cooperative approach.

If a node-to-node distance error is increased to 20% the number and the range is assumed infinite, the

cooperative approach gives better results. In the cooperative approach, the neighbouring agents with

lower absolute errors are applied in calculation and these results in much lower RMSE location error.

In order to analyse the localization performance in a real-life environment we tested the cooperative and

non-cooperative algorithm on Log-a-Tec configuration at the premises of the Jožef Stefan Institute. The

sensor positions are plotted in Figure 58. The system consists of 18 ZigBee nodes operating with the

following transmitter and receiver characteristics:

• Tx power: 0dBm,

• Frequency: 868.3MHz,

• min. required signal level -90dB,

• min. required SINR 5dB,

• antenna: omnidirectional,

The sensor location is estimated using RSSI of JSI Log-a-Tec sensor network. Four nodes are chosen to

be anchors and other 14 nodes are agents. Nodes 8, 10, 14 and 18 are selected for anchors. The RSSI

values are converted to distance applying the Free Space Path Loss radio signal propagation model

characterized by the following equation:

𝐹𝑆𝑃𝐿(𝑑𝐵) = 10 ∗ 𝑛 ∗ 𝑙𝑜𝑔10(𝑑) + 20𝑙𝑜𝑔10(𝑓) − 27.55

(25)

where f represents the frequency in MHz, n is path loss coefficient, d is the distance between nodes and

FSPL is Free Space Path Loss in dB. FSPL is the attenuation of radio energy between the feed points of

two antennas that results from the combination of the receiving antenna's capture area plus the obstacle

free, line-of-sight path through free space (usually air).

The distance d is calculated by:

𝑑 = 10((𝐹𝑆𝑃𝐿−20𝑙𝑜𝑔10(𝑓)+27.55)/(10∗𝑛)

(26)

Page 86: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 86 of 102

Figure 58: IJS Log-a-Tec sensor network; nodes 8,10,14,18 are anchors.

The RMSE location error of the non-cooperative and cooperative approach is shown in Figure 59 and

Figure 60, respectively. The blue curve denotes the RMSE error if no error is introduced in distance

between two nodes, if n=2.0 no propagation channel calibration is applied to convert received signal

strength measurement to distance, while if n = 2.6, the propagation channel is calibrated by measurement

received signal strength between anchors and calculating distance between anchors knowing the anchors

known location. The results in Figure 59 and Figure 60 reveal that the RMSE location error is decreasing

with the number of iterations, meaning the cooperative and non-cooperative algorithms converge.

Furthermore, the error achieved by cooperative algorithm is significantly lower compared to non-

cooperative algorithm. The path loss channel calibration is necessary to obtain usable results for user

location in the case the received signal strength is applied to estimate the distance between nodes.

Page 87: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 87 of 102

Figure 59: RMSE location error of non-cooperative location approach as a function of number of

iterations and path loss channel calibration error.

Figure 60: RMSE location error of cooperative location approach as a function of number of iterations

and path loss channel calibration error.

3.2.7 Conclusion

Wireless sensor network localization has attracted significant research interest and represents a key

feature of future-generation wireless networks by enabling a multitude of applications in the military

(e.g., blue force tracking), public (e.g., search-and-rescue), and commercial (e.g., navigation) sectors.

Cooperation among nodes has the potential to dramatically improve localization performance.

Page 88: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 88 of 102

We presented the comparison between cooperative convex relaxation localization algorithm and the

non-cooperative one by simulations. The simulation results reveal that the convex relaxation algorithm

is superior in comparison to the non-cooperative algorithm, in particular when the distance obtained

from the received signal strength measurements is resulting in huge distance error, which increases with

distance between nodes. In this case the calibration of path loss channel model is required to obtain node

location with acceptable error.

The cooperative localization is becoming important in 5G networks. Device to device communications

will open the possibility to locate mobile terminal applying received signal strength measurements from

neighbouring terminal using 5G device to device communications, Wi-Fi and Bluetooth links as well

the 2G, 3G, 4G and 5G infrastructure links.

3.3 Indoor localization with multilateration

This section presents UWB (Ultra-Wide Band) indoor localization approaches with various error

mitigation techniques based on deep learning NLoS classification and ranging error regression models

described in detail in WP5 Y2 report. This work is a continuation and extension of work previously

presented in WP3 Y1 report.

3.3.1 Introduction

The accuracy of localization in an indoor environment depends heavily on radio signal propagation

characteristics. They are mostly challenging and unpredictable because of their dynamic nature. In a

ranging-based UWB indoor localization systems ranging errors and consequently localization errors

depend on channel propagation characteristics [83]. With introduction of an obstacle into the line-of-

sight (LoS) propagation path the resulting non-line-of-sight (NLoS) time of flight (ToF) estimate is

enlarged by a slower propagation through obstacle medium or a longer propagation distance sourcing

from the multipath propagation with blocked direct path component [84]. With a good ranging error and

NLoS classification models based on channel impulse response (CIR), useful information can be

extracted and used for localization error mitigation methods.

3.3.2 System description

Indoor localization system built with UWB ranging radios can be implemented using different location

estimation techniques. The least complex approach is based on least squares (LS) location estimator

which doesn’t take any statistical error characteristics of measured ranges into account [85]. With severe

NLoS propagation conditions there come severe ranging errors that significantly influence on

localization accuracy. With the results in previous WP3 Y1 report we shoved that localization accuracy

can be improved using NLoS classification methods to detect NLoS conditions and remove them from

the localization pool. This approach improves localization performance but also requires denser anchor

networks to satisfy minimum number of LoS anchors required for location estimation (for 2D

localization at least 3 anchors are required).

To improve localization performance without losing useful anchors we propose ranging error regression

(prediction) methods for ranging error and consequently localization error mitigation. The error

regression information can be used as input information for location estimation process. Ranging error

regression process, which is thoroughly described in WP5 Y2 report, is trained on range measurements

in several office environments. Process of logging the propagation characteristics for individual ranges

based on channel impulse response (CIR) consists of several steps:

• Mapping the environment

• Create a fixed node positioning mesh

• Logging ranges and propagation characteristics on all node pair links

Page 89: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 89 of 102

Based on recorded ranges, ranging errors can later be calculated based on a difference between exact

Euclidean distance between two points on an environmental map and the logged range for the same

radio link. With all ranging errors calculated and all corresponding CIRs an error regression model can

be trained.

We propose three approaches for localization error mitigation based on ranging error regression:

• LS location estimation with predicted error removal

• Weighted least squares (WLS) location estimation

• WLS location estimation with predicted error removal

With the first approach the estimated ranging error is simply removed from measured range. Ranging

errors are positive addition to the actual range coming from prolonged propagation caused by multipath

propagation and increased propagation time in denser materials. Propagation speeds in materials others

than air decrease and estimated range based on a speed of light and ToF measurement is then increased.

With WLS approach, predicted ranging errors are used as weights for individual ranges weighting. With

weighting according to the size of ranging error, ranges with smaller errors contribute more to the final

localization result and ranges with bigger errors are weighted less to reduce their contribution to the

final localization accuracy.

The third and the last approach is a WLS approach, where the predicted errors are also removed from

measured ranges to even improve localization performance, especially with increasing number of

available anchors.

In Section 3.3.4 proposed methods are evaluated against the standard LS approach without error

mitigation to show the effectiveness.

3.3.3 Implementation details

3.3.3.1 Test environment and equipment

Localization dataset was recorded in two office environments. Measurements from first environment

were used for training the ranging error regression model and measurements from the second office

environment were used for performance evaluation. The floor plan of second environment can be seen

in Figure 61 where node positions are marked with dots. Measurements were taken for several anchor

and tag positions and all available parameters were recorded in one measurement sample for every

measurement event:

• Actual position of node and anchor node

• Actual distance

• Measured range

• RSSI

• First path RSSI

• CIR

• Channel settings (channel, preamble length, preamble code, bitrate, etc.)

Page 90: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 90 of 102

Figure 61: Test office environment floor plan.

Two UWB nodes were connected to two Raspberry PI Linux computers via USB serial connection.

The data collection application on Raspberry PI computer was connected to the central experiment

controller computer via WiFi and MQTT transport protocol. The application running on experiment

controller computer was used for recording measurements and controlling the remotely connected

UWB nodes (e.g. configuring channel settings). The measurement and experimentation setup is

depicted in Figure 62.

Figure 62: Measurement and test setup.

3.3.3.2 LS location estimation

Basic localization algorithm for a range based localization system is based on a LS estimator that is

sensitive to NLoS ranging errors.

Euclidean distance di between two nodes is defined as

𝑑𝑖 = ‖𝒑�̂� − 𝒑𝒊‖

(27)

where 𝒑�̂� represents yet unknown estimated node’s position and 𝒑𝒊 represents i-th anchor position.

In 2D search space di can be expresses as

𝑑𝑖 = √(𝑥𝑖 − 𝑥)2 + (𝑦𝑖 − 𝑦)2

(28)

Where xi and yi are coordinates of i-th anchor and x and y are yet unknown coordinates of a tag.

The LS estimator selects θ in a way that makes a signal model 𝑠[𝑛] closest to the observed data 𝑥[𝑛]. The LS error is defined as

𝐽(𝜃) = ∑(𝑥[𝑛] − 𝑠[𝑛])2

𝑁−1

𝑛=0

(29)

Page 91: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 91 of 102

Assuming that the system is linear we can apply the linear LS approach

𝑠[𝑛] = 𝜃ℎ[𝑛]

(30)

Where h[n] is a known observation sequence.

The LS error criterion can be now transformed into

𝐽(𝜃) = ∑(𝑥[𝑛] − 𝜃ℎ[𝑛])2

𝑁−1

𝑛=0

(31)

To derive a matrix notation, a signal matrix 𝒔 = [𝑠[0]𝑠[1]… 𝑠[𝑁 − 1]]𝑇 and 𝑁 × 𝑝 observation

matrix H of full rank p are needed.

The linear LS criterion can be rewritten as

𝐽(𝜃) = ∑(𝑥[𝑛] − 𝜃ℎ[𝑛])2

𝑁−1

𝑛=0

= (𝒙 − 𝑯𝜽)𝑇(𝒙 − 𝑯𝜽)

(32)

And the LS estimator can be derived as

�̂�𝑳𝑺 = (𝑯𝑇𝑯)−1𝑯𝑇𝒙

(33)

Rewriting the equation for the Euclidean distance we get the nonlinear equation

−2𝑥𝑖𝑥 − 2𝑦𝑖𝑦 + 𝑥2 + 𝑦2 = �̂�𝑖2 − 𝑥𝑖

2 − 𝑦𝑖2

(34)

which can be linearized with introduction of a new variable

𝑅 = 𝑥2 + 𝑦2

(35)

The new estimate is then defined as

�̂� = [𝑥 𝑦 𝑅]𝑇

(36)

The predefined system of linear equations can now be written as

𝑯 = [

−2𝑥1 −2𝑦1 1−2𝑥2 −2𝑦2 1

⋮ ⋮ ⋮−2𝑥𝑁−1 −2𝑦𝑁−1 1

]

(37)

Page 92: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 92 of 102

𝒙 =

[

�̂�12 − 𝑥1

2 − 𝑦12

�̂�22 − 𝑥2

2 − 𝑦22

⋮�̂�𝑁−1

2 − 𝑥𝑁−12 − 𝑦𝑁−1

2 ]

(38)

3.3.3.3 LS location estimation with error mitigation

The simplest form of localization with error mitigation is LS estimation with predicted ranging error

removal. For every new measured range between a tag and an anchor a ranging error is predicted with

ranging error regression model based on CIR data (look in WP5 Y2 report). Predicted ranging error is

then subtracted from measured range to compensate for expected ranging error and thus improving

localization accuracy

�̂�𝑖 = 𝑑𝑖 − 𝜖𝑖

(39)

where �̂�𝑖 is error compensated range used for localization, 𝑑𝑖 is measured range including all errors and

𝜖𝑖 is predicted ranging error. Compensated ranges �̂�𝑖 are then used in the LS location estimation

algorithm as uncompensated ranges in LS estimation without error mitigation.

3.3.3.4 WLS location estimation

With LS estimation the assumption of having constant ranging error variances is made. This assumption

is satisfactory in case of LoS ranges, but with NLoS ranges come also increased ranging errors. The

severity of ranging errors is connected to the severity of NLoS condition. The contribution of NLoS

ranges to the accuracy of localization is destructive and individual range weighting according to the

severity of NLoS condition can help improve localization performance.

With an introduction of a diagonal 𝑁 × 𝑁 positive definite weighting matrix W the LS estimation error

can be rewritten as

𝐽(𝜃) = ∑ 𝑤𝑛(𝑥[𝑛] − 𝑠[𝑛])2

𝑁−1

𝑛=0

= (𝒙 − 𝑯𝜽)𝑇𝑾(𝒙 − 𝑯𝜽)

(40)

Where W is defined as

𝑾 = [

𝑤1 0 ⋯ 00 𝑤2 … 0⋮ ⋮ ⋱ ⋮0 0 ⋯ 𝑤𝑁−1

]

(41)

Individual weights 𝑤𝑛 are defined as reciprocal values of estimated ranging error. This way ranges

with smaller predicted errors get bigger weights and more contribution to the final localization result.

𝑤𝑛 =1

𝜖𝑖

(42)

The resulting estimator is WLS location estimator

Page 93: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 93 of 102

�̂�𝑾𝑳𝑺 = (𝑯𝑇𝑾𝑯)−1𝑯𝑇𝑾𝒙

(43)

3.3.3.5 WLS location estimation with error mitigation

To extend the error mitigation even further, the WLS location estimation is performed on ranges that

have been already compensated for expected ranging error. The ranging error is predicted for each

individual measured range, range gets subtracted by predicted error and weight for corresponding

range applied.

𝑤𝑛 =1

𝜖𝑖

(44)

�̂�𝑖 = 𝑑𝑖 − 𝜖𝑖

(45)

3.3.4 Evaluation

Results of testing different error mitigation procedures based on ranging error regression algorithm

presented in WP5 Y2 report show clearly that error mitigation is better than no mitigation. The most

accurate localization performance is expected from localization systems that use only LoS range

measurements as a localization input. During evaluation a LoS localization algorithm was implemented

using actual LoS information recorded during measurement which is 100 % certain and is not based on

any prediction or classification algorithm. It can be used as a reference to compare performance of other

localization algorithms. In Table 9 it is represented with LS_LOS column achieving 35 cm mean error

with 3 anchors and 18.9 cm using 10 anchors.

The worst localization performer is a LS algorithm without error mitigation achieving 1.76 m mean error

with 3 anchors and 77 cm mean error with 10 anchors.

Table 9: Mean localization error in meters for different number of anchors.

Num. Anchors LS LS_LOS LS_CLASS LS_REG WLS WLS_REG

3 1.757 0.352 0.712 0.635 1.752 0.672

4 1.037 0.243 0.431 0.364 0.938 0.342

5 0.906 0.214 0.343 0.281 0.694 0.261

6 0.831 0.197 0.297 0.245 0.588 0.217

7 0.801 0.191 0.264 0.225 0.531 0.193

8 0.785 0.190 0.238 0.205 0.494 0.177

9 0.789 0.190 0.216 0.195 0.467 0.163

10 0.774 0.189 0.200 0.183 0.453 0.154

Using only NLoS classification and elimination of NLoS ranges as an error mitigation technique,

performance is significantly better than the performance of a localization approach without error

mitigation. With 71 cm mean error with 3 anchors and 20 cm mean error with 10 anchors is an excellent

performer but it sacrifices a critical number of available anchors for localization accuracy performance

in challenging environments.

Page 94: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 94 of 102

To achieve similar performance without sacrificing the number of suitable anchors a WLS approach

proves as a good approach. With 3 anchors a 67 cm mean error is achieved and 15 cm mean error is

achieved with 10 anchors. This approach proves itself significantly better than approach without an error

mitigation for small number of available anchors and achieves performance of localization algorithms

that use only LoS anchors for bigger number of available anchors.

All results of evaluation are in addition to Table 9 represented also in Figure 63.

Figure 63: Localization accuracy for different ranging error mitigation approaches.

Page 95: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 95 of 102

4 CONCLUSIONS

This deliverable intends to describe the context information related to the showcases in the content of

the eWINE project. It was divided into localisation and contextualization with the idea of explaining

variations in the solutions provided in the project.

• Contextualization

o SNR/throughput estimation for automated mode selection D2D, which proposes an

automatic mode selection based on SNR and throughput. The mode selection between

infrastructure mode and D2D mode developed in our work can optimize the

performance of LTE network links so mobile users can achieve higher QoS. Our work

on this open-source D2D communication is a useful reference for future 3GPP

standardization activities.

o Detecting ultra-narrowband signals, which explains how to detect these signals based

in more information than the used and also, how to cooperate with other technology. In

this report we describe our enhanced transmission detector for the 868 MHz band. The

detector is part of the eWINE year 2 Showcase 2 demonstrator. It can be considered an

extension of the work done in year 1 on narrowband sensing.

o Channel Quality (CQ) estimation ,which analyses the best channel quality metric for a

base station to use in a white band. In this section we derived a new channel quality

metric and we used it to analyse the feasibility of whitelisting in RFDMA ultranarrow

band networks. We showed that there is a region between -120 dBm and -118 dBm

where the network can support some devices at the chosen quality of service with

whitelisting while that would not be possible if all channels (no whitelist) would be

used.

o Description of application requirements, which is a modification of the WiSHFUL

control framework that allows applications to express their needs. An application that

may need high throughput and may accept a high packet loss, for example, can express

its necessities using this framework.

o Estimator for link quality by computing expected SNR based on (inaccurate) location

information, which shows the eWINE Intelligent End-to-End Controller. We

experimentally evaluate the proposed location-based decision-making mechanism for

D2D link establishment in a complex office-like indoor environment. We showed a

relatively small loss of link establishment potential due to an increase in the

inaccuracies of location information.

o Cooperation in Neighbour Discovery, which describes a neighbourhood discovery

approaches in D2D. We focused on the passive neighbour discovery in multi-channel

environments. We present different discovery approaches with low computational

complexity that utilize cooperation between devices by exchanging discovery results in

order to improve the discovery process. Furthermore, we present an optimized

discovery approach that uses multiple transceivers and evaluate the bounds on the

performance under idealized conditions. We analyse the impact of different network

parameters such as number of channels and number of neighbours on the discovery

times of the developed approaches by using a simulative evaluation.

o Throughput measurements and interface for load balancing between several PHY

technologies (mmWave, GFDM), which provides a load balance between multiple PHY

technologies. The corresponding algorithms are designed to ponder the robustness and

overhead, resulting in a general lower resilience of the mmWave transmission compared

to cellular transmission in lower frequency bands.

• Localisation

Page 96: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 96 of 102

o Generalized architecture, which explains details of the Standardized Localization

Service. We provide a detailed design and a prototypical implementation of the

Standardized Localization Service (SLSR), a middleware architecture for achieving the

integration of individual localization.

o Cooperative localization, where we describe the developed, implementation and

evaluation of the localization algorithm. We presented the comparison between

cooperative convex relaxation localization algorithm and the non-cooperative one by

simulations.

o Indoor localization with multilateration, which focus in errors mitigation techniques.

That shows clearly that error mitigation is better than no mitigation and compares

different approaches to solve this issue.

Our contributions are disseminated through the eWINE intelligence toolbox, as it is showed in the

deliverable D3.4, and can be accessed by the community.

Page 97: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 97 of 102

REFERENCES

[1] “http://www.3gpp.org/specifications/,” October 2016. [Online]. Available:

http://www.3gpp.org/specifications/releases/68-release-12.

[2] srsLTE, “Open source 3GPP LTE library,” [Online]. Available:

https://github.com/srsLTE/srsLTE. [Accessed October 2016].

[3] I. a. G.-S. A. a. S. P. D. a. S. P. a. C. C. a. L. D. J. Gomez-Miguelez, “srsLTE: An Open-

source Platform for LTE Evolution and Experimentation,” in Proceedings of the Tenth

ACM International Workshop on Wireless Network Testbeds, Experimental

Evaluation, and Characterization (WiNTECH), New York City, New York, 2016.

[4] T. Lassen, “Long-range RF communication,” Texas Instruments, 2014.

[5] D. Dinesh, A. M. Wyglinski and G. J. Minden, “A spectrum surveying framework for

dynamic spectrum access networks,” IEEE Transactions on Vehicular Technology, vol.

58, no. 8, pp. 4158-4168, 2009.

[6] “OpenCV - Open Source Computer Vision Library,” 2018. [Online]. Available:

https://opencv.org/. [Accessed 9 2 2018].

[7] Schmidt, P. S., Enghardt, T., Khalili, R., & Feldmann, A. (2013, December). Socket

intents: Leveraging application awareness for multi-access connectivity. In Proceedings

of the ninth ACM conference on Emerging networking experiments and technologies

(pp. 295-300). ACM.

[8] Gawlowicz, P., Zubow, A., Chwalisz, M., & Wolisz, A. (2017, May). UniFlex: A

framework for simplifying wireless network control. In Communications (ICC), 2017

IEEE International Conference on (pp. 1-7). IEEE.

[9] Chen, G., Lu, Y., Meng, Y., Li, B., Tan, K., Pei, D., ... & Zhao, Y. (2016, June). Fast

and Cautious: Leveraging Multi-path Diversity for Transport Loss Recovery in Data

Centers. In USENIX Annual Technical Conference (pp. 29-42).

[10] A. Asadi et al., “A survey on device-to-device communication in cellular networks,”

IEEE Communications Surveys & Tutorials, pp. 1801–1819, 2014.

[11] V. Daiya et al., “Experimental analysis of rssi for distance and position estimation,” in

Recent Trends in Information Technology (ICRTIT), IEEE, 2011.

[12] D. Lymberopoulos et al., “A Realistic Evaluation and Comparison of Indoor Location

Technologies: Experiences and Lessons Learned,” in Information Processing in Sensor

Networks (IPSN15), 2015.

[13] N. P. Kuruvatti et al., “Robustness of location based d2d resource allocation against

positioning errors,” in Vehicular Technology Conference (VTC Spring), 2015 IEEE

81st, IEEE, 2015, pp. 1–6.

[14] K. Doppler et al., “Device-to-device communication as an underlay to lte-advanced

networks,” IEEE Communications Magazine, vol. 47, no. 12, 2009.

[15] S. Doumiati, H. Artail, and D. M. Gutierrez-Estevez, “A framework for lte-a proximity-

based device-to-device service registration and discovery,” Procedia Computer Science,

vol. 34, pp. 87–94, 2014.

[16] G. Zanca et al., “Experimental comparison of rssi-based localization algorithms for

indoor wireless sensor networks,” in Real-World WSNs, ACM, 2008, pp. 1–5.

Page 98: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 98 of 102

[17] N. Wirström et al., “Localization using Anonymous Measurements,” in Distributed

Computing in Sensor Systems (DCOSS’15), IEEE, 2015.

[18] M. Z. Bocus et al., “An approximation of the first order marcum q-function with

application to network connectivity analysis,” IEEE Communications Letters, vol. 17,

no. 3, pp. 499–502, 2013.

[19] A. Borrelli et al., “Channel models for ieee 802.11b indoor system design,” in

International Conference on Communications, IEEE, 2004.

[20] G. Caso et al., “On the applicability of multi-wall multi-floor propagation models to

wifi fingerprinting indoor positioning,” in Future Access Enablers of Ubiquitous and

Intelligent Infrastructures, Springer, 2015, pp. 166–172.

[21] Y. Mostofi et al., “Characterization and modeling of wireless channels for net- worked

robotic and control systems-a comprehensive overview,” in Intelligent Robots and

Systems (IROS), IEEE, 2009, pp. 4849–4854.

[22] Lemic, F., Behboodi, A., Handziski, V., Zubow, A. and Wolisz, A. "Location-based

Decision-making Mechanism for Device-to-Device Link Establishment", IEEE 86th

Vehicular Technology Conference (VTC-Fall'17), 2017.

[23] A. Willig, N. Karowski, and J.-H. Hauer, “Passive Discovery of IEEE 802.15.4-based

Body Sensor Networks,” Elsevier Ad Hoc Networks Journal, vol. 8, no. 7, pp. 742–754,

2010.

[24] N. Karowski, A. Viana, and A. Wolisz, “Optimized Asynchronous Multichannel

Neighbor Discovery,” in Proc. of IEEE INFOCOM, April 2011.

[25] N. Karowski, A. Viana, and A. Wolisz, “Optimized Asynchronous Multichannel

Discovery of IEEE 802.15.4-Based Wireless Personal Area Networks,” IEEE

Transactions on Mobile Computing, vol. 12, no. 10, pp. 1972–1985, October 2013.

[26] N. Karowski and K. Miller, “Optimized Asynchronous Passive Multi- Channel

Discovery of Beacon-Enabled Networks,” Telecommunication Networks Group,

Technische Universit¨at Berlin, TKN Technical Report Series TKN-15-002, March

2015.

[27] S. Lai, B. Ravindran, and H. Cho, “Heterogenous quorum-based wakeup scheduling in

wireless sensor networks,” Computers, IEEE Transactions on, vol. 59, no. 11, pp. 1562–

1575, Nov 2010.

[28] Y.-C. Tseng, C.-S. Hsu, and T.-Y. Hsieh, “Power-saving protocols for ieee 802.11-

based multi-hop ad hoc networks,” Elsevier Computer Networks Journal, vol. 43, no. 3,

pp. 317–337, 2003.

[29] P. Dutta and D. Culler, “Practical asynchronous neighbor discovery and rendezvous for

mobile sensing applications,” in ACM SenSys, Nov. 2008.

[30] A. Kandhalu, K. Lakshmanan, and R. R. Rajkumar, “U-connect: A low-latency energy-

efficient asynchronous neighbor discovery protocol,” in Proceedings of the 9th

ACM/IEEE International Conference on Information Processing in Sensor Networks,

ser. IPSN ’10. New York, NY, USA: ACM, 2010, pp. 350–361.

Page 99: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 99 of 102

[31] M. Bakht, M. Trower, and R. H. Kravets, “Searchlight: Won’t you be my neighbor?” in

Proceedings of the 18th Annual International Conference on Mobile Computing and

Networking, ser. Mobicom ’12. New York, NY, USA: ACM, 2012, pp. 185–196.

[32] W. Sun, Z. Yang, K. Wang, and Y. Liu, “Hello: A generic flexible protocol for neighbor

discovery,” in INFOCOM, 2014 Proceedings IEEE, April 2014, pp. 540–548.

[33] K. Wang, X. Mao, and Y. Liu, “Blinddate: A neighbor discovery protocol,” Parallel and

Distributed Systems, IEEE Transactions on, vol. 26, no. 4, pp. 949–959, April 2015.

[34] M. J. McGlynn and S. A. Borbash, “Birthday protocols for low energy deployment and

flexible neighbor discovery in ad hoc wireless networks,” in ACM MobiHoc, Oct. 2001.

[35] S. Vasudevan, D. Towsley, D. Dennis, and R. Khalili, “Neighbor discovery in wireless

networks and the coupon collector’s problem,” in ACM MobiCom, Sep. 2009.

[36] R. Khalili, D. L. Goeckel, D. Towsley, and A. Swami, “Neighbor discovery with

reception status feedback to transmitters,” in IEEE Infocom, Mar. 2010.

[37] S. Ali, E. T. Yazdi, and A. Willig, “Investigations on passive discovery schemes for

ieee 802.15.4 based body sensor networks,” in Telecommunication Networks and

Applications Conference (ATNAC), 2013 Australasian, Nov 2013, pp. 89–94.

[38] L. Chen, Y. Shu, Y. Gu, S. Guo, T. He, F. Zhang, and J. Chen, “Groupbased neighbor

discovery in low-duty-cycle mobile sensor networks,” IEEE Transactions on Mobile

Computing, vol. PP, no. 99, pp. 1–1, 2015.

[39] J. Du, E. Kranakis, and A. Nayak, “Cooperative neighbor discovery protocol for a

wireless network using two antenna patterns,” in 2012 32nd International Conference

on Distributed Computing Systems Workshops, June 2012, pp. 178–186.

[40] S. Vasudevan, J. Kurose, and D. Towsley, “On neighbor discovery in wireless networks

with directional antennas,” vol. 4, mar. 2005, pp. 2502 – 2512 vol. 4.

[41] A. Purohit, B. Priyantha, and J. Liu, “Wiflock: Collaborative group discovery and

maintenance in mobile sensor networks,” in Information Processing in Sensor Networks

(IPSN), 2011 10th International Conference on, April 2011, pp. 37–48.

[42] R. Cohen and B. Kapchits, “Continuous neighbor discovery in asynchronous sensor

networks,” Networking, IEEE/ACM Transactions on, vol. 19, no. 1, pp. 69–79, Feb

2011.

[43] D. Camps-Mur and P. Loureiro, “e2d wi-fi: A mechanism to achieve energy efficient

discovery in wi-fi,” IEEE Transactions on Mobile Computing, vol. 13, no. 6, pp. 1186–

1199, June 2014.

[44] M. Bakht, J. Carlson, A. Loeb, and R. Kravets, “United we find: Enabling mobile

devices to cooperate for efficient neighbor discovery,” in Proceedings of the Twelfth

Workshop on Mobile Computing Systems& Applications, ser. HotMobile ’12. New

York, NY, USA: ACM, 2012, pp. 11:1–11:6.

[45] H. Bakht, Y. Kim, I. Jang, and S. Pack, “Cooperative neighbor discovery for consumer

devices in mmwave ad-hoc networks,” in 2012 IEEE International Conference on

Consumer Electronics (ICCE), Jan 2012, pp. 100–101.

[46] J. Schiller and A. Voisard, Location-based services. Elsevier, 2004.

Page 100: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 100 of 102

[47] R. Di Taranto et al., “Location-aware communications for 5g networks,” IEEE Signal

Processing Magazine, vol. 31, no. 6, pp. 102–112, 2014.

[48] S. Couronne ́ et al., “Locon-a platform for an inter-working of embedded localisation

and communication systems,” in SECON Workshops, IEEE, 2009.

[49] S. Lempert et al., “Towards a reference architecture for an integration platform for

diverse smart object technologies,” Proceedings of MMS, pp. 53–66, 2011.

[50] F. Lemic, V. Handziski, et al., “Toward standardized localization service,” in Indoor

Positioning and Indoor Navigation (IPIN), IEEE, 2016, pp. 1–8.

[51] J. M. Rabaey, “The swarm at the edge of the cloud-a new perspective on wireless,” in

2011 Symposium on VLSI Circuits (VLSIC), IEEE, 2011, pp. 6–8.

[52] A. R. Beresford and F. Stajano, “Location privacy in pervasive computing,” IEEE

Pervasive computing, vol. 2, no. 1, pp. 46–55, 2003.

[53] F. Lemic et al., “Selection and aggregation of location information provisioning

services,” IEEE International Conference on Communications (ICC’17), 2017.

[54] N. Moayeri et al., “PerfLoc: An Extensive Data Repository for Development of

Smartphone Indoor Localization Apps,” in PIMRC’16, 2016.

[55] F. Lemic et al., “Experimental decomposition of the performance of fingerprinting-

based localization algorithms,” in IPIN’14, IEEE, 2014.

[56] N. Mor et al., “Toward a global data infrastructure,” IEEE Internet Computing, vol. 20,

no. 3, pp. 54–62, 2016.

[57] F. Lemic et al., “Selection and aggregation of location information provisioning

services,” IEEE International Conference on Communications (ICC’17), 2017.

[58] T. Van Haute et al., “Performance Analysis of Multiple Indoor Positioning Systems in

a Healthcare Environment,” Health Geographics, 2016.

[59] T. Van Haute et al., “Performance Analysis of Multiple Indoor Positioning Systems in

a Healthcare Environment,” Health Geographics, 2016.

[60] T. Van Haute et al., “Performance Analysis of Multiple Indoor Positioning Systems in

a Healthcare Environment,” Health Geographics, 2016.

[61] M. Koühne et al., “Location-based services with ibeacon technology,” in Artificial

Intelligence, Modelling and Simulation (AIMS), IEEE, 2014, pp. 315–321.

[62] F. Lemic et al., “Experimental evaluation of rf-based indoor localization algorithms

under rf interference,” in Localization and GNSS (ICL-GNSS), 2015.

[63] F. Lemic, V. Handziski, et al., “Web-based platform for evaluation of rf-based indoor

localization algorithms,” in ICC Workshops, IEEE, 2015.

[64] R. Friedman et al., “On power and throughput tradeoffs of wifi and bluetooth in

smartphones,” IEEE Transactions on Mobile Computing, 2013.

[65] B. Forssell, “Radionavigation systems,” 2008.

[66] H. Wymeersch, J. Lien and M. Z. Win, “Cooperative Localization in Wireless

Networks,” Proceedings of the IEEE, vol. 97, pp. 427-450, 2 2009.

Page 101: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 101 of 102

[67] N. Patwari, A. O. Hero, M. Perkins, N. S. Correal and R. J. O'Dea, “Relative location

estimation in wireless sensor networks,” IEEE Transactions on Signal Processing, vol.

51, pp. 2137-2148, 8 2003.

[68] X. Li, “Collaborative Localization With Received-Signal Strength in Wireless Sensor

Networks,” IEEE Transactions on Vehicular Technology, vol. 56, pp. 3807-3817, 11

2007.

[69] E. G. Larsson, “Cramer-Rao bound analysis of distributed positioning in sensor

networks,” IEEE Signal Processing Letters, vol. 11, pp. 334-337, 3 2004

[70] P. Biswas, T. C. Liang, K. C. Toh, Y. Ye and T. C. Wang, “Semidefinite Programming

Approaches for Sensor Network Localization With Noisy Distance Measurements,”

IEEE Transactions on Automation Science and Engineering, vol. 3, pp. 360-371, 10

2006.

[71] P. Biswas and Y. Ye, “Semidefinite programming for ad hoc wireless sensor network

localization,” in Third International Symposium on Information Processing in Sensor

Networks, 2004. IPSN 2004, 2004.

[72] Y. Shang, W. Rumi, Y. Zhang and M. Fromherz, “Localization from connectivity in

sensor networks,” IEEE Transactions on Parallel and Distributed Systems, vol. 15, pp.

961-974, 11 2004.

[73] A. T. Ihler, J. W. Fisher, R. L. Moses and A. S. Willsky, “Nonparametric belief

propagation for self-localization of sensor networks,” IEEE Journal on Selected Areas

in Communications, vol. 23, pp. 809-819, 4 2005.

[74] V. Savic and S. Zazo, “Cooperative localization in mobile networks using

nonparametric variants of belief propagation,” Ad Hoc Networks, vol. 11, pp. 138-150,

2013.

[75] X. Ji and H. Zha, “Sensor positioning in wireless ad-hoc sensor networks using

multidimensional scaling,” in IEEE INFOCOM 2004, 2004.

[76] J. A. Costa, N. Patwari and A. O. Hero III, “Distributed weighted-multidimensional

scaling for node localization in sensor networks,” ACM Transactions on Sensor

Networks (TOSN), vol. 2, pp. 39-64, 2006.

[77] R. M. Vaghefi, M. R. Gholami, R. M. Buehrer and E. G. Strom, “Cooperative Received

Signal Strength-Based Sensor Localization With Unknown Transmit Powers,” IEEE

Transactions on Signal Processing, vol. 61, pp. 1389-1403, 3 2013.

[78] T. Jia and R. M. Buehrer, “Collaborative position location with NLOS mitigation,” in

2010 IEEE 21st International Symposium on Personal, Indoor and Mobile Radio

Communications Workshops, 2010.

[79] C. Soares, J. Xavier and J. Gomes, “Simple and Fast Convex Relaxation Method for

Cooperative Localization in Sensor Networks Using Range Measurements,” IEEE

Transactions on Signal Processing, vol. 63, pp. 4532-4543, 9 2015.

[80] N. Piovesan and T. Erseghe, “Cooperative Localization in WSNs: a Hybrid

Convex/non-Convex Solution,” IEEE Transactions on Signal and Information

Processing over Networks, vol. PP, pp. 1-1, 2016.

Page 102: D3.3: Demonstration and evaluation of the context ... · and contextualization. Location-based services and context information in wireless networks need accurate ... 3.3 Indoor localization

D3.3: Demonstration and evaluation of the context provisioning and sensing algorithms

© eWINE Consortium 2016-2018 Page 102 of 102

[81] S. Yousefi, X. W. Chang and B. Champagne, “Distributed cooperative localization in

wireless sensor networks without NLOS identification,” in Positioning, Navigation and

Communication (WPNC), 2014 11th Workshop on, 2014.

[82] Y. Shang, W. Ruml, Y. Zhang and M. P. J. Fromherz, “Localization from mere

connectivity,” in Proceedings of the 4th ACM international symposium on Mobile ad

hoc networking \& computing, 2003.

[83] N. Patwari, J. N. Ash, S. Kyperountas, A. O. Hero,, “Locating the nodes: cooperative

localization in wireless sensor networks,” IEEE Signal Processing Magazine, vol. 22,

no. 4, pp. 54-69, 2005.

[84] S. Gezici, "Localization via ultra-wideband radios: a look at positioning aspects for

future sensor networks," IEEE Signal Processing Magazine, vol. 22, no. 4, pp. 70-84,

2005.

[85] S. Marano, W. M. Gifford, H. Wymeersch and M. Z. Win, “NLOS identification and

mitigation for localization based on UWB experimental data,” IEEE Journal on Selected

Areas in Communications, vol. 28, no. 7, pp. 1026-1035, 2010.