## 3 Problem Description and Mathematical Model  
In the case of CMfg services for the production of automated guided forklifts (AGF), for example, there are seven subtasks that make up the AGF manufacturing task: fuselage production, production of the drive unit, working unit production, power system assembly, support control system production, and primary control system manufacturing, as well as packaging and painting. For each subtask, there may exist manufacturing cloud services (MCSs) in the cloud platform that provide the same functionality, but their quality of service (QoS) could differ due to factors such as geographic location. How to select the appropriate MCS for each subtask from the cloud platform and finally combine them to achieve the globally optimal QoS to meet the user's requirements is the key to the QoS-CSC problem [32]. The most important notations used in this paper are listed in Table 1.  
Typically, the intricate QoS-CSC problem can be broken down into the following three stages [33]: (1) Task decomposition: the intricate task is divided into multiple subtasks, and the task \(T=\{T_{1},T_{2},\ldots,T_{i},\ldots,T_{m}\}\), where the count of subtasks is denoted by \(m\). (2) Service search: for each subtask, a search is performed for all services in the cloud platform that fulfill its functional requirements to form a manufacturing cloud service set (MCSS) for that subtask. The MCSS for each subtask is \(MCSS_{i}=\{MCS_{i}^{1},\)\(MCS_{i}^{2},\ldots,\)\(MCS_{i}^{j},\ldots,\)\(MCS_{i}^{n_{i}}\}\), where \(n_{i}\) represents the total count of available MCS within the \(i\)-th MCSS. (3) Service selection: the appropriate MCS is selected from its MCSS for each subtask, ultimately generating a MCS composition (MCSC) with an overall optimal QoS. From the appeal description, it is clear that the problem of QoS-CSC is NP-hard, amounting to \(\prod_{i=1}^{m}n_{i}\) combinations. Figure 1 illustrates the QoS-CSC problem, and the following is the mathematical model for it:  
\[T_{m\times n}= \begin{bmatrix}T_{1}\\ T_{2}\\ \vdots\\ T_{m}\end{bmatrix} = \begin{bmatrix} MCS_{1}^{1}& MCS_{1}^{2}&\cdots& MCS_{1}^{n_{1}}\\ MCS_{2}^{1}& MCS_{2}^{2}&\cdots& MCS_{2}^{n_{2}}\\ \vdots&\vdots&\ddots&\vdots\\ MCS_{m}^{1}& MCS_{m}^{2}&\cdots& MCS_{m}^{n_{m}}\end{bmatrix}  \tag{1}\]  
\[MCSS_{i}= \begin{bmatrix} MCS_{i}^{1}& MCS_{i}^{2}&\cdots& MCS_{i}^{j}&\cdots& MCS_{i}^{n_{i}}\end{bmatrix}  \tag{2}\]  
The two types of MCS attributes are functional and non-functional, the latter of which is frequently referred to as QoS. There are two additional categories for QoS attributes: positive and negative metrics. For positive attribute metrics (\(q^{+}\)), like dependability and availability, a higher value indicates better quality of service, whereas for negative attribute metrics (\(q^{-}\)), like cost and time, a lower value signifies better quality of service [34; 35; 36]. In this paper, four common QoS metrics are selected: time (\(q_{t}\)), cost (\(q_{c}\)), reliability (\(q_{r}\)), and availability (\(q_{a}\)). The aggregated QoS value of MCS depends on its combinatorial structure, such as the sequential, parallel, selective, and cyclic structure as shown in Table 2, where \(C_{t}\) represents the cycle time, and \(r_{i}\) denotes the probability of selecting \(MCS_{i}\), satisfying