The demand for large-scale offshore wind turbines, with 8–12 MW units becoming the mainstream, has driven the need for massive thick-walled ductile iron casting components such as hubs, main shafts, bearing housings, and front frames. A single ductile iron casting for these applications can weigh between 20 to 60 tonnes. This presents a significant production challenge: the gross weight of a single casting often exceeds the safe melting capacity of any single furnace available in a typical foundry. Consequently, it is impossible to produce the required molten iron for one such ductile iron casting in a single melt, or “heat.” The only feasible solution is to employ multiple furnaces to melt simultaneously, pooling their output to meet the substantial pouring weight requirement. This necessity transforms the production planning problem at the melting stage. The core challenge is no longer just grouping smaller castings into efficient heats but intelligently partitioning large orders across multiple parallel furnaces while simultaneously batching smaller orders, all under constraints of material compatibility and delivery deadlines. This complex problem, if not solved systematically, leads to severe underutilization of furnace capacity, increased energy consumption from excessive heats, and potential delays in order delivery.

Our research addresses this gap by developing a dedicated multi-heat planning model for the melting stage, specifically designed to handle the unique requirements of producing large wind turbine ductile iron casting components. The model’s objective is to maximize the value of each planned production run by simultaneously considering the urgency of orders and the utilization of furnace capacity. We propose a hybrid genetic whale optimization algorithm (HGWOA) to solve this model efficiently. Validation using real-world data from a specialized foundry demonstrates that our approach significantly improves furnace utilization and reduces the total number of heats required compared to manual scheduling methods.
1. Problem Description and Mathematical Formulation
The production flow in a typical job-shop foundry involves several stages: pattern making, core making, molding, melting, pouring, and cleaning. The melting stage is often the bottleneck. For standard castings, the lot-sizing or heat planning problem involves grouping multiple small orders that share the same alloy specification into a single heat to be melted in one furnace, thereby optimizing setup and energy costs. However, for large wind turbine ductile iron casting components, this paradigm breaks down.
The fundamental characteristic of our problem is the existence of two types of orders based on weight relative to a single furnace’s capacity \(Q_{max}\):
- Non-Splittable Orders: Castings with a weight \(N_l \leq Q_{max}\). Due to technical limitations like the number of gating points, the entire molten metal for such a casting must come from a single furnace. It can either be assigned entirely to one furnace in a heat or not scheduled at all.
- Splittable Orders: Large castings with a weight \(N_l > Q_{max}\). The required metal must be split and supplied by multiple furnaces melting simultaneously. Once scheduled, the entire weight \(N_l\) of the order must be allocated across several furnaces, with each furnace contributing a fraction of the total weight.
All orders grouped into the same simultaneous melting batch (i.e., planned for the same pour) must be of the identical material grade (e.g., QT400, QT500). The goal is to create a schedule for a planning period (e.g., one night’s production) that determines which orders are grouped together for simultaneous pouring and how the molten metal for that group is allocated across the available parallel furnaces, respecting their individual capacities.
1.1 Mathematical Model
We construct a multi-heat planning model with the following assumptions:
- The total weight of a single casting scheduled must not exceed the sum of the safe melting capacities of all furnaces planned for that batch.
- Furnaces scheduled in the same batch start and finish melting simultaneously to allow for coordinated pouring.
- Each furnace’s melt is entirely used for pouring the assigned orders, with no leftover metal.
The notations and decision variables for the model are defined below.
| Symbol | Description |
|---|---|
| Sets and Indices | |
| \(L\) | Total number of orders/tasks. |
| \(l\) | Index for an order, \(l = 1, 2, …, L\). |
| \(K\) | Total number of furnaces available per batch. |
| \(k\) | Index for a furnace, \(k = 1, 2, …, K\). |
| \(N\) | Number of material grades. |
| \(n\) | Index for a material grade. |
| Parameters | |
| \(N_l\) | Weight (e.g., in kg) of order \(l\). |
| \(V_l\) | Remaining slack time until the delivery due date of order \(l\). |
| \(Q_k\) | Safe melting capacity of furnace \(k\). |
| \(M_l\) | Material grade index of order \(l\). |
| \(T_k\) | Material grade assigned to furnace \(k\) (a decision outcome). |
| Decision Variables | |
| \(P_{lk}\) | The proportion of order \(l\)’s weight assigned to furnace \(k\). \(0 \leq P_{lk} \leq 1\). |
To integrate delivery urgency into the scheduling decision, we define a priority value \(U_l\) for each order \(l\). A common approach is to use the reciprocal of the remaining time, emphasizing more urgent orders:
$$ U_l = \frac{1}{V_l} $$
This ensures that orders with shorter delivery times receive higher priority values.
The objective function aims to maximize the total “melting value” of a scheduled batch. We define the value contributed by an order as the product of its weight (representing its claim on furnace capacity) and its delivery priority \(U_l\) (representing its business urgency). The total value for a batch is the sum of this product over all scheduled orders. Therefore, the objective function is:
$$ \text{Maximize } Z = \sum_{l=1}^{L} \sum_{k=1}^{K} (N_l \cdot U_l) \cdot P_{lk} $$
This formulation has a multiplicative effect within the sum. It encourages the scheduler to:
- Select orders with high priority \(U_l\) (meeting deadlines).
- Fill furnace capacities as much as possible by selecting orders with significant weight \(N_l\).
If two schedule proposals have similar total weight, the one with higher-priority orders will yield a larger \(Z\). Conversely, if priority levels are similar, the proposal melting more total weight is favored. This effectively combines the two key goals into a single, optimizable metric.
The model is subject to the following constraints:
1. Order Completion Constraint: Each order is either fully scheduled across the furnaces in the batch or not scheduled at all. For a splittable large ductile iron casting (\(N_l > Q_{max}\)), the sum of proportions must be 1 or 0. For a non-splittable casting (\(N_l \leq Q_{max}\)), the sum must be either 1 (meaning it’s fully assigned to one furnace, with \(P_{lk}=1\) for that \(k\)) or 0. This logic is encapsulated in the constraint that the variable \(P_{lk}\) must be chosen to satisfy full allocation or none.
$$ \sum_{k=1}^{K} P_{lk} \in \{0, 1\} \quad \forall l \in \{l | N_l \leq Q_{max}\} $$
$$ \sum_{k=1}^{K} P_{lk} \in [0, 1] \quad \forall l \in \{l | N_l > Q_{max}\} $$
In practice, for non-splittable orders, \(P_{lk}\) is forced to be binary during solution.
2. Furnace Capacity Constraint: The total weight assigned to any furnace cannot exceed its safe melting capacity.
$$ \sum_{l=1}^{L} N_l \cdot P_{lk} \leq Q_k \quad \forall k = 1, 2, …, K $$
3. Material Compatibility Constraint: All orders assigned to a given furnace must be of the same material grade. This can be enforced by ensuring that if any proportion of an order \(l\) with material \(M_l\) is assigned to furnace \(k\), then the furnace’s material variable \(T_k\) must equal \(M_l\). A linear formulation can involve big-M constraints.
$$ T_k = M_l \quad \text{if } P_{lk} > 0, \quad \forall l, k $$
This ensures that a single heat in one furnace is chemically consistent.
4. Variable Domain Constraints:
$$ 0 \leq P_{lk} \leq 1 \quad \forall l, k $$
$$ T_k \in \{1, 2, …, N\} \quad \forall k $$
2. Solution Strategy and Hybrid Algorithm
The formulated model presents a complex combinatorial optimization problem with mixed-integer variables and disjoint constraint spaces for splittable and non-splittable orders. To solve it efficiently, we decompose the problem into a three-stage heuristic strategy:
- Order Grouping by Material: Partition all pending orders into subsets based solely on their material grade (e.g., all QT400 orders together). The scheduling problem is then solved independently for each material group, as they cannot be mixed.
- Batch Formation (What to Pour Together): For a given material group, determine the optimal subset of orders to be melted and poured in the next simultaneous batch. This is essentially a complex knapsack problem where the “knapsack” is the combined capacity of the K parallel furnaces, and items (orders) have different weights and values (\(N_l \cdot U_l\)), with some items being divisible.
- Task Allocation (Weight Distribution): Given a selected batch of orders, determine the exact weight proportion \(P_{lk}\) of each order to be assigned to each furnace \(k\), satisfying the capacity and variable-type constraints. This stage resolves how to split the large ductile iron casting orders.
2.1 Hybrid Genetic Whale Optimization Algorithm (HGWOA) for Batch Formation
Stage 2, the batch formation, is the core optimization challenge. We propose a Hybrid Genetic Whale Optimization Algorithm (HGWOA) to solve this complex knapsack problem. Standard Whale Optimization Algorithm (WOA) is known for its fast convergence but can get trapped in local optima. Genetic Algorithm (GA) has better global search ability but converges slower. HGWOA merges the exploitation strengths of WOA with the exploration mechanisms of GA.
Encoding: A solution is represented as a binary chromosome of length \(L’\) (number of orders in the current material group). A gene value of ‘1’ indicates the corresponding order is selected for the current batch; ‘0’ means it is not.
Improved Fitness Function: The fitness of a chromosome (batch) is the total melting value of the selected orders, which is exactly our objective function \(Z\). For a selected set \(S\):
$$ Fitness = \sum_{l \in S} (N_l \cdot U_l) $$
This directly drives the algorithm to maximize batch value.
Improved Constraint Handling & Chromosome Repair: Two critical constraints must be satisfied for a batch to be feasible for the subsequent allocation stage:
- Total Weight Constraint: The total weight of selected orders must not exceed the sum of all furnace capacities in the batch: \(\sum_{l \in S} N_l \leq \sum_{k=1}^{K} Q_k\).
- Splittability/Capacity Matching Constraint: This is crucial for handling large ductile iron casting components. Let’s assume furnaces are sorted in descending capacity \(Q_1 \geq Q_2 \geq … \geq Q_K\). For the batch to be allocatable, the number of selected orders with weight \(w > Q_2\) must be \(\leq 1\), orders with weight \(w > Q_3\) must be \(\leq 2\), and so on. Violating this means there is no feasible way to distribute the large orders across the furnaces. We enforce this through a greedy repair mechanism. If an infeasible chromosome is generated, we repair it by first sorting selected orders by their value-to-weight ratio (\(U_l\)) in ascending order and flipping their genes from ‘1’ to ‘0’ until the capacity matching constraint is met. Then, we further repair for total weight constraint by similarly removing low-value orders until the total weight constraint is satisfied.
HGWOA Procedure:
- Initialization: Generate a random population of binary chromosomes.
- Iteration: For each generation:
- Evaluate fitness for all individuals.
- Identify the best solution (the “lead whale”).
- For each individual (whale):
- Generate random numbers \(p\) and \(A\), where \(|A|\) controls exploration/exploitation.
- If \(p < 0.5\):
- If \(|A| \geq 1\) (Exploration): Select a random individual from the population. Perform a crossover operation (e.g., two-point crossover) between the current whale and the random whale to update the current position (chromosome).
- If \(|A| < 1\) (Exploitation): Perform crossover between the current whale and the best whale to update its position.
- If \(p \geq 0.5\): Perform a mutation operation (e.g., bit-flip mutation) on the current whale to emulate the bubble-net attacking behavior, promoting local search.
- Apply the constraint handling and repair mechanism to all new individuals.
- Termination: Repeat until a maximum number of generations is reached. The best individual represents the optimal set of orders for the batch.
2.2 Task Allocation via Linear Programming
Once the batch orders \(S\) are fixed by HGWOA, Stage 3 becomes a linear programming (LP) or mixed-integer linear programming (MILP) problem to determine \(P_{lk}\). The objective is simply to find a feasible allocation. The constraints are:
$$ \sum_{l \in S} N_l \cdot P_{lk} \leq Q_k \quad \forall k $$
$$ \sum_{k=1}^{K} P_{lk} = 1 \quad \forall l \in S_{\text{splittable}} $$
$$ \sum_{k=1}^{K} P_{lk} \in \{0, 1\} \quad \forall l \in S_{\text{non-splittable}} $$
$$ 0 \leq P_{lk} \leq 1 $$
This problem is of manageable size and can be solved efficiently using standard solvers like the `intlinprog` function in MATLAB, which handles the integer constraints for non-splittable orders.
3. Experimental Validation and Results
We validated our model and HGWOA using real production data from a foundry specializing in wind turbine components. The typical nightly operation uses two medium-frequency induction furnaces, each with a safe melting capacity \(Q_{max}\) = 20,000 kg. Accounting for yield, the required melt weight is 1.1 times the casting’s gross weight. The test dataset contained 191 pending orders for ductile iron casting components, categorized into three material groups as shown below.
| Material Grade | Number of Orders | Typical Application |
|---|---|---|
| QT400 | 116 | Hubs, Brackets |
| QT500 | 21 | Main Shafts, Gearbox Housings |
| QT600 | 54 | High-Stress Components |
Applying our algorithm, we generated a detailed melting schedule for a full night’s production (8 heats total, 4 per furnace). An example heat plan is presented below, demonstrating the handling of a large splittable ductile iron casting (Order 98).
| Order ID | Material | Gross Weight (kg) | Furnace 1 Melt (kg) | Furnace 2 Melt (kg) |
|---|---|---|---|---|
| 9 | QT400 | 1,028 | 0 | 1,130.8 |
| 71 | QT400 | 1,240 | 0 | 1,364.0 |
| 23 | QT400 | 920 | 0 | 1,012.0 |
| 98 | QT400 | 21,800 | 20,000.0 | 3,980.0 |
| 15 | QT400 | 1,033 | 0 | 1,136.3 |
| 17 | QT400 | 1,100 | 0 | 1,210.0 |
| Total per Furnace | 20,000.0 | 9,833.1 |
Order 98, a large ductile iron casting, is split between the two furnaces, with Furnace 1 at full capacity and Furnace 2 supplying the remainder. Smaller orders fill the leftover capacity in Furnace 2. The furnace capacity utilization for this heat is:
Furnace 1: \( \frac{20,000}{20,000} \times 100\% = 100.00\% \)
Furnace 2: \( \frac{9,833.1}{20,000} \times 100\% = 49.17\% \) (Note: For this specific batch, the total weight of available small orders limited a perfect fill. The algorithm prioritized high-value orders, and the overall nightly average is the key metric).
The average utilization across all 8 heats scheduled for the night was calculated at 99.77%.
To assess the overall effectiveness, we compared the schedule produced by our intelligent system against the foundry’s historical manual scheduling for the same order set.
| Metric | Manual Scheduling | Intelligent Scheduling (Our Model) | Improvement |
|---|---|---|---|
| Average Furnace Utilization | 86.57% | 95.89% | +10.76% |
| Total Heats Required | 42 | 39 | -7.14% (3 fewer heats) |
The results demonstrate a substantial improvement. The 10.76% increase in average furnace utilization translates directly to lower energy cost per tonne of good casting and higher effective throughput. Reducing the total number of heats by 3 saves significant furnace preheating time and energy, contributing to lower production costs and a smaller carbon footprint for manufacturing these critical ductile iron casting components.
3.1 Algorithm Performance Analysis
We further evaluated the performance of HGWOA against two standard algorithms often used for such problems: Particle Swarm Optimization (PSO) and the standard Genetic Algorithm (GA). Each algorithm was run 20 times on test instances of varying complexity (different numbers of material groups). The population size was 500, and the termination condition was 300 generations.
| Material Groups | Metric | PSO | GA | HGWOA (Our Method) |
|---|---|---|---|---|
| 1 Group | Time (s) | 2.25 | 6.34 | 2.53 |
| Best Fitness (×10⁴) | 3.1842 | 3.2178 | 3.2198 | |
| Avg. Fitness (×10⁴) | 2.9935 | 3.0114 | 3.0230 | |
| 2 Groups | Time (s) | 3.42 | 10.98 | 3.85 |
| Best Fitness (×10⁴) | 3.1911 | 3.2169 | 3.2113 | |
| Avg. Fitness (×10⁴) | 3.0222 | 3.0928 | 3.0989 | |
| 3 Groups | Time (s) | 11.12 | 17.24 | 12.18 |
| Best Fitness (×10⁴) | 3.2945 | 3.2961 | 3.2969 | |
| Avg. Fitness (×10⁴) | 3.0521 | 3.1121 | 3.1255 |
The analysis reveals that HGWOA consistently offers a superior balance between solution quality and computational speed. While PSO is the fastest, it converges prematurely to lower-quality solutions (lower Best and Average Fitness), indicating its susceptibility to local optima. The standard GA finds high-quality solutions but is significantly slower. Our HGWOA achieves solution quality comparable to or better than GA (especially evident in the average fitness for complex, 3-group problems) while maintaining a execution time much closer to that of PSO. This makes HGWOA particularly suitable for practical, time-sensitive production planning environments where both schedule quality and planning speed are critical for efficient ductile iron casting production.
4. Conclusion
This research successfully addresses the critical production scheduling challenge in foundries producing large wind turbine ductile iron casting components. The proposed multi-heat planning model effectively integrates the need to split oversized castings across multiple furnaces with the traditional batch-sizing problem for smaller castings. By formulating an objective function that multiplies order weight by delivery priority, the model simultaneously optimizes for furnace capacity utilization and on-time delivery performance.
The three-stage heuristic solution strategy, centered on the innovative Hybrid Genetic Whale Optimization Algorithm (HGWOA), provides an efficient and effective method for solving this NP-hard problem. HGWOA demonstrates superior performance by combining the fast convergence of swarm intelligence with the robust global search of evolutionary algorithms, all while incorporating problem-specific constraint handling and repair mechanisms.
Validation with real industrial data confirms the practical value of the approach. Compared to manual scheduling, the intelligent system boosted average furnace utilization by over 10% and reduced the total number of required heats, leading to direct cost savings in energy and time. This methodology provides a powerful decision-support tool for foundries, enabling them to better manage the complexities of modern, large-scale ductile iron casting production, improve resource efficiency, and enhance their competitive edge in the demanding wind energy market. Future work will focus on integrating upstream constraints from molding capacity and downstream constraints from pouring logistics to create an even more comprehensive production planning system.
