Keywords

1 Introduction

In recent years, manufacturing industries face with increase in raw material cost and diversification of customer needs. In order to provide various products in shorter lead-time and at low price, therefore, it is essential to facilitate highly efficient production planning and operation. From this aspect, this study proposes a heuristic approach for integrating nesting and scheduling in sheet metal processing. In the sheet metal processing, parts cut from sheet metals are processed in an order of bending, welding and assembling processes. The decision of cutting layout is called nesting. In such processing, nesting and scheduling are the important factors to achieve the manufacturing goal in an effective manner. So far, they have been considered separately in each management sector.

To work with the problem, we particularly notice a trade-off between nesting and scheduling due to the differences of objective and property referring to each process. A cutting layout must be decided so as to reduce the waste of materials as much as possible. Hence, the objective of nesting is to minimize the waste of raw materials. On the other hand, to provide products in a short time, the operation sequence should be decided by optimizing schedules for all manufacturing processes. So the objective of scheduling is to minimize the make-span or total tardiness. Moreover, while the efficiency of nesting can be affected by the result of scheduling, in turn, scheduling will be affected by the result of nesting. Thus, though nesting and scheduling are different problems essentially, we know those problems should be considered simultaneously to increase the efficiency of entire manufacturing activity.

Under such understanding, we have proposed an integrated method of nesting and scheduling [1]. In our method, we firstly decide the schedule by using a dispatching rule on the basis of Earliest Due Date (EDD). After that, according to the operation sequence obtained by scheduling, we decide the cutting layout by applying Bottom Left (BL) algorithm. By this procedure, we can obtain the suitable cutting layout that considers the schedule of the following processes. However, the quality of such scheduling is not high due to a particular characteristic of schedule for sheet metal processing. Thereat, we need to decide a schedule by considering a fact that the bending process often becomes bottleneck. In this study, therefore, we attempt to extend our previous method in order to enhance the quality of scheduling or scheduling ability. Specifically, we apply a local search to update the initial schedule and manage it in terms of the criteria referring to the bottleneck process.

2 Problem Description [2]

2.1 Decision of Cutting Layout

In sheet metal processing, parts are cut from a rectangular sheet metal by using a turret punch press or a laser beam machine. In order to reduce a waste material, parts are assigned in a sheet metal as many as possible. This assignment operation is called nesting. Nesting is a spatial layout problem which decide where a part is located without overlapping with already-located parts within a rectangular sheet metal. Generally, the shape of parts is irregular, and the thickness typically varies between 1 and 10 mm. For simplicity, in this study, we assume the following conditions.

  1. 1.

    The shape of parts and sheet metals is filled rectangle.

  2. 2.

    Thickness of parts and sheet metal is constant.

Under the above conditions, we can solve the nesting problem as a two dimensional bin packing problem [3]. We formulate the nesting problem as follows.

$$\begin{aligned} Minimize \sum _{k \in K}k\delta _k \end{aligned}$$
(1)

Subject to

$$\begin{aligned}&\sum _{k \in K}\gamma _{i,k}=1,\quad \forall i \in I \end{aligned}$$
(2)
$$\begin{aligned}&0 \le x_i\gamma _{i,k} \le (W - w_i)\gamma _{i,k},\quad \forall i \in I, \forall k \in K \end{aligned}$$
(3)
$$\begin{aligned}&0 \le y_i\gamma _{i,k} \le (L - l_i)\gamma _{i,k},\quad \forall i \in I, \forall k \in K \end{aligned}$$
(4)

At least one of the next four inequalities holds for every pair i and \(i'\).

$$\begin{aligned}&(x_i + w_i)\gamma _{i,k} \le x_{i'}\gamma _{i',k},\quad \forall k \in K \end{aligned}$$
(5)
$$\begin{aligned}&(x_{i'} + w_{i'})\gamma _{i',k} \le x_{i}\gamma _{i,k},\quad \forall k \in K \end{aligned}$$
(6)
$$\begin{aligned}&(y_i + l_i)\gamma _{i,k} \le y_{i'}\gamma _{i',k},\quad \forall k \in K \end{aligned}$$
(7)
$$\begin{aligned}&(y_{i'} + l_{i'})\gamma _{i',k} \le y_{i}\gamma _{i,k},\quad \forall k \in K \end{aligned}$$
(8)

where,

  • \(\delta _k\): 0-1 variable. If \(k^{\mathrm {th}}\) sheet is used, set \(\delta _k = 1\). Otherwise, 0

  • \(\gamma _{i,k}\): 0-1 variable. If part i is assigned to \(k^{\mathrm {th}}\) sheet, set \(\gamma _{i,k} = 1\). Otherwise, 0

  • \(l_i\): Length of part i

  • \(w_i\): Width of part i

  • L: Length of sheet metal

  • W: Width of sheet metal

  • \(x_i\): x-coordinate of bottom left corner of part i

  • \(y_i\): y-coordinate of bottom left corner of part i

  • k: Sheet number (\(k=1 \cdots K\))

  • i: Part number (\(i=1 \cdots I\))

Equation (1) represents the objective function that tries to minimize the number of sheet metals. Equation (2) means that all parts should be assigned to either sheet metal. Equations (3) and (4) mean that all parts must be placed into the sheet metal. Equations (5)–(8) means that no two parts overlap.

2.2 Scheduling Problem in Sheet Metal Processing

The sheet metal processing is basically schedules as a flow shop. The processes are composed of punching, bending, welding and assembling. All parts are processed in each process in the same order, though some parts can skip some of the following processes as shown in Fig. 1.

Fig. 1.
figure 1

Process sequence of sheet metal processing

In punching process, a set of parts is cut from a sheet metal. This set is determined according to the cutting layout. Some parts cut from sheet metals are processed in bending process. In bending process, each part is bent respectively by using a press brake. After that, a set of parts are sent to welding or are assembling process. Though bending process is able to process every part independently, in welding and assembling processes multiple parts must be gotten ready for processing. This causes unbalance of workload due to the length of waiting times, and bending process likely becomes bottleneck. In this study, we solve the total tardiness minimization problem under the following conditions.

  1. 1.

    Product is consisted of one or more parts.

  2. 2.

    Every product has a different due date.

  3. 3.

    Every part is processed at one or more processes.

  4. 4.

    Required process for each part is predetermined.

  5. 5.

    Each process has one or more machine, but the machine assignment for each part is predetermined by process plan.

  6. 6.

    Processing time of each operation is predetermined.

  7. 7.

    In bending process, machine can process at most one part at a time.

  8. 8.

    In punching, welding and assembling processes, the parts are allowed to be processed simultaneously.

  9. 9.

    Welding and assembly operations may start only after all operations of parts to be combined have been completed.

2.3 Relation Between Cutting Layout and Schedule

As mentioned in Sect. 1, there exists a certain trade-off relation between nesting and scheduling. Let us consider that the parts of the different products having different due date are assigned to a same sheet metal in order to reduce the waste of raw material. If the part with a strict due date is assigned to the last sheet metal in the processing order, this product may not satisfy the due date. On the other hand, when only the parts having same due date are assigned to a sheet metals, a waste area which no parts are assigned may become large. Therefore, nesting and scheduling are considered simultaneously in order to increase the efficiency of entire manufacturing activity.

As mentioned already, we solve a nesting problem as a two dimensional bin packing problem. A lot of algorithms have been proposed for solving this problem. Lodi et al. [3] surveyed classical approximation algorithms, recent heuristic and metaheuristic method and exact enumerative approaches. Baker et al. [4] proposed Bottom Left (BL) algorithm. In this algorithm, according to the pre-determined assignment priority, rectangles are placed from bottom left corner.

On the other hand, there also exists a lot of studies dealing with a scheduling problem. The scheduling problem of sheet metal processing is similar to the two-stage assembly scheduling problem which is a generalization of the two-machine flowshop problem. Potts et al. [5], for example, applied the compact vector summation technique for finding approximation solutions for this problem. Allahverdi and Al-Anzi [6] proposed a Particle Swarm Optimization (PSO) and Tabu search heuristics for solving this problem with respect to Maximum lateness.

However, these studies solved only a nesting problem or a scheduling problem, but did not solve both of them simultaneously. Chryssolouris et al. [7] proposed a rule base decision-making approach for combined problem of scheduling and nesting. Since this paper concerns with a textile industry, only a cutting process is considered in scheduling. Verlinden et al. [8] proposed a integrated production planning model for sheet metal processing, aiming at creating feasible groupings of parts. However, this study does not decide the position of parts in sheet metal.

3 Integrated Nesting and Scheduling Method

3.1 Entire Procedure

Basic concept of the proposed method is summarized as follows. First, the minimum required number of sheet is estimated. According to this estimated value, the scheduling problem is solved next by applying EDD based dispatching rule. Then the layout of the parts in the sheet metal is decided. We use BL algorithm to determined the position of each part. In our study, an assignment priority of BL algorithm is determined in accordance with the ascending order of starting time of operations. After that, the initial schedule is modified by applying local search. We explain the detail of local search procedure in the next section. The proposed nesting-scheduling is performed according to the following steps.

Step1: Estimation of minimum processing time for punching process

Required minimum processing time for punching process is calculated by the following equation.

$$\begin{aligned} ft_{punch} = \left\lceil \frac{\sum _{i \in I}l_iw_i}{LW} \right\rceil \times pt_{punch} \end{aligned}$$
(9)

where,

  • \(ft_{punch}\): Estimated minimum processing time for punching process

  • \(pt_{punch}\): Processing time of punching process for one sheet metal

  • \(\lceil \rceil \): Ceiling function

Step2: Creation of initial schedule by applying dispatching rule

EDD based dispatching rule is applied to all processes except for the punching process in order to create the initial schedule. The operation sequence of punching process cannot be decided because the actual required number of sheet metal is not determined before nesting. Therefore, we use an estimated minimum processing time for punching process calculated by Step1 as a completion time for this process.

Step3: Decision of cutting layout by using BL algorithm

The cutting layout is decided sequentially according to the pre-determined order of priority. It is set as follows based on the priority criterion in terms of the schedule of the bending process.

  1. 1.

    Earliest starting time of operation

  2. 2.

    Earliest finishing time of operation

  3. 3.

    Earliest due date

  4. 4.

    If the above are all equivalent, select part randomly

In addition to the above rule, we consider the following exception to increase the nesting efficiency. When the part with the next priority cannot be assigned to the present sheet, we allow assigning the part from the ones with the lower priority in turn.

Step4: Improvement of initial schedule by applying local search

The operation sequence of punching process is determined according to the actual required number of sheet metal, which is obtained by the nesting result. After that, in order to improve the initial schedule, the operation sequence of bending process is modified by applying local search.

3.2 Local Search for Improving Initial Schedule

As mentioned in Sect. 2.2, bending process often become a bottleneck in sheet metal processing. While every part is processed independently in bending process, a set of parts has to be processed simultaneously in welding and assembling processes. Therefore, in welding and assembling processes, processes cannot be started until every necessary part will arrive there. The length of waiting time is affected by the operation sequence of bending process. In order to minimize the total tardiness, therefore, it becomes effective if the operation sequence of bending process is determined by considering the combination of parts. Under such understanding, we improve the initial schedule by applying local search. The operation sequence of bending process is modified according to the following steps.

Step1: Recognition of bottleneck operations

Bottleneck operations are extracted from all operations in bending process. We define bottleneck operation as the last operation to process the same product in bending process.

Step2: Exchange of operation sequence

For each bending machine, the position of neighboring sets of operations is exchanged. Where, a set of operations is defined as the successive operations to process same product. The neighboring sets is exchanged only when the relation between neighboring sets do not violate the following criteria.

  • A forward set of operations includes a bottleneck operation.

  • After exchanging, each finishing time of operation in set of operations is later than that of bottleneck operation.

  • After exchanging, each starting time of operation in set of operations is earlier than the finishing time of its punching operation.

  • Processes for neighboring sets of operations are different. (In other words, an exchange is performed only when a process of both sets is welding, or assembling.)

These steps are iterated until no set of operations can be exchanged.

Figure 2 shows an example of local search. This figure represents a Gantt chart. The rectangles with same capital letter represent the operations of same product. In this case, operation B-3 at bending machine 1 and operation A-3 at bending machine 2 are bottleneck operation. In the initial schedule (a), product B cannot satisfy due date. However, by exchanging the position of set A and set B at bending machine 1, the welding operation of B can start earlier. As a result, product B can satisfy due date.

Fig. 2.
figure 2

Example result of local search

4 Computational Experiments

In order to validate the effectiveness of the proposed method, we carried out 5 different case studies whose conditions are shown in Table 1. In this table, a skip rate is the ratio showing how many parts skip each process. Other computational conditions are summarised as follows. Where, the number of parts and the processing time are set randomly between figures in parentheses.

  • Number of machines: Punching 1, Bending 5, Welding 2, Assembling 2

  • Number of products: 10

  • Number of parts: [3, 7] for each product

  • Processing time: [1, 100]

In order to verify the effectiveness of proposed local search, we compared the total tardiness of initial schedule which is determined by only EDD based dispatching rule. Table 2 shows the result of scheduling. We were able to obtain shorter total tardiness except for case 2, by the proposed method. In case 2, we were not able to improve total tardiness. The skip rate for bending process is high in this case. In other words, the number of operations in bending process is small in this case. Thus the candidates for exchanging position of operation became smaller than other cases. However, we were able to reduce total tardiness by 3–11 % in all other cases.

In addition, the number of sheet metal was 52 for every case. The proposed local search modifies only the operation sequence of bending process. Therefore, the number of sheet metal never increases.

Table 1. Skip rate for each case
Table 2. Result of experiments

5 Conclusion

To meet the recent requirements on manufacturing, we have concerned an integrated method of nesting and scheduling in sheet metal processing. Noticing the bending process often becomes a bottleneck, we proposed a heuristic method that applies a local search to enhance the scheduling ability from our previous method. Actually, we took several criteria associated with the bottleneck operation into account so that the position of neighboring sets of operations is exchanged adequately in the proposed local search. In order to validate the effectiveness of the proposed method, we carried out computational experiments.