Skip to main content
Log in

Drag reduction of a car model by linear genetic programming control

  • Research Article
  • Published:
Experiments in Fluids Aims and scope Submit manuscript

Abstract

We investigate open- and closed-loop active control for aerodynamic drag reduction of a car model. Turbulent flow around a blunt-edged Ahmed body is examined at \(Re_{H}\approx 3\times 10^{5}\) based on body height. The actuation is performed with pulsed jets at all trailing edges (multiple inputs) combined with a Coanda deflection surface. The flow is monitored with 16 pressure sensors distributed at the rear side (multiple outputs). We apply a recently developed model-free control strategy building on genetic programming in Dracopoulos and Kent (Neural Comput Appl 6:214–228, 1997) and Gautier et al. (J Fluid Mech 770:424–441, 2015). The optimized control laws comprise periodic forcing, multi-frequency forcing and sensor-based feedback including also time-history information feedback and combinations thereof. Key enabler is linear genetic programming (LGP) as powerful regression technique for optimizing the multiple-input multiple-output control laws. The proposed LGP control can select the best open- or closed-loop control in an unsupervised manner. Approximately 33% base pressure recovery associated with 22% drag reduction is achieved in all considered classes of control laws. Intriguingly, the feedback actuation emulates periodic high-frequency forcing. In addition, the control identified automatically the only sensor which listens to high-frequency flow components with good signal to noise ratio. Our control strategy is, in principle, applicable to all multiple actuators and sensors experiments.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

References

  • Ahmed SR, Ramm G, Faltin G (1984) Some salient features of the time averaged ground vehicle wake. Society of Automotive Engineers, SAE Inc 840300, USA

  • Aubrun S, McNally J, Alvi F, Kourta A (2011) Separation flow control on a generic ground vehicle using steady microjet arrays. Exp Fluids 51(5):1177–1187

    Article  Google Scholar 

  • Bagheri S, Brandt L, Henningson DS (2009) Input–output analysis, model reduction and control of the flat-plate boundary layer. J Fluid Mech 620:263–298

    Article  MathSciNet  MATH  Google Scholar 

  • Barros D, Borée J, Noack BR, Spohn A, Ruiz T (2016) Bluff body drag manipulation using pulsed jets and Coanda effect. J Fluid Mech 805:422–459

    Article  MathSciNet  Google Scholar 

  • Barros D (2015) Wake and drag manipulation of a bluff body using fluidic forcing. PhD thesis, École Nationale Supérieure de Mécanique et d’Aérotechnique, Poitiers, France

  • Beaudoin J-F, Cadot O, Aider J-L, Wesfreid J (2006) Drag reduction of a bluff body using adaptive control methods. Phys Fluids 18(8):085107

    Article  Google Scholar 

  • Becker R, Garwon M, Gutknecht C, Bärwolff G, King R (2005) Robust control of separated shear flows in simulation and experiment. J Process Control 15(6):691–700

    Article  Google Scholar 

  • Brameier M, Banzhaf W (2007) Linear genetic programming. Springer Science & Business Media, Berlin

  • Brunton SL, Noack BR (2015) Closed-loop turbulence control: progress and challenges. Appl Mech Rev 67(5):050801

    Article  Google Scholar 

  • Cattafesta L, Shelpak M (2011) Actuators for active flow control. Ann Rev Fluid Mech 43:247–272

    Article  MATH  Google Scholar 

  • Choi H, Jeon W-P, Kim J (2008) Control of flow over a bluff body. Ann Rev Fluid Mech 40:113–139

    Article  MathSciNet  MATH  Google Scholar 

  • Choi H, Lee J, Park H (2014) Aerodynamics of heavy vehicles. Ann Rev Fluid Mech 46:441–468

    Article  MathSciNet  MATH  Google Scholar 

  • Dahan JA, Morgans AS, Lardeau S (2012) Feedback control for form-drag reduction on a bluff body with a blunt trailing edge. J Fluid Mech 704:360–387

    Article  MATH  Google Scholar 

  • Debien A, von Krbek KAFF, Mazellier N, Duriez T, Cordier L, Noack BR, Abel MW, Kourta A (2016) Closed-loop separation control over a sharp-edge ramp using genetic programming. Exp Fluids 57(40):1–19

    Google Scholar 

  • Dracopoulos DC, Kent S (1997) Genetic programming for prediction and control. Neural Comput Appl 6:214–228

    Article  Google Scholar 

  • Duriez T, Parezanović V, Laurentie J-C, Fourment C, Delville J, Bonnet J-P, Cordier L, Noack BR, Segond M, Abel MW, Gautier N, Aider J-L, Raibaudo C, Cuvier C, Stanislas M, Brunton S (2014) Closed-loop control of experimental shear layers using machine learning (invited). In: 7th AIAA flow control conference, Atlanta, Georgia, pp 1–16

  • Duriez T, Brunton S, Noack BR (2016) Machine learning control—taming nonlinear dynamics and turbulence. Fuid mechanics and its applications series, vol 116. Springer, New York

  • Englar RJ (2004) Pneumatic heavy vehicle aerodynamic drag reduction, safety enhancement, and performance improvement. In: The aerodynamics of heavy vehicles: trucks, buses, and trains

  • Garwon M, King R (2005) A multivariable adaptive control strategy to regulate the separated flow behind a backward-facing step. In 16th IFAC World Congress, Prague, Czech Republic

  • Gautier N, Aider J-L, Duriez T, Noack BR, Segond M, Abel MW (2015) Closed-loop separation control using machine learning. J Fluid Mech 770:424–441

    Article  Google Scholar 

  • Gerhard J, Pastoor M, King R, Noack BR, Dillmann A, Morzynski M, Tadmor G (2003) Model-based control of vortex shedding using low-dimensional Galerkin models. AIAA Pap 4262(2003):115–173

    Google Scholar 

  • Glezer A, Amitay M, Honohan AM (2005) Aspects of low-and high-frequency actuation for aerodynamic flow control. AIAA J 43(7):1501–1511

    Article  Google Scholar 

  • Grandemange M, Gohlke M, Cadot O (2013) Turbulent wake past a three-dimensional blunt body. Part 1. Global modes and bi-stability. J Fluid Mech 722:51–84

    Article  MATH  Google Scholar 

  • Henning L, King R (2007) Robust multivariable closed-loop control of a turbulent backward-facing step flow. J Aircraft 44(1):201–208

    Article  Google Scholar 

  • Hucho W-H (1998) Aerodynamics of road vehicles: from fluid mechanics to vehicle engineering. Society of Automotive Engineers, USA

  • Joseph P, Amandolese X, Edouard C, Aider J-L (2013) Flow control using MEMS pulsed micro-jets on the Ahmed body. Exp Fluids 54(1):1–12

    Article  Google Scholar 

  • Koza JR (1992) Genetic programming: on the programming of computers by means of natural selection. The MIT Press, Boston

    MATH  Google Scholar 

  • Lewalle J (1995) Tutorial on continuous wavelet analysis of experimental data. In: Mechanical Aerospace and Manufacturing Engineering Dept., Syracuse University. http://www.mame.syr.edu/faculty/lewalle/tutor/tutor.html

  • Li R, Barros D, Borée J, Cadot O, Noack BR, Cordier L (2016) Feedback control of bi-modal wake dynamics. Exp Fluids 57:1–6

    Article  Google Scholar 

  • Liepmann HW, Nosenchuck DM (1982) Active control of laminar-turbulent transition. J Fluid Mech 118:201–204

    Article  Google Scholar 

  • Narayanan S, Noack BR, Banaszuk A, Khibnik AI (2002) Active separation control concept: dynamic forcing of induced separation using harmonically related frequency, 2002. United States Patent 6360763

  • Oxlade AR, Morrison JF, Qubain A, Rigas G (2015) High-frequency forcing of a turbulent axisymmetric wake. J Fluid Mech 770:305–318

    Article  Google Scholar 

  • Parezanović V, Cordier L, Spohn A, Duriez T, Noack BR, Bonnet J-P, Segond M, Abel M, Brunton SL (2016) Frequency selection by feedback control in a turbulent shear flow. J Fluid Mech 797:247–283

    Article  Google Scholar 

  • Pastoor M, Henning L, Noack BR, King R, Tadmor G (2008) Feedback shear layer control for bluff body drag reduction. J Fluid Mech 608:161–196

    Article  MATH  Google Scholar 

  • Pfeiffer J, King R (2012) Multivariable closed-loop flow control of drag and yaw moment for a 3D bluff body. In: 6th AIAA flow control conference, Atlanta, Georgia, USA, pp 1–14

  • Protas B (2004) Linear feedback stabilization of laminar vortex shedding based on a point vortex model. Phys Fluids 16(12):4473–4488

    Article  MathSciNet  MATH  Google Scholar 

  • Roshko A (1955) On the wake and drag of bluff bodies. J Aeronaut Sci 22(2):124–132

    Article  MATH  Google Scholar 

  • Rouméas M, Gilliéron P, Kourta A (2009) Drag reduction by flow separation control on a car after body. Int J Num Methods Fluids 60(11):1222–1240

    Article  MATH  Google Scholar 

  • Roussopoulos K (1993) Feedback control of vortex shedding at low Reynolds numbers. J Fluid Mech 248:267–296

    Article  Google Scholar 

  • Rowley CW, Williams DR, Colonius T, Murray RM, MacMynowski DG (2006) Linear models for control of cavity flow oscillations. J Fluid Mech 547:317–330

    Article  MATH  Google Scholar 

  • Ruiz T, Sicot C, Brizzi LE, Borée J, Gervais Y (2010) Pressure/velocity coupling induced by a near wall wake. Exp Fluids 49(1):147–165

    Article  MATH  Google Scholar 

  • Samimy M, Debiasi M, Caraballo E, Serrani A, Yuan X, Little J, Myatt JH (2007) Feedback control of subsonic cavity flows using reduced-order models. J Fluid Mech 579:315–346

    Article  MathSciNet  MATH  Google Scholar 

  • Schmidt HJ, Woszidlo R, Nayeri CN, Paschereit CO (2015) Drag reduction on a rectangular bluff body with base flaps and fluidic oscillators. Exp Fluids 56(7):1–16

    Article  Google Scholar 

  • Seifert A, Shtendel T, Dolgopyat D (2015) From lab to full scale active flow control drag reduction: how to bridge the gap? J Wind Eng Ind Aerodyn 147:262–272

    Article  Google Scholar 

  • Wahde M (2008) Biologically inspired optimization methods: an introduction. WIT Press, Ashurst

  • Zhang M, Cheng L, Zhou Y (2004) Closed-loop-controlled vortex shedding and vibration of a flexibly supported square cylinder under different schemes. Phys Fluids 16(5):1439–1448

    Article  MATH  Google Scholar 

Download references

Acknowledgements

The authors acknowledge the great support during the experiment by J.-M. Breux, J. Laumonier, P. Braud and R. Bellanger. The thesis of RL is supported by the OpenLab Fluidics between PSA Peugeot-Citroën and Institute Pprime (Fluidics @ poitiers). We appreciate valuable stimulating discussions with: Markus Abel, Diogo Barros, Steven Brunton, Eurika Kaiser, Siniša Krajnović, Vladimir Parezanović, Rolf Radespiel, Peter Scholz, Richard Semaan, Andreas Spohn and Mattias Wahde.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ruiying Li.

Appendices

Appendix A: Linear genetic programming

A control law maps \(N_s\) sensor signals into \(N_b\) actuation commands. For simplicity, we assume a single-input plant, i.e. \(N_b=1\). We assume this control law can be represented by a given maximum number of instructions. These instructions change the content of \(N_\mathrm{r}\) registers, \(r_1, \ldots , r_{N_\mathrm{r}}\). The registers may be variables or constants. As concrete example, we assume that the first \(N_s\) registers are initialized with the sensor signals, the next \(N_b=1\) register represents the actuation command, initially zero, and the next registers contain \(N_\mathrm{c}\) constants. These constants are the same for all considered control laws in one optimization.

An instruction includes an operation on one or two registers and assigns the result of the operation to a destination register, e.g. the instruction \(r_1:=r_2+r_3\) includes two operands, the register \(r_2\) and \(r_3\), and assigns the result to \(r_1\). One instruction with two operands can be coded as an array of four integers referring to the two operands, the operator and the destination register, respectively. Note that for the instruction with one operand only an array of three integers is required. However, to maintain a unified representation, a fourth integer is equally assigned but ignored. Consequently, the set of \(N_i\) instructions can be coded as a matrix \(\mathcal {M}\) with dimension \(N_{i}\times 4\). An example with \(N_{i}=5\) is presented in Fig. 17. Constant registers are write-protected. This means that the constants cannot be destination registers and their values are initialized at the beginning of a run from a user-defined range. One or more variable registers are defined as output register(s). The remaining variable registers are referred to as input registers. For the decoding, the input registers are initialized by the sensor values and the output register(s) by zero. The destination registers are updated after each instruction. After executing all the instructions, the final expression of the output register yields the control law K. This matrix representation can interpret the instructions efficiently by casting the integer values.

There is only a finite number of control laws for a given number of registers \(N_\mathrm{r}\), of operations \(N_\mathrm{o}\) and of constants \(N_\mathrm{c}\):

$$\begin{aligned} \left[ N_\mathrm{r} \times N_\mathrm{r} \times N_\mathrm{o} \times (N_\mathrm{r}-N_\mathrm{c}) \right] ^{N_i} . \end{aligned}$$

This number is, however, astronomical, even accounting for different matrices leading to the same control law. Already the simple matrix of Fig. 17 has over \(1.9 \times 10^{14}\) different realizations. Despite the discrete nature of possible control laws, almost any reasonably smooth control law can be approximated by such a set of instructions with suitable number of instructions. Evidently, a combinatorial search of control laws and testing in an experiment is not an option. In contrast, evolutionary algorithms as genetic programming are a near optimum choice. In fact, formulating a function from a set of instructions is the constitutive element of LGP (Brameier and Banzhaf 2007), which is a variant of genetic programming. The term linear in LGP refers to the linear sequence of instructions, and not to superposition principle like in differential equations. The method in itself can provide highly non-linear functions as exemplified in Fig. 17.

Fig. 17
figure 17

a An example of matrix \(\mathcal {M}\) comprising five instructions (\(N_i=5\)). The matrix is displayed in the centre of the figure. The five instructions are shown on the right side of the matrix. Let \(\mathcal {R}=\{r_1, r_2, r_3, r_4, r_5, r_6\}\) denote the set of registers, indexed by the integer numbers \(\{1,\ldots ,6\}\). The first four registers are variables, i.e. they can be assigned a new value. The last two registers are constants and therefore write-protected. The operand(s) of instructions are coded in the first two columns of the matrix. They can assume any value from \(\{1,\ldots ,6\}\). The operator set \(\mathcal {O}=\{+, -, \times , \div , \exp \}\) is indexed by an integer number \(\{1,\ldots ,5\}\) and coded in the third column of the matrix. The last column encodes the destination registers, which can be one of the variables from \(\{r_1,\ldots ,r_4\}\). b Interpretation of the matrix \(\mathcal {M}\). In this example, we have three input registers \(\{r_1, r_2, r_3\}\) and one output register \(r_4\). Input registers are initialized by the sensors and output register by zero. Step 1 shows the updated registers after implementing the first instruction. Based on this result, we implement the second instruction and obtain the updated result in step 2, etc. The final expressions are obtained after implementing all five instructions. The expression of output register \(r_4\) is the targeted function K

The genetic operations (elitism, crossover, mutation and replication) are directly applied to the matrices as depicted in Fig. 18.

Fig. 18
figure 18

An example showing the realisation of genetic operations on the individuals for a fixed number of instructions

Appendix B: Feedback control using Morlet filters

In this section, we describe the use of Morlet wavelet filter (MF) to extract frequencies of interest in the sensor signals. In time domain, the Morlet wavelet \(\psi \) is a cosine function modulated by a Gaussian envelope. It is then defined for a frequency \(f_{c}\) as:

$$\begin{aligned} \psi (t)=\dfrac{1}{\sqrt{2\pi }\sigma }\exp \Bigg(-\frac{t^2}{2\sigma ^2}\Bigg)\cos (2\pi f_{c}t). \end{aligned}$$
(15)

In frequency domain, MF is a band-pass filter which attenuates the undesired frequencies outside the range \([f_{c}-\lambda /2, f_{c}+\lambda /2]\), where \(\lambda \) represents the bandwidth which is governed by the parameter \(\sigma \). In our applications, only the fourth sensor \(s_4\) identified for the optimal SIMO control (see Sect. 6.1) is chosen as the output of the plant, resulting in SISO (Single-Input Single-Output) system (see Sect. 6.2). To avoid the confusion, we denote the fourth sensor \(s_4\) as s and its fluctuation \(s^\prime _4\) as \(s^\prime \). The sensor \({\varvec{s}}\) in the feedback control law \(b=K({\varvec{s}})\) is defined as \({\varvec{s}}=[\hat{s}_1,\ldots ,\hat{s}_5, \overline{s},s^\prime ]\), where

$$\begin{aligned} \hat{s}_i(t)= & {} \int _{0}^{\tau _P}\psi _i(\tilde{t})s^\prime (t+\tilde{t}-\tau _P)\text {d}\tilde{t},\quad i=\{1,\ldots ,5\}\nonumber \\ \overline{s}(t)= & {} \frac{1}{\tau _P}\int _{t-\tau _P}^{t}s(t)\text {d}t\\ s^\prime (t)= & {} s-\overline{s}(t).\nonumber \end{aligned}$$
(16)

\(\psi _i\) represents the ith Morlet wavelet and \(\overline{s}\) is the moving average of the signal over a period of \(\tau _P=0.1\) s. For \(i=\{1,\ldots ,5\}\), we set \(f_{c_i}=\{100, 200, 250, 320, 400\} Hz\). The corresponding Strouhal numbers are \(St_{H_{c_i}}=f_{c_i} H/U_\infty =\{2, 4, 5, 6.5, 8\}\). Figure 19 represents the five wavelets in the time and frequency domains.

Fig. 19
figure 19

Morlet wavelets in time domain (left) and frequency domain (right)

One may notice that the centre frequencies in the frequency domain are slightly different compared to the values of \(f_{c_i}\). This is related to the frequency resolution of the MF which is determined by the wavelet length \(\tau _P\) considered in (16). In the present study, the wavelet includes 200 points for a time window of \(\tau _P=0.1\) s within the frequency \(f_{RT}=2\) kHz. This leads to a frequency resolution of about \(\Delta f=10\) Hz (\(\Delta St_{H}=0.2\)). The spectra can then be shifted within \(\Delta St_{H}=0.2\) with respect to the set ones.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Li, R., Noack, B.R., Cordier, L. et al. Drag reduction of a car model by linear genetic programming control. Exp Fluids 58, 103 (2017). https://doi.org/10.1007/s00348-017-2382-2

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s00348-017-2382-2

Navigation