Sunteți pe pagina 1din 15

Information Sciences 177 (2007) 33413355 www.elsevier.

com/locate/ins

Application of adaptive control to the uctuation of engine speed at idle


DaeEun Kim a, Jaehong Park
a b

b,*

Neurobiology Lab, University of Leicester, University Road, Leicester LE1 7RH, United Kingdom School of Electrical Engineering, Seoul National University, Shinlim-dong, Gwanak-gu, Seoul 151-742, South Korea Received 25 August 2005; received in revised form 14 November 2006; accepted 27 December 2006

Abstract Idle speed control in a fuel-injection engine system has focused on controlling long-term averages of engine speed, but short-term uctuations of engine speed have been neglected. The torque dierences among cylinders inuence the idle stability and cause vibration of the vehicle. In this paper, we introduce two intelligent control systems to reduce the uctuations of engine speed at idle, an evolutionary computing control based on genetic algorithms and a stochastic control based on Alopex algorithm. We rst estimate the torque dierences among the cylinders by observing an engine cycle of crankshaft angular speed. Then the uniformity level over the engine speed is fedback into the control system. It manipulates spark ignition timings to suppress unbalanced combustions among the cylinders. We test the two adaptive approaches with simulation of a nonlinear engine model, and compare their performances. 2007 Elsevier Inc. All rights reserved.
Keywords: Engine speed uctuation; Idle stability; Spark ignition timing; Alopex algorithm; Genetic algorithm

1. Introduction Idle speed control in automotive engines is one of popular subjects in vehicular technology. Mostly the control of engine speed at idle time has focused on handling long-term average values of engine speed and several techniques have been tested; H1 control [6], fuzzy control [1], l-synthesis [18] and sliding mode control [35,4,5,26,27], but in reality there is a periodic variation of engine speed due to the nature of combustion. Each cylinder has its own combustion which produces an instantaneous torque. The engine speed temporarily increases in proportion to the torque production and then the speed soon falls down because of friction and pumping loss. As a result, the engine speed oscillates in a sinusoidal form as shown in Fig. 1, where each periodic wave corresponds to each cylinder combustion. A series of combustions form one cycle of waves, which will be called an engine cycle. The engine cycle of a four-stroke spark-ignited engine thus includes four periodic waves. As the vehicle becomes aged, the torque variation among the cylinders is inevitable, and it
*

Corresponding author. Tel./fax: +82 2 886 8880. E-mail addresses: daeeun.kim@le.ac.uk (D. Kim), blue@ee.snu.ac.kr (J. Park).

0020-0255/$ - see front matter 2007 Elsevier Inc. All rights reserved. doi:10.1016/j.ins.2006.12.021

3342

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

Nomenclature P hk _ ai m g(P) Sk Td TL Nac Gk kP s _ ao m T wk T Mk TI kN Ndc kac manifold pressure kth cylinder spark advance (1042) mass ow rate into the manifold manifold pressure inuence function signal used for T wk accessory load (060) N m load torque engine speed (rpm) torque quasi-dc variation coecient manifold dynamics constant throttle angle (535) mass ow rate out of the manifold torque wave of the kth cylinder quasi-dc torque of kth cylinder internally developed torque rotational dynamics constant quasi-dc value of engine speed (rpm) constant for quasi-ac engine speed

2100

2300

2000

2100

1900

rpm

1800 1700 1700 1500 1600

rpm

1900

crankshaft angular position,

crankshaft angular position,

Fig. 1. Examples of instantaneous engine speed (four-stroke spark ignition engine, Hyudai Excel automobile); periodic waves result from the individual cylinder torques. The engine speed includes two components, quasi-ac signals and quasi-dc signals (dotted lines, averages of the idle speed). Note that (a) has more uniform waves, which are desired for the engine system, than (b).

inuences the idle stability. The variation often results from the injector and spark plug dierence, the charged air dierence, and the compression ratio dierence. Yet the dierence of torque production among cylinders has been rarely considered for the idle speed control, even though it is a signicant factor for the idle stability. We can divide an instantaneous engine speed into two components, for convenience, quasi-dc and quasi-ac components see Fig. 1. Let T(a) be an instantaneous torque as a function of crankshaft angular position, a and x(a) be an instantaneous angular speed. Then we can calculate averages of these quantities over one engine cycle or more as follows: Z h Z h 1 1 T avg h T a da; xavg h x a d a; h h0 h0 h h0 h0

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

3343

where h is a crankshaft angular position and h0 is the initial position. The value Tavg(h) is a quasi-dc component of T(h) and xavg(h) is that of x(h). Similarly we consider quasi-dc parts for torque and engine speed on time domain and denote the quasi-ac components as follows: Z t0 1 T ac t T t T avg t0 T t 0 T s ds; t t 0 t0 Z t0 1 0 xac t xt xavg t xt 0 xs ds: t t 0 t0 Generally the unbalanced torque production among cylinders superposes a non-uniform uctuation on the periodic variation of engine speed. Our goal is to reduce the torque dierences among cylinders for the idle stability and to maintain uniform waves of the engine speed for each engine cycle. It will ultimately increase the engine performance and fuel economy. A sequence of non-uniform waves or a large uctuation of engine speed may be related to the misre of engine. The detection of misre should be a prior condition to reduce the uctuation of engine speed, and we note that the misre can be recognized by monitoring the uctuation level. There have been several approaches to nd the engine misre. The mean values of acting torques over given engine cycles was considered [7], but this method may not be useful to detect small uctuations of engine speed with stable quasi-dc components. Ribbens et al. [28,29] showed that the fundamental frequency of the engine speed within an engine cycle can be a primary index for the engine misre and as an extension of the idea, the frequency analysis was used to detect injection failures [22]. Similarly, Naik [24] used crankshaft speed measurements for misre detection and applied adaptive ltering techniques to improve the detection accuracy. The uctuation of engine speed is actually involved with torque variation among cylinders, but the relation between the torque and crankshaft angular speed is not linear. Thus, there has been an eort to nd the nonlinear relation using support vector machines [10]. Spark timing is one of critical factors to inuence the torque variation, and its tuning process has been tested to reduce torque disturbances. An engine model including torque generation and spark ignition has been considered [2]. The peak pressure in a cylinder can also be used to estimate the optimal spark timing to reduce cycle-by-cycle combustion variation [8]. A model predictive control scheme was suggested to reject the torque disturbances by adjusting the spark advance [23]. Shim et al. [30] showed an engine model in which the torque variation among cylinders can be reected in the uctuation of engine speed within an engine cycle. Our previous experiments for misre detection [29] demonstrated that this kind of engine speed uctuation can be identied with the frequency analysis. In this paper, we suggest intelligent control systems to tackle the uctuation of engine speed. To simplify the control problem, we assume that spark advances are major control variables to inuence the uctuation signicantly and the engine speed alone will be observed. Shim et al. [30] introduced this control problem and applied a PI control of ignition timings to their engine plant model in simulation. In their approach, the peak of engine speed waves was measured to estimate the torque level for each cylinder, and the torque was compared with neighbour torque values. The dierence of the torque productions triggered control of spark ignition timings. However, their nonlinear control has a diculty in adapting the system itself to various operating conditions since the system was developed for xed parameters in the engine model. Moreover, the peaks of engine speed waves may not reect the torque property accurately. Thus, we introduce new uniformity measures1 based on the frequency analysis and the shape of engine speed waves. To solve the uctuation problem at engine speed, two approaches as adaptive control system, an evolutionary computing control and a probabilistic learning control, will be applied to the engine system in simulation. A preliminary study of evolutionary computing control and stochastic control was published in the proceedings [20,25]. 2. Engine model To test the idle speed control, a nonlinear engine model will be considered and it follows the engine model used by Shim et al. [30], which includes a term of random uctuation of engine speed waves as well as quasi-ac
1

These measures estimate how much balanced the engine torques are, which can also be used for the misre detection.

3344

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

components of engine speed. The engine model in this paper assumes a four-stroke spark ignition engine, and the model is described as a set of nonlinear dynamic equations, although it is a simplied model for the real engine system. Manifold dynamics: _ k P m _ ai m _ ao ; P _ ai 1 0:907s 0:0998s2 gP ; m _ ao 0:0005968N ac 0:1336P 0:0005341N ac P 0:000001757N ac P 2 ; m & 1; P < 50:66; g P 0:0197101:325P P 2 1=2 ; P P 50:66: Torque dynamics: x 2pN ac =60; T Mk 39:22 Gk 325024 2 _ ao 0:0112h2 m k 0:000675hk x 0:635hk 0:0216x 0:000102x ; 120N ac   t k1 xk pN k ; N k 600; 60 2N k 1 1 sin2xk sin3xk ; 2 6 for k 1; . . . ; 4; 1

S k sinxk

T wk 0:8uS k 1uS k 1:68 TI


4 X k 1

T Mk T wk ;

T L N dc =263:172 T d ; ( 1; if x P 0; u x 0; otherwise: Engine speed: _ ac 5N ac k ac T I T L : N Ignition timing, throttle angle, and fuel ow are signicant factors to aect the internally developed torque, after all, the engine speed. To simplify the control problem, the engine model has the throttle angle and fuel ow xed at some degree. We assume that the amount of fuel injection is almost xed in the engine system at idle, so the variation of fuel mass ow is not considered for the manifold pressure P in the engine model. Then spark timings will become a major control parameter to inuence the internal torque for the individual cylinders. Thus, controlling spark ignition timings can reduce the torque dierences among the cylinders and improve the idle stability. For the idle speed control system, four spark advances (hk for k = 1, . . . , 4) are taken as control variables, and an instantaneous engine idle speed containing the quasi-ac component (Nac) as a measure variable. The throttle angle is xed at 13.5 and the load torque at 30 N m, respectively. 3. Method The dynamic equation modelling a fuel-injection engine system is nonlinear, and it is dicult to solve the control problem analytically. Thus, we use adaptive search mechanisms to nd the best control inputs producing a series of uniform periodic waves. For the control of idle speed uctuations, we need to evaluate how much balanced the periodic waves are. We rst describe methods of how to measure the uctuation of engine speed waves. Based on the balance criteria, an evolutionary control and a stochastic control are applied to the above engine model in simulation.

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

3345

3.1. Uniformity measure of engine speed waves For a four-stroke spark ignition engine, there are four periodic waves of engine speed each of which corresponds to a cylinder combustion. The shape of these four waves can determine the degree of unbalanced combustions among cylinders. The large dierence of torque productions will distort the uniformity of the four waves, and change their amplitudes or shapes. A solution to estimate the uniformity is to measure and compare the peak values of idle speed waves as Shim et al. [30] showed, but the peak may not reect exactly the torque condition when the speed waves are noisy. To evaluate the uniformity eectively, we apply the Discrete Fourier Transform (DFT) to data samples collected in a period of one engine cycle. Normally the same pattern of engine speed or torque distribution can be observed every engine cycle as shown in Fig. 1. We assume that the engine system has a crankshaft position sensor used for engine control or misre detection [29]. The sensor consists of a permanent magnet around which a coil is wound, and it is placed near the ywheel with 100 teeth. The sensor output is a frequency-modulated signal depending on the instantaneous crankshaft angular speed. The sensor can produce a xed number of samples in an engine cycle regardless of the wheel rotation speed. Here, we observe one-dimensional spatial frequencies to obtain the uniformity measure over an engine cycle of data samples. For a given vector  a a0 ; a1 ; a2 ; . . . ; aN 1 , let Yfull be the magnitude of the fundamental frequency in the DFT corresponding to one full period of engine cycle, and Yhalf be that of the second harmonic frequency corresponding to half the period. Then       X X N 1 N 1   k  2k  Y full  ak xN ; Y half  ak xN ;    k 0  k 0
2pik =N where xk , and jj is the magnitude of a complex number. N e A non-uniformity degree can be dened over an engine cycle of data as follows:       X X N 1 N 1    2k  c S 1 c1 Y full c2 Y half c1  ak x k a x   2 k N N ;    k 0  k 0

where c1 and c2 are coecients for the non-uniformity S1. We argue that the weighted sum of the two magnitudes, that is, S1 will be a factor to determine the uniformity level over a cycle of four waves. A large value of the sum represents a high uctuation of engine speed ripples. We will apply this measure to the tness function of a genetic algorithm later. To build a complete uniformity model, we may consider all other harmonics through the Fourier transform. Yet Ribbens et al. [29] showed that the fundamental harmonic is mostly sucient to detect the misre of engine. Our simulation experiments reveal that at least the rst and second harmonic are essential to measure the uniformity of four sinusoidal waves. If the four periodic waves are completely uniform, then the magnitude of the rst harmonic and that of the second harmonic over data samples in an engine cycle will be zero. Otherwise, it will be greater than zero. These two values estimate the symmetry of engine speed waves and so they can be an index of the uniformity. If one of the two harmonics is missing, that is, either Yfull or Yhalf in Eq. (2), is ignored, the uniformity cannot be guaranteed. For example, if we erase the term Yhalf, that is, c2 = 0, c1 = 1 in Eq. (2), this measure cannot detect a pattern of unbalanced waves shown in Fig. 2a where the ampli765 755 760 750 750 740

rpm

rpm

rpm
53.7 54.0

745 735 725 715 53.4 53.7 54.0

740 730 720 710 53.4

730 720 710 700 54.0

54.3

54.7

Time, second

Time, second

Time, second

Fig. 2. Examples of frequency measurements over engine speed: (a) Yfull = 0, Yhalf > 0, (b) Yfull > 0, Yhalf = 0 and (c) Yfull = Yhalf = 0.

3346

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

tude of the rst wave is dierent from that of the second (although S1 is close to zero). Similarly, if we erase the term Yfull, that is, c1 = 0, c2 = 1, the measure still has a problem of detecting some unbalanced shape displayed in Fig. 2b. Thus, we need at least two factors, Yfull and Yhalf, to obtain desirable uniformity over the four waves note Yhalf = Yfull = 0 in Fig. 2c. Generally the two harmonics are sucient to measure the uniformity of the four waves and S1 is one of the simplest criteria which need only a little computation time. Now we show another uniformity measure over engine speed waves. We assume that each sinusoidal wave can be characterized by the magnitude of the mth frequency in the DFT over a set of data samples  a a0 ; a1 ; a2 ; . . . ; aN 1 . Then the equation to evaluate the shape of the ith wave is   =m1   iNX  mk  ak xN ; Yi   ki1N =m
2pikm=N where m is the number of cylinders (m = 4) and xmk . Yi tends to indicate the shape of each wave, N e corresponding to the ith cylinder torque, and it is less sensitive to noise than the peak measurement of each wave. As an alternative uniformity measure, S2 is dened as " #1=2 m X m 1X 2 S2 Y i Y j : 3 2 i1 j1

It calculates the root of squared sum of shape dierences among the waves. The measure S2 will become smaller as the uniformity of engine speed waves increases. It can be treated as an energy function or an error measure in the stochastic control algorithm which will be described in detail later. The two uniformity measures shown above, S1 and S2, will be applied to evolutionary computing control and stochastic control, respectively. They will also be used for performance evaluation. 3.2. Evolutionary computing control The nonlinear engine model is simulated as a target system and we wish to nd desirable control inputs, spark ignition timings for a given track of engine speed at idle. To overcome the limitation of classical linear control for the nonlinear plant model, a genetic algorithm [16,12] as an adaptive search mechanism will be rst applied as a means of nding optimal control values. A genetic algorithm is one of popular approaches to obtain near-optimal solutions in optimization problems [12]. Our control objective is to reduce the uctuation of idle speed in order to produce uniform engine speed waves. Thus, the uctuation level of engine idle speed will be evaluated as a tness function and a set of spark timings will be represented as a chromosome string. Genetic algorithms run a population of genome strings to nd the best tness in a given system environment through genetic operators. Consequently, we can obtain the best setting of spark timings to reduce the uctuation of engine speed. The spark timing takes the form of a binary vector in a chromosome string in the evolutionary computation. Suppose we have m cylinders, that is, m spark advances each of which needs r bits for its real value in the engine system. Then the spark timing value of the kth cylinder can be represented as a r-bit vector, (bk1, bk2, bk3, . . . , bkr). Now the whole spark timing information is encoded in a m r-bit string as follows: b11 ; b12 ; b13 ; . . . ; b1r ; b21 ; b22 ; b23 ; . . . ; b2r ; . . . ; bm1 ; bm2 ; bm3 ; . . . ; bmr ; where bij is a binary value, 1 or 0 for i = 1, . . . , m and j = 1, . . . , r. Then each spark advance dk can be calculated as follows: dk a
r X i1

bki 2i b;

where k is a cylinder number, b is the base position for a real value, and a is a scaling coecient such that dk ranges from 10 to 42. For example, if a chromosome string is represented as a 40-bit vector (0000110000 0001001000 0001100000 0010000100), then d1 = 11.5, d2 = 12.25, d3 = 13.0, and d4 = 14.125.

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

3347

The tness function in the evolutionary computation is dened as follows: F 1: 0 ; 1: 0 S 1

where S1 is the uniformity measure given in Eq. (2) with c1 = c2 = 1. Higher tness F indicates more uniform waves. We used a population size of 20 and a tournament selection in the evolutionary computation. A rank-based selection is applied to the tournament selection of group size four in this paper. The tournament selection initially partitions the whole population into multiple groups for the tness comparison. Inside the tournament group, the tness of each member is compared each other and ranked. A higher rank of genomes in the group have more probability of reproducing themselves for the next generation. In our approach, a population is initialized with random bit vectors. For each group of four members, the two best chromosomes are rst selected and then they reproduce themselves with mutation (this mutation helps nding better solutions than simple reproduction without mutation). One point crossover over a copy of two best chromosomes, followed by mutation, will produce two new ospring. These new ospring replace the two worst chromosomes in the group. The crossover rate is 0.7, and the mutation rate is set to two over chromosome length in the experiments. We may dene a dierent type of tness to measure the uniformity level of engine speed, for instance, 5000 S1 or 1 S1/5000. However, it will not inuence the performance of evolutionary computation, because we use a rank-based selection to choose better chromosomes in the evolutionary process. 3.3. Stochastic control algorithm Decision of desirable control inputs for a nonlinear system plant is a non-trivial problem. The genetic algorithm as a nonparametric method is an alternative for the optimization problem, but in the approach the input change and the current system state are not taken into account for the engine control. Observing the system dependency on the previous engine state and input change would be helpful for an ecient engine control. Thus, we calculate a cross-correlation between the input changes and the response output change. A stochastic optimization algorithm, called Alopex algorithm, is tested with the correlation between engine control values (spark timings) and engine outputs (uniformity of engine speed). The Alopex algorithm is a stochastic parallel algorithm which was originally suggested by Harth and Tzanakou [13] for visual receptive eld mapping, and has since been applied to a wide variety of optimization problems, including multi-layer neural network training, pattern recognition, and adaptive control systems [33,34,32]. The basic concept of the Alopex algorithm is that the cross-correlation between input change and response change supplies a direction of the next control input; a positive correlation leads to the decrease of control input and a negative correlation to the increase of input if the response is a penalty function. For the uctuation control of idle speed, we will follow a stochastic approach to avoid local optima of the response. For a stochastic Alopex algorithm, the deterministic dynamic rule for cross-correlation can be replaced by a stochastic rule using Glauber dynamics [33]. The Glauber dynamics originally described the eect of thermal uctuations in a spin-glass system [11,15], and this probabilistic model has been applied to various neural network elds including Boltzmann machine [11,17,14]. In our experiments, the spark timing advances are updated simultaneously and eciently only depending on local cross-correlation between changes in spark advances and those in the energy function of uniformity measure. The response function or energy function Rn for the nth iteration, which is equal to the square of the uniformity measure S2 in Eq. (3), is dened as Rn
m X m 1X 2 Y n Y n j ; 2 i 1 j 1 i

where m is the number of cylinders (m = 4) and Y n i is the torque measure for the ith cylinder at the nth iteration as given in Section 3.1. This is basically a least-squared error calculation, and the response of Rn can be regarded as a total energy of the parameters to be optimized where the parameters leading to lower energy means more desirable control values. We assume the energy function is a function of spark advances and other

3348

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

engine parameters. Considering the eect of spark advance hk for the kth cylinder, the total energy function Rn can be restated as follows: Rn
m 1X Rn ; 2 k 1 k

Rn k

m X n 2 Y n i Y k ; i1

n where Y n k is a torque measure for the kth cylinder at the nth iteration. Then the response change DRk is dened as n n 1 D Rn k Rk Rk m X i1 2 m X n1 2 Y in1 Y k : i1

n Y n i Y k

Assuming that a change of the kth spark advance hk greatly inuences the kth torque measure Yk, the change of uniformity Yi for i 5 k can be treated as small. With this assumption, we have DRn % DRn k and the above equation is simplied as follows: " # m m h i X X n n 2 n n n1 2 n1 n1 n n 1 n n 1 n D Rk % Y k 2Y k Y i Y k 2Y k Y i Yi : Y k Y k m 1Y k Y k 2
i1;i6k i1;i6k

For example, D Rn 2

DRn 2

Y n 2

for a four-cylinder engine is n1 n1 n n n Y2 3Y n 2 Y 2 2 Y 1 Y 3 Y 4 :

From this equation we can infer that this system follows a reactiondiusion model [3], and it shows the reason why the engine control with a simple comparison between neighbour waves could work [30]. For the stochastic control, at the nth iteration, the spark advance hk for the kth cylinder is updated with a probabilistic rule,
n hn k hk  k ;

where k is a small positive or negative step of size d with the following probability: & d with probability P n k; k d with probability 1 P n k: The probability P n k will be dependent on the correlation as given below: Pn k 1 ; n 1 expDhn k DRk =T

where T is a positive temperature parameter for thermal uctuation dened in the Glauber dynamics to detern mine the eective randomness in the system. Dhn k and DRk are displacements in the spark advance hk and error n measure Rk , respectively:
n n1 D hn k hk hk ; n n1 DRn k Rk Rk :

n The above stochastic algorithm takes random walks in the direction of decreasing the energy Rn k , ultimately R . The temperature parameter T is set to the average of absolute values of the cross-correlation over all the spark timing advances. As time passes, the algorithm will gradually reduce the temperature parameter T when control inputs are getting close to the optimal points. In the experiments, d in k is updated to 90% smaller value for every 10 iterations, and it helps convergence to the optimal points. The only assumption in this stochastic approach is that the energy function is a function of spark advances and other xed engine parameters.

4. Experiments The objective of idle speed control in this paper is to reduce the uctuation of engine speed caused by torque variation among the cylinders. We can observe four uniform sinusoidal waves if there is no engine speed uctuation or no imbalance of cylinder combustions. For any arbitrary uctuation of idle speed, the control

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

3349

eect of spark timing advances is measured with the balance criteria in Eqs. (2) and (3) for a given engine cycle. The block diagram of the engine control system is shown in Fig. 3. For simulation experiments, the torque variation is given by the term Gk in Eq. (1) in the engine model. The coecients, Gks are changed to reect the torque level of each cylinder. For G1 = G2 = G3 = G4 = 1, there is no torque dierence among the four cylinders, and it will produce uniform waveforms without any controller see Fig. 4a. Dierent Gk parameters will develop the uctuation of engine speed ripples as shown in Fig. 4bd, which simulates asymmetrical combustions of cylinders. Now we show how to reduce the uctuation with the suggested adaptive controllers. The two control systems, evolutionary search control and stochastic control, use on-line updates of spark timings, since we assume their application to the real-time engine system. For the control process, we need to collect an engine cycle of data, measure the uctuation level of engine speed, com-

torque load throttle angle

Desired uniformity

Idle Speed Controller

spark timing

ENGINE MODEL

Uniformity Measure

TEST UNIFORMITY for one engine cycle

engine speed

Fig. 3. Block diagram of the engine control system.

790 780 770 760

790 780 770 760

rpm

750 740 730 720 710 0 0.16 0.32 0.48 0.64

rpm

750 740 730 720 710 0 0.16 0.32 0.48 0.64

Time (sec)
790 780 770 760 780 770 760 750

Time (sec)

rpm

750 740 730 720 710 0 0.16 0.32 0.48 0.64

rpm

740 730 720 710 700 0 0.16 0.32 0.48 0.64

Time (sec)

Time (sec)

Fig. 4. Engine speed with torque variation: (a) G1 = G2 = G3 = G4 = 1.0; (b) G1 = G4 = 1.0, G2 = 0.98, G3 = 0.99; (c) G1 = 0.985, G2 = 0.98, G3 = 0.99, G4 = 1.0; (d) G1 = 0.985, G2 = 0.98, G3 = 0.99, G4 = 0.965.

3350

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

pute the next control signal based on a given control algorithm, and then nally activate the control signals. This process can be repeated for every engine cycle until a satisable performance is achieved. For the realtime experiment, we can mount a crankshaft position sensor near the ywheel such that the sensor signals are collected into a laptop computer through a DMA channel, as in our previous experiments of misre detection [29]. If we assume 6001200 RPM for the crankshaft angular speed at idle, an engine cycle takes 0.10.2 s for a four-cylinder engine. For each cycle, a high-speed portable computer (using DMA with double buering) can steal the CPU time to measure the uctuation in angular speed and also calculate the appropriate control signals. On a 1.73 GHz Pentium computer, both the evolutionary computing control and the Alopex control take 0.03 ms or less to calculate the uniformity measures based on the DFT and produce appropriate spark timings as control inputs for each engine cycle. In the evolutionary computation, the CPU time needed to reproduce a new population for the next generation is also negligible. Thus, the feedback control can, in principle, modify the spark advances every engine cycle, depending on the previous uniformity measure. In our simulation experiments, control signals are updated every three cycles, and we allow those engine cycles to cover the computation time of the above control methods, the access time to the peripheral devices and a stable transition of engine speed after updating the control signals. We rst applied the genetic search controller to nd the best spark timings for a given system conguration. The dierence in the torque production among the cylinders can be reduced by changing spark timings with the controller. Fig. 5 shows that the evolutionary computing controller can successfully reduce the uctuation. The advantage of the genetic search controller is that we do not need to consider the system conguration and it can be applied to any complex nonlinear engine system without diculty because of its global search mechanism using the tness function. The evolutionary search approach, however, takes a relatively long time to nd an optimal system setting and occasionally choose system-disturbing spark advances in its search process, which may cause vibration of the vehicle or unwanted knock. Fig. 6 shows an example of the uniformity measures in time course as the genetic search control progresses. At least 200 evaluations of spark timings were required to obtain desirable spark advances leading to uniform waves of engine speed. There were many sharp peaks in the control process to indicate that some bad chromosomes are evaluated as high levels of non-uniformity. It is because the mutation operator in the genetic algorithm changes a bit vector randomly and makes a sudden change of spark advances. Even though mutations were allowed only on the lower 5 bits in the 10-bit representation of spark timings, frequent non-uniform waves could not be avoided. The two uniformity measures S1 and S2 are not equivalent, but they have similar transition curves where the two measures are calculated over the same chromosome; here, only S1 was used as the tness function in the evolutionary computation. As an alternative control method, the stochastic Alopex control was applied to the uctuation of engine speed. Fig. 7 shows that the uctuation disappears by the eect of the cross-correlation mechanism as the iteration number increases. Almost completely uniform waves are obtained after 50 iterations; each iteration corresponds to one evaluation of a new set of spark timings and it is applied every three engine cycles. Fig. 8

790 780 770 760

790 780 770 760

rpm

rpm
29.2 29.6 30.0

750 740 730 720 710

750 740 730 720 710 116.8 117.2 117.6

Time (sec)

Time (sec)

Fig. 5. An example of uctuation control with genetic algorithms for the condition G1 = G4 = 1.0, G2 = 0.98, G3 = 0.99 (a) after ve generations and (b) after 23 generations.

D. Kim, J. Park / Information Sciences 177 (2007) 33413355


3000 1000 900 2500 800

3351

Uniformity S1

2000

Uniformity S2

700 600 500 400 300 200 100

1500

1000

500

0 0 50 100 150 200 250 300

0 0 50 100 150 200 250 300

evaluations

evaluations

Fig. 6. Uniformity measure with the number of evaluations in the evolutionary control (a) measure S1 and (b) measure S2.

790 780 770 760

790 780 770 760

rpm

750 740 730 720 710 4.8 5.2 5.6

rpm

750 740 730 720


710

9.6

10.0

10.4

Time (sec)
790 780 770 760 790 780 770 760

Time (sec)

rpm

750 740 730 720 710 14.4 14.8 15.2

rpm

750 740 730 720 710 24

24.4

24.8

Time (sec)

Time (sec)

Fig. 7. An example of uctuation control with Alopex algorithm for the condition G1 = 0.985, G2 = 0.98, G3 = 0.99, G4 = 1.0: (a) 10 iterations, (b) 20 iterations, (c) 30 iterations and (d) 50 iterations.

shows the progress of uniformity levels for the congurations in Fig. 4bd; the Gk conditions are here denoted as cases 1, 2 and 3, respectively. The stochastic Alopex control was tested 25 times for each case. For every experiment, the initial spark timings were set to h1 = h2 = h3 = h4 = 25.6. The two uniformity measures S1 and S2 show again similar transition curves in the uniformity levels. We note that the stochastic Alopex algorithm normally produces a smooth change of spark timings and also a gentle transition of uctuation level in the search process for the best spark advances. The controller can adapt itself to a given engine system environment even with a continuous change of engine states.

3352
1000 900

D. Kim, J. Park / Information Sciences 177 (2007) 33413355


400
case 1 case 2 case 3

350

case 1 case 2 case 3

Nonuniformity S1

800 700 600 500 400 300 200 100 0 0 20 40 60 80 100

Nonuniformity S2

300 250 200 150 100 50 0

20

40

60

80

100

Iteration number

Iteration number

Fig. 8. Uniformity measure with iterations in the stochastic control (the average and error bars calculated over 25 repeated runs for a given condition) (a) measure S1 and (b) measure S2. Table 1 Success rate (%) with several ranges of Gks in the stochastic control Range of Gk 0.961.00 0.971.00 0.981.00 0.991.00 Uniformity threshold c S 1 < 200 92.6 96.6 99.2 100.0 c S 1 < 100 86.8 92.4 98.6 100.0 c S 1 < 50 76.4 87.0 95.2 99.6 c S 2 < 10 82.8 89.2 96.2 99.6 S1 193.7 122.1 63.1 34.0

S 1 indicates the average uctuation in the search process.

Table 2 Success rate (%) with several ranges of Gks in the evolutionary control Range of Gk 0.961.00 0.971.00 0.981.00 0.991.00 Uniformity threshold c S 1 < 200 74.8 83.4 93.4 99.4 c S 1 < 100 50.2 61.0 76.4 86.4 c S 1 < 50 21.8 22.4 30.0 39.6 c S 2 < 10 25.4 33.8 40.8 55.2 S1 445.9 365.7 365.7 261.9

S 1 indicates the average uctuation in the search process.

To see the eciency of the two types of controllers, we tested four dierent ranges of torque variation Gk and measured the success rates as shown in Tables 1 and 2. There are four dierent ranges of Gks. Each Alopex control was run with 120 iterations (120 updates of spark timings) and then extra 20 engine cycles keeping the best spark advances were simulated without control. The average of S1 or S2 values in the period of the last 20 engine cycles, which is denoted as c S 1 or c S 2 , was measured to check the stable performance for each experiment. For a specic range of Gks, we tested 500 random sets of Gks within the bound and estimated the success rate; a success is dened as the case in which the averaged uniformity measure over the last 20 engine cycles is lower than a given threshold. In Table 1, the success rate increases when the range of Gks becomes smaller. A larger range of Gks leads to local optima more frequently and its performance becomes worse. We found there is little shape dierence among the four sinusoidal waves in appearance if the uniformity c S 1 is below 100. When we assume that the measure c S 1 100 or c S 2 10 is a reasonable cuto threshold to support uniform waves of engine speed, a success rate of 80% or higher is recorded with the stochastic controller. The probabilistic change of spark timings may occasionally go in a wrong direction, and in that case the control system needs more time to reach desirable spark timings.

D. Kim, J. Park / Information Sciences 177 (2007) 33413355


60

3353

Success rate, S2 < 10 (%)

50

40

30

20

10

0.5

1.5
2

2
1

2.5

Coefficent C (with C = 1)

Fig. 9. Eect of variation on the coecient c2 in S1 for the target performance S2 (s: the range of Gk is 0.971.00, *: the range of Gk is 0.981.00, and error bars indicate the standard deviation over ve trials).

We repeated the same procedure of experiments with the evolutionary control. One evolutionary experiment ran 20 generations with a population size of 20, corresponding to 400 evaluations of spark advances. As shown in Table 2, the evolutionary control is much worse in performance or success rate than the stochastic Alopex control. We calculated the average level over the whole uctuations occurring in the search process, which is represented as S 1 (sum of S1 values over the total number engine cycles). The averaged uctuation is much higher in the genetic search controller. Even a change of evolutionary parameters on the crossover rate, mutation rate, or chromosome selection mechanism did not reach the performance level of the stochastic Alopex control. Small mutation rates can improve the uctuation level, S 1 , but the evolutionary control often reaches local optimal points and rarely achieves c S 1 < 50. In the above evolutionary computation, we used coecients c1 = c2 = 1 for S1 in Eq. (2). To see the inuence of the two parameters, Yfull and Yhalf, on the performance, we evolved spark timings under dierent S1 conditions with varying c2 values from 0.0 to 3.0 (but with xed c1 = 1). For a given tness function S1, we ran the evolutionary computing control 100 times and calculated the success rate for the target performance, c S 2 < 10. Fig. 9 shows that (c1 = 1,c2 = 2) can improve the target performance, although it is still worse in performance than the Alopex approach. To speed up the convergence to near-optimal control solutions, we may apply a Pareto optimization [9,19] to minimize the two objectives, Yfull and Yhalf for the uniformity S1 in the evolutionary computation instead of using the weighted sum of the two factors. It might produce better solutions in the evolutionary computing. The evolutionary controller tests a variety of spark timings causing a number of high uctuation bounces due to the genetic operators, and it may be classied as an open-loop control. It would be more useful in a complex nonlinear engine model which requires diverse search for the best control values. In contrast, the stochastic Alopex controller produces an ecient and stable performance with a kind of feedback control. The Alopex controller exploits the system property that each cylinder torque is greatly inuenced by its own spark timing, and the cross-correlation information between input change and response change. This accelerates the convergence speed to near-optimal spark advances. For a safe operation of the vehicle, the Alopex controller could be recommended. 5. Discussion In this paper, we applied intelligent control approaches to the uctuation of engine speed at idle time. The control objective is to achieve balanced combustions of the engine system by reducing the torque variation among cylinders. The control system is involved with two phases, continuous on-line monitoring over engine combustions and a control action adjusting spark advances. Engine misre or uctuation of engine speed may produce vibration and disturbance of the vehicle and thus degrade the comfortability. The above control oper-

3354

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

ation can increase the overall engine performance through the tuning process and thus extend life time of the engine system. In addition, it will help improve fuel economy and comfortability of the vehicle. The engine model we tested includes a dynamic state or quasi-ac component of engine speed depending on the internal torque of the individual cylinders. However, it does not cover a wide range of operating conditions including a variation of fuel ow and throttle angle. To simulate the real engine system more accurately, we need to add to the engine model dynamic features of various factors inuencing the internal torque and engine speed. We leave the design of a more rened engine model and the corresponding control system for future work. Our control approaches have been applied to engine models with dierent levels of throttle angles or load torques, and the pattern of control performance (not shown in this paper) was similar to that in the above experiments. The suggested intelligent control methods are nonparametric approaches which rarely depend on the engine parameters. They search for the best control values, that is, spark timings in a nondeterminstic way without exploring the relation between the torque and the instantaneous engine speed. In that respect, they can be easily tested on an arbitrary engine model with various operating conditions and also have a potential of application to the real engine system, although the control processes are rather slow. The suggested methods may test system-disturbing spark timings in their control process. If we nd an accurate model for a given engine plant, we can simulate the control system to nd the optimal timings and then transfer the best values into the real system. To improve our evolutionary approach, we can apply a probabilistic distribution model over promising solutions and local search information in the evolutionary algorithm [31]. Here, we did not consider the stability of the control system. Possibly we can test a more elaborate control system which guarantees the system stability and also changes control variables eciently. An adaptive control strategy using the recurrent high-order neural networks and the feedback linearization [21] might be an alternative choice for complex nonlinear engine systems. 6. Conclusion A fuel-injection engine system may experience a short-time uctuation of crankshaft angular speed at idle, due to the fuel injector calibration variations. Maldistribution of air and fuel among the cylinders can lead to a torque variation and the corresponding uctuation of idle speed as the vehicle becomes aged. In this paper, we propose two dierent control approaches to reduce the uctuation of engine speed at idle. The uctuation control can be dened as an optimization problem to nd desirable spark advances minimizing the torque variation among the cylinders. We rst introduced two uniformity measures to estimate the uctuation level over an engine cycle of idle speed, and then applied two dierent methods, evolutionary computing control and stochastic Alopex control. In the stochastic Alopex control, the degree of balance in the torque productions among cylinders is represented as an energy function depending on the shape of engine speed waves. In contrast, the genetic search control exploits the uniformity level based on the frequency analysis. The simulation experiments demonstrate that the two types of controllers using the uniformity measures can reduce uctuations of engine speed eectively. The results suggest that the stochastic control can be more useful for the real-time tuning process of spark timings than the evolutionary control. References
[1] M. Abate, N. Dosio, Use of fuzzy logic engine idle speed control, SAE Transactions 99 (6) (1990) 873880. [2] A. Balluchi, L. Benvenuti, M.D. Di Benedetto, C. Pinello, A.L. Sangiovanni-Vincentelli, Automotive engine control and hybrid systems: challenges and opportunities, Proceedings of the IEEE 88 (7) (2000) 888912. [3] Y. Bar-Yam, Dynamics of Complex Systems, Addison Wesley, 1997. [4] A.I. Bhatti, S.K. Spurgeon, R. Dorey, C. Edwards, Sliding mode congurations for automotive engine control, International Journal of Adaptive Control and Signal Processing 13 (2) (1999) 4969. [5] A.I. Bhatti, S.K. Spurgeon, R. Dorey, Idle speed control of an automotive engine using a robust nonlinear controllerobserver pair, European Journal of Control 6 (6) (2000) 525539. [6] C. Carnevale, A. Moschetti, Idle speed control with h-1 technique, in: SAE paper 930770, 1993. [7] N. Cavina, F. Ponti, Engine torque nonuniformity evaluation using instantaneous crankshaft speed signal, Journal of Engineering for Gas Turbines and Power 125 (4) (2003) 10501058.

D. Kim, J. Park / Information Sciences 177 (2007) 33413355

3355

[8] H. Cho, J. Lee, J. Yoo, A study of the adaptive control of spark timing using cylinder pressure in a spike ignition engine, Proceedings of the I MECH E Part D, Journal of Automobile Engineering 213 (5) (1999) 435440. [9] C.A. Coello, D.A. van Veldhuizen, G.B. Lamont, Evolutionary Algorithms for Solving Multi-Objective Problems, Kluwer Academic Publishers, New York, 2002. [10] E. Gani, C. Manzie, Intelligent computing methods for indicated torque reconstruction, in: Proceedings of Intelligent Sensors, Sensor Networks and Information Processing Conference, 2004, pp. 259264. [11] R.J. Glauber, Time-dependent statistics of the Ising model, Journal of Mathematical Physics 4 (1963) 294307. [12] D.E. Goldberg, Genetic Algorithms in Search, Optimization, and Machine Learning, Addison Wesley, Reading, MA, 1989. [13] E. Harth, E. Tzanakou, Alopex: a stochastic method for determining visual receptive elds, Vision Research 14 (1974) 14751482. [14] S. Haykin, Neural Networks, MacMillan Publishing Company, 1994. [15] J. Hertz, A. Krogh, R.G. Palmer, Introduction to the Theory of Neural Computation, Addison Wesley, 1991. [16] J.H. Holland, Adaptation in Natural and Articial Systems, University of Michigan Press, Ann Arbor, MI, 1975. [17] J.J. Hopeld, Neural networks and physical systems with emergent collective computational abilities, Proceedings of the National Academy of Sciences 79 (1982) 25542558. [18] D. Hrovat, B. Bodenheimer, Robust automotive idle speed control design based on l-synthesis, in: Proceedings of American Control Conference, 1993, pp. 17781783. [19] D. Kim, Minimizing structural risk on decision tree classication, in: Y. Jin (Ed.), Multi-Objective Machine Learning, Studies in Computational Intelligence, Springer, 2006, pp. 241260. [20] D. Kim, J. Park, Engine speed uctuation control with genetic algorithm in the automotive engines, in: Proceedings of International Conference on Control, Automation, Robotics, and Vision, 1996. [21] Z. Lu, L.-S. Shieh, G. Chen, N.P. Coleman, Adaptive feedback linearization control of chaotic systems via recurrent high-order neural networks, Information Sciences 176 (16) (2006) 23372354. [22] V. Macian, J. Galindo, J.M. Lujan, C. Guardiola, Detection and correction of inject failures in diesel engines on the basis of turbocharger instantaneous speed frequency analysis, Proceedings of the I MECH E Part D Journal of Automobile Engineering 219 (5) (2005) 691701. [23] C. Manzie, H.C. Watson, A novel approach to disturbance rejection in idle speed control towards reduced idle fuel consumption, Proceedings of the I MECH E Part D Journal of Automobile Engineering 217 (8) (2003) 677690. [24] S. Naik, Advanced misre detection using adaptive signal processing, International Journal of Adaptive Control and Signal Processing 18 (2) (2004) 181198. [25] J. Park, D. Kim, Stochastic approach to engine speed uctuation control in the automotive engines, in: Proceedings of International Conference on Information System Analysis and Synthesis, 1998. [26] P.F. Puleston, S. Spurgeon, G. Monsees, Automotive engine speed control: a robust nonlinear control framework, IEE Proceedings Control Theory and Applications 148 (1) (2001) 8187. [27] P.F. Puleston, S. Spurgeon, G. Monsees, Airfuel ratio and speed control for low emission vehicles based on sliding mode techniques, Proceedings of the Institution of Mechanical Engineers Part IJournal of Systems and Control Engineering 216 (I2) (2002) 117124. [28] W.B. Ribbens, S. Bieser, Advanced signal processing for misre detection in automotive engines, in: IEEE International Conference on Acoustics, Speech, and Signal Processing, 1995, pp. 29632966. [29] W.B. Ribbens, J. Park, D. Kim, Application of neural networks to detecting misre in automotive engines, in: IEEE International Conference on Acoustics, Speech, and Signal Processing, 1994, pp. 593596. [30] D. Shim, J. Park, P.P. Khargonekar, W.B. Ribbens, Reducing automotive engine speed uctuation at idle, IEEE Transactions on Control Systems Technology 4 (4) (1996) 404410. [31] Z. Sun, Q. Zhang, E.P.K. Tsang, De/eda: a new evolutionary algorithm for global optimization, Information Sciences 169 (2005) 249 262. [32] K.P. Unnikrishnan, K.P. Venugopal, Alopex: a correlation-based learning algorithm for feedforward and recurrent neural networks, Neural Computation 6 (3) (1994) 469490. [33] K.P. Venugopal, A.S. Pandya, Alopex algorithm for training multilayer neural networks, in: Proceedings of IEEE IJCNN, 1991, pp. 196201. [34] K.P. Venugopal, A.S. Pandya, R. Sudhakar, Alopex algorithm for adaptive control of dynamic systems, in: Proceedings of IEEE IJCNN, 1992, pp. 875880. [35] T. Vesterholm, E. Hendricks, Advanced nonlinear engine speed control systems, in: Proceeding of American Control Conference, 1994, pp. 15791580.

S-ar putea să vă placă și