# Research on Charging Combination Based on Batch Weight Fit Rule for Energy Saving in Forging

Authors: Zhu Baiqing; Lu Haixing; Tong Yifei; Li Dongbo; Xia Yong
Journal: Mathematical Problems in Engineering
 (2015)

---

## Abstract

As a traditional high energy-consuming industry, the forging industry consumes a lot of energy. The activity consuming the highest energy during forging process is the heating. The problem regarding how to separate workpieces with the same holding temperature and holding time and combine them for charging in forging was analyzed and a model based on batch weight fit rule for optimizing the charging combination with the goal of energy saving was proposed. A genetic algorithm was adopted to optimize and solve the model in order to reduce energy consumption in forging. In addition, an instance was given to prove the effectiveness of the proposed model.


---

## Body

## 1. Overview

As a traditional high energy-consuming industry, the forging industry consumes a lot of energy every year, occupying approximately 20% of total cost in a factory. In order to save energy and therefore increase the profit, more and more enterprises consider the performance per watt as a key factor to win competition in the industry [1]. The procedure consuming the highest energy during forging process is the heating [2]. The material to be charged can be divided into different groups which are then combined in a predefined way to realize optimization.Normally, production scheduling is used to separate, combine, and order jobs in a production plan [3]. It can be considered as a detailed plan and is often called “job scheduling plan.” For forging production, how to separate and combine the workpieces to be charged and heated is a typical problem about scheduling [4]. Known studies on scheduling usually take a flow shop or a job shop as the study object while minimum time of completion [5] (i.e., a typical minimum makespan problem) or minimum delivery delay is always taken as the optimization goal. Another kind of scheduling aims at interval production, that is, scheduling for batching, which also takes minimum time of completion as the optimization goal [6]. However the charging combination is less studied and it is rarer to take energy saving as the optimization goal [7]. At present energy saving of most forging industry is achieved by process improvement, equipment modification, use of energy-saving materials, and so on. And the optimal production configurations with energy-saving scheduling and utilization rate improvement of equipment, to reduce the unnecessary invalid links and energy consumptions, have become a new research direction. Through energy control optimization of production process, production efficiency can be ensured as well as green manufacturing without any additional investment. In this paper, the charging combination in forging production was studied and a model for optimizing the charging combination with goal of energy saving was established. Optimization calculation was adopted to formulate an energy-saving solution for charging and heating process and tests were carried out to verify the effectiveness of established model and algorithm.


## 2. Problem Description

When making a plan for forging production, factors like delivery time and production capacity will be taken into consideration. Workpieces with similar heating curves (similar holding temperature and holding time) are usually arranged in a forging job. In this case, since the effect of holding temperature and holding time can be negligible, the main optimization goal is limited to quantity of charging batches and charging amount and the optimization model is established on this basis. The index of average charging amount is used for measuring. The average charging amount and the average charging difference are defined as follows.Definition 1 (average charging amount).
All batches in job schedule are descendingly ordered by weight and then take the average of firstk-1 charging amounts as the average charging amount for this job schedule; that is,
(1)q=1k-1∑b=1k-1zb,
where q is the average charging amount, k is the quantity of charging batches, and zb is the weight of bth charging batch (b=1,2,…,k-1).
The batch with the smallest weight is removed because, in actual production, how to arrange the last batch can affect the planning of job schedule. If the last batch has a small weight, it can be brought into the next production cycle for heating or take some workpieces from the next production cycle to form a new batch with it and heat together. Therefore the average charging amount is defined as above for planning a job schedule.Definition 2 (average charging difference).
The charging amount represents the batch weight while the difference between the maximum furnace capacity and the batch weight is represented by charging difference. All batches in a job schedule are again descendingly ordered by weight and then take the average charging difference of firstk-1 batches as the average charging difference for this job schedule; that is,
(2)p=1k-1∑b=1k-1S-zb,
where p is the average charging difference and S is the maximum capacity of heating furnace.From the above, this kind of combinatorial optimization can be described as follows.Providing there aren workpieces with similar holding temperature and holding time and the weight of each workpiece is known, those workpieces have to be divided into B batches and each batch corresponds to a heating job. The maximum capacity of furnace is S and the weight of workpieces to be heated will not exceed the maximum capacity of furnace. However, the smaller the difference between weight of workpieces and maximum capacity is, the higher the heating efficiency is. The optimization goal is to minimize the quantity of charging batches while maximizing the average charging amount.


## 3. Modeling

### 3.1. Basic Assumptions

To facilitate the study, the following assumptions are taken to establish the charging combination optimization model for energy saving.(1)
Each workpiece is allocated to a charging batch.(2)
A workpiece would be subject to several heating steps. For example, it would be heated again after forging. Because its initial temperature, finishing temperature, and heating time are all defined in process specifications and its tapping temperature is always the same, it can be considered as a constant heating process with the heating steps being ignored. It is assumed that each batch is only heated one time in one furnace.(3)
A batch of workpieces are charged and heated at the same time. Once the heating process is started, interruption is not allowed, which means that any workpiece cannot be taken out of the furnace before reaching the final temperature equalizing time. In addition, new workpiece will not be added into the furnace before current heating is finished.(4)
The capacity of next working procedure (machining) is sufficient.(5)
The job size is within the scope of capacity of equipment, which means that the scheduled job does not exceed the maximum processing capacity of equipment.(6)
The biggest weight of workpiece does not exceed the maximum loading capacity of heating furnace.(7)
Because the workpieces in a batch are charged and tapped together with similar holding time and holding temperature, the constraint of minimum total processing time can be ignored.


### 3.2. Modeling

The optimization problem for charging combination in this paper is similar to the bin packing problem while workpieces and charging batches are described as the materials and the bins in the bin packing problem, respectively. It is required that the weight of workpieces in each batch will not exceed the allowable maximum weight and each workpiece has to be allocated to only one batch. The goal of a bin packing problem is to ensure all materials can be packed in bins while using bins as less as possible. However, the goal of this optimization model is to minimize the quantity of charging batches and to minimize the average charging difference.Thus the following mathematical model is obtained:(3)min⁡⁡(k)(4)min⁡1k-1∑b=1k-1(S-zb)
s.t.
(5)∑b∈Bxjb=1,j∈J,(6)zb=∑j∈Jxjbzj≤S,b∈B,(7)∑j=1nzjS≤k≤n,(8)xjb=1,ifworkpiecejbelongstobatchb0,otherwisekkkkkkkkkkkkkkkkkkkkj∈J,b∈B,
where B denotes aggregate of charging batches (B={1,2,…,k}), J denotes aggregate of workpieces (J={1,2,…,n}), j denotes serial number of a workpiece (j∈J), zj denotes weight of workpiece j, KLB denotes the lower limit for quantity of charging batches, and xjb denotes decision variable (to determine whether workpiece j belongs to batch b).Equations (3) and (4) are optimization goal functions, representing minimum quantity of charging batches and minimum average charging difference, respectively.Equation (5) indicates that each workpiece j can be allocated to only one charging batch b.Equation (6) is the constraint for batch weight, indicating that the total weight of workpieces in a batch will not exceed the maximum capacity of the furnace.Equation (7) defines the scope of quantity of charging batches by giving a lower limit for the quantity of charging batches, that is, ∑j=1nzj. It is assumed that workpieces can be separated and allocated to different batches.Equation (8) is the decision variable.


## 3.1. Basic Assumptions

To facilitate the study, the following assumptions are taken to establish the charging combination optimization model for energy saving.(1)
Each workpiece is allocated to a charging batch.(2)
A workpiece would be subject to several heating steps. For example, it would be heated again after forging. Because its initial temperature, finishing temperature, and heating time are all defined in process specifications and its tapping temperature is always the same, it can be considered as a constant heating process with the heating steps being ignored. It is assumed that each batch is only heated one time in one furnace.(3)
A batch of workpieces are charged and heated at the same time. Once the heating process is started, interruption is not allowed, which means that any workpiece cannot be taken out of the furnace before reaching the final temperature equalizing time. In addition, new workpiece will not be added into the furnace before current heating is finished.(4)
The capacity of next working procedure (machining) is sufficient.(5)
The job size is within the scope of capacity of equipment, which means that the scheduled job does not exceed the maximum processing capacity of equipment.(6)
The biggest weight of workpiece does not exceed the maximum loading capacity of heating furnace.(7)
Because the workpieces in a batch are charged and tapped together with similar holding time and holding temperature, the constraint of minimum total processing time can be ignored.


## 3.2. Modeling

The optimization problem for charging combination in this paper is similar to the bin packing problem while workpieces and charging batches are described as the materials and the bins in the bin packing problem, respectively. It is required that the weight of workpieces in each batch will not exceed the allowable maximum weight and each workpiece has to be allocated to only one batch. The goal of a bin packing problem is to ensure all materials can be packed in bins while using bins as less as possible. However, the goal of this optimization model is to minimize the quantity of charging batches and to minimize the average charging difference.Thus the following mathematical model is obtained:(3)min⁡⁡(k)(4)min⁡1k-1∑b=1k-1(S-zb)
s.t.
(5)∑b∈Bxjb=1,j∈J,(6)zb=∑j∈Jxjbzj≤S,b∈B,(7)∑j=1nzjS≤k≤n,(8)xjb=1,ifworkpiecejbelongstobatchb0,otherwisekkkkkkkkkkkkkkkkkkkkj∈J,b∈B,
where B denotes aggregate of charging batches (B={1,2,…,k}), J denotes aggregate of workpieces (J={1,2,…,n}), j denotes serial number of a workpiece (j∈J), zj denotes weight of workpiece j, KLB denotes the lower limit for quantity of charging batches, and xjb denotes decision variable (to determine whether workpiece j belongs to batch b).Equations (3) and (4) are optimization goal functions, representing minimum quantity of charging batches and minimum average charging difference, respectively.Equation (5) indicates that each workpiece j can be allocated to only one charging batch b.Equation (6) is the constraint for batch weight, indicating that the total weight of workpieces in a batch will not exceed the maximum capacity of the furnace.Equation (7) defines the scope of quantity of charging batches by giving a lower limit for the quantity of charging batches, that is, ∑j=1nzj. It is assumed that workpieces can be separated and allocated to different batches.Equation (8) is the decision variable.


## 4. Algorithm Design

As a typical combinational optimization problem, the bin packing problem [8] can be classified as a NP complete problem. The combinational optimization is to seek optimal combination, separation, ordering, or screening by using mathematical methods. It is a classical and important branch in operations research. Metaheuristic algorithm is a good way for solving such kind of problems [9]. So for the mathematic model for energy-saving optimization of charging combination, the genetic algorithm in the metaheuristic algorithm is used for solutions.


### 4.1. Genetic Algorithm

The genetic algorithm (GA) was proposed by Ling in 1975 who was inspired by the biological evolutionism [10]. GA is a global searching method and is characterized by randomization. Since it operates on objects directly, it is not subject to constraint of continuity during derivation process. Additionally, its optimizing way is characterized by randomization and self-adaptable search, so it is not necessary to define clear rules, resulting in advantages of excellent global optimizing capacity and implicit parallelism.GA is an optimization algorithm based on the theory “survival of the fittest” and is characterized by randomization, parallelism, and self-adaptation. It labels the feasible solutions of a problem into chromosomes and simulates the surviving process of creatures through evolution of populations with different chromosomes. For those populations, iteration will be performed for selection, crossover, and mutation in order to obtain individuals which adapt to environment best. Those individuals are the optimal solutions of primal problem.Main steps for GA are as follows [11]:(1)
decoding and coding for optimization problem;(2)
construction and application of fitness function;(3)
genetic operations (including selection, crossover, and mutation).Flowchart for standard GA is shown in Figure1.Figure 1
Flowchart for standard genetic algorithm.


### 4.2. Genetic Algorithm Design Based on Charging Batch Weight Fit

In the abovementioned model, all workpieces are charged and tapped as a batch for heating in a furnace and the process is very similar to job scheduling. The charging combination is similar to the batching step in job scheduling, so, during algorithm design, we can refer to the method used to solve a job scheduling problem. Currently many researches use jobs ordering to express individuals or paths for an algorithm and carry out batching based on heuristic algorithm for solutions. Since the optimization goal in this paper is different from those, a genetic algorithm based on batch weight fit rule was established and each job was considered as an individual for solving.(1) Batching Algorithm Based on Batch Weight Fit. Because the chromosome is directly composed of charging batch numbers, the weight of a batch would exceed maximum capacity of heating furnace (infeasible solution) when randomly generating individuals. Therefore when initializing population, such kind of chromosomes with infeasible solutions will be improved by the batch weight fit (BWF) rule described in literature [12].The BWF rule aiming at the batch with excessive weight in chromosome is used to take the workpiece with excessive weight out of the batch and put it into another proper batch as far as possible. If no proper batch can accommodate this workpiece, create a new batch for it. The BWF rule is adopted in this paper to form the batch weight fit rule for solving the abovementioned model problem.Steps are as follows.Step 1.
Search for batch with weight exceeding maximum capacity of furnace and move it into queueB′. Calculate current weight sb of batch b and current charging difference Δsb (difference between maximum capacity S of furnace and sb): Δsb=S-sb. If the charging difference Δsb<0, the batch weight exceeds the maximum capacity of furnace and thus batch b has to be adjusted (move batch b into queue B′). After all batches with weight exceeding maximum capacity of furnace are found, go to Step 2 for adjusting the batch weight.Step 2.
Pick batchb out of queue B′ and select workpieces which have to be removed from batch b to form an aggregate J′. Calculate the sum Δsbj between weight sj of workpiece j in batch b and Δsb: Δsbj=sj+Δsb. Among those workpieces with Δsbj≥0, select the workpiece j′ with the smallest Δsbj and remove it from batch b. Then add it into queue J′, update Δsb=Δsbj′, and go to Step 3. If there is no workpiece with Δsbj≥0, remove the workpiece j′′ with the biggest weight from batch b and add it into queue J′. Then set Δsb=Δsbj′′ and go to Step 2 for readjusting.Step 3.
Pick workpiecej out of queue J′ and allocate workpiece j into a new batch. Calculate the charging difference Δsbj′=Δsb-sj after allocating workpiece j into a new batch. If there are several batches with Δsbj′≥0, select the batch b with the smallest Δsbj′. Then move workpiece j into batch b and update Δsb=Δsbj′. If there is no batch with Δsbj′≥0, create a new batch bnew and move workpiece j into batch bnew. Then update the current charging difference Δsbnew=S-sj of batch bnew. Go to Step 2 and continue to adjust weight of other batches until all batches are properly adjusted.The algorithm flow according to batch weight fit rule is shown in Figure2.Figure 2
Batching algorithm flowchart according to batch weight fit rule.(2) Genetic Algorithm Design Based on Batch Weight Fit Rule. A chromosome in algorithm represents a batching solution, the arrangement of chromosome genes corresponds to the arrangement of workpieces, and the gene value represents the batch number assigned to the workpiece. Because the value of a chromosome gene is an integer within the scope defined by the quantity of charging batches k, the integer coding way can be used to randomly generate chromosomes. The chromosome in Table 1 indicates that workpieces 1 and 4 are allocated to the 3rd batch, workpiece 2 is allocated to the 2nd batch, workpieces 3 and 6 are allocated to the 4th batch, and workpiece 5 is allocated to the 1st batch.Table 1
Code message of one chromosome.
Workpiece number
1
2
3
4
5
6
Batch number
3
2
4
3
1
4But this coding way could lead to null batch, which means those batch numbers in chromosome are arranged discontinuously. So the code shown in Table2 would occur.Table 2
Code with null batch.
Workpiece number
1
2
3
4
5
6
Batch number
3
4
4
3
1
4In this case, the batch number at position 2 is null. Because the null batch can cause difficulties to model interpretation and problem solving, the continuity rule is adopted for batch numbers in order to make those numbers continuous.Continuity Rule for Batch Numbers. If a null batch occurs in a chromosome, shift numbers behind this null batch one position forward in succession (batch number minus 1) to fill this null position and make batch numbers continuous. Finally the biggest batch number is equal to the quantity of batches. What is shown in Table3 is the code by repairing the chromosome in Table 2 according to continuity rule for batch numbers.Table 3
Code message after using continuity rule for repairing.
Workpiece number
1
2
3
4
5
6
Batch number
2
3
3
2
1
3Details of hybrid genetic algorithm according to batch weight fit rule are as follows.Step 1 (coding of individuals).
Use integer coding way to randomly generate chromosome and use batch numbers as its gene values. Because new batch will be generated when using the batching algorithm based on batch weight fit rule, set 1/2 of the lower limit in model as the initial quantity of batches, namely,[KLB/2].Step 2 (population initialization).
Use the coding way in Step1 to generate a chromosome population with initial size of r. The batch weight fit rule is also used to repair infeasible solution and continuity rule for batch numbers is used to make batch numbers in each individual continuous.Step 3 (construction of fitness function).
Because the quantity of batches in model is the less the better but the average charging amount is the bigger the better, the fitness function is constructed as follows:(9)fitness=1k(k-1)∑b=1k-1zb.Step 4 (selection).
Use the classical roulette wheel way for selection of individuals.Step 5 (crossover).
Use dual-point of tangency for crossover. After transition, any chromosome with discontinuous batch numbers will be repaired by the continuity rule. In case of a chromosome with batch weight exceeding the maximum capacity of furnace, use the batch weight fit rule to repair it.Step 6 (mutation).
Use the interchange way to randomly select two genes from a chromosome and interchange their positions. If the chromosome generated by mutation includes a batch weight that exceeds the maximum capacity of furnace, use the batch weight fit rule to repair it.Step 7 (algorithm termination).
Once the biggest number of iterations is reached or the optimal solution cannot be improved, the algorithm is terminated. Then the optimal solution solved through the algorithm can be obtained.The algorithm flowchart is shown in Figure3.Figure 3
Flowchart of genetic algorithm based on batch weight fit rule.


## 4.1. Genetic Algorithm

The genetic algorithm (GA) was proposed by Ling in 1975 who was inspired by the biological evolutionism [10]. GA is a global searching method and is characterized by randomization. Since it operates on objects directly, it is not subject to constraint of continuity during derivation process. Additionally, its optimizing way is characterized by randomization and self-adaptable search, so it is not necessary to define clear rules, resulting in advantages of excellent global optimizing capacity and implicit parallelism.GA is an optimization algorithm based on the theory “survival of the fittest” and is characterized by randomization, parallelism, and self-adaptation. It labels the feasible solutions of a problem into chromosomes and simulates the surviving process of creatures through evolution of populations with different chromosomes. For those populations, iteration will be performed for selection, crossover, and mutation in order to obtain individuals which adapt to environment best. Those individuals are the optimal solutions of primal problem.Main steps for GA are as follows [11]:(1)
decoding and coding for optimization problem;(2)
construction and application of fitness function;(3)
genetic operations (including selection, crossover, and mutation).Flowchart for standard GA is shown in Figure1.Figure 1
Flowchart for standard genetic algorithm.


## 4.2. Genetic Algorithm Design Based on Charging Batch Weight Fit

In the abovementioned model, all workpieces are charged and tapped as a batch for heating in a furnace and the process is very similar to job scheduling. The charging combination is similar to the batching step in job scheduling, so, during algorithm design, we can refer to the method used to solve a job scheduling problem. Currently many researches use jobs ordering to express individuals or paths for an algorithm and carry out batching based on heuristic algorithm for solutions. Since the optimization goal in this paper is different from those, a genetic algorithm based on batch weight fit rule was established and each job was considered as an individual for solving.(1) Batching Algorithm Based on Batch Weight Fit. Because the chromosome is directly composed of charging batch numbers, the weight of a batch would exceed maximum capacity of heating furnace (infeasible solution) when randomly generating individuals. Therefore when initializing population, such kind of chromosomes with infeasible solutions will be improved by the batch weight fit (BWF) rule described in literature [12].The BWF rule aiming at the batch with excessive weight in chromosome is used to take the workpiece with excessive weight out of the batch and put it into another proper batch as far as possible. If no proper batch can accommodate this workpiece, create a new batch for it. The BWF rule is adopted in this paper to form the batch weight fit rule for solving the abovementioned model problem.Steps are as follows.Step 1.
Search for batch with weight exceeding maximum capacity of furnace and move it into queueB′. Calculate current weight sb of batch b and current charging difference Δsb (difference between maximum capacity S of furnace and sb): Δsb=S-sb. If the charging difference Δsb<0, the batch weight exceeds the maximum capacity of furnace and thus batch b has to be adjusted (move batch b into queue B′). After all batches with weight exceeding maximum capacity of furnace are found, go to Step 2 for adjusting the batch weight.Step 2.
Pick batchb out of queue B′ and select workpieces which have to be removed from batch b to form an aggregate J′. Calculate the sum Δsbj between weight sj of workpiece j in batch b and Δsb: Δsbj=sj+Δsb. Among those workpieces with Δsbj≥0, select the workpiece j′ with the smallest Δsbj and remove it from batch b. Then add it into queue J′, update Δsb=Δsbj′, and go to Step 3. If there is no workpiece with Δsbj≥0, remove the workpiece j′′ with the biggest weight from batch b and add it into queue J′. Then set Δsb=Δsbj′′ and go to Step 2 for readjusting.Step 3.
Pick workpiecej out of queue J′ and allocate workpiece j into a new batch. Calculate the charging difference Δsbj′=Δsb-sj after allocating workpiece j into a new batch. If there are several batches with Δsbj′≥0, select the batch b with the smallest Δsbj′. Then move workpiece j into batch b and update Δsb=Δsbj′. If there is no batch with Δsbj′≥0, create a new batch bnew and move workpiece j into batch bnew. Then update the current charging difference Δsbnew=S-sj of batch bnew. Go to Step 2 and continue to adjust weight of other batches until all batches are properly adjusted.The algorithm flow according to batch weight fit rule is shown in Figure2.Figure 2
Batching algorithm flowchart according to batch weight fit rule.(2) Genetic Algorithm Design Based on Batch Weight Fit Rule. A chromosome in algorithm represents a batching solution, the arrangement of chromosome genes corresponds to the arrangement of workpieces, and the gene value represents the batch number assigned to the workpiece. Because the value of a chromosome gene is an integer within the scope defined by the quantity of charging batches k, the integer coding way can be used to randomly generate chromosomes. The chromosome in Table 1 indicates that workpieces 1 and 4 are allocated to the 3rd batch, workpiece 2 is allocated to the 2nd batch, workpieces 3 and 6 are allocated to the 4th batch, and workpiece 5 is allocated to the 1st batch.Table 1
Code message of one chromosome.
Workpiece number
1
2
3
4
5
6
Batch number
3
2
4
3
1
4But this coding way could lead to null batch, which means those batch numbers in chromosome are arranged discontinuously. So the code shown in Table2 would occur.Table 2
Code with null batch.
Workpiece number
1
2
3
4
5
6
Batch number
3
4
4
3
1
4In this case, the batch number at position 2 is null. Because the null batch can cause difficulties to model interpretation and problem solving, the continuity rule is adopted for batch numbers in order to make those numbers continuous.Continuity Rule for Batch Numbers. If a null batch occurs in a chromosome, shift numbers behind this null batch one position forward in succession (batch number minus 1) to fill this null position and make batch numbers continuous. Finally the biggest batch number is equal to the quantity of batches. What is shown in Table3 is the code by repairing the chromosome in Table 2 according to continuity rule for batch numbers.Table 3
Code message after using continuity rule for repairing.
Workpiece number
1
2
3
4
5
6
Batch number
2
3
3
2
1
3Details of hybrid genetic algorithm according to batch weight fit rule are as follows.Step 1 (coding of individuals).
Use integer coding way to randomly generate chromosome and use batch numbers as its gene values. Because new batch will be generated when using the batching algorithm based on batch weight fit rule, set 1/2 of the lower limit in model as the initial quantity of batches, namely,[KLB/2].Step 2 (population initialization).
Use the coding way in Step1 to generate a chromosome population with initial size of r. The batch weight fit rule is also used to repair infeasible solution and continuity rule for batch numbers is used to make batch numbers in each individual continuous.Step 3 (construction of fitness function).
Because the quantity of batches in model is the less the better but the average charging amount is the bigger the better, the fitness function is constructed as follows:(9)fitness=1k(k-1)∑b=1k-1zb.Step 4 (selection).
Use the classical roulette wheel way for selection of individuals.Step 5 (crossover).
Use dual-point of tangency for crossover. After transition, any chromosome with discontinuous batch numbers will be repaired by the continuity rule. In case of a chromosome with batch weight exceeding the maximum capacity of furnace, use the batch weight fit rule to repair it.Step 6 (mutation).
Use the interchange way to randomly select two genes from a chromosome and interchange their positions. If the chromosome generated by mutation includes a batch weight that exceeds the maximum capacity of furnace, use the batch weight fit rule to repair it.Step 7 (algorithm termination).
Once the biggest number of iterations is reached or the optimal solution cannot be improved, the algorithm is terminated. Then the optimal solution solved through the algorithm can be obtained.The algorithm flowchart is shown in Figure3.Figure 3
Flowchart of genetic algorithm based on batch weight fit rule.


## 5. Instance Analysis

### 5.1. Types of Workpieces to Be Charged and Related Parameters

Providing a forging company has to deliver the goods within a predefined period, all workpieces are separated and combined to generate a group of jobs. The workpieces with similar heating curve, that is, similar holding temperature and holding time, are classified into the same type and the workpieces contained in a job will be of the same type. The method described in the last section is used to obtain optimal result, which is subsequently compared with the result obtained through the traditional manual batching method.The maximum capacity of heating furnace is 8T and related parameters of workpieces are listed in Table4.Table 4
Parameters of workpiece.
Workpiece type
Quantity of workpieces (piece)
Unit weight of workpiece (kg)
J1
12
438
J2
14
226
J3
8
288
J4
4
616
J5
2
578
J6
9
490
J7
3
1080
J8
11
449
J9
16
828
J10
10
563
J11
2
416
J12
3
766
J13
25
214
J14
6
334
J15
6
180
J16
1
1239
J17
2
683
J18
7
372


### 5.2. Traditional Batching Method

The traditional batching is normally carried out based on experiences with the following principle: first separate workpieces into different aggregates and calculate total weight of each aggregate. The weight exceeding maximum capacity will be put into a new batch for charging. Carry out this process for all aggregates until each batch is not overweight. Regarding those batches as individuals, descendingly order them according to weights and initially consider each aggregate as a charging batch. Start matching from the batch with the biggest weight and if two or more aggregates can be combined into a batch, combine them. Otherwise take it as a single batch.The batching plan figured out by the traditional way is as follows: number of batches is 9 and average charging amount is 7688 kg. The details of charging batches are shown in Table5, where(1)
the weight of the 1st batch is 7452 kg including 9 pieces of workpiece J9;(2)
the weight of the 2nd batch is 7800 kg including 7 pieces of workpiece J9 and 6 pieces of workpiece J14;(3)
the weight of the 3rd batch is 7934 kg including 10 pieces of workpiece J10 and 8 pieces of workpiece J3;(4)
the weight of the 4th batch is 7954 kg including 25 pieces of workpiece J13 and 7 pieces of workpiece J18;(5)
the weight of the 5th batch is 7720 kg including 12 pieces of workpiece J1 and 4 pieces of workpiece J4;(6)
the weight of the 6th batch is 7237 kg including 11 pieces of workpiece J8 and 3 pieces of workpiece J12;(7)
the weight of the 7th batch is 7650 kg including 9 pieces of workpiece J6 and 3 pieces of workpiece J7;(8)
the weight of the 8th batch is 7757 kg including 14 pieces of workpiece J2, 2 pieces of workpiece J17, 1 piece of workpiece J16, 2 pieces of workpiece J5, and 2 pieces of workpiece J11;(9)
the weight of the 9th batch is 1080 kg including 6 pieces of workpiece J15.Table 5
Batching plan figured out by the traditional way.
Workpiece type
Batch number
1
2
3
4
5
6
7
8
9
J1
12
J2
14
J3
8
J4
4
J5
2
J6
9
J7
3
J8
11
J9
9
7
J10
10
J11
2
J12
3
J13
25
J14
6
J15
6
J16
1
J17
2
J18
7


### 5.3. Batching Plan Based on Genetic Algorithm

The genetic algorithm based on batch weight fit rule is used below to figure out a batching plan. Parameters involved in this algorithm are listed in Table6. Carry out repeatable calculation 50 times so as to obtain the following optimal solution: the number of batches is 8 and the average charging amount is within 7985 kg to 7990 kg. A batching plan with average charging amount of 7990 kg is listed in Table 7, where(1)
the weight of the 1st batch is 8000 kg including the following workpieces: 1 piece of J18, 3 pieces of J19, 1 piece of J14, 1 piece of J10, 1 piece of J4, 6 pieces of J13, 1 piece of J6, 1 piece of J15, 1 piece of J16, and 1 piece of J1;(2)
the weight of the 2nd batch is 8000 kg including the following workpieces: 2 pieces of J3, 1 piece of J1, 3 pieces of J13, 3 pieces of J2, 2 pieces of J6, 1 piece of J14, 1 piece of J11, 3 pieces of J9, 1 piece of J18, and 1 piece of J7;(3)
the weight of the 3rd batch is 7994 kg including the following workpieces: 3 pieces of J10, 4 pieces of J8, 3 pieces of J9, 2 pieces of J3, 1 piece of J13, 1 piece of J17, 1 piece of J18, and 1 piece of J15;(4)
the weight of the 4th batch is 7989 kg including the following workpieces: 5 pieces of J2, 5 pieces of J13, 2 pieces of J3, 3 pieces of J6, 1 piece of J14, 3 pieces of J1, 2 pieces of J12, and 1 piece of J10;(5)
the weight of the 5th batch is 7986 kg including the following workpieces: 2 pieces of J8, 2 pieces of J14, 1 piece of J5, 1 piece of J6, 2 pieces of J9, 2 pieces of J4, 1 piece of J1, 1 piece of J7, 1 piece of J12, and 1 piece of J15;(6)
the weight of the 6th batch is 7982 kg including the following workpieces: 3 pieces of J13, 3 pieces of J8, 1 piece of J6, 2 pieces of J2, 2 pieces of J18, 2 pieces of J9, 2 pieces of J1, 1 piece of J11, 1 piece of J4, 1 piece of J10, and 1 piece of J15;(7)
the weight of the 7th batch is 7982 kg including the following workpieces: 3 pieces of J10, 2 pieces of J3, 2 pieces of J9, 3 pieces of J13, 3 pieces of J2, 1 piece of J5, 1 piece of J6, 1 piece of J18, 1 piece of J1, 1 piece of J15, and 1 piece of J17;(8)
the weight of the 8th batch is 6651 kg including the following workpieces: 3 pieces of J1, 2 pieces of J8, 1 piece of J15, 1 piece of J9, 1 piece of J10, 4 pieces of J13, 1 piece of J7, 1 piece of J2, 1 piece of J18, and 1 piece of J14.Table 6
Parameters involved in algorithm.
Parameter
Value
Population sizeN
100
Number of iterationsk
1000
Crossover probabilityq
0.8
Mutation probabilityp
0.5
Number of repetitionsm
50Table 7
Batching plan figured out through genetic algorithm based on batch weight fit rule.
Workpiece type
Batch number
1
2
3
4
5
6
7
8
J1
1
1
3
1
2
1
3
J2
3
5
2
3
1
J3
2
2
2
2
J4
1
2
1
J5
1
1
J6
1
2
3
1
1
1
J7
1
1
1
J8
4
2
3
2
J9
3
3
3
2
2
2
1
J10
1
3
1
1
3
1
J11
1
1
J12
2
1
J13
6
3
1
5
3
3
4
J14
1
1
1
2
1
J15
1
1
1
1
1
1
J16
1
J17
1
1
J18
1
1
1
2
1
1As seen from the abovementioned data and the comparison to traditional batching, the result (number of batches and average charging amount) obtained through the algorithm described in this paper is better than the traditional manual batching. Either less number of batches or bigger average charging amount means less energy consumption. Therefore regarding the energy saving, the batching plan figured out according to the model and the algorithm described in this paper is better.The last batch is not involved into the calculation of average charging amount. For example, either the weight of the 8th batch, 6651 kg, obtained through the algorithm or the weight of the 9th batch, 1080 kg, obtained through the traditional manual batching way is not involved into the calculation of average charging amount. This is because once the weights of batches are descendingly ordered, the weight of the last batch is normally far less than the optimal charging amount. Therefore the last batch is generally arranged into the next production cycle or selects some workpieces from the next production cycle to increase the weight of the last batch to optimal charging amount.


## 5.1. Types of Workpieces to Be Charged and Related Parameters

Providing a forging company has to deliver the goods within a predefined period, all workpieces are separated and combined to generate a group of jobs. The workpieces with similar heating curve, that is, similar holding temperature and holding time, are classified into the same type and the workpieces contained in a job will be of the same type. The method described in the last section is used to obtain optimal result, which is subsequently compared with the result obtained through the traditional manual batching method.The maximum capacity of heating furnace is 8T and related parameters of workpieces are listed in Table4.Table 4
Parameters of workpiece.
Workpiece type
Quantity of workpieces (piece)
Unit weight of workpiece (kg)
J1
12
438
J2
14
226
J3
8
288
J4
4
616
J5
2
578
J6
9
490
J7
3
1080
J8
11
449
J9
16
828
J10
10
563
J11
2
416
J12
3
766
J13
25
214
J14
6
334
J15
6
180
J16
1
1239
J17
2
683
J18
7
372


## 5.2. Traditional Batching Method

The traditional batching is normally carried out based on experiences with the following principle: first separate workpieces into different aggregates and calculate total weight of each aggregate. The weight exceeding maximum capacity will be put into a new batch for charging. Carry out this process for all aggregates until each batch is not overweight. Regarding those batches as individuals, descendingly order them according to weights and initially consider each aggregate as a charging batch. Start matching from the batch with the biggest weight and if two or more aggregates can be combined into a batch, combine them. Otherwise take it as a single batch.The batching plan figured out by the traditional way is as follows: number of batches is 9 and average charging amount is 7688 kg. The details of charging batches are shown in Table5, where(1)
the weight of the 1st batch is 7452 kg including 9 pieces of workpiece J9;(2)
the weight of the 2nd batch is 7800 kg including 7 pieces of workpiece J9 and 6 pieces of workpiece J14;(3)
the weight of the 3rd batch is 7934 kg including 10 pieces of workpiece J10 and 8 pieces of workpiece J3;(4)
the weight of the 4th batch is 7954 kg including 25 pieces of workpiece J13 and 7 pieces of workpiece J18;(5)
the weight of the 5th batch is 7720 kg including 12 pieces of workpiece J1 and 4 pieces of workpiece J4;(6)
the weight of the 6th batch is 7237 kg including 11 pieces of workpiece J8 and 3 pieces of workpiece J12;(7)
the weight of the 7th batch is 7650 kg including 9 pieces of workpiece J6 and 3 pieces of workpiece J7;(8)
the weight of the 8th batch is 7757 kg including 14 pieces of workpiece J2, 2 pieces of workpiece J17, 1 piece of workpiece J16, 2 pieces of workpiece J5, and 2 pieces of workpiece J11;(9)
the weight of the 9th batch is 1080 kg including 6 pieces of workpiece J15.Table 5
Batching plan figured out by the traditional way.
Workpiece type
Batch number
1
2
3
4
5
6
7
8
9
J1
12
J2
14
J3
8
J4
4
J5
2
J6
9
J7
3
J8
11
J9
9
7
J10
10
J11
2
J12
3
J13
25
J14
6
J15
6
J16
1
J17
2
J18
7


## 5.3. Batching Plan Based on Genetic Algorithm

The genetic algorithm based on batch weight fit rule is used below to figure out a batching plan. Parameters involved in this algorithm are listed in Table6. Carry out repeatable calculation 50 times so as to obtain the following optimal solution: the number of batches is 8 and the average charging amount is within 7985 kg to 7990 kg. A batching plan with average charging amount of 7990 kg is listed in Table 7, where(1)
the weight of the 1st batch is 8000 kg including the following workpieces: 1 piece of J18, 3 pieces of J19, 1 piece of J14, 1 piece of J10, 1 piece of J4, 6 pieces of J13, 1 piece of J6, 1 piece of J15, 1 piece of J16, and 1 piece of J1;(2)
the weight of the 2nd batch is 8000 kg including the following workpieces: 2 pieces of J3, 1 piece of J1, 3 pieces of J13, 3 pieces of J2, 2 pieces of J6, 1 piece of J14, 1 piece of J11, 3 pieces of J9, 1 piece of J18, and 1 piece of J7;(3)
the weight of the 3rd batch is 7994 kg including the following workpieces: 3 pieces of J10, 4 pieces of J8, 3 pieces of J9, 2 pieces of J3, 1 piece of J13, 1 piece of J17, 1 piece of J18, and 1 piece of J15;(4)
the weight of the 4th batch is 7989 kg including the following workpieces: 5 pieces of J2, 5 pieces of J13, 2 pieces of J3, 3 pieces of J6, 1 piece of J14, 3 pieces of J1, 2 pieces of J12, and 1 piece of J10;(5)
the weight of the 5th batch is 7986 kg including the following workpieces: 2 pieces of J8, 2 pieces of J14, 1 piece of J5, 1 piece of J6, 2 pieces of J9, 2 pieces of J4, 1 piece of J1, 1 piece of J7, 1 piece of J12, and 1 piece of J15;(6)
the weight of the 6th batch is 7982 kg including the following workpieces: 3 pieces of J13, 3 pieces of J8, 1 piece of J6, 2 pieces of J2, 2 pieces of J18, 2 pieces of J9, 2 pieces of J1, 1 piece of J11, 1 piece of J4, 1 piece of J10, and 1 piece of J15;(7)
the weight of the 7th batch is 7982 kg including the following workpieces: 3 pieces of J10, 2 pieces of J3, 2 pieces of J9, 3 pieces of J13, 3 pieces of J2, 1 piece of J5, 1 piece of J6, 1 piece of J18, 1 piece of J1, 1 piece of J15, and 1 piece of J17;(8)
the weight of the 8th batch is 6651 kg including the following workpieces: 3 pieces of J1, 2 pieces of J8, 1 piece of J15, 1 piece of J9, 1 piece of J10, 4 pieces of J13, 1 piece of J7, 1 piece of J2, 1 piece of J18, and 1 piece of J14.Table 6
Parameters involved in algorithm.
Parameter
Value
Population sizeN
100
Number of iterationsk
1000
Crossover probabilityq
0.8
Mutation probabilityp
0.5
Number of repetitionsm
50Table 7
Batching plan figured out through genetic algorithm based on batch weight fit rule.
Workpiece type
Batch number
1
2
3
4
5
6
7
8
J1
1
1
3
1
2
1
3
J2
3
5
2
3
1
J3
2
2
2
2
J4
1
2
1
J5
1
1
J6
1
2
3
1
1
1
J7
1
1
1
J8
4
2
3
2
J9
3
3
3
2
2
2
1
J10
1
3
1
1
3
1
J11
1
1
J12
2
1
J13
6
3
1
5
3
3
4
J14
1
1
1
2
1
J15
1
1
1
1
1
1
J16
1
J17
1
1
J18
1
1
1
2
1
1As seen from the abovementioned data and the comparison to traditional batching, the result (number of batches and average charging amount) obtained through the algorithm described in this paper is better than the traditional manual batching. Either less number of batches or bigger average charging amount means less energy consumption. Therefore regarding the energy saving, the batching plan figured out according to the model and the algorithm described in this paper is better.The last batch is not involved into the calculation of average charging amount. For example, either the weight of the 8th batch, 6651 kg, obtained through the algorithm or the weight of the 9th batch, 1080 kg, obtained through the traditional manual batching way is not involved into the calculation of average charging amount. This is because once the weights of batches are descendingly ordered, the weight of the last batch is normally far less than the optimal charging amount. Therefore the last batch is generally arranged into the next production cycle or selects some workpieces from the next production cycle to increase the weight of the last batch to optimal charging amount.


## 6. Conclusions

The problem regarding how to separate workpieces with the same holding temperature and holding time and combine them for charging was described in this paper and a model for optimizing the charging combination with goal of energy saving was established. A genetic algorithm based on batch weight fit rule is designed for problem solving. Additionally the abovementioned algorithm and the traditional manual batching were used, respectively, to obtain two results based on a group of instance data for comparison. As seen from the comparison, the established algorithm was effective and better than traditional manual batching method regarding energy saving.



---

*Source: 531756-2015-02-23.xml*