# A Production Planning Model for Make-to-Order Foundry Flow Shop with Capacity Constraint

Authors: Xixing Li; Shunsheng Guo; Yi Liu; Baigang Du; Lei Wang
Journal: Mathematical Problems in Engineering
 (2017)

---

## Abstract

The mode of production in the modern manufacturing enterprise mainly prefers to MTO (Make-to-Order); how to reasonably arrange the production plan has become a very common and urgent problem for enterprises’ managers to improve inner production reformation in the competitive market environment. In this paper, a mathematical model of production planning is proposed to maximize the profit with capacity constraint. Four kinds of cost factors (material cost, process cost, delay cost, and facility occupy cost) are considered in the proposed model. Different factors not only result in different profit but also result in different satisfaction degrees of customers. Particularly, the delay cost and facility occupy cost cannot reach the minimum at the same time; the two objectives are interactional. This paper presents a mathematical model based on the actual production process of a foundry flow shop. An improved genetic algorithm (IGA) is proposed to solve the biobjective problem of the model. Also, the gene encoding and decoding, the definition of fitness function, and genetic operators have been illustrated. In addition, the proposed algorithm is used to solve the production planning problem of a foundry flow shop in a casting enterprise. And comparisons with other recently published algorithms show the efficiency and effectiveness of the proposed algorithm.


---

## Body

## 1. Introduction

Casting enterprise is a typical enterprise of MTO production; the requirements of products’ quality and delivery are higher. The demand quantity prefers single and small batch which is not conducive to stock-based production, and time limit of casting enterprise is a long-term problem. Therefore, the timely delivery rate is generally relatively low in many casting enterprises [1]. In order to improve the timely delivery rate, a research of an actual foundry flow shop has been taken; it is a medium-sized manufacturing enterprise and the practical manufacturing process is shown in Figure 1. Casting unit number is automatically created in the commissioning date of order by the single assignment program. At the stage of production preparing, all of the manufacturing tasks can be divided into single piece production by process route. At the stage of production planning, the content of the single piece production will become rich and perfect with the whole ongoing processes (from modeling to finished product storage). If there is a requirement of adding or adjusting the process of a single piece in the following manufacturing process, it should be realized in the way of modifying the corresponding process route or manufacturing processing. At the stage of product sales, the life processing of the single piece is entering end gradually, and it contains two states: one is “complete,” which means that customers have confirmed the order and its manufacturing processing life is completed, and the other one is “waiting for disposal,” which means that there is some repair or rework of the product and the manufacturing processing is not completed.Figure 1
Actual manufacturing process.The production process of foundry enterprise is various and complex, as well as various physical changes and chemical changes at the same time [2]. Therefore, reasonable production planning is the key element of foundry enterprise; it is not only the main component to ensure the stable operation of production but also an effective guarantee to complete production target. The order-driven foundry sector suffers strong competitive pressure at the regional and global levels as well as ecological pressure due to high energy consumption in foundry furnaces [3]. More efficient methods of elaborating production planning can directly influence sector competitiveness and energy expenses through the effective rationing of furnace loads and stock in process levels; it can effectively reduce energy expenses and direct cost. In addition, the reduction of stocking process levels can improve quality and lead time of product. However, the research of production planning in order-driven foundries has been little explored [4].Based on the actual manufacturing process of foundry flow shop, many factors have to be considered when making the production planning, such as human resource, facility resource, technology resource, and capacity resource [5]. Because the important degrees of these factors are different from each other in different enterprises, in order to summarize the common characteristics of arranging production planning of foundry enterprise, assume that the aim of production planning is maximizing the profit in this paper, which is based on a certain amount of orders with capacity constraint of processing unit. The remainder of this paper is organized as follows. In the next section, the relevant literature related to production planning is reviewed. Problem description and optimization model are developed in Section 3. Section 4 details the proposed improved genetic algorithm. A case analysis and comparison with other algorithms are illustrated in Section 5. Conclusions are given in Section 6.


## 2. Literature Review

Production planning problem is a typical optimization problem, which is an important theoretical significance and economic interests in foundry industry [6–8]. The producing iron castings problem is the motivation for present work in foundry enterprise. In recent years, experts and scholars have put many researches’ focus on the scheduling optimization algorithm and proposed some effective methods or models, such as multiobjective evolutionary algorithms [9] (DLP, Deterministic Linear Programming [10], ACO, Ant Colony Optimization [11], ABC, Artificial Bee Colony [12], AIA, Artificial Immune Algorithm [13], UGF, Universal Generation Function [14], and MIP, Mixed-Integer Programming [15]) and decision support optimization and simulation (SLP, System Layout Planning [16], MIND, Method for Analysis of Industrial Energy Systems [17], M&FS, Mass and Fuzzy Sets [18], SDST, Spreadsheet Decision Support Tool [19], SDSM, Scheduling Decision Support Model [20], TOFPS, Two-phase Order Fulfillment Planning Structure [21], and ERP&NN, ERP System including Neural Network [22]).Gauri [23] demonstrated that the product-mix planning problem for batches of melt can be modeled mathematically. Weighted integer goal programming formulations were developed to determine the optimal product-mix for the immediate next heat in a small scale iron foundry, which could be useful for general iron foundries; however, the presented approach for postoptimality analysis was quite tedious, so development of a useful algorithm and necessary software was needed for easy postoptimality analysis. Teixeira Jr. et al. [24] proposed a binary integer model for production scheduling problems in market-driven foundries. The objective was to minimize the cost of manufactured products based on balancing and synchronizing the molding, pouring, and finishing steps, which aimed at eliminating high stock levels and rationing the use of production resources and foundry furnaces. Synchronization among the three production phases directly reduced production cycle time and indirectly improved the quality of products. Matičević et al. [25] developed a new mathematical model for scheduling foundry operations based on the Manufacturing Resource Planning, Just in Time, and Optimized Production Technology concepts. More recently, Camargo et al. [26] considered the production planning problem in small foundries and proposed the heuristic to solve the problem in a hierarchical way, combined the genetic algorithm with a knapsack problem algorithm to explore a larger set of alloy sequences, but did not consider the multiobjective function which could reduce both waste penalties and costs of setup, inventory, and backlogging. Gravel et al. [27] presented a genetic algorithm for the solution of an industrial scheduling problem in an Alcan aluminum foundry situated in Québec and sought the best processing sequence for n orders on m parallel machines. Gomaa [28] developed a computer aided foundry charge optimization system which could be used to minimize the charge materials and energy costs for operating a foundry melting facility during the intermediate-term and short-term planning periods (yearly, monthly, or weekly production plan). Landmann and Erdmann [29] chose a heuristic approach to find a solution to the problem, and a fuzzy logic technique was used in a higher level of abstraction originating from knowledge and experience identified in a qualitative research.In these literatures, scholars used different algorithms or hybrid algorithms to realize production planning problems optimization for foundry enterprise, but GA is rarely used. As we know, GA is the most widely used evolutionary algorithm of production planning problem. It has good global search capability based on its self-organization, self-adaption, and self-learning, but it may converge too fast and limit the search to a local optimum prematurely if there was no effective method of population initialization. Recently, more and more papers begin to take research on this topic. Chang et al. [30] proposed a mining gene structure technique integrated with the two-phase subpopulation GA for parallel machine scheduling problem, and the mining problem of elite chromosomes was formulated as a linear assignment problem and a greedy heuristic using threshold to eliminate redundant information. Wang and Tang [31] presented an improved adaptive GA for solving the minimum makespan problem of production planning, which was inspired by hormone modulation mechanism, and then the adaptive crossover probability and adaptive mutation probability were designed. Kurdi [32] proposed a new hybrid island model GA to solve the production planning problem with the objective of makespan minimization, and a new naturally inspired self-adaptation phase strategy was proposed which was capable of striking a better balance between diversification and intensification of the search process; in the proposed self-adaptation phase strategy, the best individuals were recruited to perform a local search using Tabu Search. Huang and Süer [33] proposed a dispatching rule based genetic algorithm with fuzzy satisfaction levels to solve the multiobjective manufacturing production planning problem, and the objective was to develop a decision making platform which appropriately handles conflicts among different performance measures in a manufacturing system. Rahman et al. [34] considered a make-to-stock production system, where three related issues must be considered: the length of a production cycle, the batch size of each product, and the order of the products in each cycle. To deal with these tasks, they proposed a genetic algorithm based lot production planning approach with an objective of minimizing the sum of the setup and holding costs for permutation flow shop problems.While because of the competition environment is becoming more and more fierce, the customers’ demands are becoming more and more personalized in practical foundry flow shop, so the profit space of enterprise is becoming more and more smaller and the production structure is also changing; the traditional approaches of arranging production planning could not be effective. The foundry enterprises have to focus on two aspects: one is on-time delivery date of orders and the other is higher profit rate of orders. So the motivation of this research can be concluded as follows:(1)
Usually, the main constraint problems of making production planning for most manufacturing enterprises are human resource, outsourcing resource, manufacturing capacity, and so on. In foundry enterprise, the key constraint problem is the modeling (molding and core making) and melting capacity of melting pot, so one motivation is to propose an arranged production planning model for the order-driven foundry enterprise with modeling and melting capacity constraint of processing unit.
(2)
Many useful heuristic algorithms were used to solve the multiobjective optimization problems, and different algorithms have different advantages of solving a practical problem. For solving the production planning problem, GA is the most frequently used algorithm. So the other motivation is to introduce an improved GA to solve the proposed production planning model, and the objective function is to reduce the total cost of production.


## 3. Problem Description and Optimization Model

### 3.1. Problem Description

Customers randomly submit orders with specific item type, quantity, and alloy. When the production planning manager negotiates with the customers about delivery date, usually it will obtain an unachievable date that will lead to the delay of delivery and very likely to lose future orders. While it is the most important point to achieve the best profit under the condition of satisfying the customers’ demand, the product plan makers have to try their best to cut down the manufacturing cost (material cost, processing cost, delay cost, and so on) in maximum extent.In order to make a feasible production planning which could meet the resource allocation circumstances at a lowest cost [33, 34], there are two parameters that must be considered. One is resource allocation quantity (Raq), which contains facility resource, human resource, time resource, and so on. The other one is process route (Pr), which contains modeling, melting, cleaning, casting separating, welding, and so on (the details are illustrated in Table 2). They can be expressed in the form of vector:(1)
Raq
=
R
Q
1
,
R
Q
2
,
R
Q
3
,
…
,
R
Q
p
,
…
,
R
Q
s
,
P
r
=
P
1
,
P
2
,
P
3
,
…
,
P
i
,
…
,
P
t
.Also, there are some special problems that exist in the actual manufacturing environment; for example, the production capacity of the processing unit will not be changed in a period of time, a process must be completed in one time, and the quality of product is usually bigger and not convenient to transport once the processing is unqualified and there is little possibility of repair. So, these problems must be taken into consideration when making the production planning.


### 3.2. Mathematical Model

According to the above analysis, the amount of order is fixed before making production planning, so the profit maximization is often taken as the optimization goal of making production planning, that is, the cost minimization. In the actual manufacturing environment of foundry flow shop, the capacity of processing units is unchanged in its life period, such as the melting pot; its volume is fixed, so it is different from a general manufacturing enterprise which just only considers the human resource, outsourcing resource, and transportation resource when making production planning. In this paper, an optimization model of making production planning is constructed, which is based on the modeling and melting capacity constraint of processing unit; the objective is cost minimization. Before constructing the model, some assumptions are given out as follows:(1)
Make the production planning weekly and the object is the orders which were signed last week.
(2)
The important degrees of customers will not be taken into account when making the production planning, and they are just focusing on the component of product.
(3)
The capacity constraint of processing unit is the key element which has been taken into consideration in this paper; the human resource constraint will not be considered.
(4)
The processing units must be checked, making sure that they are good before executing the plan task, and the breakdown of processing units will not happen during the whole life of production plan.
(5)
Ideally, there is no priority among the orders, and different orders have different delivery dates.
(6)
The depreciation cost or consumption cost of processing facility during the whole life of production plan will not be taken into account.Before formulating a mathematical model of the problem, the notations used throughout the remainder of this paper are defined in Notations.


#### 3.2.1. Total Consumption Cost

The goal of resource allocation is to satisfy the acquirement of production task and decrease the total consumption cost (T
C
c) including material cost (M
c), process cost (P
c), delay cost (D
c), and occupy cost (O
c) of processing unit, and T
C
c can be illustrated as follows:(2)
T
C
c
=
M
c
+
P
c
+
O
c
+
D
c
.In practical manufacturing environment of foundry enterprises, the demands for raw materials of different order tasks are the same; in order to reduce the mutual influence of each order task when arranging the production planning, the weight valueW
g
M
i
,
0
<
W
g
M
i
<
1
,
∑
i
=
1
t
W
g
M
i
=
1 of M
c
i is introduced when calculating M
c; in the same way, W
g
P
i
0
<
W
g
P
i
<
1
,
∑
i
=
1
t
W
g
P
i
=
1, W
g
O
p
0
<
W
g
O
p
<
1
,
∑
p
=
1
s
W
g
O
p
=
1, and W
g
D
i
0
<
W
g
D
i
<
1
,
∑
i
=
1
t
W
g
D
i
=
1 of P
c
i, O
c
p, and D
c
i are introduced, so (2) can be reformed into the following equation:(3)
T
C
c
=
∑
i
=
1
t
W
g
M
i
∗
M
c
i
+
∑
i
=
1
t
W
g
P
i
∗
P
c
i
+
∑
p
=
1
s
W
g
O
p
∗
O
c
p
+
∑
i
=
1
t
W
g
D
i
∗
D
c
i
.As follows, (4) to (8) have illustrated the value of each variable in (3).(
1)
M
c. There are different unit prices of different kinds of material, so this paper adopts (4) to summarize different material costs of different production tasks:(4)
M
c
i
=
∑
j
=
1
k
M
c
i
j
∗
ϕ
i
(5)
M
C
i
j
=
W
i
j
∗
R
j
R
T
i
,where ϕ
i
=
0,1 and ϕ
i
=
1 represents P
t
p
_
i containing material j; otherwise it does not, for i
=
1
,
2
,
…
,
t
,
j
=
1,2
,
…
,
m.(
2)
P
c. There are different unit costs of different kinds of processes, and different production tasks have different processes:(6)
P
c
i
=
∑
c
=
1
m
P
c
i
c
∗
λ
i
,where λ
i
=
0,1 and λ
i
=
1 represents P
t
p
_
i containing procedurec; otherwise it does not, for i
=
1
,
2
,
…
,
t
,
c
=
1,2
,
…
,
m.(
3)
O
c. As the same batch of planning must be completed before entering into next processing unit and the production times of different plans are different from each other, there will be some processing units in the state of waiting which could result in the facility occupy cost:(7)
O
c
p
=
O
p
∗
O
T
p
O
T
p
=
∑
i
=
1
t
max
⁡
O
T
P
i
p
-
O
T
P
i
p
.(
4)
D
c. Different kinds of factors will be taken into consideration when making the production plan, so it will delay some orders’ delivery date and that will also result in the delay cost:(8)
D
c
i
=
D
i
∗
D
T
i
,
D
i
=
ceil
∑
c
=
1
m
max
⁡
T
P
c
∗
λ
-
∑
c
=
1
m
T
P
i
c
∗
λ
24
,where c
e
i
l
(
x
) means obtaining the minimum integer which is greater than x.


#### 3.2.2. Profit of Production Planning

Once all sales orders have been signed, the total amount (O
t) of all orders is determined which is obtained by (9). In Section 3.2.1, it is assumed that there are only four kinds of costs which have been taken into account in this mathematical model, which are material cost (M
c), process cost (P
c), delay cost (D
c), and occupy cost (O
c), so the profit of all sales orders (P
f, that is, the profit of production planning) is obtained by (10a). According to (2), (10a) can be reformed into (10b) which is shown as follows:(9)
O
t
=
∑
i
=
1
t
O
t
i
,
(10a)
P
f
=
O
t
-
T
C
c
,
(10b)
P
f
=
O
t
-
M
c
-
P
c
-
D
c
-
O
c
.


#### 3.2.3. Capacity Constraint

In order to enhance the availability of the optimization model, there are some constrains that must be considered. According to the actual situation of foundry flow shop, the production capacity is determined, so actual production and processing capacity must be considered in the process of task arrangement. The volume of the furnace is certain, so it must be taken into consideration when modeling (molding and core making) and melting. Equation (11) is the sum of modeling quantities (W
i) of production tasks i which should be less than the production capacity of the processing unit (Cpu-Modeling) when modeling, and (12) is the sum of demand quantity of material of each production task which belongs to the same batch should be less than the production capacity of the processing unit when melting (Cpu-Melting).(11)
sum
W
i
≤
Cpu-Modeling
,
(12)
sum
W
i
j
≤
Cpu-Melting
.


## 3.1. Problem Description

Customers randomly submit orders with specific item type, quantity, and alloy. When the production planning manager negotiates with the customers about delivery date, usually it will obtain an unachievable date that will lead to the delay of delivery and very likely to lose future orders. While it is the most important point to achieve the best profit under the condition of satisfying the customers’ demand, the product plan makers have to try their best to cut down the manufacturing cost (material cost, processing cost, delay cost, and so on) in maximum extent.In order to make a feasible production planning which could meet the resource allocation circumstances at a lowest cost [33, 34], there are two parameters that must be considered. One is resource allocation quantity (Raq), which contains facility resource, human resource, time resource, and so on. The other one is process route (Pr), which contains modeling, melting, cleaning, casting separating, welding, and so on (the details are illustrated in Table 2). They can be expressed in the form of vector:(1)
Raq
=
R
Q
1
,
R
Q
2
,
R
Q
3
,
…
,
R
Q
p
,
…
,
R
Q
s
,
P
r
=
P
1
,
P
2
,
P
3
,
…
,
P
i
,
…
,
P
t
.Also, there are some special problems that exist in the actual manufacturing environment; for example, the production capacity of the processing unit will not be changed in a period of time, a process must be completed in one time, and the quality of product is usually bigger and not convenient to transport once the processing is unqualified and there is little possibility of repair. So, these problems must be taken into consideration when making the production planning.


## 3.2. Mathematical Model

According to the above analysis, the amount of order is fixed before making production planning, so the profit maximization is often taken as the optimization goal of making production planning, that is, the cost minimization. In the actual manufacturing environment of foundry flow shop, the capacity of processing units is unchanged in its life period, such as the melting pot; its volume is fixed, so it is different from a general manufacturing enterprise which just only considers the human resource, outsourcing resource, and transportation resource when making production planning. In this paper, an optimization model of making production planning is constructed, which is based on the modeling and melting capacity constraint of processing unit; the objective is cost minimization. Before constructing the model, some assumptions are given out as follows:(1)
Make the production planning weekly and the object is the orders which were signed last week.
(2)
The important degrees of customers will not be taken into account when making the production planning, and they are just focusing on the component of product.
(3)
The capacity constraint of processing unit is the key element which has been taken into consideration in this paper; the human resource constraint will not be considered.
(4)
The processing units must be checked, making sure that they are good before executing the plan task, and the breakdown of processing units will not happen during the whole life of production plan.
(5)
Ideally, there is no priority among the orders, and different orders have different delivery dates.
(6)
The depreciation cost or consumption cost of processing facility during the whole life of production plan will not be taken into account.Before formulating a mathematical model of the problem, the notations used throughout the remainder of this paper are defined in Notations.


### 3.2.1. Total Consumption Cost

The goal of resource allocation is to satisfy the acquirement of production task and decrease the total consumption cost (T
C
c) including material cost (M
c), process cost (P
c), delay cost (D
c), and occupy cost (O
c) of processing unit, and T
C
c can be illustrated as follows:(2)
T
C
c
=
M
c
+
P
c
+
O
c
+
D
c
.In practical manufacturing environment of foundry enterprises, the demands for raw materials of different order tasks are the same; in order to reduce the mutual influence of each order task when arranging the production planning, the weight valueW
g
M
i
,
0
<
W
g
M
i
<
1
,
∑
i
=
1
t
W
g
M
i
=
1 of M
c
i is introduced when calculating M
c; in the same way, W
g
P
i
0
<
W
g
P
i
<
1
,
∑
i
=
1
t
W
g
P
i
=
1, W
g
O
p
0
<
W
g
O
p
<
1
,
∑
p
=
1
s
W
g
O
p
=
1, and W
g
D
i
0
<
W
g
D
i
<
1
,
∑
i
=
1
t
W
g
D
i
=
1 of P
c
i, O
c
p, and D
c
i are introduced, so (2) can be reformed into the following equation:(3)
T
C
c
=
∑
i
=
1
t
W
g
M
i
∗
M
c
i
+
∑
i
=
1
t
W
g
P
i
∗
P
c
i
+
∑
p
=
1
s
W
g
O
p
∗
O
c
p
+
∑
i
=
1
t
W
g
D
i
∗
D
c
i
.As follows, (4) to (8) have illustrated the value of each variable in (3).(
1)
M
c. There are different unit prices of different kinds of material, so this paper adopts (4) to summarize different material costs of different production tasks:(4)
M
c
i
=
∑
j
=
1
k
M
c
i
j
∗
ϕ
i
(5)
M
C
i
j
=
W
i
j
∗
R
j
R
T
i
,where ϕ
i
=
0,1 and ϕ
i
=
1 represents P
t
p
_
i containing material j; otherwise it does not, for i
=
1
,
2
,
…
,
t
,
j
=
1,2
,
…
,
m.(
2)
P
c. There are different unit costs of different kinds of processes, and different production tasks have different processes:(6)
P
c
i
=
∑
c
=
1
m
P
c
i
c
∗
λ
i
,where λ
i
=
0,1 and λ
i
=
1 represents P
t
p
_
i containing procedurec; otherwise it does not, for i
=
1
,
2
,
…
,
t
,
c
=
1,2
,
…
,
m.(
3)
O
c. As the same batch of planning must be completed before entering into next processing unit and the production times of different plans are different from each other, there will be some processing units in the state of waiting which could result in the facility occupy cost:(7)
O
c
p
=
O
p
∗
O
T
p
O
T
p
=
∑
i
=
1
t
max
⁡
O
T
P
i
p
-
O
T
P
i
p
.(
4)
D
c. Different kinds of factors will be taken into consideration when making the production plan, so it will delay some orders’ delivery date and that will also result in the delay cost:(8)
D
c
i
=
D
i
∗
D
T
i
,
D
i
=
ceil
∑
c
=
1
m
max
⁡
T
P
c
∗
λ
-
∑
c
=
1
m
T
P
i
c
∗
λ
24
,where c
e
i
l
(
x
) means obtaining the minimum integer which is greater than x.


### 3.2.2. Profit of Production Planning

Once all sales orders have been signed, the total amount (O
t) of all orders is determined which is obtained by (9). In Section 3.2.1, it is assumed that there are only four kinds of costs which have been taken into account in this mathematical model, which are material cost (M
c), process cost (P
c), delay cost (D
c), and occupy cost (O
c), so the profit of all sales orders (P
f, that is, the profit of production planning) is obtained by (10a). According to (2), (10a) can be reformed into (10b) which is shown as follows:(9)
O
t
=
∑
i
=
1
t
O
t
i
,
(10a)
P
f
=
O
t
-
T
C
c
,
(10b)
P
f
=
O
t
-
M
c
-
P
c
-
D
c
-
O
c
.


### 3.2.3. Capacity Constraint

In order to enhance the availability of the optimization model, there are some constrains that must be considered. According to the actual situation of foundry flow shop, the production capacity is determined, so actual production and processing capacity must be considered in the process of task arrangement. The volume of the furnace is certain, so it must be taken into consideration when modeling (molding and core making) and melting. Equation (11) is the sum of modeling quantities (W
i) of production tasks i which should be less than the production capacity of the processing unit (Cpu-Modeling) when modeling, and (12) is the sum of demand quantity of material of each production task which belongs to the same batch should be less than the production capacity of the processing unit when melting (Cpu-Melting).(11)
sum
W
i
≤
Cpu-Modeling
,
(12)
sum
W
i
j
≤
Cpu-Melting
.


## 3.2.1. Total Consumption Cost

The goal of resource allocation is to satisfy the acquirement of production task and decrease the total consumption cost (T
C
c) including material cost (M
c), process cost (P
c), delay cost (D
c), and occupy cost (O
c) of processing unit, and T
C
c can be illustrated as follows:(2)
T
C
c
=
M
c
+
P
c
+
O
c
+
D
c
.In practical manufacturing environment of foundry enterprises, the demands for raw materials of different order tasks are the same; in order to reduce the mutual influence of each order task when arranging the production planning, the weight valueW
g
M
i
,
0
<
W
g
M
i
<
1
,
∑
i
=
1
t
W
g
M
i
=
1 of M
c
i is introduced when calculating M
c; in the same way, W
g
P
i
0
<
W
g
P
i
<
1
,
∑
i
=
1
t
W
g
P
i
=
1, W
g
O
p
0
<
W
g
O
p
<
1
,
∑
p
=
1
s
W
g
O
p
=
1, and W
g
D
i
0
<
W
g
D
i
<
1
,
∑
i
=
1
t
W
g
D
i
=
1 of P
c
i, O
c
p, and D
c
i are introduced, so (2) can be reformed into the following equation:(3)
T
C
c
=
∑
i
=
1
t
W
g
M
i
∗
M
c
i
+
∑
i
=
1
t
W
g
P
i
∗
P
c
i
+
∑
p
=
1
s
W
g
O
p
∗
O
c
p
+
∑
i
=
1
t
W
g
D
i
∗
D
c
i
.As follows, (4) to (8) have illustrated the value of each variable in (3).(
1)
M
c. There are different unit prices of different kinds of material, so this paper adopts (4) to summarize different material costs of different production tasks:(4)
M
c
i
=
∑
j
=
1
k
M
c
i
j
∗
ϕ
i
(5)
M
C
i
j
=
W
i
j
∗
R
j
R
T
i
,where ϕ
i
=
0,1 and ϕ
i
=
1 represents P
t
p
_
i containing material j; otherwise it does not, for i
=
1
,
2
,
…
,
t
,
j
=
1,2
,
…
,
m.(
2)
P
c. There are different unit costs of different kinds of processes, and different production tasks have different processes:(6)
P
c
i
=
∑
c
=
1
m
P
c
i
c
∗
λ
i
,where λ
i
=
0,1 and λ
i
=
1 represents P
t
p
_
i containing procedurec; otherwise it does not, for i
=
1
,
2
,
…
,
t
,
c
=
1,2
,
…
,
m.(
3)
O
c. As the same batch of planning must be completed before entering into next processing unit and the production times of different plans are different from each other, there will be some processing units in the state of waiting which could result in the facility occupy cost:(7)
O
c
p
=
O
p
∗
O
T
p
O
T
p
=
∑
i
=
1
t
max
⁡
O
T
P
i
p
-
O
T
P
i
p
.(
4)
D
c. Different kinds of factors will be taken into consideration when making the production plan, so it will delay some orders’ delivery date and that will also result in the delay cost:(8)
D
c
i
=
D
i
∗
D
T
i
,
D
i
=
ceil
∑
c
=
1
m
max
⁡
T
P
c
∗
λ
-
∑
c
=
1
m
T
P
i
c
∗
λ
24
,where c
e
i
l
(
x
) means obtaining the minimum integer which is greater than x.


## 3.2.2. Profit of Production Planning

Once all sales orders have been signed, the total amount (O
t) of all orders is determined which is obtained by (9). In Section 3.2.1, it is assumed that there are only four kinds of costs which have been taken into account in this mathematical model, which are material cost (M
c), process cost (P
c), delay cost (D
c), and occupy cost (O
c), so the profit of all sales orders (P
f, that is, the profit of production planning) is obtained by (10a). According to (2), (10a) can be reformed into (10b) which is shown as follows:(9)
O
t
=
∑
i
=
1
t
O
t
i
,
(10a)
P
f
=
O
t
-
T
C
c
,
(10b)
P
f
=
O
t
-
M
c
-
P
c
-
D
c
-
O
c
.


## 3.2.3. Capacity Constraint

In order to enhance the availability of the optimization model, there are some constrains that must be considered. According to the actual situation of foundry flow shop, the production capacity is determined, so actual production and processing capacity must be considered in the process of task arrangement. The volume of the furnace is certain, so it must be taken into consideration when modeling (molding and core making) and melting. Equation (11) is the sum of modeling quantities (W
i) of production tasks i which should be less than the production capacity of the processing unit (Cpu-Modeling) when modeling, and (12) is the sum of demand quantity of material of each production task which belongs to the same batch should be less than the production capacity of the processing unit when melting (Cpu-Melting).(11)
sum
W
i
≤
Cpu-Modeling
,
(12)
sum
W
i
j
≤
Cpu-Melting
.


## 4. Solution Approach

### 4.1. Improved Genetic Algorithm (IGA)

The genetic algorithm is a random global search algorithm which means that the process of biological evolution in nature and simulation of the survival of the fittest and also its scalability and robustness are better than other optimization algorithms, so it is often used to solve the optimization problem [35–38]. While traditional genetic algorithm is easy to converge prematurely and falls into the local optimum, one of the reasons is that it will cause many disadvantages by using the roulette method when parent solutions engender offspring solutions; the main disadvantages could be divided into two parts [39]:(1)
Some individuals with superior fitness can be evaluated rapidly which will cause the population to mature early and fall into local optimum.
(2)
There is much randomness in the process of evolution, and the unelected better individuals will cause the degradation of the population.In production planning problems of foundry industries, different scholars have proposed many different approaches by IGA. Wu et al. [40] tackled the issue by considering a two-machine flow shop problem with a truncated learning consideration, where the objective function is to minimize the makespan, and a branch-and-bound algorithm is first developed for the approximate optimal solution; then four genetic heuristic-based algorithms were proposed for the approximate optimal solution. Bandyopadhyay and Bhattacharya [41] proposed a modified genetic algorithm with a fuzzy variable crossover algorithm to minimize the value of total cost and bullwhip effect of a biobjective supplier selection problem. In comparison with a mixed-integer linear programming solver, genetic algorithm with problem-specific operators was found to provide faster (with a subquadratic computational time complexity) and more reliable solutions to very large (more than 1 million integer variables) casting sequence optimization problems [42]. Production planning problem considers the determination of machine assignment for each operation, which has been proven to a NP-hard problem, so Thammano and Teekeng [43] proposed a novel metaheuristic algorithm which was a modification of the genetic algorithm, and the proposed algorithm introduced two new concepts to the standard genetic algorithm: (1) fuzzy roulette wheel selection and (2) the mutation operation with tabu list. Worapradya and Thanakijkasem [44] developed an optimization model by integrating two main planning phases of traditional scheduling, (1) planning cast sequence and (2) scheduling of steel-making and timing of all jobs; at the same time a novel procedure was given for genetic algorithm chromosome coding which mapped Gantt chart and hierarchical chromosomes.Production planning based on the resource allocation belongs to discrete optimization problem; in the space of discrete solutions, the approximate optimal solution is not necessary in the range from subapproximate optimal solution to better solution and maybe there is just a little step between approximate optimal solution and worst solution. Therefore, the paper illustrates the IGA from two aspects: one is adopting different evolution modes for the solutions with different fitness to ensure the diversity of population and the other one is selecting different genetic operators in the different phase of algorithm which can improve adaptive ability and better approach the approximate optimal solution in a finite number of iterations. The main differences between the IGA and the parallel genetic algorithm (PGA) are iterative process and genetic operators: (1) the iterative process of IGA is the same as the traditional GA which is serial; there is only one initial population and the evolution process is continuous from one generation to next generation, while the iterative process of PGA is parallel and there are at least two different initial populations at beginning, which can ensure the populations evolution is in parallel model; (2) the kind of genetic operators of IGA can be divided into selection operator, crossover operator, and mutation operator, while another kind of operator must be introduced into PGA which is defined as transport operator; it plays a key role in constructing the communication bridge among different initial populations; (3) the values of genetic operator in IGA are alternative in different evolution phases, while they are always the same in the iterative process of PGA. Moore [45] has proposed an accurate parallel genetic algorithm to schedule tasks on a cluster; the key element is that the parallel scheduler used M-ary encoding and included a shared communication bus constraint. Ku et al. [46] used parallel simulated annealing and genetic algorithms based on a coarse-grained model to derive solutions for solving the static facility layout problem with rectangle shape areas. The parallel implementation of simulated annealing based genetic algorithm enabled a quick search for the approximate optimal solution. Trajkovski [47] presented parallel genetic algorithm that was used for the task of evolving imperative sort programs; the individual programs with simple assembler code were illustrated and the effect of different parameters on quality of the programs and time needed for finding the solution were reported. In conclusion, the flowchart of IGA is shown in Figure 2 and the details are illustrated as follows.Figure 2
The flowchart of IGA.


### 4.2. Chromosome Encoding

Chromosome encoding refers to transforming the feasible solution from its solution space to search space of genetic algorithm; chromosome represents a possible solution and its coding mode usually can be divided into four types: binary coding, real coding, symbol coding, and decimal coding. Taking into consideration the actual model, this paper adopts the decimal coding and an entire chromosome coding which contains production task coding, production task process coding, and material type coding. The detailed coding scheme is shown in Table1.Table 1
Chromosome encoding.
Number
Coding name
Coding scheme
1
Production task coding
1,2
,
3
,
…
,
t. The number is clustered according to a certain order to form an individual of the production task.
2
Production task process coding
1,2
,
3
,
…
,
m. The number is clustered according to a certain order to form an individual of the production task process.
3
Material type coding
1,2
,
3
,
…
,
M
T. The number is clustered according to a certain order to form an individual of the material type.
4
Decision variables
V
1, V
2. The proposed IGA is modified in two aspects: one is introducing two different evolution phases in the iterative process, and the other one is adopting different genetic operators in corresponding evolution phase. In order to divide the two different evolution phases clearly and accurately, the decision variables have been introduced and there are two conditions (V
1 and V
2) for switching two phases. V
1 represents the number of successive generations; V
2 represents the profit rate of order.Table 2
The component of actual process parameters and processing unit.
Name
Coding
P
c
i
c
¥
O
k
¥
Modeling (molding and core making)
1
40
200
Melting
2
30
150
Cleaning (cleaning and heat preservation)
3
16
140
Separating (casting separating)
4
28
150
Welding
5
28
200
Tempering (heat treatment)
6
32
180
Descaling
7
33
220
Shot blasting
8
30
160
Polishing
9
35
150
Machining
10
12
200
Delivering (packing and shipping)
11
20
120For example, the production planning with chromosome (PtpC) is 10,3
,
7,9
,
6,2
,
4,8
,
1,5, and according to the capacity constrain of processing unit, the scheduling order is (Ptp-1,Ptp-7:1), (Ptp-3,Ptp-6:2), (Ptp-5,Ptp-9:3), (Ptp-8:4), (Ptp-2,Ptp-10:5), (Ptp-4:6) which can be decoded into (10, 3:1), (7:2), (9, 6, 2:3), (4, 8:4), (1:5), (5:6) which is shown in Figure 3; the meaning of (10, 3:1) is that the processing order ofPtp-10 andPtp-3 is first, and (Ptp-7: 2) means processing order ofPtp-7 is second; the remainders can be explained in the same way.Figure 3
The scheduling order.Assume that there are eleven basic processes; that is, the value ofm is “11.” IfPtp-i contains process m (P
m), the decoded corresponding value is “1”; otherwise, the value is “0”; for example, the processes ofPtp-10 are P
1
,
P
2
,
P
3
,
P
5
,
P
6
,
P
8
,
P
10
,
P
11, so the decoded corresponding value of P
1
,
P
2
,
P
3
,
P
4
,
P
5
,
P
6
,
P
7
,
P
8
,
P
9
,
P
10
,
P
11 is 1,1
,
1,0
,
1,1
,
0,1
,
0,1
,
1. The material type ofPtp-10 is M
1, and the decoded corresponding value of material is 1.


### 4.3. Initialize Population

Initializing population of genetic algorithm has a great influence on the convergence speed and solution quality, and it is a key step in the process of genetic algorithm.(
1) Diversity of Population. The function Randperm(t) is cited to initialize population in many cases which can produce unrepeated set, which is a Matlab Function and is presented to describe the diversity as follows:(13)
P
=
Randperm
t
.Namely, randomly generate a set of numbers and the production planning is ranked according to these numbers’ order. For instance, ift
=
10, while P
=
10,3
,
7,9
,
6,2
,
4,8
,
1,5, so the order of production task is (Ptp-10,Ptp-3,Ptp-7,Ptp-9,Ptp-6,Ptp-2,Ptp-4,Ptp-8,Ptp-0,Ptp-5).Meanwhile, the algorithm will fall into local optimum because of unreasonable initialization, so the richness of population diversity must be taken into account during the chromosomes initialization, and, in order to ensure the diversity of population, the hamming distance, the adequacy coefficient, and the index of maximum and minimum level [48] are proposed to calculate a survival probability for the individuals; while, in this paper, the hamming distance is represented by the fitness value of population to solve the problem of diversity of population, it sets the value into 5% which is the profit rate of total orders, and the lower individual will be substituted with another random approximate optimal individual.(
2) Size of Population. In order to avoid the premature convergence and decrease the calculation amount, the population size cannot be too small or too large, and according to the actual application, the general population size is set into different value which is usually between 20 and 100.


### 4.4. Fitness Evaluation

Fitness function of genetic algorithm is transformed from the objective function of problems. The pros and cons of each chromosome quality in genetic algorithm are evaluated by using fitness function. The greater fitness value of chromosome is, the better quality of chromosome is. The minimum valuemin
⁡
D
O of total cost of production planning is obtained by (14). Because the total amount of all orders (O
t) is fixed, in order to standardize calculation process of IGA, the maximum profit rate of all orders (maxPr) is defined as the objective of IGA which is shown as (15):(14)
min
⁡
D
O
=
min
⁡
T
C
c
=
min
⁡
W
g
O
∗
O
c
+
min
⁡
W
g
D
∗
D
c
+
min
⁡
W
g
M
∗
M
c
+
min
⁡
W
g
P
∗
P
c
,
(15)
max
⁡
P
r
=
O
t
-
min
⁡
D
O
O
t
∗
100
%
.According to the proposed weight values of different factors in Section 3.1, (15) can be reformed into the following equation:(16)
max
⁡
P
r
=
O
t
-
∑
p
=
1
s
W
g
O
p
∗
O
c
p
-
∑
i
=
1
t
W
g
D
i
∗
D
c
i
-
∑
i
=
1
t
W
g
M
i
∗
M
c
i
-
∑
i
=
1
t
W
g
P
i
∗
P
c
i
O
t
∗
100
%
.


### 4.5. Two Different Phases

The convergence speed and efficiency of genetic algorithm are affected by the set of genetic operators (selection operatorPs, crossover operatorPc, and mutation operatorPm). The set of selection operator has a great effect on the convergence speed of algorithm, and the set of crossover operator and mutation operator will affect the ability of searching solution of algorithm. Therefore, in order to improve the adjustment ability and performance of algorithm [49–51], this paper adopts two different sets of genetic operators for the different phases of algorithm.In the first phase,Ps is set to a larger value 0.7
<
P
s
<
1 andPc andPm are set to a relative smaller value. An approximate optimal solution or a subapproximate optimal solution more easily with largerPs will be obtained. The value ofPc andPm in the first phase of algorithm is relatively smaller, and the global search ability of algorithm is mainly affected byPc andPm, so when the algorithm is running in a certain phase, it will search the approximate optimal solution, repetitively, in a subspace. So the genetic operators should be adjusted and the genetic algorithm would enter into the second search phase for eliminating the premature convergence of search; namely,Ps is set into a smaller value 0
<
P
s
<
0.3, andPc andPm must be set into a larger value, which can make more effective solutions involved in the crossover operator and mutation operator; it will generate more new solutions.Based on the changing of approximate optimal solution and judging rules, the two different search phases will be adopted in circulation. In the calculating process of one phase, different operators must satisfy the constraint, which is formulated in (17). It not only can ensure the diversity of population but also could avoid falling into local approximate optimal solution:(17)
P
s
+
P
c
+
P
m
=
1
Phase
_
1
:
0.7
<
P
s
<
1
,
0
<
P
c
+
P
m
≤
0.3
,
Phase
_
2
:
0
<
P
s
<
0.3
,
0.3
≤
P
c
+
P
m
≤
1
.


### 4.6. Selection Operator

The stochastic tournament strategy [52–54] and elite preservation strategy [55–57] are adopted in this paper of selection operator. The stochastic tournament strategy is implemented on the whole individuals, randomly chose a series of individuals, and retained the individual which has highest fitness to next generation. The elite preservation strategy is implemented on the global approximate optimal individuals to replace the worst individual in next generation, and the process can be illustrated as follows:(1)
SelectingN individuals from a group randomly and comparing their fitness value, the individual with the highest fitness should be retained to the next generation.
(2)
Repeating the above processM times, as a result, there will be M individuals from next generation.


### 4.7. Crossover Operator

The main purpose of crossover operator [58] is to generate better offspring by combining the genetic alleles of two selected parents from the population with probabilityPc; the crossover position is generated randomly and the crossover progress can be shown in Figure 4 and it can be illustrated as follows.Figure 4
The crossover operator.Firstly, randomly generate the crossover position (here are two intersections: 7-9-6-2-4, 2-1-8-9-3) forPtpC-1 andPtpC-2 and keep the middle serial number sequence unchanged.Secondly, record the serial number sequence ofPtpC-2 which is starting from the second intersection (10-5-7); when arriving at the end of the gene, return to the initial position (4-6-2-1-8-9-3) of a chromosome, and continue to record the serial number sequence ofPtpC-2 until reaching the second intersection which is calledPtpC-2-1 (10-5-7-4-6-2-1-8-9-3); and in the same way, we can obtainPtpC-1-1 (8-1-5-10-3-7-9-6-2-4).Thirdly, switch the sequence ofPtpC-1-1 andPtpC-2-1, and obtainPtpC-1-1 (10-5-7-4-6-2-1-8-9-3) andPtpC-2-1 (8-1-5-10-3-7-9-6-2-4);Fourthly, according to the remained middle serial number sequence ofPtpC-1 (7-9-6-2-4), remove the same serial numbers fromPtpC-1-1 (10-5-7-4-6-2-1-8-9-3) and the rest sequence ofPtpC-1-1 is (10-5-1-8-3).Fifthly, insert the remained middle serial number sequence ofPtpC-1 (7-9-6-2-4) into the rest sequence (10-5-1-8-3) ofPtpC-1-1 and the position of (7-9-6-2-4) is unchanged, and then we can obtain thePtpC-2 offspring (8-3-7-9-6-2-4-10-5-1).Sixthly, in the same way,PtpC-2 offspring (6-4-2-1-8-9-3-5-10-7) is obtained.


### 4.8. Mutation Operator

While the selection operator and crossover operator are the main operators of genetic algorithm, the mutation operator can change the diversity of the population and generate some useful offspring which will improve the local search ability of population. This paper adopts the position variation of the mutation operator in probability, randomly generating the mutation genes sequence and then selecting new genes from the related gene domain [59–61]. In addition, the value ofPm is usually set value in [0.001, 0.005].


### 4.9. Stopping Rule

The maximum value of the objective function is difficult to be determined; in order to avoid infinite loop of algorithm, the appropriate number of iterations needs to be set as the termination of algorithm, which means that when the number of iterations (I
g
e
n) is reaching the set value (m
a
x
_
I
g
e
n), the algorithm stops calculating.(18)
I
g
e
n
>
max
⁡
_
I
g
e
n
.


## 4.1. Improved Genetic Algorithm (IGA)

The genetic algorithm is a random global search algorithm which means that the process of biological evolution in nature and simulation of the survival of the fittest and also its scalability and robustness are better than other optimization algorithms, so it is often used to solve the optimization problem [35–38]. While traditional genetic algorithm is easy to converge prematurely and falls into the local optimum, one of the reasons is that it will cause many disadvantages by using the roulette method when parent solutions engender offspring solutions; the main disadvantages could be divided into two parts [39]:(1)
Some individuals with superior fitness can be evaluated rapidly which will cause the population to mature early and fall into local optimum.
(2)
There is much randomness in the process of evolution, and the unelected better individuals will cause the degradation of the population.In production planning problems of foundry industries, different scholars have proposed many different approaches by IGA. Wu et al. [40] tackled the issue by considering a two-machine flow shop problem with a truncated learning consideration, where the objective function is to minimize the makespan, and a branch-and-bound algorithm is first developed for the approximate optimal solution; then four genetic heuristic-based algorithms were proposed for the approximate optimal solution. Bandyopadhyay and Bhattacharya [41] proposed a modified genetic algorithm with a fuzzy variable crossover algorithm to minimize the value of total cost and bullwhip effect of a biobjective supplier selection problem. In comparison with a mixed-integer linear programming solver, genetic algorithm with problem-specific operators was found to provide faster (with a subquadratic computational time complexity) and more reliable solutions to very large (more than 1 million integer variables) casting sequence optimization problems [42]. Production planning problem considers the determination of machine assignment for each operation, which has been proven to a NP-hard problem, so Thammano and Teekeng [43] proposed a novel metaheuristic algorithm which was a modification of the genetic algorithm, and the proposed algorithm introduced two new concepts to the standard genetic algorithm: (1) fuzzy roulette wheel selection and (2) the mutation operation with tabu list. Worapradya and Thanakijkasem [44] developed an optimization model by integrating two main planning phases of traditional scheduling, (1) planning cast sequence and (2) scheduling of steel-making and timing of all jobs; at the same time a novel procedure was given for genetic algorithm chromosome coding which mapped Gantt chart and hierarchical chromosomes.Production planning based on the resource allocation belongs to discrete optimization problem; in the space of discrete solutions, the approximate optimal solution is not necessary in the range from subapproximate optimal solution to better solution and maybe there is just a little step between approximate optimal solution and worst solution. Therefore, the paper illustrates the IGA from two aspects: one is adopting different evolution modes for the solutions with different fitness to ensure the diversity of population and the other one is selecting different genetic operators in the different phase of algorithm which can improve adaptive ability and better approach the approximate optimal solution in a finite number of iterations. The main differences between the IGA and the parallel genetic algorithm (PGA) are iterative process and genetic operators: (1) the iterative process of IGA is the same as the traditional GA which is serial; there is only one initial population and the evolution process is continuous from one generation to next generation, while the iterative process of PGA is parallel and there are at least two different initial populations at beginning, which can ensure the populations evolution is in parallel model; (2) the kind of genetic operators of IGA can be divided into selection operator, crossover operator, and mutation operator, while another kind of operator must be introduced into PGA which is defined as transport operator; it plays a key role in constructing the communication bridge among different initial populations; (3) the values of genetic operator in IGA are alternative in different evolution phases, while they are always the same in the iterative process of PGA. Moore [45] has proposed an accurate parallel genetic algorithm to schedule tasks on a cluster; the key element is that the parallel scheduler used M-ary encoding and included a shared communication bus constraint. Ku et al. [46] used parallel simulated annealing and genetic algorithms based on a coarse-grained model to derive solutions for solving the static facility layout problem with rectangle shape areas. The parallel implementation of simulated annealing based genetic algorithm enabled a quick search for the approximate optimal solution. Trajkovski [47] presented parallel genetic algorithm that was used for the task of evolving imperative sort programs; the individual programs with simple assembler code were illustrated and the effect of different parameters on quality of the programs and time needed for finding the solution were reported. In conclusion, the flowchart of IGA is shown in Figure 2 and the details are illustrated as follows.Figure 2
The flowchart of IGA.


## 4.2. Chromosome Encoding

Chromosome encoding refers to transforming the feasible solution from its solution space to search space of genetic algorithm; chromosome represents a possible solution and its coding mode usually can be divided into four types: binary coding, real coding, symbol coding, and decimal coding. Taking into consideration the actual model, this paper adopts the decimal coding and an entire chromosome coding which contains production task coding, production task process coding, and material type coding. The detailed coding scheme is shown in Table1.Table 1
Chromosome encoding.
Number
Coding name
Coding scheme
1
Production task coding
1,2
,
3
,
…
,
t. The number is clustered according to a certain order to form an individual of the production task.
2
Production task process coding
1,2
,
3
,
…
,
m. The number is clustered according to a certain order to form an individual of the production task process.
3
Material type coding
1,2
,
3
,
…
,
M
T. The number is clustered according to a certain order to form an individual of the material type.
4
Decision variables
V
1, V
2. The proposed IGA is modified in two aspects: one is introducing two different evolution phases in the iterative process, and the other one is adopting different genetic operators in corresponding evolution phase. In order to divide the two different evolution phases clearly and accurately, the decision variables have been introduced and there are two conditions (V
1 and V
2) for switching two phases. V
1 represents the number of successive generations; V
2 represents the profit rate of order.Table 2
The component of actual process parameters and processing unit.
Name
Coding
P
c
i
c
¥
O
k
¥
Modeling (molding and core making)
1
40
200
Melting
2
30
150
Cleaning (cleaning and heat preservation)
3
16
140
Separating (casting separating)
4
28
150
Welding
5
28
200
Tempering (heat treatment)
6
32
180
Descaling
7
33
220
Shot blasting
8
30
160
Polishing
9
35
150
Machining
10
12
200
Delivering (packing and shipping)
11
20
120For example, the production planning with chromosome (PtpC) is 10,3
,
7,9
,
6,2
,
4,8
,
1,5, and according to the capacity constrain of processing unit, the scheduling order is (Ptp-1,Ptp-7:1), (Ptp-3,Ptp-6:2), (Ptp-5,Ptp-9:3), (Ptp-8:4), (Ptp-2,Ptp-10:5), (Ptp-4:6) which can be decoded into (10, 3:1), (7:2), (9, 6, 2:3), (4, 8:4), (1:5), (5:6) which is shown in Figure 3; the meaning of (10, 3:1) is that the processing order ofPtp-10 andPtp-3 is first, and (Ptp-7: 2) means processing order ofPtp-7 is second; the remainders can be explained in the same way.Figure 3
The scheduling order.Assume that there are eleven basic processes; that is, the value ofm is “11.” IfPtp-i contains process m (P
m), the decoded corresponding value is “1”; otherwise, the value is “0”; for example, the processes ofPtp-10 are P
1
,
P
2
,
P
3
,
P
5
,
P
6
,
P
8
,
P
10
,
P
11, so the decoded corresponding value of P
1
,
P
2
,
P
3
,
P
4
,
P
5
,
P
6
,
P
7
,
P
8
,
P
9
,
P
10
,
P
11 is 1,1
,
1,0
,
1,1
,
0,1
,
0,1
,
1. The material type ofPtp-10 is M
1, and the decoded corresponding value of material is 1.


## 4.3. Initialize Population

Initializing population of genetic algorithm has a great influence on the convergence speed and solution quality, and it is a key step in the process of genetic algorithm.(
1) Diversity of Population. The function Randperm(t) is cited to initialize population in many cases which can produce unrepeated set, which is a Matlab Function and is presented to describe the diversity as follows:(13)
P
=
Randperm
t
.Namely, randomly generate a set of numbers and the production planning is ranked according to these numbers’ order. For instance, ift
=
10, while P
=
10,3
,
7,9
,
6,2
,
4,8
,
1,5, so the order of production task is (Ptp-10,Ptp-3,Ptp-7,Ptp-9,Ptp-6,Ptp-2,Ptp-4,Ptp-8,Ptp-0,Ptp-5).Meanwhile, the algorithm will fall into local optimum because of unreasonable initialization, so the richness of population diversity must be taken into account during the chromosomes initialization, and, in order to ensure the diversity of population, the hamming distance, the adequacy coefficient, and the index of maximum and minimum level [48] are proposed to calculate a survival probability for the individuals; while, in this paper, the hamming distance is represented by the fitness value of population to solve the problem of diversity of population, it sets the value into 5% which is the profit rate of total orders, and the lower individual will be substituted with another random approximate optimal individual.(
2) Size of Population. In order to avoid the premature convergence and decrease the calculation amount, the population size cannot be too small or too large, and according to the actual application, the general population size is set into different value which is usually between 20 and 100.


## 4.4. Fitness Evaluation

Fitness function of genetic algorithm is transformed from the objective function of problems. The pros and cons of each chromosome quality in genetic algorithm are evaluated by using fitness function. The greater fitness value of chromosome is, the better quality of chromosome is. The minimum valuemin
⁡
D
O of total cost of production planning is obtained by (14). Because the total amount of all orders (O
t) is fixed, in order to standardize calculation process of IGA, the maximum profit rate of all orders (maxPr) is defined as the objective of IGA which is shown as (15):(14)
min
⁡
D
O
=
min
⁡
T
C
c
=
min
⁡
W
g
O
∗
O
c
+
min
⁡
W
g
D
∗
D
c
+
min
⁡
W
g
M
∗
M
c
+
min
⁡
W
g
P
∗
P
c
,
(15)
max
⁡
P
r
=
O
t
-
min
⁡
D
O
O
t
∗
100
%
.According to the proposed weight values of different factors in Section 3.1, (15) can be reformed into the following equation:(16)
max
⁡
P
r
=
O
t
-
∑
p
=
1
s
W
g
O
p
∗
O
c
p
-
∑
i
=
1
t
W
g
D
i
∗
D
c
i
-
∑
i
=
1
t
W
g
M
i
∗
M
c
i
-
∑
i
=
1
t
W
g
P
i
∗
P
c
i
O
t
∗
100
%
.


## 4.5. Two Different Phases

The convergence speed and efficiency of genetic algorithm are affected by the set of genetic operators (selection operatorPs, crossover operatorPc, and mutation operatorPm). The set of selection operator has a great effect on the convergence speed of algorithm, and the set of crossover operator and mutation operator will affect the ability of searching solution of algorithm. Therefore, in order to improve the adjustment ability and performance of algorithm [49–51], this paper adopts two different sets of genetic operators for the different phases of algorithm.In the first phase,Ps is set to a larger value 0.7
<
P
s
<
1 andPc andPm are set to a relative smaller value. An approximate optimal solution or a subapproximate optimal solution more easily with largerPs will be obtained. The value ofPc andPm in the first phase of algorithm is relatively smaller, and the global search ability of algorithm is mainly affected byPc andPm, so when the algorithm is running in a certain phase, it will search the approximate optimal solution, repetitively, in a subspace. So the genetic operators should be adjusted and the genetic algorithm would enter into the second search phase for eliminating the premature convergence of search; namely,Ps is set into a smaller value 0
<
P
s
<
0.3, andPc andPm must be set into a larger value, which can make more effective solutions involved in the crossover operator and mutation operator; it will generate more new solutions.Based on the changing of approximate optimal solution and judging rules, the two different search phases will be adopted in circulation. In the calculating process of one phase, different operators must satisfy the constraint, which is formulated in (17). It not only can ensure the diversity of population but also could avoid falling into local approximate optimal solution:(17)
P
s
+
P
c
+
P
m
=
1
Phase
_
1
:
0.7
<
P
s
<
1
,
0
<
P
c
+
P
m
≤
0.3
,
Phase
_
2
:
0
<
P
s
<
0.3
,
0.3
≤
P
c
+
P
m
≤
1
.


## 4.6. Selection Operator

The stochastic tournament strategy [52–54] and elite preservation strategy [55–57] are adopted in this paper of selection operator. The stochastic tournament strategy is implemented on the whole individuals, randomly chose a series of individuals, and retained the individual which has highest fitness to next generation. The elite preservation strategy is implemented on the global approximate optimal individuals to replace the worst individual in next generation, and the process can be illustrated as follows:(1)
SelectingN individuals from a group randomly and comparing their fitness value, the individual with the highest fitness should be retained to the next generation.
(2)
Repeating the above processM times, as a result, there will be M individuals from next generation.


## 4.7. Crossover Operator

The main purpose of crossover operator [58] is to generate better offspring by combining the genetic alleles of two selected parents from the population with probabilityPc; the crossover position is generated randomly and the crossover progress can be shown in Figure 4 and it can be illustrated as follows.Figure 4
The crossover operator.Firstly, randomly generate the crossover position (here are two intersections: 7-9-6-2-4, 2-1-8-9-3) forPtpC-1 andPtpC-2 and keep the middle serial number sequence unchanged.Secondly, record the serial number sequence ofPtpC-2 which is starting from the second intersection (10-5-7); when arriving at the end of the gene, return to the initial position (4-6-2-1-8-9-3) of a chromosome, and continue to record the serial number sequence ofPtpC-2 until reaching the second intersection which is calledPtpC-2-1 (10-5-7-4-6-2-1-8-9-3); and in the same way, we can obtainPtpC-1-1 (8-1-5-10-3-7-9-6-2-4).Thirdly, switch the sequence ofPtpC-1-1 andPtpC-2-1, and obtainPtpC-1-1 (10-5-7-4-6-2-1-8-9-3) andPtpC-2-1 (8-1-5-10-3-7-9-6-2-4);Fourthly, according to the remained middle serial number sequence ofPtpC-1 (7-9-6-2-4), remove the same serial numbers fromPtpC-1-1 (10-5-7-4-6-2-1-8-9-3) and the rest sequence ofPtpC-1-1 is (10-5-1-8-3).Fifthly, insert the remained middle serial number sequence ofPtpC-1 (7-9-6-2-4) into the rest sequence (10-5-1-8-3) ofPtpC-1-1 and the position of (7-9-6-2-4) is unchanged, and then we can obtain thePtpC-2 offspring (8-3-7-9-6-2-4-10-5-1).Sixthly, in the same way,PtpC-2 offspring (6-4-2-1-8-9-3-5-10-7) is obtained.


## 4.8. Mutation Operator

While the selection operator and crossover operator are the main operators of genetic algorithm, the mutation operator can change the diversity of the population and generate some useful offspring which will improve the local search ability of population. This paper adopts the position variation of the mutation operator in probability, randomly generating the mutation genes sequence and then selecting new genes from the related gene domain [59–61]. In addition, the value ofPm is usually set value in [0.001, 0.005].


## 4.9. Stopping Rule

The maximum value of the objective function is difficult to be determined; in order to avoid infinite loop of algorithm, the appropriate number of iterations needs to be set as the termination of algorithm, which means that when the number of iterations (I
g
e
n) is reaching the set value (m
a
x
_
I
g
e
n), the algorithm stops calculating.(18)
I
g
e
n
>
max
⁡
_
I
g
e
n
.


## 5. Illustrative Example and Performance Analysis

In order to demonstrate the application of the proposed model and algorithm, the authors investigate the actual production process of a foundry company in Anhui province of China. The products of the company are mainly casting productions according to customers’ demand for the production, and it is a typical small- and medium-sized enterprise of sand casting production; there are about 400 employees; its annual output is about 10000 tons and quarterly production capacity is about 3000 tons. As usual, a completed product will undergo many different processes like modeling, melting, cleaning, dividing, and so on, and as production capacity of the processing units is different, making a flexible production plan is very important. During the process of the algorithm’s implementation, the integer encoding type is adopted for gene encoding in Tables2 and 3, and different processes of different orders are shown in Table 4; from Process-1 to Process-11 is consistent with the details of process which are illustrated in Table 2. While the molding and coring making are different processes, the processing times of them may be different, but, in the case, the molding and core making are continuous processes and are done by the same team, so in order to better achieve the approximate optimal results, we combined them as one process “modeling.”Table 3
The component production planning information of total amount of the orders, material, unit price of material, casting weight, and yield of casting.
Ptp-n
Order total (¥)
Material coding
Unit price of material (¥)
Casting weight (T)
Yield of casting
Actual input raw material weight (T)
1
104000
2
1600
20
68%
30
2
114000
1
1500
25
70%
36
3
120600
2
1600
30
68%
45
4
98000
2
1600
32
66%
49
5
120000
2
1600
28
75%
34
6
134400
2
1600
22
71%
31
7
108000
1
1500
34
72%
48
8
124200
2
1600
30
65%
47
9
128900
2
1600
26
62%
42
10
134600
2
1600
27
74%
37Table 4
The component of production planning’s process.
Ptp-n
1
2
3
4
5
6
7
8
9
10
Process time (hours) of different process
Process-1
36
42
32
24
36
36
48
48
40
25
Process-2
20
22
18
20
15
20
18
22
22
18
Process-3
24
24
48
24
24
24
72
48
24
24
Process-4
16
12
12
14
16
16
14
12
12
10
Process-5
24
24
44
24
44
24
84
84
44
24
Process-6
25
28
32
25
25
30
20
25
25
25
Process-7
0
24
0
20
18
32
0
24
16
14
Process-8
20
14
24
20
20
16
16
22
24
10
Process-9
24
0
20
20
0
18
18
24
24
9
Process-10
100
140
0
120
120
0
0
0
80
200
Process-11
22
28
12
16
20
20
24
24
20
19


### 5.1. Computational Outcomes

The parameters of proposed IGA are population size, generation number, selection ratio, crossover ratio, and mutation ratio, which are shown in Table5 after running some pilot tests. There are two conditions of switching two phases of genetic algorithm and one of them must be satisfied:(1)
There are successive same five generation approximate optimal solutions for the genetic algorithm.
(2)
The profit rate of order is less than 5%.Table 5
The specific parameters.
Phase
Population size
Generation number
Cpu-Modeling (T)
Cpu-Melting (T)
P
s
P
c
P
m
1
40
100
80
80
0.85
0.145
0.005
2
40
100
80
80
0.25
0.745
0.005The IGA has been coded in Matlab R2013a and runs on a 2.6 GHz Intel(R) Core(TM) i5-3230M CPU with 4 G RAM in Windows 7 platform. After executing the Matlab codes with input parameters, an approximate optimal solution set is(Ptp-1,Ptp-7:1), (Ptp-3,Ptp-6:2), (Ptp-5,Ptp-9:3), (Ptp-8:4), (Ptp-2,Ptp-10:5), (Ptp-4:6) which is shown in Figure 5; the meaning of (Ptp-1,Ptp-7:1) is that the processing order ofPtp-1 andPtp-7 is first, and (Ptp-3,Ptp-6: 2) means that processing order ofPtp-3 andPtp-6 is second; the remainders can be explained in the same way. The profit rate of this approximate optimal solution is 15.05% and the convergence curve is shown in Figure 6; the comparison of signed delivery date and actual delivery date is illustrated in Table 6.Table 6
The comparison of delivery dates.
Ptp-n
Ptp-1
Ptp-2
Ptp-3
Ptp-4
Ptp-5
Ptp-6
Ptp-7
Ptp-8
Ptp-9
Ptp-10
Signed delivery date (day)
20
20
24
25
22
26
19
24
25
29
Actual delivery date (day)
19
34
19
38
26
19
19
27
26
34
Delay days (day)
−1
14
−5
13
4
−7
0
3
1
7Figure 5
Gantt chart of an approximate optimal solution set ofPtp-n order.Figure 6
Convergence curves of improved GA (best profit rate is 15.05%).


### 5.2. Comparison Experiment

To demonstrate the effectiveness of IGA, the comparison experiment has been carried out with comparing the obtained results with traditional genetic algorithm (Matičević et al., 2008 [25]), memetic algorithm (MA) (Gao et al. 2011 [62]), PGA (Ku et al. 2011 [46]), Iterative Backward List Scheduling Algorithm (IBLSA) (Jiang et al. 2015 [63]), and Tabu Search (TS) (Costa et al. 2015 [64]). The results of calculation based on the IGA in 30 calculation times are shown in Table 7 and the best profit rate is 15.05%. Table 8 presents the compared results which refer to the average profit rate and best profit rate. It can be observed from Table 8 that the proposed genetic algorithm is significantly better than the other four compared algorithms. The algorithm exhibiting the next best performance is TS algorithm, which clearly performs better than the other three algorithms. At the same time, the real result from company manager has been obtained and the value of best profit rate is 9.15%, which is lower than the results of five optimization algorithms.Table 7
The results of IGA.
Number
The approximate optimal solution sets ofPtp-n
Profit rate
1
(7, 1:1)
(2, 6:2)
(4:3)
(10:4)
(3, 5:5)
(8:6)
(9:7)
14.30%
2
(3, 1:1)
(6, 9:2)
(4:3)
(10, 5:4)
(8:5)
(2:6)
(7:7)
13.12%
3
(1, 3:1)
(5:2)
(7, 6:3)
(2, 10:4)
(4:5)
(9:6)
(8:7)
12.32%
4
(1, 3:1)
(6, 5:2)
(2:3)
(7:4)
(9:5)
(8:6)
(10:7)
(4:8)
14.93%
5
(3, 1:1)
(6, 9:2)
(10:3)
(4:4)
(5:5)
(7:6)
(8:7)
(2:8)
13.41%
6
(7, 1:1)
(2, 6:2)
(5, 3:3)
(9:4)
(8:5)
(4:6)
(10:7)
11.96%
7
(1, 7:1)
(3, 6:2)
(5, 9:3)
(8:4)
(2, 10:5)
(4:6)
15.05%
8
(1, 3:1)
(4:2)
(10, 9:3)
(6, 5:4)
(8:5)
(2:6)
(7:7)
13.12%
9
(1, 3:1)
(9, 6:2)
(4:3)
(10, 5:4)
(7:5)
(8:6)
(2:7)
13.41%
10
(1, 3:1)
(4:2)
(10, 9:3)
(6, 5:4)
(7:5)
(2:6)
(8:7)
13.41%
11
(3, 1:1)
(9:2)
(8, 6:3)
(5, 2:4)
(7:5)
(10:6)
(4:7)
14.39%
12
(3, 1:1)
(8, 6:2)
(2:3)
(7:4)
(5, 9:5)
(4:6)
(10:7)
14.01%
13
(3, 1:1)
(9, 6:2)
(5:3)
(7:4)
(10:5)
(4:6)
(8:7)
(2:8)
13.57%
14
(3, 1:1)
(9, 2:2)
(6, 4:3)
(8:4)
(5, 10:5)
(7:6)
8.06%
15
(3, 1:1)
(6, 2:2)
(9:3)
(8:4)
(4:5)
(10, 5:6)
(7:7)
12.06%
16
(3, 1:1)
(6, 9:2)
(5:3)
(7:4)
(2:5)
(8:6)
(10:7)
(4:8)
15.01%
17
(3, 1:1)
(2:2)
(8, 6:3)
(9:4)
(7:5)
(5, 10:6)
(4:7)
14.43%
18
(3:1)
(8:2)
(2, 1:3)
(6, 4:4)
(10, 5:5)
(9:6)
(7:7)
9.29%
19
(3, 1:1)
(7, 6:2)
(10:3)
(4:4)
(5:5)
(9, 2:6)
(8:7)
13.50%
20
(1, 3:1)
(6, 7:2)
(2, 9:3)
(10:4)
(4:5)
(5:6)
(8:7)
10.79%
21
(3, 1:1)
(8:2)
(9, 6:3)
(5, 10:4)
(4:5)
(2:6)
(7:7)
14.30%
22
(1, 7:1)
(9, 6:2)
(5, 3:3)
(10:4)
(4:5)
(8:6)
(2:7)
13.57%
23
(3, 1:1)
(8:2)
(2:3)
(4, 6:4)
(5, 9:5)
(10:6)
(7:7)
10.41%
24
(1, 3:1)
(10:2)
(4, 6:3)
(5, 2:4)
(7:5)
(9:6)
(8:7)
14.05%
25
(7, 1:1)
(3, 6:2)
(9, 2:3)
(4:4)
(10, 5:5)
(8:6)
10.96%
26
(3, 1:1)
(5, 6:2)
(4:3)
(10, 2:4)
(7:5)
(9:6)
(8:7)
15.01%
27
(7, 1:1)
(6, 3:2)
(10:3)
(4:4)
(5, 9:5)
(8:6)
(2:7)
13.66%
28
(1, 7:1)
(6, 3:2)
(2:3)
(8:4)
(5, 9:5)
(10:6)
(4:7)
14.28%
29
(7, 1:1)
(5, 3:2)
(6, 2:3)
(10:4)
(4:5)
(9:6)
(8:7)
11.32%
30
(7, 1:1)
(2, 6:2)
(4:3)
(10:4)
(3, 5:5)
(8:6)
(9:7)
11.35%Table 8
The results comparison.
Algorithms
IGA
Traditional GA
MA
PGA
IBLSA
TS
Real result from company
Calculation times
30
30
30
30
30
30
×
Average profit rate
13.31%
12.93%
13.01%
13.17%
13.12%
13.24%
×
Best profit rate
15.05%
14.45%
14.67%
14.88%
14.76%
14.91%
9.15%The best result of traditional genetic algorithm is 14.45% and the convergence curve is shown in Figure7, and the actual profit rate is 9.15%, which is offered by the company manager in actual manufacturing environment. Although the quality of the final solution obtained for both approaches is approximately equivalent for profit rate of production planning which is shown in Table 8, there is a slight difference among the approximate optimal value returned by them. In a more precise way, the proposed IGA can find a better solution set compared to traditional genetic algorithm and the real result of company manager in terms of statistical significance.Figure 7
Convergence curves of traditional GA (best profit rate is 14.45%).According to the results of proposed mathematical model, the approximate optimal solutions might be varied to decrease the production cost and the enterprise manager can select it to arrange production planning in a practice situation. Furthermore, if the required data is gathered, the proposed model could be easily coded and applied by industrial/computer engineer who is familiar with operations research and optimization software like Matlab. Also, an expert system with user-friendly interface could be also designed to facilitate the proposed model by the nonexpert personnel of the enterprise managers.


## 5.1. Computational Outcomes

The parameters of proposed IGA are population size, generation number, selection ratio, crossover ratio, and mutation ratio, which are shown in Table5 after running some pilot tests. There are two conditions of switching two phases of genetic algorithm and one of them must be satisfied:(1)
There are successive same five generation approximate optimal solutions for the genetic algorithm.
(2)
The profit rate of order is less than 5%.Table 5
The specific parameters.
Phase
Population size
Generation number
Cpu-Modeling (T)
Cpu-Melting (T)
P
s
P
c
P
m
1
40
100
80
80
0.85
0.145
0.005
2
40
100
80
80
0.25
0.745
0.005The IGA has been coded in Matlab R2013a and runs on a 2.6 GHz Intel(R) Core(TM) i5-3230M CPU with 4 G RAM in Windows 7 platform. After executing the Matlab codes with input parameters, an approximate optimal solution set is(Ptp-1,Ptp-7:1), (Ptp-3,Ptp-6:2), (Ptp-5,Ptp-9:3), (Ptp-8:4), (Ptp-2,Ptp-10:5), (Ptp-4:6) which is shown in Figure 5; the meaning of (Ptp-1,Ptp-7:1) is that the processing order ofPtp-1 andPtp-7 is first, and (Ptp-3,Ptp-6: 2) means that processing order ofPtp-3 andPtp-6 is second; the remainders can be explained in the same way. The profit rate of this approximate optimal solution is 15.05% and the convergence curve is shown in Figure 6; the comparison of signed delivery date and actual delivery date is illustrated in Table 6.Table 6
The comparison of delivery dates.
Ptp-n
Ptp-1
Ptp-2
Ptp-3
Ptp-4
Ptp-5
Ptp-6
Ptp-7
Ptp-8
Ptp-9
Ptp-10
Signed delivery date (day)
20
20
24
25
22
26
19
24
25
29
Actual delivery date (day)
19
34
19
38
26
19
19
27
26
34
Delay days (day)
−1
14
−5
13
4
−7
0
3
1
7Figure 5
Gantt chart of an approximate optimal solution set ofPtp-n order.Figure 6
Convergence curves of improved GA (best profit rate is 15.05%).


## 5.2. Comparison Experiment

To demonstrate the effectiveness of IGA, the comparison experiment has been carried out with comparing the obtained results with traditional genetic algorithm (Matičević et al., 2008 [25]), memetic algorithm (MA) (Gao et al. 2011 [62]), PGA (Ku et al. 2011 [46]), Iterative Backward List Scheduling Algorithm (IBLSA) (Jiang et al. 2015 [63]), and Tabu Search (TS) (Costa et al. 2015 [64]). The results of calculation based on the IGA in 30 calculation times are shown in Table 7 and the best profit rate is 15.05%. Table 8 presents the compared results which refer to the average profit rate and best profit rate. It can be observed from Table 8 that the proposed genetic algorithm is significantly better than the other four compared algorithms. The algorithm exhibiting the next best performance is TS algorithm, which clearly performs better than the other three algorithms. At the same time, the real result from company manager has been obtained and the value of best profit rate is 9.15%, which is lower than the results of five optimization algorithms.Table 7
The results of IGA.
Number
The approximate optimal solution sets ofPtp-n
Profit rate
1
(7, 1:1)
(2, 6:2)
(4:3)
(10:4)
(3, 5:5)
(8:6)
(9:7)
14.30%
2
(3, 1:1)
(6, 9:2)
(4:3)
(10, 5:4)
(8:5)
(2:6)
(7:7)
13.12%
3
(1, 3:1)
(5:2)
(7, 6:3)
(2, 10:4)
(4:5)
(9:6)
(8:7)
12.32%
4
(1, 3:1)
(6, 5:2)
(2:3)
(7:4)
(9:5)
(8:6)
(10:7)
(4:8)
14.93%
5
(3, 1:1)
(6, 9:2)
(10:3)
(4:4)
(5:5)
(7:6)
(8:7)
(2:8)
13.41%
6
(7, 1:1)
(2, 6:2)
(5, 3:3)
(9:4)
(8:5)
(4:6)
(10:7)
11.96%
7
(1, 7:1)
(3, 6:2)
(5, 9:3)
(8:4)
(2, 10:5)
(4:6)
15.05%
8
(1, 3:1)
(4:2)
(10, 9:3)
(6, 5:4)
(8:5)
(2:6)
(7:7)
13.12%
9
(1, 3:1)
(9, 6:2)
(4:3)
(10, 5:4)
(7:5)
(8:6)
(2:7)
13.41%
10
(1, 3:1)
(4:2)
(10, 9:3)
(6, 5:4)
(7:5)
(2:6)
(8:7)
13.41%
11
(3, 1:1)
(9:2)
(8, 6:3)
(5, 2:4)
(7:5)
(10:6)
(4:7)
14.39%
12
(3, 1:1)
(8, 6:2)
(2:3)
(7:4)
(5, 9:5)
(4:6)
(10:7)
14.01%
13
(3, 1:1)
(9, 6:2)
(5:3)
(7:4)
(10:5)
(4:6)
(8:7)
(2:8)
13.57%
14
(3, 1:1)
(9, 2:2)
(6, 4:3)
(8:4)
(5, 10:5)
(7:6)
8.06%
15
(3, 1:1)
(6, 2:2)
(9:3)
(8:4)
(4:5)
(10, 5:6)
(7:7)
12.06%
16
(3, 1:1)
(6, 9:2)
(5:3)
(7:4)
(2:5)
(8:6)
(10:7)
(4:8)
15.01%
17
(3, 1:1)
(2:2)
(8, 6:3)
(9:4)
(7:5)
(5, 10:6)
(4:7)
14.43%
18
(3:1)
(8:2)
(2, 1:3)
(6, 4:4)
(10, 5:5)
(9:6)
(7:7)
9.29%
19
(3, 1:1)
(7, 6:2)
(10:3)
(4:4)
(5:5)
(9, 2:6)
(8:7)
13.50%
20
(1, 3:1)
(6, 7:2)
(2, 9:3)
(10:4)
(4:5)
(5:6)
(8:7)
10.79%
21
(3, 1:1)
(8:2)
(9, 6:3)
(5, 10:4)
(4:5)
(2:6)
(7:7)
14.30%
22
(1, 7:1)
(9, 6:2)
(5, 3:3)
(10:4)
(4:5)
(8:6)
(2:7)
13.57%
23
(3, 1:1)
(8:2)
(2:3)
(4, 6:4)
(5, 9:5)
(10:6)
(7:7)
10.41%
24
(1, 3:1)
(10:2)
(4, 6:3)
(5, 2:4)
(7:5)
(9:6)
(8:7)
14.05%
25
(7, 1:1)
(3, 6:2)
(9, 2:3)
(4:4)
(10, 5:5)
(8:6)
10.96%
26
(3, 1:1)
(5, 6:2)
(4:3)
(10, 2:4)
(7:5)
(9:6)
(8:7)
15.01%
27
(7, 1:1)
(6, 3:2)
(10:3)
(4:4)
(5, 9:5)
(8:6)
(2:7)
13.66%
28
(1, 7:1)
(6, 3:2)
(2:3)
(8:4)
(5, 9:5)
(10:6)
(4:7)
14.28%
29
(7, 1:1)
(5, 3:2)
(6, 2:3)
(10:4)
(4:5)
(9:6)
(8:7)
11.32%
30
(7, 1:1)
(2, 6:2)
(4:3)
(10:4)
(3, 5:5)
(8:6)
(9:7)
11.35%Table 8
The results comparison.
Algorithms
IGA
Traditional GA
MA
PGA
IBLSA
TS
Real result from company
Calculation times
30
30
30
30
30
30
×
Average profit rate
13.31%
12.93%
13.01%
13.17%
13.12%
13.24%
×
Best profit rate
15.05%
14.45%
14.67%
14.88%
14.76%
14.91%
9.15%The best result of traditional genetic algorithm is 14.45% and the convergence curve is shown in Figure7, and the actual profit rate is 9.15%, which is offered by the company manager in actual manufacturing environment. Although the quality of the final solution obtained for both approaches is approximately equivalent for profit rate of production planning which is shown in Table 8, there is a slight difference among the approximate optimal value returned by them. In a more precise way, the proposed IGA can find a better solution set compared to traditional genetic algorithm and the real result of company manager in terms of statistical significance.Figure 7
Convergence curves of traditional GA (best profit rate is 14.45%).According to the results of proposed mathematical model, the approximate optimal solutions might be varied to decrease the production cost and the enterprise manager can select it to arrange production planning in a practice situation. Furthermore, if the required data is gathered, the proposed model could be easily coded and applied by industrial/computer engineer who is familiar with operations research and optimization software like Matlab. Also, an expert system with user-friendly interface could be also designed to facilitate the proposed model by the nonexpert personnel of the enterprise managers.


## 6. Conclusion and Future Work

With the changing of product mode of foundry enterprise, the personalized demands of customers are more and more obvious and the status of customers is becoming higher. Almost the whole foundry enterprises are reconstructing the production structure, so how to reasonably and effectively arrange the production plan is the key problem. Combined with analysis of former researches and literatures, based on the practical manufacturing environment of foundry enterprise, an optimization mathematical model of production planning is proposed and the objective is to promote the profit rate of a certain amount of orders. In order to obtain the approximate optimal solution, a modification of traditional genetic algorithm is introduced. The IGA is mainly illustrated in two aspects: one is adopting two different phases of the process of algorithm with the different genetic operators being set separately for different phases and the other one is using two different converting rules for two different phases of algorithm; one rule is that according to the actual requirement of foundry enterprise the profit rate of orders must be higher than 5% and the other rule is that five times approximate optimal solutions are continuously appearing. Finally, an example and comparison with other algorithms are given to illustrate the proposed model and IGA. The experimental results have shown that the proposed approach is able to achieve better profit rate of orders in actual foundry industry more effectively.In the aspect concerning the limitations of this research, it is important to notice that the constraints of this mathematical model are not the same as the actual situation of foundry enterprise, whereas there are human resource limitations, facility limitations, and transportation cost, so more factors could be taken into account in the model of production planning. A simple algorithm is often used to solve the approximate optimal solution of the mathematical problem; when more factors are introduced into the model which will increase the complexity, a hybrid algorithm should be used to solve it. Concerning the limitations of this research proposed in previous section, the suggestions for further research are listed as follows:(1)
More different factors could be introduced into the mathematical model of production planning, such as the human cost and transportation cost.
(2)
A hybrid algorithm could be used to solve the production planning problem, for example, combining the advantage of Tabu Search algorithm for the higher local optimal solution with genetic algorithm, which could avoid fast convergence and promote the efficiency of algorithm.



---

*Source: 6315613-2017-01-16.xml*