Improvement of Self-optimizing in Selection and Composition of Services Using Reinforcement Learning Algorithm Based on Convex Hull Hadis khorasaniNasab Abbasi Eslam Nazemi Faculty of Science& Computer Engineering Faculty of Science& Computer Engineering Shahid Beheshti University Shahid Beheshti University Tehran, Iran Tehran, Iran Email:Hadis.khorasani@gmail.com Email:nazemi@sbu.ac.ir AbstractWeb services are implemented by using many atomic or composite services. In a dynamic environment, some Web services require to select a service with defined Quality of Services(QoS) through runtime adaptation in changeable environments. In alignment with user satisfaction requirements, in selection of services a tradeoff between QoS should be considered, especially at runtime adaptation in dynamic environments. There are many methods for service selection and composite services with priority of QoS, but they do not predict optimizing service composition in the large scale environment. A self-optimizing method just continually adjusts the control service's parameters that pass to other services. In this paper, in a self-optimizing method, the goal and the procedure for selection and composition of optimal services are proposed. It includes three parts, services are limited in a defined scope by convex hull algorithm and then the optimal services are chosen by the divide-and-conquer algorithm. The optimal service selection is as input parameter goes to service composition algorithm. The QoS metrics taken into account and measured for the optimal service include response time, availability, throughput and reliability. The simulation results show that the system user satisfaction gradually increases by about 10% compared with the results of previous methods and show that the execution time is comparatively decreased by half. Keywords-text; self-adaption; self-optimizing; service composition; Reinforcement Learning; convex hull. I. INTRODUCTION Service-oriented environments have become more and more important in recent years, where various kinds of Web services and service-based processes are gathered within a certain domain or across domains [1][2]. They give people the ability to make, manage and share their own services, and make it possible to compose them based on a user's needs, providing them with extra value [1]. As reported in some previous studies on service selection, QoS attributes of atomic services are gathered for calculating the QoS of composite services in service composition environments [2][3]. Self-optimizing is considered a QoS optimization problem, choosing atomic services generating the highest QoS overall value as optimized solution [4][5]. It is presumed by most existing methods that QoS attributes pre-exist and QoS information of atomic services does not change. So, the ranking of declared QoS values is what determines the selection of a self- optimizing service. These approaches, however, have various constraints when the following problems are considered in the real environment. Firstly, service-oriented systems have various possible services because of the way they operate in distributed heterogeneous environments. Furthermore, existing services are ever-changing, so the selector should have the ability to adapt automatically to the dynamic environment. Finally, system should select optimal services based on QoS in reasonable time to meet user requirements. In this paper, we propose a method for selecting and composition of services based on the self-optimizing. This is very important in service selection, because this kind of method can autonomously react to dynamic environments during its life cycle and adapt to them. This feature is very useful, and the reason is that nowadays, all services are distributed in large scale environment and they are always changing, so the system needs the method which can adapt to them. The self-optimizing method is also able to automatically improve behaviors by itself continually. It is considered as one of its features because one of the concerns for service composition in previous methods is selecting optimal services based on QoS. The rest of the paper is organized as follows: In Section II, related works are discussed. Section III introduces a self- optimizing Method and process variability. Section IV demonstrates the validity of the proposed method by a series of simulation experiments. Finally, Section V draws some conclusions. II. RELATED WORK In this section, some related work from the perspectives of the self-optimizing service selection and composition based on QoS is introduced. With the growth of Cloud Computing, Service Oriented Architecture (SOA) and Software as a service, possible services with similar functions but different QoS increase in numbers, which has made it far more difficult to select and compose services [5]. This has led to growing research in composition of QoS-aware Web service in SOA and Service-Oriented Computing (SOC) fields [6][7][8]. Yet, service composition is currently done mostly via approaches that utilize a semi-optimal approach relying on a single goal, instead of using Pareto optimal solutions that take into account the balance between various QoS objectives [9]. One sophistication that may arise is when a user quickly requires a service with a specific cost and certain performance, yet with increased availability. In real world usage, however, distinct dimensional attributes may not be compatible with one another. 44 Copyright (c) IARIA, 2018. ISBN: 978-1-61208-610-1 ADAPTIVE 2018 : The Tenth International Conference on Adaptive and Self-Adaptive Systems and Applications