Title of Invention

CALIBRATION SYSTEMS AND METHODS FOR SCHEDULED LINEAR CONTROL ALGORITHMS IN INTERNAL COMBUSTION ENGINE CONTROL SYSTEMS USING GENETIC ALGORITHMS, PENALTY FUNCTIONS, WEIGHTING, AND EMBEDDING

Abstract A method for calibrating an engine control system comprises identifying engine calibration sub-problems for an engine calibration; seeding an initial generation for one of the engine calibration sub-problems with known/good individuals; optimizing free parameters in the one of the engine calibration sub-problem over a parameter/coefficient scheduling space using a genetic algorithm; using penalty functions; identifying a next one of the engine calibration sub-problems containing a prior one of the engine calibration sub-problems; seeding an initial population of the next one of the engine calibration sub-problems with know/good individuals; repeating until the engine calibration containing the engine calibration sub-problems is solved; and operating an engine control system of a vehicle using the engine calibration.
Full Text CALIBRATION SYSTEMS AND METHODS FOR SCHEDULED LINEAR
CONTROL ALGORITHMS IN INTERNAL COMBUSTION ENGINE CONTROL
SYSTEMS USING GENETIC ALGORITHMS, PENALTY FUNCTIONS,
WEIGHTING, AND EMBEDDING
FIELD
[0001] The present disclosure relates to engine control systems for
vehicles, and more particularly calibration of engine control systems for vehicles.
BACKGROUND
[0002] The statements in this section merely provide background
information related to the present disclosure and may not constitute prior art.
[0003] Vehicle manufacturers typically use dynamic compensation in
internal combustion engine (ICE) control systems. Examples include cylinder air
rate prediction, fuel dynamics compensation, idle speed control, and closed-loop
fuel control. Some manufacturers use control systems that are derived from
scheduled, linear models of the process under control or feature scheduled,
linear models in their implementation. For example, see Dudek et al., U.S.
Patent No. 7,246,004, "Nonlinear Fuel Dynamics Control with Lost Fuel
Compensation".
[0004] Analytical methods that derive control systems from models
usually require calibrated models. Calibrated models may be personalized to the
particular product using the control system. There are a variety of methods for
calibrating these kinds of models. Most methods involve some form of
optimization. For example see, Dudek, U.S. Patent No. 7,212,915, "Application

of Linear Splines to Internal Combustion Engine Control", which uses Least
Squares. Alternatively, any other multivariabie optimization method can be used.
SUMMARY
[0005] A method for calibrating an engine control system comprises
identifying engine calibration sub-problems for an engine calibration; seeding an
initial generation for one of the engine calibration sub-problems with known/good
individuals; optimizing free parameters in the one of the engine calibration sub-
problem over a parameter/coefficient scheduling space using a genetic algorithm;
using penalty functions; identifying a next one of the engine calibration sub-
problems containing a prior one of the engine calibration sub-problems; seeding
an initial population of the next one of the engine calibration sub-problems with
know/good individuals; repeating until the engine calibration containing the
engine calibration sub-problems is solved; and operating an engine control
system of a vehicle using the engine calibration.
[0006] Further areas of applicability will become apparent from the
description provided herein. It should be understood that the description and
specific examples are intended for purposes of illustration only and are not
intended to limit the scope of the present disclosure.
DRAWINGS
[0007] The drawings described herein are for illustration purposes only
and are not intended to limit the scope of the present disclosure in any way.

[0008] FIG. 1 is a functional block diagram of an exemplary vehicle
engine control system; and
[0009] FIG. 2 is a flowchart illustrating step of a method for calibrating
a vehicle.
DETAILED DESCRIPTION
[0010] The following description is merely exemplary in nature and is
not intended to limit the present disclosure, application, or uses. It should be
understood that throughout the drawings, corresponding reference numerals
indicate like or corresponding parts and features. As used herein, the term
module refers to an Application Specific Integrated Circuit (ASIC), an electronic
circuit, a processor (shared, dedicated, or group) and memory that execute one
or more software or firmware programs, a combinational logic circuit, and/or
other suitable components that provide the described functionality.
[0011] The present disclosure relates to systems and methods for
calibrating scheduled, linear models and control systems, which are increasingly
being used for internal combustion engine (ICE) control systems. Most
optimization methods lend themselves to embedding methods described in the
present disclosure. Some standard methods, such as regression via least
squares, are incapable of ensuring that the models (and their inverses) are stable
and non-oscillatory. The primary benefit of least squares is the efficient numerical
methods for calculating solutions.

[0012] Other methods, like multivariate optimization and similar
gradient search methods can be used, together with properly chosen penalty
functions to ensure stability and non-oscillatory behavior. However, these
methods can easily get stuck on local optima and fail to find the best solutions.
These methods are also sensitive to a starting point, so starting fairly near the
optimal solution may be desirable.
[0013] Even when it is possible to start near the optimum solution, the
additional of one or more penalty functions can make the cost function ill-
behaved and cause the gradient search method to fail. In the example set forth
below, prior attempts using gradient search methods failed for this reason.
[0014] Genetic algorithms (GA's) work well for smaller problems with
few parameters because GA's can discover the optimal solution even when there
is no initial guess. In these circumstances, the standard procedure is to have the
GA start with an initial population selected randomly from all possible solutions.
Moreover, because GA's rarely get stuck on local minima (for small problems
with few parameters), GA's often converge to the true, optimal solution if they
have had sufficient time.
[0015] With higher order problems, these desirable features break
down. In particular, it is necessary to employ extra steps presented herein to
reduce the problem size and to provide some individuals in the initial population
that are good enough to at least satisfy the constraints imposed by the penalty
functions.

[0018] The present disclosure interleaves optimization problems with
small and large number parameters to find nearly optimal solutions for
increasingly larger sub-problems. Because the method seeds the initial
population of each sub-problem with the solution of the preceding sub-problem,
the method ensures that the GA does not spend an inordinate (possibty infinite)
amount of time searching for a set of individuals that reasonably meet the
additional criteria imposed by the penalty functions.
[0017] More particularly, the present disclosure employs the following
techniques'. (1) embedding methods, (2) seeding the initial population with some
good individuals (from the preceding problem in the sequence of optimization
problems), (3) use of penalty functions to ensure stability of forward and inverse
models; and (4) use of penalty functions to ensure non-oscillatory control.
[0018] The present disclosure proposes using an optimization scheme
featuring genetic algorithms (GA's), cost functions that balance model (algorithm)
performance, weighting, penalty functions, and/or embedding.
[0019] GA's help ensure that the optimizations do not get stuck on local
minima, even when the cost functions are itt-behaved (as they often are when
multiple penalty functions are used). Specially chosen cost functions ensure that
model (algorithm) performance is balanced over all operating regions. Weighting
adjusts model or control performance in critical regions. Penalty functions
ensure that the models and control algorithms calibrated in this manner meet the
additional requirements (beyond mere optimality) necessary for use in typical
internal engine control algorithms. Embedding overcomes the shortcomings of

GA's when solving problems with large number of parameters and rigorous
constraints (as captured in the penalty functions).
[0020] GA's are optimization schemes that mimic biological properties
of evolution: selection, inheritance, and variation. In GA's, an individual is a set
of parameters that characterize a potential solution to the problem at hand. To
start the process, an initial population of individuals (i.e., sets of parameters that
are potential solutions) is created and evaluated. Next, pairs of individuals in the
population are allowed to "breed," producing offspring that contain elements of
the parameters from both parents.
[0021] The probability that an individual is allowed to breed is a
function of the individual's fitness. The more fit an individual is (i.e., the better
the solution the parameters achieve), the higher the probability that the individual
will be chosen to breed (and pass on some part of his parameters). After a new
population of offspring is created, its individuals are evaluated, and bred to
produce a new generation of offspring per the foregoing description. The
process stops when the fittest individual in the population is good enough or no
further improvements in fitness from generation to generation are apparent.
[0022] The standard references on GA's suggest starting with a
completely random initial population. This approach, however, is ineffective for
the highly constrained problems considered here. In fact, it appears to be
necessary to "seed* the initial population with a few "good" individuals that satisfy
the constraints penalized by the penalty functions discussed in the sequel.

Penalty Functions
[0023] In order for scheduled linear models and control algorithms to
be useful in ICE control system, the models and control algorithms should be
stable. In some cases, it may be desirable for models to have stable inverses.
For example only, a fuel dynamics model should have a stable inverse because
the inverse is the fuel dynamics control. Moreover, it may be necessary for either
the model or its inverse to be non-oscillatory.
[0024] In order to ensure these additional attributes (stability, non-
oscillation), calibrators usually augment the cost function with a series of penalty
functions that penalize violation of the desired attributes. To that end, a standard
formulation would cast the calibration problem as an optimization problem
wherein the calibrator is to find the set of model parameters that minimizes some
cost function, C. To limit solutions to those that are stable, augment the cost
function with a penalty term, Ci = Ki*l, where Ki is a gain and I is a measure of
instability (of either the forward or / and the inverse model).
[0025] Now the calibration (optimization) problem is to find the set of
model parameters that minimizes C + Ci. Similarly, if non-oscillatory behavior is
required, the disclosure proposes to add a penalty function to penalize oscillatory
behavior. If O is a measure of oscillatory behavior, and Co = Ko*O is a cost
function that penalizes oscillatory behavior, then the calibration problem is to find
the set of model parameters that minimizes C + Co. If both stability and non-
oscillatory behavior are required, minimize C + Ci + Co.

Exemplary Cost Function
[0026] Consider a scheduled linear model of an engine process to be
controlled:

where the αi and β1 are functions of engine operating condition. When the αi and
β1 are linear spline functions of multiple variables, Va, Vb, ..., V., with knots, Ka.i,
Kb,i . . ., Ks,i, then the hyper-rectangular regions formed by the knots:

are called "zones." In order to balance model (or control algorithm) performance
over all operating regions, use a cost function that is based on instantaneous
percent error (i.e., the percent error at each point) and accurate statistics over
each "zone" (2). Let,

Here, ymod(k) is the model (1) evaluated at time k and yact(k) is the actual signal
being modeled at time k. Define a local cost for each zone, m,

Then, a cost function that balances model accuracy over all the different zones
is:


Here, C is the cost function and n is the total number of zones. Often times, the
zones are chosen to isolate different operating behavior for the model under
construction. Moreover, zones so chosen often segregate by the average size of
the signal being modeled. In these cases, the cost function (4) has the added
benefit of balancing model accuracy over small and large signals so that neither
unduly influences model parameter choice.
Weighting
[0027] Many times model or control performance is more critical in
certain zones. In this case, zone costs in the cost function (4) can be used to
enhance model or control performance in the critical zones. For this
circumstance, the cost function becomes:

where Wm is the weighting for zone m.
Stability Penalty Functions
[0028] If the true engine behavior that is being modeled is stable, it is
desirable that the model (1) be stable as well. At any single point in the
operating region, one can define a transfer function for the model (1) and
examine its poles. The poles of (1) are the roots of the polynomial:


where the on are constants (evaluated at a single operating point). A sufficient
condition for the stability of (1) is that the modulus of each of the poles of (1) is
less than unity for each point in the operating region. Because the roots of a
polynomial are a continuous function of the polynomial's coefficients, one
measure of the stability of (1) is to examine the poles of (1) at a sufficient number
of points over the expected operating region. Moreover, like the cost function,
one can define a penalty function that penalizes instability over a zone by
evaluating the roots of the polynomial N(z) for points in the zone. Let

be the maximum modulus of any root of N(z) over a zone, m, and define

A typical value of thresh is 0.985. Then, a cost function that penalizes unstable
models is:

[0029] Notice that the penalty function (7) is zero when the maximum
module of a pole anywhere in the zone is less than the threshold. The penalty
increases very quickly when this is not the case. Applying the penalty on a zone

by zone basis allows the optimization to violate the stability constraint (mildly) in
some zones while in pursuit of the optimum set of coefficients.
[0030] If stability of the inverse model is required, treat the zeros of the
transfer function for the model (1) is a fashion analogous to the poles. The zeros
of (1) are the roots of the polynomial:

where the βi are constants (evaluated at a single operating point). A sufficient
condition for the stability of the inverse of (1) is that the modulus of each of the
zeros of (1) is less than unity for each point in the operating region. Because the
roots of a polynomial are a continuous function of the polynomial's coefficients,
one measure of the stability of (1) is to examine the zeros of (1) at a sufficient
number of points over the expected operating region. Moreover, like the cost
function, one can define a penalty function that penalizes instability of the inverse
over a zone by evaluating the roots of the polynomial D(z) for points in the zone.
Let.

be the maximum modulus of any root of D(z) over a zone, m, and define

A typical value of thresh is 0.985. Then, a cost function that penalizes unstable
inverse models is:


Of course, if both stable models and stable inverses are required, then the cost
functions (8) and (11) can be combined. Note, that it is precisely the case with
fuel dynamics models, which model a process that is inherently stable, and which
require stable inverses because the control is the inverse of the forward model.
For this case, the cost function becomes:

Oscillation Penalty Functions
[0031] In some circumstances, models or controls that are non-
oscillatory are required. Fuel dynamics compensation, for example, requires that
the inverse model of the fuel dynamics (which is the control) be non-oscillatory.
This can be handled in a fashion similar to the stability requirement by
construction of an appropriate penalty function.
[0032] For models, oscillatory behavior can be detected by examining
the impulse or step response of the model (1) with the coefficients evaluated at
various operating conditions within a zone, in a manner similar to the stability
penalty function described above. Similarly, for inverse models, the impulse or
step response of the inverse of model (1) can be used to construct a penalty

function. To that end, let pulse(k) be the response of model (1) at time k to a unit
impulse at time 0. By definition,

Let,
pulse maxm = max(0,pulse(l) - pulse(Q),pulse(2) - pulse(l),.. ., pulse(j) - pulse(j -1))
then, a cost function that penalizes oscillation in the model (1) over a zone based
on the impulse response could be:

A typical value of thresh is 0.05. With these definitions, a cost function that
penalizes oscillatory models is:

Clearly, the penalty function (13) can also be included with any of the other
penalty functions described above penalize instability in the model and / or its
inverse and oscillatory behavior.
[0033] It is possible to force other features as well. For example, in
fuel dynamics compensation, it is desirable for the inverse model to be critically
damped, in addition to being stable and non-oscillatory. For this situation, a
penalty function on the step response of the inverse model can be used. Let

step(k) be the response of the inverse of model (1) at time k to a unit step at time
0. By definition,

Let,
step maxw = max(0,step(1)-step(0),step(2)-step(1),...,step(j)-step(j-1)) ,
Zone.
then, a cost function that penalizes non-critically damped behavior and oscillation
in the inverse of model (1) over a zone is:

As before, a typical value of thresh is 0.05. With these definitions, a cost function
that penalizes non-critically damped and oscillatory inverse models is:

Clearly, the penalty function (15) can also be included with any of the other
penalty functions described above penalize instability in the model and / or its
inverse, and non-critically damped or oscillatory behavior in the inverse model.
Embedding
[0034] Finally, the disclosure proposes calibrating the scheduled, linear
models and control algorithms by solving a series of optimization problems, each

one embedded in the next. The optimization sub-problems have three elements:
(1) parameter space; (2) coefficient scheduling space; and (3) a set of "good"
individuals that can be used to "seed" the initial population (for the genetic
optimization).
[0035] Each of the sub-problems is embedded in its sequel in the
sense that: (1) a sub-problem's parameter and/or coefficient scheduling space is
contained in the parameter and/or coefficient scheduling space of its sequel, and
(2) a sub-problem's solution is used to create the "seed" individuals for the initial
population used to optimize its sequel. To that end, let P = {P, | P1 C P2 C ••• c P} be
a set of these sub-problems with their associated parameter/coefficient
scheduling spaces and "seed" individuals for their respective initial populations.
[0036] An exemplary vehicle engine control system is shown in FIG. 1.
The vehicle engine control system may need to be calibrated. Then, the
proposed, embedding solution to the optimization problem is shown by a
flowchart in FIG. 2, which is described below.
[0037] Referring now to FIG. 1, a vehicle 20 is shown. Fuel is
delivered to an engine 22 from a fuel tank 26 through a fuel line 28 and through a
plurality of fuel injectors 32. A fuel sensor 30 senses a level of fuel in the tank 26
and communicates the fuel level to a control module 42. Air is delivered to the
engine 22 through an intake manifold 34.
[0038] An electronic throttle controller (ETC) 36 adjusts a throttle plate
38 that is located adjacent to an inlet of the intake manifold 34 based upon a
position of an accelerator pedal 40 and a throttle control algorithm that is

executed by the control module 42. In controlling operation of the vehicle 20, the
control module 42 may use a sensor signal 44 indicating pressure in the intake
manifold 34. The control module 42 also may use a sensor signal 46 indicating
mass air flow entering the intake manifold 34 past the throttle plate 38, a signal
48 indicating air temperature in the intake manifold 34, and a throttle position
sensor signal 50 indicating an amount of opening of the throttle plate 38. Still
other sensors may be used.
[0039] The engine 22 includes a plurality of cylinders 52 arranged in
one or more cylinder banks 56. The cylinders 52 receive fuel from the fuel
injectors 32 where it undergoes combustion in order to drive a crankshaft 58.
Vapor from the fuel tank 26 can be collected in a charcoal storage canister 60.
The canister 60 may be vented to air through a vent valve 62. The canister 60
may be purged through a purge valve 64. When vapor is purged from the
canister 60, it is delivered to the intake manifold 34 and burned in the engine
cylinders 52. The control module 42 controls operation of the vent valve 62,
purge valve 64, fuel injectors 32 and ignition system 54. The control module 42
also is connected with an accelerator pedal sensor 66 that senses a position of
the accelerator pedal 40 and sends a signal representative of the pedal position
to the control module 42.
[0040] A catalytic converter 68 receives exhaust from the engine 22
through an exhaust manifold 70. Each of a pair of exhaust sensors 72, e.g.,
oxygen sensors, is associated with a corresponding cylinder bank 56. The
oxygen sensors 72 sense exhaust in the manifold 70 and deliver signals to the

control module 42 indicative of whether the exhaust is lean or rich. The signal
output of the oxygen sensors 72 is used by the control module 42 as feedback in
a closed-loop manner to regulate fuel delivery to each cylinder bank 56, e.g., via
fuel injectors 32. It should be noted that configurations of the present disclosure
are also contemplated for use in relation to vehicles having a single bank of
cylinders and/or a single exhaust manifold oxygen sensor.
[0041] In some implementations, the sensors 72 are switch-type
oxygen sensors as known in the art. The control module 42 may use the sensor
72 feedback to drive an actual air-fuel ratio to a desired value, usually around a
stoichtometric value which may vary depending upon concentrations of ethanol
and gasoline. A plurality of predefined engine operating regions are referred to
by the control module 42 in controlling fuel delivery to the engine 22. Operating
regions may be defined, for example, based on speed and/or load of the engine
22. The control module 42 may perform control functions that vary dependent on
which operating region of the vehicle is currently active. Fuel, air and/or re-
circulated exhaust to the engine 22 may be adjusted, i.e., trimmed, to correct for
deviations from a desired air-fuel ratio. As can be appreciated, various other
vehicle engine control systems may be used.
[0042] Referring now to FIG. 2, the method begins with step 100 and
proceeds to step 104 where the smallest sub-problem P1 is selected. In step
108, an initial generation for sub-problem P1 is seeded with known/good
individuals. In step 112, free parameters in the current sub-problem are
optimized over the parameter/coefficient scheduling space using a genetic

algorithm. In step 116, penalty functions are used to ensure stable, non-
oscillatory solutions. In step 120, a determination is made as to whether the final
sub-problem is solved. In other words, are the parameter/coefficient scheduling
spaces covered? If step 120 is false, the method continues with step 124 and a
next smallest sub-problem containing the current sub-problem is selected. In
step 128, an new initial population is seeded with know/good individuals using
the best individuals from the current sub-problem. When step 120 is true, the
method stops.
Example Embodiment
Calibrating Fuel Dynamics Compensation
[0043] Oftentimes, the coefficients in the required models are
scheduled as functions of physical variables that characterize engine operating
condition. For example, the Fuel Dynamics Compensator (FDC), which uses the
linear part of the nonlinear compensator detailed by Dudek, et al., in U.S. Patent
No. 7,246,004, "Nonlinear Fuel Dynamics Control with Lost Fuel Compensation,"
(which is incorporated herein by reference in its entirety) uses the inverse of a
nominal fuel dynamics model whose coefficients are scheduled a function of
MAP, RPM, temperature, and ethanol concentration.
[0044] It is an example of the type of control algorithm that can be
calibrated using the methods of this disclosure. In FDC, the coefficient
scheduling functions are linear splines as described by Dudek in US Patent,
7,212,915, "Application of Linear Splines to Internal Combustion Engine Control"

(which is incorporated herein by reference in its entirety). The temperature used
in the coefficient schedules can be engine coolant temperature (ECT) and/or
intake valve temperature (IVT).
[0045] In order to calibrate FDC, the engineer calibrates the nominal
fuel dynamics model, which explains the behavior of measured, burned fuel
mass (as inferred from F/A measurements taken in the exhaust port of an
internal combustion engine) in response to commanded fuel mass. The
equations for the linear part of the nominal fuel dynamics model and
compensator are:
i
Here, FM(k) is the measured, burned fuel mass that results from fuel injected on
engine cycle k, Fc(k) is the compensated fuel mass on engine cycle k, and FR(k)
is the requested (burned) fuel mass on engine cycle k. The model (and
compensator) coefficients, ai are linear spline functions of MAP, RPM, ECT, and
ETH:



Note that there will be a separate set of ai's, bij's, cij's, dij's, eij's, wij's, xij's, yij's,
and zij's for each of the ai's. Further note that FDC is required to be unit gain.
The easiest way to achieve this is to require that a7 = 1 - (a1 + a2 + a3 + a4 +
a5 + a6). The parameter, a7, therefore, is no longer independent.
[0046] The functions, UMAP(i), URPM(j), UECT(k), and UETH(I), are
called "basis functions," and the constants, MAPj, RPMj, ECTk, and ETHl, are
called "knots." Typical values for MAP, are: 15, 30, 45, 60, 75, and 90 (kPa).
Typical values of RPMj are 500, 1300, 2100, 2900, 3700, and 4500 (RPM).
Typical values for ECTk are 245, 265, 285, 305, 325, and 345 (deg k). Typical
values of ETH, are 0, 20, 40, and 60 (% ethanol). Note that with these knot
choices, there are 270 free parameters (1 constant + (2*6 +2*6 = 24) MAP/RPM
terms + (2*6 + 2*4 = 20) ECT / ETH terms)*6 coefficients (α7, is calculated from
the other ai's).


function are according to Equations (3) (or (5) if weighting is used), (7), (10), and
(15) above. Note that the error defined in (3) (or (5)) is the difference between
FM(k) and actual, measured burned fuel appropriately shifted to account for
transport delay.
[0048] By construction of the cost function (with the penalty terms), It is
clear that the optimization seeks a solution that: (1) matches the test data well;
(2) is stable; (3) has an inverse that is stable (note: the control is the inverse);
and (4) has an inverse that generates non-oscillatory and critically damped
control responses to typical inputs.
Solution
[0049] Let 91 is the set of reai numbers and q\p is the optimal solution
for a parameter, q,, when optimized over Sp. Define the family of nested sub-
problems (with their associated parameter / coefficient scheduling spaces) and
solve via the prescriptions of Figure 1:
[0050] Define P1:


Pi finds the best set of constants over the first temperature range, with ethanol
concentration set to zero, that still meet the stability and non-oscillatory
constraints. Seed the initial population with a few individuals where a1 - 0.8, au =
0.25, a5 = -0.05,32 - a3 = a6 ■ 0.
[0051] Define P2:

P2 finds the best set of constants and temperature coefficients over the same
region as P1. Seed the initial population with a few individuate with the constants
(the a/s) equal to the solution of P1 and the temperature coefficients equal to 0.
[0052] Define P3:

P3 finds the best constants, temperature coefficients, MAP coefficients, RPM
coefficients, and MAP*RPM coefficients over the same region as P1, seeding the
initial population with the optimal results from P2. Set the MAP coefficients, RPM
coefficients, and MAP'RPM coefficients to 0 for the seed individuals.
[0063] Define P4:

P4 finds the best constants and temperature coefficients over the first and second
temperature ranges, with ethanol concentration set to zero, holding the MAP,
RPM, and MAP*RPM coefficients at the optimal values from P3 and seeding the
initial population with the optimal constants and temperature coefficients from P3
For the seed individuals, set the temperature coefficients corresponding to the

second temperature range equal to the negative of the temperature coefficients
from the first temperature range (so the sum of the temperature coefficients
equals 0).
[0054] Define P5:

P5 finds the best constants, temperature coefficients, MAP coefficients, RPM
coefficients, and MAP'RPM coefficients over the same region as P4, seeding the
initial population with the optimal results from P4.
[0055] Define P6:

P6 finds the best constants and temperature coefficients over the first, second
and third temperature ranges, with ethanol concentration set to zero, holding the
MAP, RPM, and MAP'RPM coefficients at the optimal values from P5 and
seeding the initial population with the optimal constants and temperature
coefficients from P5. For the seed individuals, set the temperature coefficients
corresponding to the third temperature range equal to the negative of the sum of
the temperature coefficients from the first and second temperature ranges (so the
sum of the temperature coefficients equals 0).
[0056] Define P7.


P7 finds the best constants, temperature coefficients, MAP coefficients, RPM
coefficients, and MAP*RPM coefficients over the same region as P6, seeding the
initial population with the optimal results from P6.
[0057] Define P8:
i
Pa finds the best constants and temperature coefficients over the first, second,
third, and fourth temperature ranges, with ethanol concentration set to zero,
holding the MAP, RPM, and MAP'RPM coefficients at the optimal values from P7
and seeding the initial population with the optimal constants and temperature
coefficients from P7 . For the seed individuals, set the temperature coefficients
corresponding to the fourth temperature range equal to the negative of the sum
of the temperature coefficients from the first, second, and third temperature
ranges (so the sum of the temperature coefficients equals 0).
[0058] Define P9:

Pg finds the best constants, temperature coefficients, MAP coefficients, RPM
coefficients, and MAP*RPM coefficients over the same region as P8, seeding the
initial population with the optimal results from P8.
[0059] Define Pi0:

P10 finds the best constants and temperature coefficients over the first, second,
third, fourth, and fifth temperature ranges, with ethanol concentration set to zero,

holding the MAP, RPM, and MAP*RPM coefficients at the optimal values from P9
and seeding the initial population with the optimal constants and temperature
coefficients from Pg . For the seed individuals, set the temperature coefficients
corresponding to the fifth temperature range equal to the negative of the sum of
the temperature coefficients from the first, second, third, and fourth temperature
ranges (so the sum of the temperature coefficients equals 0).
[0060] Define Pn:

P11 finds the best constants, temperature coefficients, MAP coefficients, RPM
coefficients, and MAP*RPM coefficients over the same region as P10, seeding the
initial population with the optimal results from P10.
[0061] Define P12:

P12 finds the best constants and temperature coefficients over temperature
ranges, with ethanol concentration set to zero, holding the MAP, RPM, and
MAP*RPM coefficients at the optimal values from P11 and seeding the initial
population with the optimal constants and temperature coefficients from P11 . For
the seed individuals, set the temperature coefficients corresponding to the last
temperature range equal to the negative of the sum of the temperature
coefficients from the other temperature ranges (so the sum of the temperature
coefficients equals 0).
[0062] Define P13:


P13 finds the best constants, temperature coefficients, MAP coefficients, RPM
coefficients, and MAP*RPM coefficients over the same region as P12, seeding the
initial population with the optimal results from P12-
[0063] Define P14:

P14 finds the best constants, temperature coefficients, ethanol coefficients, and
ethanol*temperature over the entire operating range, holding the MAP, RPM, and
MAP*RPM coefficients at the optimal values from P13 and seeding the initial
population with the optimal constants and temperature coefficients from P13. For
the seed individuals, set the ethanol and ethanol*temperature coefficients to 0.
[0064] Define P15:

P15 finds the best constants, temperature coefficients, MAP coefficients, RPM
coefficients, MAP*RPM coefficients, ethanol coefficients, and
ethanol*emperature coefficients over the same region as PH. seeding the initial
population with the optimal results from P14.
[0065] Other subdivisions are possible. In particular, the sub-problems
P14 and P15 might be further subdivided. Alternatively, one could start with P1
and go directly to P4 or P6. using the constants from P1 and setting all
temperature coefficients to 0.

[0066] The benefits include more accurate control, decreased
calibration effort, and less reliance on calibrator skill. More accurate control can
lead to reduced system cost because it allows for reduced catalyst loadings while
still meeting emission standards. Decreased calibration effort reduces fixed
system cost, as does the reduced reliance on calibrator skill.

CLAIMS
What is claimed is:
1. A method for calibrating an engine control system, comprising:
a) identifying engine calibration sub-problems for an engine
calibration;
b) seeding an initial generation for one of the engine calibration sub-
problems with known/good individuals;
c) optimizing free parameters in the one of the engine calibration sub-
problem over a parameter/coefficient scheduling space using a genetic algorithm;
d) using penalty functions;
e) identifying a next one of the engine calibration sub-problems
containing a prior one of the engine calibration sub-problems;
f) seeding an initial population of the next one of the engine
calibration sub-problems with know/good individuals;
g) repeating steps c), d), e) and f) until the engine calibration
containing the engine calibration sub-problems is solved; and
f) operating an engine control system of a vehicle using the engine
calibration.
2. The method of Claim 1 wherein the penalty functions are used to ensure a
stable, non-oscillatory solution to said engine calibration sub-problems.

3. The method of Claim 2 further comprising using weighting to control
performance.

A method for calibrating an engine control system comprises identifying engine calibration sub-problems for an engine calibration; seeding an initial generation for one of the engine calibration sub-problems with known/good
individuals; optimizing free parameters in the one of the engine calibration sub-problem over a parameter/coefficient scheduling space using a genetic algorithm; using penalty functions; identifying a next one of the engine calibration sub-problems containing a prior one of the engine calibration sub-problems; seeding an initial population of the next one of the engine calibration sub-problems with know/good individuals; repeating until the engine calibration containing the engine calibration sub-problems is solved; and operating an engine control system of a vehicle using the engine calibration.

Documents:

http://ipindiaonline.gov.in/patentsearch/GrantedSearch/viewdoc.aspx?id=DbSvqq3Gc5eH1UvPWBZi2w==&loc=wDBSZCsAt7zoiVrqcFJsRw==


Patent Number 272225
Indian Patent Application Number 1477/KOL/2008
PG Journal Number 14/2016
Publication Date 01-Apr-2016
Grant Date 22-Mar-2016
Date of Filing 28-Aug-2008
Name of Patentee GM GLOBAL TECHNOLOGY OPERATIONS, INC.
Applicant Address 300 RENAISSANCE CENTER, DETROIT, MICHIGAN
Inventors:
# Inventor's Name Inventor's Address
1 KENNETH P. DUDEK 3531 ROCKY CREST COURT, ROCHESTER HILLS, MICHIGAN 48306
PCT International Classification Number F02D35/00; F02D41/24; F02D41/32;
PCT International Application Number N/A
PCT International Filing date
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 60/971,074 2007-09-10 U.S.A.