1 Introduction

Customer order decoupling point (CODP) is a conversion point from make-to-stock based on prediction to customized production responding to customers’ demands in production activities. multi-CODP model is a new model of production emerging in recent years. Present research on mass customization (MC) manufacturing model was mainly based on positions of static and dynamic single CODP production. Either a personalization requirement or delivery time has to make sacrifices regardless of the movements of CODP positions in MC production systems. Although, postponement strategy can optimize the delivery time to some extent, it may decrease the customized product varieties. The main effect of this strategy is the decrease and the optimization of customization quantity, however, the diversity of customized products and services will be reduced, which may influence the improvement of customer satisfaction in the end. A small number of scholars have begun to pay attention to multi-CODP project in MC systems. Their research only focuses on identification and recognition of multi-CODP in a mass customization supply chain system and has not involved the dynamic multi-CODP model in MC production yet. Further studies are needed because the intension and extension of multi-CODP in MC are not consistent yet. We used to demonstrate the multi-CODP manufacturing concept model in a simple way by giving examples. However, the model is static and does not involve the dynamic evolution of the multi-CODP production system.

This paper designs a multi-CODP positioning adjustment system to adapt to dynamic environments of customer requirements. It also proposes activation models and an algorithm to implement the adjustment system. Then, the system diagnoses the inconsistencies in the old and new knowledge based on an expert system and regain consistency by adjusting rules. Therefore, the paper can realize different levels of customization production, quickly adapt to dynamic personalization requirements, alleviate the contradiction between customization degree and delivery time, realize the mechanism of self-adaptive and rational allocation of production resources factors and improve the flexibility of production planning and scheduling. Based on low production cost, enterprises can allocate and optimize the factors of production resources rationally by designing the dynamic and evolvable multi-CODP production model. And the model can help shorten the response time and the delivery time of supply chain, improve the customer satisfaction and realize self-adaptive rapid production.

2 Literature review

For studies on multi-CODP model, some scholars have done some research on how to set multi-CODP in production systems, e.g. Philip et al. (achieving quick producing is the direction 11) [1], Verdouw et al. [2], Wang et al. [3, 4], Banerjee [5], Sun et al. [6], Wang [7], and Banerjee et al. [8]. Motivated by the need to set multi-CODP in Mass Customization (MC), Wang (2011) proposed an expert system to locate multi-CODP in MC. Risdiyono [10] integrated customer involvement decoupling point (CIDP) into a customer design system and put forward that multi-CIDP system is an innovative, flexible and stable system to improve customer satisfaction.

With the globalization of the product value chain and the drive of customer demands, setting multiple dynamic CODPs in production system can treat customers according to their levels of customization, overcome the limitation of traditional CODP model, optimize factors of production and achieve varying degrees of customization. Therefore, it is an effective technical route of MC developing to transfer from single CODP production to multi-CODP production. However, current customer’s needs are complicated and dynamic, such as categories change (variety, uncertainty, big changes), quantity change (demand fluctuation in tendency, period and randomness), time change (random order time, urgent order inserting/canceling/modifying, and short and reliable delivery date), etc. Intersected with one another, those factors form a dynamic complex requirement. The intersected variables caused by dynamic and complicated customer demand which include category, quantity, time, etc., constitute an uncertain production environment. In this dynamic and complicated environments, a dynamic and evolvable multi-CODP production system needs to respond quickly. As the evolution of multi-CODP production system relies on the adjustment and evolution of CODPs, adjusting CODPs dynamically is crucial for a multi-CODP system to achieve adaptability in mass customization.

However, existing research mainly aims at identification and recognition of multi-CODP, which are static multi-CODP production systems. There are few studies on dynamic evolution of a multi-CODP production model. Manufacturing enterprises adopting traditional MC and static multi-CODP method are faced with a large amount of difficulties and problems to be studied and explored theoretically and practically. Fogliatto et al. (2012) reviewed literatures on MC in recent 10 years and concluded that research on adapting to complicated customer needs under dynamic environments and achieving quick producing is the direction of future MC research [11]. Järvenpää, Luostarinen (2011), Tien (2012), Jack (2011) thought that facing ever-changing demand of consumers, production system should be self-organizing and self-adapting [1214]. Jian et al. (2012) believed that the most important dimension in adaptability was responding to always-changing demand [15]. Enterprises could obtain greater competitive edge if they could respond to customer need quickly and have high adaptability in production capacity [15]. All in all, the research on adaptive and quick production based on complicated customer demand has raised concern from the academia, indicating that the research on dynamic respond to customer demand is going deeper. Present research in this field is just starting up and there is still much to be studied and explored. From the perspective of dynamic evolution, this paper studied on and established a multi-CODP dynamic adjustment model and provided basis for customized production accommodating complicated and dynamic environments.

Fig. 1
figure 1

A multi-CODP dynamic adjustment model

3 The multi-CODP dynamic adjustment model

3.1 The multi-CDOP dynamic adjustment concept model

Design of multi-CODP customizing manufacturing model should take the complicated and a dynamic market environment into consideration. Compared with static multi-CODP manufacturing model, demand-driven dynamic multi-CODP manufacturing model can adapt to an uncertain production environment constituted by a series of cross-linking factors caused by complicated customer demands, which is an important feature of the model. Many factors can influence the evolution of the multi-CODP manufacturing model. Here we mainly consider changes of customer demand, product categories, time and production cycle. Although CODP positions in the static multi-CODP manufacturing model are based on precise market predictions, the CODP manufacturing model cannot respond and evolve quickly according to customer demands, and hence cannot meet the requirements of dynamic manufacturing automatically. Therefore, based on a static multi-CODP manufacturing model, the paper proposed a CODP adjustment model that can evolve automatically to meet the requirements of self-adaptive and dynamic manufacturing.

In the Fig. 1, each ellipse oval denotes a processing point; each vertical dash line denotes a CODP line. As time and customer demands change, factors affecting the CODP positioning would change accordingly. The change of order quantity and order frequency, which reflect customer satisfactory, indicates change of customer demand. Moreover, product categories, customization sensibility, product cycle, and time also change dynamically. When these factors affect CODP positioning change, multi-CODP would adjust the number and position of CODPs accordingly, and hence adapt to the market changes dynamically.

3.2 Influencing factors of multi-CODP dynamic adjustment model

3.2.1 The changes of customer demand

The adjustment of CODP positions is driven by the change of customer demands. Factors influence customer demands include consumer interest, order quantity, order frequency, customization sensitivity and customization requirement, etc. Two important indicators of customer demand changes are the order quantity and the order frequency within a period. According to order quantity and order frequency, we can infer whether customer demand has changed or not. Combining the customer demand with other factors such as customization sensitivity, we can understand how it influences CODP positioning. The dynamic multi-CODP model presented in this paper uses order quantity and order frequency as primary variables. Changes of customer demand would lead to interaction among other factors and form complicated and an uncertain marketing environment. Therefore, different factors are given different weights to construct the multi-CODP adjustment model. Table 1 shows main factors of customer demands.

Table 1 Main factors of customer demands

In the dynamic multi-CODP adjustment model, it is necessary to set warning lines for order quantity and order frequency to monitor changes of customer demands. When the change fluctuation is over the warning line, we should take all factors with different weights into consideration and decide whether it is necessary to adjust the number and position of CODPs and how to adjust them.

3.2.2 The change of product category

The BOM structure of customized products and the combination of customization attributes are important effect factors to construct crucial route of CODP manufacturing models. When the customer demand changes, the product category changes as well, and the CODP positions are affected. Therefore, when the product category changes, we need to combine the delivery time to adjust CODPs; when customized product category changes, we need to analyze changes of product structure and product customization selection attributes. (1) When product categories decrease, then customization selection attributes decrease and we need to add CODPs and move CODPs position upwards to assure that customers have a large selection of customization. Then using an automatic reasoning mechanism of the knowledge base, we delete the subtracted customization selection attributes and related determinations from the knowledge base, recalculate order quantity of the rest CODP backup points, and decide whether it is the minimum of production quantity. If it reaches the minimum of production quantity, we compare the updated lead time and the delivery time and decide whether we should adjust CODPs. (2) When product categories increase, product structure and customization selection attributes would change, and customization degree should be adjusted as well. To avoid conflict between lead time and delivery time, generally we should decrease or combine CODPs, or move CODPs downward. After the update of CODP’s back up points, we compare lead time and delivery time under each route, and then readjust CODPs position.

3.2.3 The change of production cycle

The length of production cycle is one of the main factors constraining MC enterprises’ delivery time and customer response time, which have important influences on the adjustment of CODP positions and improvements of customer satisfaction. When the life cycle of customized products changes because of environmental changes and enterprise development, CODP positions should be adjusted accordingly. The shortest delivery time is closely related to the life cycle of the customized products. The shortest delivery time must be longer than the production cycle, as shown in Formula (1).

$$\begin{aligned}&\mathrm{Lead \,\,\, Time \,\,\,of \,\,\,customized \,\,\,\,product}\nonumber \\&\qquad = \mathrm{Production\,\,\,\, Lead\,\,\,\,Time\,\,\,\, of} \nonumber \\&\mathrm{Customized \,\,\,\,\,Product+ Life \,\,\,\,\,Cycle\, of}\nonumber \\&\mathrm{Customized}\,\,\,\,\, \mathrm{Product\,\,\,Formula} \end{aligned}$$
(1)

When the customized product production cycle is shortened, the response time of the clients will shorten if the production lead time is not considered. At this point, an enterprise can choose to shorten the delivery time in order to improve customer satisfaction, or to move the position of the CODP upstream to provide a wider range of options to the customer.

Production cycle of customized products is determined by many factors, the main influence factors in the multi-CODP positioning adjustment model are final processing time and processing capacity of custom products. The CODP adjustment model mainly uses changes of data and mathematic models to distinguish whether the life cycle of Customized product has changed or not.

In brief, the dynamic adaptability of the CODP adjustment model is that adjustment CODP position and quantity readapt to new environments as customer demands change by using related automatic reasoning mechanism and algorithm in knowledge base. Generally, the CODP adjustment model does not detect changes of different effect factors in real time. Instead, after certain period it uses the multi-CODP producing and monitoring model to detect the changes, and distinguish whether it should start the multi-CODP adjustment model to satisfy new customization requirements.

4 The demand-driven multi-CODP dynamic adjustment method and algorithm

4.1 The multi-CODP dynamic adjustment method

Multi-CODP dynamic adjustment model is a dynamic and adaptive mechanism in a MC system to avoid inadaptability of MC system when customer demands or the environmental changes. When inadaptability has shown signs but has not occurred, the CODP Dynamic Adjustment Model adjusts CODP positions through data analysis and reasoning mechanism. The key process of adjusting CODP positions is the frequency of adjusting cycle and deciding process of CODP adjusting. As for the setting of adjusting cycle, we should firstly analyze effect factors of adjusting cycle, then set different weights for different effect factors, and finally set the adjusting cycle after comprehensive analysis of production cost, production cycle and order quantity under different customization circumstances. After finishing an adjusting cycle, MC system would call multi-CODP dynamic adjustment model automatically, determine the next adjusting cycle, and adjust CODP positions according to current situation. Figure 2 shows the adjustment method.

Fig. 2
figure 2

CODP adjustment path

When we make sure to adjust CODP, we would adjust CODP positions through statistics data analysis and an automatic reasoning mechanism and related algorithm. The main effect factors of CODP adjusting are shown in Table 2.

Table 2 Multi-CODP adjustment model variable table

Because all factors do not affect CODP positions separately, we should consider all factors simultaneously, assign different weights to different effect factors according to their importance, construct mathematic deduction models, and distinguish whether to adjust CODP positions according to the deduction results. If it is necessary to adjust CODP positions, we should adjust them according to key factors that change and deduct rules of the CODP production model. The following is the analysis of algorithm and construction of the CODP dynamic adjustment model.

4.2 Activation mechanism and algorithm of multi-CODP dynamic adjustment model

In the CODP dynamic adjustment model, without consideration of stock out, adjustment cycle T is co-determined by production cost of different production routes, order quantity, production cycle and production lead time of different production routes, customer response time and product timeliness, as shown in Formula (2).

$$\begin{aligned} C=TC_i\times O_i+M\times (T_i-L_i)\times O_i \end{aligned}$$
(2)

in which

C is the Production cost of customized product i;

TCi is the pre-invested unit cost of customized product i;

Oi is the order quantity of customized product i;

M is the Processing cost per hour per unit product;

Ti is the production cycle of product i;

Li is the production lead time of product i;

TCi can be worked out according to Formula (3):

$$\begin{aligned} TC_i= & {} QC_i+SC_i+K=O_i\times F\nonumber \\&\qquad \times \, c+(Oi+(F-G))\times t_j \times h+K \end{aligned}$$
(3)

in which:

F is the lots of production;

c is the production cost of per unit;

G is the inventory of the last production cycle;

t is the arrival time of order j;

h is the inventory cost per unit per hour;

K is the cost of order processing and production scheduling;

QCi is the production cost of semi-finished product of customized products i;

SCi is the component inventory cost of products i of order j;

Considering adjustment cost and adjustment risk of a production system, when setting the cycle for CODP dynamic adjustment, we should avoid loss caused by wrong estimation of current minimal production cost. The CODP adjustment model should combine with production status and order quantity, calculate cost under production cycle of different customized products, and choose the production cycle of the scenario with the lowest cost as the adjustment cycle.

For the model above, system can choose Ti to be the adjustment period T of CODP adjustment model when the value of C is the least—namely, T = min C(Ti). After production cycle T is fixed, customer response time Tk and submultiple of customized product timeliness DZ should be considered for analysis because customers need time to react and different products own different timeliness. Based on the above analysis, we can get the final result of adjustment cycle T, as shown in Formula (4).

$$\begin{aligned} T _{final}=(T+T_{K})/DZ \end{aligned}$$
(4)

After fixing the adjustment cycle of the multi-CODP dynamic adjustment model, we should make deduction and calculation based on the changes of the effect factors, take all interactions among uncertain factors into consideration and distinguish whether or not it is necessary to adjust CODP positions, as shown in Fig. 3.

Fig. 3
figure 3

Activation model

In the CODP adjustment model, three key effect factors can be lined up according to the importance: customer requirement, product variety and production cycle, which can be further divided into order quantity, order frequency, customization requirement, customer sensitivity, payment reliability, category quantity and production cycle of customization. After a production system acquires data from order statistics, we check the order quantity and the order frequency. If order quantity and order frequency increase or decrease in a large scale simultaneously, we would use Formula (5) to determine whether to adjust the CODPs or not.

$$\begin{aligned} Y=\Phi \left( {U\left( k \right) } \right) =\left\{ {\begin{array}{ll} 1,&{}\quad U\left( x \right) \ge 0 \\ 0,&{}\quad U\left( x \right) <0 \\ \end{array}} \right. \end{aligned}$$
(5)

If Y is chosen to be the activation function, adjustment mechanism should get activated when the value of k is greater than or equal to 0 and the value of Y will be 1. Otherwise, adjustment mechanism shouldn’t get activated. If U(k) is set to be the adjustment function, xi to be the variable, \(\upomega \)i to be weight coefficients of different variables (w1 > w2 > w3), x1 to be the alterations function of customer requirement, x2 to be the alterations function of category quantity, x3 to be the alterations function of customization cycle, \(\upvarepsilon \) to be the threshold of all the parameters and weight, which is determined by the production status of the last adjustment cycle, as shown in Formula (6).

$$\begin{aligned} \left\{ {\begin{array}{l} U(x)=\sum _{i=1}^3 {\omega _i x_i -\varepsilon } \\ x_1 =\left( {\sum _{j=1}^n {P_i Q_{ij} t_j } } \right) {\cdot }\left( {a{\cdot }D_i {\cdot }S_i +b{\cdot }\frac{\int _t^\infty {\lambda e^{-\lambda t}dt} }{T_i }} \right) \\ x_2 =\frac{\mu }{\left( {Q-{Q}'} \right) {T}'_i } \\ x_3 =\frac{1}{\left( {T_i +L_i } \right) -\mu } \\ \end{array}} \right. \end{aligned}$$
(6)

In Formula (6):

Pi is the order frequency of product i;

Oij is the quantity of product i of order j;

tj is the arrive time of order j;

Di is the coefficient of customization requirement of product i. The higher the coefficient, the more complicated the requirement.

St is the coefficient of customization sensitivity. The higher the coefficient, the more sensitive the client.

t is the time that products have put into produce

\(\int _t^\infty {\lambda e^{-\lambda t}dt}\) is the reliability of product whose maximum value is less than 1.

a,b are the weight coefficient of customer requirement.

Q is the the original quantity of product varieties.

Q\(^\prime \) is the the present quantity of product varieties.

Ti is the the customization production period of Product I.

Li is the the production lead time of product.

T’i is the the reaction time of client of Product I.

\(\upmu \) is the the delivery time of Product I.

Formula (6) is the activation mechanism of the CODP adjustment model. With order quantity and order frequency increasing simultaneously, we should analyze interaction of other related variables. If customization requirement becomes more and more complicated, the customer sensitivity becomes higher and higher, and the customer is willing to pay more to buy the customized product (means that more customers are attracted to the customized product), the product demand would increase. Then we should move CODP positions upward to meet customer demands. When order quantity and order frequency increase greatly simultaneously and the customer respond time decreases, improving the delivery reliability would improve customer satisfaction. Then we should consider combining CODPs, reduce CODPs or move CODP positions downward. When the customization cycle gets shorter, we can move CODP positions upward—that is, the larger (or smaller) the value of U(k) + \(\uptheta \), the longer CODP positions would move upward (or downward). \(\uptheta \) is set to be the production of minimum lot.

Fig. 4
figure 4

Turbine production flow chart

5 Rule diagnosis mechanism after CODP adjusting

For multi-CODP dynamic adjustment model, rule-based adjustment mechanisms should have constraints. Generally, constraints should be immutable rules. Because rules in knowledge base are fault-tolerant, only when unchangeable variables conflict with current rules can inconformity occurs. In the CODP adjustment model, production cost A should be less than a certain value V; the reaction time of client of product T\(^\prime \)i plus production lead time Li should be less than production time \(\gamma \); production of each CODP should reach the minimum lot production \(\theta \). If the attribute combination of production i changes, each producing procedure would change accordingly. No matter whether you choose to move CODPs, add CODPs or decrease CODPs, each backup point just has two states, chosen or not chosen. Here 1 represents that the point is chosen, and 0 represents that the point is not chosen. If the number of needed component for the product at the point is N, for this producing procedure, there are two constraints: this procedure’s total production reaches the minimum of lot production; and the production time of the product should meet the requirement of delivery time—namely, the production capacity of the frontal points should meet the requirement of production lead time and order quantity. All in all, no matter when the procedure of the multi-CODP location model changes, it should meet the following constraints, as shown in Formula (7).

$$\begin{aligned} \begin{aligned} \left\{ {\begin{array}{*{20}{l}} {\theta \ge \sum \limits _{j = 0}^{j< = N} {\sum \limits _{i = 0}^{j< = all} {P{D_i} \times \mathfrak {R}} } }\\ {N \times \gamma > \sum \limits _{i = 0}^{i< N} {{T_i} \times {L_i}} }\\ {V \ge \sum \limits _{\mathrm{i} = 0}^\mathrm{{i} < N} {{\mathrm{A}_\mathrm{i}}} } \end{array}} \right. \end{aligned} \end{aligned}$$
(7)

In order to respond to check consistency quickly and conveniently, we should set constraint index (tag). If the above unchangeable constraints cannot be met, we can confirm that there is inconsistency in the current knowledge base. If tag \(\le \) 0, there is inconsistency; otherwise, there is no conflict in the knowledge base, as shown in Formula (8).

$$\begin{aligned} tag= & {} \left( {\theta -\sum _{j=0}^{j<=N} {\sum _{i=0}^{i<=all} {PD_i \times \mathfrak {R}} } } \right) \nonumber \\&\times \left( {N\times \gamma -\sum _{i=0}^{i<N} {T_i +L_i } } \right) \times V-\left( {\sum _{\mathrm{i}=0}^{\mathrm{i}<N} {\mathrm{A}_\mathrm{i} } } \right) \end{aligned}$$
(8)

When the inconsistency occurs, we would traverse each newly-added rule and quick search each variable of new rules. If the current rule base does not include the new variable, directly check whether all CODPs in CODP set P conform to all rules: if all CODPs comfort to all rules, do not move CODPs; if some do not conform to all rules, delete CODPs that do not conform to rules; if CODP set enlarges, we can also add CODPs.

$$\begin{aligned} \begin{array}{l} p=\{(CODP1,CODP2,...,CODPn), \\ \quad (CODP3,CODP4, ...,CODPm),..., \\ \quad (CODP7,CODP8,...,CODPx)\} \end{array} \end{aligned}$$
(9)

If the newly-added rules and existing rules have changed, then we should check whether the two have intersection. If the intersection is empty, then we should check whether the newly-added rules and the existing rules have conflict. If there is no conflict, just use the intersection; otherwise, refine the weight of effect factors, compare each effect factors in new and old rules and make priority comparison of gross weight in other related rules. We delete rules with lower priority in the data base to regain consistency, then judge and calculate the solution set of CODP positions, and finally got a new solution set of CODP positions. For example, when customer demands and product variety attributes change simultaneously, we would directly use existing data base to determine whether to adjust or not and how to adjust. Firstly, distinguish whether the customization production procedure of each CODP has reached the production of minimum lot size and delete the CODP that does not reach. Then judge whether all production lines can satisfy the constraint: the delivery time is longer than the production time. If the constraint cannot be satisfied, all production lines have to be adjusted according to priority and the production line with the largest sale has the highest priority. After deciding which line to make concession, calculate each CODP’s production limit based on other production lines’ situation and delete those cannot meet the constraints.

Table 3 Blank of positioning adjustment variates of turbine

6 Case: turbine’s multi-CODP dynamic adjustment model and implementation

6.1 Effect factors and constraints of existing codp localization model in turbines’ production

The production process of turbine is complicated, because a turbine needs various components – up to 5000 components for one turbine. Five workshops are needed to produce turbines: cylinder workshop, rotor assembly workshop, separators workshop, cabinet workshop and assembly workshop. The main processes are shown in Fig. 4. Four CODPs are set in the process of turbine production, seeing dash line in Fig. 4. (More details can be found in the pre-published reference [9]). Variable parameters of the CODP dynamic adjustment model in the turbine production is shown in Table 3.

For turbine production’s multi-CODP manufacturing model, the following is the main processes: variables monitoring—determining the adjustment cycle—Monitoring variables regularly—judging whether to activate the activation model or not—analyzing CODP adjustment model—modifying CODP positions—restoring of the multi-CODP production rules inconsistency—entering new round of CODP adjustment cycle. But in the process, each model should set many rules and parameters for judging and adjusting. These rules include variable rules, factual knowledge and constraints. The variable rules include the following.

Production cycle:

$$\begin{aligned} {T_j} = \frac{{{C_j} - T{C_j}*{O_j}}}{{M*{O_j}}} + {L_j} \end{aligned}$$

Adjustment cycle:

$$\begin{aligned} \frac{{(C{{({T_j})}_{\min }} + T'}}{{DZ}} \end{aligned}$$

Activation index:

$$\begin{aligned} \hbox {U}\left( \mathrm{x} \right)= & {} \omega _1 \times \left( {\mathop \sum \limits _{j=1}^N P_i O_{ij} TD_j } \right) \nonumber \\&\times \left( {a\times D_i \times S_i +b\frac{\mathop \smallint \nolimits _t^\infty \lambda e^{-\lambda t}dt}{T_i -L_i }} \right) \\&+\,\omega _2 \frac{\mu }{\left( {Q-Q^{{\prime }}} \right) T_i^{\prime } }+\omega _3 \frac{1}{T_i -\mu }-\theta \end{aligned}$$

Activating mutation index:

$$\begin{aligned} Z= & {} \varphi (\gamma -T)\times \left[ {\prod \limits _{i=1}^n {\varphi _2 \left( {QC_{i}-\sum \limits _{k=1}^{\alpha {ij}} {O_k } } \right) } } \right] \\&\times \left[ {\prod \limits _{i=1}^R {\varphi _3 \left( {QC{^\prime }_{ir}-\sum _{k=1}^{\alpha {ij}} {O_{k\chi k} } } \right) } } \right] \\ T= & {} \sum \limits _{k=1}^{\alpha {ij}} {(\beta _{i}O_{i}+\theta _{i}O_{k})} \\ \end{aligned}$$

Fault-tolerance index of knowledge base:

$$\begin{aligned} Tag= & {} \left( {\theta -\sum _{j=0}^{j\le N} \sum _{i=0}^{i\le all} {PD_{i}\times R} } \right) \\&\times \left( {N\times \gamma -\sum _{i=0}^{i<N} {T_{i}} +L_{i}} \right) \times V-\left( {\sum _{i=0}^{i<N} {A_i } } \right) \end{aligned}$$

Factual knowledge and constraints including: Component inventory cost:

$$\begin{aligned}SC= & {} \sum \limits _{j=1}^{j\le N} {\sum \limits _{i=1}^{i\le 5} {\left[ {O_{ij} +\left( {F_1 -G_1 } \right) } \right] } } \times t_i \times h_i o_i +\left( {F-G} \right) \\&\times t_j \times h \end{aligned}$$

Component production cost:

$$\begin{aligned} QC=\sum _{j=1}^{j\le N} {\sum _{i=1}^{i\le 5} {O_{ij}\times F_{ij}\times c_{ij}} } \end{aligned}$$

Pre-production cost:

$$\begin{aligned} TC=SC+QC+K \end{aligned}$$

Production lead time:

$$\begin{aligned} L=\mathrm{Max}(L_{i}) \end{aligned}$$

Input cost:

$$\begin{aligned} C=\sum _{j=1}^{j\le N} {\sum _{i=1}^{i\le 5} {TC_{i}\times } } O_{ij}+(M\times (T_{i}-L_{i})\times O_{ij}) \end{aligned}$$

Order quantity of each product:

$$\begin{aligned} O_{j}=\sum _{i=1}^{i\le 5} {O_{ij}} \end{aligned}$$

The minimum point of lot product:

$$\begin{aligned} \theta \ge \sum _{j=0}^{j\le N} {\sum _{i=0}^{i\le all} {PD_i } } \times \mathfrak {R}\end{aligned}$$

Delivery time:

$$\begin{aligned} N\times \gamma \rangle \sum _{i=0}^{i<N} {T_{i}+L_{i}} \end{aligned}$$

Maximum of production cost:

$$\begin{aligned} V\ge \sum \limits _{i=0}^{i<N} {A_i } \end{aligned}$$

Variable rules would change with the variables. Final values of these variables are uncertain and non-unique, while factual knowledge and constraint rules are stable and generally their laws would not change turbulently. Therefore the determination of the latter two is based on the specific information of products. In the multi-CODP dynamic adjustment model under constraints, variable rules are the results of calculation of variables and have some influence on the CODP location, and factual knowledge and constraint rules determine the range of CODP movement.

6.2 Existing codp location’s customization case and weight setting

After simplification of turbine customization process, we can see the current CODP location setting case from Fig. 4, which determines the current customization range for customer’s selection. For each CODP, companies will offer customers different customization options. Options of turbine CODP location are shown in Table 4.

Table 4 Turbine multi-CODP customization options

Based on turbine’s historical sale records and past production experience, we should set weights for each rule in multi- CODP adjustment model. In the whole process of CODP adjusting, when effect factors change, enterprises cannot consider all respects of the situation, and they would make concession if necessary. Therefore, enterprises need to set different weights for factors based on the actual situation to make results closer to the fact. When monitoring various effect factors, the activation mechanism in CODP adjustment model would make judgment based on different weights and variables set by constraints of turbine production, and determine if it is necessary to activate the CODP adjustment mechanism. Weights of effect factors in activation mechanism are shown in Table 5.

Table 5 Weights in multi-CODP activation mechanism of turbine

Turbine is a heavy machinery with high-degree customization, and is greatly influenced by customer demands. And both customization sensitivity coefficient and customization coefficient are high. Therefore, under the premise of satisfying the production, turbine enterprises should try to meet customer demands. Then, take other factors into consideration to adapt to market and attract more customers. Besides, when effect factors change, the newly added variables may be in conflict with the old rules. In this case, to restore the consistency of the knowledge base, we should consider the weight of rules based on the actual situation, and recalculate weights to decide which rule should be modified or deleted. For the production of turbines, weight setting of rules in knowledge base is shown in Table 6.

Table 6 Weight multi CODP model rules under the weight constraint

6.3 The CODP dynamic adjustment model of turbine

According to the above situation of turbine products, the paper builds a multi-CODP adjustment model of turbine production system. To adapt to the dynamic environments, in this model, we should determine the adjustment cycle of the multi-CODP manufacturing model based on the turbine production firstly. The production information of turbine is shown in Table 7.

Table 7 Monthly average turbine production in 2008

Because the long service life of the turbine, about 20–25 years, timeliness is relatively small, so the timeliness coefficient is set to 0.5. The adjustment cycle is 12 months according to the CODP dynamic adjustment model. After determining the adjustment cycle, monitor variable according to this cycle, calculate changes of each variable through activating the model, and determine whether it is necessary to adjust CODPs. The basic information of the turbine in this model is shown in Table 8.

Table 8 The average monthly production statistics of turbine

Based on the related data in the above table, we can deduce whether it is necessary to adjust the CODP and how to adjust. After adding, deleting or moving the CODPs, we should check out whether the modified rules are conflicted with those already in the knowledge base. If there is inconsistency, we would modify CODP value according to the weight (weights of relevant rules is shown in Tables 5 and 6). When it changes, the CODP dynamic adjustment model would analyze whether to adjust or not, and give suggestions for adjustment.

6.4 Experimental result

According to the 2008–2009 annual data of a turbine enterprise, we can deduce that the adjustment cycle of the turbine is 1 year based on historical data. After determining the adjustment cycle, when a new round of CODP dynamic adjustment occurs, we should monitor each variable in the system to see whether it has changed greatly. When the activation model finds that the change is beyond the normal range, it would readjust CODP positions. After an adjustment cycle, re-input the product data, use the activation model to determine whether to adjust CODP positions or not by comparing the existing production data and the historical data and determine the adjustment strategy based on the results of calculation.

Although we have obtained optimization suggestions based on the result of system calculation and deduction, we should check whether there is inconsistency in rules of turbine production after CODP moving. If there is, we should restore the consistency. In the paper, assuming that the enterprise has adopted the suggestion proposed by the system and move CODP4 down one position, one CODP is deleted because CODP4 and CODP3 is overlapped. The diagnosis result from diagnostic model in the knowledge base is shown in Table 9, which indicates that no inconsistency exists in rules after CODP moving. If there is inconsistency, calculate and deduce new CODP set based on the rule-guided CODP dynamic adjustment mechanism and algorithm, and readjust CODP positions.

Table 9 Diagnosis result from diagnostic model in the knowledge base

7 Conclusion

The dynamic evolution route of multi-CODP evolutionary manufacturing model mainly depends on the dynamic adjustment of CODP positions. Driven by customer demand and aimed at the dynamic and complicated production environments, the paper establishes the multi-CODP dynamic adjustment model, the activation mechanism, and the related algorithm. And after adjusting CODP positions, the paper makes diagnosis of the knowledge base in the original production system and then sets a rule-guided model to detect whether there is a conflict. If there is a conflict, then modify the rules according to weights to restore consistency. Finally, it exemplifies the multi-CODP dynamic adjustment model using a case in turbine production system. This paper proposes the multi-CODP dynamic adjustment model and strategy for customized product or service and offers solutions for customization enterprises in reducing costs, quickly meeting dynamic and various customer demands and improving customer satisfaction. In the meanwhile, it provides customization enterprises with effective and reliable methods and routes to improve innovative capacity, achieve personal customization and reduce production costs. However, we should note that only strongly supported by information technology can the practice of this research result be achieved.