# Multiobjective Optimization of Cloud Manufacturing Service Composition with Improved Particle Swarm Optimization Algorithm

Authors: Yongxiang Li; Xifan Yao; Min Liu
Journal: Mathematical Problems in Engineering
 (2020)

---

## Abstract

Aiming at the problems of low search efficiency and inaccurate optimization of existing service composition optimization methods, a new multiobjective optimization model of cloud manufacturing service composition was constructed, which took service matching degree, composition synergy degree, cloud entropy, execution time, and execution cost as optimization objectives, and an improved particle swarm optimization algorithm (IPSOA) was proposed. In the IPSOA, the integer encoding method was used for particle encoding. The inertia coefficient and two acceleration coefficients were improved by introducing the normal cloud model, sine function, and cosine function. The global search ability of IPSOA in the early stage was improved, and its prematurity was restrained to form a more comprehensive solution space. In the later stage, IPSOA focused on the local fine search and improved the optimization precision. Taking automatic guided forklift manufacturing task as an example, the correctness of the proposed multiobjective optimization model of cloud manufacturing service composition and the effectiveness of its solution algorithm were verified. The performance of IPSOA was analyzed and compared with standard genetic algorithm (SGA) and traditional particle swarm optimization (PSO). Under the same conditions, IPSOA had a faster convergence speed than PSO and SGA and had better performance than PSO.


---

## Body

## 1. Introduction

In today’s world, the trend of manufacturing globalization, diversification of consumer demand, and shortening of product marketization cycle has brought great challenges to traditional manufacturing enterprises. It is difficult for a single enterprise to meet all the customers’ needs, and it is also difficult for a single enterprise to possess all the manufacturing resources needed for product manufacturing. In order to effectively overcome the shortcomings of the traditional production mode, cloud manufacturing has developed rapidly in the past ten years. Based on the idea of centralized use of decentralized resources and serving decentralized users with centralized resources [1], cloud manufacturing is a new service-oriented, demand-driven, on-demand payment, efficient and low consumption, and knowledge-based networked manufacturing mode [2]. Cloud manufacturing is developed on the basis of cloud computing technology. It integrates service-oriented technology, Internet technology, communication technology, modern logistics technology, Internet of Things technology, high-performance computing, and artificial intelligence technology to virtualize and servitize all kinds of manufacturing resources and manufacturing capabilities of resource providers, so as to achieve unified and centralized intelligent management and operation. Furthermore, it can provide timely, safe, high-quality, and low-cost cloud manufacturing services for resource users [3].A single manufacturing cloud service is often difficult to meet the user’s needs. A complex manufacturing requirement needs to combine multiple fine-grained simple cloud services into coarse-grained complex cloud services. Complex cloud services are implemented in distributed, heterogeneous, and autonomous environments to accomplish manufacturing tasks, which are highly uncertain and dynamic. Optimal selection of cloud manufacturing services is one of the key technologies of cloud manufacturing and an important part of service management of cloud manufacturing platform [4]. The advantages and disadvantages of cloud manufacturing service composition model and its solution methods affect the rapid and efficient use of manufacturing resources in cloud manufacturing environment. It has become a hot issue in the field of cloud manufacturing research. In this paper, we study the mathematical model of multiple influence factors in cloud manufacturing service composition and the service composition optimization algorithm.The remaining chapters of this paper are arranged as follows: Section2 comprehensively analyzes the research work done by domestic and foreign scholars on cloud manufacturing service composition optimization; Section 3 gives the definitions and calculation methods of cloud entropy, service matching degree, composition synergy degree, execution time, and execution cost; Section 4 proposes the IPSOA algorithm; Section 5 analyzes and verifies the performance of the proposed optimization algorithm through application example; and Section 6 summarizes the whole paper and puts forward the future work.


## 2. Literature Review

In recent years, many scholars have used genetic algorithm, bee colony algorithm, particle swarm optimization algorithm, and other methods to study the modeling and optimization of cloud manufacturing service composition. For example, Thekinen and Panchal [5] regarded resource allocation in cloud environment as a two-way matching problem. Four kinds of two-way matching mechanisms were classified from individual rationality, stability, antistrategy, consistency, monotony, and Pareto efficiency, including deferred acceptance, top trading cycle, Munkres, and first come first service. Through Delphi research on the attributes of cloud service quality, Lang et al. [6] determined that service function, legality, contract, geographical location, and flexibility were the highest service quality evaluation criteria for cloud service selection. Răileanu et al. [7] combined energy consumption with product scheduling and resource allocation and proposed a design method of high availability production management system based on cloud. Helo and Hao [8] proposed a dynamic optimization model of production planning and control based on cloud for sheet metal processing and developed a scheduling prototype system based on the genetic algorithm. Chen and Wang [9] proposed a classified artificial neural network ensemble method to predict the time required to simulate cloud manufacturing tasks. K-means was used to classify the simulated manufacturing cloud tasks. For each task category, an artificial neural network was constructed to predict the time required for manufacturing cloud tasks in the category. Namjoo and Keramati [10] used resource-based theory and Dematel method to study the causality between the dimensions and attributes of composite service elasticity in cloud manufacturing. Souza et al. [11] studied the distributed service layout strategy in mixed fog-cloud scenarios and proposed a concurrent service execution scheme. Brant and Sundaram [12] carried out the application experiment of manufacturing cloud. Under the condition of manufacturing cloud, the micrometal materials were manufactured by indoor electrochemical deposition technology. The horizontal deposition parameters were optimized based on the deposition resolution, and the manufacturing data were saved in the cloud for users to use on demand. Based on the formal description of cloud manufacturing resource allocation problem, Wang et al. [13] constructed a multiobjective resource allocation model with minimizing cost and time and optimizing quality. The multiobjective optimization problem was transformed into a single-objective optimization problem by the classical weighted summation method and solved by the maximum inheritance method. Zhou and Yao [14] proposed a multipopulation parallel adaptive differential artificial bee colony algorithm to optimize the selection of NP-hard for composite cloud manufacturing services. A number of parallel subpopulations were used. Each subpopulation evolved according to different mutation strategies borrowed from differential evolution. The control parameter of each mutation strategy was adjusted independently to generate disturbed food sources for foraging. Li et al. [15] studied self-governing cloud manufacturing service composition and optimization selection and proposed a fuzzy soft decision method based on volatility analysis. Li and Yao [16] constructed cloud manufacturing service description model, interaction scenario model, and composition process formal model based on process algebra, extended process algebra semantics to describe service quality information, and proposed an intelligent service composition method based on extended process algebra. Tao et al. [17] designed a cloud manufacturing service supply-demand matching simulator based on hypernetwork, which could compare service matching results and scheduling algorithm performance. Zhang et al. [18] studied a fuzzy QoS-aware manufacturing service composition method based on the extended pollination algorithm. Yang et al. [19] proposed a dynamic service selection method within multiple manufacturing cloud systems aiming to apply the Internet of Things, real-time sensors, big data, and event-driven dynamic service selection. Chen et al. [20] proposed a method called QoS-aware web service composition to help cloud demanders for service composition based on a multiobjective model and provided an efficient-dominance multiobjective evolutionary algorithm to fulfill the service composition model. The huge and ever-increasing number of web service providers in the cloud had the same manufacturing functions, yet they possessed different QoS indexes [21]. Therefore, most scholars conducted their research based on quality of service. A number of indexes such as cost, time, and reliability were utilized to form the overall objective functions in order to select the best possible composition for a specific task [22]. Quality of service could be described as a set of key performance index used to assess the quality of services composed in a cloud manufacturing system. Availability, reliability, cost, time, geographical position, and technological capability were among the key indicators applied by researchers in service composition issues. Aiming at the problem of optimal selection of manufacturing service composition, Que et al. [23] proposed a new manufacturers-to-users model for cloud manufacturing, established a comprehensive mathematical evaluation model with four key service quality perception indicators (i.e., time, cost, reliability, and capability), and solved the model by using information entropy immune genetic algorithm. Huang et al. [24] combined genetic algorithm with particle swarm optimization, proposed a hybrid genetic particle swarm optimization algorithm based on teaching and learning, introduced learning mechanism into genetic algorithm, and enabled the descendants of genetic algorithm to learn the characteristics of elite chromosomes from double memory learning in the evolutionary process. The algorithm was searched for solutions in two subpopulations of genetic algorithm module and particle swarm optimization module and exchanged information simultaneously. Zhao et al. [25] proposed a SPEA2 algorithm based on adaptive selection evolutionary operator to solve multiobjective optimization problem. In the evolutionary process, the simulated binary crossover operator, polynomial mutation operator, and differential evolution operator could be selected adaptively according to the contribution of operators. Zhang et al. [26] proposed an extended teaching and learning optimization algorithm for parallel optimization of distributed manufacturing resource allocation. Xu and Cai [27] proposed an efficient global optimization algorithm based on multidata for automobile body design. The general computing technology based on graphics processing unit and the hybrid parallel computing method was used to improve the solving efficiency.The above literature mainly considers time and cost as two quality factors, adopts the basic idea of transforming the multiobjective optimization problem of manufacturing cloud service composition optimization into a single-objective optimization problem, and uses traditional mature optimization algorithm to solve it indirectly [28]. However, these traditional solutions have obvious defects or deficiencies, which are mainly reflected as follows: firstly, the abovementioned studies mainly focus on the optimization of service quality parameters such as execution cost and time, but the impact of composition complexity, collaboration, matching property, and other nonfunctional service quality parameters in service composition is less considered; secondly, the selection of weight coefficients has strong subjectivity, and the optimization results are greatly influenced by the subjective factors. In the cloud manufacturing environment, each cloud service executing agent is in a certain social relationship, not an idealized “rigid body”. In the manufacturing process, different cloud manufacturing services carry out different data exchange, information transmission, and material transportation. They are constrained by each other in the manufacturing life cycle process and in which cooperation and competition coexist. The relationship between cloud manufacturing services and manufacturing tasks and the relationship between services directly affect the efficiency of service composition in performing manufacturing tasks. In cloud manufacturing environment, customized product manufacturing to meet individual needs is a common process, which often requires collaborative participation of customers and service providers. Cloud manufacturing service composition not only needs to meet the requirements of traditional product delivery period and manufacturing costs, but also the matching degree between manufacturing tasks and cloud services, the synergy degree between cloud manufacturing services in the manufacturing process, and the service composition complexity. All of them have significant impacts on the completion of customized product manufacturing tasks. Therefore, it is necessary to improve the traditional optimization algorithm, explore new efficient cloud service composition optimization methods, and take service matching degree, composition synergy degree, and service composition complexity as optimization factors to study cloud manufacturing service composition optimization.In the process of service composition, all manufacturing subtasks decomposed according to customer’s manufacturing needs must be allocated to one or more corresponding cloud services to complete. The optimization objectives of the optimal cloud manufacturing service composition scheme, such as service matching degree, composition synergy degree, cloud entropy, execution time, and cost, should be as close as possible to the ideal values. Based on the basic rules, the cloud manufacturing service composition optimization modeling, particle swarm optimization algorithm improvement, and its application are studied in the following research.


## 3. Mathematical Modeling of Cloud Manufacturing Service Composition

### 3.1. Service Composition Problem Description

In cloud manufacturing, a complex manufacturing task needs to be decomposed into several simple manufacturing subtasks to complete in most cases. By searching for simple cloud services matching each manufacturing subtask in the cloud manufacturing service platform for composition and optimization, the complex cloud service with coarse granularity is constructed to achieve the complex manufacturing task requirements. If a complex manufacturing taskJ can be decomposed into m manufacturing subtasks, and it can be expressed as J = {J1, J2, Jj,…, Jm−1, Jm}, where Jj is the j-th manufacturing subtask of the complex manufacturing task J, j = 1, 2, 3, ⋯, m. For each manufacturing subtask, the corresponding candidate manufacturing cloud services are searched in the cloud resource pool to form the candidate manufacturing cloud service set Sj of the j-th manufacturing subtask. The j-th cloud service set can be expressed as Sj = {S1,j, S2,j, …, Sbi,j}, where bi denotes the number of cloud services contained in the j-th cloud service set and Sbi,j denotes the bi-th cloud service in the j-th cloud service set. The total number of cloud services in n cloud service sets S1, S2, …, Sj, …, Sn is N=∑j=1nbj. The cloud manufacturing service composition process is shown in Figure 1 [29].Figure 1
Cloud manufacturing service composition process [29].


### 3.2. Computation of Execution Time and Execution Cost

Minimum time and minimum cost are two basic principles in the operation of a company’s business. In the research field of cloud manufacturing service composition, service execution time and execution cost are important indicators for performance evaluation of cloud manufacturing service composition schemes. According to the characteristics of manufacturing resources in cloud manufacturing environment, service execution time and execution cost are defined as follows.Execution time (ET) is the response time for cloud manufacturing service to manufacturing task. Because cloud manufacturing service involves both online and offline factors, and its execution time is longer than that of ordinary web service. Moreover, the influence of logistics time in heterogeneous cloud manufacturing environment often becomes the bottleneck of the whole manufacturing process. Therefore, it is necessary to take logistics time into consideration of service quality. To sum up, the value of execution time is equal to the sum of the processing time of cloud manufacturing services, the time required for auxiliary work (such as equipment maintenance and workpiece clamping), and the time consumed for material transportation during service execution, namely,(1)ET=Tprocessing+Tauxiliary+Tlogistics,where ET is the execution time, Tprocessing is the processing time, Tauxiliary is the auxiliary time, and Tlogistics is the logistics time.Execution cost (EC) is the cost that service users pay for using the cloud manufacturing service. The value of execution cost is equal to the sum of manufacturing cloud service charges identified by service providers, payment for material transportation in the service execution, and third-party service fees charged by cloud platform, namely,(2)EC=Cservice+Clogistics+Cplatform,where EC is the execution cost, Cservice is the cloud service cost, Clogistics is the logistics cost, and Cplatform is the platform cost.The types of cloud manufacturing service composition include sequence composition, parallel composition, choice composition, and cycle composition, as shown in Figure2 [30]. In the sequence composition, different services are executed sequentially according to their order in the service composition. As shown in Figure 2(a), the two services S1 and S2 in the composition constitute an orderly serial chain, and service S2 can be executed only after service S1 has been executed. In the parallel composition, the two services S1 and S2 are executed concurrently, as shown in Figure 2(b). Fork is the beginning transition of service operation in the parallel composition, and join is the end transition. Only when S1 and S2 are all executed, can the end transition join be triggered. In the choice composition, as shown in Figure 2(c), one of the services is selected. As long as the selected service is successfully executed, the choice composition is successfully executed. Decision is the beginning transition of service operation of choice composition, and merge is the end transition. Figure 2(d) shows the cycle composition, where service S1 is repeatedly executed. Cycle is a cyclic operator. Cycle(k){S1} indicates that service S1 is repeatedly executed k times. Under different composition modes, the execution time and cost of cloud manufacturing service composition are different, as shown in Table 1 [30].Figure 2
Schematic diagrams of four main types of service composition [30]: (a) sequence composition; (b) parallel composition; (c) choice composition; (d) cycle composition.
(a)(b)(c)(d)Table 1
Calculation of execution time and cost for different types of service composition [30].
No.Composition typesExecution timeExecution cost1Sequence compositionETsequence=∑ETSiECsequence=∑ECSi2Parallel compositionETparallel=MaxETSiECparallel=∑ECSi3Choice compositionETchoice=∑θi⋅ETSiECchoice=∑θi⋅ECSi4Cycle compositionETcycle=k⋅ETSiECcycle=k⋅ECSiNote.θi is the probability that the i-th service in the choice composition is selected, and ∑θi=1. If the i-th service must not be selected, then θi=0. If the i-th service must be selected, then θi=1, and the probability of other services being selected is 0. k denotes the cycle number.Screening candidate services according to service execution time and execution cost is an important work in cloud manufacturing service composition. However, it is not enough to screen candidate services only according to the two indicators. In order to fully reflect the service quality of candidate cloud manufacturing services and service composition, this paper takes execution time, execution cost, service matching degree, composition synergy degree, and cloud entropy as five quality evaluation criteria of service composition and then carries out cloud manufacturing service composition model construction, algorithm improvement, and case analysis.


### 3.3. Service Matching Degree Modeling

Service matching degree (MD) is a quantitative measure of the matching between cloud manufacturing services and allocated manufacturing tasks. Service matching degree reflects the request-response relationship between cloud services and manufacturing tasks. The main factors affecting service matching degree are the idleness of manufacturing resources, equipment status, comprehensive manufacturing capability, service reputation, cumulative times of cloud manufacturing services performing similar manufacturing tasks, active degree of cloud manufacturing services, and distance between manufacturing resources mapped by cloud manufacturing services and service objects. According to the characteristics of different factors, the factors affecting service matching can be summarized as technical factor, hunger factor, and distance factor.


#### 3.3.1. Technical Factor

Technical factor (TF) refers to evaluating the technical level of a cloud manufacturing service to accomplish a manufacturing task based on cumulative times of cloud manufacturing services performing similar manufacturing tasks, service reputation, service execution rate, service activity, and equipment performance in the past period of time. It is described by the rank vector TFij = [0, 0.1, 0.2, 0.3, ⋯, 0.9, 1], in which TFij represents the technical capability measurement of the i-th service that performs the j-th task, 1 ≤ i ≤ N, 1≤j ≤ m. The technical capability of N cloud services that perform m manufacturing tasks can be described by N × m technical matrix TF = (TFij)N × m.


#### 3.3.2. Hunger Factor

One of the outstanding contributions of cloud manufacturing is to activate idle manufacturing resources. The idle rate of manufacturing resources refers to the ratio of the number of available manufacturing resources unused for manufacturing tasks to the total number of manufacturing resources. According to the idle rate of manufacturing resources mapped by cloud manufacturing services, the desire level of the cloud manufacturing services to undertake and complete manufacturing tasks can be evaluated, which is described as hunger factor HFij. HFij represents the hunger degree of the i-th service to undertake and complete the j-th task, 1 ≤i ≤ N, 1 ≤ j ≤ m. The range of HFij is [0, 1]. The higher the idle rate of manufacturing resources mapped by cloud manufacturing services, the more hungry and thirsty for accepting manufacturing tasks, and the bigger the hunger factor; on the contrary, the smaller the hunger factor. The value of hunger factor can be obtained by calculating the idle rate of manufacturing resources, and the hunger factor matrix is HF = (HFij)N×m.


#### 3.3.3. Distance Factor

Cloud manufacturing services are more complicated than ordinary web services due to the influence of offline factors in the execution process. Spatial distance often becomes a constraint in the execution process of cloud manufacturing services. Generally, small spatial distance is beneficial to the execution of cloud manufacturing services, while large spatial distance is not conducive to the execution of cloud manufacturing services. Distance factor is introduced to describe the impact of the relative distance between manufacturing resources mapped by cloud manufacturing services and service users on the execution of cloud manufacturing services. It is expressed as DFij, 1 ≤ i ≤ N, 1 ≤ j ≤ m. DFij represents the distance factor between the manufacturing resources mapped by the i-th cloud manufacturing service and the j-th service users. The range of DFij is [0, 1]. The smaller the relative distance, the larger the distance factor; on the contrary, the smaller the distance factor. For example, if the distance between cloud manufacturing resources and cloud service users is 300 km, then DFij = 0.4; if the distance is 50 km, then DFij = 0.8; if the distance is less than 1 km, then DFij = 1; similarly, other corresponding distance factors can be obtained.In summary, service matching degree matrix can be calculated as follows:(3)MD=MD11MD12⋯MD1,m−1MD1mMD21⋯⋯⋯MD2,m⋯⋯MDij⋯⋯MDN−1,1⋯⋯⋯MDN−1,mMDN,1MDN,2⋯MDN,m−1MDN,m,where MDij represents the matching degree of the i-th service to the j-th task; MDij = α × TFij + β × HFij + γ × DFij, 1≤i ≤ N, 1 ≤ j ≤ m; α, β, and γ are the weight coefficients. Every influencing factor has different importance to service matching degree, and the three influencing factors can be given different weight coefficients. The sum of the weight coefficients of the three factors is equal to 1, i.e., α + β + γ = 1, which is helpful for calculating service matching degree and evaluating the importance of the three factors.


### 3.4. Composition Synergy Degree Modeling

Composition synergy degree (SD) represents the collaboration level among cloud manufacturing services that are composed to perform a complicated manufacturing task. Composition synergy degree reflects the collaborative relationship between two cloud manufacturing services in service composition. In service composition, the more convenient the information exchange between cloud manufacturing services and the smoother the material transportation, the shorter the time for them to cooperate to complete manufacturing tasks, and the higher the composition synergy degree between cloud manufacturing services; on the contrary, the lower the composition synergy degree [31]. With low composition synergy degree, there are serious obstacles to information exchange and material transportation between cloud manufacturing services, which can delay product delivery and increase execution cost. The composition synergy degree of cloud manufacturing services is directly reflected in execution time. The composition synergy degree can be evaluated by calculating the time taken by cloud manufacturing services to complete manufacturing tasks. For example, the composition synergy degree between services Si and Sj used to complete tasks Ji and Jj is calculated as follows:(4)SDij=Ti+TjTij,where Ti is the time taken by service Si to complete task Ji independently, Tj is the time taken by Sj to complete Jj independently, and Tij is the total time taken by two services Si and Sj to synergically perform two tasks Ji and Jj. The relationship structure between tasks affects the calculation of execution time. There are mainly parallel, sequential, and interactive coupling relationships among manufacturing tasks. It is relatively easy to calculate the total execution time of complex manufacturing tasks composed of independent manufacturing subtasks. However, the calculation of the total execution time of complex manufacturing tasks with interactive coupling relationship is rather complicated. The calculation for Tij in different cases is listed in the following equation:(5)Tij=maxTi,Tj,if manufacturing tasksJiandJjare parallel and independent with each other,Ti+Tj,if manufacturing tasksJiandJjare sequential and independent with each other,Ti+Tj+2ζijTi⋅Tj,if there is an interactive coupling relationship between tasksJiandJj,where ζij is the interactive coupling coefficient, and its range is [−1, 1]. The higher the previous cooperation frequency and the better the smoothness of service interaction and material transportation, the smaller the ζij value; on the contrary, the bigger the ζij value. Tij=maxTi,Tj is the total completion time calculation formula when manufacturing tasks Ji and Jj are independent and in the parallel relationship. Tij=Ti+Tj is the total completion time calculation formula when manufacturing tasks Ji and Jj are independent and in the sequence relationship. Tij=Ti+Tj+2ζijTi⋅Tj is a formula for calculating the total completion time of manufacturing tasks Ji and Jj when they are in the interactive coupling relationship. It is based on the electromagnetic coupling principle in physics. Because of the interactive coupling relationship between manufacturing tasks Ji and Jj, the completion process of two subtasks depends on each other and influences each other. The interactive coupling coefficient ζij transforms the qualitative relationship of interdependence and mutual influence into a quantitative one, which is helpful for a clearer analysis of the characteristics and rules of the relationship [32].Thus, the composition synergy degree matrix of cloud manufacturing service can be constructed as follows:(6)SD=SD11SD12SD13⋯SD1,N−1SD1,NSD21SD22⋯⋯⋯SD2,NSD31⋯⋯⋯⋯⋯⋯⋯⋯SDij⋯⋯SDN−1,1⋯⋯⋯⋯SDN−1,NSDN,1SDN,2⋯⋯SDN,N−1SDN,N,where SDij represents the composition synergy degree of the i-th cloud manufacturing service to the j-th cloud manufacturing service in service composition.


### 3.5. Cloud Entropy Modeling

Simple and orderly service composition structure has greater certainty to complete manufacturing tasks successfully. Complex and disordered cloud manufacturing service composition structure is prone to failure, and the probability of successfully completing manufacturing tasks is small. Entropy originated from thermodynamic research and has been widely recognized and accepted by the scientific community since it gained great development in information theory. Different cloud manufacturing services have different continuous working times, maintenance times, and logistics times when performing manufacturing tasks. The process of cloud manufacturing services completing manufacturing tasks at one time is obviously simpler than that of dividing them into multiple stages to complete. The quantification level of complexity and orderliness of cloud manufacturing service composition can be expressed by cloud entropy (CE). The cloud entropy of thei-th cloud manufacturing service to complete corresponding manufacturing task can be calculated as follows [33]:(7)CEi=−∑j=1QiSTijTTilnSTijTTi,where CEi is the cloud entropy of the i-th cloud manufacturing service, STij is the duration of the i-th cloud manufacturing service in the j-th state, TTi is the total time of the i-th service for completing the corresponding task, and Qi is the total state number of the i-th service for completing the task. The cloud entropy of a cloud manufacturing service composition is equal to the sum of cloud entropy of all cloud manufacturing services in the service composition scheme. Cloud entropy is used to measure the composition complexity. Its calculation formula is shown in equation (8) [33]. The smaller the cloud entropy is, the more orderly and simpler the cloud manufacturing service composition is, and the higher the reliability is:(8)CE=−∑i=1N∑j=1QiSTijTTilnSTijTTi,where N is the total service number in the service composition and CE is the cloud entropy of cloud manufacturing service composition.


### 3.6. Multiobjective Optimization Model for Service Composition

The ultimate goal of cloud manufacturing service composition is to select the best cloud services to complete all of the users’ manufacturing tasks. The resulting service composition scheme should meet the constraints of execution time and execution cost and make the cloud manufacturing service composition have the highest composition synergy degree, the biggest composition matching degree, the smallest cloud entropy, the smallest execution time, and the smallest execution cost. Cloud manufacturing service composition is a multiobjective optimization problem, and its mathematical model is constructed as follows:(9)maxY1=max∑i=1N∑j=1mMDij⋅ξij,(10)maxY2=max∑j=1m∑k=1j∑p=1N∑q=1NSDpq⋅ξpj⋅ξqk,(11)minY3=minCE=min−∑i=1N∑j=1QiSTijTTilnSTijTTi,(12)minY4=minET=minmaxT1,T2,T3,…,Tm−1,Tm,(13)minY5=minEC=min∑j=1mECj=min∑j=1m∑i=1NTi⋅wi⋅ξij,(14)s.t.maxT1,T2,T3,⋯,Tm−1,Tm≤ET0(15)∑j=1mECj=∑j=1m∑i=1NTi⋅wi⋅ξij≤EC0,(16)∑i=1Nξij≥1,(17)ξij=1,if thej‐th manufacturing task is allocated to thei‐th cloud manufacturing service,0,otherwise,where wi represents the unit time cost and ECj represents the execution cost of the j-th manufacturing task. Equations (9)–(13) are objective functions, in which equation (9) maximizes the total service matching degree, equation (10) maximizes the total composition synergy degree, and equations (11)–(13) represent the minimum values of the total cloud entropy, execution time, and execution cost of service composition, respectively. Equations (14)–(16) are constraints, in which equation (14) stipulates that the maximum execution time of m manufacturing tasks cannot exceed the threshold time ET0. Equation (15) stipulates that the maximum execution cost of m manufacturing tasks cannot exceed the threshold cost EC0. Equation (16) stipulates that every task must be allocated to one or more cloud services for execution.


## 3.1. Service Composition Problem Description

In cloud manufacturing, a complex manufacturing task needs to be decomposed into several simple manufacturing subtasks to complete in most cases. By searching for simple cloud services matching each manufacturing subtask in the cloud manufacturing service platform for composition and optimization, the complex cloud service with coarse granularity is constructed to achieve the complex manufacturing task requirements. If a complex manufacturing taskJ can be decomposed into m manufacturing subtasks, and it can be expressed as J = {J1, J2, Jj,…, Jm−1, Jm}, where Jj is the j-th manufacturing subtask of the complex manufacturing task J, j = 1, 2, 3, ⋯, m. For each manufacturing subtask, the corresponding candidate manufacturing cloud services are searched in the cloud resource pool to form the candidate manufacturing cloud service set Sj of the j-th manufacturing subtask. The j-th cloud service set can be expressed as Sj = {S1,j, S2,j, …, Sbi,j}, where bi denotes the number of cloud services contained in the j-th cloud service set and Sbi,j denotes the bi-th cloud service in the j-th cloud service set. The total number of cloud services in n cloud service sets S1, S2, …, Sj, …, Sn is N=∑j=1nbj. The cloud manufacturing service composition process is shown in Figure 1 [29].Figure 1
Cloud manufacturing service composition process [29].


## 3.2. Computation of Execution Time and Execution Cost

Minimum time and minimum cost are two basic principles in the operation of a company’s business. In the research field of cloud manufacturing service composition, service execution time and execution cost are important indicators for performance evaluation of cloud manufacturing service composition schemes. According to the characteristics of manufacturing resources in cloud manufacturing environment, service execution time and execution cost are defined as follows.Execution time (ET) is the response time for cloud manufacturing service to manufacturing task. Because cloud manufacturing service involves both online and offline factors, and its execution time is longer than that of ordinary web service. Moreover, the influence of logistics time in heterogeneous cloud manufacturing environment often becomes the bottleneck of the whole manufacturing process. Therefore, it is necessary to take logistics time into consideration of service quality. To sum up, the value of execution time is equal to the sum of the processing time of cloud manufacturing services, the time required for auxiliary work (such as equipment maintenance and workpiece clamping), and the time consumed for material transportation during service execution, namely,(1)ET=Tprocessing+Tauxiliary+Tlogistics,where ET is the execution time, Tprocessing is the processing time, Tauxiliary is the auxiliary time, and Tlogistics is the logistics time.Execution cost (EC) is the cost that service users pay for using the cloud manufacturing service. The value of execution cost is equal to the sum of manufacturing cloud service charges identified by service providers, payment for material transportation in the service execution, and third-party service fees charged by cloud platform, namely,(2)EC=Cservice+Clogistics+Cplatform,where EC is the execution cost, Cservice is the cloud service cost, Clogistics is the logistics cost, and Cplatform is the platform cost.The types of cloud manufacturing service composition include sequence composition, parallel composition, choice composition, and cycle composition, as shown in Figure2 [30]. In the sequence composition, different services are executed sequentially according to their order in the service composition. As shown in Figure 2(a), the two services S1 and S2 in the composition constitute an orderly serial chain, and service S2 can be executed only after service S1 has been executed. In the parallel composition, the two services S1 and S2 are executed concurrently, as shown in Figure 2(b). Fork is the beginning transition of service operation in the parallel composition, and join is the end transition. Only when S1 and S2 are all executed, can the end transition join be triggered. In the choice composition, as shown in Figure 2(c), one of the services is selected. As long as the selected service is successfully executed, the choice composition is successfully executed. Decision is the beginning transition of service operation of choice composition, and merge is the end transition. Figure 2(d) shows the cycle composition, where service S1 is repeatedly executed. Cycle is a cyclic operator. Cycle(k){S1} indicates that service S1 is repeatedly executed k times. Under different composition modes, the execution time and cost of cloud manufacturing service composition are different, as shown in Table 1 [30].Figure 2
Schematic diagrams of four main types of service composition [30]: (a) sequence composition; (b) parallel composition; (c) choice composition; (d) cycle composition.
(a)(b)(c)(d)Table 1
Calculation of execution time and cost for different types of service composition [30].
No.Composition typesExecution timeExecution cost1Sequence compositionETsequence=∑ETSiECsequence=∑ECSi2Parallel compositionETparallel=MaxETSiECparallel=∑ECSi3Choice compositionETchoice=∑θi⋅ETSiECchoice=∑θi⋅ECSi4Cycle compositionETcycle=k⋅ETSiECcycle=k⋅ECSiNote.θi is the probability that the i-th service in the choice composition is selected, and ∑θi=1. If the i-th service must not be selected, then θi=0. If the i-th service must be selected, then θi=1, and the probability of other services being selected is 0. k denotes the cycle number.Screening candidate services according to service execution time and execution cost is an important work in cloud manufacturing service composition. However, it is not enough to screen candidate services only according to the two indicators. In order to fully reflect the service quality of candidate cloud manufacturing services and service composition, this paper takes execution time, execution cost, service matching degree, composition synergy degree, and cloud entropy as five quality evaluation criteria of service composition and then carries out cloud manufacturing service composition model construction, algorithm improvement, and case analysis.


## 3.3. Service Matching Degree Modeling

Service matching degree (MD) is a quantitative measure of the matching between cloud manufacturing services and allocated manufacturing tasks. Service matching degree reflects the request-response relationship between cloud services and manufacturing tasks. The main factors affecting service matching degree are the idleness of manufacturing resources, equipment status, comprehensive manufacturing capability, service reputation, cumulative times of cloud manufacturing services performing similar manufacturing tasks, active degree of cloud manufacturing services, and distance between manufacturing resources mapped by cloud manufacturing services and service objects. According to the characteristics of different factors, the factors affecting service matching can be summarized as technical factor, hunger factor, and distance factor.


### 3.3.1. Technical Factor

Technical factor (TF) refers to evaluating the technical level of a cloud manufacturing service to accomplish a manufacturing task based on cumulative times of cloud manufacturing services performing similar manufacturing tasks, service reputation, service execution rate, service activity, and equipment performance in the past period of time. It is described by the rank vector TFij = [0, 0.1, 0.2, 0.3, ⋯, 0.9, 1], in which TFij represents the technical capability measurement of the i-th service that performs the j-th task, 1 ≤ i ≤ N, 1≤j ≤ m. The technical capability of N cloud services that perform m manufacturing tasks can be described by N × m technical matrix TF = (TFij)N × m.


### 3.3.2. Hunger Factor

One of the outstanding contributions of cloud manufacturing is to activate idle manufacturing resources. The idle rate of manufacturing resources refers to the ratio of the number of available manufacturing resources unused for manufacturing tasks to the total number of manufacturing resources. According to the idle rate of manufacturing resources mapped by cloud manufacturing services, the desire level of the cloud manufacturing services to undertake and complete manufacturing tasks can be evaluated, which is described as hunger factor HFij. HFij represents the hunger degree of the i-th service to undertake and complete the j-th task, 1 ≤i ≤ N, 1 ≤ j ≤ m. The range of HFij is [0, 1]. The higher the idle rate of manufacturing resources mapped by cloud manufacturing services, the more hungry and thirsty for accepting manufacturing tasks, and the bigger the hunger factor; on the contrary, the smaller the hunger factor. The value of hunger factor can be obtained by calculating the idle rate of manufacturing resources, and the hunger factor matrix is HF = (HFij)N×m.


### 3.3.3. Distance Factor

Cloud manufacturing services are more complicated than ordinary web services due to the influence of offline factors in the execution process. Spatial distance often becomes a constraint in the execution process of cloud manufacturing services. Generally, small spatial distance is beneficial to the execution of cloud manufacturing services, while large spatial distance is not conducive to the execution of cloud manufacturing services. Distance factor is introduced to describe the impact of the relative distance between manufacturing resources mapped by cloud manufacturing services and service users on the execution of cloud manufacturing services. It is expressed as DFij, 1 ≤ i ≤ N, 1 ≤ j ≤ m. DFij represents the distance factor between the manufacturing resources mapped by the i-th cloud manufacturing service and the j-th service users. The range of DFij is [0, 1]. The smaller the relative distance, the larger the distance factor; on the contrary, the smaller the distance factor. For example, if the distance between cloud manufacturing resources and cloud service users is 300 km, then DFij = 0.4; if the distance is 50 km, then DFij = 0.8; if the distance is less than 1 km, then DFij = 1; similarly, other corresponding distance factors can be obtained.In summary, service matching degree matrix can be calculated as follows:(3)MD=MD11MD12⋯MD1,m−1MD1mMD21⋯⋯⋯MD2,m⋯⋯MDij⋯⋯MDN−1,1⋯⋯⋯MDN−1,mMDN,1MDN,2⋯MDN,m−1MDN,m,where MDij represents the matching degree of the i-th service to the j-th task; MDij = α × TFij + β × HFij + γ × DFij, 1≤i ≤ N, 1 ≤ j ≤ m; α, β, and γ are the weight coefficients. Every influencing factor has different importance to service matching degree, and the three influencing factors can be given different weight coefficients. The sum of the weight coefficients of the three factors is equal to 1, i.e., α + β + γ = 1, which is helpful for calculating service matching degree and evaluating the importance of the three factors.


## 3.3.1. Technical Factor

Technical factor (TF) refers to evaluating the technical level of a cloud manufacturing service to accomplish a manufacturing task based on cumulative times of cloud manufacturing services performing similar manufacturing tasks, service reputation, service execution rate, service activity, and equipment performance in the past period of time. It is described by the rank vector TFij = [0, 0.1, 0.2, 0.3, ⋯, 0.9, 1], in which TFij represents the technical capability measurement of the i-th service that performs the j-th task, 1 ≤ i ≤ N, 1≤j ≤ m. The technical capability of N cloud services that perform m manufacturing tasks can be described by N × m technical matrix TF = (TFij)N × m.


## 3.3.2. Hunger Factor

One of the outstanding contributions of cloud manufacturing is to activate idle manufacturing resources. The idle rate of manufacturing resources refers to the ratio of the number of available manufacturing resources unused for manufacturing tasks to the total number of manufacturing resources. According to the idle rate of manufacturing resources mapped by cloud manufacturing services, the desire level of the cloud manufacturing services to undertake and complete manufacturing tasks can be evaluated, which is described as hunger factor HFij. HFij represents the hunger degree of the i-th service to undertake and complete the j-th task, 1 ≤i ≤ N, 1 ≤ j ≤ m. The range of HFij is [0, 1]. The higher the idle rate of manufacturing resources mapped by cloud manufacturing services, the more hungry and thirsty for accepting manufacturing tasks, and the bigger the hunger factor; on the contrary, the smaller the hunger factor. The value of hunger factor can be obtained by calculating the idle rate of manufacturing resources, and the hunger factor matrix is HF = (HFij)N×m.


## 3.3.3. Distance Factor

Cloud manufacturing services are more complicated than ordinary web services due to the influence of offline factors in the execution process. Spatial distance often becomes a constraint in the execution process of cloud manufacturing services. Generally, small spatial distance is beneficial to the execution of cloud manufacturing services, while large spatial distance is not conducive to the execution of cloud manufacturing services. Distance factor is introduced to describe the impact of the relative distance between manufacturing resources mapped by cloud manufacturing services and service users on the execution of cloud manufacturing services. It is expressed as DFij, 1 ≤ i ≤ N, 1 ≤ j ≤ m. DFij represents the distance factor between the manufacturing resources mapped by the i-th cloud manufacturing service and the j-th service users. The range of DFij is [0, 1]. The smaller the relative distance, the larger the distance factor; on the contrary, the smaller the distance factor. For example, if the distance between cloud manufacturing resources and cloud service users is 300 km, then DFij = 0.4; if the distance is 50 km, then DFij = 0.8; if the distance is less than 1 km, then DFij = 1; similarly, other corresponding distance factors can be obtained.In summary, service matching degree matrix can be calculated as follows:(3)MD=MD11MD12⋯MD1,m−1MD1mMD21⋯⋯⋯MD2,m⋯⋯MDij⋯⋯MDN−1,1⋯⋯⋯MDN−1,mMDN,1MDN,2⋯MDN,m−1MDN,m,where MDij represents the matching degree of the i-th service to the j-th task; MDij = α × TFij + β × HFij + γ × DFij, 1≤i ≤ N, 1 ≤ j ≤ m; α, β, and γ are the weight coefficients. Every influencing factor has different importance to service matching degree, and the three influencing factors can be given different weight coefficients. The sum of the weight coefficients of the three factors is equal to 1, i.e., α + β + γ = 1, which is helpful for calculating service matching degree and evaluating the importance of the three factors.


## 3.4. Composition Synergy Degree Modeling

Composition synergy degree (SD) represents the collaboration level among cloud manufacturing services that are composed to perform a complicated manufacturing task. Composition synergy degree reflects the collaborative relationship between two cloud manufacturing services in service composition. In service composition, the more convenient the information exchange between cloud manufacturing services and the smoother the material transportation, the shorter the time for them to cooperate to complete manufacturing tasks, and the higher the composition synergy degree between cloud manufacturing services; on the contrary, the lower the composition synergy degree [31]. With low composition synergy degree, there are serious obstacles to information exchange and material transportation between cloud manufacturing services, which can delay product delivery and increase execution cost. The composition synergy degree of cloud manufacturing services is directly reflected in execution time. The composition synergy degree can be evaluated by calculating the time taken by cloud manufacturing services to complete manufacturing tasks. For example, the composition synergy degree between services Si and Sj used to complete tasks Ji and Jj is calculated as follows:(4)SDij=Ti+TjTij,where Ti is the time taken by service Si to complete task Ji independently, Tj is the time taken by Sj to complete Jj independently, and Tij is the total time taken by two services Si and Sj to synergically perform two tasks Ji and Jj. The relationship structure between tasks affects the calculation of execution time. There are mainly parallel, sequential, and interactive coupling relationships among manufacturing tasks. It is relatively easy to calculate the total execution time of complex manufacturing tasks composed of independent manufacturing subtasks. However, the calculation of the total execution time of complex manufacturing tasks with interactive coupling relationship is rather complicated. The calculation for Tij in different cases is listed in the following equation:(5)Tij=maxTi,Tj,if manufacturing tasksJiandJjare parallel and independent with each other,Ti+Tj,if manufacturing tasksJiandJjare sequential and independent with each other,Ti+Tj+2ζijTi⋅Tj,if there is an interactive coupling relationship between tasksJiandJj,where ζij is the interactive coupling coefficient, and its range is [−1, 1]. The higher the previous cooperation frequency and the better the smoothness of service interaction and material transportation, the smaller the ζij value; on the contrary, the bigger the ζij value. Tij=maxTi,Tj is the total completion time calculation formula when manufacturing tasks Ji and Jj are independent and in the parallel relationship. Tij=Ti+Tj is the total completion time calculation formula when manufacturing tasks Ji and Jj are independent and in the sequence relationship. Tij=Ti+Tj+2ζijTi⋅Tj is a formula for calculating the total completion time of manufacturing tasks Ji and Jj when they are in the interactive coupling relationship. It is based on the electromagnetic coupling principle in physics. Because of the interactive coupling relationship between manufacturing tasks Ji and Jj, the completion process of two subtasks depends on each other and influences each other. The interactive coupling coefficient ζij transforms the qualitative relationship of interdependence and mutual influence into a quantitative one, which is helpful for a clearer analysis of the characteristics and rules of the relationship [32].Thus, the composition synergy degree matrix of cloud manufacturing service can be constructed as follows:(6)SD=SD11SD12SD13⋯SD1,N−1SD1,NSD21SD22⋯⋯⋯SD2,NSD31⋯⋯⋯⋯⋯⋯⋯⋯SDij⋯⋯SDN−1,1⋯⋯⋯⋯SDN−1,NSDN,1SDN,2⋯⋯SDN,N−1SDN,N,where SDij represents the composition synergy degree of the i-th cloud manufacturing service to the j-th cloud manufacturing service in service composition.


## 3.5. Cloud Entropy Modeling

Simple and orderly service composition structure has greater certainty to complete manufacturing tasks successfully. Complex and disordered cloud manufacturing service composition structure is prone to failure, and the probability of successfully completing manufacturing tasks is small. Entropy originated from thermodynamic research and has been widely recognized and accepted by the scientific community since it gained great development in information theory. Different cloud manufacturing services have different continuous working times, maintenance times, and logistics times when performing manufacturing tasks. The process of cloud manufacturing services completing manufacturing tasks at one time is obviously simpler than that of dividing them into multiple stages to complete. The quantification level of complexity and orderliness of cloud manufacturing service composition can be expressed by cloud entropy (CE). The cloud entropy of thei-th cloud manufacturing service to complete corresponding manufacturing task can be calculated as follows [33]:(7)CEi=−∑j=1QiSTijTTilnSTijTTi,where CEi is the cloud entropy of the i-th cloud manufacturing service, STij is the duration of the i-th cloud manufacturing service in the j-th state, TTi is the total time of the i-th service for completing the corresponding task, and Qi is the total state number of the i-th service for completing the task. The cloud entropy of a cloud manufacturing service composition is equal to the sum of cloud entropy of all cloud manufacturing services in the service composition scheme. Cloud entropy is used to measure the composition complexity. Its calculation formula is shown in equation (8) [33]. The smaller the cloud entropy is, the more orderly and simpler the cloud manufacturing service composition is, and the higher the reliability is:(8)CE=−∑i=1N∑j=1QiSTijTTilnSTijTTi,where N is the total service number in the service composition and CE is the cloud entropy of cloud manufacturing service composition.


## 3.6. Multiobjective Optimization Model for Service Composition

The ultimate goal of cloud manufacturing service composition is to select the best cloud services to complete all of the users’ manufacturing tasks. The resulting service composition scheme should meet the constraints of execution time and execution cost and make the cloud manufacturing service composition have the highest composition synergy degree, the biggest composition matching degree, the smallest cloud entropy, the smallest execution time, and the smallest execution cost. Cloud manufacturing service composition is a multiobjective optimization problem, and its mathematical model is constructed as follows:(9)maxY1=max∑i=1N∑j=1mMDij⋅ξij,(10)maxY2=max∑j=1m∑k=1j∑p=1N∑q=1NSDpq⋅ξpj⋅ξqk,(11)minY3=minCE=min−∑i=1N∑j=1QiSTijTTilnSTijTTi,(12)minY4=minET=minmaxT1,T2,T3,…,Tm−1,Tm,(13)minY5=minEC=min∑j=1mECj=min∑j=1m∑i=1NTi⋅wi⋅ξij,(14)s.t.maxT1,T2,T3,⋯,Tm−1,Tm≤ET0(15)∑j=1mECj=∑j=1m∑i=1NTi⋅wi⋅ξij≤EC0,(16)∑i=1Nξij≥1,(17)ξij=1,if thej‐th manufacturing task is allocated to thei‐th cloud manufacturing service,0,otherwise,where wi represents the unit time cost and ECj represents the execution cost of the j-th manufacturing task. Equations (9)–(13) are objective functions, in which equation (9) maximizes the total service matching degree, equation (10) maximizes the total composition synergy degree, and equations (11)–(13) represent the minimum values of the total cloud entropy, execution time, and execution cost of service composition, respectively. Equations (14)–(16) are constraints, in which equation (14) stipulates that the maximum execution time of m manufacturing tasks cannot exceed the threshold time ET0. Equation (15) stipulates that the maximum execution cost of m manufacturing tasks cannot exceed the threshold cost EC0. Equation (16) stipulates that every task must be allocated to one or more cloud services for execution.


## 4. Improved Particle Swarm Optimization Algorithm

The cloud manufacturing service composition problem is a NP-hard problem of multiobjective collaborative optimization. The traditional particle swarm optimization algorithm is easy to premature and fall into local extremum, and it is difficult to adapt to complex nonlinear optimization problem. Therefore, its optimization quality needs to be improved. This paper introduces the normal cloud model [34] to improve the inertia coefficient and acceleration coefficient of the traditional particle swarm optimization algorithm, balances the global exploration and local development ability of the algorithm, and designs an improved particle swarm optimization algorithm (IPSOA) to solve the cloud manufacturing service composition mathematical model. The algorithm process is shown in Figure 3.Figure 3
Flow chart of IPSOA.


### 4.1. Particle Encoding Method

The mapping relationship between particle position vector and service composition scheme is established by the integer encoding method. In cloud manufacturing environment, if a multifunctional requirement task is decomposed intom subtasks, and each subtask is allocated to a candidate cloud service to perform; then, the service composition used by the complex manufacturing task is composed of m single resource cloud services. A cloud service composition is represented as an m-dimensional particle. The particle dimension is ParDim = m. The j-th dimension of the particle represents the j-th subtask Jj of the complex manufacturing task, and the task Jj corresponds to a cloud service set Sj, which contains multiple candidate cloud services for the task Jj. The value of the j-th dimension represents the candidate cloud service number selected by the task Jj. Assuming that the particle swarm consists of R particles, the position and velocity of the i-th particle can be represented by an m-dimensional vector as follows:(18)xi=xi,1,xi,2,xi,3,⋯,xi,m,i=1,2,3,…,R,(19)vi=vi,1,vi,2,vi,3,…,vi,m,i=1,2,3,…,Rwhere xi,j and vi,j represent the position and velocity of the j-th dimension of the i-th particle, respectively. The position xi,j of the particle represents the candidate cloud service number selected by the task Jj in the process of service composition. Figure 4 shows the corresponding relationship between particle and service composition.Figure 4
The corresponding relationship between particle and service composition.BPi and BGi represent the historical optimal position of the i-th particle (i.e., individual extremum) and the global optimum position of the whole particle swarm (i.e., global extremum), respectively. Both of them can be represented by an m-dimensional vector as follows:(20)BPi=BPi,1,BPi,2,BPi,3,…,BPi,m,i=1,2,3,…,R,(21)BG=BG1,BG2,BG3,…,BGm,where BPi,j represents the optimal position of the i-th particle in the j-th dimension and BG represents the optimal service composition selected by the manufacturing task set J=J1,J2,J3,…,Jm.In the first iteration of the algorithm, the particlePi in the particle swarm is randomly generated and assigned to BPi, and the particle with the optimal fitness value is assigned to BG. In each subsequent iteration, BPi and BG are updated according to particle fitness values. When the maximum iteration number is reached, the algorithm is terminated, and cloud manufacturing service composition with the optimal comprehensive service quality is obtained.


### 4.2. Velocity and Position Updating Method

The formulas for particle velocity and position updating are as follows:(22)vi,jt+1=ψ⋅vi,jt+c1⋅r1t⋅BPi,jt−xi,jt+c2⋅r2t⋅BGjt−xi,jt,(23)xi,jt+1=xi,jt+vi,jt+1,where ψ represents the inertia coefficient, t represents the current number of iterations, i represents the particle number, j represents the j-th dimension of the particle, c1 and c2 represent the acceleration coefficient, and r1t and r2t are random numbers distributed in [0, 1]. The right side of equation (22) consists of three parts: ψ⋅vi,jt is the momentum part of the particle, which reflects the inertia of the particle motion, and indicates that the particle has the tendency to maintain its previous velocity; c1⋅r1t⋅BPi,jt−xi,jt is the part of the particle’s self-recognition, which reflects the memory of the particle's own historical experience, and indicates that the particle has the tendency to approach its best historical position; c2⋅r2t⋅BGjt−xi,jt is the social consciousness part of the particle, which reflects the collective historical experience of cooperation and knowledge sharing among particles, and indicates that the particle tends to approach the best historical position of group or neighborhood.


### 4.3. Inertia Coefficient Setting

Inertia coefficient is one of the most important parameters in the particle swarm optimization algorithm. A bigger inertia coefficient can improve the global search ability of the algorithm and avoid premature convergence because of falling into local extremum. A smaller inertia coefficient can help to achieve accurate search in an area and improve convergence accuracy. In order to avoid falling into local extremum and improve the diversity of particles, the normal cloud model is introduced to improve the inertia and acceleration coefficients of the traditional particle swarm optimization algorithm, and a nonlinear inertia coefficient is set up to balance the global exploration and local development ability of the particle swarm optimization algorithm. Normal cloud model is a set of random numbers, which follow the normal distribution law and has a stable tendency. It is described by four main parameters: expected value ExpVal, particle entropy ParEnt, standard deviation StaDev, and hyperentropy HypEnt. The improved inertia coefficient is calculated as follows [34]:(24)ψ=η1e−f−ExpVal2/2StaDev2,f≥f¯,η2ψmax−f−fminfmax−fminψmax−ψmin,f<f¯,where ExpVal = f¯, in which f¯ is the average fitness value of particles in the particle swarm; StaDev = r3×HypEnt+CloEnt, in which r3 is a random number distributed in [0, 1]; ParEnt = fmax−f¯/τ1, in which τ1 is the control coefficient of particle entropy; HypEnt = CloEnt/τ2, in which τ2 is the control coefficient of hyperentropy; ψmax is the maximum inertia coefficient of the particle swarm; ψmin is the minimum inertia coefficient of the particle swarm; fmax is the maximum fitness value of the particle swarm; fmin is the minimum fitness value of the particle swarm; f¯ is the average fitness value of the particle swarm; f is the fitness value of the particle; and η1 and η2 are the constants in [0, 1] and can be set η1=0.4 and η2=0.8. From the analysis of equation (24), the inertia coefficient ψ has a larger value in the initial stage. With the increase in iterations, the inertia coefficient gradually decreases, which makes the algorithm change from global search in the initial stage to local fine search in the later stage.The verticality of normal cloud model curve is controlled by particle entropy ParEnt. The average value of the normal cloud model is reflected in expected value ExpVal. The cloud particles in the model fluctuate around ExpVal, which shows the discreteness of cloud particles. The discreteness of cloud particles is mainly determined by the hyperentropy HypEnt. The randomness of normal cloud model increases with the increase in HypEnt, and its stability increases with the decrease in HypEnt. With the help of the normal cloud model, the IPSOA algorithm improves the global search ability in the initial stage, restrains the premature convergence to form a more comprehensive solution space, and focuses on local fine search in the later stage of the algorithm.


### 4.4. Acceleration Coefficients Setting

In the iteration process of IPSOA algorithm, the acceleration coefficientsc1 and c2 determine the influence of particle self-cognition and social cognition on particle trajectory, which reflects the information exchange degree between particles in swarms, and represent the acceleration weights of particles advancing towards their own extremum and global extremum, respectively. The formulas for calculating the acceleration coefficients are as follows [35]:(25)c1=c1,start+c1,end−c1,startsinψ,(26)c2=c2,start−c2,start−c2,endcosψ,where c1 is the self-acceleration coefficient, c2 is the global acceleration coefficient, c1,start and c2,start are the initial values of acceleration coefficients c1 and c2, and c1,end and c2,end are their termination values, respectively. Acceleration coefficients c1 and c2 are set according to equations (25) and (26). Setting larger global acceleration coefficient and smaller self-acceleration coefficient in the initial stage of the IPSOA algorithm, the social learning ability of the particle is stronger and the self-learning ability is weaker, which is beneficial to strengthening the global search ability; setting smaller global acceleration coefficient and larger self-acceleration coefficient at the later stage of the IPSOA algorithm, the self-learning ability of the particle is stronger and the social learning ability is weaker, which is beneficial to local fine search and converges to the global optimal solution with high precision.


### 4.5. Fitness Function Establishment

The multiple objectives of cloud manufacturing service composition interact with each other and are difficult to solve directly by general mathematical methods. However, cloud service users often have a clear understanding of the objectives and expectations of cloud manufacturing service composition. The purpose of cloud manufacturing service composition can be expressed as finding a cloud manufacturing service composition scheme which is as close as possible to the expectations of cloud service users under limited time, limited cost, and other conditions. The expectations of cloud service users are defined as the ideal point of the objective functions of cloud manufacturing service composition. IPSOA algorithm uses the ideal point method to design fitness function. The criterion for evaluating the effect of service composition scheme is the distance between ideal point and objective function values, i.e., deviation. Its calculation formula is as follows:(27)Dev=Y1i−Y1∗2+Y2i−Y2∗2+Y3i−Y3∗2+Y4i−Y4∗2+Y5i−Y5∗2,where Y1i, Y2i, Y3i, Y4i, and Y5i are the five objective function values of cloud manufacturing service composition scheme corresponding to the i-th particle; Y1∗, Y2∗, Y3∗, Y4∗, and Y5∗ are the optimal values of five objective functions, respectively, which constitute the ideal point; and Dev is the deviation.Dimensionless treatment is done for five objective functions of cloud manufacturing service composition, so the deviation formula is changed to(28)Dev′=Y1i−Y1∗Y1∗2+Y2i−Y2∗Y2∗2+Y3i−Y3∗Y3∗2+Y4i−Y4∗Y4∗2+Y5i−Y5∗Y5∗2,where Dev′ is called the relative deviation.The smaller the deviation, the better the service composition scheme; on the contrary, the worse the service composition scheme. There are two main methods to determine the ideal point: one is to calculate the optimal values through single-objective function optimization algorithm to form the ideal point, and another is to compose the ideal point by all objective function expected values specified by cloud service users. Weight coefficients are given according to the different importance of five objective functions. Thus, the fitness function of IPSOA algorithm can be designed as follows:(29)fi=Γ−δ1Y1i−Y1∗Y1∗2+δ2Y2i−Y2∗Y2∗2+δ3Y3i−Y3∗Y3∗2++δ4Y4i−Y4∗Y4∗2+δ5Y5i−Y5∗Y5∗2,where f(i) is the fitness function value of the i-th particle; Γ is a sufficiently large positive number; δ1, δ2, δ3, δ4, and δ5 are the weight coefficients of the five objective functions respectively; and ∑k=15δk=1.


### 4.6. IPSOA Algorithm Steps

The main steps of IPSOA algorithm are as follows:Step 1: initialize particle swarm, including particle swarm size ParSiz, positionxi, and velocity vi of each particle; set the initial and end values of acceleration coefficients c1 and c2, maximum evolutionary generation MaxGen, and randomly initialize the initial position and initial velocity of each particle in the definition domain. The initial position of the particle is set as the initial individual optimal position, and the position of the particle with the best fitness in the particle swarm is set as the initial global optimal position.Step 2: calculate service matching degree, composition synergy degree, cloud entropy, execution time, and execution cost.Step 3: calculate the fitness value of all the particles in the particle swarm.Step 4: for each particle, compare its fitness valuefi with individual extremum fBPi. If fi>fBPi, then replace fBPi with fi and BPi with Pi.Step 5: for each particle, compare its fitness valuefi with global extremum fBG. If fi>fBG, then replace fBG with fi and BG with Pi.Step 6: update the inertia coefficient of particles according to equation (24); update the self-acceleration coefficient and global acceleration coefficient of particles according to equations (25) and (26); update the velocity and position of particles according to equations (22) and (23).Step 7: check the termination condition of the algorithm. If the evolutionary generation reaches the set maximum value or other algorithm end conditions are met, stop the iterative operation of the algorithm and output the results; otherwise, return to step 2.IPSOA is a parallel algorithm. All the particles can be divided into several groups [36]. Each group solves the optimization problem separately, and each group is computed by one core of the multicore CPU, i.e., parallel computing, to achieve concurrent solutions.


## 4.1. Particle Encoding Method

The mapping relationship between particle position vector and service composition scheme is established by the integer encoding method. In cloud manufacturing environment, if a multifunctional requirement task is decomposed intom subtasks, and each subtask is allocated to a candidate cloud service to perform; then, the service composition used by the complex manufacturing task is composed of m single resource cloud services. A cloud service composition is represented as an m-dimensional particle. The particle dimension is ParDim = m. The j-th dimension of the particle represents the j-th subtask Jj of the complex manufacturing task, and the task Jj corresponds to a cloud service set Sj, which contains multiple candidate cloud services for the task Jj. The value of the j-th dimension represents the candidate cloud service number selected by the task Jj. Assuming that the particle swarm consists of R particles, the position and velocity of the i-th particle can be represented by an m-dimensional vector as follows:(18)xi=xi,1,xi,2,xi,3,⋯,xi,m,i=1,2,3,…,R,(19)vi=vi,1,vi,2,vi,3,…,vi,m,i=1,2,3,…,Rwhere xi,j and vi,j represent the position and velocity of the j-th dimension of the i-th particle, respectively. The position xi,j of the particle represents the candidate cloud service number selected by the task Jj in the process of service composition. Figure 4 shows the corresponding relationship between particle and service composition.Figure 4
The corresponding relationship between particle and service composition.BPi and BGi represent the historical optimal position of the i-th particle (i.e., individual extremum) and the global optimum position of the whole particle swarm (i.e., global extremum), respectively. Both of them can be represented by an m-dimensional vector as follows:(20)BPi=BPi,1,BPi,2,BPi,3,…,BPi,m,i=1,2,3,…,R,(21)BG=BG1,BG2,BG3,…,BGm,where BPi,j represents the optimal position of the i-th particle in the j-th dimension and BG represents the optimal service composition selected by the manufacturing task set J=J1,J2,J3,…,Jm.In the first iteration of the algorithm, the particlePi in the particle swarm is randomly generated and assigned to BPi, and the particle with the optimal fitness value is assigned to BG. In each subsequent iteration, BPi and BG are updated according to particle fitness values. When the maximum iteration number is reached, the algorithm is terminated, and cloud manufacturing service composition with the optimal comprehensive service quality is obtained.


## 4.2. Velocity and Position Updating Method

The formulas for particle velocity and position updating are as follows:(22)vi,jt+1=ψ⋅vi,jt+c1⋅r1t⋅BPi,jt−xi,jt+c2⋅r2t⋅BGjt−xi,jt,(23)xi,jt+1=xi,jt+vi,jt+1,where ψ represents the inertia coefficient, t represents the current number of iterations, i represents the particle number, j represents the j-th dimension of the particle, c1 and c2 represent the acceleration coefficient, and r1t and r2t are random numbers distributed in [0, 1]. The right side of equation (22) consists of three parts: ψ⋅vi,jt is the momentum part of the particle, which reflects the inertia of the particle motion, and indicates that the particle has the tendency to maintain its previous velocity; c1⋅r1t⋅BPi,jt−xi,jt is the part of the particle’s self-recognition, which reflects the memory of the particle's own historical experience, and indicates that the particle has the tendency to approach its best historical position; c2⋅r2t⋅BGjt−xi,jt is the social consciousness part of the particle, which reflects the collective historical experience of cooperation and knowledge sharing among particles, and indicates that the particle tends to approach the best historical position of group or neighborhood.


## 4.3. Inertia Coefficient Setting

Inertia coefficient is one of the most important parameters in the particle swarm optimization algorithm. A bigger inertia coefficient can improve the global search ability of the algorithm and avoid premature convergence because of falling into local extremum. A smaller inertia coefficient can help to achieve accurate search in an area and improve convergence accuracy. In order to avoid falling into local extremum and improve the diversity of particles, the normal cloud model is introduced to improve the inertia and acceleration coefficients of the traditional particle swarm optimization algorithm, and a nonlinear inertia coefficient is set up to balance the global exploration and local development ability of the particle swarm optimization algorithm. Normal cloud model is a set of random numbers, which follow the normal distribution law and has a stable tendency. It is described by four main parameters: expected value ExpVal, particle entropy ParEnt, standard deviation StaDev, and hyperentropy HypEnt. The improved inertia coefficient is calculated as follows [34]:(24)ψ=η1e−f−ExpVal2/2StaDev2,f≥f¯,η2ψmax−f−fminfmax−fminψmax−ψmin,f<f¯,where ExpVal = f¯, in which f¯ is the average fitness value of particles in the particle swarm; StaDev = r3×HypEnt+CloEnt, in which r3 is a random number distributed in [0, 1]; ParEnt = fmax−f¯/τ1, in which τ1 is the control coefficient of particle entropy; HypEnt = CloEnt/τ2, in which τ2 is the control coefficient of hyperentropy; ψmax is the maximum inertia coefficient of the particle swarm; ψmin is the minimum inertia coefficient of the particle swarm; fmax is the maximum fitness value of the particle swarm; fmin is the minimum fitness value of the particle swarm; f¯ is the average fitness value of the particle swarm; f is the fitness value of the particle; and η1 and η2 are the constants in [0, 1] and can be set η1=0.4 and η2=0.8. From the analysis of equation (24), the inertia coefficient ψ has a larger value in the initial stage. With the increase in iterations, the inertia coefficient gradually decreases, which makes the algorithm change from global search in the initial stage to local fine search in the later stage.The verticality of normal cloud model curve is controlled by particle entropy ParEnt. The average value of the normal cloud model is reflected in expected value ExpVal. The cloud particles in the model fluctuate around ExpVal, which shows the discreteness of cloud particles. The discreteness of cloud particles is mainly determined by the hyperentropy HypEnt. The randomness of normal cloud model increases with the increase in HypEnt, and its stability increases with the decrease in HypEnt. With the help of the normal cloud model, the IPSOA algorithm improves the global search ability in the initial stage, restrains the premature convergence to form a more comprehensive solution space, and focuses on local fine search in the later stage of the algorithm.


## 4.4. Acceleration Coefficients Setting

In the iteration process of IPSOA algorithm, the acceleration coefficientsc1 and c2 determine the influence of particle self-cognition and social cognition on particle trajectory, which reflects the information exchange degree between particles in swarms, and represent the acceleration weights of particles advancing towards their own extremum and global extremum, respectively. The formulas for calculating the acceleration coefficients are as follows [35]:(25)c1=c1,start+c1,end−c1,startsinψ,(26)c2=c2,start−c2,start−c2,endcosψ,where c1 is the self-acceleration coefficient, c2 is the global acceleration coefficient, c1,start and c2,start are the initial values of acceleration coefficients c1 and c2, and c1,end and c2,end are their termination values, respectively. Acceleration coefficients c1 and c2 are set according to equations (25) and (26). Setting larger global acceleration coefficient and smaller self-acceleration coefficient in the initial stage of the IPSOA algorithm, the social learning ability of the particle is stronger and the self-learning ability is weaker, which is beneficial to strengthening the global search ability; setting smaller global acceleration coefficient and larger self-acceleration coefficient at the later stage of the IPSOA algorithm, the self-learning ability of the particle is stronger and the social learning ability is weaker, which is beneficial to local fine search and converges to the global optimal solution with high precision.


## 4.5. Fitness Function Establishment

The multiple objectives of cloud manufacturing service composition interact with each other and are difficult to solve directly by general mathematical methods. However, cloud service users often have a clear understanding of the objectives and expectations of cloud manufacturing service composition. The purpose of cloud manufacturing service composition can be expressed as finding a cloud manufacturing service composition scheme which is as close as possible to the expectations of cloud service users under limited time, limited cost, and other conditions. The expectations of cloud service users are defined as the ideal point of the objective functions of cloud manufacturing service composition. IPSOA algorithm uses the ideal point method to design fitness function. The criterion for evaluating the effect of service composition scheme is the distance between ideal point and objective function values, i.e., deviation. Its calculation formula is as follows:(27)Dev=Y1i−Y1∗2+Y2i−Y2∗2+Y3i−Y3∗2+Y4i−Y4∗2+Y5i−Y5∗2,where Y1i, Y2i, Y3i, Y4i, and Y5i are the five objective function values of cloud manufacturing service composition scheme corresponding to the i-th particle; Y1∗, Y2∗, Y3∗, Y4∗, and Y5∗ are the optimal values of five objective functions, respectively, which constitute the ideal point; and Dev is the deviation.Dimensionless treatment is done for five objective functions of cloud manufacturing service composition, so the deviation formula is changed to(28)Dev′=Y1i−Y1∗Y1∗2+Y2i−Y2∗Y2∗2+Y3i−Y3∗Y3∗2+Y4i−Y4∗Y4∗2+Y5i−Y5∗Y5∗2,where Dev′ is called the relative deviation.The smaller the deviation, the better the service composition scheme; on the contrary, the worse the service composition scheme. There are two main methods to determine the ideal point: one is to calculate the optimal values through single-objective function optimization algorithm to form the ideal point, and another is to compose the ideal point by all objective function expected values specified by cloud service users. Weight coefficients are given according to the different importance of five objective functions. Thus, the fitness function of IPSOA algorithm can be designed as follows:(29)fi=Γ−δ1Y1i−Y1∗Y1∗2+δ2Y2i−Y2∗Y2∗2+δ3Y3i−Y3∗Y3∗2++δ4Y4i−Y4∗Y4∗2+δ5Y5i−Y5∗Y5∗2,where f(i) is the fitness function value of the i-th particle; Γ is a sufficiently large positive number; δ1, δ2, δ3, δ4, and δ5 are the weight coefficients of the five objective functions respectively; and ∑k=15δk=1.


## 4.6. IPSOA Algorithm Steps

The main steps of IPSOA algorithm are as follows:Step 1: initialize particle swarm, including particle swarm size ParSiz, positionxi, and velocity vi of each particle; set the initial and end values of acceleration coefficients c1 and c2, maximum evolutionary generation MaxGen, and randomly initialize the initial position and initial velocity of each particle in the definition domain. The initial position of the particle is set as the initial individual optimal position, and the position of the particle with the best fitness in the particle swarm is set as the initial global optimal position.Step 2: calculate service matching degree, composition synergy degree, cloud entropy, execution time, and execution cost.Step 3: calculate the fitness value of all the particles in the particle swarm.Step 4: for each particle, compare its fitness valuefi with individual extremum fBPi. If fi>fBPi, then replace fBPi with fi and BPi with Pi.Step 5: for each particle, compare its fitness valuefi with global extremum fBG. If fi>fBG, then replace fBG with fi and BG with Pi.Step 6: update the inertia coefficient of particles according to equation (24); update the self-acceleration coefficient and global acceleration coefficient of particles according to equations (25) and (26); update the velocity and position of particles according to equations (22) and (23).Step 7: check the termination condition of the algorithm. If the evolutionary generation reaches the set maximum value or other algorithm end conditions are met, stop the iterative operation of the algorithm and output the results; otherwise, return to step 2.IPSOA is a parallel algorithm. All the particles can be divided into several groups [36]. Each group solves the optimization problem separately, and each group is computed by one core of the multicore CPU, i.e., parallel computing, to achieve concurrent solutions.


## 5. Application Example

Taking producing automatic guided forklift (AGF) by using cloud manufacturing services as an example, the proposed optimization algorithm for cloud manufacturing service composition is applied.The AGF manufacturing task can be divided into seven subtasks:J1, body production; J2, driving device production; J3, working device production; J4, power supply system production; J5, auxiliary control system production; J6, main control system production; and J7, painting and packaging. According to the proposed IPSOA algorithm, the above manufacturing tasks are matched with cloud services, as shown in Table 2. The cloud service sets for manufacturing tasks J1, J2, J3, J4, J5, J6, and J7 are S1, S2, S3, S4, S5, S6, and S7, respectively. The number of cloud services included in each set is 3, 2, 2, 3, 2, 4, and 2, respectively. TF, HF, and DF represent technical factor, hunger factor, and distance factor. Texe, Tcon, and Trep are used for execution time (hour), maximum continuous working time (hour), and repair time (hour), respectively. w denotes the unit time cost (dollar/hour). Taking α = 0.4, β = 0.3, and γ = 0.3, the service matching degree MD can be calculated according to equation (3). The cloud entropy CE can be calculated according to equation (8).Table 2
Matching table of cloud services and manufacturing tasks.
JjJ1J2J3J4J5J6J7SjS1S2S3S4S5S6S7Si,jS1, 1S2, 1S3, 1S1, 2S2, 2S1, 3S2, 3S1, 4S2, 4S3, 4S1, 5S2, 5S1, 6S2, 6S3, 6S4, 6S1, 7S2, 7TF0.80.20.20.60.20.40.20.80.20.40.60.60.20.40.80.40.60.8HF0.90.50.80.70.40.60.30.50.40.80.30.90.60.70.50.90.90.5DF0.810.410.80.810.40.8110.80.40.810.40.81Texe794652485849607563725562776862769083Tcon302424304020192420163024302416202430Trep341214232112223121w494045313631394251503540353530322522MD0.830.530.440.750.440.580.470.590.440.70.630.750.380.610.770.550.750.77CE1.2810.9190.9910.7920.6891.2201.3161.3431.3091.7350.7651.2511.2241.2831.6911.5271.5801.190According to equation (6), the service composition synergy degree matrix of the AGF manufacturing task can be calculated as follows:(30)SD=SD1,1SD1,2⋯SD1,6SD1,7SD2,1⋯⋯⋯SD2,7⋯⋯SD4,4⋯⋯SD6,1⋯⋯⋯SD6,7SD7,1SD7,2⋯SD7,6SD7,7,where the diagonal elements of the matrix SD are all 1 and SD12 is a 3 × 2 matrix, which represents the composition synergy degree of three candidate cloud manufacturing services of the manufacturing task J1 to two candidate cloud manufacturing services of the manufacturing task J2. The meaning of other elements is the same. All elements of matrix SD are calculated, as shown in Table 3.Table 3
Computation results of composition synergy degree.
JjJ1J2J3J4J5J6J7SjS1S2S3S4S5S6S7SDS1, 1S2, 1S3, 1S1, 2S2, 2S1, 3S2, 3S1, 4S2, 4S3, 4S1, 5S2, 5S1, 6S2, 6S3, 6S4, 6S1, 7S2, 7S1, 11.0001.0001.0000.8380.7710.7740.8350.5880.7700.8330.8360.7710.5880.7700.8340.5880.7700.833S2, 11.0001.0001.0000.9090.8340.8330.9100.5340.8350.9110.9090.8350.5340.8360.9100.5340.8410.913S3, 11.0001.0001.0000.5270.5890.5880.5270.6700.5890.5300.5260.5890.6710.5900.5270.6710.5970.533S1, 20.8380.9090.5271.0001.0000.8330.9100.5320.8350.9110.9090.8340.5330.8350.8340.5330.8400.912S2, 20.7710.8340.5891.0001.0000.7700.8330.5900.7690.8340.8330.7690.5910.7700.7690.5900.7730.836S1, 30.7740.8330.5880.8330.7701.0001.0000.5940.7710.8360.8340.7700.5940.7720.8340.5940.7770.838S2, 30.8350.9100.5270.9100.8331.0001.0000.5280.8330.9090.9090.8330.5280.8340.9090.5280.8360.910S1, 40.5880.5340.6700.5320.5900.5940.5281.0001.0001.0000.5290.5890.6670.5890.5270.6670.5890.527S2, 40.7700.8350.5890.8350.7690.7710.8331.0001.0001.0000.8340.7690.5890.7690.8330.5890.7720.835S3, 40.8330.9110.5300.9110.8340.8360.9091.0001.0001.0000.9100.8340.5260.8330.9090.5260.8340.909S1, 50.8360.9090.5260.9090.8330.8340.9090.5290.8340.9101.0001.0000.5300.8340.9090.5300.8370.911S2, 50.7710.8350.5890.8340.7690.7700.8330.5890.7690.8341.0001.0000.5900.7690.8330.5890.7720.835S1, 60.5880.5340.6710.5330.5910.5940.5280.6670.5890.5260.5300.5901.0001.0001.0001.0000.5890.526S2, 60.7700.8360.5900.8350.7700.7720.8340.5890.7690.8330.8340.7691.0001.0001.0001.0000.7710.834S3, 60.8340.9100.5270.8340.7690.8340.9090.5270.8330.9090.9090.8331.0001.0001.0001.0000.8360.910S4, 60.5880.5340.6710.5330.5900.5940.5280.6670.5890.5260.5300.5891.0001.0001.0001.0000.5890.527S1, 70.7700.8410.5970.8400.7730.7770.8360.5890.7720.8340.8370.7720.5890.7710.8360.5891.0001.000S2, 70.8330.9130.5330.9120.8360.8380.9100.5270.8350.9090.9110.8350.5260.8340.9100.5271.0001.000The improved particle swarm optimization algorithm is programmed by using Matlab R2015a. The deadline constraint ET0 is 480, and the cost constraint EC0 is 18000. The particle swarm size is ParSiz = 30. The maximum iteration generation is MaxGen = 120. Taking Г = 100, all the weight coefficients of the five objective functions are set to 0.2, i.e., δk = 0.2 (k = 1, 2, 3, 4, 5). According to the single-objective function optimization algorithm, the ideal point can be obtained, i.e., (5.15, 19.035, 7.317, 406, 13608). The space boundaries for total execution time ETsum are [0, 490]. The bounds for total execution cost ECsum are [0, 18500]. The bounds for total service matching degree MDsum are [0, 10]. The bounds for total composition synergy degree SDsum are [0, 20]. The bounds for total cloud entropy CEsum are [0, 20]. After 49 iterations, the optimal fitness value of the particle swarm is 99.928, the corresponding point (MDsum, SDsum, CEsum, ETsum, ECsum) is (4.47, 18.142, 7.887, 406, 13671), and the particle code of the optimal service composition scheme is 2112132. The relative deviation between the optimal solution and the ideal point is 0.160. As shown in Figure 5, the particle code represents the following meanings: the manufacturing task J1 is allocated to the 2-nd cloud service in cloud service set S1, task J2 to the 1-st cloud service in cloud service set S2, task J3 to the 1-st cloud service in cloud service set S3, task J4 to the 2-nd cloud service in cloud service set S4, task J5 to the 1-st cloud service in cloud service set S5, task J6 to the 3-rd cloud service in cloud service set S6, and task J7 to the 2-nd cloud service in cloud service set S7. The average running time of the algorithm is 11.56 s, and the iteration curves of its related parameters are shown in Figure 6. Figure 6(a) shows the iteration curve of the optimal particle fitness, Figure 6(b) shows the iteration curve of the service matching degree, Figure 6(c) shows the iteration curve of the composition synergy degree, Figure 6(d) shows the iteration curve of the cloud entropy, Figure 6(e) shows the iteration curve of service composition execution time, Figure 6(f) shows the iteration curve of service composition execution cost, and Figure 6(g) shows the iteration curve of relative deviation. The particle swarm tends to be stable when it iterates to the 49-th generation.Figure 5
The optimal solution of the AGF manufacturing task.Figure 6
IPSOA iteration curves: (a) iteration curve of the optimal particle fitness; (b) iteration curve of service matching degree; (c) iteration curve of composition synergy degree; (d) iteration curve of cloud entropy; (e) iteration curve of execution time; (f) iteration curve of execution cost; (g) iteration curve of relative deviation.
(a)(b)(c)(d)(e)(f)(g)Given the same maximum iteration generation and particle swarm size, IPSOA algorithm, standard genetic algorithms (SGA) [37], and traditional particle swarm optimization algorithm (PSO) [35] are used to solve the same service composition optimization problem, respectively. As shown in Figure 7, IPSOA converges to the optimal solution in the 49-th generation, SGA converges in the 82-nd generation, and PSO converges to the optimal solution in the 54-th generation. The algorithms run on a portable computer with Intel core i3-3110M CPU, 2.4 GHz main frequency, and 4 G memory. IPSOA takes 11.56 s, SGA 19.05 s, and PSO 12.94 s, as shown in Table 4. The relative deviation of IPSOA is 0.160, that of SGA is also 0.160, and that of PSO is 0.183. The above case analysis and experimental results show that IPSOA has faster convergence speed and shorter solution time than PSO and SGA for multiobjective optimization of cloud manufacturing service composition, and IPSOA has better performance than PSO.Figure 7
Comparison of SGA, PSO, and IPSOA iteration curves.Table 4
Optimization results for the AGF manufacturing task.
AlgorithmsComputing time (s)Convergence generationOptimization resultsRelative deviationSGA19.0582{S2,1, S1,2, S1,3, S2,4, S1,5, S3,6, S2,7}0.160PSO12.9454{S2,1, S1,2, S1,3, S2,4, S1,5, S2,6, S2,7}0.183IPSOA11.5649{S2,1, S1,2, S1,3, S2,4, S1,5, S3,6, S2,7}0.160In the process of using IPSOA to optimize GAF cloud manufacturing service composition, service matching degree, composition synergy degree, cloud entropy, execution time, and execution cost are used as the five main variables of the optimization model. The influence of technical factor, resources vacancy rate, distance factor, multiple services collaboration level, coupling relationship, complexity, reliability, time, and cost of service composition are fully considered. As shown in Table5, the service composition scheme obtained by IPSOA has better comprehensive characteristics than the general methods. Maximum matching degree method (MaxMDM) service composition scheme has the best service matching degree, but it has worse cloud entropy, execution time, execution cost, and relative deviation. Maximum synergy degree method (MaxSDM) service composition scheme has the best composition synergy degree, but it has worse cloud entropy, execution time, execution cost, and relative deviation. Minimum cloud entropy method (MinCEM) service composition scheme has minimum cloud entropy, but its service matching degree and composition synergy degree are smaller than that of IPSOA, and it has worse execution time, execution cost, and relative deviation. Minimum execution time method (MinETM) service composition scheme has the minimum execution time, but with the increase in the weight coefficients of service matching degree, composition synergy degree, and cloud entropy, the relative deviation value of MinETM will be bigger than that of IPSOA, and its comprehensive service quality will become worse. Minimum execution cost method (MinECM) service composition scheme has the minimum execution cost, but its service matching degree and composition synergy degree are smaller than that of IPSOA, and it has worse execution time and relative deviation. Compared with the five service composition schemes, IPSOA has the smallest relative deviation and the best comprehensive performance, which helps users make more reasonable decisions. If only the execution cost and execution time are considered in the service composition and the influence of service matching degree, combination coordination degree, and combination entropy are not considered, it may lead to user's wrong decision and bring adverse effects to manufacturing industry, such as the shortcomings of MinETM and MinECM. Because the service matching degree and composition synergy degree of the two service composition schemes are very small, the manufacturing services selected from the two service composition schemes may have problems of poor service quality and low service reliability, which will affect the supply chain, product quality, delivery time, and even the survival of manufacturing enterprises. For example, when multinational manufacturing enterprises such as ZTE and Huawei purchase parts globally based on cloud services, they need to consider factors such as service matching degree, composition synergy degree, and cloud entropy, rather than just considering execution time and execution cost. Unstable cooperation and low service reliability may hinder the normal production of products and threaten the survival of enterprises. The impact of COVID-19 has increased the weight of service matching degree, composition synergy degree, and cloud entropy in the service composition optimization model. Enterprises need to pay more attention to these aspects when making decisions from 2020 and make appropriate adjustments to adapt to the rapidly changing global manufacturing environment.Table 5
Comparison of different factors’ influences on service composition.
AlgorithmsOptimization resultsMDsumSDsumCEsumETsumECsumRelative deviationIPSOA{S2,1, S1,2, S1,3, S2,4, S1,5, S3,6S2,7}4.4718.1427.887406136710.160MaxMDM{S1,1, S1,2, S1,3, S3,4, S1,5, S3,6S2,7}5.1518.1508.675448160890.284MaxSDM{S2,1, S1,2, S2,3, S3,4, S1,5, S3,6, S2,7}4.6219.0358.409426148790.210MinCEM{S2,1, S2,2, S1,3, S2,4, S1,5, S1,6, S2,7}3.7715.9197.317431151060.338MinETM{S2,1, S1,2, S1,3, S2,4, S1,5S3,6, S2,7}4.4718.1427.887406136710.160MinECM{S2,1, S1,2, S1,3, S1,4, S1,5S3,6, S2,7}4.6216.4437.921418136080.192


## 6. Conclusion

In order to solve the problems of low search efficiency and inaccurate optimization in existing service composition optimization methods, the multiobjective optimization of cloud manufacturing service composition is discussed, a new improved particle swarm algorithm is proposed, and comprehensive service quality evaluation method is studied. The main work and contributions are summarized as follows:(1)
The main factors affecting the performance of cloud manufacturing service composition are studied. A new service quality model of cloud manufacturing service composition is constructed by combining the three new attributes of cloud entropy, service matching degree, and composition synergy degree with two traditional attributes of execution time and execution cost, which evaluates the service composition performance more comprehensively.(2)
The mathematical model of cloud manufacturing service composition optimization is established. Cloud entropy, service matching degree, composition synergy degree, execution time, and execution cost are taken as five objective functions, and particle fitness function is constructed by the ideal point method, which provides a multiobjective optimization solution for cloud manufacturing service composition optimization problem. It is helpful for enterprises to make more reasonable decisions and adapt to the unstable global manufacturing environment. Especially under the influence of COVID-19, enterprises should consider more unstable manufacturing factors in cloud manufacturing activities, and the weight coefficients of service matching degree, composition synergy degree, and cloud entropy should be given bigger values in the service composition optimization model.(3)
An improved particle swarm optimization algorithm IPSOA is proposed. The inertia and acceleration coefficients of the algorithm are improved by introducing the normal cloud model, sine function, and cosine function. It improves the global search ability in the initial stage of the algorithm, restrains the premature convergence of the algorithm in order to form a more comprehensive solution space, and makes the algorithm focus on local fine search in the later stage, so as to improve the optimization precision and efficiency.(4)
Taking the AGF manufacturing task as an example, the correctness of the multiobjective service composition optimization mathematical model and the feasibility and effectiveness of the IPSOA algorithm are verified. Case study shows that, compared with the PSO algorithm and SGA algorithm, the IPSOA algorithm has better performance, faster convergence speed, and shorter solving time for multiobjective optimization problem of cloud manufacturing service composition.The development of cloud manufacturing and other related technologies impels manufacturing enterprises to develop from traditional large-scale flow line production mode to multibatch customization production, from production-oriented to production-service-oriented, and activates all kinds of idle manufacturing resources around the world. Service quantification, service granularity, cloud entropy, matching degree, and synergy degree affect the future development of cloud manufacturing and will be studied in depth in future work.



---

*Source: 9186023-2020-10-14.xml*