Future Generation Computer Systems 88 (2018) 284–296 Contents lists available at ScienceDirect Future Generation Computer Systems journal homepage: www.elsevier.com/locate/fgcs Evolutionary solutions for resources management in multiple clouds: State-of-the-art and future directions Juliana Oliveira de Carvalho a, b, c , *, Fernando Trinta a , Dario Vieira c , Omar Andres Carmona Cortes d a Federal University of Ceará (UFC), Fortaleza, CE, Brazil b Federal University of Piauí(UFPI), Picos, PI, Brazil c EFREI-Paris, Paris, France d Federal Institute of Maranhão (IFMA), São Luis, MA, Brazil highlights Evolutionary computation use for resources management in multi-cloud. A classification for application management in multi-cloud. A definition of resources for multi-cloud. A taxonomy for classifying the resources management in multi-cloud. article info Article history: Received 1 January 2018 Received in revised form 19 April 2018 Accepted 30 May 2018 Keywords: Resource management Multiple clouds Evolutionary algorithms abstract Even though multiple clouds tackle the problem of vendor lock-in, portability and interoperability are still a challenge from the perspective of both user and provider. Resources management, which is an NP-Hard problem according to the literature, must be addressed to obtain both portability and interoperability. Several optimization techniques have been used to deal with this issue and, among them, evolutionary computation has received considerable attention due to its flexibility and efficiency. In such, to the best of our knowledge, our paper is the first in the literature to investigate the multiple clouds resources management from the user perspective, which presents and discusses works that propose solutions using evolutionary computation. To analyze those works, it is mandatory to know all demands of the users and applications; consequently, it is necessary to identify what a resource is and how it can be managed in multiple clouds. We also present demands of the users for an application management in the multiple clouds approach. Therefore, we propose a definition and a classification of resources in multiple clouds and three taxonomies related to the multiple clouds resources management. Finally, we point out some trends and future directions. © 2018 Elsevier B.V. All rights reserved. 1. Introduction The cloud computing proliferation is happening due to its es- sential characteristics pooling of resources, broad network access, measured service, on-demand self-service, and rapid elasticity [1]. Consequently, users receive their own advantages, as the resources are presented as an inexhaustible source, the payment is made * Corresponding author at: Federal University of Ceará (UFC), Fortaleza, CE, Brazil. E-mail addresses: julianaoc@gmail.com (J.O. de Carvalho), fernando.trinta@dc.ufc.br (F. Trinta), dario.vieira@efrei.fr (D. Vieira), omar@ifma.edu.br (O.A.C. Cortes). according to usage, and they do not need to worry about infras- tructure and services updates, thus reducing the cost for compa- nies. Therefore, many cloud providers have stepped in to meet user needs, but those needs have become rather specific. Thus, those users who want to change providers need to rebuild their applications, making the user a hostage of a cloud provider. This situation is commonly known as the vendor lock-in problem. One way of handling the vendor lock-in problem is using multi- ple clouds. According to NIST [2], and Dana Petcu [3], an application in multiple clouds utilizes resources of distinct clouds geograph- ically, sequentially or simultaneously. The sequential form occurs when an application or service is moved from one cloud to another, whereas the simultaneous method happens when different clouds services are used in parallel. Dana Petcu [3] classifies different https://doi.org/10.1016/j.future.2018.05.087 0167-739X/© 2018 Elsevier B.V. All rights reserved.