Skip to main content

Network selection algorithm for heterogeneous wireless networks based on service characteristics and user preferences

Abstract

Next generation heterogeneous wireless networks (HWNs) will integrate various wireless access technologies, such as cellular networks, wireless local area network (WLAN), and Worldwide Interoperability for Microwave Access (WiMAX), in order to support quality of service (QoS) requirements of various services. To connect mobile users to the best wireless network continuously, network selection has become a hotspot for research in HWNs. This paper designs a network selection algorithm based on service characteristics and user preferences. First, utility functions are used to calculate the utility value of each network attribute for different services. Next, the entropy method and the fuzzy-analytic hierarchy process (FAHP) are used to calculate the objective weight and subjective weight of network attributes respectively, with FAHP specifically being used to calculate the user preference values of services for candidate networks. Finally, simple additive weighting (SAW), multiplicative exponent weighting (MEW), and Technique for Order Preference by Similarity to Ideal Solution (TOPSIS) are used according to network attribute utility values and weights to calculate the score of each candidate network. These scores are converted into a comprehensive score for the candidate network based on such user preferences, thus obtaining the ranking of candidate networks. Simulation results show that the proposed algorithm can allow users to choose the most suitable network to access according to different service characteristics while reducing the number of network handovers.

1 Introduction

In recent years, various radio access technologies have rapidly developed. Cellular networks have evolved from the Global System for Mobile Communications (GSM) to the Universal Mobile Telecommunications System (UMTS) and then to Long Term Evolution (LTE), providing a wide range of wireless signal coverage [1]. Meanwhile, a series of wireless local area network (WLAN) standards (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11n, IEEE 802.11ac, etc.) provide users with high-speed data transmission services.

Within the signal coverage of cellular networks, a variety of other wireless access networks are deployed, forming heterogeneous wireless networks (HWNs) in which multiple networks coexist with overlapping signal coverage [2]. Due to the diversity of user services and the differences in the transmission quality of wireless networks, it is necessary to rely on network selection algorithms to ensure that users access the appropriate networks for service transmission and to provide users with the most appropriate connection services. Therefore, network selection has become a hotspot in research for HWNs [3, 4].

In an environment with a single wireless network, the decision parameters of network selection are largely related to the quality of wireless links (namely, received signal strength (RSS) or the signal to interference plus noise ratio (SINR)) [5], and there is usually only one decision parameter for network selection. Its goal is to better maintain the physical connection of wireless channels. In an environment with HWNs, users can choose to access different networks with their different service types and user preferences. Therefore, network selection should not be based on a certain decision parameter, but should comprehensively consider multiple network attributes (such as RSS, bandwidth, network load, delay, delay jitter, packet loss ratio, moving speed, service price, and energy consumption) in order to allow users to access the most suitable network [6].

In HWNs, network selection is usually modeled as a multi-attribute decision-making (MADM) problem because multiple network attributes should be considered comprehensively [7, 8]. MADM first collects data for each parameter, then normalizes the data, and calculates all attributes based on the weight of each attribute. Finally, the candidate networks are ranked. The MADM algorithm includes many branches, such as simple additive weighting (SAW), multiplicative exponent weighting (MEW), Grey relational analysis (GRA), Technique for Order Preference by Similarity to Ideal Solution (TOPSIS), analytic hierarchy process (AHP), ELimination Et Choix Traduisant la REalite (“Elimination and Choice Expressing the Reality” or simply ELECTRE), VlseKriterijumska Optimizacija I Kompromisno Resenje (“Multi-Criteria Optimization and Compromise Solution” or simply VIKOR), and others.

Some literature adopts the utility theory to study network selection [9]. Utility is originally defined as the degree of satisfaction that a consumer obtains from a commodity after it is consumed and is commonly used in economics. In network selection, different services have different satisfaction levels for the same network attribute value due to the diversity of user services. Therefore, a utility function can be used to quantify user satisfaction with network attributes. The main idea of an access selection algorithm based on the utility function is to design the utility function to convert each network attribute to a utility value, calculate the comprehensive utility value for each candidate network, rank these values, and finally access the network with the highest value.

In addition, some literature uses intelligent algorithms to study network selection, such as game theory [10,11,12], Markov decision processes [13,14,15], and artificial neural networks [16, 17]. These intelligent algorithms have high fairness and accuracy in network access selection and can accurately select a suitable network among multiple candidate networks. However, this kind of algorithms is a gradual optimization process. Iteration must be executed several times to gradually obtain the optimal result. Usually, insufficient number of iterations may not produce the desired result. In addition, this kind of algorithms may fall into a situation that it is possible to obtain local optimum in the calculation process, and the later convergence speed becomes slow, resulting in higher complexity of the algorithm and more calculation time. Finally, this kind of algorithms can only obtain one network selection result for one user in one cycle, and the network selection efficiency is low, thus limiting the application of this kind of algorithms in the real environment [18].

Different from the above intelligent algorithms, MADM and the utility function can choose the best target network without iteration in the calculation process of network selection. This method is simple and efficient, with low computational complexity, short computation time, and a good quality of experience (QoE) for users [19]. Thus, a network access selection algorithm that is based on MADM and utility function still provides great application value.

In this paper, we integrate the utility theory, the entropy method, the fuzzy-analytic hierarchy process (FAHP), the SAW, the MEW, and the TOPSIS to design the network selection algorithm (Fig. 1). In the process of algorithm design, we also consider the characteristics of different types of services, the objective and subjective weights of network attributes, the scores of network attributes, and the scores of user preferences. At present, although some other papers have integrated various methods to design network selection algorithms, to our best knowledge, none of the network selection algorithms designed by other papers has integrated these methods at the same time as in this paper, and other papers have either not taken into account the characteristics of services, or have not taken into account the subjective weights of network attributes, or have not taken into account the subjective preferences of users, etc. Therefore, the algorithm proposed in this paper gives a more comprehensive scheme for users to select the most suitable network, which is the main contribution and feature of this paper.

Fig. 1
figure 1

Flow chart of the proposed network selection algorithm

The rest of this paper is organized as follows: Section 2 reviews the related work on combination of multiple methods for network selection. Section 3 provides a detailed description of the scenario and the algorithm. The detailed calculation steps are also introduced. In addition, Section 4 configures simulation environment parameters and discusses the experimental results. Furthermore, Section 5 summarizes the article and introduces further research.

2 Related works

Every mathematical model (that is, MADM, utility theory, fuzzy logic, and game theory) has some advantages and disadvantages in network selection [20]. As this paper integrates various methods for network selection, we mainly analyze relevant literature that integrates various methods for the same.

In [21], Lahby et al. combine the enhanced TOPSIS method and the utility function for network selection. Firstly, the authors quantify the performance for each radio access network through enhanced TOPSIS method. Then, they use utility function to measure the degree of satisfaction when the mobile terminal moves out of range of the wireless access point. The policy of this literature can reduce the ping-pong effect and the number of handoff failures.

In [22], Goyal et al. propose a FAHP-based network selection method and use triangular fuzzy numbers to represent the importance of the elements in the comparison matrices for voice, video, and best effort applications. The authors also present a non-linear fuzzy optimization model for deriving crisp weights from fuzzy comparison matrices. In addition, the authors use utility functions to model the different network attributes (i.e., bandwidth, delay, jitter, bit error rate, and cost) for three different types of applications. Finally, the authors calculate the scores of each network by SAW, TOPSIS, and MEW. The weights obtained from this literature are more consistent than the existing models; however, this literature does not consider the preferences of different applications.

In [23], Wu and Du propose a network selection scheme based on utility function. The authors jointly take users’ QoS demands, preferences, channel state information, costs, and network loads into account. This scheme can use the radio resource efficiently to support diverse services, balance the load across different networks, and improve the system throughput.

In [24], Ahuja et al. present a network selection algorithm in heterogeneous environment consisting of four networks (i.e., UMTS, WLAN, GPRS, and WiMAX) and consider different parameters including delay, bandwidth, packet loss, and cost. The authors compute the weight of the network attributes through entropy method and adjust the weight coefficients depending on the demand of services; finally, the authors rank the candidate network by TOPSIS. This literature considers the different requirements of the three applications of voice, video, and data, but does not consider the different preferences of various applications for network attributes.

In [25], Senouci et al. propose a network selection strategy based on utility function and TOPSIS. The authors consider the problem of ranking abnormality generated by TOPSIS when a low-ranking network is disconnected and the order of higher ranking networks changes. The authors also consider application needs to enhance the ranking quality.

In [26], Song et al. propose a network selection algorithm based on three multi-attribute decision-making methods (i.e., fuzzy-analytic hierarchy process, standard deviation method, and Grey relational analysis method). The authors use FAHP and standard deviation method to calculate the subjective and objective weights separately and use GRA to rank the candidate networks.

As compared with the above works, the algorithm proposed in this article integrates the utility theory, the FAHP, the entropy method, and the MADM; obtains the utility values of various network attributes for different applications through utility functions; calculates the subjective and objective weights of network attributes by using the FAHP and the entropy method, respectively; calculates user preferences of different applications for each candidate network using the FAHP; and finally ranks networks with MADM.

3 System model

In the scenario with HWNs presented herein, there are four candidate networks (namely UMTS, LTE, WLAN, and WiMAX), and the signal coverage of these wireless networks overlaps. In addition, there are several mobile users in the scenario, and these users move in random directions within the signal coverage. These users are also treated as multi-mode mobile terminals with the ability to process all wireless access technologies and to access any wireless network (Fig. 2).

Fig. 2
figure 2

Scenario with HWNs for network selection

The process of network selection for a user is divided into three stages: network discovery, network selection decision-making, and access execution [27]. It is assumed that users can detect and collect the attribute data of each wireless access network within the signal range of the HWNs. It is also assumed that they can rank candidate networks according to the data and in conjunction with the network selection algorithm and ultimately complete the network connection according to the corresponding wireless network protocol. Here, it is assumed that there are five network attributes collected by users (namely, available bandwidth (b), delay (d), delay jitter (j), packet loss ratio (l), and service price (p)).

As different user applications have different sensitivities to the same network attribute (for example, real-time voice applications need the lowest bandwidth guarantee, video applications can adjust the resolution based on the bandwidth, and data applications expect larger bandwidth), this paper therefore divides user applications into three categories based on the service characteristics: inelastic, partially elastic, and perfectly elastic, which will be represented by voice applications, video applications, and data applications, respectively. In addition, this paper assumes that an end user can only run any one of these three applications.

3.1 Using utility functions to calculate utility values of network attributes for different applications

Unlike the original definition of utility, network selection in HWNs defines utility as the degree of satisfaction of users or applications, with the services provided by the network. Different applications have different degrees of satisfaction with the same network attribute value due to the diversity of user services, so the degree of user satisfaction with network attributes can be quantified by calculating utility values using utility functions [28]. The value of utility function is a relative index value. Generally speaking, the utility value for a user’s most satisfied attribute value is equal to 1, while the utility value for the least satisfied attribute value is equal to 0 [29]. For beneficial criteria (e.g., bandwidth), the larger the parameter value, the higher the degree of satisfaction; therefore, the utility value is u(x). For non-beneficial criteria (e.g., delay, jitter, packet loss ratio, price, and energy consumption), the larger the parameter value, the lower the degree of satisfaction; therefore, the utility value is 1 − u(x).

For utility functions in the network selection algorithms, Wang and Kuo [9] explain in detail the principle of network selection using utility functions, the definitions, and the curve shapes of various utility functions. Ahmed et al. [30] summarize the meaning, advantages, and disadvantages of using utility function to design the network selection algorithm. Salih et al. [18] mention that different services have different requirements and levels of satisfaction with network parameters, so different utility functions are designed for services of different flexibility. Goyal et al. [22] use different utility functions such as sigmoid function, linear function, and exponential function and different parameter settings for each network attribute. Trestian et al. [31] define the utility function of price as a linear piecewise function according to the user’s sensitivity to price.

On the basis of the above references, the utility functions adopted in this paper are sigmoid function, exponential function, logarithmic function, linear function, and linear piecewise function, specific definitions of which are shown in Formulas (1)–(5), respectively.

Sigmoid function:

$$ u(x)=\frac{{\left(x/a\right)}^b}{1+{\left(x/a\right)}^b} $$
(1)

Exponential function:

$$ u(x)=\frac{e^{cx}-1}{e^{cx}} $$
(2)

Logarithm function:

$$ u(x)=d+\mathrm{eln}\left(x+f\right) $$
(3)

Linear function:

$$ u(x)= gx+h $$
(4)

Linear piecewise function:

$$ u(x)=\left\{\begin{array}{cc}1&, x<i\\ {}\frac{j-x}{j-i}&, i\le x<j\\ {}0&, \mathrm{otherwise}\end{array}\right. $$
(5)
  1. a)

    Utility function for bandwidth

As inelastic services (i.e., voice applications) constrain the lowest value of bandwidth, Rakocevic et al. [32] define the bandwidth utility function of such applications as a step function. As shown below (Fig. 3), there are only two function values (i.e., 1 or 0), which indicate whether the bandwidth obtained by an application exceeds or falls below the threshold (either satisfied or unsatisfied).

Fig. 3
figure 3

Step function

Although the inelastic service is very sensitive to the changes of some parameters, in an environment with HWNs, the values of parameters will change to some extent due to factors such as the volatility and interference of wireless channels. In addition, the use of some technologies (e.g. buffering technology) may also reduce the impact of these parameter value changes on the application. The use of a step function will often lead users to select the wrong network due to the changes of parameter values. Therefore, this paper uses sigmoid functions to represent the effectiveness of bandwidth on voice applications and tune the steepness of the function through the parameter b with the threshold tuned by the parameter a.

Some elastic services (i.e., video applications) can adjust themselves based on the bandwidth provided by the network. In addition, their requirements for bandwidth are wider than those of voice applications, and they can run within a larger bandwidth range. Therefore, the definition of bandwidth utility function for video applications given herein is the same as that of voice applications (i.e., sigmoid functions), but a different parameter value is set for the utility function. In this paper, we assume that the bandwidth requirement of voice application is 1000 Kbps and that of video application is 2500 Kbps.

Fully elastic services (i.e., data applications) do not require a strict minimum bandwidth guarantee, and the utility value increases with the bandwidth. Therefore, this paper uses exponential functions to represent the utility value of bandwidth to data applications (Table 1 and Fig. 4).

  1. b)

    Utility function for delay

Table 1 Utility function for bandwidth and parameter settings
Fig. 4
figure 4

Bandwidth utility function curve for voice, video, and data applications

Video applications and voice applications are both real-time traffic services, and the difference between them is that voice applications have more stringent delay requirements. Voice applications usually require the transmission delay to be limited to a certain range; otherwise, too high a delay may hinder voice understanding. The requirements of video applications for transmission delay are lower than those of voice applications. They only need to ensure that users can see continuous videos in the correct sequence. They do not require precise time synchronization between the client and the server. Therefore, video applications allow that transmission delays vary within a wide range. In this paper, we assume that the delay requirement of voice application is 50 ms and the delay requirement of video application is 100 ms, and that data application is least sensitive to transmission delay, and the satisfaction gradually decreases with the increasing time of delay (Table 2 and Fig. 5).

  1. c)

    Utility function for delay jitter

Table 2 Utility function for delay and parameter settings
Fig. 5
figure 5

Delay utility function curve for voice, video, and data applications

Delay jitter refers to the difference between end-to-end delays of two consecutive data packets. At present, video applications mainly adopt streaming transmission, with stream media transmitted to users continuously and in real time through a video server. As a result, users do not have to wait until the entire file is downloaded before watching a video. After waiting for just a few seconds or a dozen seconds, they can watch it. In the process of transmission, however, delay jitter may be caused by characteristics of the IP network and the performance of processing equipment. In serious cases, this phenomenon will affect the quality of streaming transmission, causing pixelated pictures, discoloration, repeated buffering, and other phenomena, which will reduce user satisfaction. In addition, as data applications allow the receiver to reorder data packets arriving at different times, data applications are not sensitive to delay jitter. Therefore, in this paper, we define the jitter utility functions of voice applications and video applications as logarithm functions, and jitter utility functions of data applications as linear functions (Table 3 and Fig. 6).

  1. d)

    Utility function for packet loss ratio

Table 3 Utility function for delay jitter and parameter settings
Fig. 6
figure 6

Delay jitter utility function curve for voice, video, and data applications

The packet loss ratio refers to the ratio of the number of lost packets to the number of transmitted packets. Although voice, video, and data applications can be tolerant with packet loss ratio to a certain extent, with the increase of the packet loss ratio, the degree of satisfaction with these three kinds of applications will decline. This paper defines the utility function for packet loss ratio of these three kinds of applications as a linear function and assumes that these applications have the lowest satisfaction when the packet loss ratio exceeds 30% (Table 4 and Fig. 7).

  1. e)

    Utility function for price

Table 4 Utility function for packet loss ratio and parameter settings
Fig. 7
figure 7

Packet loss ratio utility function curve for voice, video, and data applications

In this paper, the linear piecewise function is used to represent the utility function for price, and the parameter i of the function indicates the minimum service price that users are willing to pay. If i = 0, this indicates that users want to obtain free services. The parameter j of the function indicates the maximum service price that users can pay. If p > j, this indicates that the price of this network exceeds the users’ ability to pay, and users are unwilling to access this network. In this paper, we assume that the minimum prices for voice application, video application, and data application are 10, 15, and 20, respectively, and the maximum prices that can be paid are 70, 80, and 90, respectively (Table 5 and Fig. 8).

Table 5 Utility function for price and parameter settings
Fig. 8
figure 8

Price utility function curve for voice, video, and data applications

3.2 Using the entropy method to calculate the objective weights of network attributes

In the information theory, entropy is a measure of uncertainty. The larger the amount of information, the smaller the uncertainty and the smaller the entropy. The smaller the amount of information, the greater the uncertainty and the greater the entropy. Based on the characteristics of entropy, we can judge the randomness and the degree of disorder of an event by calculating the entropy value. In addition, we can judge the dispersion degree of an attribute by using the entropy value. The greater the dispersion of an attribute, the greater the influence of the attribute on the comprehensive evaluation. Therefore, according to the variation degree of each attribute, the weight of each attribute can be calculated by using the information entropy, providing the basis for comprehensive evaluation of multiple attributes. Based on References [33, 34], the steps of calculating the objective weight of network attributes using the entropy method are as follows:

  • Step 1: Based on the type of the user’s application and the utility function of its network attributes, obtain the utility values and construct these values into a normalized matrix R = (uij)m × n, where m is the number of candidate networks and n is the total number of network attributes. In this paper, m = 4 and n = 5.

$$ R=\left[\begin{array}{ccccc}{u}_{11}& \cdots & {u}_{1j}& \cdots & {u}_{1n}\\ {}\vdots & \ddots & \vdots & \ddots & \vdots \\ {}{u}_{i1}& \cdots & {u}_{ij}& \cdots & {u}_{in}\\ {}\vdots & \ddots & \vdots & \ddots & \vdots \\ {}{u}_{m1}& \cdots & {u}_{mj}& \cdots & {u}_{mn}\end{array}\right] $$
(6)
  • Step 2: Calculate the information entropy of each network attribute using Formula (7).

$$ {E}_j=-K\sum \limits_{i=1}^m{u}_{ij}\ln \left({u}_{ij}\right),\left(1\le i\le m,1\le j\le n\right) $$
(7)

In the above formula, \( K=\frac{1}{\ln (m)} \) .

  • Step 3: Calculate the objective weight of each network attribute using Formula (8).

$$ {w}_j^{ob}=\frac{1-{E}_j}{\sum \limits_{j=1}^n\left(1-{E}_j\right)},\left(1\le j\le n\right) $$
(8)

3.3 Using the FAHP to calculate the subjective weights of network attributes

The FAHP is an improved version of the AHP. Its principle is basically the same as that of AHP with the difference being that AHP establishes pairwise comparison matrices of elements, and the consistency of the matrices must be judged after establishing the matrix, while the FAHP establishes consistent pairwise comparison matrices whose consistency is ensured when establishing the matrix [35]. In this paper, a fuzzy-analytic hierarchy process that is based on a fuzzy consistent matrix is used to calculate the subjective weights of network attributes. The main steps are as follows:

  • Step 1: Analyze the relationship between factors in access selection for HWNs and divide the analysis object into a target layer, criterion layer, and scheme layer, among which the target layer is the best access network, the criterion layer comprises network attributes (i.e., bandwidth, delay, jitter, packet loss ratio, and price), and the scheme layer is composed of candidate networks (i.e., UMTS, LTE, WLAN, and WiMAX) (Fig. 9).

  • Step 2: According to different applications (i.e., voice application, video application, and data application), the importance of each attribute of the criterion layer on the previous level (i.e., the target layer) is compared by two pairs. By comparing the element xi and the element xj, obtain the level of importance rij (Table 6). Then, construct the fuzzy consistent matrix based on rij (Tables 7, 8, and 9). At the same time, check the consistency of the matrix according to Formula (9).

Fig. 9
figure 9

FAHP hierarchy

Table 6 Interpretation for importance level
Table 7 Fuzzy consistent matrix and weights for voice application
Table 8 Fuzzy consistent matrix and weights for video application
Table 9 Fuzzy consistent matrix and weights for data application
$$ \left\{\begin{array}{c}0\le {r}_{ij}\le 1\\ {}{r}_{ii}=0.5\\ {}{r}_{ij}=1-{r}_{ji}\\ {}{r}_{ij}={r}_{ik}-{r}_{jk}+0.5\end{array},\right.\ \left(i,j,k=1,2,\cdots, n\right) $$
(9)
  • Step 3: Calculate the subjective weight of each network attribute using Formula (10).

$$ {w}_i^{sb}=\frac{1}{n}-\frac{1}{2k}+\frac{1}{nk}\times \sum \limits_{j=1}^n{r}_{ij} $$
(10)

In this paper, \( k=\frac{n-1}{2} \) in the above formula; therefore, the following is obtained:

$$ {w}_i^{sb}=\frac{2}{n\left(n-1\right)}\times \sum \limits_{j=1}^n{r}_{ij}-\frac{1}{n\left(n-1\right)} $$
(11)

3.4 Using the FAHP to calculate the user preference values

To calculate the preferences of different user applications for candidate networks, it is necessary to calculate the ranking of the lowest layer (i.e., scheme layer) about the highest layer (i.e., target layer). The calculation process is mainly divided into the following three steps:

  • Step 1: Calculate the importance ranking of the middle layer (i.e., criterion layer) with respect to the highest layer (i.e., target layer). In the previous section, the weights of each network attribute in the criterion layer are obtained with respect to the target layer. Therefore, according to the weight vector obtained in the previous section (Tables 7, 8, and 9), the relationship matrix is built between different applications and network attributes (Table 10).

  • Step 2: Based on the pairwise comparison of the importance of each candidate network at the lowest layer (i.e., scheme layer) with respect to the network attributes at the middle layer (i.e., criterion layer), a fuzzy consistent matrix is constructed, and the weights are calculated using Formula (11) (Tables 11, 12, 13, 14, and 15). Then, the relationship matrix between different netwomethods based on utility function and reputation rk attributes and candidate networks is constructed according to the weight vectors in Tables 11, 12, 13, 14, and 15 (Table 16).

  • Step 3: Multiply the matrix in step 1 (Table 10) by the matrix in step 2 (Table 16) and calculate the ranking of the lowest layer (i.e., scheme layer) with respect to the highest layer (i.e., target layer), that is the user preference values of different applications for candidate networks (Table 17).

Table 10 Applications and network attributes relationship matrix
Table 11 Fuzzy consistent matrix and weights for bandwidth
Table 12 Fuzzy consistent matrix and weights for delay
Table 13 Fuzzy consistent matrix and weights for jitter
Table 14 Fuzzy consistent matrix and weights for loss
Table 15 Fuzzy consistent matrix and weights for price
Table 16 Network attributes and candidate networks relationship matrix
Table 17 User preferences for candidate networks for different applications

3.5 Calculating scores of candidate networks by using SAW, MEW, and TOPSIS

In Section 3.2, the entropy method is used to calculate the objective weights of network attributes, and in Section 3.3, the FAHP is used to calculate the subjective weights of network attributes. Therefore, in this paper, the comprehensive weight of network attributes j is as follows:

$$ {w}_j=\alpha \times {w}_j^{ob}+\left(1-\alpha \right)\times {w}_j^{sb} $$
(12)

In the above formula, α can be dynamically adjusted. When α = 1, this means that only the objective weights of network attributes are considered. On the contrary, when α = 0, this means that only the subjective weights of network attributes are considered.

Next, this paper will discuss how to calculate the score of each candidate network using SAW, MEW, and TOPSIS and how to calculate the comprehensive score of each candidate network based on user preference values.

Due to its simplicity and high efficiency, SAW is a type of MADM algorithm that is widely used in network access selection. SAW ranks the candidate networks by calculating the sum of products of parameters and their weights, which can be expressed as follows:

$$ {S}_i^{\mathrm{SAW}}=\sum \limits_{j=1}^n{u}_{ij}{w}_j $$
(13)

MEW differs from SAW in that MEW’s calculation of each parameter is not to sum up the product of each parameter and its weight, but to calculate it in the form of a weighted product, which can be expressed as follows:

$$ {S}_i^{\mathrm{MEW}}=\prod \limits_{j=1}^n{u_{ij}}^{w_j} $$
(14)

The TOPSIS algorithm mainly evaluates the closeness of a candidate network to the best and worst access networks. The most ideal situation is that the evaluated network is closest to the optimal access network and is farthest from the worst access network. TOPSIS can be expressed as follows:

$$ {S}_i^{\mathrm{TOPSIS}}=\frac{D_{\mathrm{i}}^{-}}{D_i^{+}+{D}_i^{-}} $$
(15)

\( {D}_i^{-} \) and \( {D}_i^{+} \) represent the Euclidean distances from the current network to the worst and best reference networks, respectively. \( {D}_i^{-} \) and \( {D}_i^{+} \)are calculated as follows:

$$ \left\{\begin{array}{c}{D}_i^{-}=\sqrt{\sum \limits_{j=1}^n{w}_j^2{\left({u}_{ij}-{V}_j^{-}\right)}^2}\\ {}{D}_i^{+}=\sqrt{\sum \limits_{j=1}^n{w}_j^2{\left({u}_{ij}-{V}_j^{+}\right)}^2}\end{array}\right. $$
(16)

\( {V}_j^{-} \) and \( {V}_j^{+} \) represent the values of the attribute j of the worst and best candidate networks, respectively. As we calculated the utility value of the network attribute through the utility function in Section 3.1, the following is obtained:

$$ \left\{\begin{array}{c}{V}_j^{-}=\min \left({u}_{ij}\right),i=1,2,\cdots, m\\ {}{V}_j^{+}=\max \left({u}_{ij}\right),i=1,2,\cdots, m\end{array}\right. $$
(17)

After calculating the score of each candidate network using the SAW, MEW, or TOPSIS method, user preference values of different applications for each candidate network shown in Table 17 in Section 3.4 are compared according to the types of user’s applications. Then, Formula (18) is used to calculate the final comprehensive score of each candidate network, which is as follows:

$$ {S}_i^{\mathrm{final}}=\beta \times {S}_i^{\mathrm{attributes}}+\left(1-\beta \right)\times {S}_i^{\mathrm{preference}} $$
(18)

In the above formula, β can be dynamically adjusted. When β = 1, this means that only the network score value calculated from the network attribute is considered without any consideration of the user preference value.

In addition, due to user mobility, changes in wireless channel performance, etc., the network attribute values received by the user will change, and each candidate network score also needs to be recalculated, which may cause user handover between different networks. In order to avoid frequent handover between different networks due to slight changes in score, we add handover threshold parameter Threshold, as shown in Formula (19); the handover operation is performed when the difference between the maximum score of the other network and the score of the currently connected network is greater than the handover threshold; otherwise, the existing network connection is maintained, which can further reduce the ping-pong effect.

$$ {S}^{\mathrm{max}}-{S}^{\mathrm{current}}>\Delta \mathrm{Threshold} $$
(19)

4 Evaluation of the proposed algorithm

4.1 Verification method

This section will test and discuss the algorithm proposed in this paper. MATLAB is used as a platform to simulate and conduct experiments. The network attribute parameters in the experiment are set as shown in Table 18 [22, 36]. The first parameter indicates the default value of the network attribute, and the parameters in parentheses indicate the lowest value and the highest value of the network attribute when it changes dynamically.

Table 18 Network attribute parameter value settings

The experiment includes two parts: the first part is to conduct an experiment under the default values of the static network attributes and mainly evaluate the rankings of candidate network scores obtained using different algorithms. Under the static network attribute values and according to the utility function defined in Section 3.1, the utility value of each network attribute can be calculated and obtained for different applications (Tables 19, 20, and 21). The second part of the experiment is to conduct an experiment under dynamic network attribute values, mainly evaluating the number of candidate network selections and the number of network handover calculated by various algorithms. The change range of each network attribute is shown as numerical values in parentheses (Table 18).

Table 19 Utility values of attributes for voice application in default parameter settings
Table 20 Utility values of attributes for video application in default parameter settings
Table 21 Utility values of attributes for data application in default parameter settings

In this experiment, the value of the parameter α, which is used to adjust the ratio between the subjective weight and the objective weight of the network attribute in Formula (12), is set to 0.5, the value of the parameter β, which is used to adjust the ratio between the network score calculated for the network attribute and the user preference value in Formula (18), is also set to 0.5, and the handover threshold parameter ∆Threshold in Formula (19), is set to 0.03.

In addition, for a comparative analysis, three other algorithms are used (Utility & SAW, Utility & MEW, and Utility & TOPSIS), which are compared with the three algorithms in this paper (Utility, Entropy, FAHP, SAW, and User Preference; Utility, Entropy, FAHP, MEW, and User Preference; and Utility, Entropy, FAHP, TOPSIS, and User Preference), and these six algorithms are hereinafter referred to as Algorithms 1–6, respectively. The definition of the utility function in Algorithms 1–3 is the same as that in the proposed algorithm, and the weight values of all attributes in Algorithms 1–3 are set to be the same (that is, the weight values are all equal to 0.2).

4.2 Network ranking in static network attribute value environment

In the simulation experiment environment with static default network attribute parameter values (Fig. 10), when the user terminal runs a voice application, the ranking of the candidate networks is as follows: LTE > UMTS > WLAN > WiMAX with Algorithm 1 and Algorithm 3; the ranking of the candidate networks is LTE > UMTS > WiMAX > WLAN with Algorithm 2, and all these three algorithms choose the LTE network as the final access network. For voice applications, as there is no need for the network to provide a large bandwidth to operate properly, such applications expect to have lower delay jitter and price (Table 19 in Section 4.1). In addition, Algorithms 4–6 all consider the ranking of the importance of network attributes in different application situations and the preferences of different applications for candidate networks (Table 17), despite LTE, WLAN, and WiMAX networks having larger bandwidth utility values. Therefore, the candidate networks obtained with Algorithm 4 and Algorithm 6 are ranked as UMTS > LTE > WLAN > WiMAX. With Algorithm 5, they are ranked as UMTS > LTE > WiMAX. At the same time, Algorithms 4–6 select UMTS as the final access network.

Fig. 10
figure 10

Final scores of candidate networks for different algorithms for voice application

In the case where the user terminal runs video applications, all algorithms except Algorithm 3 provide the highest scores for the LTE network (Fig. 11). The candidate networks with Algorithm 2, Algorithm 5, and Algorithm 6 are as follows: LTE > WiMAX > WLAN > UMTS, but for Algorithm 1 and Algorithm 4, there is no significant difference between the scores of UMTS and WiMAX. In addition, as delay, jitter, and bandwidth are more important than the packet loss ratio and price in video applications, when the utility value of some important attributes is close to zero (for example, the bandwidth utility value of the UMTS network as shown in Table 20 is 0.0162), Algorithm 5 makes the UMTS network have a lower score than other algorithms. Thus, it is easier to identify candidate networks that are not suitable for application requirements.

Fig. 11
figure 11

Final scores of candidate networks for different algorithms for video application

For data applications (Fig. 12), the candidate networks with Algorithm 1 are as follows: UMTS > LTE > WLAN > WiMAX. Those with Algorithm 2 are ranked as LTE > UMTS > WLAN > WiMAX, and those with Algorithm 3 are ranked as LTE > WLAN > UMTS > WiMAX. There are great differences among the ranking results of these three algorithms. Although the UMTS network has higher price utility value and delay utility value and the LTE network has higher delay utility value and jitter utility value (Table 21), Algorithms 1–3 do not consider the importance of bandwidth and packet loss ratio for data applications, so UMTS, LTE, and UMTS are respectively selected as access networks in this case. Furthermore, although the delay utility value and jitter utility value of the WLAN network are relatively low, the WLAN network provides relatively high bandwidth utility value and packet loss ratio utility value (Table 21). As Algorithms 4–6 considered the importance of different attributes and calculated the final scores of candidate networks in accordance with user preferences, Fig. 12 shows that the candidate networks with Algorithms 4–6 are ranked as WLAN > UMTS > LTE > WiMAX, and the data application was connected to the WLAN network in the environment of the default static network attribute values set for the experiment.

Fig. 12
figure 12

Final scores of candidate networks for different algorithms for data application

4.3 Network ranking in dynamic network attribute value environment

In this section, we will evaluate and make statistics of the network selection with the above six algorithms in context of the dynamically changing network attribute values. As shown in Table 18 in Section 4.1, each network attribute value will dynamically change between the lowest value and the highest value with the rank in the bracket. In addition, the number of attribute value changes in the experiment is 1000 times.

For voice applications (Fig. 13), UMTS and LTE are the networks most selected by the six algorithms, while WLAN and WiMAX are selected less frequently. For video applications (Fig. 14), the network with the most selections by these six algorithms is LTE, with WLAN and WiMAX selected a certain number of times. For data applications (Fig. 15), the networks most selected with Algorithms 1–3 are UMTS and LTE, and WLAN is the network most selected by Algorithms 4–6. Meanwhile, the LTE and WiMAX networks are relatively less selected. The average scores of candidate networks for different algorithms for different applications in the case of 1000 dynamic changes of network attributes are shown in Table 22.

Fig. 13
figure 13

Number of network selection of candidate networks for different algorithms for voice application

Fig. 14
figure 14

Number of network selection of candidate networks for different algorithms for video application

Fig. 15
figure 15

Number of network selection of candidate networks for different algorithms for data application

Table 22 Average scores of candidate networks for different algorithms for different applications

The number of network handovers for various algorithms under different application types is shown (Fig. 16). The calculation method of switching times is that in two consecutive network attribute changes, if different networks are selected, the number of handovers will be increased by one time. Here, a comparison between the same MADM methods in different applications is mainly observed (i.e., a comparison between Algorithm 1 and Algorithm 4, a comparison between Algorithm 2 and Algorithm 5, and a comparison between Algorithm 3 and Algorithm 6).

Fig. 16
figure 16

Number of network handovers under different applications

For voice applications, UMTS and LTE are the most selected networks by the six algorithms, and WLAN and WiMAX are the least selected by these six algorithms, with switching mainly occurring between UMTS and LTE. Therefore, the total number of handovers of these six algorithms in voice applications is less than that in video applications and data applications.

For video applications, LTE is the most selected by the six algorithms; however, the other three networks (i.e., UMTS, WLAN, and WiMAX) are selected by these algorithms on average, resulting in a higher number of handovers. The total number of handovers of these six algorithms in video applications is the highest among the three applications. In addition, as Algorithms 4–6 in this paper reduce the selection times of UMTS and increase the selection times of LTE when considering the preferences, the number of handovers are reduced to some extent compared with Algorithms 1–3, respectively.

For data applications, the numbers of selections of UMTS and LTE by Algorithms 1–3 are relatively close, and they also choose WLAN and WiMAX for a certain number of times, thus causing more handovers. The network most selected by Algorithms 4–6 is WLAN, followed by UMTS, with the number of selections of LTE and WiMAX being very small. Therefore, in a data application, Algorithms 4–6 reduce more switching times for Algorithms 1–3, respectively.

5 Conclusions

This paper proposes a selection algorithm for HWNs based on service characteristics and user preferences. This algorithm integrates several methods, such as the utility function, the entropy method, the FAHP, and MADM. It also takes into account the utility values of network attributes for different applications, as well as the subjective and objective weights of network attributes, and ranks the comprehensive scores of candidate networks with reference to user preferences. The simulation results show that the proposed algorithm allows users to select the most suitable network to access according to different service characteristics and can reduce the number of network handovers.

The main shortcomings of this paper include the setting of utility function parameter values, parameter values of the parameter α (used to adjust the ratio between subjective and objective weights of network attributes), and parameter β (used to adjust the ratio between network scores calculated for network attributes and user preference values), which require further adjustment and optimization in order to obtain a more accurate ranking of the comprehensive scores for candidate network comprehensive scores. In addition, such factors as handover triggering between networks and network load should be considered in future studies as to obtain better QoS support and a better user experience.

6 Methods

In order to choose the most suitable network connection for users, the methods proposed in this paper mainly include the following steps:

Firstly, user services are divided into three types. Based on the characteristics of these different services, utility functions are designed for network attributes, and the utility value of each network attribute for such services is calculated by using those utility functions.

Secondly, the entropy method is used to calculate the objective weights of network attributes.

Thirdly, the fuzzy-analytic hierarchy process is used to calculate the subjective weights of network attributes, and α as an adjustment coefficient to integrate the objective weights and subjective weights of network attributes. Afterwards, the combined weight of network attributes is obtained.

Fourthly, the fuzzy-analytic hierarchy process is used to calculate the user preference values of the user service for the candidate networks.

Fifthly, simple additive weighting, multiplicative exponent weighting, and technique for order preference by similarity to ideal solution methods are used to calculate the scores of the candidate networks according to the utility values of different network attributes and their combined weights.

Finally, based on the network scores obtained from the network attributes, as well as user preference values, the comprehensive scores of candidate networks are synthesized, and the most suitable network is selected for access based on the comprehensive scores of the candidate networks.

The experiment is conducted under static network attribute values and dynamic network attribute values. The simulation code was written in Matlab.

Abbreviations

FAHP:

Fuzzy-analytic hierarchy process

HWNs:

Heterogeneous wireless networks

LTE:

Long Term Evolution

MADM:

Multi-attribute decision-making

MEW:

Multiplicative exponent weighting

QoS:

Quality of service

RSS:

Received signal strength

SAW:

Simple additive weighting

TOPSIS:

Technique for order preference by similarity to ideal solution

UMTS:

Universal Mobile Telecommunications System

WiMAX:

Worldwide interoperability for microwave access

WLAN:

Wireless local area network

References

  1. M. Jo, T. Maksymyuk, R.L. Batista, T.F. Maciel, A.L.F. de Almeida, M. Klymash, A survey of converging solutions for heterogeneous mobile networks. IEEE Wirel. Commun. 21(6), 54–62 (2014). https://doi.org/10.1109/MWC.2014.7000972

    Article  Google Scholar 

  2. M. Zekri, B. Jouaber, D. Zeghlache, A review on mobility management and vertical handover solutions over heterogeneous wireless networks. Comput. Commun. 35(17), 2055–2068 (2012). https://doi.org/10.1016/j.comcom.2012.07.011

    Article  Google Scholar 

  3. X. Wang, D. Qu, K. Li, H. Cheng, S.K. Das, M. Huang, R. Wang, S. Chen, A flexible and generalized framework for access network selection in heterogeneous wireless networks. Pervasive Mob Comput 40, 556–576 (2017). https://doi.org/10.1016/j.pmcj.2017.01.001

    Article  Google Scholar 

  4. X. Feng, X. Gan, H. Zheng, Z. Chen, Distributed cell selection in heterogeneous wireless networks. Comput. Commun. 109, 13–23 (2017). https://doi.org/10.1016/j.comcom.2017.05.005

    Article  Google Scholar 

  5. K. Ahuja, B. Singh, R. Khanna, Network selection algorithm based on link quality parameters for heterogeneous wireless networks. OPTIK 125(14), 3657–3662 (2014). https://doi.org/10.1016/j.ijleo.2014.01.082

    Article  Google Scholar 

  6. E. Gustafsson, A. Jonsson, Always best connected. IEEE Wirel. Commun. 10(1), 49–55 (2003). https://doi.org/10.1109/MWC.2003.1182111

    Article  Google Scholar 

  7. E. Obayiuwana, O.E. Falowo, Network selection in heterogeneous wireless networks using multi-criteria decision-making algorithms: a review. Wirel. Netw 23(8), 2617–2649 (2017). https://doi.org/10.1007/s11276-016-1301-4

    Article  Google Scholar 

  8. R. Trestian, O. Ormond, G. Muntean, Performance evaluation of MADM-based methods for network selection in a multimedia wireless environment. Wirel. Netw 21(5), 1745–1763 (2015). https://doi.org/10.1007/s11276-014-0882-z

    Article  Google Scholar 

  9. L. Wang, G.G.S. Kuo, Mathematical modeling for network selection in heterogeneous wireless networks - a tutorial. IEEE Commun Surv Tut 15(1), 271–292 (2013). https://doi.org/10.1109/SURV.2012.010912.00044

    Article  Google Scholar 

  10. D. Niyato, E. Hossain, Dynamics of network selection in heterogeneous wireless networks: an evolutionary game approach. IEEE T Veh Technol 58(4), 2008–2017 (2009). https://doi.org/10.1109/TVT.2008.2004588

    Article  Google Scholar 

  11. R. Trestian, O. Ormond, G. Muntean, Game theory-based network selection: solutions and challenges. IEEE Commun Surv Tut 14(4), 1212–1231 (2012). https://doi.org/10.1109/SURV.2012.010912.00081

    Article  Google Scholar 

  12. Y.K. Salih, O.H. See, R.W. Ibrahim, An intelligent selection method based on game theory in heterogeneous wireless networks. T Emerg Telecommun T 27(12), 1641–1652 (2016). https://doi.org/10.1002/ett.3102

    Article  Google Scholar 

  13. S. Goudarzi, W.H. Hassan, M.H. Anisi, S.A. Soleymani, MDP-based network selection scheme by genetic algorithm and simulated annealing for vertical-handover in heterogeneous wireless networks. Wireless Pers Commun 92(2), 399–436 (2017). https://doi.org/10.1007/s11277-016-3549-5

    Article  Google Scholar 

  14. X. Gelabert, J. Perez-Romero, O. Sallent, R. Agusti, A Markovian approach to radio access technology selection in heterogeneous multiaccess/multiservice wireless networks. IEEE T Mobile Comput 7(10), 1257–1270 (2008). https://doi.org/10.1109/TMC.2008.50

    Article  Google Scholar 

  15. E. Khloussy, X. Gelabert, Y. Jiang, Investigation on MDP-based radio access technology selection in heterogeneous wireless networks. Comput. Netw. 91, 57–67 (2015). https://doi.org/10.1016/j.comnet.2015.08.005

    Article  Google Scholar 

  16. X. Yan, Y.A. Sekercioglu, S. Narayanan, A survey of vertical handover decision algorithms in Fourth Generation heterogeneous wireless networks. Comput. Netw. 54(11), 1848–1863 (2010). https://doi.org/10.1016/j.comnet.2010.02.006

    Article  MATH  Google Scholar 

  17. K.R. Rao, Z.S. Bojkovic, B.M. Bakmaz, in International Conference on Telecommunications in Modern Satellite Cable and Broadcasting Services TELSIKS83-92, ed. by B. D. Milovanovic. Network selection in heterogeneous environment: a step toward always best connected and served (IEEE, NEW YORK, 2013). https://doi.org/10.1109/TELSKS.2013.6704898

    Chapter  Google Scholar 

  18. Y.K. Salih, O.H. See, R.W. Ibrahim, S. Yussof, A. Iqbal, An overview of intelligent selection and prediction method in heterogeneous wireless networks. J. Cent. South Univ. 21(8), 3138–3154 (2014). https://doi.org/10.1007/s11771-014-2286-8

    Article  Google Scholar 

  19. X. Yan, P. Dong, T. Zheng, H. Zhang, in WIREL COMMUN Mob Com (4967438). Fuzzy and utility based network selection for heterogeneous networks in high-speed railway (2017). https://doi.org/10.1155/2017/4967438

    Chapter  Google Scholar 

  20. K. Ahuja, B. Singh, R. Khanna, Network selection in wireless heterogeneous environment by C-P-F hybrid algorithm. Wireless Pers Commun 98(3), 2733–2751 (2018). https://doi.org/10.1007/s11277-017-4998-1

    Article  Google Scholar 

  21. M. Lahby, A. Attioui, A. Sekkaki, An improved policy for network selection decision based on enhanced-TOPSIS and utility function, International Wireless Communications and Mobile Computing Conference (IEEE, NEW YORK, 2017), pp. 2175–2180. https://doi.org/10.1109/IWCMC.2017.7986620

    Book  Google Scholar 

  22. R.K. Goyal, S. Kaushal, A.K. Sangaiah, The utility based non-linear fuzzy AHP optimization model for network selection in heterogeneous wireless networks. Appl. Soft Comput. 67, 800–811 (2018). https://doi.org/10.1016/j.asoc.2017.05.026

    Article  Google Scholar 

  23. X. Wu, Q. Du, Utility-function-based radio-access-technology selection for heterogeneous wireless networks. Comput. Electr. Eng. 52, 171–182 (2016). https://doi.org/10.1016/j.compeleceng.2015.06.010

    Article  Google Scholar 

  24. K. Ahuja, B. Singh, R. Khanna, Network selection based on weight estimation of QoS parameters in heterogeneous wireless multimedia networks. Wireless Pers Commun 77(4), 3027–3040 (2014). https://doi.org/10.1007/s11277-014-1692-4

    Article  Google Scholar 

  25. M.A. Senouci, S. Hoceini, A. Mellouk, Utility function-based TOPSIS for network interface selection in heterogeneous wireless networks (IEEE International Conference on Communications. IEEE, NEW YORK, 2016). https://doi.org/10.1109/ICC.2016.7511563

    Book  Google Scholar 

  26. X. Song, W.M. Liu, M.L. Zhang, F. Liu, A network selection algorithm based on FAHP/GRA in heterogeneous wireless networks (IEEE, NEW YORK, 2016), pp. 1445–1449. https://doi.org/10.1109/CompComm.2016.7924942

    Book  Google Scholar 

  27. M. Kassar, B. Kervella, G. Pujolle, An overview of vertical handover decision strategies in heterogeneous wireless networks. Comput. Commun. 31(10), 2607–2620 (2008). https://doi.org/10.1016/j.comcom.2008.01.044

    Article  Google Scholar 

  28. S. Radouche, C. Leghris, A. Adib, in MADM methods based on utility function and reputation for access network selection in a multi-access mobile network environment, ed. by A. Kobbane, K. Ibrahimi, M. Y. Hadi. (IEEE, NEW YORK, 2017), pp. 197–202. https://doi.org/10.1109/WINCOM.2017.8238177

    Chapter  Google Scholar 

  29. P. Kosmides, A. Rouskas, M. Anagnostou, Utility-based RAT selection optimization in heterogeneous wireless networks. Pervasive Mob Comput 12, 92–111 (2014). https://doi.org/10.1016/j.pmcj.2013.03.007

    Article  Google Scholar 

  30. A. Ahmed, L.M. Boulahia, D. Gaiti, Enabling vertical handover decisions in heterogeneous wireless networks: a state-of-the-art and a classification. IEEE Commun Surv Tut 16(2), 776–811 (2014). https://doi.org/10.1109/SURV.2013.082713.00141

    Article  Google Scholar 

  31. R. Trestian, O. Ormond, G. Muntean, Enhanced power-friendly access network selection strategy for multimedia delivery over heterogeneous wireless networks. IEEE T Broadcast 60(1), 85–101 (2014). https://doi.org/10.1109/TBC.2014.2301282

    Article  Google Scholar 

  32. V. Rakocevic, J. Griffiths, G. Cope, Performance analysis of bandwidth allocation schemes in multiservice IP networks using utility functions. Tel Sci Eng 4, 233–243 (2001). https://doi.org/10.1016/S1388-3437(01)80125-6

    Article  Google Scholar 

  33. Y.J. Zhang, Y.Z. Wang, J.P. Wang, Objective attributes weights determining based on Shannon information entropy in hesitant fuzzy multiple attribute decision making. Math. Probl. Eng. 2014, 1–7 (2014). https://doi.org/10.1155/2014/463930

    Article  Google Scholar 

  34. Y.J. Zhang, P.H. Li, Y.Z. Wang, P.J. Ma, X.H. Su, Multiattribute decision making based on entropy under interval-valued intuitionistic fuzzy environment. Math. Probl. Eng. (2013). https://doi.org/10.1155/2013/526871

    MathSciNet  MATH  Google Scholar 

  35. S. Kubler, J. Robert, W. Derigent, A. Voisin, Y. Le Traon, A state-of the-art survey & testbed of fuzzy AHP (FAHP) applications. Expert Syst. Appl. 65, 398–422 (2016). https://doi.org/10.1016/j.eswa.2016.08.064

    Article  Google Scholar 

  36. Ajay, D. Gurjar, N. Purohit, An Optimized Network Selection Scheme for Heterogeneous Wireless Networks (2013 SIXTH INTERNATIONAL CONFERENCE ON CONTEMPORARY COMPUTING (IC3), 2013), pp. 196–201. https://doi.org/10.1109/IC3.2013.6612189

Download references

Funding

This work was supported by Natural Science Foundation of Guangdong Province (No. 2017A030307035), Innovative Research Project of the Education Department of Guangdong Province (No. 2017KTSCX127), Guangdong Science and Technology Project (No. 2013B010401006), and Key Collaborative Innovation Project among Industry, University and Institute of Guangzhou (No. 201604010001).

Availability of data and materials

The simulation data can be downloaded at https://pan.baidu.com/s/1ZNbLazGblrIcixm03rIY6w.

Author information

Authors and Affiliations

Authors

Contributions

The authors have equal contributions. All authors read and approved the final manuscript.

Corresponding author

Correspondence to Gen Liang.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Liang, G., Yu, H. Network selection algorithm for heterogeneous wireless networks based on service characteristics and user preferences. J Wireless Com Network 2018, 241 (2018). https://doi.org/10.1186/s13638-018-1264-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s13638-018-1264-5

Keywords