Machine learning algorithm with upstream integrators

DE102024200318A1Pending Publication Date: 2025-07-17ZF FRIEDRICHSHAFEN AG
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
DE102024200318
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-15
Publication Date
2025-07-17

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method for determining a temporally dependent output signal (22) from at least one input signal (20a, 20b) comprises: receiving the at least one input signal (20a, 20b), which comprises a measurement signal and / or a control signal from a control unit (12); generating a plurality of sum signals (24a-24f) from the at least one input signal (20a, 20b), wherein each sum signal (24a-24f) is determined from values of the at least one input signal (20a, 20b) within a time window (28a, 28b, 28c) assigned to the sum signal (24a-24f), wherein the time window is a sliding time window relative to the current time; inputting the plurality of sum signals (24a-24f) into a machine learning algorithm (30); and generating the output signal (22) from the sum signals using the machine learning algorithm (30).
Need to check novelty before this filing date? Find Prior Art

Description

[0001] The invention relates to a method, a computer program, a computer-readable medium and a vehicle control unit for determining a temporally dependent output signal from at least one input signal.

[0002] Many physical processes have a temporal relationship. For example, a component exposed to a heat source will heat up only slowly. In model-based software development, such processes must be represented by physical models. However, coordinating or comparing the physical behavior between the model and reality is often difficult.

[0003] In applications in vehicles and electric drive systems, such as determining the oil temperature of a transmission, there have recently been increasing attempts to model complex physical behaviors using artificial intelligence. However, the computing power of in-vehicle microprocessors is limited. Problems with a temporal context require a computationally intensive AI network structure.

[0004] The use of artificial neural networks, in particular, generally places high demands on the processing unit. In particular, the use of recurrent layers in an artificial neural network requires mathematical operations, such as the hyperbolic tangent, which microcontrollers, such as those used in current automotive control units, can only calculate to a limited extent and require high resource requirements. The use of these networks is therefore only possible to a limited extent or requires dedicated computer architectures.

[0005] DE 10 2021 205 835 A1 describes a method for machine learning of temporal relationships in one or more measurement signals, in which pre-filters are used for an artificial neural network.

[0006] It is an object of the invention to make it possible to determine a temporally dependent output signal from an input signal also in automotive applications.

[0007] This object is achieved by the subject matter of the independent claims. Further embodiments of the invention emerge from the dependent claims and the following description.

[0008] One aspect of the invention relates to a method for determining a temporally dependent output signal from at least one input signal. The method can be executed automatically as a computer program, for example on a microcontroller and / or a control unit. It should be understood that the signals, i.e. the input signal, the output signal and the sum signals described below, are digital signals. A digital signal comprises a series of signal values, each of which is assigned to a point in time. “Temporally dependent” means that the output signal depends not only on the current value of the input signals, but also on their temporal progression.

[0009] According to one embodiment, the method comprises: receiving and / or providing the at least one input signal, which comprises a measurement signal and / or a control signal from a control unit. The input signal is generally already present in the control unit and / or the microcontroller in order to be evaluated for other purposes. For example, the input signal is a measurement signal from a sensor, such as a rotational speed signal, a speed signal, a current signal or a voltage signal. The input signal can also be a control signal, i.e. a signal that is generated by the control unit and / or the microcontroller from measurement signals, such as a shift signal for a transmission.

[0010] According to one embodiment, the method further comprises: generating a plurality of sum signals from the at least one input signal, wherein each sum signal is determined from values of the at least one input signal within a time window assigned to the sum signal, wherein the time window is a sliding time window relative to the current time. The input signal is split into a plurality of sum signals that reflect the temporal development of the input signal.

[0011] In particular, each of the sum signals depends in a different way on the temporal evolution of the input signal. For each sum signal, a time window is provided that slides relative to the current time, i.e., it begins and ends with a respective constant offset relative to the current time. The current value of the sum signal is then a sum function of the signal values of the input signal within this time window. It should be understood that this sum function can be not only a sum, but also a more general function, such as a weighted sum, as described in more detail below.

[0012] The time windows and / or the summation functions of different summation signals can be different. For example, the length, the offset to the start of the time window, and / or the offset to the end of the time window can differ. Furthermore, the summation functions can be different and, for example, have different weights.

[0013] Two, three or more sum signals can be generated from each input signal.

[0014] According to one embodiment, the method further comprises: inputting the plurality of sum signals into a machine learning algorithm and generating the output signal from the sum signals using the machine learning algorithm. The machine learning algorithm can be an artificial neural network, a support vector machine, or a random forest classifier. Since the sum signals represent a temporal development of the input signal, only the current value of the sum signals is input into the machine learning algorithm. By preprocessing using the sum functions, the machine learning algorithm can be relatively simple in structure and executed in real time on a control unit and / or a microcontroller.

[0015] The method can be implemented with a software function that enables the representation of a temporal relationship with minimal resource usage. To establish the temporal relationship, a cascade of summation functions is placed in front of the machine learning algorithm. Each input signal passes through several parallel summation functions before being input to the machine learning algorithm. The summation functions then represent the actual input signals of the machine learning algorithm.

[0016] According to one embodiment, at least one of the sum signals or all of the sum signals are a weighted sum of the values of the input signal over the time window assigned to the sum signal. A weighted sum is a sum in which each value is multiplied by a weighting factor before summing. It should be understood that the respective weight is constant at a relative offset to the current time.

[0017] The summation functions for different summation signals can have different weights. For example, the weights can decrease with increasing distance from current points in time, and / or the degree of decrease can vary for the summation signals.

[0018] According to one embodiment, at least one of the sum signals or all of the sum signals is an integral of the input signal over the time window assigned to the sum signal. In this case, the weights within the respective time window are all 1. Only the time windows differ. The sum functions can be understood as integrators and / or can be executed as definite integrals from a time t0-u to a time t0-w. t0 is the current time. u > w are offsets that define the position of the time window. The pairs of time offsets u, w differ for different sum signals for the same input signal.

[0019] The constants u and w describe the observation horizon, the extent to which the input signal is considered prior to the current time. The input signal is integrated within this observation period. Certain integrals also offer the possibility of checking the multidimensional input variable space for completeness. This makes it possible to determine which combinations of input variables have already been considered.

[0020] According to one embodiment, at least one of the sum signals or all of the sum signals is a (particularly moving) average of the input signal over the time window assigned to the sum signal. In this case, the weights within the respective time window are all 1 / L, where L=uw is the length of the time interval.

[0021] According to one embodiment, the time window assigned to a sum signal ends at the current time, i.e. w=0. The time window assigned to a sum signal begins at the current time minus a time offset u. It is possible for all time windows to end at the current time. In the case of definite integrals and / or a moving average, the sum functions differ only in the start of the respective time window. The longer the time window, the longer the observation horizon of the associated sum signal. With an integral as a sum function, a dragged, i.e. backward-looking, sliding integration of the values of the input signal is created.

[0022] According to one embodiment, the time offsets u, w of different sum signals are different. The time offsets can be set differently depending on the application. For example, the time windows can be selected so that the time windows of the sum signals are adjacent to one another. In general, the start of different time windows can be different and / or the end of different time windows can be different.

[0023] According to one embodiment, the time windows of different sum signals overlap. The end of one time window may be later than the beginning of another time window.

[0024] It is also possible for a first time window to lie entirely within a second time window. The filter for the second time window then contains all the information from the filter for the first time window.

[0025] According to one embodiment, the time windows of different sum signals have different lengths. For example, the time windows can all end or begin at the same time (the respective offsets can be the same), but begin or end at different times.

[0026] According to one embodiment, multiple input signals are received, and a plurality of sum signals are generated from each of the input signals. Each input signal is assigned multiple sum functions, such as multiple integrators. The number of sum signals or sum functions per input signal can vary from input signal to input signal. The type and size of the time windows, the weighting, and / or the type of sum function can also vary for different input signals.

[0027] According to one embodiment, the machine learning algorithm is an artificial neural network, in particular a feedforward network. Such networks can be implemented in a particularly resource-efficient and high-performance manner and are therefore particularly suitable for execution on a microcontroller and / or a control unit. Such artificial neural networks have an input layer into which summed signals are input, at least one hidden layer in which the signals are further processed, and an output layer that outputs the output signal.

[0028] In general, a non-recurrent machine learning algorithm, and in particular a non-recurrent neural network, can be used to solve the given physical problems. Due to its structure, this algorithm is generally unable to capture temporal relationships, but can be optimized for use on automotive microcontrollers and / or ECUs.

[0029] According to one embodiment, the at least one input signal is a transmission torque, a rotational speed, a motor torque, a motor current, and / or a motor voltage. According to one embodiment, the output signal is a temperature signal. For example, the output signal can be a motor temperature of an electric motor, in particular a stator and / or a rotor of the motor, wherein the input signals can include a rotational speed, a motor current, and / or a motor voltage. As a further example, the output signal can be an oil temperature of a transmission, wherein the input signals can include a transmission torque or an engine torque and / or a shift signal.

[0030] According to one embodiment, the method is executed by a microcontroller. A microcontroller can be a semiconductor chip containing a processor, a RAM, and peripheral functions. The microcontroller can, in particular, control a component of a vehicle, for example, be part of a transmission control or an engine control.

[0031] A further aspect of the invention is a computer program that, when executed on at least one processor, performs the method as described above and below. A further aspect of the invention is a computer-readable medium on which such a computer program is stored. A computer-readable medium can be a hard disk, a USB storage device, a RAM, a ROM, an EPROM, or a FLASH memory. A computer-readable medium can also be a data communications network, such as the Internet, which enables the download of program code.

[0032] A further aspect of the invention is a vehicle control unit configured to perform the method as described above and below. The computer program can be executed, for example, on a microcontroller of the vehicle control unit. The computer program can be stored in a working memory of the microcontroller.

[0033] In the following, embodiments of the invention are described in detail with reference to the accompanying figures. Fig. 1 shows a vehicle with a control unit according to an embodiment of the invention. Fig. 2 shows a diagram illustrating a method according to an embodiment of the invention. Fig. 3 and Fig. 4 show diagrams illustrating sum functions used in the method from Fig. 2 can be used.

[0034] The reference symbols used in the figures and their meanings are summarized in the list of reference symbols. Identical or similar parts are generally provided with the same reference symbols.

[0035] Fig. 1 shows a vehicle 10 with a control unit 12. The control unit 12 can be, for example, a transmission control for a transmission of the vehicle 10 or an engine control for an electric drive of the vehicle 10. The control unit 12 has a microcontroller 14 in which the method described below is executed.

[0036] The Fig. Figure 2 shows a diagram illustrating this method. Using the method, a temporally dependent output signal 22 can be determined from at least one input signal 20a, 20b. The signals 20a, 20b, 22 are digital signals comprising a series of signal values, each of which corresponds to a time t iis assigned. By “temporally dependent” is meant that the output signal 22 depends not only on the current value of the input signals 20a, 20b, ie the value of the signals 20a, 20b at time t0, but also on their temporal course, ie on the times t i < t0.

[0037] In general, the output signal 22 estimates a physical quantity that depends on the temporal progression of the input signals 20a, 20b. One example of this is the temperature, which depends not only on the current state of a vehicle component (such as a transmission or an engine), but also on how the component was previously operated. The output signal 22 can be a temperature signal. For example, the output signal 22 can be a motor temperature of an electric motor, wherein the input signals 20a, 20b can include a rotational speed, a motor current, and / or a motor voltage. As a further example, the output signal 22 can be an oil temperature of a transmission, wherein the input signals 20a, 20b can include a transmission torque and / or a shift signal.

[0038] In a first step of the method, the at least one input signal 20a, 20b is received in the microcontroller 14 or is provided there. The input signal(s) 20a, 20b can comprise a measurement signal and / or a control signal from a control unit 12. The input signal 20a, 20b is generally already present in the control unit 12 and / or the microcontroller 14 in order to be evaluated for other purposes. For example, the input signal 20a, 20b is a measurement signal from a sensor, such as a rotational speed signal, a speed signal, a current signal or a voltage signal. The input signal 20a, 20b can also be a control signal, i.e. a signal that is generated by the control unit 12 and / or the microcontroller 14 from measurement signals, such as a shift signal for a transmission.

[0039] In a further step of the method, a plurality of sum signals 24a, 24b, 24c, 24d, 24e, 24f are generated from each of the input signals 20a, 20b. Each sum signal 24a-24f is determined from values of the respective input signal 20a, 20b, wherein the values are taken from a time window associated with the respective sum signal.

[0040] A plurality of sum signals 24a-24f are generated from each of the input signals 20a, 20b. For this purpose, several sum functions 26a, 26b, 26c, 26d, 26e, 26f are assigned to each input signal 20a, 20b. In the example of Fig. 2, the sum signals 24a, 24b, 24c are generated from the input signal 20a with the sum functions 26a, 26b, 26c and the sum signals 24d, 24e, 24f are generated from the input signal 20b with the sum functions 26d, 26e, 26f.

[0041] Although the sum functions 26a-26f are represented as integrators, they can be more general functions, as described below. In this case, the sum functions 26a-26f are definite integrals that are calculated from a time t0-u i or t0-v i be executed until the current time t0.

[0042] The Fig. 3 and Fig. 4 shows examples of summation functions 26a-26c in the form of integrators. Time is shown to the right. Each integrator of the input signal 20a has a different time window 28a, 28b, 28c or a different observation period. The time windows 28a, 28b, 28c begin at time t0-u1, t0-u2, t0-u3 and all end at the current time t0. The time offset u i The defined time window 28a, 28b, 28c does not necessarily have to be the same if there are several input signals 20a, 20b. For example, i and v i in the Fig. 2 be different.

[0043] In the Fig. 3 shows a step function as input signal 20a, which can serve as the input signal of the integrators 26a, 26b, 26c. Furthermore, three sum signals 24a, 24b, 24c are shown, which were integrated using different time windows 28a, 28b, 28c. The lengths of the time windows 28a, 28b, 28c are 100 ms, 250 ms, and 500 ms, respectively. It can be seen that the smaller the time window 28a, 28b, 28c, the lower the final value of the sum signal 24a, 24b, 24c. Likewise, the smaller the time window 28a, 28b, 28c, the faster the sum signal 24a, 24b, 24c reaches its final value.

[0044] In the Fig. 4 is a sine function as input signal 20a, which is processed by the same integrators 26a, 26b, 26c as in the Fig. 3 is integrated. The temporal relationship of the input signal 20a in conjunction with the time windows 28a, 28b, 28c of the integrators 26a, 26b, 26c clearly demonstrates that these are capable of representing a temporal relationship. Likewise, the integrators 26a, 26b, 26c and the more general summation functions described below are relatively simple and resource-efficient to calculate, thus representing a good alternative to complicated machine learning algorithms, such as recurrent networks.

[0045] Returning to Fig. Section 2 describes generalizations of the integrators. First, it should be noted that the number of sum signals 24a-24f or sum functions 26a-26f per input signal 20a, 20b can vary from input signal to input signal. The number of input signals 20a, 20b can also vary from application to application. Two, three, or more sum signals 24a-24f can be generated from each input signal 20a, 20b.

[0046] In general, the sum signals 24a-24f depend on an individual time window 28a, 28b, 28c. The time window 28a, 28b, 28c is a sliding time window relative to the current time t0.

[0047] Each of the sum signals 24a-24f depends in a different way on the temporal development of the respective input signal 20a, 20b. For each sum signal 24a-24f, a time window 28a, 28b, 28c is provided that slides relative to the current time t0, i.e., it begins and ends with a respective constant offset relative to the current time t0. The current value of the sum signal 24a-24f is then a sum function of the signal values of the input signal 20a, 20b within this time window 28a, 28b, 28c.

[0048] In general, a time window 28a, 28b, 28c can begin at time t0-u and extend to a time t0-w. u > w are time offsets that define the position of the time window 28a, 28b, 28c. The pairs of time offsets u, w differ for different sum signals 24a-24f for the same input signal 20a, 20b. The time offsets u, w of different sum signals 24a-24f can be different and can be defined differently depending on the application. For example, the time windows 28a, 28b, 28c can be selected such that the time windows 28a, 28b, 28c of the sum signals 24a-24f are adjacent to one another. It is also possible for the time windows 28a, 28b, 28c of two sum signals 24a-24f to be of different lengths, overlap, lie within each other, have different start times, and / or have different end times. The corresponding time offsets can be selected accordingly.

[0049] A sum signal 24a-24f can be a weighted sum of the values of the input signal 20a, 20b over the time window 28a, 28b, 28c assigned to the sum signal 24a-24f. A weighted sum is a sum in which each value is multiplied by a weighting factor before summing. The sum functions 26a-26f for different sum signals 24a-24f can have different weights. For example, the weights can decrease with increasing distance from current time t0, and / or the degree of decrease can vary for different sum signals 24a-24f.

[0050] As already described, a sum signal 24a-24f can be an integral of the input signal 20a, 20b over the time window 28a, 28b, 28c assigned to the sum signal 24a-24f. In this case, the weights within the respective time window 28a, 28b, 28c are all 1. Only the time windows 28a, 28b, 28c differ.

[0051] Another possibility is that a sum signal 24a-24f is an average of the input signal 20a, 20b over the time window 28a, 28b, 28c assigned to the sum signal 24a-24f. In this case, the weights within the respective time window 28a, 28b, 28c are all 1 / L, where L is the length of the time interval.

[0052] The time window 28a, 28b, 28c assigned to a sum signal 24a-24f can end at the current time t0. In this case, the time window 28a, 28b, 28c assigned to a sum signal 24a-24f begins at the current time t0 minus a time offset u. It is possible that all time windows t0 end at the current time t0. In the case of definite integrals and / or a moving average, the sum functions 26a-26f then differ only in the beginning of the respective time window 28a, 28b, 28c. The longer the time window 28a, 28b, 28c, the longer the observation horizon of the associated sum signal 24a-24f.

[0053] In a further step of the method, the sum signals 24a-24f are input into a machine learning algorithm 30. Generally, a non-recurrent machine learning algorithm 30, and in particular a non-recurrent neural network 30, can be used to solve the given physical problems. Due to its structure, this algorithm generally cannot capture temporal relationships, but can be optimized for use in a microcontroller 14 and / or control unit 12. The temporal relationships are provided by the sum signals 24a-24f. The output signal 22 is generated by the machine learning algorithm 30 from the sum signals 24a-24f.

[0054] The machine learning algorithm 30 can be an artificial neural network, a support vector machine, or a random forest classifier. Since the sum signals 24a-24f represent a temporal development of the input signals 20a, 20b, only the current value at time t0 of the sum signals 24a-24f is input into the machine learning algorithm 30. Preprocessing using the sum functions 26a-26f allows the machine learning algorithm 30 to have a relatively simple structure and be executed in real time on a control unit 12 and / or a microcontroller 14.

[0055] As in the Fig.As shown in Figure 2, the machine learning algorithm 30 can be an artificial neural network, in particular a feedforward network. Such networks can be implemented in a particularly resource-efficient and high-performance manner and are therefore particularly suitable for execution on a microcontroller 14 and / or a control unit 12. Such an artificial neural network 30 has an input layer 32 into which summed signals 24a-24f are input, at least one hidden layer 34 in which the signals are further processed, and an output layer 36 that outputs the output signal 22.

[0056] The machine learning algorithm 30 and in particular the neural network 30 are trained with learning data in the form of input signals 20a, 20b and output signals 22 recorded therefor, wherein during training the input signals 20a, 20b are converted into the sum signals 24a-24f using the sum functions 26a-26f.

[0057] With appropriately selected summation functions 26a-26f, in particular based on integrals and mean values, it is also possible to invert the summation functions 26a-26f, which can be used to optimize training.

[0058] With data-based approaches, it is important that the training data contain as many operating points as possible that can occur during normal operation. Using invertible summation functions 26a-26f, it is possible to determine which combination of input signals 20a, 20b have not yet been tested at the input layer 32. By inverting the summation functions 26a-26f, an input signal 20a, 20b can be determined that corresponds to the necessary input variables of the summation functions 26a-26f. This allows a discovered "gap" in the training data to be retraced, and this operating point to be retrained. This method also makes it possible to examine the multidimensional input value range for its blind spots and fill it with new training data.

[0059] Additionally, it should be noted that "comprising" does not exclude other elements or steps, and "one" or "an" does not exclude a plurality. Furthermore, it should be noted that features or steps described with reference to one of the above embodiments may also be used in combination with other features or steps of other embodiments described above. Reference signs in the claims are not to be considered as limitations. Reference symbol 10 vehicles 12 Control unit 14 microcontrollers 20a Input signal 20b Input signal 22 Output signal 24a Sum signal 24b Sum signal 24c sum signal 24d sum signal 24e sum signal 24f sum signal 26a Sum function 26b Sum function 26c Sum function 26d Sum function 26e Sum function 26f Sum function 28a time window 28b Time window 28c time slot 30 Machine learning algorithm, artificial neural network 32 Input layer 34 hidden layer 36 Output layer QUOTES CONTAINED IN THE DESCRIPTION

[0000] This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions. Cited patent literature

[0000] DE 10 2021 205 835 A1

[0005]

Claims

[1] Method for determining a temporally dependent output signal (22) from at least one input signal (20a, 20b), the method comprising: Receiving the at least one input signal (20a, 20b) comprising a measurement signal and / or a control signal from a control unit (12); Generating a plurality of sum signals (24a-24f) from the at least one input signal (20a, 20b), wherein each sum signal (24a-24f) is determined from values of the at least one input signal (20a, 20b) within a time window (28a, 28b, 28c) assigned to the sum signal (24a-24f), wherein the time window is a sliding time window relative to the current time; Inputting the plurality of sum signals (24a-24f) into a machine learning algorithm (30); Generating the output signal (22) from the sum signals using the machine learning algorithm (30). [2] Method according to claim 1, wherein at least one of the sum signals (24a-24f) is a weighted sum of the values of the input signal (20a, 20b) over the time window (28a, 28b, 28c) associated with the sum signal (24a-24f). [3] Method according to claim 1 or 2, wherein at least one of the sum signals (24a-24f) is an integral of the input signal over the time window (28a, 28b, 28c) associated with the sum signal (24a-24f). [4] Method according to one of the preceding claims, wherein at least one of the sum signals (24a-24f) is an average value of the input signal over the time window (28a, 28b, 28c) associated with the sum signal (24a-24f). [5] Method according to one of the preceding claims, wherein the time window (28a, 28b, 28c) associated with a sum signal (24a-24f) ends at the current time; and / or wherein the time window (28a, 28b, 28c) associated with a sum signal (24a-24f) begins at the current time minus a time offset; and / or wherein the time offsets of different sum signals (24a-24f) are different; and / or wherein the time windows (28a, 28b, 28c) of different sum signals (24a-24f) overlap; and / or wherein the time windows (28a, 28b, 28c) of different sum signals (24a-24f) are of different lengths. [6] Method according to one of the preceding claims, wherein a plurality of input signals (20a, 20b) are received and a plurality of sum signals (24a-24f) are generated from each of the input signals. [7] Method according to one of the preceding claims, wherein the machine learning algorithm (30) is an artificial neural network; wherein the artificial neural network is a feedforward network; wherein the artificial neural network has an input layer (32) into which sum signals (24a-24f) are input, at least one hidden layer (34) and an output layer (36). [8] Method according to one of the preceding claims, wherein the at least one input signal (20a, 20b) comprises a transmission torque, a rotational speed, a motor torque, a motor current and / or a motor voltage; and / or wherein the output signal (22) is a temperature signal. [9] Method according to one of the preceding claims, wherein the method is carried out by a microcontroller (14); wherein the microcontroller (14) controls a component of a vehicle (10). [10] A computer program which, when executed on at least one processor, carries out the method according to any one of the preceding claims. [11] A computer-readable medium having stored thereon a computer program according to claim 10. [12] Control unit (12) for a vehicle (10) which is designed to carry out the method according to one of claims 1 to 9.

Citation Information

Patent Citations

  • Computer-implemented method and computer program for machine learning of temporal relationships in one or more measurement signals, and method and computer program for determining a measured quantity.

    DE102021205835A1