Copyright © IFAC Ada ptive Systems in Control and Signal Processing , Glasgow, U K, 1989
SELF-ADAPTIVE AUTOMOTIVE ENGINE MANAGEMENT P. E. Wellstead* and P. G. Scotson** *Control Systems Centre, UMIST, p .a . Box 88, Manchester M60 IQD, UK **Advanced Engineering Centre, Lucas Automotive Ltd., Shiriey, W est Midlands B90 4JJ, UK
Abstract. The paper describes the use of self-tuning concepts in the area of adaptive engine management. In particular, the situation is considered whereby a recursive parameter estimator is used to determine on-line the parameters of an engine performance index. The estimates are then used in a self-tuning extremum controller for a specific one dimensional performance index which can be used to adaptively optimise engine performance by adjustment of the engine spark ignition timing. Keywords. Adaptive management.
control,
extremum
INTRODUCTION
control,
automobiles,
engine
This article also addresses the problem of self-tuning control of extremum processes, but with a special emphasis upon the algorithm engineering aspects of the problem with particular emphasis upon engine performance optimisation. In this context, the work contained here is spiritually linked to the approach of Draper and Li. In particular, like Draper and Li's, the work described here was done in order to develop self-tuning optimisation algorithms for engines . Our specific interest lies in spark ignition automotive engines. The aim being to provide an algorithm for engine control uni ts (ECUs) which will continuously adjust the ignition timing for optimal engine torque. The motivation for such a study being the economic benefit which would come from continuously optimising the fuel consumption of road vehicles. Many other applications exist in which significant economic and social advantages would accrue from self-tuning optimisation. Moreover , our observation has been that in most of these applications the performance function is noise-corrupted. Thus there is a wider interest in the concept of an extremum controller which employs the self-tuning philosophy to yield an algorithm with intrinsic noise rejection properties.
The idea of a self-tuning control system which combines a recursive estimation algorithm with a controller synthesis algorithm has been widely applied, (see [Seborg, Edgar and Shah, 1986] for a current survey and evaluation). The aim of this paper is to discuss in simple terms a further promising, but under exploited, area of self~tuning. In particular, attention is focussed upon a self-tuning system in which the synthesis design phase consists of an extremum seeking algorithm . In terms of optimisation methods this can be viewed as on-line optimisation of a static performance criterion. When placed in a self-tuning context this performance index is parameterised as a quadratic function such that a recursive estimator can be applied to determine the coefficients of its parametric form. In addition, it will normally be assumed that the performance index is corrupted by a random disturbance such that the inherent noise suppressing features of self-tuners are exploited. The idea of a self-optimising or extremum seeking control system is well known, see for example [Blackman,1961] for a clear exposi tion of analogue extremum seeking controllers. In addition, the reader is referred to [Draper and Li, 1951] for an application of extremum control to the optimisation of engine operation, and to the book [Eveleigh,1967] for a contemporary account of some early adaptive systems. The methods exposed in the above mentioned publications concern noise-free extremum seeking methods. An approach which incorporates performance optimisation in the presence of noise is discussed in [Florentin, 1964]. More recently [Sternby , 1980] has studied the problem of extremum control in the language of self-tuning control.
A full description of the engine self-optimising controller described here is given in the reports [Scotson and Wellstead, 1988 ; Wellstead and Scotson,1988]. The overall project is the subject of Peter Scotson' s doctoral thesis [Scotson,1986] and the entire research programme was performed in collaboration with the Advanced Engineering Centre of Lucas Automotive Ltd. , [see for example : Wakeman and others, 1987; Holmes and Cockerham, 1987] .
33 7
338
P. E. Well stead and P. G. Scotson SELF-TUNING EXTREMUM CONTROL
this topic elsewhere. In particular the data requirements in self-tuning extremum control are discussed in [Scotson and Wellstead,1987).
Basic Allorithm In this section we consider extremum seeking algorithms in which the measurement of the performance index is subject to random errors. This form of optimisation has been studied extensively, see for example Kiefer and Wolfowitz [1952) and Kushner [1972). The idea considered here is to use a slightly different approach by using a knowledge of the function whose extremum is sought. Specifically, a parametric descent algorithm is proposed with an explicit self-tuning format.
Using equation 3, the following self-tuning recursion (see also Fig. 1) can be written. At time step t: (i)
Apply adjustment x(t) and measure y(t) the system performance index.
(ii)
Use a recursive least squares estimator to update the estimates &1' &2 in the model
Thus, suppose the system performance characteristic can be modelled by the quadratic equation
(4 )
(iii)
=
y(t)
Yo -
~(x(t)-xO)2
Calculate the new output of the extremum controller as x(t+1) as,
(1) x(t+1)
Where, Yo is the maximum attainable value of y(t), Xo is the value of x(t) which maximizes y(t) and ~ is the sensitivity of the quadratic curve. (iv) The variable y(t) random disturbances such that
may be subject to represented by e (t)
=
+ e(t)
y(t)
-~(x(t)-xo)2
Yo
(2)
In practice this noise may be due measurement errors (sensor noise) or may reflect random variations in value of the performance criterion. general it is assumed that this noise uncorrelated with x(t).
and
-
t.x 2 (t)
t.y(t)
=
t.y(t)
= y(t)
y(t-1)
t.x(t)
= x(t)
x(t-1)
t.x 2 (t)
= x 2 (t) - x 2 (t-1).
2xo~(t)
~
(5 )
Increment the time counter t and loop back to step (i).
~
t+1
The self-tuning recursion continues until (subject to conditions discussed later), &1 and &2 have converged to their theoretical values of
to it the In is
In the formulation considered here the parameters, Yo' Xo and ~, which characterise the optimum value are unknown but nominally constant parameters. The self-tuning extremum controller must estimate these parameters and synthesize a control input which shifts the process toward the maximum of the performance index y(t). In this form the offset associated with the performance index near its maximum can cause numerical conditioning problems in the estimation phase. In order to overcome this the model is rewritten in incremental form:
where
=
(6 )
In which case the extremum control rule given by equation 5 will place the system at the optimum position. This algorithm is analogous to the well known self-tuning controller structure except that the controller synthesis rule is replaced by a rule which computes the extremum controller output, (eg. equation 5). In addition, the self-tuning extremum controller can be seen as being directly comparable with a Gauss/Newton iteration in which estimated derivative information is used. In practice, a test perturbation xpert(t) is added to the extremum controller output in order to assure persistent excitation of the process. In this case the extremum controller output is, from equation (5), given by
(3 )
A beneficial side effect of using the incremental model is that it removes one of the unknown parameters (Yo)' this leaves just two parameters to estimate and makes the recursive estimation fast and more compact. More will be said on
X(t+l)
=
+
x per t(t+1)
(7 )
The requirement for xpert(t) and its nature are noted in the subsequent discussion and in [Wellstead and Scotson,1988; Scotson and Wellstead, 1988) .
Self-adaptive Automotive Engine Management Single Parameter Optimisation
IMPLEMENTATION
In certain cases the quadratic sensitivity parameter, ~, may be known either exactly or to within certain limi ts. If this is so the two parameter self-tuning optimiser may be simplified to a single parameter self-tuner. This is done by rewriting equation (3):
In the next section we consider some of the issues which arise when an extremulI control is applied to eniine optimisation. As a preamble to the specific issues of eniine control, this section deals with more general issues of implementation. Factory Settings
t.y(t) (8)
Define the auxiliary variable t.w(t) as:
=
t.w ( t ) The modified becomes.
t.y ( t) -
~ t.x 2 (
self-tuning
t )
(9 )
algorithm
now
At time step t: (i)
339
Apply adjustment x(t), measure y(t) and compute the auxiliary variable t.w(t) according to equation
In a practical situation engine systems are approximately tuned to factory settings which are an average over a range of 'typical' engines. The self-tuning optimiser is initialized to operate about this region. By the same token, as pointed out previously it ia often helpful to add a test perturbation xpert (t) to the signal x (t) in order to help the self-tuner explore the performance characteristic. These two features can be readily included using the modified self-tuning configuration (shown in Fig. 2) written below: At time step t:
(9) •
(i) (ii)
Use a recursive least squares estimator to update the estimate &1 in the model
Apply adjustment x(t) = xfact(t) + xeff(t) and measure y(t).
Note xeff(t) t.w(t) (Hi)
= &1 t.x(t) + n(t)
(10 )
Calculate the extremum controller output x(t+l) as
(ii)
= Xadj(t)
+ xpert(t)
Compute the estimates &1' &2 using the model
t.y(t)
= &1
t.x(t) + &2 t.x 2 (t) + €(t) (4)bis
x(t+l)
( iv)
=
&1
( 11 )
where
2~
Increment the time counter t and loop back to step (i) •
t.x(t) ~
= xeff(t)
- x e ff(t-l)
t+l (iii)
The advantages of the simplified algorithm are the reduction in computational effort in the estimation process and the increased speed of convergence. There are also some advantages in terms of identifiability and data storage requirements. These issues are discussed elsewhere [Scotson and Wellstead, 1988] and subsequently in this article. If, however, the value of ~ is incorrect then it is possible to show that the adjustment rule becomes a variable gain gradient algorithm. Convergence [Zarrop,1985j Wellstead and Scotson,1988] The ODE methods of Ljuni can be used to examine the asymptotic properties of the extremum controller and hence check its local stability characteristics. The result of such analysis indicates that the algorithm is locally stable in the region of the desired design location. However, this requires the presense of an additional test signal which is persistently exciting. The purpose of xpert(t) is to provide this excitation property.
Calculate x(t+l) as
Xa dj(t+l)
(iv)
the
=
new
adjustment
(12 )
Increment the time counter t ~ t+l, and loop back to step (i) •
The effect of the factory settini xfact(t) in this implementation is to 'back-off' a component of the aiinal x(t), such that as far as the self-tuner is concerned the optimum is located at Xo - xfact(t). Thus, after tuning, the algorithm should converge such that,
A further practical point is that the process being optimised will almost certainly have some dynamical component such that the introduction of an adjustment x(t) at step (i) will produce a transient component as well as the
340
P. E. Wellstead and P. G. Scotson
steady component of response y(t). It is therefore usual to wait some suitable period between the application of x(t) and the measurement of y(t) or take some equivalent precaution [Scotson and Wellstead, 1988) . Identifiability Questions In conventional self-tuning alaorithms for the dynamical control of feedback systems, a characteristic phenomena is that certain of the estimated parameters are linearly dependent. This dependence is manifest in the estimates wandering randomly but evidently mutually linked in some way [ego Wellstead and Edmunds, 1975). The simple self-tuning optimiser described here can display identifiability problems, but in a way which is a function of the excitation which the system experiences. The problem can be reduced by proper choice of the test perturbation xpert (t) . Specifically, this involves selecting test perturbations xpert(t) such that xpert(t) x per t(t-1) and x 2per t(t) - x2.pert(t-1) are significantly different and satisfy the persistant excitation condition. Indeed it is possible to determine best perturbation signals for a particular period [Zarrop,1985). Forgetting Factors and Re-optimisation It was perceived from an early stage that one of the major benefits of a self-tuning optimiser in engine management would be its ability to track changes in the system parameters. Such an ability would allow the optimiser to maintain the optimum system performance even if the position of the optimum should change. One of the simplest techniques would have been to reset the optimiser periodically. Thus if a change in the optimum was detected, the self-tuning algorithm would be re-initialized in order to re-tune to the new optimum control parameter and so track shifts of the optimum between resets. However, re-setting of the optimiser is a drastic action which would only be applicable when the optimum is known to have changed, perhaps due to an externally sensed change of an operating condition or by use of a change detection algorithm. An alternative to resetting is the use of forgetting factors. In simulation tests [Scotson and Wellstead, 1988) the 'Directional Forgetting' algorithm has been found to be very effective. In the two parameter case these algorithms [Kulhavy and Karny, 1984] are not difficult to implement. The method still requires the selection of a constant factor in advance, but it is less sensitive to changes in system noise level than the traditional forgetting factor and hence the self-tuning alaorithm becomes sufficiently robust for practical use.
Parameter Constraints A practical problem with self-tunina extremum control is that the estimated curvature parameter cx 2 may be too close to zero or of the incorrect sign. This difficulty can be addressed by implementing parameter constraints. The recommended method for applyina constraints is that described by [Goodwin and Sin, 1984) which not only constrains the parameter which has exceeded its bound but also adjusts the estimate of the other parameter in an appropriate manner. For the practical situation, the bounds on the control parameter and a minimum value for the curvature parameter ~ were found sufficient to guarantee safe operation in all tested conditions. Change Detection and Variable Perturbation Size The optimum location may change rapidly during normal engine operation. Such changes must be tracked by an adaptive extremum controller. This is possible using various change detection mechanisms mentioned above, combined with a variable perturbation signal xpert. The operation of this signal is explained further in the next section. THE OPTIMISATION OF AUTOMOTIVE SPARK ANGLE SETTING The work discussed in this paper is focus sed upon the problem of self-tunina optimisation of automotive petrol engines. In particular, our aim was to develop an algorithm which might be used to continuously tune the spark ignition timing of an engine to obtain the optimum torque for a vehicle in all conditions. In fact the concept was to develop an adaptive electronic spark distributor to replace fixed programme and electro-mechanical distributors as traditionally used. This aspect of our extremum controller development is documented fully elsewhere [Scotson and Wellstead, 1988, Scotson,1986). The intention here is to give the flavour of the results which were obtained. In a modern electronic engine control uni t (ECU), the set of spark igni tion angles is stored in a read only memory. The stored values form a matrix (or map) (Fig. 2) the values of which are indexed against engine load and speed, such that the ECU will apply the spark to the appropriate cylinder at a crankshaft angle which is appropriate for the current speed and torque of the engine. In conventional systems the spark map or matrix is measured off-line on an enaine test bed. The aim in self-tunina optimisation is to replace the map by an adapti ve extremum seeking algorithm. The self-tuning extremum controller will act in such a manner as to select the spark angle which yields the peak brake torque for any speed or load combination. Moreover as the driver changes speed and load, the optimiser will readapt as the location of the optimum alters.
Self-adaptive Automotive Engine Management A Simulated En,ine: Use of Variable Perturbation Size Here we consider a simulated engine [Scotson,19861 and use it as a means to demonstrate the use of variable sized perturbations. In practical situations the ~2 estimate can approach zero during the optimising control when the location of the optimum changes. In the next simulation result we illustrate the benefical effect of variable perturbation in terms of speed of re-tuning. In particular, Fig. 3 shows the behaviour of the self-tuning optimiser when the location of the optimum shifts from Xo = 20° to 30°. Fi&. 3a shows the retuning performance when a fixed amplitude test perturbation is used. The lower trace Fig. 3b illustrates the improved re-tuning performance when the amplitude of x ert(t) is allowed to vary. In this simufation the perturbations are allowed to vary in proportion to the mean sensed gradient. Thus when the optimiser is away from the optimum location, the perturbation signal is large. As the optimiser tunes in to the correct (optimal) values of x o ' the perturbations decrease in amplitude. Live Engine Results The resul ts shown here are for a medium size petrol engine of the type used in fami ly saloon cars. Moreover, they show just two typical tuning-in results obtained on an engine for two initial conditions. To be specific, Fig. 4 shows the evolution of the spark angle applied to the engine when the engine self-tuner was commenced with x(O) = 20° before top dead centre (btdc). Likewise, Fi&. 5 shows the corresponding result when the engine spark angle was initiated from 40° before top dead centre. In both cases the anticipated location of the optimum was at 32 0 btdc. Note that the plots incorporate a three cycle test perturbation of the form i-2°,0,2°,0, ... } and that tuning is acheived with 80 cycles of the self-tuner in each case. In this application, one cycle corresponds to one firing of cylinder. Thus for a four stroke, four cylinder engine rotating at 1200 r.p.m., the tuning-in time is approximately 2 seconds. This is typical of the two parameter optimiser in its standard form . With additional enhancements significantly faster tuning can be acheived. Indeed the algorithm is sufficiently fast to track operational and environmental changes in the optimum location. Details of this and related issues are given in the companion paper [Scotson and Wellstead,19881. CONCLUSIONS In this paper we have presented a set of simple self-tuning extremum controller al,orithms. Although some analysis has been mentioned the main thrust of the discussion concerns the basic algorithms. In this connection we recall the remarks of the introduction in which it was emphasized that it is the algori thm en6ineering issues of self-tuning optimisation which are of most interest and technical value. What we have
341
attempted to do in this paper is to expose and clarify the most important aspects of these issues which are relevant to the automotive application. The companion paper [Scotson and Wellstead,19881 considers in detail the application of self-tunin, extremum control to automotive engine mana,ement. The reader is referred to this publication for more application specific discussions. ACKNOWLEDGMENTS The authors acknowledge the financial support and technical collaboration provided by the the Advanced Engineerin, Centre, Lucas Automotive Ltd. and the Department of Trade and Industry.
REFERENCES Blackman,P.F.(1961). Extremum-seeking regulators , in Westcott(Ed) , An exposition of adaptive control. Pergamon Press. Draper,C.S. and Y.Li(1951)Principles of Optimizing Control Systems,ASME Publications. Eveleigh,V.W . (1976).Adaptive Control and Optimization Techniques.McGraw Hill. Floretin,J.J.(1964).Anproximately Optimal Extremal Regulator.Journal of Electronics and Control,XVII, 2, 211, 1964. Goodwin,G.C. and K.S.Sin(1984) .Adaptive filtering prediction and control. Prentice Hall,New York. Holmes,M. and K.Cockerham(1987).Adaptive ignition control. Sixth International Conference on Automotive Electronics, London. Kiefer,J. and J.Wofowitz(1952).Stochastic estimation of the maximum of a regression function.Ann.Hath. Statist,Vol.23,462-466. Kulhavy,R. and M. Karny( 1984) .Tracking of slowly varying parameters by directional forgetting.IFAC Conference,Budapest. Kushner,H.J.(1972).Stochastic approximation algorithms for the local optimisation of functions with non-unique stationary Points. IEEE Trans.AC,Vol.AC-17,5,646-654. Scotson,P.G.(1986).Self-tuning optimisation of automotive engines. Ph.D.Thesis,Control Systems Centre, UMIST. Scotson,P.G. and P.E.Wellstead(to appear 1988).Self-tuning optimisation of spark ignition automobile engines. Seborg,D.E.,T.F.Edgar and S . L.Shah(1986).Adaptive control strategies for process control : A survey.AICHE Journal,Vol.32,6. Sternby,J.(1980).Adaptive control of extremum systems.International s.vmposium on adaptive systems, Ruhr-University,Bochum,FRG. Wakeman,A.C. ,J.M.lronside,M.Holmes,S.I. Edwards and D. Nut ton ( 1987) .Adapti ve engine controls for fuel comsumption and emissions reduction.SAE Paper 870083. Wellstead,P.E. and J.M.Bdmunds(1975). Least squares identification of closed loop systems.Int.J.Control, 21,4.
342
P. E. Wellstead and P. G. Scotson
Wellstead,P.E. and Scotson,P.G.(to appear,1988).Self-tuning extremum control. Zarrop,M.B.(1985).Analysis of a static optimiser.Private communication.
Load Speed
1..--'L-L...,'i !, spark ,i Factory le I ang map I I I
Xfa',
y(t) System
-
Estimator
~
~.--
x(t )
Parame ter estimat es
Optimising control Fig. 1. A block diagram of a self-tuning optimiser or extremum contro-ller. The estimator uses data from the system input, x(t), and output, yet), to determine the parameters of the system's performance characteristic. The controller then uses the parameter estimates to determine the optimum operating point.
~
(t)
y(t)
I,
! !
Ad j ustment map
I
L'7-- J
Optimising controller
Engine control unit (ECu)
Fig . 2. Self-Tuning spark angle optimiser combined with factory map of spark angle settings and pertur. bation signal.
60
50
Xo
r-
30
2'
_t. -----"..A-........r+.
I
"<:I, o
I I
><
0~0----~40'---~8~0----~~--~~--~~--~'----
I
I I
OptilJl isation iterat ions
Fig. 4. Engine spark angle optimisation. (Initial angle x = 20 0 btdc; optimum location Xo = 32°) . (a) Fix perturbation amplitude
52
48
.. ::
~ "<:I
" "
30
~
~ ~
".
b
><
~
go
~
200~~~~L-~L-----------L-------100 time steps (b)
Variable perturbation ampli tude
~ 28
'"
24 20 0 Optimisation iterations
Fig. 3. Illustrating the improved tuning performance with variable test perturbation amplitude (the amplitude of xpert is proportional to the mean gradient).
Fig. 5. Engine spark angle optimisation. (Initial angle x = 40° btdc assumed optimum location Xo = 32°).