Computer-implemented method for determining a control variable vector for controlling a system
By using a computer-based method to determine the control variable vector, the problems of sudden maneuvers and oscillations caused by safety filters in driver assistance systems and autonomous driving are solved, improving system stability and comfort, protecting system components, and extending service life.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ROBERT BOSCH GMBH
- Filing Date
- 2024-09-23
- Publication Date
- 2026-04-24
AI Technical Summary
In existing driver assistance systems and autonomous driving technologies, the sudden maneuvers and oscillations (Zeno behavior) caused by safety filters affect system stability and passenger comfort, and existing technologies struggle to improve comfort while ensuring safety.
By determining the first state vector, calculating the control variable vector based on stability metrics and preset control variable vectors, and using a computer-implemented method, sudden driving maneuvers are reduced, thereby improving system stability and comfort.
It reduces the frequency of sudden driving maneuvers, improves passenger comfort, protects system components, extends their lifespan, and integrates into existing systems without compromising safety.
Smart Images

Figure CN121925601A_ABST
Abstract
Description
Background Technology
[0001] In driver assistance systems and autonomous driving, safety is considered one of the greatest challenges. Current technologies describe various extensions of a method in which a safety check is performed on the input signal of a given motion regulator using a backup controller (safe path), determining whether the output signal of the applied motion regulator guarantees safety at future points in time.
[0002] While these extended solutions achieve the theoretical design and efficient implementation of the desired safety mechanisms on the control device, the resulting safety interventions only guarantee safety provisions such as minimum / maximum lateral force or acceleration / deceleration. Real-world testing has shown that, although safety is guaranteed, these interventions often occur abruptly and may have destabilizing effects on the system. To improve the performance and acceptance of such safety concepts in motion control, it is desirable to integrate traditional stability characteristics into safety specifications not supported by existing technologies.
[0003] Historically, conditioning techniques have primarily focused on stability assurance. Modern conditioning systems entering safety-critical domains (such as driver assistance systems, autonomous driving, or robots interacting with humans) must also meet additional safety requirements. While safety filters can be used, as mentioned above, to enforce state and input constraints, their application in motion conditioning can have undesirable side effects: they may cause sudden vehicle maneuvers, including sharp steering and acceleration or braking interventions, accompanied by unpleasant effects on the entire system, including instability. An example of this might be oscillating slip angles, for instance, on low-friction surfaces (wet, icy). Safety filters can also cause strong oscillations in vehicle motion when operating near safety limits (e.g., maximum permissible lateral force). This effect is exacerbated if the desired input changes drastically from the safety-filtered input (e.g., due to repeated counter-steering by the safety filter). In the literature on safety filters, this oscillating effect is referred to as Zeno-Verhalten.
[0004] These characteristics are undesirable in most conditioning systems. Furthermore, these characteristics can be particularly problematic in autonomous driving, as these effects may be perceived as potentially dangerous and / or uncomfortable even if formal safety regulations are met. Therefore, fundamentally improved safety filters are needed in conditioning technologies. Summary of the Invention
[0005] A first general aspect of this disclosure relates to a computer-implemented method for determining a vector of control variables for regulating a system. The method includes: determining a first state vector; generating a stability rule based on a stability metric and the first state vector; receiving a preset vector of control variables; and calculating the first control variable vector based on the stability rule and the preset vector of control variables.
[0006] The second general aspect of this disclosure relates to a computer system designed to perform a computer-implemented method for determining a vector of control variables for regulating the system, according to the first general aspect (or an embodiment thereof).
[0007] The third general aspect of this disclosure relates to a computer program designed to perform a computer implementation of a method for determining a vector of control variables for regulating a system, according to the first general aspect (or an embodiment thereof).
[0008] The fourth general aspect of this disclosure relates to a computer-readable medium or signal that stores and / or contains a computer program according to the third general aspect (or its embodiments).
[0009] The method proposed in this disclosure according to the first general aspect (or its implementation) can be used to provide a modular safety control architecture. For example, the proposed method may be particularly advantageous in architectures where safety interventions have a predetermined and limited instability impact on the entire system. While adhering to safety requirements within the context of a given stability concept, the proposed method and its associated improvements still ensure a certain level of comfort in motion control. The proposed method can reduce the frequency of sudden driving maneuvers, such as sharp turns, acceleration, or braking, thereby improving passenger comfort. This can reduce the occurrence of undesirable instability effects. Another advantage may be that by reducing sudden and intense control interventions, system components, especially those used for power transmission, can be better protected, thereby extending their service life and / or enabling longer maintenance intervals. This can improve the quality of the components themselves and the overall vehicle. Another advantage is that the computer-implemented method can be integrated into existing systems, for example, by flashing it into existing control devices, and / or can be provided using cloud computing and / or edge computing.
[0010] Some terms are used in this disclosure as follows: A "state regulator" may include an algorithm (i.e., a calculation rule) that feeds back all or part of the state variables (i.e., the internal state of the controlled object) to the input variables. The state regulator may contain parameters that can weight the state variables. In some examples, the state regulator may run on a computer system. For instance, the state regulator may include a hardware module with inputs and outputs, or a part of such a hardware module.
[0011] "Vehicle" can be any device that transports passengers and / or goods. A vehicle can be a motor vehicle (e.g., a PKW (passenger car) or LKW (truck)), but can also be a rail vehicle. A vehicle can also be a motorized two-wheeled or three-wheeled vehicle. Furthermore, watercraft and aircraft can also be vehicles. A vehicle can be at least partially autonomously operated, or assisted in driving. Attached Figure Description
[0012] Figure 1 A computer implementation method for determining a vector of control variables to regulate a system is illustrated schematically.
[0013] Figure 2 An exemplary regulating loop according to one or more embodiments of this disclosure is schematically illustrated.
[0014] Figure 3 illustrates, for example, the simulation results generated when exemplary input variables are input, such as moderating variables and stability measures. Detailed Implementation
[0015] First refer to Figure 1 and Figure 2 The techniques disclosed herein are discussed. Referring to Figure 3, the possible results and advantages arising from the method disclosed herein for determining the vector of control variables for regulating a system are discussed.
[0016] Figure 1 This is a flowchart illustrating possible method steps of a computer-implemented method 100 for determining a vector of control variables to regulate a system 10. The computer-implemented method 100 for determining a vector of control variables to regulate a system 10 includes: determining a first state vector x(k) of 110; and based on a stability metric V... k The first state vector x(k) generates a stability rule of 120; a preset vector u of 130 control variables is received. des (k); and based on the stability rule and the preset vector u of the control variable. des (k) Calculate the first control variable vector u(k) of 140. In some examples, system 10 can be described by the system function f. For the state vector x(k+1) of subsequent time steps, considering the external disturbance variable w(k), the following can be applied: x(k+1) = f(x(k+1), u(k), w(k)).
[0017] In some examples, the state vector x(k) can be measured or mathematically reconstructed using an observer. In some examples, the first state vector x(k) may include one or more state variables (xk). k,1 , x k,2 , x k,3For the state vector x(k), the following can be applied: , where n x It is a natural number. In some examples, the state vector x(k) can be measured or mathematically reconstructed by an observer. In some examples, the computer-implemented method 100 can be part of filter stage 12, such as... Figure 2 As shown, this filter stage is connected after a conventional and / or known tuning module. In some examples, the control variable is a preset vector u. des (k) can include the output value of regulation level 11. In some examples, for the first control variable vector u(k), the following can be applied: ,in In this example, method 100, implemented by the computer, represents a preset vector u of control variables. des The filtering is performed by (k). In some examples, the first control variable vector u(k) and / or the control variable preset vector u des (k) can include one or more control variables (u) k,1 , u k,2 , u k,3 , ...) and preset values of control variables (u des,1 , u des,2 , u des,3 For the first control variable vector u(k), the following can be applied: , where n u It is a natural number. For the control variable preset vector u... des (k) is applicable to: ,in It is a natural number. In some examples, stability can be described using a reference trajectory. In some examples, this reference trajectory can be described using a reference state vector. and / or reference control variable vector This can be described using the following methods. In some examples, the reference can be obtained from the upper-level planning module or defined as the centerline of the current driving lane. In some examples, the instability of system 10 can be determined by the volatility, accumulative, and / or oscillatory deviation from the reference trajectory. In some examples, instability can be calculated using the weighted difference between the current state vector and / or control vector and the reference state vector or reference control variable vector.
[0018] In some examples, the stability metric V k It can be based on multiple predicted state vectors of a prediction step of number N. The first state vector x(k) can be used as the initial state vector for these multiple predicted state vectors. In some examples, the stability metric V kBy combining multiple cost functions The cost is calculated by summing over at least one first prediction step i and a second prediction step i+1 in a number of prediction steps of N. In some examples, each of the multiple cost functions can be calculated using multiple prediction state vectors. The prediction state vector and multiple second control variable vectors are included in the first prediction step i or the second prediction step i+1 of the N prediction steps. The control variable vector in the corresponding prediction step is formed. In some examples, the number of prediction steps N can be 0 to 10, 0 to 100, 0 to 500, 0 to 1000, or greater than 1000. For the stability metric V... k The calculation is applicable when summing over N prediction steps: .
[0019] In some examples, the stability metric V k It can be achieved through a quadratic cost function To calculate. Additionally, or alternatively, in some examples, multiple predicted state vectors. The state vectors in the equation can be weighted using a first weight matrix Q, and / or multiple second control variable vectors. The control variable vector can be weighted using the second weight matrix R. For example, the quadratic cost function can be expressed as follows: In some examples, the first weight matrix Q and / or the second weight matrix R can be positive definite matrices. For example, by choosing matrices Q and R as positive definite matrices, the stability metric V... k It can indicate future deviations relative to a reference trajectory. For example, sustained oscillations can cause V... k It may be infinite and therefore unstable, while the stability measure V k A finite value can indicate the stability of the system behavior.
[0020] In some examples, the state vector of the second prediction step is among multiple predicted state vectors. It can be based on the system function f and the state vector of the first prediction step among multiple second prediction state vectors. and the control variable vector of the first prediction step i in multiple second control variable vectors. To calculate. At this point, for... applicable: The system is described in this system function f. In some examples, the first state vector x(k) can be used as the initial state vector for the plurality of predicted state vectors. .
[0021] In some examples, the stability rule may include: the stability metric Vk Less than or equal to the first upper limit c v For example, the first upper limit c v This can be used as a design parameter, determining the maximum permissible deviation for a relatively purely stable regulator. In some examples, the first upper limit c... v Larger values may cause the enhanced stability of the computer-implemented method of this disclosure to intervene only when the security of system 10 is threatened. Conversely, when the control variable preset vector u des When the component of (k) has an instability effect on system 10, the first upper limit c v Lower values of this can lead to additional security interventions. In some examples, multiple cost functions can be applied at least in the first prediction step i and the second prediction step i+1. The summation result plus the final cost function To ensure V k Approaching the first upper limit c v In some examples, it may be applicable to: .
[0022] In some examples, the computer-implemented method 100 can be repeatedly executed at least at a first time step k-1 and a second time step k. In some examples, the stability rule may include: a stability metric V for the first time step k-1. k-1 Stability measure V of the second time step k k The difference between them can be less than or equal to the second upper limit. In some examples, the stability measure V for the first time step k-1 is... k-1 This can be input as an input variable to filter stage 12 to generate the 120 stability rule. In some examples, the second upper limit can be calculated from the minimum of two values: the stability metric V at time step k-1. k-1 With the first upper limit c v The difference between them; or based on the initial state vector. The current control variable vector variable in the second time step The value of the cost function. Therefore, it may be applicable in some examples: .
[0023] Therefore, in the example shown, when the stability metric V is in one example k Less than or equal to the first upper limit c v When this happens, the stability rule is satisfied. In another example, when the stability metric V for the first time step k-1... k-1 Stability measure V of the second time step k k The difference between them is less than or equal to the cost at the initial step i=0. In the example shown, this stability rule is satisfied. In one example, when a disturbance event occurs, the second upper limit can be adjusted by adding a buffer variable ξ. In this case, the following applies: In one example, the buffer variable ξ only becomes non-zero when it is necessary to relax the stability rule. By increasing the value of ξ, the stability measure V for the first time step k-1... k-1 Stability measure V of the second time step k k The difference between them can be increased. In the example, as the intensity of external disturbances increases, the value of the buffer variable ξ may need to be increased.
[0024] In some examples, calculating the first control variable vector u(k) may include calculating the extreme value. In some examples, calculating the first control variable vector u(k) may include: setting the control variable vector u to a preset value. des (k) and the current control variable vector variable The goal is to minimize the difference between the given control variables, where the stability rule is one of several constraints. This (approximate) minimization can result in the first control variable vector u(k), which, under the given constraints, (approximately) minimizes the preset control variable vector u. des (k) and the current control variable vector variable The difference between them. This makes the control variable preset vector u... des (k) and the current control variable vector variable Minimizing the difference between them can also be included within the framework of N prediction steps to minimize the preset vector u of the control variables. des (k) and the current control variable vector variable The difference between them. In some examples, multiple constraints may also include the state vector domain X. i and / or the domain of the control variable vector U i At least one of them. Therefore, it is applicable to: and / or In some examples, multiple constraints may also include a final state vector used in multiple predicted state vectors. The domain of definition. Here, the final state vector can be the result of calculating the state vector in the last step of N prediction steps. For example, to calculate the vector u(k) of 140 control variables, the following optimization problem can be proposed: The constraints are: For all i = 0, 1, ..., N-1: .
[0025] In one example It can be a scalar.
[0026] In one example, the system 10 to be regulated may be arranged in a vehicle and / or a robot, and / or designed to regulate vehicle functions and / or robot functions (especially driving functions). In some examples, the robot may include a vehicle (autonomous or assisted driving).
[0027] For example, the vehicle function could be a function for autonomous and / or assisted driving. In some examples, the computer-implemented method 100 can be designed to execute on a computer system of the vehicle (e.g., an autonomous, highly automated, or assisted driving vehicle). For example, the computer system can be implemented locally in the vehicle, or (at least partially) in a background system communicatively connected to the vehicle. For example, the computer system can include a control device on which the computer-implemented method 100 and / or filter stage 12 can be executed. In some examples, the vehicle can include a computer system with a communication interface that enables communication with a background system. For example, the computer-implemented method 100 can be executed in this background system. In one example, the system 10 to be regulated can be a system for lateral and / or longitudinal control of the vehicle. For example, the state variables of the state vector x(k) can include one or more position variables, orientation angles, velocity variables, and / or yaw rate of change. The control vector u(k) and / or the preset vector u of the control variables... des (k) may include, for example, steering angle, powertrain-related parameters, and / or braking parameters.
[0028] In other examples, as described above, the system 10 to be regulated may be arranged within the robot and / or designed to control and / or monitor robot functions (especially motion functions). For example, the system to be regulated may be a system for lateral and / or longitudinal control of the robot. In some examples, the computer-implemented method 100 may be executed on the robot's computer system. For example, the computer system may be implemented locally on the robot, or (at least partially) in a background system communicatively connected to the robot.
[0029] The advantages of the present disclosure will be explained below with reference to Figures 3-A to 3-C. Figures 3-A to 3-C show simulation results for an exemplary lateral control of a vehicle. Figure 3-B shows an exemplary preset value 31 for the control variable. Here, control variable 32 can be the output of the computer-implemented method 100, which has been strongly filtered by method 100. Here, control variable 33 can be the output of the computer-implemented method 100, which has been weakly filtered by method 100. Figure 3-C shows the stability metric V. k An example value. Stability metric 34 can be an example of a stability metric, which has a first upper limit c. v This is generated when a smaller value is taken; while the stability metric 35 is at the first upper limit c. v This occurs when the value is relatively large. The upper limit c is relatively high. v Numerical values may lead to more drastic fluctuations in stability metrics. Figure 3-A shows the lateral offset of the vehicle relative to the reference line. This lateral offset is the modulated variable here. Here, the lateral offset 36 is at the first upper limit c. v The lateral offset produced when the value is relatively small. Here, the lateral offset 37 is the first upper limit c. v Lateral offset resulting from a large value. First upper limit c v When the value is relatively small, it will produce a result greater than the first upper limit c. v A smoother adjustment for larger values.
[0030] This disclosure also discloses a computer system designed to perform a computer-implemented method 100 for determining a vector of control variables to regulate the system. The computer system may include at least one processor and / or at least one working memory. The computer system may also include (non-volatile) memory.
[0031] This disclosure also discloses a computer program designed to execute a computer-implemented method 100 for determining a vector of control variables to regulate a system. The computer program may exist, for example, in an interpretable or compilable form. It may (or may partially) be loaded into the computer's RAM, for example, as a sequence of bits or bytes, for execution.
[0032] This disclosure also discloses a computer-readable medium or signal that stores and / or contains the computer program or at least a portion thereof. The medium may include, for example, one of RAM, ROM, EPROM, HDD, SSD, etc., wherein the signal is stored / contained thereon / in which.
Claims
1. A computer-implemented method (100) for determining a vector of control variables for regulating a system (10), comprising: - Determine the (110) first state vector (x(k)). - Based on stability metric (V k The first state vector (x(k)) and the first state vector (x(k)) generate a (120) stability rule. - Receive (130) control variable preset vector (u des (k)), and - Based on the stability rule and the preset vector of the control variables (u) des (k) Calculate (140) control variable vector (u(k)).
2. The computer-implemented method (100) according to claim 1, wherein, The stability metric (V) k Multiple predicted state vectors (x) based on multiple prediction steps i|k , x i+1|k ), wherein the first state vector (x(k)) serves as the initial state vector (xk) of the plurality of predicted state vectors. 0|k ).
3. The computer-implemented method (100) according to claim 2. in, The stability metric (V) k The cost functions are calculated by summing them over at least one first prediction step (i) and a second prediction step (i+1) in the plurality of prediction steps, wherein each of the plurality of cost functions is calculated using the plurality of prediction state vectors (x). i|k , x i+1|k In the first prediction step (i) or the corresponding prediction step of the second prediction step (i+1), the predicted state vector and multiple second control variable vectors (u) are used. i|k ,u i+1|k The control variable vector is formed in the corresponding prediction step.
4. The computer-implemented method (100) according to claim 1, 2, or 3, wherein, The stability rule includes: the stability metric (V) k ) less than or equal to the first upper limit (c v ).
5. The computer-implemented method (100) according to any one of claims 1 to 4, wherein, The method is repeated at least in a first time step (k-1) and a second time step (k), and the stability rule includes: the stability metric (V) of the first time step (k-1). k-1 The stability measure (V) of the second time step (k) k The difference between them is less than or equal to the second upper limit.
6. The computer-implemented method (100) according to claim 5, wherein, When a disturbance event occurs, the second upper limit is adjusted by adding a buffer variable (ξ) to the second upper limit.
7. The computer-implemented method (100) according to any one of the preceding claims, wherein, Calculating the control variable vector (u(k)) mentioned in (140) includes calculating the extreme values.
8. The computer-implemented method (100) according to any one of the preceding claims, wherein, Calculating the control variable vector (u(k)) mentioned in (140) includes: setting the control variable preset vector (u... des (k) and the current control variable vector variable (u) 0|k Minimize the difference between (k) and the stability rule, where the stability rule is one of a plurality of constraints.
9. The computer-implemented method (100) according to any one of the preceding claims, wherein, The system to be regulated (10) is designed to be arranged in a vehicle and / or robot, and / or designed to regulate vehicle functions and / or robot functions.
10. The computer-implemented method (100) according to claim 9, wherein, The system to be adjusted is a system used for the lateral and / or longitudinal control of the vehicle.
11. A computer system designed to perform a computer-implemented method (100) for determining a vector of control variables for regulating the system, according to any one of claims 1 to 10.
12. A computer program, comprising instructions that, when executed by a computer system, cause the computer system to perform a computer-implemented method (100) for determining a vector of control variables for regulating a system, according to any one of claims 1 to 10.
13. A computer-readable medium or signal that stores and / or contains a computer program according to claim 12.