A Novel Service Composition Algorithm for Cloud-Based Manufacturing Environment

Cloud Manufacturing Service Composition (CMSC) is the key issue and taking an important role in solving the interconnection and interoperability of resources and services for Cloud Manufacturing (CMfg). CMSC is a typical kind of NP-hard problems with the characteristics of dynamic and uncertainty. Solving large scale CMSC problem by using the traditional methods might be not efficient because of the massive complex resources and large-scale searching space. To overcome this shortcoming, a novel artificial bee colony algorithm named Multiple Improvement Strategies based Artificial Bee Colony algorithm (MISABC) is proposed. MISABC improves the performance of classical ABC algorithm through several strategies such as (a) differential evolution strategy (DES), (b) oscillation strategy with classical trigonometric factor (TFOS), (c) different dimensional variation learning strategy (DDVLS), (d) Gaussian distribution strategy (GDS). Meanwhile, to address the CMfg scenario, we also propose a manufacturing service composition scheme named as Multi-Module Subtasks Collaborative Execution for Cloud Manufacturing Service Composition (MMSCE-CMSC). Eight benchmark functions with different characteristics, a comparison study with existed improved ABC algorithms and a case study are used to validate the performance of the algorithm. The results demonstrate the effectiveness of the proposed method for addressing complex CMSC problem in CMfg.


I. INTRODUCTION
With the rapid development of intelligent information service technologies such as network information service technology, service-oriented architecture (SOA), communication technologies, etc., the traditional manufacturing model has been further disrupted and the pace of manufacturing industry upgrade is picking up. As a new intelligent manufacturing model, cloud manufacturing (CMfg) led by artificial intelligence technologies has become a next-generation manufacturing paradigm. Unlike the traditional manufacturing model such as networked manufacturing, CMfg does not only reflect the idea of ''integration of distributed resources'', but also embodies the idea of ''distribution of integrated resources'' [1]. In general, CMfg utilizes the cloud computing model [2], The associate editor coordinating the review of this manuscript and approving it for publication was Guanjun Liu . Internet of things (IoT) [3] and other advanced technologies to transform manufacturing resources into manufacturing services, and provides manufacturing services according to user requirements. As a new manufacturing paradigm, CMfg expands the philosophy of ''everything as a service'' in cloud computing by including new concepts such as ''manufacturing resource as a service'' and ''manufacturing capability as a service'' [1]. It means that CMfg supports the aggregation and provision of distributed manufacturing resources not only manufacturing software tools, but also manufacturing equipment, manufacturing capabilities, etc., all of which are in the forms of configurable manufacturing services in a shared resource pool [4]. For a complicated manufacturing task, the CMfg platform decomposes it into several subtasks and searches all qualified services for each subtask to form a candidate service pool according to different requirements such as QoS, price, reliability, and so on. For different QoS, the platform selects one or several services from each service pool to generate a composite service with the given objective optimization, such a process is called cloud manufacturing service composition (CMSC) [5]. Facing the diversity needs of users, the premise of CMSC is to analyze different situations and problems in multitask requests accurately. The key of service composition is to select the best service to meet user requirements from massive and aggregated candidate services. There are many service composition solutions which will increase exponentially with the increase of task complication and the amount of subtasks, so it is obviously a kind of typical NP-hard problems. Hence, how to quickly select the optimal service composition to fulfil the demands has become a key issue in CMSC. For CMSC, scholars have carried out an enormous amount of research on it and proposed a variety of methods such as genetic algorithm (GA) [6], particle swarm optimization algorithm (PSO) [7], ant colony optimization algorithm (ACO) [8], artificial bee colony algorithm (ABC) [9], differential evolution algorithm (DE) [10] and gravitational search algorithm(GSA) [11].
Existing works on service composition are concentrating on service composition framework [12], service composition validation [13], and service composition method [14]. At present, service composition method can be primarily divided into the following five categories [14]: business flow-based service composition; AI-based service composition; graph-based service composition; QoS-aware service composition; and agent-based service composition. In addition, some intelligent algorithms are introduced to deal with service composition problems thanks to their simplicity, versatility, and robustness in solving large-scale, complex optimization problems for CMfg. Que et al. [15] proposed an improved adaptive immune genetic algorithm for optimal QoS-aware service composition selection in cloud manufacturing. In order to select the best combination of services to perform a customer's requests, Fazeli et al. [16] adopted an ensemble optimization approach to cope with such a problem. Zhou and Yao [4] and Zhou et al. [5] gave two countermeasures respectively to handle the many-objective CMSC problems. Considering the service correlation problem and enhancing the efficiency of the optimization algorithm, a novel optimization algorithm named the parallel max-min ant system based on the case library (PMMAS-CL) was proposed by Liu et al. [17]. Focusing on the social collaboration feature of manufacturing services, a service composition method based on synergy effect was proposed by Ren et al. [18], in which the service social network and five kinds of relationship was extracted and described. Liu et al. [19] paid attention to the dynamic service composition for CMfg, and an improved QoS constraint hierarchies (CHs) model was adopted. Besides, Zhou et al. [20]- [23] presented some dynamic task scheduling methods about service matching and dynamic task scheduling in cloud manufacturing, these methods were proved to be effective in solving the task scheduling problem in the dynamic and complex CMfg environment.
However, the fast increasing amount of CMfg services and complicated manufacturing environment pose a big challenge to the aforementioned methods. Moreover, current methods have great shortcomings in solving large scale CMSC problems, which need to be improved in terms of searching capability further and better balance between exploitation and exploration. ABC algorithm is easy to be implemented and has fewer control parameters with competitive performance [24], it has been widely used in CMSC. But for the high dimensional CMSC problems, the solution spaces are extremely large and complicated. The performance of classical ABC is not effective to address such problems. This is mainly due to the inefficient food source perturbation in the case of a high dimensional objective space [25]. To overcome such drawbacks, in this paper we introduce several promising improvement strategies to strengthen the bee foraging behavior and design a novel optimization algorithm named MISABC.
The contributions in our work can be summarized as the following three aspects. (1) We use several strategies to improve the search equations in different stages of ABC algorithm which can further enhance the global search capability and avoid premature convergence. (2) We propose a composition scheme called Multi-Module Subtasks Collaborative Execution for Cloud Manufacturing Service Composition (MMSCE-CMSC). (3) To address the MMSCE-CMSC problem, an encoding method named as block encoding is proposed, the building blocks are treated as gene units to encode the chromosomes. This method can well abstractly describe the situation of multi-batch subtasks hybrid execution in CMfg and can avoid generating invalid candidate solutions.
The main definitions of notations used in this paper are given in Table 1. The remainder of this paper is arranged as follows. In Section 2, investigates the background and problem statement. In Section 3, the basic concepts and operations of ABC algorithms are summarized. In Section 4, further explanation of the proposed algorithm MISABC for CMSC is listed. In Section 5, the simulation experiments and case study are given and discussed in detail. In Section 6, the paper is summarized with concluding remarks and future work.

II. BACKGROUND AND PROBLEM STATEMENT
In our previous work, we have discussed the CMfg architecture [26]- [30]. As shown in Figure 1, there are three different kinds of roles that make up the CMfg system, and we can clearly obtain from the picture that cloud manufacturing platform(CMP) enables all cloud demanders and cloud providers to interact on the integrated platform. For a single task, the corresponding manufacturing resources will be directly executed, but for a complex and large-scale task, the CMP will decompose it into several subtasks and allocate them to corresponding manufacturing resources. Hence, the users can use all kinds of dynamic application services in an ondemand way with the support of the CMfg operation platform and realize the multi-agent collaborative interaction [16].  The platform makes providers increase the conversion rate from design to production and demanders increase the utilization rate of manufacturing resources at the same time, so this is a win-win platform.
The process of service composition in CMfg is shown as Figure 2 and it can be divided into the following four steps.
Step 1: Virtualization and servitization of resources. This step is responsible for mapping physical resources into virtual resources by IoT and virtualization techniques [4].
Step 2: Task decomposition. Generally, a task request will be divided into several subtasks.
Step 3: Manufacturing services discovery and matching. Finding out all cloud services (CS) that meet the user's requirements of each subtask and generating the corresponding candidate cloud service set (RCSS).
Step 4: Service composition and optimal selection. The optimal service will be selected from each RCSS to construct composition service. All of the processes would be controlled and monitored by the platform.
In this work, we focus on MMSCE-CMSC problem and establish a mathematical model in the complex CMfg environment. In order to discuss MMSCE-CMSC problem easily, the parameters in the model are set as follows: Task: cloud manufacturing tasks. SbT = {sbt 1 , sbt 2 , . . . sbt i , . . . , sbt n }: the subtask set in CMP, where n is the total number of subtasks, and i = 1, 2, . . . , n.
RCSS i = cs i,1 , cs i,2 , cs i,j , . . . , cs i,k i : the candidate cloud service set for sbt i , where j = 1, 2, . . . , k i , and k i is the total number of the CS in the i-th RCSS.
For each subtask, there are several candidate CSs to be chosen from the resource pool. The total composition schemes can be expressed as n i=1 k i m=1 C m k i . Here, C m k i denotes the total composition schemes of the i-th subtask. Obviously, it is a typical NP-hard problem and more complex than traditional service composition problem.
There are many optimization objectives for cloud manufacturing service composition. The shortest manufacturing time which is one of the most typical optimization objectives, is taken as an optimization target in this paper. We designed the objective function to minimize the completion time of the batch which takes the longest time in the scenario of multi-batch subtasks hybrid execution. It can be expressed as: min max h∈η T F h , where T F is the completion time of the corresponding batch, is the batch of the subtask.

III. CLASSICAL ABC ALGORITHM
The concept of ABC algorithm is simple and easy to be implemented, it has gained a greater attention in different types of optimization problems [25]. There are three groups of bees in the colony: employed bees, onlooker bees and scout bees. The algorithm consists of five essential operations: initialization, fitness evaluation, employed bees phase, onlooker bee phase, and scout bees phase. The pseudo code of ABC is outlined in Figure 3.
In the initialization operation, the number of the employed bees or the onlooker bees is equal to the number of solutions in the population. Food sources in the colony are randomly generated and allocated, as shown in Equation (1).
Here i = 1, 2, . . . , NP and d = 1, 2, . . . , D. NP denotes the number of food sources, and D is the dimension of the problems to be optimized. Additionally, U d and L d are the upper and lower bounds constraint of the D-dimensional space, respectively, and rand(0,1) is a uniform random real number between 0 and 1. Fitness function is used to evaluate food source (solution). For a minimization problem, the fitness value can be calculated by Equation (2).
where f i denotes the value of objective function. The employed bees are responsible for flying to the food sources and trying to improve the associated solutions. They will share the information of food sources with the onlooker bees. The search behavior is formulated as Equation (3).
where v id is d-th element of new solution V i and truncated to [L d , U d ], d is a random integer between 1 and D, ϕ is a random real number between −1 and 1, and j is a random integer between 1 and NP which is different from i. In addition, the employed bee explores the better food source by a greedy strategy as Equation (4).
The onlooker bee chooses more profitable sources through the method of roulette wheel depending on the probability value associated with that food source. The probability value p i is defined in Equation (5). Then a new food source is generated by using Equation (3) and the better one is memorized for further exploitation in the next iteration.
In scout bee phase, if one food source cannot be improved over a predetermined number of cycles, the food source is VOLUME 8, 2020 assumed to be abandoned. Thus, a scout bee randomly produces a position and replaces the abandoned one according to Equation (1).

IV. MISABC ALGORITHM FOR CLOUD MANUFACTURING SERVICE COMPOSITION
The performance of classical ABC algorithm is not effective in MMSCE-CMSC. Therefore, we make an attempt to enhance the global search ability of ABC by introducing several improvement strategies, and propose an enhanced ABC algorithm, so-called MISABC.

A. THE STRATEGIES INTRODUCED INTO MISABC 1) DIFFERENTIAL EVOLUTION STRATEGY (DES)
In differential evolution algorithm [31], two kinds of mutation operations in different version shown as Equation (6) and Equation (7), respectively, are used to help individuals to fully learn from members and make the algorithm converge to global optimum quickly. So we adopt them to guide the search towards the probable regions in search space. rand/1/bin [29] : V r = X r 1 + F · X r 2 − X r 3 (6) best-to-rand/1/bin [29] : V r = X best + F · X r 2 − X r 3 (7) where V r is the mutant vector, r 1 , r 2 and r 3 are mutually distinct which is chosen from the range [1,NP], F is a control parameter usually constrained in [0,2], X best denotes the best individual in current generation.

2) OSCILLATION STRATEGY WITH CLASSICAL TRIGONOMETRIC FACTOR (TFOS)
In order to enhance the performances of heuristic intelligent optimization algorithms, oscillation strategy has been adopted in the algorithms to avoid local minima [32]. In this paper, we adopt TFOS to help the bee colony get out of local optima. The operation can be described as follows: where λ is a random real number uniformly distributed over the interval [3.14, π], and the other parameters are the same as Equation (3).

3) DIFFERENT DIMENSIONAL VARIATION LEARNING STRATEGY (DDVLS)
DDVLS is a jumping and dynamic searching strategy introduced in [33] to avoid high aggregation degree in one or several dimensions among current individuals that may lead to the local optima. Inspired by the strategy above, we use other dimension to update the concerned dimension. The DDVLS strategy is expressed by Equation (9).
where d and r are both mutually different random integers chosen from the dimension of the whole population. The other parameters are the same as Equation (3).

4) GAUSSIAN DISTRIBUTION STRATEGY (GDS)
Gaussian distribution can predominately search the area around the global and local best, and help the population escape from local attractors by giving a jump to a new point in the search space [34], [35]. Hence, we use Gaussian distribution factor to generate new positions for the individuals. It can lead to improve the search capability of the algorithm. The distribution function of the Gaussian random variable can be expressed as follows: It can also be described as N (µ, σ 2) for short, where µ is the mean value, σ is the standard deviation, and Z is between −∞ and +∞.

B. DETAILS IN EACH PHASE OF MISABC
We make full use of the advantages of the strategies mentioned above to enhance the performance of ABC algorithm. The pseudo code of MISABC is outlined as Figure 4 and the details are described as follows.

C. PARAMETER SETTINGS AND BLOCK ENCODING
Inspired by paper [30], each bee can be regarded as a chromosome consisting of gene bits, the block encoding method can be adopted to address the MMSCE-CMSC problem. Shown as in Figure 5, an individual can be encoded as a chromosome by the integer array with the length equal to the number of CS set, and the integers are all in the range [0, Q i ], where Q i denotes the amount of every subtask. Each gene bit partition (block) is corresponding to a rank of subtask, the rank of the corresponding subtask is the location in the cloud manufacturing chain. Thus each gene bit in the integer array 39152 VOLUME 8, 2020  is one-to-one correspondence with the CS, and the amount of gene bit in each rank is the amount of candidate CS for the corresponding subtask. So, the gene bits in the same rank can be seen as a block of the chromosome. The gene bit index of cs n m is calculated as follows.
The initialization is generated randomly and the sum of every rank equals to the amount of the corresponding subtask, so the initialization of every gene is calculated as follows: So, let x g d = x i,g k,d |d = 1, 2, · · · , NP; i = 1, 2, · · · n be the d-th individual (bee) of the g-th generation, and each element x i,g k,d denotes the k-th gene bit of rank i.

D. THE EMPLOYED BEE PHASE OF MISABC
The employed bees are responsible for exploring food sources. In order to find the best source area, it requires employed bees with a strong global search capability. However, the global search capability of employed bees in ABC algorithm is not good, which leads to the waste of sources due to poor information interaction. Therefore, we utilize DES and DDVLS to give employed bees more opportunities learn from other peers and avoid to find a new solution in single dimension, thus can greatly enhance the global search capability for the employed bees. Additionally, by introducing TFOS, global elite solution (the best individual of the entire population) and adaptive weight factor, we can further improve the capability for the employed bees. With the TFOS, it can guarantee that the bees are not trapped in a local optimum. Meanwhile, the global elite solution replaces the old one. It can effectively induce the movement to the better solutions for the current population. What's more, the adaptive weight factor ξ can dynamically adjust step size ϕ. In the initial stage of iterations, the weight factor is used to expand the search space, but for the later stage, it makes the individuals perform a detail search and converge to the optimal position. The search equation is shown as Equation (13).
where λ is a uniform random number in the range

E. THE ONLOOKER BEE PHASE OF MISABC
The onlooker bees use probability to choose new food sources. However, the onlooker bees often fail to get better solutions due to over exploitation. In order to avoid such a situation especially in the later period, we introduce a mutation strategy with adaptive GDS factor to overcome the drawbacks for onlooker bees. The factor can make the bees get more alternative food sources in the early stage and gives a jump to avoid over exploitation in the later stage. Additionally, we still use DES and DDVLS to find new food sources, the search equation described as Equation (14).
where γ is a random number generated by Gaussian distribution, the mean value is 0, standard deviation is 0.5. i = 1, 2, . . . , NP, and the parameters r 1 , r 2 , k 1 , k 2 , k 3 , ξ are as the same as Equation (13).

F. THE SCOUT BEE PHASE OF MISABC
The random search behavior of scout bees is the key to enhance the global search capability of the algorithm. But, it always leads to a problem that it is activated only when the food sources are not further improved within the preset VOLUME 8, 2020 range. In some cases, the individuals perform a high degree of aggregation around the local optimum before scout bees perform a random search behavior, and it may cause the stagnation of solution spaces. In order to make sure whether solutions are improved with the iterations, we introduce a record board to take notes the status of bees and give the scout feedback. Specifically, we set up a control parameter ε equal to 10 −5 as the threshold, if the fitness values on the record board do not change or change in a small scale (less than ε) in five continuous iterations, we can believe that the solution spaces have stagnated, then we give a new search equation for scout bees which described as Equation (15).
where i = 1, 2, . . . , NP, and the parameters r 1 , r 2 , k 1 , k 2 , ξ , and ϕ are as the same as Equation (13). At last, if food sources still cannot be further improved in the preset range, then the scout bees use Equation (1) to search new sources.

V. EXPERIMENTS AND DISCUSSIONS
In this section, the performance of the proposed MISABC algorithm is tested by several benchmark functions, and the process of MISABC applied to MMSCE-CMSC is demonstrated by a case study. All algorithms are coded in MAT-LAB R2015b, and the experiments are tested on the PC with Intel(R) Pentium(R) G2030 CPU operating at 3.00 GHz and 4.00 GB of memory, and operating system with Windows 7(64 bit).

A. EXPERIMENT OF BENCHMARK FUNCTIONS
A comprehensive comparison experiment is conducted on eight benchmark functions to evaluate the performance of the proposed algorithm. Additionally, in order to evaluate the performance of the algorithm, it is necessary to identify the characteristics of problems such as unimodal, multimodal, regular, irregular, separable, non-separable [36]. Here, we use eight benchmark functions with these characteristics above to analyze the performance of the proposed algorithm. The abilities of exploration, exploitation, and finding an optimum can be assessed by these functions, which can be taken as an abstraction case of practical engineering problem.
The eight different benchmark functions have shown in Table 2. These functions have different characteristics such as unimodality (U), multimodality (M), separable (S) and non-separable (NS), as shown in the column C of Table 2, and the global minimum is all 0 which is the optimum. For a unimodal function, the local optimum is the global optimum, while there are several local minimums for multimodal functions that can be used to test the ability of an algorithm to escape from any local optimum. So, it is more difficult to search the global minimum for multimodal function relative to the unimodal function, because multimodal function requires the algorithm has excellent global search ability. In addition, the variables are affected by other variables in non-separable functions, but not for separable functions. So it is more difficult to find an optimum for the non-separable function than that of separable function. Therefore, these functions can be used to well test the abilities of exploration, exploitation and convergence of the aforementioned algorithms. Besides, in order to give a deep analysis to the benchmark functions, we give the corresponding figure of every benchmark function with landscapes of them for D = 2 in Figure 6, through which we can see their shapes and characteristics intuitively. As shown in Figure 6, the shapes of the eight test functions have been visually represented.
We test proposed MISABC algorithm with the same parameters setting, and compare with original ABC, PSO and DE algorithms. For PSO algorithm, the parameter v is one half of the search range. Meanwhile, for the DE algorithm, the scaling factor F and the crossover rate CR are 0.5 and 0.9, respectively. The maximum iteration is 1000. The population size set to 10, 20, 30 and 50 which have been shown in the row N of Table 4. Additionally, the dimensions of the search range are set to 10, 30, 50 and 70 for each population size shown in the row D of Table 4. All experiments are run 50 times, independently.  The test results with eight different benchmark functions are shown as Table 4. The column best, worst, mean, std and FE are the best value, worst value, mean value, standard deviation and mean value of function evaluations for the 50 times operations, respectively.
In order to further verify the performance of MISABC, we compared it with the existed algorithm with the cited reference [37]. According to reference [37], the corresponding parameters are set as bellow. The population size is set to 50, the dimensions of the search range are set to 30, the maximum iteration is 200, and experiments are run 20 times, shown as Table 3.
It is worth noting that the mean value is the key indicator to evaluate the algorithm performance. However the best value and worst value of the test results have certain contingency. In Table 3 and Table 4, the best results of mean performance are high lightened by gray. The results demonstrate that the performance of MISABC is better than ABC, PSO and DE. Considering that CSMC is a hybrid and complicated problem, the results of the highest dimension (70) are used to analyze and discuss.
For the first function, f 1 , MISABC performs best, followed by ABC and PSO, while DE is the worst one. The mean value of MISABC, ABC, PSO and DE is 10 −17 , 10 −13 , 10 +3 and 10 +4 , respectively. The function f 1 named Sphere is a unimodal and separable function. It is a classical function in the optimization test function, and can easily find the global optimal values among the eight benchmark functions. VOLUME 8, 2020  We use it to verify the accuracy and local convergence speed of the algorithm.
For the second function, f 2 , MISABC performs best as well, followed by ABC and PSO, while DE is the worst one. The mean value of MISABC, ABC, PSO and DE is 10 +1 , 10 +2 , 10 +3 and 10 +4 , respectively. The function f 2 named Rosenbrock is a unimodal, non-separable and nonconvex function. The global minimum is inside a long, narrow, parabolic shaped flat valley, and the flatness does not give enough information to direct the search process towards the minima, so it is difficult for the algorithms to find the global minimum. This function requires algorithm with a strong global search capability, otherwise it may lead to the algorithm trap in a local optimum. Therefore, it pays attention to the global search capability of the algorithm.
For the third function, f 3 , MISABC performs best, followed by ABC and PSO, while DE is the worst one. The mean value of MISABC, ABC, PSO and DE is 10 −16 , 10 −1 , 10 +1 and 10 +2 , respectively. The function f 3 named Alpine is a multimodal and separable function. When it tends to infinity VOLUME 8, 2020 in the domain, a huge number of different local extrema will be generated along the direction of the independent variable, which makes a great difficulty in searching. We can test the global search capability of the algorithm via this function.
For the fourth function, f 4 , MISABC performs best, followed by ABC and PSO, while DE is the worst one.
The mean value of MISABC, ABC, PSO and DE is 10 −14 , 10 +0 , 10 +1 and 10 +1 , respectively. The function f 4 named Ackley is a multimodal and non-separable function. there are many local minima, most of them exist in a long and narrow place around the global minimum. Thanks to this property, these local minima have no deceptive and it is easier to find the global optimum as long as the algorithm has a little better global search capability that can avoid the local minima.
For the fifth function, f 5 , the performance of MISABC is better than ABC, PSO and DE obviously. The function f 5 named Griewank is also a multimodal and non-separable function. The total number of local minima increases exponentially along with its dimension increases. Hence, it is usually considered as a complex multimodal problem which is difficult to deal with by optimization algorithm. So it is always be used to test the ability of jump out local optima.
For the sixth function, f 6 , the performance of MISABC is better than ABC, PSO and DE obviously. The function f 6 named Rastrigin is a multimodal and non-separable function, and there are many local minima in the search space. In the D-dimensional search space, there are about 10 D local minima, and the shapes of these irregular peaks are uneven and VOLUME 8, 2020 jump up and down. So, it gives the optimization algorithm a strong deception during the process of searching, and requires the algorithms with a very strong global search to jump out local optima.
For the seventh function, f 7 , MISABC performs best as well, followed by ABC and PSO, while DE is the worst one. The mean value of MISABC, ABC, PSO and DE is 10 −1 , 10 +0 , 10 +1 and 10 +1 , respectively. The functions f 7 named Schaffer F6 is a multimodal and non-separable function. There are many local minima in the search space with strong oscillation. Additionally, the global minimum is surrounded by many local minima. So this function is always be used to validate the global search capability of the algorithm.
For the eighth function, f 8 , MISABC performs best, followed by ABC and PSO, while DE is the worst one. The mean value of MISABC, ABC, PSO and DE is 10 −7 , 10 −4 , 10 +2 and 10 +2 , respectively. The functions named f 8 Becker and Lago is a multimodal and separable function, and there are four minima obviously. It is also to test the global search capability of the algorithm.
Additionally, it is shown by the test results in Table 3. MISABC is the most competitive algorithm with the best values.
The experiments show that MISABC performs better in terms of solution quality and global search capability than the other algorithms, especially when the problem scale becomes larger. The main reason is that MISABC has some good characteristics compared with other algorithms. Firstly, MISABC increases the diversity of solutions via DES and DDVLS. Furthermore, with the help of elite individuals and TFOS, the populations can dynamically adjust the control parameters for good solutions. Last but not least, we utilize GDS to assist individuals to jump out from local traps and avoid premature convergence.
In addition, the classical PSO algorithm which has no crossover and mutation operations, in the process of iterative evolution, only the optimal particle transmits information to other particles. So it is easy to trap in local optima, and lead to slow convergence speed, low accuracy especially on the high dimension. For classical DE algorithm, the mutation operator has adaptive ability in mutation step size and search direction. However it lacks local search capability and lead to a slow convergence speed. As for classical ABC algorithm, it shows better performance than PSO and DE algorithm on the high dimension situation which we can obtain through f 2 , f 3 , f 5 , f 6 , f 7 , f 8 . However, because of the neighborhood search mechanism of ABC during the entire process, it will lead to premature convergence andencounter a slow searching speed obviously in the later stage of iteration. The performances of three classical algorithms are still not satisfied enough towards to complex engineering problems such as service composition for CMfg. In this paper, we better balance the exploration and exploitation for MISABC and the performance of the algorithm is better in the complex, high-dimensional and multimodal benchmark functions, which can be always considered as mathematical model of complex problems such as service composition in CMfg.

B. EXPERIMENT OF CASE DATA
CMfg is a complex manufacturing system. Taking the car manufacturing as an example, the industry is a large and complex manufacturing system involving more than 200 industry fields such as design, material, electronic equipment, and so on. For every manufacturer, nearly 70% spare parts are outsourced. In this section, we take the tire manufacturing as a case study, and it involves raw material production, tire production, hub production, wheel assembly, vehicle assembly, and car dealer. So, we can easily decompose the task into 5 subtasks: raw material production is subtask 1, tire production and hub production are integrated into one subtask as subtask 2 which can be executed parallel, wheel assembly is subtask 3, vehicle assembly is subtask 4, and car dealer is subtask 5.
The case data is from [30]. Assume that a user needs 2000 cars and submits the requirements to CMP, then the  CMP allocates several RCSS for each subtask shown as Table 5. The amount of each subtask is 8000, 8000, 8000, 2000, and 2000, respectively, and the time consumption for each spare part (hour) is shown in column t of Table 5.
Usually, it is very important to design the objective function according to the needs of customers. For easy to discussion, we use the production time as the optimization objective function which can be defined as follows: where, T max = max {T 1 , T 2 , . . . , T i , . . . , T n } , T i is the production time with the i-th batch subtask. The production results of each CS for subtask i will be sent to the CS in which production plan is started earliest and the corresponding production time is the largest among the candidate CS set for the next subtask. To give a more accurate description, we defined the time matrix T end as follows: ) · · · (s n n , x n n , T n f kn ) where each element T i j in the matrix is composed of three variables: the first variable s i j is the start time which is set to 0initially, the second variable x i j is the amount of subtasks for cs i j which can be obtained from the individual of MISABC, then the last variable T i f j is the end time of subtasks for each CS and can be calculated by T i j = t i j · x i j , i and j are natural numbers which in the range [1, n] and [1, k i ], respectively. t i j denotes the time consumption for each corresponding part from Table 5 The parameters in the experiment are set as follows: the population size N set to 50 and the maximum iteration is 1000. According to the MISABC algorithm, case data, and objective function, the experimental results are shown in Table 6 and Table 7. Table 6 shows the production time of the 50 schemes corresponding with the specific individuals in the final generation. We can conclude that the individual No. 13 is the optimal, and the production time is 1285.912. The subtask amount of every CS in the best scheme which is indicated as integer in the corresponding gene bit of individual No. 13 is shown in Table 7. Figure 7 shows the composition of multiple parallel and intersecting production lines in detail. The circle represents the candidate CS for each subtask and the number in the circle represents the assigned subtask amount. The direction of delivery for the next subtask is indicated by the arrow and the number on the arrow refers to the corresponding delivery amount. The orange circle denotes the CS that takes the longest time to complete its own task, and the corresponding solid line denotes the production line which takes the longest time. Therefore, the completion time of the whole cloud manufacturing tasks depends on the time consumed of the solid line. Based on the above descriptions, we can draw a conclusion that the task in CMfg is divided into several small batches executed parallel and hybrid.

VI. CONCLUSION AND FUTURE WORK
With the rapid development of global manufacturing industry, how to integrate and allocate manufacturing resources in a reasonable way is a critical problem that manufacturing industry should pay attention to. In this study, a new optimization algorithm MISABC, for addressing MMSCE-CMSC in CMfg is presented. With the consideration of large irregular solution spaces of MMSCE-CMSC, we introduce several improved strategies to enhance the global search capability and solution quality. In the three bee phases of MISABC, we all take advantage of DES and DDVLS. Besides, the employed bee increases global search ability with the help of TFOS.Meanwhile we mainly utilize the GDS in the onlooker bee phase to avoiding falling into local optimum. At the last phase, we establish an activation mechanism for the scouts by introducing a record board to take notes the status of bees. Owing to those strategies, we can better balance the exploration and exploitation capabilities. In the experiment, several different characteristics test functions with different parameters are considered and compared with classical intelligent algorithms such as classical ABC, PSO and DE. The experimental results show that the searching capability and solution quality of MISABC is fairly remarkable. However, in the current cloud-based manufacturing environment, the transportation time between candidate CSs has great influence on production time of the whole manufacturing task. This problem should be studied in further work.

DATA AVAILABILITY
The experimental data and case study data used to support the findings of this study are included within the article.
[36] J. Momin and X. S. Yang His research interests include cloud manufacturing service composition and intelligent transportation systems.
GUOJIANG SHEN received the B.Sc. degree in control theory and control engineering and the Ph.D. degree in control science and engineering from Zhejiang University, Hangzhou, China, in 1999 and 2004, respectively.
He is currently a Professor with the College of Computer Science and Technology, Zhejiang University of Technology. His current research interests include artificial intelligence, big data analytics, and intelligent transportation systems. She is currently a Professor with the College of Computer Science and Technology, Zhejiang University of Technology. Her current main research direction is intelligent transportation systems. She is also a member of the China Computer Federation.