1 Introduction

Ubiquitous manufacturing (UM) is the application of ubiquitous computing to the manufacturing domain to enable convenient, on-demand network access to a shared pool of configurable manufacturing resources, such as software tools, equipment, and manufacturing capabilities [1,2,3,4,5,6]. In a UM system, manufacturing resources are encapsulated as cloud resources [7]. Software tools are the easiest manufacturing resource to be encapsulated [8, 9]. Recently, the focus has turned to various types of equipment, especially those coupled with computers that are intrinsically suitable for UM, such as three-dimensional (3D) printers, machine tools, and robots [10,11,12,13,14].

Some of the recent literature on UM are reviewed as follows. Radio frequency identification (RFID) and other types of sensors can be attached to manufacturing resources to monitor and collect real-time production conditions and information, based on which better production planning and scheduling can be made [9, 15,16,17]. Dubey et al. [18] analyzed existing literature on UM using techniques including interpretive structural modeling (ISM) and cross-impact matrix multiplication (MICMAC). Then, they established a three-level framework showing that UM culture, training, secondary technology, pervasive technology, product quality, manufacturing flexibility, and teamwork were critical to the success of a UM system. Chen and Lin [19] established a UM system for distributing production simulation tasks among several cloud-based simulation services. Wang et al. [13, 20] integrated various types of manufacturing facilities with function blocks. Their methodology was successfully applied to machining and robotics applications. Chen and Lin [21] constructed a UM system based on the application of 3D printing (3DP) (or additive manufacturing). In their UM system, the pieces of an order were spread across multiple 3DP facilities. The printed pieces were then picked up by a logistics service provider that visited all 3DP facilities sequentially. Chen and Lin formulated a nonlinear programming model to minimize the makespan of each order, and proposed a heuristic to help solve the nonlinear programming problem. Wang et al. [12, 14] established a fault-diagnosis and early-warning mechanism for a high-end assembly system under a UM environment. A recent literature review on UM refers to Wang et al. [22].

A UM system composed of distributed 3DP facilities is the focus of this study. When an order is received by a UM system, it is split among several 3DP facilities that are available, have fast printing speeds, and close to the customer [10, 21], which involves both production and logistics planning. However, a UM system can be further benefited by addressing more concerns:

  1. (1)

    The quality of products can be improved to attract and retain customers [23].

  2. (2)

    The costs for fabricating products can be reduced to be more competitive.

  3. (3)

    A long-term relationship with each 3DP facility can be fostered for the UM system to be sustainable.

To this end, an evolving fuzzy approach is proposed in this study to plan the reorganization of a UM system. The evolving fuzzy approach is composed of three parts: diversifying fuzzy analytic hierarchy process (DFAHP) [24], genetic algorithm (GA) [25], and fuzzy technique for order preference by similarity to the ideal solution (FTOPSIS) [26]. First, DFAHP is applied to derive the priorities of criteria for assessing a 3DP facility when the UM system administrator’s judgments are somewhat inconsistent. In this step, a fuzzy mixed integer-nonlinear programming (FMINLP) problem needs to be solved, for which a GA is designed. Subsequently, based on the derived priorities, FTOPSIS is applied to evaluate the overall performance of each 3DP facility. The best performing 3DP facilities will be chosen. The evolving fuzzy approach has been applied to a UM system to assess its effectiveness.

The remainder of this paper is organized as follows. Section 2 first introduces the system architecture and operational procedure of a UM system, and then details the evolving fuzzy approach for planning the reorganization of a UM system. To evaluate the advantages and disadvantages of the evolving fuzzy approach, it and some existing methods have been applied to a UM system, which is described in Section 3. Section 4 presents concluding remarks and lists some topics for future investigation.

2 The proposed methodology

2.1 The system architecture and operational procedure of a UM system

Five issues affect the planning of a UM system, as illustrated in Fig. 1. However, most of the past studies considered only production and logistics issues [9, 19, 21].

Fig. 1
figure 1

Issues affecting the planning of a UM system

The system architecture of a UM system is composed of four parts: customers, the UM service provider, 3DP facilities, and a logistics service provider, as illustrated in Fig. 2. The UM service provider comprises the system administrator, the system server, the system database, and the reasoning module. In this study, the reasoning module is the evolving fuzzy approach.

Fig. 2
figure 2

The UM system architecture

The UM system operates according to the following procedure:

  1. Step 1.

    A customer places an order online.

  2. Step 2.

    The UM system administrator searches for available 3DP facilities in the service region.

  3. Step 3.

    The system administrator negotiates with 3DP facilities.

  4. Step 4.

    The system administrator chooses 3DP facilities using the evolving fuzzy approach.

  5. Step 5.

    The order is distributed among 3DP facilities.

  6. Step 6.

    The 3D printing facilities print the assigned pieces.

  7. Step 7.

    A logistics service provider visits all 3DP facilities to pick up the printed pieces, or each 3DP facility delivers the printed pieces by itself.

  8. Step 8.

    The customer feeds back his/her assessment of the service and product quality.

  9. Step 9.

    The system database is updated with the order details and the customer’s feedback.

The flowchart in Fig. 3 illustrates this procedure.

Fig. 3
figure 3

The operational procedure of the UM system

2.2 The evolving fuzzy approach

The evolving fuzzy approach is composed of three steps: FAHP, GA, and FTOPSIS, as illustrated in Fig. 4.

Fig. 4
figure 4

The evolving fuzzy approach

In the evolving fuzzy approach, at first, the UM system administrator compares the relative priorities of criteria for assessing a 3DP facility with linguistic terms, such as “as equal as,” “weakly more important than,” “strongly more important than,” “very strongly more important than,” and “absolutely more important than,” which are mapped to triangular fuzzy numbers (TFNs) [27, 28]:

$$ ``\mathrm{As}\ \mathrm{equal}\ \mathrm{as}":{\tilde{a}}_{ij}=\left(1,1,3\right) $$
$$ ``\mathrm{Weakly}\ \mathrm{more}\ \mathrm{important}\ \mathrm{than}":{\overset{\sim \sim }{a}}_{ij}=\left(1,3,5\right) $$
$$ ``\mathrm{Strongly}\ \mathrm{more}\ \mathrm{important}\ \mathrm{than}":{\tilde{a}}_{ij}=\left(3,5,7\right) $$
$$ ``\mathrm{Very}\ \mathrm{strongly}\ \mathrm{more}\ \mathrm{important}\ \mathrm{than}":{\tilde{a}}_{ij}=\left(5,7,9\right) $$
$$ ``\mathrm{Absolutely}\ \mathrm{more}\ \mathrm{important}\ \mathrm{than}":{\tilde{a}}_{ij}=\left(7,9,9\right) $$

\( {\tilde{a}}_{ij} \) is the relative priority of criterion i over criterion j. aij1 = max(aij2 − 2,  1) and aij3 = min(aij2 + 2,  9) if \( {\tilde{a}}_{ij}\ge 1 \). The average of two neighboring TFNs is also applicable. The results are summarized with a fuzzy judgment matrix\( \tilde{\mathbf{A}} \). The fuzzy eigenvalue and eigenvector of \( \tilde{\mathbf{A}} \), denoted by \( \tilde{\lambda} \) and \( \tilde{\mathbf{x}} \), respectively, satisfy the following equations:

$$ \det \left(\tilde{A}\left(-\right)\tilde{\lambda}I\right)=0 $$
(1)

and

$$ \left(\tilde{A}\left(-\right)\tilde{\lambda}I\right)\left(\times \right)\tilde{x}=0 $$
(2)

where (−) and (×) indicates fuzzy subtraction and multiplication, respectively. The consistency among pairwise comparison results can be evaluated with the fuzzy consistency ratio:

$$ \tilde{\mathrm{CR}}=\frac{\frac{{\tilde{\lambda}}_{\mathrm{max}}-n}{n-1}}{\mathrm{RI}} $$
(3)

where \( {\tilde{\lambda}}_{\mathrm{max}} \) is the fuzzy maximal eigenvalue; RI is the random consistency index [29]. \( \tilde{\mathrm{CR}} \) should be less than 0.1~0.3, depending on the problem size.

However, the judgment results by the UM system administrator may be inconsistent. To address this, the fuzzy judgment matrix is decomposed into several fuzzy subjudgment matrices that are more consistent (Fig. 5).

Fig. 5
figure 5

Decomposing the fuzzy judgment matrix into several fuzzy subjudgment matrices

For this purpose, the following FMINLP model is formulated and optimized:

(FMINLP model)

$$ \operatorname{Max}\cdot {\tilde{Z}}_1=\frac{1}{K}\sum \limits_{k=1}^K\Big(\tilde{\mathrm{CR}}\left(\tilde{A}\right)\left(-\right)\tilde{\mathrm{CR}}\left(\tilde{A}(k)\right) $$
(4)
$$ \operatorname{Max}\cdot {\tilde{Z}}_2=\sum \limits_{k=1}^{K-1}\sum \limits_{l=k+1}^K\sqrt{\sum \limits_{i=1}^n\sum \limits_{j=1}^n{\left({\tilde{a}}_{ij}(k)\left(-\right){\tilde{a}}_{ij}(l)\right)}^2} $$
(5)

subject to

$$ {\tilde{a}}_{ij}=\frac{\sum \limits_{k=1}^K{\tilde{a}}_{ij}(k)}{K}\forall {\tilde{a}}_{ij}>1,i,j=1\sim n $$
(6)
$$ {\tilde{a}}_{ij}(k){\tilde{a}}_{ji}(k)=1\forall i,j=1\sim n,k=1\sim K $$
(7)
$$ {\tilde{a}}_{ii}(k)=1\forall i=1\sim n,k=1\sim K $$
(8)
$$ \det \left(\tilde{A}(k)\left(-\right)\tilde{\lambda}(k)I\right)=0;k=1\sim K $$
(9)
$$ CR\left(\tilde{A}(k)\left(-\right)\tilde{\lambda}(k)I\right)=0,k=1\sim K $$
(10)
$$ {\tilde{a}}_{ij}(k)\in \left\{1,\kern0.33em \dots, \kern0.33em 9\right\}\forall {\tilde{a}}_{ij}>1,i,j=1\sim n,k=1\sim K $$
(11)

Objective function (4) is to optimize the average improvement in \( \tilde{\mathrm{CR}} \). Objective function (5) is to maximize the distances between fuzzy subjudgment matrices, so as to diversify them. Equation (6) is to decompose the fuzzy judgment matrix into several fuzzy subjudgment matrices. Constraints (7, 8, 9) and (11) are the basic requirements for a fuzzy judgment (or subjudgment) matrix. Constraint (10) requires each fuzzy subjudgment matrix to be more consistent than the fuzzy judgment matrix. The FMINLP model is converted into the following mixed integer-nonlinear programming problem (MINLP) that can be solved by applying a GA algorithm.

(MINLP model)

$$ \operatorname{Max}\cdot {Z}_1=\frac{1}{K}\sum \limits_{k=1}^K\Big(\mathrm{CR}\left({A}_2\right)-\mathrm{CR}\left({A}_2(k)\right) $$
(12)
$$ \operatorname{Max}\cdot {Z}_2=\sum \limits_{k=1}^{K-1}\sum \limits_{l=k+1}^K{d}_{kl2} $$
(13)

subject to

$$ {d}_{kl2}^2=\sum \limits_{i=1}^n\sum \limits_{j=1}^n{\left({a}_{ij2}(k)-{a}_{ij2}(l)\right)}^2;k=1\sim K-1;l=k+1\sim K $$
(14)
$$ {a}_{ij2}=\frac{\sum \limits_{k=1}^K{a}_{ij2}(k)}{K}\forall {a}_{ij2}>1;\iota; j=1\sim n $$
(15)
$$ {a}_{ij2}(k){a}_{ji2}(k)=1\forall i,j=1\sim n;\kappa =1\sim K $$
(16)
$$ {a}_{ii2}(k)=1\forall i=1\sim n;k=1\sim K $$
(17)
$$ {a}_{ij1}(k)=\max \left({a}_{ij2}-2,\kern0.33em 1\right)\forall i,j=1\sim n;k=1\sim K $$
(18)
$$ {a}_{ij3}(k)=\min \left({a}_{ij2}+2,\kern0.33em 9\right)\forall i,j=1\sim n;k=1\sim K $$
(19)
$$ CR\left({A}_2(k)\right)\le CR\left({A}_2\right);k=1\sim K $$
(20)
$$ {a}_{ij2}(k)\in \left\{1,\kern0.33em \dots, \kern0.33em 9\right\}\forall {a}_{ij}>1;i,j=1\sim n;k=1\sim K $$
(21)

A GA algorithm is designed to solve the MINLP problem. First, the encoding of a chromosome is illustrated in Fig. 6. The value of a gene ranges from 1 to 18, corresponding to the center value of the TFN:

$$ 1,\dots, 9\to 1,\dots, 9 $$
$$ 0,\mathrm{A}\ (11),\dots, \mathrm{H}\ (18)\to 1/\left(1,1,3\right),1/\left(1,2,4\right),\dots, 1/\left(7,9,9\right) $$
Fig. 6
figure 6

The encoding of a chromosome

The weighted sum of the two objective functions in the MINLP problem is optimized:

$$ \operatorname{Max}\ {Z}_3={\omega}_1{Z}_1+{\omega}_2{Z}_2 $$
(22)

Constraint (20) is incorporated into the objective function as a penalty term to form the fitness function:

$$ \operatorname{Max}\ fitness={\omega}_1{Z}_1+{\omega}_2{Z}_2+M\sum \limits_{k=1}^K\left(\mathrm{CR}\left({A}_2\right)-\mathrm{CR}\left({A}_2(k)\right)\right) $$
(23)

where M is a large positive value. The roulette wheel method is applied to choose parent chromosomes to be paired based on their fitness values. A crossover point is chosen at random. Offspring chromosomes are generated by exchanging the genes of parents among themselves until the crossover point is reached. The mutation of a gene is done by slightly incrementing or decrementing its value:

$$ \left(3,5,7\right)\to \left(2,4,6\right)\ \mathrm{or}\ \left(4,6,8\right) $$

Finally, FTOPSIS is applied to assess the overall performance of a 3DP facility. First, the fuzzy priority of each criterion is multiplied to the normalized performance to derive the fuzzy weighted score:

$$ {\tilde{s}}_{qi}(k)={\tilde{w}}_i(k)\left(\times \right){\tilde{\rho}}_{qi} $$
(24)

where \( {\tilde{\rho}}_{qi} \) is the normalized performance of the qth 3DP facility in optimizing the ith criterion, which is derived using fuzzy ideal normalization as

$$ {\tilde{\rho}}_{qi}=\frac{{\tilde{p}}_{qi}}{\underset{r}{\max }{\tilde{p}}_{ri}} $$
(25)

where \( {\tilde{p}}_{qi} \) is the un-normalized (original) performance. Two reference points, the fuzzy ideal point \( {\tilde{\boldsymbol{\Lambda}}}^{+}(k)=\left[{\tilde{\Lambda}}_i^{+}(k)\right] \) and the fuzzy anti-ideal point \( {\tilde{\boldsymbol{\Lambda}}}^{-}(k)=\left[{\tilde{\Lambda}}_i^{-}(k)\right] \), are established respectively as

$$ {\tilde{\varLambda}}_i^{+}(k)=\underset{q}{\max }{\tilde{s}}_{qi}(k) $$
(26)
$$ {\tilde{\varLambda}}_i^{-}(k)=\underset{q}{\min }{\tilde{s}}_{qi}(k) $$
(27)

The distances from a 3DP facility to the two reference points are measured:

$$ {\tilde{d}}_q^{+}(k)=\sqrt{\sum \limits_{i=1}^n{\left({\tilde{\varLambda}}_i^{+}(k)\left(-\right){\tilde{s}}_{qi}(k)\right)}^2} $$
(28)
$$ {\tilde{d}}_q^{-}(k)=\sqrt{\sum \limits_{i=1}^n{\left({\tilde{\varLambda}}_i^{-}(k)\left(-\right){\tilde{s}}_{qi}(k)\right)}^2} $$
(29)

Finally, both distance are considered in calculating the fuzzy closeness:

$$ {\tilde{C}}_q(k)=\frac{{\tilde{d}}_q^{-}(k)}{{\tilde{d}}_q^{+}(k)\left(+\right){\tilde{d}}_q^{-}(k)} $$
(30)

A 3DP facility is chosen if its fuzzy closeness is higher.

The evolving nature of the proposed methodology resides in the following aspects:

  1. (1)

    An evolving computation technique, GA, is applied.

  2. (2)

    Inputs to the evolving fuzzy approach, including the product and service quality and the relationship, are updated continuously. As a result, the evolving fuzzy approach is updated, or evolves, accordingly.

3 Application to a UM system

The evolving fuzzy approach has been applied to a UM system in Taichung City, Taiwan, as shown in Fig. 7. The service region of the UM system covered an area of 47.6 km2. There were more than ten 3DP facilities in this region.

Fig. 7
figure 7

The service region of the UM system

The performance of a 3DP facility was evaluated with the following five criteria:

  1. (1)

    The estimated completion time: The available time and printing speed of the 3D printer were considered in estimating the completion time.

  2. (2)

    The estimated delivery time: In the experiment, the printed piece was delivered by the 3DP facility itself.

  3. (3)

    The relationship between the UM system and the 3DP facility.

  4. (4)

    The average quality of 3D items printed by the 3DP facility in the past.

  5. (5)

    The total costs, including the printing and delivery costs.

  6. (6)

    The performances of a 3D printing facility in optimizing these criteria were evaluated according to the rules in Table 1.

Table 1 Rules for evaluating the performances of a 3D printing facility in optimizing various criteria

The UM system administrator constructed the following fuzzy judgment matrix:

$$ \tilde{A}=\left[\begin{array}{ccccc}1& \left(3,\kern0.33em 5,\kern0.33em 7\right)& \left(1,\kern0.33em 3,\kern0.33em 5\right)& \left(1,\kern0.33em 3,\kern0.33em 5\right)& \left(5,\kern0.33em 7,\kern0.33em 9\right)\\ {}1/\left(3,\kern0.33em 5,\kern0.33em 7\right)& 1& 1/\left(1,\kern0.33em 3,\kern0.33em 5\right)& 1/\left(7,\kern0.33em 9,\kern0.33em 9\right)& 1/\left(5,\kern0.33em 7,\kern0.33em 9\right)\\ {}1/\left(1,\kern0.33em 3,\kern0.33em 5\right)& \left(1,\kern0.33em 3,\kern0.33em 5\right)& 1& 1/\left(1,\kern0.33em 3,\kern0.33em 5\right)& \left(1,\kern0.33em 1,\kern0.33em 3\right)\\ {}1/\left(1,\kern0.33em 3,\kern0.33em 5\right)& \left(7,\kern0.33em 9,\kern0.33em 9\right)& \left(1,\kern0.33em 3,\kern0.33em 5\right)& 1& \left(5,\kern0.33em 7,\kern0.33em 9\right)\\ {}1/\left(5,\kern0.33em 7,\kern0.33em 9\right)& \left(5,\kern0.33em 7,\kern0.33em 9\right)& 1/\left(1,\kern0.33em 1,\kern0.33em 3\right)& 1/\left(5,\kern0.33em 7,\kern0.33em 9\right)& 1\end{array}\right] $$

The fuzzy priorities of criteria were determined as

$$ \left(0.245,0.451,0.565\right),\left(0.024,0.037,0.076\right),\left(0.054,0.099,0.259\right),\left(0.186,0.314,0.468\right),\left(0.053,0.099,0.163\right) $$
(31)

The \( \tilde{\mathrm{CR}} \) value of \( \tilde{\mathbf{A}} \) was (0.045, 0.154, 0.516), which indicated inconsistency. Therefore, the fuzzy judgment matrix was decomposed into two fuzzy subjudgment matrices that were more consistent. To this end, the MINLP problem was solved using the GA algorithm with MATLAB on a PC with an i7-7700 CPU 3.6 GHz and 8 GB RAM. The execution time was less than 1 min. The optimal solution was obtained as

$$ {\tilde{A}}^{\ast }(1)=\left[\begin{array}{ccccc}1& \left(2,\kern0.33em 4,\kern0.33em 6\right)& \left(1,\kern0.33em 2,\kern0.33em 4\right)& \left(1,\kern0.33em 1,\kern0.33em 3\right)& \left(1,\kern0.33em 3,\kern0.33em 5\right)\\ {}1/\left(2,\kern0.33em 4,\kern0.33em 6\right)& 1& 1/\left(1,\kern0.33em 3,\kern0.33em 5\right)& 1/\left(7,\kern0.33em 9,\kern0.33em 9\right)& 1/\left(7,\kern0.33em 9,\kern0.33em 9\right)\\ {}1/\left(1,\kern0.33em 2,\kern0.33em 4\right)& \left(1,\kern0.33em 3,\kern0.33em 5\right)& 1& 1/\left(2,\kern0.33em 4,\kern0.33em 6\right)& \left(1,\kern0.33em 1,\kern0.33em 3\right)\\ {}1/\left(1,\kern0.33em 1,\kern0.33em 3\right)& \left(7,\kern0.33em 9,\kern0.33em 9\right)& \left(2,\kern0.33em 4,\kern0.33em 6\right)& 1& \left(7,\kern0.33em 9,\kern0.33em 9\right)\\ {}1/\left(1,\kern0.33em 3,\kern0.33em 5\right)& \left(7,\kern0.33em 9,\kern0.33em 9\right)& 1/\left(1,\kern0.33em 1,\kern0.33em 3\right)& 1/\left(7,\kern0.33em 9,\kern0.33em 9\right)& 1\end{array}\right]; $$
$$ {\tilde{A}}^{\ast }(2)=\left[\begin{array}{ccccc}1& \left(4,\kern0.33em 6,\kern0.33em 8\right)& \left(2,\kern0.33em 4,\kern0.33em 6\right)& \left(3,\kern0.33em 5,\kern0.33em 7\right)& \left(7,\kern0.33em 9,\kern0.33em 9\right)\\ {}1/\left(4,\kern0.33em 6,\kern0.33em 8\right)& 1& 1/\left(1,\kern0.33em 3,\kern0.33em 5\right)& 1/\left(7,\kern0.33em 9,\kern0.33em 9\right)& 1/\left(3,\kern0.33em 5,\kern0.33em 7\right)\\ {}1/\left(2,\kern0.33em 4,\kern0.33em 6\right)& \left(1,\kern0.33em 3,\kern0.33em 5\right)& 1& 1/\left(1,\kern0.33em 2,\kern0.33em 4\right)& \left(1,\kern0.33em 1,\kern0.33em 3\right)\\ {}1/\left(3,\kern0.33em 5,\kern0.33em 7\right)& \left(7,\kern0.33em 9,\kern0.33em 9\right)& \left(1,\kern0.33em 2,\kern0.33em 4\right)& 1& \left(3,\kern0.33em 5,\kern0.33em 7\right)\\ {}1/\left(7,\kern0.33em 9,\kern0.33em 9\right)& \left(3,\kern0.33em 5,\kern0.33em 7\right)& 1/\left(1,\kern0.33em 1,\kern0.33em 3\right)& 1/\left(3,\kern0.33em 5,\kern0.33em 7\right)& 1\end{array}\right] $$

The \( \tilde{\mathrm{CR}} \) values of \( \tilde{\mathbf{A}}(1) \) and \( \tilde{\mathbf{A}}(2) \) were (0.087, 0.128, 0.475) and (0.024, 0.129, 0.391), respectively. Obviously, the consistency improved after decomposition.

The fuzzy priorities of criteria determined according to the fuzzy subjudgment matrices were

$$ \left\{\left(0.165,0.263,0.451\right),\left(0.025,0.037,0.071\right),\left(0.061,0.106,0.222\right),\left(0.281,0.469,0.524\right),\left(0.072,0.126,0.187\right)\right\}. $$

and

$$ \left\{\left(0.397,0.551,0.625\right),\left(0.025,0.036,0.074\right),\left(0.054,0.098,0.216\right),\left(0.146,0.231,0.341\right),\left(0.047,0.085,0.14\right)\right\} $$

respectively. Obviously, the first priority set emphasized “the average quality of the printed 3D items,” while the second priority set emphasized “the estimated completion time.”

Taking the first customer as an example. The first customer placed an order of 6 pieces of an action figure (see Fig. 8) online. After receiving this order, the UM system administrator negotiated with each 3DP facility in the service region. There were nine 3DP facilities available for this order. The performances of these 3DP facilities in optimizing various criteria were evaluated according to the rules in Table 1, and are summarized in Table 2.

Fig. 8
figure 8

The action figure printed

Table 2 The performances of 3DP facilities

FTOPSIS was applied to assess the overall performance of each 3DP facility. The results (i.e., the fuzzy closeness of each 3DP facility), are shown in Table 3. Then, 3DP facilities were ranked according to their overall performances. There were two ranking results corresponding to the two fuzzy priority sets, as shown in Table 4. The top performing 3DP facilities were chosen as nos. 8, 5, 9, 4, 7, and 3. These 3DP facilities printed the required pieces and delivered them to the UM system administrator. The UM system administrator checked the printed pieces then delivered them to the customer with the aid of a logistics service provider. The customer fed back his judgment on the product quality with a score of 7 (from a scale of 1 to 10).

Table 3 The overall performance of each 3DP facility
Table 4 The ranking results

Several existing methods, including FAHP-fuzzy weighted average (FWA), FAHP-FTOPSIS, fuzzy ordered weighted average (FOWA) [30], and FMINLP-fuzzy Dijkstra algorithm (FD) [10] have also been applied to the case for comparison. The major difference between FAHP-FTOPSIS and the evolving fuzzy approach was the decomposition of the fuzzy judgment matrix or not. In FOWA, the “slightly optimistic” strategy was adopted. In FMINLP-FD, the FD algorithm was applied to minimize the production and transportation time. The ranking results using existing methods are summarized in Table 5.

Table 5 The ranking results using existing methods

The selection results using various methods are compared in Table 6.

Table 6 The selection results using various methods

According to the experimental results,

  1. (1)

    The selection result using the evolving fuzzy approach was different from those using existing methods. Such a difference was due to the use of two fuzzy priority sets in the evolving fuzzy approach.

  2. (2)

    In contrast, the selection results using FAHP-FWA and FAHP-FTOSIS were the same.

  3. (3)

    Unlike FMINLP-FD, the evolving fuzzy approach considered quality and cost issues as well. That explained why 3D facility nos. 8, 5, 9, and 7 were preferred.

  4. (4)

    The frequencies of 3DP facilities that were chosen using various methods are summarized in Fig. 9. 3DP facility nos. 4, 5, 8, and 9 were the most frequently chosen 3DP facilities.

Fig. 9
figure 9

The frequencies of 3DP facilities that were chosen

  1. (5)

    Ten customers evaluated the quality of their orders. The results are summarized in Fig. 10. Obviously, by choosing 3DP facilities with good quality–related performances, the scores given by the customers were consistently high, which was believed to be conducive to attracting and retaining customers.

Fig. 10
figure 10

The quality scores

4 Conclusions

A number of UM systems based on the cooperation of distributed 3DP facilities have been constructed. However, most existing UM systems consider only the production and logistics issues, so as to maximize the efficiency of delivering an order. Other issues, such as product quality, costs, and partner relationships, have not been taken into account. To fill in this gap, in this study, an evolving fuzzy approach is proposed. In the evolving fuzzy approach, the priorities of criteria for assessing a 3DP facility are derived using DFAHP, for which a GA was designed. Then, based on the derived priorities, FTOPSIS is applied to assess the overall performance of a 3DP facility. Finally, the best performing 3DP facilities will be chosen.

After applying the evolving fuzzy approach to a UM system, the following conclusions were drawn:

  1. (1)

    The production plan made using the evolving fuzzy approach was different from those using existing methods, which was obviously due to the consideration of more issues.

  2. (2)

    By choosing 3DP facilities with good product quality and low costs, the UM system was able to attract more customers.

  3. (3)

    Pursuing the long-term relationship with each 3DP facility was conducive to the sustainability of the UM system in the highly competitive era.

In future studies, the efficiency of the GA algorithm can be improved to further enhance the applicability of the evolving fuzzy approach. How the complementarity among 3DP facilities affects the decision of a UM system in choosing 3DP facilities is another issue that can be investigated. In addition, just like a UM system that chooses from several 3DP facilities, a 3DP facility will also choose the UM system that it will join. The evolving fuzzy approach can be easily applied to fulfill its purpose. Further, the evolving fuzzy approach can be extended to deal with the general case involving multiple UM systems and multiple 3DP facilities, in which UM systems must compete to get access to 3DP facilities.