Web services are interfaces that describe a collection of operations that are network-accessible through standardized Web protocols. When a required operation is not found, several services can be compounded to get a composite service that performs the desired task. To find this composite service, a search process over a huge search space must be performed. The algorithm that composes the services must select the adequate atomic processes and, also, must choose the correct way to combine them using the different available control structures. In this paper a genetic programming algorithm for Web services composition is presented. The algorithm has a context-free grammar to generate the valid structures of the composite services. Moreover, it includes a method to update the attributes of each node. A full experimental validation with a repository of 1,000 Web services has been done, showing a great performance as the algorithm finds a valid solution in all the tests.
Keywords: Web service, composition, genetic programming