Optimization of Melting and Pouring Charge Plans for Sand Casting Products

In the contemporary manufacturing landscape, sand casting remains a pivotal process for producing a wide array of metal components. For enterprises specializing in single-piece and small-batch production of sand casting products, the efficiency of melting and pouring operations is a critical determinant of overall productivity and competitiveness. Currently, the scheduling of melting and pouring charges—often referred to as furnace charge plans—in such enterprises heavily relies on manual experience. This approach frequently leads to suboptimal plans, low scheduling efficiency, and underutilization of furnace capacity, thereby constraining business growth. Addressing these challenges, we have conducted comprehensive research to develop a systematic methodology for optimizing charge plans. This article presents our work on establishing a priority and mathematical model, designing an effective solving strategy based on an improved binary bat algorithm, and implementing an intelligent charge plan system. Our focus is squarely on enhancing the planning process for sand casting products, ensuring that high-priority items are produced efficiently while maximizing resource use.

The production of sand casting products in a single-piece, small-batch environment is characterized by high variety, low volume, and stringent customer requirements. Each order may involve unique geometries, materials, and deadlines, making the consolidation of multiple orders into a single furnace charge a complex optimization problem. Traditional manual scheduling struggles to balance factors such as delivery urgency, customer importance, and production load, often resulting in plans that are neither timely nor cost-effective. Our research aims to transform this process by introducing data-driven models and intelligent algorithms. By doing so, we seek to not only improve the quality of charge plans but also significantly reduce the time required for scheduling and increase the utilization of melting furnaces. The subsequent sections detail our modeling approach, algorithmic innovations, and practical system implementation, all centered around the efficient production of sand casting products.

To systematically address the charge plan problem, we first developed a priority model that quantifies the relative importance of different sand casting products awaiting production. This model incorporates three key indicators: delivery date, customer credit rating, and production load. Each indicator is normalized and weighted to produce a composite priority score for each product.

The delivery date priority for a product i is calculated to reflect its urgency. Let \(d_i\) be the number of days until the deadline for product i. From the current set of products awaiting scheduling, we define \(\max(d)\) and \(\min(d)\) as the maximum and minimum values of \(d_i\), respectively. The normalized delivery priority \(P_{id}\) is given by:

$$P_{id} = \frac{\max(d) – d_i}{\max(d) – \min(d)}$$

This formulation ensures that \(P_{id}\) ranges between 0 and 1, with values closer to 1 indicating higher urgency (i.e., a nearer deadline). Thus, sand casting products with impending delivery dates receive a higher priority score.

Customer credit rating is another crucial factor. Enterprises often categorize clients into qualitative levels (e.g., A, B, C). To integrate this into our quantitative model, we employ fuzzy evaluation theory. The credit ratings are mapped to a continuous domain [0,1] using membership functions. For instance, the membership functions for ratings A through E are defined as:

$$\mu_{A}(x) = \begin{cases} 5x – 4, & 0.8 < x \leq 1 \\ 0, & 0 < x \leq 0.8 \end{cases}$$

$$\mu_{B}(x) = \begin{cases} 5x – 3, & 0.6 < x \leq 0.8 \\ 0, & 0 < x \leq 0.6, 0.8 < x \leq 1 \end{cases}$$

$$\mu_{C}(x) = \begin{cases} 5x – 2, & 0.4 < x \leq 0.6 \\ 0, & 0 < x \leq 0.4, 0.6 < x \leq 1 \end{cases}$$

$$\mu_{D}(x) = \begin{cases} 5x – 1, & 0.2 < x \leq 0.4 \\ 0, & 0 < x \leq 0.2, 0.4 < x \leq 1 \end{cases}$$

$$\mu_{E}(x) = \begin{cases} 5x, & 0 \leq x \leq 0.2 \\ 0, & 0.2 < x \leq 1 \end{cases}$$

Using the centroid method for defuzzification, we obtain precise values \(P_{ix}\) for each rating, as summarized in the table below:

Credit Rating Fuzzy Interval Precise Value \(P_{ix}\)
A [0.8, 1] 14/15
B [0.6, 0.8] 11/15
C [0.4, 0.6] 8/15
D [0.2, 0.4] 1/3
E [0, 0.2] 2/15

A higher \(P_{ix}\) indicates a more reputable customer, and thus their sand casting products are assigned greater priority.

The production load considers模具 constraints. For product i, let \(U_i\) be the current quantity awaiting scheduling and \(b_i\) be the maximum number of pieces that can be molded per day per pattern. The production load \(t_i\) in days is:

$$t_i = \text{ceil}\left(\frac{U_i}{b_i}\right)$$

where \(\text{ceil}(\cdot)\) is the ceiling function. This load is normalized to obtain \(P_{it}\):

$$P_{it} = \frac{t_i – \min(t)}{\max(t) – \min(t)}$$

Here, \(\max(t)\) and \(\min(t)\) are the maximum and minimum production loads across all products. A higher \(P_{it}\) signifies a larger production burden, warranting higher scheduling priority to manage workload effectively.

The overall priority score \(P_i\) for a sand casting product i is then computed as a weighted sum:

$$P_i = w_1 P_{id} + w_2 P_{ix} + w_3 P_{it}$$

where \(w_1\), \(w_2\), and \(w_3\) are weighting coefficients that sum to 1. These weights can be adjusted based on enterprise policies, allowing dynamic prioritization of sand casting products according to evolving business needs.

With the priority model established, we formulate the charge plan problem as an integer programming model. Consider a planning horizon of one working day with L furnace charges to be scheduled. Let N be the number of distinct sand casting products awaiting production. Each product i has a gross weight \(m_i\) (in kg) and a priority score \(P_i\). The decision variable \(x_{il}\) represents the quantity of product i assigned to charge l. The objective is to maximize the total prioritized weight melted during the day:

$$\max \sum_{l=1}^{L} \sum_{i=1}^{N} P_i m_i x_{il}$$

This objective function encourages both the selection of high-priority sand casting products and the full utilization of furnace capacity.

The model is subject to several practical constraints. First, each charge must respect furnace capacity and material compatibility. Suppose there are K material families (groups of sand casting products that can be melted together). Let \(S(k)\) denote the set of products belonging to material family k. For each charge l and material family k, we have:

$$\sum_{i \in S(k)} m_i x_{il} \leq \text{cap} \cdot Y_{lk}, \quad k = 1, \ldots, K$$

where cap is the available capacity of the furnace (e.g., 4000 kg), and \(Y_{lk}\) is a binary variable indicating whether charge l uses material family k (1 if yes, 0 otherwise). Furthermore, each charge must be assigned exactly one material family:

$$\sum_{k=1}^{K} Y_{lk} = 1, \quad l = 1, \ldots, L$$

Second, sand box availability constraints must be considered. Let W be the number of sand box specifications. For each specification w, the total number of sand casting products requiring that box cannot exceed the available count \(C_w\):

$$\sum_{l=1}^{L} \sum_{i=1}^{N} a_{wi} x_{il} \leq C_w, \quad w = 1, \ldots, W$$

where \(a_{wi}\) is the number of boxes of type w needed for one unit of product i.

Third, daily molding capacity limits the quantity of each product that can be produced per day due to pattern constraints:

$$\sum_{l=1}^{L} x_{il} \leq b_i, \quad i = 1, \ldots, N$$

Finally, the total scheduled quantity for each product cannot exceed its pending order quantity \(U_i\):

$$\sum_{l=1}^{L} x_{il} \leq U_i, \quad i = 1, \ldots, N$$

and the binary nature of \(Y_{lk}\) is enforced:

$$Y_{lk} \in \{0, 1\}, \quad l=1,\ldots,L, \; k=1,\ldots,K$$

This model captures the essential trade-offs in scheduling furnace charges for sand casting products, aiming to deliver a plan that is both timely and efficient.

Solving the above integer programming model for real-world instances, which may involve hundreds of sand casting products, requires an efficient metaheuristic approach. We developed an Improved Binary Bat Algorithm (IBBA) tailored for this charge plan problem. The standard Bat Algorithm (BA) is a swarm intelligence technique inspired by the echolocation behavior of bats, known for its effectiveness in continuous optimization. For binary decision spaces, we adapt it with a novel encoding and search mechanism.

In our IBBA, each bat (solution) represents a potential charge plan for a specific material family. For a family with N products, a bat is encoded as an N-bit binary string \(x_j = (x_{j1}, x_{j2}, \ldots, x_{jN})\), where \(x_{ji}=1\) indicates that product i is included in the charge, and 0 otherwise. The initial population is generated using a probability vector \(P = (0.5, \ldots, 0.5)\) to ensure uniform exploration of the search space.

A key innovation is the introduction of a state vector to guide global and local searches in the binary domain. For each bat j at iteration t, the state vector \(l_j(t) = (l_{j1}(t), \ldots, l_{jN}(t))\) is maintained, where \(l_{ji}(t) \in [0,1]\) represents the probability that \(x_{ji}=0\). The bat’s position is updated based on this state vector:

$$x_{ji}(t) = \begin{cases} 1, & \text{if rand} > l_{ji}(t) \\ 0, & \text{otherwise} \end{cases}$$

where rand is a random number uniformly drawn from [0,1].

For global search, the state vector is updated towards the best solution found so far, \(x^*(t)\). Specifically:

$$l_{\text{global}}(t) = \beta_1 x^*(t) + \beta_2 (1 – x^*(t))$$

where \(\beta_1\) and \(\beta_2\) are control constants with \(\beta_1 + \beta_2 = 1\). Then, each bat’s state vector evolves as:

$$l_j(t+1) = (1 – f_j) l_j(t) + f_j l_{\text{global}}(t), \quad j=1,\ldots,\text{NP}$$

Here, \(f_j\) is the frequency of bat j, influencing the balance between exploration and exploitation. This mechanism allows the population to collectively converge towards promising regions while maintaining diversity.

For local search, a subset of bits in a bat is perturbed to refine the solution. The number of bits c to modify is determined by:

$$c = \min\{N, \text{round}(N \times \bar{A_t} \times \text{rand})\}$$

where \(\bar{A_t}\) is the average loudness of the population at iteration t, and round(·) denotes rounding to the nearest integer. The specific bit positions are selected randomly via a permutation. For each selected bit i, the corresponding state value is adjusted:

$$s_{ji} = l_{ji} + \text{rand} \times \bar{A_t}$$

and a new bit value is generated as \(x_{ji}(\text{new}) = 1\) if rand > \(s_{ji}\), else 0. This local perturbation helps escape local optima.

We also enhanced the solution acceptance criterion. Instead of the original BA’s condition involving loudness, we accept a new solution if it improves upon the parent solution; otherwise, it is rejected. This modification accelerates convergence and reduces stagnation. Furthermore, we hybridized IBBA with elements from the Cuckoo Search (CS) algorithm. A proportion \(p_a\) of the worst solutions are replaced by new solutions generated through a logical OR operation between the current solution and the global best solution. This OR-based regeneration, shown in the table below, injects beneficial traits from the best solution into the population, promoting faster convergence.

Bit in Current Solution Bit in Best Solution Result of OR Operation
1 1 1
1 0 1
0 1 1
0 0 0

The IBBA iterates until a stopping criterion (e.g., maximum iterations) is met, yielding an optimized charge plan for each material family. This algorithm effectively handles the combinatorial complexity of assigning sand casting products to furnace charges while respecting all constraints.

To translate our research into practical impact, we developed an intelligent Melting and Pouring Charge Plan System tailored for single-piece, small-batch sand casting enterprises. The system adopts a client-server architecture, integrating seamlessly with existing enterprise resource planning (ERP) systems via dedicated APIs. This ensures real-time data synchronization and user-friendly operation within familiar workflows.

The system comprises two core modules: the Material Family Module and the Charge Plan Module. The Material Family Module allows managers to define and modify groups of sand casting products that share compatible melting materials, accommodating enterprise-specific standards and practices. The Charge Plan Module is the heart of the system, providing an interactive interface for schedulers. It displays pending orders for sand casting products, their priorities, and constraints. The scheduler can set parameters such as the number of furnace charges per day and available furnace capacity, then invoke the IBBA-based solver to generate optimized plans.

The system’s interface, as illustrated above, is designed for clarity and efficiency, showing detailed lists of sand casting products and recommended charge plans. The intelligent scheduling section executes the IBBA algorithm, typically returning a high-quality plan within seconds. Results are presented in both summary and detail views, including the selected material family, total gross weight, number of sand casting products included, and the computation time for each charge.

We deployed this system at a representative sand casting enterprise, referred to as HX Company, which specializes in single-piece and small-batch production. Prior to implementation, HX relied entirely on manual scheduling, where experienced planners would spend 6-8 minutes per furnace charge to select sand casting products based on intuition and rough estimates of furnace capacity. This process was not only time-consuming but also led to inconsistent furnace utilization and occasional delays for high-priority orders.

To evaluate the system’s effectiveness, we conducted a series of tests using real production data. For instance, on a typical day, there were 44 material families with pending orders for sand casting products, encompassing a wide range of quantities and weights. A snapshot of the task data is shown below:

Material Family ID Number of Product Types Total Net Weight (kg) Total Gross Weight (kg)
CZJ001 41 22,448 35,856.2
CZJ002 165 43,460 75,318.5
CZJ003 41 10,390 17,519.1
CZJ004 89 40,045 69,390.2
CZJ005 248 29,601 55,853.7
CZJ033 192 98,244 147,820.2
CZJ034 481 32,392 60,707.9
CZJ044 23 13,809 19,019.5

Given a furnace capacity of 4000 kg and a requirement to schedule four charges for the day, the system quickly generated the following plan:

Charge Number Material Family ID Total Gross Weight (kg) Number of Product Types Computation Time (s)
1 CZJ033 3,990 8 2.20
2 CZJ001 3,870 5 2.21
3 CZJ034 3,940 8 2.19
4 CZJ028 3,998 13 2.19

The plan demonstrates excellent furnace utilization, with each charge approaching the 4000 kg limit. Moreover, the selected material families correspond to sand casting products with high priority scores, ensuring that urgent and valuable orders are processed promptly. The average scheduling time per charge was merely 2.2 seconds, a dramatic reduction from the manual approach.

To assess long-term benefits, we compared furnace utilization metrics before and after system implementation. The table below shows the average weight poured per charge for two months post-implementation (February and March 2019) against earlier periods:

Period Average Weight per Charge (kg) Change
February 2018 (Pre) 3,491.6 Baseline
March 2018 (Pre) 3,512.4
December 2018 (Pre) 3,506.8 Baseline
January 2019 (Pre) 3,486.3
February 2019 (Post) 3,657.1 ~5% Increase
March 2019 (Post) 3,678.8

The data indicates a consistent improvement of approximately 5% in furnace capacity utilization after deploying our system. This enhancement directly translates to higher throughput and better resource management for producing sand casting products. Furthermore, planners reported reduced cognitive load and increased confidence in meeting delivery commitments, as the system provides a reproducible, optimized schedule that aligns with business priorities.

In summary, our research addresses a critical operational challenge in single-piece, small-batch sand casting enterprises: the efficient scheduling of melting and pouring charges. By developing a quantitative priority model that incorporates delivery dates, customer credit, and production load, we established a clear criterion for selecting sand casting products for each furnace charge. The integer programming formulation captures essential constraints, ensuring feasibility in terms of furnace capacity, material compatibility, sand box availability, and daily production limits. To solve this complex model, we engineered an Improved Binary Bat Algorithm that efficiently explores the binary decision space through state-vector-guided global and local searches, enhanced with a hybrid cuckoo search strategy for faster convergence.

The practical implementation of an intelligent charge plan system demonstrates tangible benefits. When applied to a real sand casting enterprise, the system generated optimized charge plans in seconds—far quicker than manual scheduling—while achieving higher furnace utilization and better adherence to priority orders. The integration with existing ERP systems ensures smooth adoption and minimal disruption to workflows. Ultimately, this work contributes to the broader goal of advancing smart manufacturing in the foundry industry. By leveraging algorithmic optimization, enterprises can enhance their competitiveness through improved efficiency, reduced costs, and greater customer satisfaction in the production of sand casting products. Future work may extend this approach to dynamic scheduling environments or incorporate additional factors such as energy consumption and real-time equipment status, further refining the planning process for complex manufacturing operations.

Scroll to Top