1 Introduction

In recent decades, along with the progress of science and technology, especially in the field of wireless communications, many kinds of wireless networks are developed or updated to support the ever-increasing demands of the society for a wide range of applications, such as internet of things (IoT), intelligent transportation system (ITS) [1], smart city, and smart home. Because of various realistic factors, many original wireless networks across the world are still running rather than being quickly stopped after the emergence of new technologies. These different types of wireless networks (e.g., 2G, 3G, 4G, WLAN, and even future 5G) will coexist for a long time [2, 3], which will benefit both network operators and end users. Therefore an environment of heterogeneous wireless networks (HWNs) is formed reasonably. In this environment, end users are usually reluctant to run all types of applications on a single network [4]. Instead, they prefer to allow each application to run on the most suitable network according to the principle that best suits them.

When surrounded by the HWNs, mobile terminals are often expected to make a reasonable decision to select an optimal target network swiftly from all the detected alternatives to ensure the required or better quality of service (QoS). If a mobile terminal detaches the current network and selects another kind of network to continue its application, this switch is called a vertical handover or handoff (VH). In general, a complete VH process contains three phases, i.e., the initiation, decision, and execution of handover [5]. Obviously, the purpose of handoff decision phase is to sort all the candidate networks gathered in the first phase of VH according to some rules and then choose the most suitable one from the list for a running application. Moreover, because the result of this decision determines whether the VH is meaningful and desired, handover decision is regarded as the most critical part in VH [6]. Hence, our research work also mainly focuses on handover decision, neglecting the other two phases.

If a mobile terminal selects an ideal target network, its user can obtain the required or better QoS and the better quality of experience (QoE). On the contrary, even the basic QoS cannot be guaranteed and the overall networks performance will also be degraded. For instance, due to an unreasonable decision, the terminal may switch between two networks too frequently. This phenomenon is known as the ping-pong effect which can lead to large signaling overhead and poor user experience. Thus a reasonable handover decision mechanism should avoid the ping-pong effect as much as possible. How to achieve a reasonable compromise between the sensitivity to the environment and the reduction of the probability of that effect is one of the most prominent challenges in the problem of heterogeneous wireless network selection [7].

The problem is essentially a complex multi-objective optimization problem. That is because there are often many and sometimes even contradictory potential factors to be considered simultaneously [8, 9], such as real-time network conditions, current abilities of the terminal itself, and subjective user expectations. So the final decision result is a compromise rather than an absolute optimal. Many researchers have proposed many models or theories to solve this problem, such as multi attribute decision making (MADM), fuzzy logic [10, 11], machine learning [12, 13], game theory [14,15,16], Markov decision process [17,18,19], and swarm intelligence search [20, 21]. Among them, the MADM model is frequently used due to its simplicity and direct.

There have been many typical MADM algorithms available in this research area, such as simple additive weighting (SAW), multiplicative exponent weighting (MEW), analytic hierarchy process (AHP), fuzzy analytic hierarchy process (FAHP), entropy, standard deviation (SD), grey relational analysis (GRA), technique for order preference by similarity to an ideal solution (TOPSIS), VIseKriterijumska Optimizacija I Kompromisno Resenje (VIKOR) [22], and ELECTRE II [23]. However, each of them has its own strengths and limitations. As far as the computation process is concerned, the last two algorithms and their variants are more complicated. The simplest of these algorithms for ranking the alternatives is SAW. But it cannot work without weights of attributes provided specially. AHP and FAHP, known as subjective weighting methods, are used to assign a subjective weight for each attribute only according to the decision maker’s experience or knowledge. By contrast, the Entropy method and the standard deviation method are good at getting objective weights based solely upon the objective data collected. Hence, the four network-attribute weighting algorithms above are rarely used to sort a list directly. GRA and TOPSIS are usually regarded as objective sorting algorithms, but their outputs may be too sensitive to the environment. Consequently, it is often necessary to develop a so-called hybrid algorithm containing of several simpler algorithms to bring together their advantages and get better quality of results at the cost of increasing complexity. To the best of our knowledge, most recent algorithms based on MADM in this field are hybrid. Hence, the idea of this improvement is very promising and used widely [24]. This work also mainly focuses on applying a hybrid MADM algorithm for network selection.

Moreover, because of the changing network environment, the work of sorting the candidate networks should be completed as quickly as possible [25]; otherwise the network information may become obsolete, thereby leading to impractical decisions. When designing a hybrid algorithm, we must consider carefully the balance between achieving more comprehensive results and controlling its execution time. This naturally requires that each algorithm involved in a hybrid algorithm should be as simple as possible while limiting their total number at the same time. In fact, as far as we know, in the related hybrid MADM algorithms proposed in the available literature, the number of algorithms involved in a hybrid MADM algorithm is basically less than 4. Hence, the aim of this paper is to apply the linear synthesis vector technique to combine three simple MADM algorithms (FAHP, SD and GRA) in order to compute the comprehensive evaluation value (CEV) of each alternative in terms of attribute weight and utility value. In addition, a threshold is used to decide whether to switch from the current network to the other one with the highest CEV.

The rest of this paper is organized as follows. First, Sect. 2 provides an overview of some existing hybrid MADM solutions for heterogeneous network selection. Section 3 introduces the calculation steps of the three MADM methods involved. Next, Sect. 4 presents the detailed process of selecting a target network according to the final CEVs of all alternatives in our proposed algorithm. Then, Sect. 5 describes our heterogeneous networks simulation scenario and sets all parameters needed by the related simulation experiment to evaluate our algorithm. Finally, Sect. 6 concludes this paper.

2 Related Work

The general purpose of merging several simpler algorithms into a hybrid algorithm is to produce synthesis rather than one-sided results and enhance the adaptability to the environment. Therefore hybrid MADM algorithm has been attracting the attention of many researchers. In recent years, many novel hybrid MADM schemes have been proposed for heterogeneous wireless network selection in the literature.

In [26], the authors develop a utility function based on SAW and then prove its performance by simulating experiments in the famous open source NS-3 network simulator. The utility value of each network is calculated by four QoS metrics (Bandwidth, Delay, Jitter and Bit Error Rate) and four calibration coefficients related to a specific traffic class. Obviously, the importance of four sets of calibration coefficients corresponding to four traffic classes is equivalent to that of the four QoS parameters. However, their values are directly assigned by people without considering the specific network environment. To overcome the limitation of the aggregate additive utility function above, which a network with poor performance for some attributes can still be selected, the authors of [27, 28] propose a multiplicative multi-criteria utility function on the basis of MEW and an exponential multi-criteria utility function respectively. Similarly, how to determine proper weight vectors of the attributes involved is still a problem to be further studied.

In [29], in order to eliminate the rank reversal in the utility function based on original TOPSIS, the authors introduce a novel normalization technique and let both positive and negative idea solutions be fixed simply. Because the theories of diminishing marginal utility and monotonic utility are adopted, each normalized attribute value of any network is calculated separately without considering the influence of other networks in the list. This is the main difference from conventional normalization methods. In fact, this normalization method can also be applied in the corresponding process of other MADM methods. However, this requires that the decision maker be familiar with each attribute (such as determining its base and target points for a specific application) and then use proper formula to normalize. In addition, the attribute weight vector should be dynamic rather than static. In this regard, Almutairi et al. in [30] provide the weight vector optimized by the genetic algorithm (GA) for the MADM methods with sorting function, such as SAW, TOPSIS and GRA. However, in order to reduce the optimization time of GA, the initial weight vector can be calculated by some other methods, like AHP, FAHP, Entropy, and SD, rather than arbitrarily specified.

In [31], the Entropy method and TOPSIS are combined for triple-play services. Weight estimation of QoS parameters is one of key points of this solution. After the Entropy method is used to initialize the objective weight vector of attributes, the attribute thresholds related to the specific traffic class is further used to determine the final attribute weights. Finally, TOPSIS ranks the alternatives with the help of the final attribute weights. Clearly, the final attribute weight vector has been related to objective network conditions and requirements for the specific service. However, there is room for further improvement in the process of determining the final weight. For example, optimizing the format of the relevant threshold data can be considered so as to calculate the final attribute weight more conveniently.

Unlike the utility functions above, motivated by grey theory, Kumar in [32] suggests a cost function to rank the alternatives. Similarly, Sheng et al. in [33] study the integration of Entropy and GRA to sort the overall performance of each alternative. In these two solutions, the weights of attributes are computed by the Entropy method, thereby ignoring any user preferences. Hence, their outputs may be too sensitive to the environment, resulting in an increase in the numbers of vertical handovers and ping-pong effects.

In [34], the authors first use AHP to determine the attribute weight vectors for three kinds of applications and then use TOPSIS to rank the alternatives. In [35, 36], the integration of AHP and GRA is proposed to select the optimal network. AHP and GRA are used to assign the weight of each attribute for a corresponding traffic class and rank the alternatives respectively. The main difference between the two solutions is the difference of the GRA algorithm used. The former uses standard GRA, while the latter is inspired by TOPSIS to improve the standard GRA. That is, grey correlation coefficient and grey correlation degree of each network with positive and negative ideal solution are calculated. Finally, the comprehensive evaluation value of each network is computed by the formula that is similar to one by which calculate the relative closeness coefficient in TOPSIS.

In [37], the authors present a SDN-based handover scheme consisting of Fuzzy Logic, AHP, and TOPSIS. In the handover decision phase, the SDN integrated with Fuzzy Logic computes QoS score for each qualified candidate network. Then TOPSIS and the weight vector of QoE attributes obtained by AHP are applied to compute QoE score for each corresponding network. The network with the highest QoE score is selected as the target network for the subsequent handover execution phase. Due to its limited resources and capacity, the user equipment may not be competent to perform fuzzy logic. Consequently, in this scheme, Fuzzy Logic runs on the SDN, while AHP and TOPSIS run on the user equipment. This strategy helps to reduce the delay of handover decision phase.

Moreover, the authors of [38] propose a hybrid MADM solution where AHP, Entropy, and TOPSIS are combined. AHP and Entropy are employed to get the subjective weight vector and the objective weight vector respectively. Then the final weight vector is obtained by the linear combination of the two weight vectors above. At last, TOPSIS and the final weight vector are used to rank the alternative subnets. In addition, in the final network selection stage, a load balancing mechanism is relied upon to avoid always simply choosing the subnet with the highest relative closeness coefficient. That is, according to the service level and the load ratio of the optimal subnet and the suboptimal subnet, determine which of the two subnets is selected. Under this mechanism, when the load of the optimal subnet reaches a certain extent, the probability of the suboptimal subnet being selected increases, thus achieving the purpose of load balancing.

In Song et al. [39], report the integration of FAHP, SD, and GRA. They use FAHP and SD to compute the subjective and objective weight vector for the attributes considered. And then the two weight vectors are integrated into a comprehensive weight vector by the normalization of multiplication synthesis. At last, they use the original GRA algorithm to complete the sorting. When calculating the comprehensive attribute weights, this solution has obviously taken into account both the subjective experience of decision-makers and the objective conditions of the network. Therefore, this helps to provide a high quality weight vector for the GRA algorithm and get a better ranking result. However, due to the limitation of this method, only a fixed comprehensive weight can be obtained for the given subjective weight and objective weight. The proportion of the two weights in the comprehensive weight can only be considered the same rather than dynamically adjusted according to the need. As a result, from this perspective, the flexibility of the algorithm is somewhat deficient.

Yu et al. [40] take into account network attribute and user preference and propose a hybrid MADM algorithm comprising FAHP, Entropy, and TOPSIS. In this algorithm, they use FAHP to compute both the subjective attribute weights and the subjective utility values. They also use the Entropy method to compute the objective attribute weights that are used to calculate the final comprehensive attribute weights and the objective utility values together with TOPSIS. Because the linear combination method is adopted to synthesize the two vectors with the same dimension, the comprehensive weight for each attribute, the comprehensive utility value for each network and the comprehensive evaluation value for each network can be adjusted by an adjustment coefficient according to the need. In the phase of network selection, a threshold is used to determine whether it is necessary to switch from the current network to the network with the highest comprehensive evaluation value. Although performing well in terms of the total number of handovers and the corresponding gains from these handovers, the solution still has room for further improvement such as algorithm flow and threshold usage.

Many hybrid MADM algorithms have been proposed in the literature, but there is still insufficient research on how to evaluate the overall performance of each candidate network and how to use thresholds more reasonably under the premise of restricting the complexity of the algorithm. In this paper, motivated by the hybrid MADM schemes above and on the basis of our previous research [40], we develop a novel and flexible hybrid MADM solution including FAHP, SD, GRA, and a threshold. The main contributions of this paper are as follows.

(1) By the method of linear combination, FAHP, SD, and GRA are synthesized to calculate the CEV of each network from two different angles of network attribute and utility value.

(2) Optimize the algorithm flow and select a suitable normalization technique to reduce the complexity of the algorithm.

(3) By checking whether the difference between the CEV of the current network and the other network with the highest CEV exceeds the threshold, the solution ascertains whether the mobile terminal stays on the current network.

3 Related MADM Methods

Because three MADM methods (FAHP, SD, and GRA) are combined in our proposed algorithm, in this section we separately introduce the calculation steps for the issue of heterogeneous wireless network selection. It should be noted that like many other MADM methods, the data preprocessing stage of both the SD method and the GRA algorithm requires the normalization of the original decision matrix (DM) gathered and formed in the phase of handover initiation. For the sake of description, we will assume that the decision matrix involved has been normalized and therefore ignore the initial normalization process when presenting the two algorithms in this section. The corresponding normalization technology that we adopt will be introduced in the next section. Meanwhile, let us assume that m and n represent the number of alternative networks and the number of attributes per network respectively.

3.1 Fuzzy Analytic Hierarchy Process (FAHP)

FAHP, an extension of AHP, is a subjective decision making method. It can overcome the significant difference between the consistency of the judgement matrix and the consistency of human thinking, which is the inherent disadvantage of the AHP method. Hence, its reliability of decision-making has been greatly improved [41]. At present, the FAHP method can be divided into two categories: one is based on fuzzy set theory [42] and the other is based on fuzzy consistent matrix. Since all the data we deal with are expressed by real numbers instead of fuzzy numbers, we only introduce the second type of FAHP in this paper. The FAHP method of this type contains the following steps.

Step 1. Create a hierarchical structure model. In general, there are at least three layers in this model. From top to bottom, a goal layer, a criterion layer, and a scheme layer can form the simplest hierarchy. At this time, the best target network, the discrete set of criteria considered, and the set of candidate networks are used as the three layers above respectively. For complex cases, criterion layer can be further subdivided into several layers called sub-criterion layers, thereby obtaining a more complex hierarchical structure model with more than three layers.

Step 2. Build at least one fuzzy consistent matrix (FCM). Similar to the process of establishing pairwise comparison matrix in AHP, for any element in the upper layer, the pairwise comparison between any two elements in the same layer in terms of importance is also needed so as to establish FCM in FAHP. Each such comparison determines one element in the FCM. Hence, for the simplest three-layer hierarchical structure model (with m networks and n attributes), the comparison of elements in the criterion layer generates a FCM, AW_FCM = (aij) n × n, while the comparison of elements in the scheme layer generates n fuzzy consistent matrices (FCMs), NW_FCM = {nw_fcmk | nw_fcmk = (uij) m × m, 1 ≤ k ≤ n}. Among them, AW_FCM will generate a subjective attribute weight vector, which is widely used by the most FAHP algorithms in literature; while a series of FCMs in the NW_FCM and the attribute weight vector will generate user preferences of all alternatives for each attribute. Of course, for the two types of FCMs above, the calculation method of generating weight vector is the same.

In view of the good performance of FAHP shown in [40], we still adopt the two strategies proposed in that paper.

On one hand, we use the 0.5–0.95 scale method (Table 1) to determine the elements of FCM.

Table 1 0.5–0.95 scale method for the element xij in a fuzzy consistent matrix (FCM)

One of the distinct characteristics of FCM is that the difference of the corresponding position elements of any two rows (columns) of the matrix is equal. In addition, all the diagonal elements of the matrix are 0.5 and each element of the matrix is greater than zero and less than 1. Therefore, in practice, as long as any row (column) of the matrix is correctly determined, the rest of the rows (columns) can be filled quickly. This is the advantage that AHP does not possess.

On the other hand, use Eq. (1) to calculate the weight vector of any FCM with υ rows (or columns).

$$ w_{i} = \frac{{\sum\limits_{j = 1}^{\upsilon } {x_{ij} } + \frac{\upsilon }{2} - 1}}{\upsilon (\upsilon - 1)} \times (2x_{i1} )^{\tau } ,\quad \tau \ge 0,\quad i \in [1,\upsilon ] $$
(1)

where τ is the scaling coefficient. The greater τ is, the greater both the distinction of the weight of each attribute is and the increasing amount of calculation is. Through our experiments, we find that when τ is 2, a satisfactory weight division has been obtained and the increase in the amount of calculation is also within the acceptable range. Hence, in this paper, τ = 2. In addition, for AW_FCM and any FCM in NW_FCM, the value of υ in Eq. (1) is n and m respectively. Their weight vectors can be obtained by Eq. (1) easily.

Finally, it should be explained that AW_FCM should be established for a specific traffic class only. This means that the number of AW_FCMs should be equal to the number of the traffic classes considered. By contrast, each FCM in NW_FCM has nothing to do with traffic class. The number of elements in NW_FCM is determined only by the total number of the attributes considered. It means that for a given hierarchical structure model, no matter how many types of traffic classes to consider, we only need to create the NW_FCM once.

3.2 Standard Deviation (SD)

In mathematics, the standard deviation is used to characterize the variation of the data of samples deviating from the corresponding mean value. That is, the greater the standard deviation is, the greater the deviation from the mean value is. In the heterogeneous network selection problem, the SD method can be used to determine the weights of attributes. For a given decision matrix that has been normalized, if the standard deviation of the ith attribute is greater than that of the jth attribute, it means that the former attribute plays a more important part in evaluating the overall performance of each network than the latter attribute. Thus, the former attribute should be given a higher weight than the latter attribute, and vice versa [43]. The method comprises the following steps.

Step 1. Use Eq. (2) to calculate the standard deviation of each attribute.

$$ \sigma_{j} = \sqrt {\frac{1}{n - 1}\sum\limits_{i = 1}^{m} {(a_{ij} - \overline{{a_{j} }} )^{2} } } ,\quad \overline{{a_{j} }} = \frac{1}{n}\sum\limits_{i = 1}^{m} {a_{ij} } ,\quad 1 \le j \le n $$
(2)

Step 2. Use Eq. (3) to calculate the objective weight of each attribute.

$$ o\_aw_{j} = \frac{{\sigma_{j} }}{{\sum\limits_{k = 1}^{n} {\sigma_{k} } }},\quad 1 \le j \le n $$
(3)

With regard to Eq. (3), we come up with a potential method for calculating the comprehensive weight. That is, if each attribute is assigned a weight, then a comprehensive weight can be obtained by Eq. (4).

$$ w_{j} = \frac{{\theta_{j} \sigma_{j} }}{{\sum\limits_{k = 1}^{n} {\theta_{k} \sigma_{k} } }},\quad 1 \le j \le n $$
(4)

where θj is the weight of the jth attribute. Hence, the integrated weights based on the SD method can be obtained by the normalization of multiplication synthesis.

3.3 Grey Relational Analysis (GRA)

Because of its simplicity and efficiency, the GRA algorithm, based on Grey System theory, has been one of the most usually applied algorithms for the problem of heterogeneous network selection. It first needs to set an ideal sequence as the reference sequence, while all the alternatives are considered as comparison sequences. Then the geometric similarity between each comparison sequence and the reference sequence, called the grey relational degree (GRD), is computed respectively. The larger the GRD of the comparison sequence is, the closer it is to the reference sequence. Hence, the comparison sequence with the highest GRD is selected as the optimal solution. Similar to TOPSIS, the reference sequence in GRA is usually virtual, not a real solution. Meanwhile, each candidate network is a comparison sequence. In the context of heterogeneous network selection, after normalization of the decision matrix, the algorithm has to go through the following steps.

Step 1. Set the reference sequence. According to the principle of selecting the best value for each attribute, an ideal solution vector Y = (y1, y2,…, yn) is determined from the decision matrix X = (xij)m × n which has been normalized in the data preprocessing stage.

Step 2. Compute the grey relational coefficient (GRC) of each attribute for each alternative by Eq. (5).

$$ GRC_{i} (j) = \frac{{\mathop {\hbox{min} }\limits_{1 \le t \le m,1 \le k \le n} (|y_{k} - x_{tk} |) + \rho \mathop {\hbox{max} }\limits_{1 \le t \le m,1 \le k \le n} (|y_{k} - x_{tk} |)}}{{|y_{j} - x_{ij} | + \rho \mathop {\hbox{max} }\limits_{1 \le t \le m,1 \le k \le n} (|y_{k} - x_{tk} |)}},\quad 1 \le i \le m,\quad 1 \le j \le n $$
(5)

where ρ ∊ [0, 1] is the discrimination coefficient. It can be seen from Eq. (5) that the smaller ρ is, the more significant the difference between the correlation coefficients is. Here, ρ takes 0.5.

Step 3. Compute the grey relational degree (GRD) of each alternative by Eq. (6).

$$ GRD_{i} = \sum\limits_{j = 1}^{n} {GRC_{j} w_{j} ,\quad 1 \le i \le m} $$
(6)

where wj denotes the weight of the jth attribute. It should be noted that wj in Eq. (6) can be the objective weight, the subjective weight, or the integrated weight. But the latter two weights are often related to a specific traffic class.

In addition, Step 2 and Step 3 can be merged. GRD can be calculated directly by formula Eq. (7) [44], thus eliminating the process of calculating the grey relational coefficient.

$$ GRD_{i} = \frac{{\mathop {\hbox{min} }\limits_{1 \le t \le m,1 \le k \le n} (|y_{k} - x_{tk} |) + \rho \mathop {\hbox{max} }\limits_{1 \le t \le m,1 \le k \le n} (|y_{k} - x_{tk} |)}}{{\sum\limits_{j = 1}^{n} {w_{j} |y_{j} - x_{ij} |} + \rho \mathop {\hbox{max} }\limits_{1 \le t \le m,1 \le k \le n} (|y_{k} - x_{tk} |)}},\quad 1 \le i \le m $$
(7)

Both the two GRA algorithms above can be called basic GRA algorithms and are widely used. We might as well call them “GRA1” and “GRA2” respectively. Through our many times of simulations with MATLAB software (in each simulation, the two algorithms run 10,000 times respectively), for the same input (sample and ρ), the same sorting results of the two algorithms account for about 58%, but GRA2 is approximately 18% better than GRA1 in terms of average execution time. Hence, in our proposed hybrid MADM algorithm, GRA2 is used instead of GRA1 to reduce the overall complexity and average execution time of the hybrid algorithm. Therefore, the GRA algorithm involved in our proposed algorithm is the GRA2 algorithm here. In order to express conveniently, we renamed GRA2 as “GRA”, while the GRA algorithm in [36] is called “GRA2”. According to such an annotation rule of different GRA algorithms, the GRA algorithm in references [33] and [39] is marked as “GRA1”, while the GRA algorithm in [35] is marked as “GRA”. This naming rule of the GRA algorithm will be applied in the corresponding section of algorithm performance comparison.

4 Proposed Algorithm

In this section, the flow chart of our proposed algorithm is given, and then the process of calculating the CEV of each candidate network and selecting the best network will be illustrated in detail. Furthermore, on the basis of the previous section, we use TC to represent the number of traffic classes considered.

4.1 Flow of Proposed Algorithm

In order to save the running time for the proposed algorithm to make network selection decisions, we optimize its flow chart, as shown in Fig. 1.

Fig. 1
figure 1

Flow chart of the proposed algorithm

Compared with the dynamic network conditions, both the subjective attribute weight and the subjective network utility value have certain stability. Hence, FAHP does not need to run at every decision point like SD and GRA do, but only needs to calculate the subjective attribute weight and the subjective network utility value under the way of offline operation. From Fig. 1, FAHP has been scheduled to run before the VH initiation phase. Its role in the entire algorithm is to provide S_AWV and S_UVV for the subsequent process of network ranking.

During the network ranking of each decision point, use the SD algorithm to obtain the objective attribute weight vector O_AW = (o_aw1, o_aw2,…, o_awn) according to the normalized decision matrix DM_N = (rij)m × n, and then use the GRA algorithm to obtain the objective network utility values O_UV = (o_uv1, o_uv2,…, o_uvm)T with the help of O_AW and DM_N.

4.2 Calculation of the Comprehensive Evaluation Values (CEVs)

In the data preparation phase, the weight vectors of AW_FCM for TC traffic classes and the weight vectors of NW_FCMs for n attributes can be calculated directly by Eq. (1). The corresponding weight vectors are denoted by S_AWV and S_NWV respectively. That is:

$$ {\text{S}}\_{{\rm AWV}}\, = \,\{ {\text{s}}\_{{\rm awv}}_{k} |{\text{s}}\_{{\rm awv}}_{k} \, = \,({\text{s}}\_{{\rm aw}}_{1}^{k} ,{\text{ s}}\_{{\rm aw}}_{2}^{k} , \ldots ,{\text{ s}}\_{{\rm aw}}_{j}^{k} , \ldots ,{\text{s}}\_{{\rm aw}}_{n}^{k} ),0\, < \,{\text{s}}\_{{\rm aw}}_{j}^{k} \, < \,1,\quad 1\, \le \,j\, \le \,n,1\, \le \,k\, \le \,TC\} ; $$
$$ {\text{S}}\_{{\rm AWV}}\, = \,\{ {\text{s}}\_{{\rm awv}}_{k} |{\text{s}}\_{{\rm awv}}_{k} \, = \,({\text{s}}\_{{\rm aw}}_{1}^{k} ,{\text{ s}}\_{{\rm aw}}_{2}^{k} , \ldots ,{\text{ s}}\_{{\rm aw}}_{j}^{k} , \ldots ,{\text{s}}\_{{\rm aw}}_{n}^{k} ),0\, < \,{\text{s}}\_{{\rm aw}}_{j}^{k} \, < \,1,\quad 1\, \le \,j\, \le \,n,1\, \le \,k\, \le \,TC\} ; $$

In order to obtain the subjective utility value of each network for each traffic class, we form the vectors of S_AWV and S_NWV into the matrix MofS_AWV = (s_awij)TC × n and the matrix MofS_NWV = (s_nwij)n × m. Then let the result of MofS_AWV × MofS_NWV be MofS_UVV = (s_uvij) TC × m. Each row of MofS_UVV is the subjective utility value vector of all alternatives for the corresponding traffic class. Hence, the set of the subjective utility value vectors of each network for all traffic classes S_UVV = {s_uvvk| s_uvvk = (s_uv k1 , s_uv k2 ,…, s_uv k j ,…, s_uv k m )T, 0 < s_uv k j  < 1, 1 ≤ j ≤ m, 1 ≤ k ≤ TC} has been obtained.

So far, FAHP has completed its work. After the terminal encounters a decision point, our algorithm enters the dynamic network sorting phase. Once the index of the running traffic class is identified (denoted by k), the three kinds of information related to it are determined, namely the subjective attribute weight vector s_awvk, the subjective network utility value vector s_uvvk, and the three adjustment coefficients (αk, βk, γk).

The normalization process of decision matrix DM can be carried out in parallel with the above identification of traffic class. According to the characteristics of the computational steps of SD and GRA introduced in the section above, we carefully choose an efficient normalization method, which matches the two algorithms very well, to generate DM_N. It consists of the following steps.

Step 1. Divide the attributes considered into different types. In the field of wireless communication, although there are many types of attributes, this paper only considers the two most commonly used, namely, benefit type and cost type. The former is the higher its value, the better the communication quality or the more the users like it, such as available bandwidth, data transfer rate, received signal strength (RSS); the latter is the opposite, such as delay, jitter, and monetary cost.

Step 2. Use Eq. (8) to complete the normalization process of DM = (vij)m × n.

$$ r_{ij} = \left\{ {\begin{array}{ll} {\frac{{v_{ij} - \mathop {\hbox{min} }\limits_{1 \le i \le m} (v_{ij} )}}{{\mathop {\hbox{max} }\limits_{1 \le i \le m} (v_{ij} ) - \mathop {\hbox{min} }\limits_{1 \le i \le m} (v_{ij} )}},\quad {\text{for benefit type}}} \\ {\frac{{\mathop {\hbox{min} }\limits_{1 \le i \le m} (v_{ij} ) - v_{ij} }}{{\mathop {\hbox{max} }\limits_{1 \le i \le m} (v_{ij} ) - \mathop {\hbox{min} }\limits_{1 \le i \le m} (v_{ij} )}},\quad {\text{for cost type }}} \\ \end{array} } \right. $$
(8)

The normalized decision matrix DM_N = (rij)m × n obtained by Eq. (8) contains several 0s and 1s in each column, representing the minimum and maximum utility of the corresponding attribute respectively. This will bring a lot of benefits to SD and GRA. For the SD method, the variance of each attribute can be calculated faster. For the GRA algorithm, the effect of promotion is more obvious. This is because the reference sequence has been composed of n components of 1, namely Y = (y1, y2,…, yn) = (1, 1,…, 1). The maximum and minimum values of the absolute difference matrix of the reference sequence and the comparison sequences are 1 and 0 respectively and yj − xij = 1− xij≥ 0, 1 ≤ j ≤ n. Hence, we can safely simplify Eq. (7) into Eq. (9). From the viewpoint of the calculation formula Eq. (9), GRA here is much simpler than original TOPSIS.

$$ GRD_{i} = \frac{1}{{\frac{1}{\rho }\sum\limits_{j = 1}^{n} {w_{j} (1 - x_{ij} )} + 1}},1 \le i \le m $$
(9)

Through this normalization technology, both SD and GRA can get O_AW and O_UV quickly. Then through linear synthesis method, the comprehensive attribute weights C_AW = (c_aw k1 , c_aw k2 ,…, c_aw k n ), the comprehensive network utility values C_UV = (c_uv1, c_uv2,…, c_uvm)T, and the comprehensive network evaluation values C_EV = (c_ev1, c_ev2,…, c_evm)T are respectively obtained by with the adjustment coefficients (αk, βk, γk).

Obviously, the importance of the two components involved can be changed by adjusting the corresponding adjustment coefficient in each merging process. For a merging process, if the adjustment coefficient is zero, it means that the importance of the first component is neglected in the synthesis result, and the synthesis result is the second component. Similarly, if the adjustment coefficient is 1, it means that the second component is ignored, and the first component is the comprehensive result. Generally speaking, the purpose of running an algorithm is to output results. If these results are neglected, the corresponding algorithm does not influence the final result of the hybrid algorithm, that is, the algorithm whose output results are neglected does not work. Table 2 shows the influence of the adjustment coefficients on the three algorithms involved.

Table 2 Influence of the adjustment coefficients on the three algorithms

It can be seen from Table 2 that only when the adjustment coefficients are all on (0, 1), the three algorithms involved work together. Therefore, the subsequent experimental simulations in this paper only consider the cases where all the adjustment coefficients are on (0, 1).

4.3 Determination of the Optimal Network

Assuming that the network i is being attached by the user equipment (UE), but the other network j has the highest CEV. Their comprehensive utility values are Ui and Uj respectively. Then let Δ = Uj − Ui, Δ > 0. The greater the value of Δ is, the better the network j is, compared to the network i. Moreover, if Δ is very close to zero, it means these two networks have almost the same quality. If the UE switches to the network j under this circumstance, then there is almost no benefit from such a vertical handoff. We define such a vertical handoff herein as “unnecessary vertical handoff”. At the moment, the UE should abandon this small profit and not switch to the network j. However, it is subjective to determine whether a vertical handoff is unnecessary. To this end, a tiny threshold δ (0 ≤ δ < 1) is introduced to identify unnecessary handovers (Δ ≤ δ). And such a handoff occurs only when Δ > δ.

Therefore, the greater the value of δ is, the more the mechanism can reduce the number of unnecessary vertical handoffs. However, if δ is too large, it will also hinder some normal necessary vertical handoffs. Therefore, the setting of δ is a compromise between preventing unnecessary switching and allowing normal necessary switching.

In conclusion, according to the algorithm flow designed in this paper, FAHP only works under the way of offline operation, and only SD and GRA are running at each decision point. It means that the complexity and processing delay of the proposed algorithm are mainly determined by the combination of SD and GRA. Therefore, the time complexity of the proposed algorithm is Ο (mn). The processing delay at each decision point mainly includes the normalization of the decision matrix DM, the running of SD and GRA, and the sorting of the comprehensive evaluation values of all alternatives.

5 Simulation Experiment and Performance Analysis

In this section, we present our heterogeneous network scenario and its parameter settings for experimental simulation, and then use FAHP to calculate the subjective attribute weight vectors and the subjective network utility values for different traffic classes. At last, based on the numerical results, we perform in-depth performance analysis with four other existing hybrid MADM algorithms.

5.1 Simulation Scenario and Its Parameter Settings

As shown in Fig. 2, four kinds of disparate alternative networks (i.e., GPRS, UMTS, LTE-A, WLAN) form a heterogeneous network scenario. The first three networks are wide area networks and we assume that the coverage of their signals is the whole simulation area. Only WLAN is a local area network and thus we assume the circular area with a blue boundary border is its signal coverage.

Fig. 2
figure 2

Simulation scenario

In order to ensure that the mobile terminal (labelled UE and hereafter abbreviated as UE) is always in the environment overlapped by all four networks, we assume that the UE moves randomly at low speed in its moving zone (the smaller gray circular area). Meantime, the four typical 3GPP traffic classes (i.e., Conversational class, Streaming class, Interactive class, and Background class) can be smoothly run in the UE.

In order to facilitate the performance comparison with other MADM methods, we carefully consider the following six attributes for each alternative network, including available bandwidth (B), latency (D), delay jitter (J), packet loss ratio (L), bit error rate (E), and service price (C). In these attributes, only B is a benefit attribute, while others belong to cost attributes. Their possible values (or intervals) for all alternatives are listed in Table 3.

Table 3 Simulation parameters

As seen from Table 3, only B and C are static attributes, while each of the other four attributes is valued in an interval to indicate that it is a dynamic attribute. For these dynamic attributes, their values of different networks form a jagged, interlocking pattern. This leads to no existence of the best or worst network for all attributes so that every network has the opportunity to be selected.

According to our algorithm flow shown in Fig. 1, the adjustment coefficients are used to synthesize attribute weight, network utility value, and network evaluation value respectively. And the threshold δ determines whether the terminal will switch from the current network to the network with the highest CEV. Therefore, the setting of the adjustment coefficients and δ is subjective. This makes our algorithm flexible and adaptable to the environment. Through many simulation experiments, their values are constantly modified. We finally determine the values of the adjustment coefficients (as shown in Table 4) and let δ be 0.01.

Table 4 Adjustment coefficients for four traffic classes

From Table 4, the importance of FAHP is not less than that of SD and GRA when respectively synthesizing attribute weights and utility values. But the two angles of attribute weight and utility value play an equally important role in synthesizing the evaluation value of each alternative.

So far all the parameters needed for the simulation have been provided. We can safely get the following basic information.

(1) The set of all traffic classes TrafficClassesSet = {conversational class, streaming class, interactive class, background class}

(2) The set of all alternatives NetworksSet = {GPRS, UMTS, LTE-A, WLAN}

(3) The set of attributes AttributesSet = {B, D, J, L, E, C}

In addition, based on the above meaning sets for m, n and TC in Sects. 3 and 4, their values are 4, 6, 4, respectively. According to our algorithm flow shown in Fig. 1, the subjective attribute weights and the network utility values for different traffic classes must be calculated before sorting all the alternatives at a decision point.

5.2 Calculation of Subjective Attribute Weights and Utility Values

We can get a hierarchical structure model of FAHP, as shown in Fig. 3.

Fig. 3
figure 3

Hierarchical structure model of fuzzy analytic hierarchy process (FAHP)

For the sake of simplicity, the conversational class herein refers to the voice session class, rather than video phone class which belongs to the streaming class.

In order to distinguish the four types of services distinctly to facilitate the setting of subjective attribute weights, this paper makes the following restrictions or modifications on the basis of the original 3GPP four types of services.

(1) Conversational class. It refers to voice traffic rather than video phone traffic belonging to the Streaming class.

(2) Streaming class. Its real-time requirement is only lower than that of conversational class.

(3) Interactive class. All instances of it are interactive.

(4) Background class. All of its instances are background traffic applications that are not interactive.

Moreover, we use four natural numbers (i.e., 1–4) to measure the sensitivity of a traffic class to an attribute. The larger the number, the more sensitive the traffic class is to the attribute. According to the different QoS requirements of the four traffic classes of 3GPP, we quantify the requirements of each traffic class for the attributes considered, as shown in Table 5.

Table 5 Quantization requirements of each traffic class for each attribute

According to the criterion layer, four FCMs for the four traffic classes in TrafficClassesSet are set up. And then use Eq. (1) to get their weight vectors respectively. Each of these weight vectors is the subjective attribute weight vector for the corresponding traffic class. These matrices and their corresponding weight vectors are illustrated in (a)–(d) of Table 6.

Table 6 Fuzzy consistent matrix (AW_FCM) and its weight vector (s_awv) for each traffic class

From Table 6, the subjective weights of D and J for both Conversational class and Streaming class are significantly higher than the corresponding values for the other two traffic classes. By contrast, the subjective weights of E and L for both Interactive class and Background class are significantly higher than the corresponding values for the other two traffic classes. Among the four types of services, the weight of B for Streaming class and the weight of C for Interactive class are the highest respectively. Hence, the distribution of these weights for each traffic class is consistent with Table 5 and reasonable.

Moreover, based on the scheme layer and six attributes in the criterion layer, six NW_FCMs for the six attributes are established. Equation (1) is used again to get their respective weight vectors. These matrices and their corresponding weight vectors are shown in (a)–(f) of Table 7.

Table 7 Fuzzy consistent matrix (NW_FCM) and its weight vector (s_nwv) for each attribute

Then the S_UVV is obtained and shown in Table 8.

Table 8 Subjective utility values of all alternatives for each traffic class

As can be seen from Table 8, among the four networks, the subjective utility values of LTE-A and UMTS for each traffic class rank first and second, respectively. In the four traffic classes, only the subjective utility value of WLAN for Interactive class is higher than that of GPRS. This shows that for the four traffic classes, LTE is the most popular while UMTS is the second; WLAN is the last network to be connected except Interactive class. Of course, it should be noted that these conclusions are based only on the subjective preferences given in this paper and are not universal. In practical applications, these preferences can be adjusted.

5.3 Comparison with Other Algorithms

In accordance with the above parameters, we compare the proposed algorithm (called FAHP-SD-GRA-T) with the other four existing algorithms (AHP-GRA [35], FAHP-SD-GRA1 [39], E-GRA1 [33], and AHP-GRA2 [36]) by experimental simulation. The detailed difference between GRA and its deformation algorithms involved is at the end of Sect. 3. To be fair, each algorithm has the same subjective attribute weight vector (if necessary) for each traffic type. Based on Table 3, 1000 decision points (i.e. 1000 different decision matrices) are generated randomly by MATLAB software. On the basis of these 1000 decision points, the optimal network selection performance of these five algorithms for each traffic class is compared.

In this simulation process, the gradual increases of the numbers of vertical handoffs of the five algorithms for each traffic class are shown in (a)–(d) of Fig. 4.

Fig. 4
figure 4

Numbers of vertical handoffs of different algorithms for each traffic class

It can be seen from Fig. 4 that the numbers of vertical handoffs of all the five algorithms increase with time, but only our algorithm has the lowest increase rate in the number of vertical handoffs all the time. At the end of simulation, the numbers of vertical handoffs of our algorithm for the four traffic classes are 89, 87, 313 and 262 respectively. But the numbers of vertical handoffs of E-GRA1 for all the traffic classes are the same, i.e. 567. This is because when sorting the alternatives E-GRA1 does not consider the user’s subjective preferences for different traffic classes, but only according to the objective network conditions. In addition, because the same subjective attribute weight vector for a specific traffic class is used, the growth of these four algorithms (excluding E-GRA1) is generally similar. The other three algorithms (AHP-GRA, FAHP-SD-GRA1 and AHP-GRA2) show similar performance in terms of the numbers of vertical handoffs for all the traffic classes. Their numbers of vertical handoffs for both Interactive class and Background class are significantly higher than the corresponding values for the other two traffic classes, even higher than the corresponding values of E-GRA1. Hence, from the viewpoint of the number of vertical handoffs for each traffic class, our algorithm outperforms the other four algorithms.

In addition, among the five algorithms, only our algorithm uses a threshold δ to select the most suitable network on the condition that all the alternative networks have been sorted, thus preventing many unnecessary vertical handoffs (as defined in Sect. 4.3). The specific details in this regard are shown in (a)–(d) of Fig. 5.

Fig. 5
figure 5

The effect of threshold δ on controlling unnecessary vertical handoffs

It can be seen from Fig. 5 that with help of δ, our algorithm has respectively prevented 5, 12, 20, 21 unnecessary vertical handoffs for the four traffic classes. These unnecessary vertical handoffs account for 5.3191%, 12.1212%, 6.2874%, and 7.0922% of the corresponding vertical handoffs for each traffic class. Since there is no such a filtering mechanism, the other four algorithms always switch to the network with the highest ranking value. In addition, the unnecessary vertical handoff defined in this paper is based on threshold. Hence, there is no unnecessary vertical handoff in these algorithms. To investigate the effect of the threshold δ on reducing the total number of handoffs, we assume that these algorithms also use the same filtering mechanism as ours. Figure 6 respectively shows the number of vertical handoffs that can be prevented by these algorithms for different traffic classes.

Fig. 6
figure 6

Selected nets of different algorithms for each traffic class

The number of vertical handoffs that can be prevented by FAHP-SD-GRA1 is the highest among four traffic classes. Among them, the maximum is 143 for Interactive class and 79 for Conversational class. However, even though all of the four algorithms use the same filtering mechanism, the total numbers of vertical handoffs of our algorithm for different traffic classes are still the lowest.

Before we compare the performance of each algorithm in reducing the ping-pong effects, it is necessary to analyze the time-varying network selections of each algorithm for each traffic class, as shown in (a)–(d) of Fig. 6.

For each sub graph in (a)–(d) of Fig. 6, the direction of the broken line is divided into two types: horizontal and vertical. The former indicates that the UE stays on the current network, while the latter indicates that the UE has made vertical handoff. The longer the horizontal broken line is, the longer the UE stays in the corresponding network, and the fewer vertical handovers it makes. The denser the vertical broken line is, the higher the frequency of vertical handoff is. If the dense state of vertical broken line is more concentrated, it means that ping-pong effects occur between these networks.

According to the rules above, as can be seen from Fig. 6, each network is selected at least once by each algorithm for each traffic class. And it is easy to know that LTE-A is the most frequently selected by all algorithms. Moreover, in the four graphs of our proposed algorithm for four types of services, the horizontal line length is longer and the vertical line density is lower. It means that for our algorithm, the UE is less likely to switch and stays on the current network as long as possible. This is especially true for Conversational class and Streaming class. For the other two types of services, our algorithm is still superior to the other four algorithms although the degree of advantage is somewhat reduced. For each traffic class, the number of times each network is selected by each algorithm and the number of times the ping-pong effect occurs is shown in (a)–(b) of Fig. 7.

Fig. 7
figure 7

The numbers of selected networks and ping-pong effects for each traffic class

It can be seen from Fig. 7 that for each traffic class, each network is selected at least once by the corresponding algorithm. However, LTE-A is the most popular network, followed by UMTS. For the four traffic classes, LTE-A is selected by our algorithm 954 times, 955 times, 802 times, and 848 times respectively. These numbers are the highest compared with those of other algorithms. Since there are only 1000 decision points in total, other networks are less likely to be selected (some networks are selected even less than five times). This makes our algorithm produce the lowest number of ping-pong effects among the five algorithms. The corresponding times are 44, 43, 122, and 104, respectively. For the Interactive class and Background class, the corresponding selected times of other networks have significantly increased. It makes the number of the ping-pong effects of these algorithms exceed 100 (up to 190).

In summary, according to our simulation, all the five algorithms can accurately select the optimal network. But our algorithm calculates the comprehensive evaluation value from the comprehensive attribute weight and the comprehensive network utility value, taking into account both subjective and objective factors. What’s more, our algorithm uses a threshold to reduce the unnecessary vertical handoffs. Therefore, our algorithm is superior to the other four algorithms in controlling the number of vertical handoffs and reducing the ping-pong effects.

6 Conclusion

Motivated by the existing hybrid MADM algorithms in the available literature, we propose an integration of the three methods (FAHP, SD, GRA) and a threshold to compute the comprehensive evaluation value of each alternative and then select the most suitable (not necessarily the best) target network to access. According to the characteristics of these three methods, the following three strategies are used to optimize the algorithm flow. Firstly, FAHP is scheduled to run in the data preparation phase. After the subjective attribute weight and the subjective network utility value are obtained, no matter how dynamic the values of the network parameters are, FAHP will not run unless the system model changes. Secondly, choose a Max–Min normalization method which is suitable for both SD and GRA to deal with the original decision matrix. The normalized decision matrix effectively simplifies their original core calculation formula. Thirdly, the above three MADM methods are synthesized by linear synthesis with a set of adjustment coefficients related to specific traffic classes.

According to the optimized process, the comprehensive evaluation value of each network is calculated. First, in the dynamic network sorting phase, the SD algorithm obtains the objective attribute weight. At the same time, according to the specific traffic class, the corresponding subjective attribute weight, subjective network utility value, and three pre-set adjustment coefficients are fetched. Then, the first adjustment coefficient is used to synthesize the subjective attribute weight and the objective attribute weight to get the comprehensive attribute weight. The objective utility value of the network is obtained by using GRA and objective attribute weights. It is worthwhile to use the second adjustment coefficient to integrate the subjective utility value and the objective utility value to get the comprehensive utility value. The utility value from the angle of attribute weight and the comprehensive utility value can be obtained by synthesizing SAW and the comprehensive attribute weight with the third adjustment coefficient. And then the comprehensive evaluation value of each network can be obtained. Finally, in the optimal network selection phase, a simple threshold filtering mechanism is used to remove unnecessary vertical handoffs. The simulation results show that the proposed algorithm is superior to the existing four algorithms in reducing the numbers of vertical handoffs and ping-pong effects.

It is worth noting that the algorithm proposed in this paper does not consider network load balancing. Therefore, in future research, we will consider expanding the algorithm proposed in this paper, so as to quickly find the optimal target network access scheme in heterogeneous network scenarios with multi-user (or terminal) and multi-service competing resources. This scheme can not only satisfy all users’ QoS requirements for different services, but also take into account the network load balancing problem and reduce the blocking rate of access requests.