SpatioTemporal Composition of Crowdsourced Services
 7 Citations
 1.5k Downloads
Abstract
We propose a new composition approach for crowdsourced services based on dynamic features such as spatiotemporal aspects. The proposed approach is defined based on a formal crowdsourced service model that abstracts the functionality of crowdsourced data on the cloud in terms of spatiotemporal features. We present a new QoSaware spatiotemporal union composition algorithm to efficiently select the optimal crowdsourced composition plan. Experimental results validate the performance of the proposed algorithm.
Keywords
Crowdsourced service Spatiotemporal composition Crowdsourced service composition Spatiotemporal QoS1 Introduction
The ubiquity of mobile devices enables to crowdsource sensor data. Storing, processing and managing continuous streams of crowdsourced sensed data pose key challenges [4]. Due to availability, lowcost and fast access to cloud services, the aggregation of crowdsourced sensor data on the cloud (i.e., crowdsourced SensorCloud) provides a unique opportunity to address the above challenges.
We propose to harness the service paradigm as a key mechanism to turn crowdsourced sensor data into useful information. The service paradigm is a powerful abstraction hiding dataspecific information which focuses on how data is to be used. In this regard, the functionality of crowdsourced sensor data on the cloud is abstracted as crowdsourced services which are easily accessible irrespective of the distribution of crowdsourced sensor data sources.
Because of the nature of crowdsourced sensors, mobility is an intrinsic part of the functional and nonfunctional aspects of crowdsourced services. This provides an opportunity to combine individual crowdsourced services to provide valueadded services whenever they are available. However, this also presents challenges because of the hiding distributed, volatile and dynamic aspects including spatiotemporal dependencies. In this regard, we focus on spatiotemporal aspects as key parameters to query the crowdsourced SensorCloud. The challenge can be more formally defined as finding the “best” spatiotemporal composition of crowdsourced services.
This paper focuses on providing a framework for spatiotemporal selection and composition of crowdsourced services. We first formally define a new spatiotemporal model for crowdsourced services and composition framework. In addition, we propose a spatiotemporal union composition algorithm. Our case study focuses on the use of WiFi hotspot sharing in a geographical area. Finally, a performance study of the proposed approach is presented.
The remainder of the paper is structured as follows: Sect. 2 formally defines the crowdsourced service model and composition framework. Section 3 illustrates the new QoS model. Section 4 details the proposed composition approach. Section 5 describes the evaluation of the approach. Section 6 concludes and highlights our future work.
Motivating Scenario. Let us assume that Sarah would like to find the best WiFi hotspotcovered path from ‘A’ to ‘B’. The process of finding the best journey is considered as a twosteps composition problem. In the first step as explained in [2], we consider a line segment as a service (e.g., a tram service) with a set of quality parameters. By applying STA* [3], we have a set of optimal travel plans from ‘A’ to ‘B’. In the second step, we take the first step output as an input and then look at WiFi coverages as a key parameter to determine the best travel plan. Our approach considers one path at a time for selecting the best coverage along each and every optimal plan. The novelty of this approach is considering QoS WiFi coverage as a service because of intrinsic complexity of WiFi coverage which usually includes area, signal strength and bandwidth. Therefore, we formulate the problem of selecting the best coverage as a composition of WiFi coverages on a journey from ‘A’ to ‘B’. Each basic WiFi coverage is offered by one hotspot provided by the crowd. Therefore, the entire coverage of a plan will be crowdsourced. We also assume that hotspots are static, i.e., the coverage does not change in time and space. Key to crowdsourcing hotspots are the spatiotemporal attributes which will be used for selecting and composing services. This paper focuses on the second level.
2 SpatioTemporal Model for Crowdsourced Service
In this section, we propose a new formal spatiotemporal model for an atomic crowdsourced service and crowdsourced service composition framework.
2.1 SpatioTemporal Model for Atomic Crowdsourced Services
We discuss the key concepts to model a crowdsourced service in terms of spatiotemporal features of crowdsourced sensor data.

\(p_i\) is a geospatial coordinate set (\(x_i\),\(y_i\)),

\(t_i\) is a time instant.

sid is a unique sensor ID,

loc is the latest recorded location of sen,

sa is the specific sensing area centred at loc with the radius \(R_s\),

tsp (timestamp) is the latest time in which sensor data related to a crowdsourced service is collected from sen.

id is a unique service ID,

\(SEN = \{sen_i.sid  1\leqslant i \leqslant m \}\) represents a finite set of sensors \(sen_i\) collecting sensor data related to S. In this paper, we assume that each crowdsourced service consists of one sensor (i.e., \( \left SEN \right =1 \)),
 \(space\text {}time\) describes the spatiotemporal domain of S. In this paper, we restrict the space of a service to a surface area. The space is presented by a spatial square area \(A_s\) which is a minimum bounding square containing the sensing area of S (i.e., \(S.SEN.sen_1.sa\)). The time is a tuple \(<\,t_s, t_e\,>\), where

\(t_s\) is a starttime of S,

\(t_e\) is an endtime of S.
As can be seen in Fig. 1(b), the crowdsourced service is modelled as a Minimum Bounding Box MBB which is represented by (\(x_s\), \(y_s\), \(t_s\)) (i.e., bottomleft) and (\(x_e\), \(y_e\), \(t_e\)) (i.e., topright),


F describes a set of functions offered by S (e.g., providing WiFi hotspot),

Q is a tuple \(<\) \(q_1\),\(q_2\), ... , \(q_n\) \(>\), where each \(q_i\) denotes a QoS property of S.
2.2 SpatioTemporal Model for Composite Crowdsourced Services
It is quite likely that a linear plan cannot be covered by a single crowdsourced service. In such cases, crowdsourced services may need to be composed to cover the linear plan. The following rule, called spatiotemporal composability, checks whether two component services are spatiotemporally composable.
 Definition 5: SpatioTemporal Composability. Two component services \(S_k\) and \(S_l\) are spatiotemporally composable with respect to a linear plan P iff

\( S_k \cap P \ne \varnothing \; \& \; S_l \cap P \ne \varnothing \) i.e., \(S_k\) and \(S_l\) intersect P.

\(S_l\) has overlap with the extended MBB of \(S_k\) (i.e., \(MBB_{Ex}(S_k)\)). The \(MBB_{Ex}\) (i.e., buffer area) is computed by extending each edge of the area of \(S_k\) by a distance d and also extending time edge by time period \(\tau \) (Fig. 2(a)). The values of d and \(\tau \) are assumed to be userdefined. For example, in our scenario d are \(\tau \) are the maximum disconnection tolerant distance and time.

Two edge vectors \(V_{p_{s} p_{e}}\) and \(V_{loc_{k} loc_{l}}\) are in the same direction. The vectors \(V_{p_{s} p_{e}}\) and \(V_{loc_{k} loc_{l}}\) connect two vertices (\(p_{s}, p_{e}\)) and (\(loc_{k} loc_{l}\)) respectively. \(p_{s}\) and \(p_{e}\) are the startpoint and endpoint of P and \(loc_{k}\) and \(loc_{l}\) are the sensed points of \(S_k\) and \(S_l\), respectively (Fig. 2(a)). The vector direction is used as heuristic which is based on the premise that the best neighbours are going to be found in the direction where the traveler is going.
As can be seen in Fig. 2(a), \(S_k\) and \(S_l\) are spatiotemporal composable. However, although \(S_m\) intersects P, it does not have overlap with \(MBB_{Ex}(S_k)\). As a result, \(S_m\) and \(S_k\) are not spatiotemporal composable.

2.3 SpatioTemporal Index Data Structure for Crowdsourced Services
3 An Extensible Quality Model for Crowdsourced Service
Given the diversity of service offerings, an important challenge for users is to discover the ‘right’ service satisfying their requirements. We introduce novel QoS attributes for services. For the sake of clarity, we use a limited number of QoS attributes.
3.1 Quality Model for Atomic Crowdsourced Service

Coverage (cov): Signal strength is associated with the coverage area of a service. The closer the user to the center of a service, the stronger WiFi signal is. We model \(q_{cov}(S)\) using exponential attenuation probabilistic coverage model [1]. In this model, each service has a confident radius \(R_c\) (Fig. 4). The coverage \(q_{cov}(S)\) varies from zero to one. Within the distance of \(R_c\), the value of \(q_{cov}(S)\) is 1 which means full signal. In the interval (\(R_s  R_{c}\)), the value of \(q_{cov}(S)\) approaches zero as the distance from the center increases. Beyond \(R_{s}\), the value of \(q_{cov}(S)\) is set to zero.
 Capacity (cap): Capacity indicates the bandwidth for each user’s request which is important for uploading and downloading. Given an atomic service S, \(q_{cap}\) is computed as follows:where DTR is the maximum speed at which the data can be transmitted for S (i.e., total available bandwidth) and \(N_{cr}(S)\) is the number of concurrent requests that S can support. We assume that total available bandwidth is equally allocated.$$\begin{aligned} \small 0\leqslant \frac{DTR}{N_{cr}(S)} \leqslant 1 \end{aligned}$$(1)
3.2 Quality Model for Composite Crowdsourced Service
Aggregation functions are used to compute the QoS of composite services.
 Coverage: The coverage value of a composite service is the product of the coverage of all its component services. For each component service \(S_i, q_{cov}(S_i)\) is computed with respect to the linear plan P as follows:where \(a = dis(P,loc) R_c\) and dis(P, loc) is the perpendicular distance from the sensed point of the component service loc to the linear plan P (Fig. 4). k is a sensortechnology dependent parameter which varies with the type of sensors and environment. The \(q_{cov}\) of the component service which is within the distance of \(R_c\) is 1. The \(q_{cov}\) value of the service lies within \((R_c, R_{s})\) exponentially decreases as the perpendicular distance increases. Since a component service intersects the linear plan, the value of dis is not beyond \(R_{s}\) (i.e., \(q_{cov} \ne 0\)).$$\begin{aligned} \left\{ \begin{matrix} 1 &{} 0\leqslant dis(P,loc)\leqslant R_c\\ e^{ka} &{} dis(P,loc)> R_{c}\\ \end{matrix}\right. \end{aligned}$$(2)

Capacity: The capacity value for a composite service is the average of the capacity of all its component services.
4 QoSAware SpatioTemporal Union Composition Algorithm
4.1 Crowdsourced Service Filtering
To improve the efficiency of the proposed approach, the first step is to reduce the search space of the algorithm. We develop a MBB that encloses a set of services relevant to \(\mathbb {P}\). The services outside this MBB are assumed to have little probability of being involved in the optimal composition plan. The enclosing MBB is represented by the lowerbound \( \left[ x_{min}, y_{min}, t_{min} \right] \) and upperbound \(\left[ x_{max}, y_{max}, t_{max} \right] \), where \(x_{min}\) (resp. \(x_{max}\)) and \(y_{min}\) (resp. \(y_{max}\)) are the lowest (resp. highest) xcoordinate and ycoordinate among all coordinates of all optimal linear plans (Fig. 5). \(t_{min}\) and \(t_{max}\) are the minimum and maximum time value among all time instants of all optimal linear plans. 3D Rtree retrieves the services which are inside the enclosing MBB and have overlap with boundaries. All retrieved services are indexed by a new 3D Rtree (CRT) (2–3 in Algorithm 1).
4.2 Decomposition
The decomposition step divides each linear composition plan into elementary line segment services ls. Each ls is presented by a line segment of length 1 which consists of two consecutive tuples (\(<p_i,t_i>, <p_{i+1},t_{i+1}>\)) (Fig. 1(a)).
4.3 Local Union Composition
Given a line segment service ls, the local union composition step finds a composite service that covers ls. The spatiotemporal union composition problem can be modeled as a directed graph search problem in which each vertex has an associated spacetime attribute of a service and each edge is associated with QoS attributes. If an edge exists, it means that there is a neighbour dependency between vertices. A virtual startpoint vertex (\(ls.p_s\), \(ls.t_s\)) and virtual endpoint vertex (\(ls.p_e\), \(ls.t_e\)) are added to the graph. The virtual vertices are connected to all neighbour services. Note that if no service is within the distance d of startpoint and endpoint, the search distance is increased until a service is found. The coverage and capacity of these neighbour services are set to neutral values of one and zero, respectively. We propose UnionComposition algorithm which is a variation of Dijkstra shortest path finding algorithm that minimizes the search cost function to find the optimal union composition plan from the startpoint to endpoint.
4.4 Global Union Composition
5 Experiments Results
In our experiment, we show the significance of our filtering step in terms of computation time. To the best of our knowledge, there is no usable and relevant real spatiotemporal service test case to evaluate our approach. Therefore, we focus on evaluating the proposed approach using synthetic services. Our evaluation sets a baseline upon which future work will be compared to. We run our experiments on a 3.60 GHZ Intel Xeon processor and 16 GB RAM under Windows 7. In our simulation, services are randomly distributed in a 70 \(\times \) 70 region. The space and time attributes of services are randomly determined within the region range. The \(q_{cov}\) is assigned at runtime based on the distance between the service and the linear plan with respect to \(R_s, R_c\) and k parameters. To obtain a more realistic approach, we use heterogeneous sensors for services by varying the values of these parameters which are set as follows: \(k = 0.5\) and \(R_s \in [4,6]\) and \(R_c \in [1,3]\) are randomly selected. The \(q_{cap} \in [50, 100]\) is also randomly generated. We set the weights as \(W_{cov}=0.5\) and \(W_{cap}=0.5\). The remaining service parameters are also randomly generated using a uniform distribution. All experiments are conducted 100 times and the average results are computed. Each experiment starts from a different source and destination point which are randomly generated. For each experiment we apply a variation of STA* [3] and select top two optimal linear plans. FindtBestPlan algorithm is then executed to find the best plan based on union composition cost.
6 Conclusion
We introduce a new spatiotemporal union composition algorithm to efficiently select the optimal union composition plan considering multiple new QoS criteria. We demonstrate that our algorithm has a satisfying efficiency in terms of optimality. Future work focuses on moving and transient crowdsourced services.
Notes
Acknowledgments
This research was made possible by NPRP 74811088 grant from the Qatar National Research Fund (a member of The Qatar Foundation). The statements made herein are solely the responsibility of the authors.
References
 1.Altınel, İ.K., Aras, N., Güney, E., Ersoy, C.: Binary integer programming formulation and heuristics for differentiated coverage in heterogeneous sensor networks. Comput. Netw. 52(12), 2419–2431 (2008)CrossRefzbMATHGoogle Scholar
 2.Neiat, A.G., Bouguettaya, A., Sellis, T., Dong, H.: Failureproof spatiotemporal composition of sensor cloud services. In: Franch, X., Ghose, A.K., Lewis, G.A., Bhiri, S. (eds.) ICSOC 2014. LNCS, vol. 8831, pp. 368–377. Springer, Heidelberg (2014) CrossRefGoogle Scholar
 3.Neiat, A.G., Bouguettaya, A., Sellis, T., Ye, Z.: Spatiotemporal composition of sensor cloud services. In: 2014 IEEE International Conference on Web Services (ICWS), pp. 241–248. IEEE (2014)Google Scholar
 4.Hossain, M.A.: A survey on sensorcloud: architecture, applications, and approaches. Int. J. Distrib. Sens. Netw. 2013, 1–18 (2013)Google Scholar
 5.Theoderidis, Y., Vazirgiannis, M., Sellis, T.: Spatiotemporal indexing for large multimedia applications. In: Proceedings of the Third IEEE International Conference on Multimedia Computing and Systems, pp. 441–448. IEEE (1996)Google Scholar
 6.Zeng, L., Benatallah, B., Ngu, A.H.H., Dumas, M., Kalagnanam, J., Chang, H.: Qosaware middleware for web services composition. IEEE Trans. Softw. Eng. 30(5), 311–327 (2004)CrossRefGoogle Scholar