Discrete Optimization
Systematic data generation and test design for solution algorithms on the example of SALBPGen for assembly line balancing

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

Abstract

Recently, the importance of correctly designed computational experiments for testing algorithms has been a subject of extended discussions. Whenever real-world data is lacking, generated data sets provide a substantive methodological tool for experiments. Focused research questions need to base on specialized, randomized and sufficiently large data sets, which are sampled from the population of interest. We integrate the generation of data sets into the process of scientific testing.

Until now, no appropriate generators or systematic data sets have been available for the assembly line balancing problem (ALBP). Computational experiments were mostly based on very limited data sets unsystematically collected from the literature and from some real-world cases. As a consequence, former performance analyses often come to contradictory conclusions and lack on statistical evidence.

We introduce SALBPGen, a new instance generator for the simple ALBP which can be applied and extended to any generalized ALBP, too. Unlike most generators, SALBPGen takes into account usual properties of precedence graphs in manufacturing. It is very flexible and able to create instances with very diverse structures under full control of the experiment’s designer. We also propose new challenging data sets, as shown with the new direct measure of instance’s hardness called trickiness. By two exemplary computational experiments, we illustrate how important insights can be gained with the help of the systematically generated data sets.

Highlights

► Guidelines for systematic testing of algorithm’s performance. ► New generator for realistic and diversified line balancing instances. ► Analysis and new measure of hardness of problem instances. ► Statistical analysis of heuristics’ performance based on new data sets.

Introduction

Analysis of algorithms is performed according to three main approaches in the literature: theoretical worst-case analysis, theoretical average-case analysis and experimental analysis (Johnson, 2002). Recently, a growing interest has been observed in the research community towards the experimental analysis, where performance of algorithms is analyzed by running them on a set of real-world or generated instances of a certain optimization problem. It has been realized that theoretical analysis cannot tell a full story about performance of algorithms in real-world applications, whereas the experiments provide valuable insights and knowledge (Hall and Posner, 2001, Johnson, 2002). Experimental analysis is especially important in studies of NP-hard problems, where computational time needed by algorithms to find optimal solutions varies dramatically depending on the specifics of the problem instance.

Due to varying quality of conducted experiments in the literature, guidelines for performing computational experiments were developed by a number of research societies, such as by the Mathematical Optimization Society (Jackson et al., 1991), by the Mathematical Programming Society (Crowder et al., 1978) or by the Institute of Industrial Engineers (Lee et al., 2007). Without exception, one of the focuses in such guidelines takes the discussion on how to choose an adequate test data set. Since the number of real-world problem instances available in the literature is limited, one of the most valuable sources of test data is the generation of data sets by a random generator (Crowder et al., 1978, Hooker, 1995).

The above-mentioned guidelines point on the advantages and disadvantages of randomly generated experimental data sets. A major advantage is that a sufficient number of instances can be drawn from the population with desired characteristics, thus statistical analysis can be applied to make generalizations about the algorithms’ performance. A major possible disadvantage is that the generated instances may be unrealistic or poorly diversified, and thus may not correctly represent the population of instances of interest. However, as we will show in Section 4, it is possible to alleviate this disadvantage significantly.

In any case, whenever available, all the guidelines highly recommend using standard data generators and standard data sets. These are well-documented data generators, or data sets, that are a “standard reference” for researchers for conducting computational experiments. Such data sets and, especially, generators, are badly needed for a number of optimization problems, for example, the assembly line balancing problem (ALBP).

ALBP is a problem of an optimal allocation of tasks to working stations of an assembly line and describes the planning situation in manual assemblies. It can be found, for example, in automotive, white goods and electronics industries. The currently existing standard data set for simple ALBP (Scholl, 1993, Scholl, 1999) is not randomized and poorly diversified, i.e., it contains instances, differing from each other on just a few characteristics (see Section 4.4). Furthermore, no standard data generator for ALBP exists. The existing data set generators are restricted in their generation capability. They do not produce realistic problem instances and do not allow for a thorough comparison of solution algorithms, for example on instances with specified structures.

Therefore, we propose a new data set generator SALBPGen, which is developed according to the above-mentioned guidelines and generation principles. Moreover, SALBPGen is very flexible and, thus, it can serve as a standard data generator. First of all, SALBPGen is able to produce instances rather similar to real-world assembly line balancing situations. We collected information from our partners in German automobile industry and analyzed problem instances taken from practice, which are available in the literature. This knowledge enables us to formulate several structural characteristics, which can be controlled for in our generator to produce realistic and randomized problem instances. Secondly, with our generator, a (full) factorial design of computer experiments is possible. SALBPGen enables to fix and systematically vary important structure measures proposed in the literature. In other words, with our generator, it is not only possible to find out whether the algorithms perform better or worse for the test data set, but also, for what kind of instances its performance is especially weak or strong. Because of the ability of SALBGen to generate a large number of randomized instances, it is possible to generalize the findings from the data sets with help of statistical analysis. Put it all together, SALBPGen enables to generate easily new knowledge and important insights useful for the algorithm’s design and application, as we illustrate it in Section 6.

One of the important characteristics of generated problem instances is their hardness, i.e., difficulty to find an optimal solution. A measure of instance’s hardness, called trickiness measure, is one of the major contributions of this article. Hardness is one of the most important characteristics of the instances in a test data set, especially in standard sets (see, e.g., Hoffmann, 1990, Farhi et al., 1997). The developed trickiness measure is universal, in the sense that it can be applied to any optimization problem. It is also a direct and intuitive measure that does not rely on any specific solution algorithm, but describes a characteristic of the instance itself.

The paper is organized as follows. First, we describe the steps how to design correctly and in accordance with the existing guidelines a computational experiment on a generated data set (Section 2). These steps will form the logic of our further discussion. We outline the assembly line balancing problem in Section 3. In Section 4, we look at important characteristics of instances that are often (or are important to be) considered in computational experiments. Section 5 comments on the new generator SALBPGen and proposes new standard data sets. In Section 6 we show, how the new data sets generated by SALBPGen help to generate statistically supported knowledge. We conclude with a summary and an outlook in Section 7.

Section snippets

How to design a computational experiment with generated data

There are two major approaches towards the experimental analysis on generated instances (Johnson, 2002). The first approach views the experiment as an exam and does not aim to generalize the results. In other words, a conclusion that one algorithm is better than another algorithm is valid only for the tested set of instances.

The main purpose of the experimental analysis in the second approach is to make generalizations on the performance of algorithms. Generalizations about problem instances

Assembly line balancing problem

An assembly line is a production system consisting of a set of (work)stations W = {1,  , U} arranged in a sequential order, at which a set of tasks V = {1,  , n} with operation times ti (for i  V) must be performed (Baybars, 1986, Scholl, 1999). In automotive, metal goods and other industries it is common practice to measure operation times according to a standardized normative analysis, such as MTM (Methods-Time Measurement, see Longo and Mirabelli, 2009). As a consequence, the usual assumption of

Defining population of interest for ALBP

In this section, we look at such populations of instances of an optimization problem, which are considered especially important in the Operations Research literature. Firstly, researchers often investigate algorithms in real-world applications (Section 4.1). Secondly, populations of significantly hard problem instances, where implementation of sophisticated algorithms is economically justified, are frequently analyzed (Section 4.2). For trivial problem instances, where (almost) every feasible

Random generation of the data from the defined population: SALBPGen

A standard data generator has to be flexible (1), i.e., able to control most of widespread structure measures. It must be diversified (2), i.e., produce instances diversified on structural characteristics that are not controlled for, and easy to describe (3). It also should produce randomized samples (4) from the populations of interest.

In this section, we describe the new data generator SALBPGen, which satisfies all the quality criteria for a standard data generator. We outline its basic logic

Examples of computational experiments on randomly generated data sets

In this section, we will provide two illustrative examples, how randomized data sets help to gain new insights about algorithms’ performance. The first example shows, that a non-randomized data set may serve as a distorting mirror and lead to biased conclusions about performance of algorithms. The second example illustrates that diversified randomized data sets may serve as magnifying glass. They help to gain insights not only about instance’s properties (or performance of algorithms) on average

Summary and conclusions

Computational experiments on randomly generated data are extremely important to gain knowledge on the performance of algorithms and on the characteristics of instances. Randomly generated data enables generalization of the experimental results via statistical inference on the instance population of interest. In Section 6, we illustrated how randomly generated data sets help to generate new knowledge.

Data generators have to be thoroughly designed according to the principles and guidelines

References (55)

  • O. Kilincci

    Firing sequences backward algorithm for simple assembly line balancing problem of type 1

    Computers & Industrial Engineering

    (2011)
  • H. Klindworth et al.

    On the learning precedence graph concept for the automotive industry

    European Journal of Operational Research

    (2012)
  • G. Levitin et al.

    A genetic algorithm for robotic assembly line balancing

    European Journal of Operational Research

    (2006)
  • A. Otto et al.

    Incorporating ergonomic risks into assembly line balancing

    European Journal of Operational Research

    (2011)
  • J. Rubinovitz et al.

    Genetic algorithm for assembly line balancing

    International Journal of Production Economics

    (1995)
  • A. Scholl et al.

    State-of-the-art exact and heuristic solution procedures for simple assembly line balancing

    European Journal of Operational Research

    (2006)
  • A. Scholl et al.

    Absalom: balancing assembly lines with assignment restrictions

    European Journal of Operational Research

    (2010)
  • T. Urban et al.

    An optimal piecewise-linear program for the U-line balancing problem with stochastic task times

    European Journal of Operational Research

    (2006)
  • C. Baldwin et al.

    Managing in the age of modularity

    Harvard Business Review

    (1997)
  • I. Baybars

    A survey of exact algorithms for the simple assembly line balancing problem

    Management Science

    (1986)
  • F.F. Boctor

    A multiple-rule heuristic for assembly line balancing

    Journal of the Operational Research Society

    (1995)
  • L.D. Brown et al.

    Interval estimation for a binomial proportion

    Statistical Science

    (2001)
  • H.P. Crowder et al.

    Reporting computational experiments in mathematical programming

    Mathematical Programming

    (1978)
  • E.M. Dar-El (Mansoor)

    Solving large single-model assembly line balancing problems – a comparative study

    IIE Transactions

    (1975)
  • Downey, A.B., 2011. Think Stats: Probability and Statistics for Programmers. O’Reilly Media:...
  • E. Farhi

    A quantum adiabatic evolution algorithm applied to random instances of an NP-complete problem

    Science

    (1997)
  • M.R. Garey et al.

    Computers and Intractability

    (1979)
  • Cited by (0)

    View full text