Chapter 5: Computational Experiments
5.1 Experimental Design
As we explain in Chapter 4, both the MILP model and the heuristic we design are meant to be used for one machine type at once. For our tests, we choose to focus on the calibrators since they represent one of the current bottlenecks in Sensata’s manufacturing process. Although both the MEMS and MSG departments have production facilities in more than one country, we decide to focus on the calibrators available for MEMS in Malaysia. Table 3 shows more details with regard to the data set we use for our initial tests.
Length of planning horizon 12/24 months
Number of products 260
Number of existing machines 9
Number of fictive machines 6
Demand Sensata’s demand forecast
Cycle Times cycle times currently used in their model
Machine Capabilities all set to 1
Machine Releases either 0 or 1
Availability OEE all set to 0.75
Quality OEE all set to 1
Buffer 0
Working Days Number of working days in each month (currently used in their model)
Working Hours Per Day 22.5
Lead Time Releases 3 months
Lead Time Ordering a New Machine 15 months
50
Most of the data is provided by the capacity manager of the MEMS department. The demand values we use are based on the company’s demand forecasts. These values are available on a monthly basis for all products. The cycle times we choose for the initial data set represent the average values the company is currently using in their capacity planning model. Similarly, the number of working days in a month are the values currently used in their planning.
For some of the factors we fill in the missing data. An example of such missing data are the values for the physical capabilities of a machine. Since no flexibility matrix, showing the machine capabilities, is available, we decide to set them all to 1. In this case each machine is capable of producing any of the sensors. Another example of missing data refers to the OEE components. Until now Sensata only used a single value to reflect both components. We decide to set the availability component to the current value used by the company and set the other component to 1. Thus, the values we use for these parameters are 0.75 and 1. Further on, a parameter that we set to 0 is the buffer on capacity the company aims to have.
When selecting the values for the missing parameters we aim to minimize their impact on our results. In this manner, we try to keep our initial data set as close as possible to the one used in Sensata’s current model.
Another factor which is not included in the company’s model is related to the machine releases. Hence, such a flexibility matrix is not available. However, when checking the list of cycle times, we notice that for some product-machine combinations no values are available. According to the capacity manager, if no cycle time is found for a product-machine combination, that machine is therefore not released to produce that sensor. This being the case, we set the machine releases to either 0 or 1 by checking if a cycle time value is available for each product-machine combination.
For the initial tests, in order to validate our MILP model, we compare its results with the ones from Sensata’s current model. Once we run the initial tests, we make various adjustments to the initial data set, depending on the type of test we wish to perform. Figure 19 shows the modifications we make to fit each of our tests.
Depending on the test, we choose to perform the modifications from Figure 19 to strictly focus on one aspect at once. Since we compare different local search algorithms for
three stages, we adjust the initial data set to serve as inputs for each individual stage. First, for creating and optimizing the initial schedule we set the releases of all machines to 1, regardless of the product. At this stage we are interested in knowing which of the two metaheuristics performs best when simply trying to reduce the total loading of an initial schedule. Hence, by setting all releases to 1 we allow the algorithm to strictly focus on minimizing the overall loading, given the demand of each product and the processing times associated with each product machine combination. A second modification we make for this test
51
refers to the processing times. As we mention when describing the initial data set, the cycle times of each product across all machines have the same value. In order for both metaheuristics to improve the initial schedule we need more variation within the cycle times. Therefore, we decide to vary these values. We choose the [6, 14] interval by checking for the minimum and maximum values from the company’s data. Next, in order to test the metaheuristics for releasing existing machines, we make two modifications to the inputs we use when optimizing the initial schedule. We choose to adjust this data set, rather than the initial one, because we believe that variation within cycle times is important for this step as well. During this stage we not only aim to release existing machines to fit the products allocated on the infinite capacity machine (ICM), but we also wish to assign these products where the lowest processing time is, if capacity allows. We provide more details regarding the objective function we choose for this stage in Figure 20. The first modification we perform for this test is to remove the machine releases for a total of 10 products. We select the first 10 products, with demand greater than 0, which we find in the first month. Although all these products have demand in the first month of the planning horizon, we notice that they do not have a positive demand across the entire horizon. Therefore, the number of releases we expect the algorithm to perform will not always be equal to minimum 10. We perform two different tests for this stage. For the first test we only use the first modification, while for the second one, we apply a combination of both. The second modification refers to increasing the demand of each individual product. We do this to model the situation when the capacity does not suffice to fit the volumes of all products assigned on the ICM and force the metaheuristics to select the best products to relocate.
In the last stage we allow the algorithm to order a new machine. Once a newly purchased machine becomes available for production the company needs to select the best products for which this machine can be released. Hence, this stage is related to releasing the newly available machine in an attempt of reducing the loading of the ICM as much as possible. For this test we decrease the number of existing machines to either 4 or 5 and analyse the results after the algorithm decides in favour of ordering a new machine.
Besides different data sets, depending on the stage, we also consider different objective functions and sets of constraints. We choose this approach in order to focus only on one aspect at a time. For example, when optimizing for the releases of the existing machines we do not consider constraints related to building inventory or purchasing a machine. In Figure 20 we provide an overview of the objective functions and constraints which we consider in each of the
52