All Blog Posts

Calibration of a Thermal Model for Automotive Oil-Cooled Motors

/images/blog/calibration-of-a-thermal-model/title-img.png

With advancements in electric vehicle (EV) technology, the power density of drive motors has significantly increased, intensifying the challenge of effective thermal management in electric drive systems. Among available cooling methods, oil cooling has emerged as a promising solution because cooling oil is non-conductive and non-magnetic, allowing it to come into direct contact with high-heat-generating components, such as stator windings, to dissipate heat efficiently. This makes it a critical medium for next-generation EV powertrain systems.

Research into oil-cooled motor systems is therefore vital for improving thermal performance and reliability in electric vehicles. However, in direct oil-cooled motor configurations, the coolant lacks fixed flow channels, and the convective heat transfer coefficient between the oil and the motor components is typically determined empirically. This introduces uncertainties in simulation accuracy, often resulting in deviations between numerical predictions and experimental observations.

To address this challenge, the present study employs the multi-objective optimization package pymoo to calibrate an automotive oil-cooled motor model developed using the CAE software shonTA. The optimization performance of two algorithms, Non-Dominated Sorting Genetic Algorithm II (NSGA-II) and NSGA-III, is systematically evaluated to determine their efficacy in improving model fidelity and predictive accuracy.

1. Mathematical Definition of Multi-Objective Optimization Problems

In pymoo, a multi-objective optimization problem is mathematically formulated as follows:

minf(x)=[f1(x),f2(x),,fM(x)]\min f(x) = [f_1(x), f_2(x), \ldots, f_M(x)]

subject to:

gi(x)0,hj(x)=0g_i(x) \leq 0, \quad h_j(x) = 0

and bounds:

xlxxux_l \leq x \leq x_u

Here, f(x)f(x) represents the objective function vector. In cases where an objective requires maximization, it can be equivalently reformulated as a minimization problem by negating the objective function.

The functions g(x)g(x) and h(x)h(x) denote the sets of inequality and equality constraints, respectively. Not all optimization problems necessarily involve constraints; the presence and type of constraints depend on the specific problem formulation. Notably, satisfying equality constraints is typically more challenging than handling inequality constraints.

Finally, xlx_l and xux_u represent the lower and upper bounds, defining the feasible search space for the optimization problem.

2. Pymoo Multi-Objective Optimization Algorithms

Pymoo provides a wide array of optimization algorithms, detailed on the pymoo official website (pymoo.org). This blog selects the multi-objective algorithms NSGA-II and NSGA-III for investigation.

NSGA Algorithms: Non-dominated Sorting Genetic Algorithms. Compared to simple genetic algorithms, NSGA employs a non-dominated hierarchical approach, enabling superior individuals to have a greater chance of being passed on to the next generation.

NSGA-II Algorithm: “Non-dominated Sorting Genetic Algorithm with Elite Strategy,” an enhanced version of NSGA. NSGA-II uses an “elite strategy” in which parent and offspring populations compete to produce the next generation, preventing the loss of high-quality individuals. Additionally, the “elite strategy” accelerates algorithm execution speed.

NSGA-III Algorithm: The “Reference Point-Based Non-Dominated Genetic Algorithm,” an enhanced version of NSGA-II.

NSGA-III outperforms NSGA-II in ensuring solution diversity. NSGA-II selects superior solutions as “parents” for generating the next generation based on non-dominated sorting and crowding distance. NSGA-III introduces the concept of reference points. During selection operations, it ranks solutions based on their performance relative to these reference points, ensuring a more uniformly distributed solution set. This approach better handles complex multi-objective optimization problems and offers advantages for large-scale problems.

However, NSGA-III’s increased computational overhead in selection operations results in relatively higher algorithmic complexity. Overall, both NSGA-II and NSGA-III are excellent multi-objective optimization algorithms suited for different problem types. NSGA-III excels in solution diversity and is ideal for complex multi-objective problems, while NSGA-II is relatively simpler and suitable for general multi-objective optimization tasks. The choice between them depends on the problem’s nature and scale. Generally, NSGA-II is recommended for applications with two optimization objectives, whereas NSGA-III is preferred for high-dimensional applications involving three or more objectives.

3. Calibration Process Overview

3.1 shonTA Software Modelling

shonTA is a three-dimensional thermal analysis and simulation software that integrates both thermal network and finite element methods (FEM). It supports multiple modes of heat transfer, including conduction, convection, and radiation.

The software is primarily used for three-dimensional thermal equilibrium analyses of transmission components, such as electric motors, gearboxes, and reducers, enabling accurate predictions of temperature distributions and thermal performance under various operating conditions.

For this study, shonTA was utilized to construct a detailed motor thermal model. Upon completing the model setup, the software generates a control data file (data.json) that encapsulates the full motor simulation parameters and configuration. This exported file serves as the basis for subsequent parameter optimization, particularly for refining thermal parameters such as the convective heat transfer coefficient.

Figure 1: shonTA Software Interface
Figure 1: shonTA's Interface

3.2 Python Main Function Code

Python scripts orchestrate the calibration process, coupling shonTA simulations with pymoo’s NSGA-II and NSGA-III algorithms. The calibration variables include convective heat transfer coefficients at the motor end covers.

Table 1: Python Main Program Code Steps

StepsDescription
Step 1Set the calibration parameters in the controldata.json file to a modifiable state to facilitate the subsequent optimization search; save the reference values in CSV format for reading by the following steps.
Step 2Define the shonTA external solver interface function, enabling the main program to call the shonTA solver for model computation; this function also reads the result file and compares it against the reference values to obtain the objective function yy.
Step 3Define the multi-objective optimization problem, where the results of the objective function yy are output by the external solver interface defined in Step 2.
Step 4Perform optimization using the pymoo optimization algorithm; the optimization problem used by the algorithm is defined in Step 3.
Step 5Output the optimization results.

For further information about shonTA software and the Python code contact us.

4. Results and Discussion

In this study, the axial and radial convective heat transfer coefficients at the left and right end covers of the motor were selected as calibration parameters, yielding a total of 4 optimization variables. To evaluate the thermal performance of the model, three temperature-difference points, corresponding to the permanent magnet, winding, and stator regions of the motor, were defined as the optimization objectives.

The optimization outcomes obtained using the NSGA-II and NSGA-III algorithms are illustrated in Figure 2. The NSGA-II algorithm converged to five local optimal solutions. In contrast, the NSGA-III algorithm identified nine local optima, demonstrating its enhanced ability to explore a broader range of Pareto-optimal fronts in multi-objective search spaces.

Figure 2: Comparison of NSGA-II and NSGA-III Algorithms (Three Optimization Objectives)
Figure 2: Comparison of NSGA-II and NSGA-III Algorithms (Three Optimization Objectives)

Additional optimization objectives were introduced by selecting temperature differences at seven specific locations: two points on the permanent magnet, three points on the windings, and two points on the stator components. The optimization results from the NSGA-II and NSGA-III algorithms are shown in Figure 3. The NSGA-II algorithm identified six local optima, while the NSGA-III algorithm identified seven local optima.

Figure 3: Comparison of NSGA-II and NSGA-III Algorithms (Seven Optimization Objectives)
Figure 3: Comparison of NSGA-II and NSGA-III Algorithms (Seven Optimization Objectives)

The comparative results indicate that NSGA-III identifies a greater number of optimal solutions than NSGA-II, making it more effective for high-dimensional multi-objective optimization problems. Based on detailed analysis, this performance improvement can be attributed primarily to two key mechanisms: population initialization and reference point utilization.

Population Initialization

NSGA-III employs a uniform population initialization strategy using a predefined set of uniformly distributed reference points. These reference points approximate locations on the ideal Pareto front, ensuring that the initial population is broadly and evenly distributed across the search space. This approach enhances diversity and reduces the likelihood of premature convergence.

In contrast, NSGA-II typically relies on random initialization, which can lead to clustering of initial individuals around certain regions of the objective space, thereby reducing search efficiency and increasing the risk of stagnation near local optima.

Reference Point Utilization

During the optimization process, NSGA-III leverages reference points to normalize and decompose multi-objective functions into a series of single-objective subproblems. This transformation facilitates more uniform exploration of the Pareto frontier and helps maintain population diversity throughout the evolutionary process.

NSGA-II, on the other hand, employs non-dominated sorting and crowding distance mechanisms to preserve diversity. While effective for problems with fewer objectives, these methods are less capable of maintaining diversity in high-dimensional and complex optimization scenarios.

In summary, through its enhanced population initialization strategy and systematic use of reference points, NSGA-III achieves superior convergence on the Pareto front while maintaining population diversity, making it more robust and scalable for solving complex multi-objective optimization problems compared to NSGA-II.

5. Outlook

The internal cooling oil circuit of automotive oil-cooled motors is complex. Parameters that require calibration and exert the most significant influence on overall temperature need to be explored. Additionally, further refinement and investigation into other multi-objective optimization algorithms are needed to enhance the optimization process.

References:

[1] pymoo.org

[2] Davin, T. et al. (2015). Experimental study of oil cooling systems for electric motors. Applied Thermal Engineering, 75, 1–13.

[3] Zhang, X. et al. (2015). An Efficient Approach to Non-dominated Sorting for Evolutionary Multi-objective Optimization. IEEE Transactions on Evolutionary Computation.

We are ready to help!

  1. Fill out the form

    Provide your contact details and message.

  2. We will contact you

    We'll schedule a free consultation to review your goals.

  3. Tailored Proposal

    You'll receive a detailed proposal with timeline, deliverables, and pricing.

  4. Project Kickoff

    After approval, we give you direct access to our engineers.

We typically respond within 24 hours.