Production, Manufacturing and Logistics
Solving machine-loading problem of a flexible manufacturing system with constraint-based genetic algorithm

https://doi.org/10.1016/j.ejor.2005.06.025Get rights and content

Abstract

Machine-loading problem of a flexible manufacturing system is known for its complexity. This problem encompasses various types of flexibility aspects pertaining to part selection and operation assignments along with constraints ranging from simple algebraic to potentially very complex conditional constraints. From the literature, it has been seen that simple genetic-algorithm-based heuristics for this problem lead to constraint violations and large number of generations. This paper extends the simple genetic algorithm and proposes a new methodology, constraint-based genetic algorithm (CBGA) to handle a complex variety of variables and constraints in a typical FMS-loading problem. To achieve this aim, three new genetic operators—constraint based: initialization, crossover, and mutation are introduced. The methodology developed here helps avoid getting trapped at local minima. The application of the algorithm is tested on standard data sets and its superiority is demonstrated. The solution approach is illustrated by a simple example and the robustness of the algorithm is tested on five well-known functions.

Introduction

Time to market’ is now accepted as a pivotal strategy to increasing and/or retaining a firm’s market share in the face of global competition. For many industries, it is an accepted norm that a reduction in time to market of even one week can accrue significant revenues. Currently, firms often apply flexible manufacturing system (FMS), to reduce the time to market for their products. FMS ensures quality product at lowest cost while maintaining small lead-time. So, firms adopt the FMS as a means for meeting mounting requirements of customized production. One of the main purposes of the FMS is to achieve efficiency of a well-balanced transfer line while retaining the flexibility of the job shop (Stecke, 1983).

The FMS is a set of flexible machine tools having general-purpose NC machines and an automated material handling system, all under a central computer control. As FMSs are very expensive, it is essential to manage them effectively to achieve desired goals with less investment risk; and this largely depends on how the decision problems of FMS are tackled. Stecke (1983) mentions four stages of decision problems for the FMS: designing, planning, scheduling, and control. The author deals with problems where designing decisions are already made and hence efforts are focused on the planning problem. FMS planning consists of pre-release and post-release decisions. The pre-release decision problems consider pre-arrangement of parts and tools before the main processes of an FMS. FMS scheduling or post-release decision considers sequencing and routing of part types, when the system is in progress. Stecke, 1983, Sarin and Chen, 1987 discuss the following post-release decision problems: (a) machine grouping, (b) part-type selection, (c) batching of part type, (d) production rate determination, (e) resource allocation, and (f) loading.

Hwang (1986) investigates the production-planning problem and finds that the two sub-problems—part selection and machine loading—are crucially important. Decisions pertaining to loading problems receive their inputs from the preceding decision levels (such as grouping of resources, selection of part mixes, aggregate planning) that generate inputs to the succeeding decisions related to scheduling resources, dynamic operations planning, and control. Hence, it is clear that the loading decision is acting as an important link between strategic and operational level decisions in manufacturing. Van Looveren et al., 1986, Kusiak, 1985, Singhal, 1978, Whitney and Gaul, 1984 discuss the inter-relationships of various decisions and their hierarchies in a flexible manufacturing environment. Liang and Dutta (1993) address the part selection and machine-loading problem simultaneously, which had been addressed separately by prior researchers. Part selection, machine loading, and tool configuration are three different, but interlinked, problems with shared restrictions such as tool magazine capacity, part-tool machine compatibility and available machine time. Still, most past research has treated part selection, machine loading, and tool configuration separately primarily due to the complexity in solving them simultaneously.

In this paper, a machine-loading problem in an FMS environment is considered. The machine-loading problem can be described as “… given a set of part types to be produced, set of tools that are needed for processing the parts on a set of machines, and using a set of resources such as material handling systems, pallets and fixtures, how should the parts be assigned and tool allocated so that some measure of productivity is optimized”. In fact, Stecke (1983) studied machine-loading problems in detail and described its six main objectives:

  • 1.

    Balancing the machine processing time;

  • 2.

    Minimizing the number of movements;

  • 3.

    Balancing the workload per machine for a system of groups of pooled machines of equal sizes;

  • 4.

    Unbalancing the workload per machine for a system of groups of pooled machines of unequal sizes;

  • 5.

    Filling the tool magazines as densely as possible;

  • 6.

    Maximizing the sum of operations priorities.

It is clear from the above literature that the machine-loading problem involves multiple objectives (Stecke, 1983, Shanker and Srinivasulu, 1989). Ammons et al. (1985) resolves the loading problem considering a bi-criteria objective of balancing workload and minimizing work stations visits, whereas Shanker and Tzen (1985) consider balancing workload and meeting due-date of part types. Tiwari et al. (1997) and Mukhopadhyay et al. (1992) tackle machine-loading problem using heuristic approaches with an objective of minimizing system unbalance and maximizing throughput. Contributions of several researchers pertaining to the loading problem have been summarized succinctly in a detailed survey of literature by Grieco et al. (2001). Extending this survey, we present in this article an updated list that incorporates some of the recent contributions (Table 1a, Table 1b).

Objective functions used in this research are the minimization of system unbalance and the maximization of throughput for the following reasons:

  • (1)

    Minimization of system idle time leads to higher machine utilization,

  • (2)

    One of the most important goals of any loading policy is enhancing total system output, which is the same as throughput,

  • (3)

    Kim and Yano (1997) have found that throughput maximization by balancing the workloads on the machine often results in limiting the tardiness.

Past research efforts have focused on solving the problem with several pre-determined sequencing rules such as: shortest processing time (SPT), last in first out (LIFO), first in first out (FIFO), earliest due-date (EDD). Machine-loading problem can be addressed mainly by two approaches: (a) heuristic oriented (Mukhopadhyay et al., 1991, Mukhopadhyay et al., 1992, Mukhopadhyay et al., 1998, Shanker and Srinivasulu, 1989, Tiwari et al., 1997, Tiwari and Vidyarthi, 2000, Mukhopadhyay and Tiwari, 1995, Sarma et al., 2002, Swarnkar and Tiwari, 2004) and (b) optimization-based methods (Stecke, 1983, Sawik, 1990, Sarin and Chen, 1987, Shanker and Tzen, 1985, Nayak and Acharya, 1998). Mukhopadhyay et al. (1998) solve the machine-loading problem using the simulated annealing approach. Tiwari et al. (1997) propose a heuristic approach and a petrinet model for solving the machine-loading problem of an FMS. To address the same problem Tiwari and Vidyarthi (2000) have proposed a genetic-algorithm-based heuristic approach. Sarma et al. (2002) and Swarnkar and Tiwari (2004) employ a tabu search based heuristic to solve the machine-loading FMS problem.

Heuristic approaches are largely based upon rules and rely on empirical experiences. Therefore, one of the limitations of a heuristic approach is in its difficulty to estimate results in a new or completely changed environment. While optimization-based methods such as—integer programming, dynamic programming, branch and bound, etc.—are robust in applicability, they tend to become impractical when problem size increases. In fact, the machine-loading problem involving simultaneous determination of job sequence, system unbalance, and system throughput by satisfying various technological constraints (such as limited tools slots, machine time, etc.) lies under the broad category of NP-hard problems (Srinivas et al., 2004). As Goldberg et al. (1989) puts it—“Even the most touted enumerative scheme, dynamic programming breaks-down on problems of moderate size and complexity”. In summary, the machine-loading problems pertaining to automated manufacturing system belong to the category of NP-hard problems where the computational solution times are non-polynomial in the size of the problem (Mukhopadhyay et al., 1991, Mukhopadhyay et al., 1992, Mukhopadhyay et al., 1998, Moreno and Ding, 1993, Shanker and Srinivasulu, 1989, Shanker and Tzen, 1985).

It is evident from the aforementioned literature that both the heuristic techniques and the mathematical-programming-based methodologies are handicapped by their limitations in producing good quality optimal/near-optimal solutions to machine-loading FMS problems. This limitation has prompted researchers to investigate the use of new and innovative search techniques for solving the FMS machine-loading problem. One such potential approach is genetic algorithm (GA) (Holland, 1975), which is an intelligent probabilistic search algorithm. Several manufacturing problems such as—scheduling, layout, process planning, and mechanical design—have been solved using genetic algorithms. Tiwari and Vidyarthi (2000) have proposed a GA-based heuristic that performs well and is superior to other methods on similar problems and under the same assumptions. Liaw (2000) considers the minimization of the makespan in an open shop using a GA-based heuristic. GA developed by Cai and Li (2000) minimizes the cost of staffing, with secondary objectives of maximizing staffing surplus and reducing the variation of this staff surplus over different time periods. Mori and Tseng (1997) propose a GA for multi-mode resource-constrained project scheduling problem. The GA developed by them performs well on large problems with the caveat that its computational requirements were significantly more. Eatson and Mansour (1999) designed a distributed genetic algorithm (or DGA) for the deterministic and stochastic labor scheduling problem. Here the GA operators work in parallel on a network and good solutions migrate among the populations. Bortfeldt and Gehring (2001) proposed a hybrid GA to solve the container-loading problem (three-dimensional knapspack problem). Guvenir and Erel (1998) applied GAs to solve multi-criteria ABC inventory classification problems. Gravel et al. (1998) designed a double-loop genetic algorithm, where outer loop assigns machines to cells, while the inner loop determines the optimal part routing.

Clearly genetic algorithms have a great potential and one of the major research thrusts currently underway is in devising strategies for handling problem constraints within the GA framework. The current work pursues research in which GA is amalgamated with logic-based constraints to solve the machine-loading problems for an FMS. This work is motivated by the work of Cormier et al. (1998) where they develop a similar methodology to solve design problems in concurrent engineering. In fact, they first proposed an algorithm that accommodates a mixture of algebraic, conditional, and database constraints with numeric as well as symbolic variables. They put forward the concepts of constraint-based initialization, crossover, and mutation. Although, Cormier et al. (1998) use the term constraint-based initialization, they seed the initial population randomly. This has motivated our work whereby we devise an extension that we call the constraint-based genetic algorithm (CBGA). The CBGA is a semi-automatic stochastic search algorithm, which combines the features of logic-based constraint modeling with the strengths of a traditional genetic algorithm. The constraint-based genetic algorithm (CBGA) is transformed as per the needs of machine-loading problem and tested on 10 moderate-size test problems adopted from Mukhopadhyay et al. (1992). The results are compared with the solutions obtained by Tiwari et al., 1997, Shanker and Srinivasulu, 1989, Mukhopadhyay et al., 1992, and Tiwari and Vidyarthi (2000). In this work we find that the CBGA-based heuristic performs well, in fewer number of generations, and with computational superiority over existing approaches.

The remainder of the paper is organized as follows: Section 2 provides the description of the problem. The mathematical modeling is illustrated in Section 3. Section 4 provides a background of GA, along with difficulties associated with adapting the algorithm in an FMS environment. The CBGA was specifically developed for overcoming these limitations. The proposed algorithm is presented in Section 5. For explaining the steps of the algorithm, an illustrative example is discussed in Section 6. The numerical simulation is provided in Section 7. Finally conclusions with scope for future research are included in Section 8.

Section snippets

Problem description

To analyze a machine-loading problem for a random FMS, this work considers multiple machines and a fixed number of tool slots. In a given planning horizon, part types arrive randomly and their operation times and tool slot requirements are well known (Shanker and Tzen, 1985, Mukhopadhyay et al., 1992, Tiwari et al., 1997, Tiwari and Vidyarthi, 2000). The random FMS, considered here, is capable of performing operations that may be either essential or optional. Essential operations are those

Mathematical model

Next we provide a formal mathematical model for the problem including notations, decision variables, various characteristics, objective functions and the underlying constraints. To facilitate reader’s understanding, an intuitive explanation of the constraints is also provided.

    Notations

    m

    Machine, m = 1, …, M

    t

    Tool type, t = 1, …, T

    i

    Part type, i = 1, …, N

    j

    Operation type, j = 1, …, O

    bi

    Batch size of part type i

    a

    Processing alternative

    (i, j)

    Operation j for part type i

    (m, t)

    Tool type t on machine m

    s

    Characteristic type (i, j, m, t)

    c

Background of GA

Simulating the natural evolutionary process results in a stochastic optimization technique called evolutionary algorithm. Genetic algorithms are stochastic search techniques that rely on the process of natural selection (Goldberg et al., 1989). At any given iteration, the genetic algorithm operates on a pool of solutions rather than a single solution. In GA, search starts with an initial set of random solutions known as population. Each chromosome of population is evaluated using some measure

Proposed constraint-based genetic algorithm

As mentioned above, strength of the CBGA over a simple genetic algorithm is in its use of constraint-based initialization, whereby it does not generate the initial population randomly. Characteristic values of constraints are considered while generating the initial solution. Furthermore, constraint-based crossover and constraint-based mutation is used to generate new population offsprings, making the search space wider.

An illustrative example

Here the proposed constraint-based genetic algorithm is applied to solve a well-known problem described by Shanker and Srinivasulu (1989) and used by others (Mukhopadhyay et al., 1992, Tiwari et al., 1997, Tiwari and Vidyarthi, 2000) for a random flexible manufacturing system. We use this specific example for two reasons—(a) to ease comparative understanding of the CBGA vis-à-vis existing algorithms where this example has already been used by past researchers, (b) the complexity built into this

Numerical simulation

Past research related to GA applications, especially in planning and scheduling problems of FMS, has shown that the number of generations/iterations required to achieve near-optimal solutions is substantially high with further disadvantage of constraint violations. Therefore, it is desirable, indeed necessary, to develop an algorithm that can solve large-sized combinatorial problems in fewer number of generations utilizing less CPU time. As stated earlier, keeping in mind these requirements, in

Conclusions

FMS machine-loading problem is characterized by a model that involves grappling with a wide variety of constraints and objectives. This paper presents a new integrated approach to concurrently address the machine loading and the tool allocation problems in an FMS environment. The proposed CBGA heuristic enhances the capabilities of the traditional GA procedure through the use of specialized operators. The operators proposed in this paper allow exhaustive explorations that exploit the search

Acknowledgement

We gratefully acknowledge the numerous thoughtful suggestions of the anonymous referees and the editor that significantly helped us in improving the content and delivery of this article.

References (89)

  • M. Mori et al.

    A genetic algorithm for multi-mode resource constrained project scheduling problem

    European Journal of Operational Research

    (1997)
  • T. Sawik

    Modelling and scheduling of flexible manufacturing systems

    European Journal of Operational Research

    (1990)
  • T. Sawik

    Mixed integer programming for scheduling flexible flow lines with limited intermediate buffers

    Mathematical and Computer Modelling

    (2000)
  • C.Y. Song et al.

    Heuristic algorithm for the tool movement policy in flexible manufacturing systems

    International Journal of Manufacturing Systems

    (1995)
  • K.E. Stecke

    A hierarchical approach to solving grouping and loading problems of flexible manufacturing systems

    European Journal of Operational Research

    (1986)
  • K.E. Stecke

    Planning and scheduling approaches to operate a particular FMS

    European Journal of Operational Research

    (1992)
  • R. Swarnkar et al.

    Modeling machine loading problem of FMSs and its solution methodology using hybrid tabu search and simulated annealing based heuristic approach

    Robotics and Computer Integrated Manufacturing

    (2004)
  • D.H. Ackley

    An empirical study of bit vector function optimization

  • J.C. Ammons et al.

    A large scale machine loading problem in flexible assembly

    Annals of Operation Research

    (1985)
  • A. Atmani et al.

    A model of machine-tool selection and operation in FMS

    International Journal of Production Research

    (1998)
  • S. Bandhopadhyay et al.

    Incorporating chromosome differentiation genetic algorithm

    Information Science

    (1998)
  • J.J. Bernado et al.

    A measurement and use of operational flexibility in the loading of FMS

    European Journal of Operation Research

    (1992)
  • M. Berrada et al.

    A branch and bound approach for machine load balancing in flexible manufacturing systems

    Management Science

    (1986)
  • K.M. Brethauer et al.

    Machine loading and alternative routing in FMS

    Computers and Industrial Engineering

    (1990)
  • I.J. Chen et al.

    Effects of loading and routing decisions on performance of flexible manufacturing systems

    International Journal of Production Research

    (1991)
  • Y.J. Chen et al.

    A multiobjective evaluation of flexible manufacturing system loading heuristics

    International Journal of Production Research

    (1990)
  • S.H. Chung et al.

    A procedure to solve part mix and tool assignment problems in FMS

  • H.C. Co et al.

    A methodical approach to the flexible manufacturing system batching, loading and tool configuration problems

    International Journal of Production Research

    (1990)
  • Colosimo, B.M., Conti, C., Grieco, A., Toilo T., 1998. FMS loading in presence of tool sharing, In: The Proceedings...
  • D. Cormier et al.

    A constraint based genetic algorithm for concurrent engineering

    International Journal of Production Research

    (1998)
  • De Jong, K.A., 1975. Analysis of the Behavior of the Class of Genetic Adaptive System. Ph.D. Thesis, University of...
  • L. De Vecchi et al.

    TWM1: a system for integrated tool and workpiece management in FMSs—loading and part selection

    CIRP—Journal of Manufacturing Systems

    (1993)
  • D. De Werra et al.

    Loading problems with tool management in flexible manufacturing systems: A few integer programming models

    International Journal of Flexible Manufacturing Systems

    (1991)
  • F.F. Eatson et al.

    A distributed genetic algorithm for deterministic and stochastic labor scheduling problems

    European Journal of Operational Research

    (1999)
  • S. Grieco et al.

    A review of different approaches to the FMS loading problem

    International Journal of Flexible Manufacturing Systems

    (2001)
  • D.E. Goldberg et al.

    Messy genetic algorithm: Motivation analysis and first results. Complex System

    (1989)
  • M. Gupta et al.

    Operations planning and scheduling problems

    International Journal of Production Research

    (1993)
  • Grassi, R., Grieco, A., Semeraro, Q., Tolio, T., September 1995, Loading algorithm for FMSs provided with a tool...
  • H.A. Guvenir et al.

    Multicriteria inventory classification using a genetic algorithm

    European Journal of Operational Research

    (1998)
  • M.H. Han et al.

    Real time tool control and job dispatching in flexible manufacturing systems

    International Journal of Production Research

    (1989)
  • Hwang, S.S., 1986. Models for Production Planning in Flexible Manufacturing System. Ph.D. thesis, University of...
  • H.H. Holland

    Adaptation in Natural and Artificial Systems

    (1975)
  • A. Homaifiar et al.

    Constrained optimization via genetic algorithms

    Simulations

    (1994)
  • V.N. Hsu et al.

    An efficient heuristic approach to recognize the infeasibility of a loading problem

    International Journal of Flexible Manufacturing System

    (1997)
  • View full text