Optimization of a Single Model U-SLAB with Stochastic Duration with Integration of Genetic Algorithm and Computer Simulation

In this study, a simulation optimization method is applied in order to find the optimal design of a U-shape assembly line. The optimality criterion is the minimum number of needed stations. While many previous works use deterministic models to solve this problem, a simulation approach is applied in this study to consider the stochastic nature of the problem. On other hand, when we use a simulation method, a better understanding of system behavior can be obtained through the evolution of system. Another case that is considered in this study is the failures of conveyers which happen in the real world and the fatigue of operators is considered too. The procedure is as follows: first, an initial design of system is obtained by an optimizer (here Genetic Algorithm) with an initial given parameters. Second, the output of the optimizer is used to implement a simulation model in Visual Slam. Third, after running the model in simulator, the desired outputs are evaluated and the necessary changes will be made to optimizer parameters. Fourth, again the optimizer is used to generate new design with new parameters.


INTRODUCTION
Assembly line is a flow of material between a series of work stations.Basically, Assembly Line Balancing problem (ALB) answer to this question that how to assign tasks to stations subject to some constraints, like minimizing total number of stations given cycle time, minimizing cycle time given number of stations and etc.In today competitive environment, it is crucial for manager of big companies to find optimal assignment of tasks to stations, as it can reduces the number of worker we need for stations and consequently, it decreases the cost of production in some extent.
Assembly Line Balancing Problem (ALBP) is categorized into the four following classes by Ghosh and Gagnon (1989): After that Backer et al. (2006) divided ALBP into these two categories: Simple Assembly Line Balancing Problem (SALBP) and General Assembly Line Balancing Problem (GALBP).Finally we decided to extend the classification done by Scholl and Backer, as presented in Fig. 1.
Considering this classification "Table 1" is devoted to present a literature review for General Assembly Line Balancing Problem (GALBP).
According to definition of ALB problem, different assignment of tasks is possible that met precedence constraint.Finding the best assignment is so time consuming that put this problem in category of NP-Hard problems (Baykasoğlu and Dereli, 2009).As we know, in NP-Hard problems, it is more desirable to have a near optimal solution in a less amount of time rather than optimal solution that is obtained in a long time (maybe days or weeks).Meta-Heuristic algorithms do such thing for us.
Noorul Haq et al. (2006) developed a hybrid GA with modified ranked positional method to solve a mixed-model assembly line balancing with n model.In fact, to lower time of search, they use ranked positional method to obtain initial solution of GA.RuiJun et al. (2007) have improved genetic algorithm considering new data structure to solve ALB problem.Bautista and Pereira (2007) considered time and space constraint, applied Ant Colony Optimization method to find solution of problem.In case of Multi Objective Problems, Rekiek et al. (2001) develop kind of GA to solve the proposed problem with different objective functions.Mcmullen and Frazier (1998) have developed a SA to apply on different cases of multi objective ALB.Pastor et al. (2002) is another work that considers multiple objectives in multi-model ALB problem.They used Tabu search method to find the solution.Tasan and Tunali (2008) presented a review of different GAs that has been applied to solve different kind of ALBPs.The main difference of U-Shape with SALB is the direction of task's movement and the way we assign tasks to stations.In SALB, when we want assign a task to a station, only consider the precedence constraint.It means we cannot assign tasks that their predecessors weren't assign to previous stations.But in U-Shape, we consider two conditions, first is the one we have done for SALB and the second is: we check if the successors of a task are assign to one of the previous stations?Either of these conditions is met, we can assign that task.It's the main difference between SALB and U-Shape ALB and this difference does give us chance of having lower number of stations, too (mathematical modeling of U-Shape ALB is covered in next section).
So many researchers devote their time to study different kind of U-Shape ALB problem, as it is so important.In area of exact algorithm (Urban, 1998) presented a new integer programming model for U-Shape lines.Gokcen and Agˇpak (2006) developed a goal programming model for the simple U-Shape line balancing problem that consider simultaneously several conflicting goals.But, mathematical models take so much time to find the optimal solutions and in some situation, they can't (like SALB).That's why researcher began using meta-heuristic algorithm to solve this problem.Kazemi et al. (2011) have presented two stage genetic algorithms to solve a mixed model U-Shape ALB problem.The first GA's task is to provide initial population for second GA by being solved for m models.Then they take final chromosomes of first GA to form the chromosome structure of main GA.The objective function of main GA is the cost of stations and duplicated tasks.
Ajeblit and Wainwright (1998) use GA to solve U-Shape assembly line balancing problem.They used six different decoding algorithms that decode each chromosome to assigned tasks and compare their efficiency.Suwannarongsri and Puangdownreong (2008) proposed Tabu search method to solve single model U-Shape ALB problem.Baykasoğlu and Dereli (2009) solve both problem SALB and U-Shape ALB problem using ant colony optimization to make a comparison between them.Baykasoğlu (2006) presented a multiple-rule based multi-objectives Simulated Annealing algorithm to solve simple and Ushape ALB problem.
In the real world problem, it is very often that we don't have exact task duration but their value is a stochastic variable.Bagher et al. (2011) considered a single model U-Shape ALB problem with stochastic task duration.They used a hybrid ICA (Imperialistic Competitive Algorithm) with COMSOAL to solve problem.Baykasoğlu and Özbakır (2007) used a multirule coding genetic algorithm to solve a U-Shape ALB problem with stochastic tasks duration.Chiang and Urban (2006) consider stochastic U-Line balancing due to human factors and various disruptions.They presented a hybrid heuristic algorithm to solve this problem.The proposed algorithm consists of two major components, an initial feasible solution module that gives us an initial solution and solution improvement module.Cakir et al. (2011) considered a multiobjective optimization of a single-model stochastic assembly line balancing problem with parallel stations.Then, they proposed a new algorithm based on Simulated Annealing (SA) to find Pareto solutions.
Simulation and computer simulation: Simulation refers to broad collection of methods and applications to mimic the behavior of real systems, usually on computer with appropriate software (in some complex systems, software fails to do simulation and we need to code by ourselves).Simulation, like most analysis methods, involves systems and models of them.People often study a system to measure its performance, improve its operation, or design it if it doesn't exist.Before developing a simulation model, primary goal is to focus attention on understanding how their system currently works, which provides great insight into what changes need to be made.In fact, simulation can be extremely general term since the idea applies across fields, industries and applications.These days, simulation is more popular and powerful than ever since computers and software are better than ever.
Computer Simulation refers to methods for studying a wide variety of models of real world systems by numerical evaluation using software design to imitate the system's operation or characteristic, often over time.From practical viewpoint, simulation is the process of designing and creating computerized model of a real or proposed system for the purpose of constructing numerical experiments to give us better understanding of the behavior of that system for a given set of conditions.While simulation may not be the only tool you could use to study the model, it's frequently the method of choice.The reason for this is that the simulation model can be allowed to become quite complex, if needed to present the system faithfully and you can still do simulation analysis.Other method may require stronger simplifying assumptions about the system to enable an analysis, which might bring the validity of the model into question (Kelton et al., 2009).
As it was said, computer simulation has a large area of application that makes it really difficult to talk about all of them.In this section, we briefly talk about some studies that apply this approach.Qiu-Gao and Ying-De (2010) in their study, first analyzed the stochastic factors that affect a mixed-model assembly line balancing problem, then they built an Arena model of problem to study these stochastic factors during simulation in a virtual environment.Das et al. (2009) developed a computer simulation model to evaluate assembly line balancing problem with variable operation time and bowl phenomenon.Das et al. (2010) used computer simulation model to evaluate a bowl versus inverted bowl assembly line arrangement and make some comparison between normal and exponential operation time distribution.Azadeh et al. (2008) applied an integrated method to improve and develop railway system.At first, computer simulation is used to model verify and validate the system being studied.The Analytical Hierarchy Process (AHP) methodology determine the weight of any qualitative criteria, finally, the Data Envelopment Analysis (DEA) is used to solve the multi objective model to identify best alternatives and also to identify the mechanism to optimize current system.When we make a simulation model of system, we can't thrust it unless we do some verification and validate our model.It means, we should put our model in different and unanticipated situation then measure the error of our model with comparison to reality and then make suitable corrections.Sargent (2007) has discussed verification and validation of a simulation model in his study by describing four different approaches.More tips and guidelines to have successful simulation modeling could be found in Sadowski (2007) and Sanchez (2007).
Simulation optimization: For a moment pay attention to the parameters that we use in a simulation model as inputs.Our simulation model evaluates these inputs by running in a fixed or unfixed period of times.Then again we repeat these steps by changing the value of inputs to get different outputs and make comparison between them.We call this process, Simulation experiment.Simulation experiment can be defined as a test or series of tests in which meaningful changes are made to the input variables of a simulation model so that we may observe and identify the reasons for changes in the output variable (s).But, what would happen if we have large number of inputs or a complex simulation model?Is it possible to try all changes?In such a situation, we need to estimate best value of inputs among all possible values, somehow (Carson and Maria, 1997).That's the objective of Simulation Optimization, that find the best inputs among all possible inputs in way other than testing all possible inputs.Like simulation applications, simulation optimization has a broad area of application too, as it is in same category of simulation.So we briefly talk about some works that use simulation optimization method.Yan and Wang (2007) applied this approach for a job shop scheduling problem.Their approach consists of two modules: genetic algorithm based optimizer and discrete event simulation model.Candidate scheduling schemes represented by a serial of scheduling rules are suggested by GA.Simulation models are used to evaluate the performance of candidate scheduling schemes, the results of evaluation are returned to the GA to be utilized in selection of the next generation of candidate scheduling schemes to be evaluated.Mejtsky (2007) use a Meta heuristic algorithm to evaluate simultaneous simulation outputs in simulation optimization process.Keskin et al. (2010) built a discrete-event simulation model to evaluate the objective function of the problem (integrated sourcing and inventory decisions) that works in concert with a scatter search-based Meta heuristic optimization approach to search the solution space.Yu et al. (2010) in their problem, asset allocation, first construct a simulation model to simulate operations of a propertycasualty insurer.Then they develop Multi-Phase Evolution Strategies (MPES) to be used with the simulation model to search for promising asset allocations for the insurer.Azadeh et al. (2008) have presented in their study an integrated computer simulation and genetic algorithm for optimizing operator allocation in some workstations to maximize production throughput in a large multi-product assembly shop.The strategy that they have applied is to use computer simulation model as tool for modeling and analyzing the performance of system and then GA is used to maximize the throughput of the system.Azadeh et al. (2010) presented an integration of computer simulation and Tabu search and Design of Experiments (DOE) to optimize the performance of production system in a large steel making workshop.Xu and Xiao (2008) integrated fuzzy simulation and genetic algorithm to design a hybrid intelligent algorithm to solve a mixed model assembly line balancing problem with fuzzy operation time.Noushabadi et al. (2011) used simulation optimization approach based on genetic algorithm optimizer to find the solution of a stochastic line balancing problem with reworks.Kuo and Yang (2011) employed Particle Swarm Optimization algorithm (PSO) for simulation optimization in order to optimize the managerial parameters in production system.
In this study, the following gaps of previous studies have been discussed and a simulation optimization model is presented to overcome those shortages: • The conveyer is considered to be unreliable.It would happen to fail and put the whole system in halt.• The fatigue of operators is either considered.It means that, the more operator work, the more time he needs to perform same job because of being tired.

METHODOLOGY Mathematical model of SALB and U-shape ALB:
In this section, we present mathematical modeling of SALB and U-Shape line balancing problem.Integer Programming for SALB: (1) Integer Programming for U-Shape ALB:

Problem definition:
The problem we consider in this study is a single model U-Shape line balancing consists of 21 tasks.Time between entrances of jobs to first station is an exponential random number with parameter α.Tasks duration is an exponential random number that its factor depends on time.It means operator efficiency comes down after hours and so do mean of random number that we used to simulate tasks duration.So, we consider two parameter, β1 and β2.It is probable that conveyer stop moving and if it happen, whole system stop working.Whenever this happen, it takes a uniform amount of time to fix conveyer problem.No rework is considered.There is no incompatibility between tasks, so we can assign tasks to station as long as precedence constraint is met.Cycle time is a predetermined parameter and we want to find assignment of task that maximizes efficiency of stations (or minimize total number of stations), so the number of stations is not known in advance.Another parameter that we want to determine as near to optimal as possible in this simulation optimization procedure is capacity of stations for work in processes.
Figure 4 shows precedence diagram for our problem.A schematic of our system for an arbitrary assignment of task is depicted in Fig. 5.

Method:
Figure 6 shows step by step of what we have done in this process.As it was discussed in introduction, we applied simulation optimization strategy for this problem based on Genetic Algorithm as an optimizer.First, after initializing parameters that affect GA (like cycle time and task duration here) we use GA to find optimal or near optimal assignment of tasks.As a matter of fact, we are finding best possible set of inputs for our simulation model.Number of operators for stations is a parameter that we handle as another input for simulation model not GA.As GA is based on random initial population, we can have different solution by multiple runs.So we can have different strategy for simulation (different inputs).For each result of GA, we implement the structure of simulation model in Visual Slam and get multiple runs of a specific structure.Then we analyze the output of this simulation model (objectives of our problem) for important managerial parameters.Then we use this analysis as a feedback for our optimization process (here GA) to test different value of parameters affecting the problem.For example we can decrease the cycle time or increase it and then get new structure of stations and new assignment of tasks.This is new input for our simulation model and consecutively, we can have new outputs.As it is clear, modules, optimizer and simulator, both have inputs.Outputs of optimizer is an optimal input for our simulation model, among all possible input and output of simulation model affect the input of optimizer.For example, we can test optimal structures of station for different value of cycle time as discussed above To run simulation model, we assume each station as simple queue system that use resources to do tasks.Pieces come from previous stations and stay in waiting area that is considered for every station.As we have limited space capacity, it is desired for us to minimize To have a reliable simulation model, we divide whole simulation time of every run to two parts, beginning of simulation to time t0 and rest of simulation.We don't consider the output data for first time interval, as during this period, system is warming up and is in a transient status.As matter of fact, the output of steady state is important for us.

Implementing simulation network in visual slam:
As mentioned previously, we used Visual Slam software Package to construct and run our simulation model.
Table 2 lists all nodes and resources and gates that we use in constructing model and in Fig. 7, we bring full schematic of our networks with appropriate control statement.

EXPERIMENTAL RESULTS
In this section we bring the results of numerous simulation experiments of problem we define in previous sections.We test our model for 3 different cycle time.For each cycle time, we chose two different structures of stations.For all six structures, we construct a network and run the simulation model twenty times.The final results are depicted through Table 2 to 9 (Fig. 9).

CONCLUSION
This study is devoted to analyze a single model U-Shape assembly line balancing problem with a conveyer that maybe failed to work.We integrated computer simulation method with Genetic Algorithm to find best strategy among all possible.GA help us to find inputs of simulation and by running simulation model, we get insights of system that also affect the parameters of our optimizers.Agpak, K. and G. Hadi, 2005

Table


Table 2 :
List of nodes used in visual slam network