• No results found

In this Chapter we presented four novel approaches to network-aware and QoS based web service composition in the cloud. Contrary to current works, the approaches separate QoS of network from web service QoS. They leverage

LADMF proposed in the previous Chapter to estimate end-to-end network distance of a composite service. The four algorithms use different strategies for handling QoS and network distance information during optimization. The first approach is an enhanced NSGA-II algorithm called INSGA which uses unique ND-Crossover and ND-Mutation operators to alter genes with poor fitness and crowding distance into genes having good fitness and crowding distance. The second approach is a Kmean-based NSGA-II algorithm called KNSGA which uses Kmean clustering in its K-Mutation operator to alter poor latency genes with good latency genes that are in the same Kmean cluster as their reference genes. The third approach is a multi-population based non-dominated sort PSO algorithm known as NMPSO. NMPSO uses information from two populations; one population which searches for good latency solutions, and the other population that searches for a Pareto set with optimal QoS. NMPSO uses best solutions from both populations to update particle positions and guide search towards optimal Pareto set with low latency and QoS optimal compositions. The last approach is a Non-dominated Sort Fruit fly optimization algorithm called NFOA which uses its strength of working with network coordinates coupled with non-dominated sorting to search for network positions of composite services with optimal QoS. The four algorithms were compared and their performance and optimality were evaluated against other techniques such as linear integer programming (LIP), traditional PSO and NSGA-II algorithms. Experimental results show that INSGA finds best quality solutions among the algorithms, although at the cost of performance. This is due to its unique ND-Crossover and ND-Mutation operators which retain genes with good fitness and crowding distance and significantly alters genes with bad fitness and crowding distance. Results also show that NMPSO, KNSGA and NFOA have a better balance between performance and optimality. This is because they utilize less

computations and resources than INSGA. NMPSO demonstrated the best performance in a large scale environment. This is due to its number of computations which is less when compared to the other proposed algorithms. Finally, our proposed penalty-based constraint handling strategy outperformed the standard constraint handling strategy of NSGA-II in maintaining better population diversity of Pareto set under strict global constraints.

C

HAPTER

5

A New Method for Network-aware Service Composition in

Dynamic Environment

In the previous chapter, we introduced for unique evolutionary algorithms for Network-aware and QoS based web service composition. The techniques proposed focus on solving our research problem under static environment i.e. environment where QoS values remain unchanged during the optimization process. However they may not be able to perform effectively in a dynamic environment i.e. environment where QoS values fluctuate constantly such as a real world environment. To further emphasize this point, we evaluate the four proposed algorithms in Chapter 4 using rapidly changing QoS scores to simulate a real world environment. From Figure 5.1, it is observed that the ability for each of the presented algorithms to find a globally optimal Pareto front has been negatively affected due to fluctuations in the QoS values. In the figure, each algorithm converged in local optimum when compared to their results in static environment (i.e. Figure 4.15a). This result shows that the presented algorithms do not fare well in real world service composition scenario.

Figure 5.1: Variation in average fitness using dynamic QoS values

Part of the reason for their ineffectiveness is due to the use of exact values for RTT which impacts their overall optimality and performance in dynamic environment. We believe that if the network latency metric was used in qualitative form, it would have been easier for the algorithms to cope in dynamic setting. Another reason why RTT of a path should be represented as a qualitative metric rather than a quantitative one is because consumers in the real world are hardly interested in whether or not the end-to-end RTT of a composition is optimal, instead they may be more interested in knowing if it is high enough to provide satisfactory network performance. Therefore, it is important to develop other evolutionary techniques that perform better than the previous algorithms in a dynamic environment. Motivated by this necessity, we propose a novel technique to search for low latency and QoS-optimal compositions in a dynamic cloud environment.

As previously covered in Chapter 2, QoS-based service composition in dynamic environment has been tackled using techniques classified as either internal [99- 107] or external [108-110] adaptation methods. Generally, internal adaptation techniques are known to be efficient in solving the problem however they have poor optimality. External adaptation techniques on the other hand are capable of producing better solutions, however they are very slow when compared to the former. In this study we propose an enhanced internal adaptation technique based on cellular automaton-based NSGA-II algorithm or CellGA for short. One might argue that an external adaptation technique is more suitable for a dynamic environment than an internal adaptation technique. However due to their poor computation times, external adaptation techniques are inefficient in large dynamic service environments. Also, because we are dealing with real time changes in QoS, it is important for the composition algorithm to be able to quickly find a near-optimal solution. Any slight delay in operation due to QoS fluctuation will lead to poor consumer experience. Thus, CellGA aims to quickly find a near- optimal Pareto set immediately after it has observed a change in QoS values. In real world this change usually implies that one or more web services that are part of the composition process have become unavailable or have been affected by network or server conditions.