Sie sind auf Seite 1von 9

Mobile Networks and Applications

An IoT Service Aggregation Method Based on Dynamic Planning

for QoE Restraints
Bing Jia1,2 · Lifei Hao1 · Chuxuan Zhang1 · Huili Zhao3 · Muhammad Khan4

© Springer Science+Business Media, LLC, part of Springer Nature 2018

With the rapid development of new internet technologies, i.e. Internet of Things (IoT), the amount of IoT services has grown
dramatically. To make people easier and faster to utilize the service resources, it becomes more and more important to
gather the services on the IoT. Most of the current methods can only create automatic or semi-automatic service composition
schemes, and lack support and consideration of real-time data and instant situation information, so they cannot achieve
dynamic adaptive aggregation of services. In this paper, we focus on both the functional and non-functional constrains, and
propose an IoT service aggregation method based on dynamic planning oriented QoE constraint. Firstly, the knowledge
model of relationship among service category concepts are constructed. Secondly, the aggregation problem of service
categories is mapped to a dynamic programming problem based on the relationship between service composition, and a new
semantic similarity computing method is used as the main basis for service selection by using the ontology of IoT service
category. Finally, for the selection of specific service resources, a trend-aware service selection algorithm for the QoE multi-
constrained measurement is proposed. Experimental results show that the proposed method has better performance in terms
of recall and precision.

Keywords Internet of things · Dynamic programming · Service selection · Service aggregation · QoE

1 Introduction the network by assigning network identification. “Union”

not only means achieving the inter operability between
The networking needs of the physical world and the the common physical objects, more importantly, means
expanding needs of the information world have jointly interacting and sharing, which includes the cross-network,
created a new type of Internet, that is, the Internet cross-application and cross-domain service interaction and
of Things (IoT), which interconnects and integrates the sharing [2].
originally separated physical and virtual information world Comparing with the traditional mode of service (such
[1]. The concept of the Internet of Things is embodied as telecommunication service or Internet application), the
in the words “Thing” and “Union”. “Thing” refers to the service under the Internet of Things expands the existing
common object in the physical world which can connect to binary problem domain of “user and information space”
to the ternary problem domain of “user, information space
and physical space” [3]. How to implement the aggregation
 Muhammad Khan dynamically and on-demand among a large number of
heterogeneous, distributed and resource-constrained IoT
Bing Jia services embedded in physical entities based on real- time sensing information, to provide users cross-domain
integrated services timely and appropriately has become a
new challenge.
Inner Mongolia University, Hohhot, China
The services and applications in the IoT are various.
2 Inner Mongolia A.R. Key Laboratory of Wireless Networking We take E-Learning as the background, including E-Edu-
and Mobile Computing, Inner Mongolia University, cation and Online Training, which combine digital teaching
Hohhot, China
contents and network resources. It can guide and transform
3 Nankai University, Tianjin, China traditional education with IoT and service aggregation
4 Sejong University, Seoul, Korea technology. E-Learning enters the campus, not to replace the
Mobile Netw Appl

traditional teaching, but to improve it. The formation of the covers a wider range of aspects, which can directly reflect
system of teaching method is feasible and effective under users’ acceptance of the service, so it is more suitable for the
the environment of information technology practice. evaluation of service quality in complex IoT environments.
IoT contains a large number of data, programs, course- Besides, the QoS system surpasses the QoE system in
ware, teaching video, and other learning resources, these all terms of physical performance , but not the overall optimal
can be seem as services, and it is hard to meet the growing resource allocation strategy, so the QoS system can not
demand of users only by single kind of IoT service. In order achieve the rational allocation of resources.
to address this problem, the ubiquitous IoT service should In this paper, we focus on both the functional and
be combined according to some constraints. i.e. differences non-functional constrains, and propose an IoT service
both in functional and non-functional constraints. The cur- aggregation method based on dynamic planning oriented
rent researches either concentrate on meeting the functional QoE constraint which consists of two stages. Specifically,
requirements, or meeting the non-functional requirements. during the first stage, the service aggregation problem is
Considering the functional requirements, users often mapped to a dynamic programming problem based on
need to describe or select a template as a starting point the relationship between service composition, and a new
for a combination of planning and require technical details semantic similarity computing method is used as the main
of the support, which resulted in the lack of business-level basis for service selection by using the ontology of IoT
modeling support and users poor experience. For example, service category. During the second stage, a trend-aware
the selection and inter-operation of resource-constrained service selection algorithm for the QoE multi-constrained
device services based on DPWS (Device Profile for Web measurement is proposed, to complete the selection of
Services) was discussed in [4]. In [5], a service search specific service resources.
engine which can reflect the state of IoT service providers The contribution of this paper is to composite the IoT
was designed and implemented. In the same time, the services based on a dynamic programming method to
research team compared the implementation technologies dynamically adjust the scheme and improve the real-time
of service search engines such as Snoogle, Microsearch and performance of the scheme under the circumstances of
MAX in [6], and gave a forecast model of IoT service state. environmental change or the change of the user’s functional
In [7], a semantic Web-based IoT service discovery model requirements. In addition, compared with other methods, the
named DiscoWoT was proposed. These methods can only service selection method based on QoE can make resources
create an automatic or semi-automatic service composition more reasonable.
scheme, which lacks support and consideration for real-time The rest of the paper is organized as follows. Section 2
data and real-time situation information. Especially in the describes the proposed method which consists of the
case of user functional requirements or situation changes, it aggregation generated method of the service category and
is difficult to dynamically adjust. the service selection method based on QoE. Section 3
Considering the non-functional requirements, in the reports the experimental results and performance analyses
current researches, Quality of Service (QoS) is widely used in comparison with the existing keyword-based method
as the non-functional metric of IoT service for the service and non-aggregation method based on semantic. Finally,
composition. For example, in [8], a QoS-based dynamic Section 4 concludes our work.
IoT service composition method was proposed, which
described the contextual features of IoT services embedded
in physical entities by adding context QoS Ontology. In 2 The proposed IoT service aggregation
[9], an extended OWL is used to describe service oriented method
to physical objects, and build multi-dimensional user
requirement QoS mode to select constrained services. In For the aggregation of IoT services, we need to get
[10], four kinds of QoS calculation models were proposed, the service category combination according to users’
which can be used to decompose and optimize the complex needs firstly. Secondly, we need to select and optimize
QoS requirements of IoT services, and apply a heuristic the concrete services according to QoE parameters. The
backtracking algorithm by arrange the calculated values paper [12] has given the description of the IoT service
in descending to complete the combination of services. semantics, and the value of service category which is
However, as a evaluation methodology which include the used to characterize the semantic concept of IoT service
network throughput, latency, and so on, QoS only reflects types. Therefore we use semantic technology and dynamic
the performance of the service technology level, or even programming method to complete the generation of service
just the performance of the network transport layer, ignoring category combination strategy according to the needs of the
the user subjective factors and the user’s situation needs. user firstly and then complete the selection of the concrete
Compared with QoS, QoE [11] contains more factors and service which belongs to the corresponding service category
Mobile Netw Appl

and whose QoE parameters are satisfied with the user’s The recursive formula of the basic equations for solving
requirements. the service category composition based on dynamic
programming is:
2.1 Knowledge model  
fk∗ (xk ) = opt ∗
L(xk , uk ) + fk−1 (xk−1 ) ,
The combination of service categories, including four kinds uk ∈Dk (xk )
of relations, such as sequential, parallel, branched and k = n, n − 1, ..., 1 (1)
cyclic, which can be expressed by →, ∪, ≺c , ∝k . The
sequential relation between two services can be expressed In the Eq. 1, k represents the stage, fk∗ (xk ) represents
as: S1 → S2 , the cost is C1 ; the parallel relationship the final decision of each stage, and finally forms a
between two services can be expressed as S1 ∪ S2 , the decision sequence f1∗ (x1 ), f2∗ (x2 ), . . . , fn∗ (xn ). The opt in
cost is C2 ; the branch relationship between two services the equation represents the optimal decision for each stage.
∗ (x
can be expressed as S1 ≺c  S2 , the probability of the i th The boundary condition is @fn+1 n+1 ) = 0. L(xk , uk )
branch been selected is αi , ni=1 αi = 1, and the cost is is the evaluation function which means that it will take a
C3 ; if the relationship is cyclic between S1 and S2 , it can cost from the xk+1 state to the xk state by the decision
be expressed as S1 ∝k , the cyclic number is K, and the uk . All the possible decisions are represented as set Dk (xk )
cost is C4 . Based on the above relationship, we can build a and the algorithm starts from the boundary condition k =
knowledge model, as shown in Fig. 1, S represents Service, n and stops when k = 1 by a reverse direction. The
in which S1 , S2 and S3 are the branched relationship, S7 and decision uk certainly is an IoT service category of Dk in
S8 are parallel relationship, S4 and S5 are cyclic relationship the given knowledge model. The optimal decisions and
respectively, and the others are sequential relationship. For the optimal value of the process will be obtained by each
a service request “Query”, we can find multiple service stage only if the final f1∗ (x1) exists. The sequence of all
combination policy paths which can be satisfied with the the optimal decisions is also the optimal solution of the
“Qurey” according to the knowledge model. problem. Otherwise, the algorithm will fail [13] if some
As can be seen from Fig. 1, for a Query, there are certain service categories cannot be found in Dk .
six paths in the knowledge model and we can choose to
calculate the cost of each path respectively. For example, 2.3 An improved calculation method for semantic
if the path is Query → S1 → S4 → S6 , the cost is similarity
c3 + c4 + c1 ; if the path is Query → S3 → S5 → S7 → S9 ,
the cost is c3 + c4 + c2 + c1 . There are two main kinds of methods for conceptual
similarity calculation, one is based on text editing, and
2.2 The combination process of the service category one is based on semantic dictionary. Text editing method
based on dynamic programming can not distinguish the concept of “synonymy and different
form”, while semantic @dictionary gives the synonymy
Based on the knowledge model, the problem of service relation, the hypernymy and hyponymy between concepts.
aggregation is mapped to a dynamic programming problem. Therefore, this paper chooses a calculation method based on

Fig. 1 Knowledge model

Mobile Netw Appl

semantic. Firstly, an ontology tree about the concepts which Dep(T1 ) = Dep(T2 ) = Dep(LCA(T1 , T2 )), and “α” can
are expressed as ta , tb , . . . , tq has been shown in Fig. 2. be used to represent the depth. Then the semantic similarity
In the tree, there is only one path between any two Sim(T1 , T2 ) = (0+α)×1α
× d+d
= 1. This shows that
nodes, so the length of this path can be used as a basic when the vocabulary distance is “0”, the similarity value
measure of the semantic distance between the two concepts. between T1 and T2 is the maximum value “1”. In another
Suppose there are two concepts T1 and T2 who are both words, these two concepts are overlapping, which means
in the semantic dictionary tree. The semantic similarity that they are consistent, so that T1 and T2 have a maximum
can be calculated by the length of the path between T1 similarity.
and T2 . However, only considering the influence of path
2) When the distance between T1 and T2 is infinite, the
length, we often cannot measure the similarity between the
concept similarity between T1 and T2 approaches “0”.
two concepts well. For example, if the nearest common
ancestor of the two concepts is closer to the root node, the When Dis(T1 , T2 ) is “∞”, (Dis(T1 , T2 ) + α) also is
smaller the similarity between the two concepts should be. “∞”, and Max(| Dep(T1 ) − Dep(T2 ) |, 1) definitely ≥ 1.
Therefore, this paper proposes a method for calculating the So (Dis(T1 ,T2 )+α)×Max(|Dep(T1 )−Dep(T2 )|, 1)
must be trending
semantic similarity between the two concepts that combines to “0”, that is to say Sim(T1 , T2 ) is approximately “0”.
the distance between the two concepts nodes and the depth This shows that the distance between the concept T1 and T2
of the nearest common ancestor. The similarity between T1 is “∞” the similarity value between T1 and T2 is to “0”,
and T2 is recorded as Sim(T1 , T2 ). which is consistent with the actual. Because the distance
between two concepts is “∞”, indicating that there is no
Sim(T1 , T2 )
α semantic association between the two concepts, that is to say
= the two concepts are fundamentally completely inconsistent
(Dis(T1 , T2 ) + α) × Max(|Dep(T1 ) − Dep(T2 )|, 1)
semantics. Then the similarity of T1 and T2 should be the
2 × Dep(LCA(T1 , T2 ))
× (2) minimum value and close to “0”.
(Dep(T1 ) + Dep(T2 ))
3) When the nearest common ancestor of T1 and T2 is the
Where Dis(T1 , T2 ) is the distance between T1 and T2 .
root node, the similarity between T1 and T2 is “0”.
LCA (T1 , T2 ) is the nearest common ancestor of T1 and
T2. Dep(·) is the depth of the concept, α is an adjustment When the nearest common ancestor of T1 and T2 is
parameter, generally greater than 0. The depth of the root the root node, indicating that the two nodes belong to the
node is zero. In this formula, the larger the distance of two larger subclasses, the semantic similarity of T1 and T2
concepts is, the lower the similarity is. If the common should be “0”. The method of calculating the similarity
ancestor is closer to the root, the lower the similarity is. The only according to the path distance of the two concepts
analysis of the formula can be shown as follows. is not “0” unless the path length of both is “∞”. But the
proposed method can adapt to this situation. For example,
1) When the distance of T1 and T2 is “0”, the similarity
the nearest common ancestor of tj and tp is the root node,
between T1 and T2 is the maximum value “1”.
then Dep(LCA(tj , tp ) = 0 and Sim(tj , tp ) = 0. This paper
When Dis(T1 , T2 ) is “0”, the depth of T1 , T2 and shows that the algorithm in this paper is more realistic than
their nearest common ancestor are all equal, that is the original one.

Fig. 2 Vocabulary concept tree

Mobile Netw Appl

4) When two groups of concepts are in the same were Qmax

j represents the maximum metric value for the
distance, the similarity should increase with the j QoE prameter and Qmin
th represents the minimum metric
increasing of their hierarchy and decrease with the value for the j th QoE prameter, and 1 ≤ i ≤ m + 1, 1 ≤
decreasing of hierarchy. j ≤ n; where Qij represents the metric value of the ith
If ta is “art”, te and tf can be “music” and “art” service for the jth QoE parameter; ε is a tiny real number
respectively, tj and tl can be “classical music” and “modern which is trending to zero.
music”. In this situation, Dis(te , tf ) = Dis(tj , tl ) = 2.
If we calculate the similarity between two concepts in 2) Interval type
each group according to the original algorithm that only
considers the length of the path, the obtained results are The upper and lower bounds of the interval type are
equal. This is because it can not distinguish the different standardized as follow.
depths of them and cause the similarity to change. Actually, ⎧
⎨ LQij −LQj
the similarity between tj and tl is larger than the similarity if LQmax − LQmin >ε
LPij = LQ max −LQmin
j j
j j
between te and tf , that’s because “classical music” and ⎩1 if LQmax − LQmin ≤ε
“modern music” are both music with different melody, but j j

“music” and “art” are in different style. Therefore, using the (4)
proposed Eq. 2, Sim(tj , tl ) = (2+α)×1
× 2×2
3+3 = 3(2+α) ,

Sim(te , tf ) = (2+α)×1
× 2×1
2+2 = 2(2+α) . So, Sim(tj , tl ) >
⎨ U Qij −U Qmin
if U Qmax − U Qmin >ε
Sim(te , tf ), the calculation result is more reasonable. U Pij = U Qmax
j −U Qmin
j j
⎩1 if U Qmax − U Qmin ≤ε
From the above analysis, the proposed formula to j j
calculate the similarity of the two concepts is more (5)
accurate and realistic than the original algorithm which only
considers the path length in calculating the similarity. 2.4.2 QoE calculation of metrics

2.4 Service selection method for multi-constrained According to the different trends of QoE measurement
QoE value (positive type and negative type) different calculation
methods are given.
After the service composition based on the user’s needs, we
will select and optimize the concrete services according to 1) Positive type: The larger the value of the QoE
QoE multi-constrained. QoE do not consider the semantic parameter is, the better is.
matching, but consider the measurement matching. Differ- SimP T (Qij , Q(m+1)j ) = Pij (6)
ent type of QoE (i.e. single value and interval value) need
to be calculated respectively after unifying the units of 2) Negative type: The smaller the value of the QoE
measure. parameter is, the better is.

2.4.1 Standardization SimNT (Qij , Q(m+1)j ) = 1 − Pij (7)

1) Single value type 2.4.3 The calculation oriented QoE matching

The value described in numerical value can be calculated According to the weight of each QoE parameter use the
directly. However, if it is described in the text, we need to following Eq. 8 to compute the QoE matching degree
change the text description into the numerical value. For M(Si )between the ith service and the request.
example, if the description of a QoE parameter is [grade 
one, grade two, grade three, grade four, grade five], it can M(Si ) = (Nij · Wj )/n (8)
be expressed in [1, 2, 3, 4, 5]. For the QoE parameter which
cannot be enumerated, it can be changed into the numerical where n is the total number of the parameters for QoE
value by the defuzzification. The standardized treatment is metric; Nij represents the matching degree for the j th
as follow. service and the request based on Eqs. 6 and 7; W is a weight
coefficient vector and Wj is the weight coefficient of the j th
⎧ parameter; sum(·) is a sum function. For example, the best
⎨ Qij −Qmin matching service should have a larger matching degree with
if Qmax − Qmin >ε
Pij = Qmax
j −Qmin
j j (3) the service request based on the service category, also have
⎩1 if Qmax − Qmin ≤ε
j j a shorter execution time, a lower cost and a better reliability.
Mobile Netw Appl

3 Experimental results and analysis According to ontology concept, the dynamic program-
ming knowledge model based on the relationship is shown
In this section, we conduct experiments to evaluate the per- in Fig. 4.
formance of the proposed IoT Service aggregation method In Fig. 4, we only consider the relationship between 15
based on dynamic planning oriented QoE constraint(AM- service categories. S1 , S2 , ..., Sn represents different service
DP) and make a comparison with the aggregation method categories in the Ontology model. Three possible service
based on keyword(AM-K)and non-aggregation method concept chains have been circled by different colors.For
based on semantic(NAM-S). example, S7 (f ilm) → S3 (player) → S8 (media) →
S2 (camera) is one aggregation chain in the Knowledge
3.1 Set up model.
After the semantic extension is complete for each
The open data set of IoT services has not yet formed, service request, we implement the proposed method and the
so we use the open data set OWL-S 1.1 of Web services comparison methods in Java program, and use the expert
provided by the DFKI laboratory in Germany as the basic evaluation method to access the matching results. Generally,
experimental data set, which has over 1000 semantic web the average recall rate and the average precision rate can be
service profiles and 29 service queries. Firstly, 970 service calculated as Eqs. 9 and 10 respectively.
profiles can be parsed correctly are picked up as the service
data set, and conduct an ontology model of service category n
i=0 Recalli
according to the service description, which is shown in AverageRecall = (9)
Fig. 3. Furthermore, we add three QoE parameters(one is n
positive trend, the other two are negative trends) and their
corresponding values randomly into the service profiles. Where i is the ith service request and n is the total
Finally, considering the service queries, we also add the number of service requests. Recalli is the recall rate of
service category concept and the three QoE parameters with the ith service discovery request, which is the ratio of the
their random values in the query profiles. number of services associated with the users demand and

Fig. 3 Ontology model of service category

Mobile Netw Appl

Fig. 4 Knowledge model for


the number of services that are actually related to the users 3.2 Results analysis
needs in the service library.
The “Average Precision” rate and the “Average Recall” rate
i=0 P recisioni
can be calculated as Eqs. 11 and 12 respectively in the
AverageP recision = (10) experiments.
Average P recision = T P /(T P + F P ) (11)
Where i is the ith service request and n is the total
number of service requests. P recisioni is the precision rate
of the ith service discovery request, which is the ratio of the Average Recall = T P /(T P + F N) (12)
number of services associated with the users demand and In the above two formulas, TP represents the correct
the total number of returned services. retrieval result, and it is determined to be true; FP indicates
Finally, the kth concrete service of the selected services the wrong retrieval results, and it is wrongly judged to be
are picked up as their result sets for each method. true; FN represents the correct retrieval results, and it is

Fig. 5 Comparison of average precision Fig. 6 Comparison of average recall

Mobile Netw Appl

Fig. 7 Comparison of F1 score

judged to be false. Equation 11 represents the precision, all non-functional constraints under the corresponding service
the samples we consider are true in the retrieval results, but categories according to the QoE requirements of users.
there is some correct judgments and some wrong judgments; The experimental results show that the method has good
Eq. 12 indicates the recall rate. performance in both the recall and precision.
In the retrieval result, we judge that the correct retrieval
results are positive, and those which are judged false in Acknowledgements This work is supported by the National Natural
the retrieval results are the same true in fact. Recall and Science Foundation of China under Grants 41761086, 61461037,
precision ratio can be used to evaluate the performance of 61761035 and 61661041, the National Science and Technology Major
Project of the Ministry of Science and Technology of China under
our algorithm. We use the F1 score and take account of both Grant No.2016YFB0502102, the Natural Science Foundation of Inner
accuracy and recall. Mongolia Autonomous Region of China under Grant 2017JQ09, and
the “Grassland Elite” Project of the Inner Mongolia Autonomous
(Average P recision) · (Average Recall)
F1 = 2 · (13) Region under Grant CYYC5016.
(Average P recision) + (Average Recall)
F1 score is a weighted average of accuracy and recall.
Here, we suppose the recall and accuracy are equal to the References
same weight. The maximum is 1 and the minimum is 0.
The Average Precision, Average Recall and F1 Score of 1. Chavesdiguez D, Pelliterorivero A, Garcacoego D et al (2015)
the proposed AM-DP method, AM-K method and NAM- Providing IoT services in smart cities through dynamic augmented
S method with respect to k are shown in Figs. 5, 6 and 7 reality markers[J]. Sensors 15(7):16083–16104
2. Chen HM, Cui L, Xie KB (2013) A comparative study on
respectively. It can be seen that the proposed method has a architectures and implementation methodologies of internet of
higher performance than the other two methods. things. Chin J Comput 36(1):168–188
3. Qiao XQ, Sun YL, Zhang Y (2013) System for providing services
of event-driven service-oriented internet of things and working
method thereof CN 103458033 A
4 Conclusion 4. Bohn H, Bobek A, Golatowski F (2006) SIRENA - Service
Infrastructure for Real-time Embedded Networked Devices:
In this paper, in order to break the existing “silo” ser- A service oriented framework for different domains[C]. In:
vice mode in the IoT, realize the cross-domain sharing, International Conference on mobile communications and learning
technologies, conference on networking, conference on systems.
integration and interoperability of service, we propose an IEEE Computer Society, pp 43–43
IoT service aggregation method oriented QoE constrained 5. Ostermaier B, RöMer K, Mattern F et al (2010) A real-time search
based on dynamic planning. Firstly, we use semantic tech- engine for the Web of Things[C]. Internet of Things (IOT) IEEE
nology and dynamic programming method to complete 2010:1–8
6. Romer K, Ostermaier B, Mattern F et al (2010) Real-time search
the service class combination strategy generation according for real-world entities: a survey[J]. Proc IEEE 98(11):1887–1902
to users’ functional requirements. Additionally, we com- 7. Mayer S, Guinard D (2011) An extensible discovery service for
plete the specific service selection to satisfy QoE multi smart things[J]. Int Workshop Web Things Ser Wot, 1–6
Mobile Netw Appl

8. Li LY, Liu N, Li GY (2016) A dynamic service composition 11. Li CL, Liao D, Xiong L, Huang YJ (2015) A service selection
method based on QoS in the semantic internet of things. Appl Res algorithm based on QoE quantization evaluation. Acta Electronica
Comput 33(3):802–805 Sinica 43(11):2145–2150
9. Zhang T, Zhang X, Liu ZD (2013) A service portfolio approach 12. Jia B, Liu S, Yang Y (2014) Fractal cross-layer service with
driven by the internet of things needs. Appl Res Comput integration and interaction in internet of things. Int J Distrib
30(6):1756–1759 Sensor Netw 2014(1):1–11
10. Zhou M, Yan MA (2013) QoS-aware computational method for 13. Li CM, Gong XB (2016) Study on the optimal service radius
IoT composite service[J]. J China Univ Posts Telecommun 20: of rain water pump station based on dynamic programming. J
35–39 Shenzhen Univ Sci Eng 33(4):388–393