Introduction

Production planning is a key area of operations management. The plans have to be determined while there is uncertainty in environmental and system uncertainties, namely uncertain products demands, processes yields, etc. This work is trying to solve a production planning problem in a manufacturing factory where multiple products are produced simultaneously from different classes of raw material. Besides, raw materials are non-homogeneous and have random characteristics. Therefore, the production ability of every steps, meaning the quantity of products that can be produced by each process step, are random variables. Moreover, market demand for products is also uncertain and non-stationary during the planning horizon. The problem that we are considering is to find how many product can be produced.

Mula et al. (2006) have provided a review of literature in production planning under uncertainty. Stochastic programming (Dantzig 1955; Kall and Wallace 1994; Birge and Louveaux 1997; Kall and Mayer 2005) and robust optimization (Mulvey et al. 1995) has seen several successful applications in production planning. In Escudero et al. (1993), a multi-stage stochastic programming approach was used for addressing a MPMP production planning model with random demand. Bakir and Byrune (1998) developed a stochastic LP model based on the two-stage deterministic equivalent problem to incorporate demand uncertainty in a multi-period multi-product (MPMP) production planning model. Huang (2005) proposed multi-stage stochastic programming models for production and capacity planning under uncertainty. Alfieri and Brandimarte (2005) reviewed multi-stage stochastic models applied in multi-period production and capacity planning in the manufacturing systems. Ho and Fang (2013) proposed a novel method to determine optimal capacity allocation under the uncertain demands and to allocate limited capacity to multiple products with an aim to maximize profit. Brandmarte (2006) proposed a mathematic programming approach for multi item capacitated lot sizing with uncertain demand. Khor et al. (2007) proposed a two-stage stochastic programming model as well as robust optimization models for capacity expansion planning in petroleum refinery under uncertainty. Leung and Wu (2004) proposed a robust optimization model for stochastic aggregate production planning. Aarabi and Hasanian (2014) reviewed 58 articles in the field of “capacity planning and control” published during 2000–2014. Capacity planning and control are the task of setting the effective capacity of the operation, so that it can respond to the demands placed upon it.

Awudu and Zhang (2013) proposed a stochastic linear programming model for production planning in a biofuel supply chain under demand and price uncertainties. Decisions such as the amount of raw materials purchased, the amount of raw materials consumed and the amount of products produced are considered. Benders decomposition (BD) with Monte Carlo simulation technique is applied to solve the proposed model. In Leung et al. (2007) a robust optimization model was developed to address a multi-site aggregate production planning problem in an uncertain environment. Wu (2006) applied the robust optimization approach to uncertain production loading problems with import quota limits under the global supply chain management environment.

Multi production manufacturing makes planning harder and more complicated methods should be used. Shi et al. (2011) used mathematical programming to solve an uncertain multi product problem. But these kinds of problem while facing with uncertainty usually needs a robust answer. Graves (2011) reviewed uncertain production planning problems. Figueroa-García et al. (2012) modeled and solved a multi period production planning problem in a fuzzy environment again using mathematical programming. Zhang et al. (2010) solved a production planning problem with seasonal variable demand. Mehrjoo and Bashiri (2013) proposed a robust decision support tool for detailed production planning based on statistical multivariate method including principal component analysis and logistic regression. Zahraee et al. (2014) applied computer simulation to analysis manufacturing system in order to improve the productivity. They study a color manufacturing line as a case study and the basic application of arena 13.9 software.

The literature in production planning under uncertainty is vast. Different approaches have been proposed to cope with different forms of uncertainty. Mula et al. (2006) have reviewed production planning models under uncertainty and have presented a brief general classification which is shown in Table 1.

Table 1 Classification for the general types of uncertainty models in manufacturing systems

Galbraith (1973) defines uncertainty as the difference between the amount of information required to perform a task and the amount of information already possessed. In the real world, there are many forms of uncertainty that affect production processes. Ho (1989) categorizes them into two groups: (1) environmental uncertainty and (2) system uncertainty. Environmental uncertainty includes uncertainties beyond the production process, such as demand uncertainty and supply uncertainty. System uncertainty is related to uncertainties within the production process, such as operation yield uncertainty, production lead time uncertainty, quality uncertainty, failure of production system and changes to product structure, to mention some.

Simulation models have been widely used in uncertain problems. Mula et al. (2006) have classified use of simulation in uncertain production planning problems.

In this paper, we have used Fuzzy numbers to deal with uncertainty. The integration of fuzzy set theory in discrete event system simulation to cope with the representation of qualitative uncertainty has been proposed in Azzaro et al. (1997), Nguyen and Le (1997) and Grieco et al. (2003). In Nguyen and Le (1997), fuzzy and temporal logics are combined to establish a temporal logic-based simulation system that is capable of handling possibilistic values of both system state variables and event occurrence times. In NotoLaDiega et al. (2001), the problem of processing fuzzy data within a discrete event simulation process is discussed and new methods, able to avoid time paradox problems, are proposed. The time paradox problem is also considered in Grieco et al. (2003) in which a proper simulation clock updating procedure is developed. A discrete event simulation model of an industrial production system using fuzzy concepts to represent uncertainties in the performance of people (time and duration of their intervention) is reported in Azzaro et al. (1997). The work has been focused in semiconductor manufacturing but can be applied to other kinds of batch processes presenting similar features. A solution to the problems related with the management of fuzzy uncertainty in discrete event simulation is proposed even if the interpretation of the obtained fuzzy simulation results requires further investigations (e.g. no consideration about time paradox is made). Recently, fuzzy uncertain durations have been considered in Zhang et al. (2005). The fuzzy ranking measure is merged with an activity scanning simulation algorithm for performing fuzzy simulation time advancement and event selection for simulation experimentation.

Research steps

To obtain an accurate estimate of production level with fuzzy inputs, we have used fuzzy simulation. The input parameters are considered fuzzy because of several reasons such as below:

  • Variation in charging times at the beginning of production line: In the desired production line, several kinds of commodity are produced and the amount of each one depends on the demand, which is an uncertain value.

  • Dependent production time: Production time in every stage of production process depends on what commodity is being produced, and since row material charge to production line is uncertain, the production time will be uncertain to.

  • Inherent variability of production times: there is a time variation in every particular action on a particular product, which is due to nature of actions.

The combination of these phenomena creates an atmosphere that makes it difficult to use commonly used methods for production planning. To overcome the complexity and diversity in the decision making environment, simulation tools have been considered, and to incorporate uncertainty in the decision making process fuzzy simulation is selected as a suitable tool. Next, fuzzy simulation will be described.

Fuzzy discrete event simulation

In considered part of production line, events occur at discrete intervals, also to simulate the line we should use discrete event simulation. Since process times are considered fuzzy, the simulation method used in this paper is based on entering fuzzy numbers in discrete event simulation process. So the combination will be fuzzy discrete event simulation. To do so we use α-cuts. In fact, for every α-cut, for lower bound and upper bound values, we have run the simulation model (0 ≤ α ≤ 1). Therefore, the result will be an interval containing two values as lower and upper bound for every α-cut. Now by placing these intervals, one on top of the other, a fuzzy number will be produced as final result.

Calculating fuzzy numbers by the use of bootstrap technique

Bootstrap methods are both computer intensive methods used frequently are applied statistics. The bootstrap is a type of Monte Carlo method applied based on observed data (Efron and Tibshirani 1993) Thousands of papers have been written on the bootstrap in the past 2 decades and it has found very wide use in applied problems.

The fundamental idea of the model-based sampling theory approach to statistical inference is that the data arise as a sample from some conceptual probability distribution. Uncertainties of our f inferences can be measured if we can estimate. There are ways to construct a nonparametric f. estimator of (in essence) from the sample data. The most fundamental idea of the bootstrap method f is that we compute measures of our inference uncertainty from that estimated sampling distribution of f. However, in practical application, the bootstrap means using some form of resampling with replacement from the actual data, x, to generate B bootstrap samples, x*. Often, the data (sample) consist of n independent units and it then suffices to take a simple random sample of size n, with replacement, from the n units of data, to get one bootstrap sample (i.e. “rep”).

We will be using fuzzy numbers for process times in simulation model. In this section, we show how we obtain these fuzzy numbers from a set of data. Initially, we assume that we have enough data. Let X be a random variable with probability density function (or probability mass function) f(x; θ) for single parameter θ. Assume that θ is unknown but we have enough random data X 1, …, X n and we are going to estimate θ by these data. Let Y = u(X 1,…, X n ) be a statistic which is used to estimate θ. Given the values of these random variables X i  = x i , 1 ≤ i ≤ n, we obtain a point estimate θ* = y = u(x 1,, x n ) for θ. It is not expected that this point estimate exactly equal θ so often a (1 − β) × 100% confidence interval for θ is computed. It is necessary to explain that since α usually is employed for confidence interval; we are using β here, and α is reserved for α-cuts of fuzzy numbers. In this confidence interval, one usually sets β equal to 0.10, 0.05 or 0.01. Usually β is set equal to 0.10, 0.05 or 0.01, but here it is proposed to find the (1 − β) × 100% confidence interval for all 0.01 ≤ β < 1. Starting at 0.01 is arbitrary and one could begin at 0.001 or 0.005, etc. We denote these confidence intervals as

$$[\theta_{1} (\beta ),\;\theta_{2} (\beta )],$$
(1)

for 0.01 ≤ β < 1. Then we have (1 − β) × 100% confidence interval for θ for 0.01 ≤ β ≤ 1. Now, as mentioned above, place these confidence intervals, one on top of the other. In this way, we can produce a triangular shaped fuzzy number θ whose α-cuts are the confidence intervals. We have \(\bar{\theta }\) [α] = [θ 1(α), θ 2(α)] for 0.01 ≤ α ≤ 1. All that is needed is to finish the “bottom” of θ to make it a complete fuzzy number. We will simply drop the graph of θ straight down to complete its α-cuts so \(\bar{\theta }\) [α] = [θ 1(0.01), θ 2(0.01)] for 0 ≤ α < 0.01. In this way, we are using more information in θ than just a point estimate, or just a single interval estimate (Buckley 2005).

The described method can be used only when the data is sufficiently available. Sometimes it is difficult to have enough data to calculate confidence intervals. In such situation, we propose to use bootstrap technique to obtain enough data. In this way, we can produce enough reliable data. This method can be used in several situations:

  • when there is no enough good data

  • when gathering data are difficult or expensive

and we have used bootstrap technique in this paper because of both environmental and system uncertainty which makes gathering and classifying reliable data difficult.

Experimental results

In this section, we are going to solve the existing problem about production planning in Barez Industrial Group, BIG. The problem is that there is no estimation of production ability or number of commodities product in each period. The answer helps the experts to arrange production and maintenance policies. We have used fuzzy simulation to solve the problem and by the use of bootstrap technique we have guaranteed the robustness of answer.

As mentioned in Sect. 2, there are several reasons for using fuzzy numbers as process times. In considered production line, several products are produced and every product has different production times. Amount of production of all products in every period is not clear and depends on demand which is completely uncertain. In addition, every production stage has a non-deterministic time. The combination of all these issues has created an extremely complex decision environment which lead us to use fuzzy numbers and fuzzy simulation to determine the production level. In this section, we will describe how we used the simulation.

About Barez

Barez industrial group (BIG) was founded in 1984. In corporation with Continental tires, as the first Iranian company started to produce freight and bus tires in 1999. BIG having produced about 40 tons in 2010, is one of the largest tire manufacturers in the region. BIG products include passenger tires, light truck tires, truck & bus tires and agricultural tires.

The considered production line in this paper includes several steps, which is represented in Fig. 1. These steps are common between all products but process times vary depending on product type.

Fig. 1
figure 1

Production process

Fuzzy discrete event simulation in Barez

Given the circumstances outlined, Fuzzy simulation selected as the suitable tool to determine production level. At first, we need to know time parameters of model. To do so, we collected 30 samples of each stage. Thirty samples are an appropriate number for using in bootstrap technique (Wilcox 2005). The samples were observed in random times distributed in whole working hours within a weak. Using bootstrap technique, confidence intervals for different values of α (0 ≤ α ≤ 1), is calculated. Finally, by putting together the confidence intervals, fuzzy numbers will be achieved. More details about all process times are represented in Table 2. Fuzzy numbers are calculated in triangular form. It is necessary to explain that ROM processes are fully automatic and they have a fixed process time for all products. Some processes are not performed on some products, so the first number in fuzzy triangular number of the relevant process is equal to zero.

Table 2 Process times

According to the production process represented in Fig. 1, we have designed a simulation model in Arena simulation software. The model is displayed in Fig. 2. We have used Arena student version to simulate the problem. Number of replications are calculated based on Kelton and Law (2000) and Yeh 2002). To simulate a fuzzy model in Arena, we have used α-cuts. To explain more, for a fixed alpha, all the fuzzy numbers are cut, (0 ≤ α ≤ 1), and the simulation is run twice for every α; once for lower bound and once for upper bound. We know that based on extension principle, fuzzy inputs will result fuzzy output. Therefore, by calculating lower bound and upper bound of output value for all α-cuts we will reach to a fuzzy output number. This is done by putting together the obtained lower and upper bounds.

Fig. 2
figure 2

Arena model

Lower and upper bound value of all fuzzy numbers and output number is provided in Tables 3, 4 and 5. Several graphical views of them are also showed in Fig. 3, 4 and 5. It is important to remember that we have used line equation of fuzzy numbers left and right side to calculate lower and upper bound of them for all α-cuts. Line equations are represented in Table 5. In this paper, the simulation time was set to 5 × 105 (s). And it costs 127.5 s to run one time on our computer (IntelR Core™2 Quad Q9400, 4 GB RAM) (Table 6).

Table 3 Fuzzy numbers lower and upper bound
Table 4 Fuzzy numbers lower and upper bound
Table 5 Fuzzy numbers lower and upper bound
Fig. 3
figure 3

FINAL MIX (20, 34.5, 80)

Fig. 4
figure 4

FINAL MIX (0, 17.5, 25)

Fig. 5
figure 5

FINAL MIX (20, 42.68, 60)

Table 6 Fuzzy numbers lower and upper bound

As mentioned, to obtain a fuzzy number as final output, the simulation model is run twice for every α-cuts. Each run consist of 1000 replication. The results will be put on together and fuzzy output is generated. We have implemented the mentioned process and the result is represented in Table 7 and Fig. 6. Since the variables in this model are time variables, running the simulation by lower bound of numbers will lead to upper bound of output (Table 8).

Table 7 Line equations
Fig. 6
figure 6

Output fuzzy number

Table 8 Output fuzzy number

As seen above, final output number is in the form of fuzzy triangular number (418, 1197, 3909). This question may come that what is the application of this fuzzy output. To answer the question we should say having a fuzzy reliable estimate of production level is much better than having nothing or even an unreliable estimate obtained by other methods. Also since production is done in an uncertain environment, every decision-making should be done by fuzzy methods and this fuzzy output can be completely useful in such situation. To describe more as an example, we know maintenance activities of machines in considered line depends on number of production, so when the production environment is uncertain the obtained result of described method can be useful. Similarly, there are more applications such as calculating costs, payments, planning for the supply, etc. The result has provided for experts in Barez company, they have used it in their decision making process and it has led to good results. The confirmation letter is presented in Appendix 1.

To verify the simulation model we checked every step of simulation model by company experts. A comparison between production process and simulation model (Figs. 1, 2) also shows that the model is verify. To make sure we examined the model output for reasonableness under a variety of settings of the input parameters.

To verify the results of simulation, we conducted several experiments with different observations. After comparing the results of simulation, it was proved that the application of simulation truly lead to accurate fuzzy number for output.

Conclusion

In this paper, we have tried to solve the problem about the level of production in an uncertain environment in Barez tire producing company. In considered production line we were faced with both kind of environmental and system uncertainty which made it difficult to solve. To overcome the difficulty and ambiguity, we used bootstrap technique, to gain robust reliable data, and fuzzy simulation to model and solve the problem. We obtained a fuzzy number as production level, which is very reliable and can be used in other decision areas. Barez experts have used the results and it has led to good consequences in planning process. The confirmation letter is also attached.