Abstract
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 in a, generally, 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 and, also, it includes a method to update the attributes of each node. Moreover, the proposal tries to minimize the number of services, and looks for compositions with the minimum execution path. A full experimental validation with four different repositories with up to 1,090 web services has been done, showing a great performance in all the tests as the algorithm finds a valid solution with a short execution path.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
In OWL-S a process is used with the same meaning as a service. Thus a single service is named as an atomic process, and composite services are named as composite processes. We use this notation in the grammar that describes the chromosomes of our evolutionary algorithm.
This complexity is for the worst case: a composition which uses all the services of the repository. However, if we knew in advance the size of the composition (this is, in general, not truth), the complexity would be \(O\left({\frac{n!} {(n-p)!}}\right)\), where p is the number of services of the composition.
In a complete binary tree every level, except possibly the last, is completely filled, and all nodes are as far left as possible.
These times have been obtained with an Intel Xeon(R) Quadcore E5320 1.86GHz processor with 8GB of RAM, and the algorithm was implemented in Java and run on Linux.
References
Aiello M, van Benthem N, Khoury E (2008) Visualizing compositions of services from large repositories. In: Proceedings of the fifth IEEE conference on enterprise computing, e-commerce and e-services (EEE’08). IEEE Computer Society, Washington, DC, pp 359–362.
Alamri A, Eid M, Saddik AE (2006) Classification of the state of the art dynamic web services composition techniques. Int J Web Grid Serv 2(2):148–166
Alonso G, Casati F, Kuno H, Machiraju V (2003) Web services. Springer, Berlin
Anderson BB, Hansen JV, Lowry PB (2009) Creating automated plans for semantic web applications through planning as model checking. Expert Syst Appl 36(7):10595–10603
Aversano L, di Penta M, Taneja K (2006) A genetic programming approach to support the design of service compositions. Int J Comput Syst Sci Eng 4:247–254
Bansal A, Blake MB, Kona S, Bleul S, Weise T, Jaeger MC (2008) WSC-08: continuing the web services challenge. In: Proceedings of the 5th IEEE international conference on enterprise computing, e-commerce and e-services (EEE’08). IEEE, pp 351–354
Bertoli P, Pistore M, Traverso P (2010) Automated composition of web services via planning in asynchronous domains. Artif Intell 174(3–4):316–361
Blum AL, Furst ML (1997) Fast planning through planning graph analysis. Artif Intell 90(1–2):281–300
Chang W-C, Wu C-S, Chang C (2005) Optimizing dynamic web service component composition by using evolutionary algorithms. In: Proceedings of the 2005 IEEE/WIC/ACM international conference on web intelligence (WI’05). IEEE Computer Society, Washington, DC, pp 708–711
Curbera F, Goland Y, Klein J, Leymann F, Roller D, Thatte S, Weerawarana S (2002) Business process execution language for web services, version 1.0, November 2002. Standards proposal by BEA Systems, International Business Machines Corporation, and Microsoft Corporation
Curbera Francisco, Nagy William A., Weerawana Sanjiva (2001) Web Service: Why and How. In: Proceedings of the OOPSLA-2001 workshop on object-oriented services. Tampa, Florida, USA
Dustdar S, Schreiner W (2005) A survey on web services composition. Int J Web Grid Serv 1(1):1–30
Hoffmann Jörg, BP, Pistore M (2007) Web service composition as planning, revisited: in between background theories and initial state uncertainty. In: Proceedings of the 22nd national conference on artificial intelligence (AAAI’07). AAAI Press, pp 1013–1018
Klusch M, Gerber A (2006) Fast composition planning of owl-s services and application. In: Proceedings of the European conference on web services (ECOWS’06). IEEE Computer Society, Washington, DC, pp 181–190
Kuster U, Konig-Ries B, Krug A (2008) Opossum—an online portal to collect and share sws descriptions. In: Proceedings of the 2th IEEE international conference on semantic computing (ICSC 2008). IEEE Computer Society, Santa Clara, pp 480–481
Madhusudan T, Uttamsingh N (2006) A declarative approach to composing web services in dynamic environments. Decis Support Syst 41(2):325–357
Martin D, Burstein M, Hobbs J, Lassila O, McDermott D, McIlraith S, Narayanan S, Paolucci M, Parsia B, Payne T, Sirin E, Srinivasan N, Sycara K (2004) OWL-S: semantic markup for web services. World Wide Web Consortium (W3C), November 2004. Available at http://www.w3.org/Submission/OWL-S/
Nau D, Au T-C, Ilghami O, Kuter U, Murdock W, Wu D, Yaman F (2003) SHOP2: an HTN planning system. J Artif Intell Res 20(4):379–404
Oh S-C, Lee D, Kumara SRT (2006) A comparative illustration of ai planning-based web services composition. SIGecom Exch 5(5):1–10
Oh S-C, Lee D, Kumara SRT (2008) Effective web service composition in diverse and large-scale service networks. IEEE Trans Serv Comput 1(1):15–32
Pistore M, Marconi A, Bertoli P, Traverso P (2005) Automated composition of web services by planning at the knowledge level. In Proceedings of the 19th international joint conference on artificial intelligence (IJCAI’05). Morgan Kaufmann Publishers Inc, San Francisco, pp 1252–1259
Rao J, Küngas P, Matskin M (2006) Composition of semantic web services using linear logic theorem proving. Inform Syst 31(4):340–360
Ren K, Liu X, Chen J, Xiao N, Song J, Zhang W (2008). A QSQL-based efficient planning algorithm for fully-automated service composition in dynamic service environments. In: Proceedings of the 2008 IEEE international conference on services computing (SCC’08). IEEE Computer Society, Washington, DC, pp 301–308
Russell SJ, Norvig P (2009) Artificial intelligence: a modern approach. Prentice Hall, Englewood Cliffs
Sirin E, Parsia B, Wu D, Hendler J, Nau D (2004) Htn planning for web service composition using shop2. J Web Semant 1(4):377–396
Vanrompay Y, Rigole P, Berbers Y (2008) Genetic algorithm-based optimization of service composition and deployment. In: Proceedings of the 3rd international workshop on services integration in pervasive environments (SIPE’08). ACM, New York, pp 13–18
Wu Z, Gomadam K, Ranabahu A, Sheth AP, Miller JA (2007) Automatic composition of semantic web services using process and data mediation. In: Proceedings of the 9th international conference on enterprise information systems (ICEIS’07). Funchal, Portugal, pp 453–461
Xiangbing Z (2010) Semantics web service characteristic composition approach based on particle swarm optimization volume 56 of Lecture Notes in Electrical Engineering. Springer, pp 279–287
Zheng X, Yan Y (2008) An efficient syntactic web service composition algorithm based on the planning graph model. In: Proceedings of the 2008 IEEE international conference on web services (ICWS’08). IEEE Computer Society, Washington, DC, pp 691–699
Acknowledgments
This work was supported by the Spanish Ministry of Science and Innovation under Grant TSI2007-65677-C02-02. Manuel Mucientes is supported by the Ramón y Cajal program of the Spanish Ministry of Science and Innovation.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Rodríguez-Mier, P., Mucientes, M., Lama, M. et al. Composition of web services through genetic programming. Evol. Intel. 3, 171–186 (2010). https://doi.org/10.1007/s12065-010-0042-z
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12065-010-0042-z