Lateral acceleration control for autonomous driving

By evaluating multiple scalar speed functions and generating target lateral speed values ​​in the autonomous driving system, the problem in the prior art that autonomous driving systems are difficult to independently control according to predetermined driving rules when determining target lateral acceleration, and a more natural and comfortable vehicle movement is achieved.

CN114906156BActive Publication Date: 2025-03-11APTIV TECHNOLOGIES AG
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210099210.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-02-09
Filing Date
2022-01-27
Publication Date
2025-03-11
Estimated Expiration
2042-01-27

AI Technical Summary

Technical Problem

When the existing autonomous driving system determines the target lateral acceleration of the host vehicle, it is difficult to effectively control autonomously according to predetermined driving rules, resulting in unnatural or uncomfortable movement of the vehicle when lane changes and overtaking.

Method used

A method is designed to generate a set of corresponding scalar velocity values ​​by evaluating multiple scalar velocity functions at multiple critical transverse locations of the road, and to generate a target transverse velocity value by combining these values. Then, the target lateral acceleration of the host vehicle is determined using the lateral velocity field and the measured lateral velocity.

Benefits of technology

It realizes autonomous control according to predetermined driving rules, improves the naturalness and comfort of the vehicle when lane changes and overtaking, and avoids unnecessary sudden movements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114906156B_ABST
    Figure CN114906156B_ABST
Patent Text Reader

Abstract

The present disclosure relates to lateral acceleration control for autonomous driving. A method for determining a target lateral acceleration of a vehicle is used for autonomously controlling the vehicle to travel along a road, the method comprising the following steps: evaluating (S41) each of a plurality of scalar velocity functions at a plurality of key lateral positions predefined in a model about the road to generate a set of corresponding scalar velocity values; combining (S42) velocity values ​​calculated for each of the key lateral positions to generate a corresponding target lateral velocity value, the velocity values ​​calculated for each of the key lateral positions being combined by adding the maximum of the zero sum velocity values ​​to the minimum of the zero sum velocity values; generating (S43) a lateral velocity field by interpolating between the target lateral velocity values; and determining (S44) a target lateral acceleration of the vehicle using the lateral velocity field and a measured lateral velocity of the vehicle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Example aspects herein relate generally to the field of autonomous driving, and specifically to techniques for determining a target lateral acceleration of a host vehicle relative to a road along which the host vehicle is traveling for autonomous control of the host vehicle. Background Art

[0002] Autonomous driving functions are a feature of modern vehicles that have attracted increasing attention. Autonomous driving functions may allow the driver of a host vehicle to hand over control of the acceleration and steering of the vehicle to an autonomous driving system that may be provided with a target speed and a forward time or more detailed information of an intended route. The autonomous driving system may then attempt to achieve the desired speed by accelerating and steering the vehicle to follow a selected lane.

[0003] Autonomous driving systems can also be adapted to react appropriately to the actions of other road users. For example, when the host vehicle approaches a slower-moving vehicle in front of it, the autonomous driving system can decide whether to overtake the slower-moving vehicle or slow down and maintain the desired forward distance to the vehicle in front. Autonomous driving systems can also switch lanes to follow the desired route. More advanced versions of the system can even predict the behavior of other road users to determine appropriate actions and reactions. Therefore, autonomous driving systems are typically configured to obtain information from devices such as radars, cameras, inertial measurement units, etc. to collect data about the host vehicle and its environment in order to generate a high-level environmental model that describes the road and the traffic on the road.

[0004] The autonomous driving system may then also be arranged to determine the maneuver to be performed by the host vehicle and how the maneuver should be performed (in other words, determine the trajectory of the host vehicle and the appropriate control signals required to achieve the determined trajectory, such as the acceleration and steering angle of the host vehicle), and control the host vehicle to perform the determined maneuver. The two main approaches to autonomous driving algorithms are rule-based and statistical models including those based on machine learning, cost functions, etc. Summary of the invention

[0005] According to a first aspect of the present invention, the inventors have devised a method for determining a target lateral acceleration of a host vehicle relative to a road along which the host vehicle is traveling, for autonomously controlling the host vehicle to travel along the road according to predetermined driving rules. The method includes evaluating each of a plurality of scalar speed functions at a plurality of key lateral positions predefined in a model about the road to generate a set of corresponding scalar speed values, wherein the value of each scalar speed function biases the autonomous control to control the host vehicle to travel along the road according to a corresponding driving rule in the driving rules. The method also includes combining the scalar speed values ​​generated for each of the plurality of key lateral positions to generate a corresponding target lateral speed value for the key lateral position, the scalar speed values ​​generated for each of the key lateral positions being combined by adding a first value that is the maximum of zero and the scalar speed value and a second value that is the minimum of zero and the scalar speed value. The method also includes generating a lateral velocity field by interpolating between the target lateral velocity values ​​generated for the plurality of key lateral positions; and determining the target lateral acceleration of the host vehicle using the generated velocity field and the measured lateral velocity of the host vehicle.

[0006] The road may include a plurality of lanes, and the plurality of scalar speed functions may further include a lane following speed function that biases the autonomous control to control the host vehicle to remain within one of the plurality of lanes. The method may further include calculating a corresponding lane following scalar speed value of the lane following speed function for each of a plurality of key lateral positions, and the step of generating a corresponding target lateral speed for each key lateral position may further include combining the lane following scalar speed value for the key lateral position with an auxiliary speed value obtained by combining the scalar speed values ​​calculated for the key lateral position by adding a third value to a fourth value, the third value being the maximum of zero, the lane following scalar speed value, and the auxiliary speed value, and the fourth value being the minimum of zero, the lane following scalar speed value, and the auxiliary speed value.

[0007] Additionally or alternatively, the road may include multiple lanes, and the multiple scalar speed functions may include two or more of the following: a weak preference function that biases the autonomous control to guide the host vehicle toward a default lane among the multiple lanes; a strong preference function that biases the autonomous control to guide the host vehicle toward a preferred lane among the multiple lanes when the host vehicle is not in a preferred lane and prevents the host vehicle from leaving the preferred lane when the host vehicle is in the preferred lane; an overtaking function that biases the autonomous control to guide the host vehicle toward a fast lane among the multiple lanes if the host vehicle is approaching a slower moving vehicle; and a no-switching function that biases the autonomous control to prevent the host vehicle from moving into the lane of the vehicle being overtaken by the host vehicle if the distance along the road between the host vehicle and the vehicle being overtaken is less than a threshold distance.

[0008] wherein the road comprises a plurality of lanes, the scalar speed values ​​of each calculated set of scalar speed values ​​are calculated by evaluating the corresponding scalar speed function only at the key lateral positions, and each key lateral position is one of the following: a boundary of a lane in the plurality of lanes; and an edge of an offset region within a lane in the plurality of lanes, the offset region within each lane extending along the lane. Generating the corresponding target lateral speed for each key lateral position further comprises the following steps: if the key lateral position is a boundary of a lane in the plurality of lanes, weighting the target lateral speed generated for the key lateral position using a first weighting factor; and if the key lateral position is an edge of an offset region within a lane in the plurality of lanes, weighting the target lateral speed generated for the key lateral position using a second weighting factor, wherein the first weighting factor is greater than the second weighting factor.

[0009] Interpolating between the target lateral speed values ​​generated for the plurality of key lateral positions may include performing a secondary interpolation between respective target lateral speed values ​​generated for each pair of adjacent key lateral positions in the plurality of key lateral positions.

[0010] Determining the target lateral acceleration may include the following steps: using the generated lateral velocity field and the measured lateral velocity of the host vehicle to determine the target lateral acceleration of the host vehicle using a linear approximation; or determining the target lateral acceleration of the host vehicle using a cost function-based method, wherein the lateral velocity field is used as a reference velocity.

[0011] The method of the first aspect or any embodiment thereof set forth above may further include the following steps: using an indication of the local curvature of the road to correct the determined target lateral acceleration of the host vehicle, such that the corrected target lateral acceleration of the host vehicle includes a centripetal component that biases the autonomous control to cause the host vehicle to follow the local curvature of the road.

[0012] Additionally or alternatively, a control signal may be generated for controlling the steering and / or acceleration of the host vehicle to minimize a difference between the measured lateral acceleration of the host vehicle and the determined target lateral acceleration.

[0013] According to the second aspect of the present invention, the inventors also design a computer program comprising instructions, which, when executed by a computer processor, cause the computer processor to perform the method according to the first aspect. The computer program may be stored on a non-transitory computer-readable storage medium or carried by a signal.

[0014] According to a third aspect of the present invention, the inventors have also devised an apparatus arranged to determine a target lateral acceleration of a host vehicle relative to a road along which the host vehicle is travelling, for autonomously controlling the host vehicle to travel along the road according to predetermined driving rules. The apparatus comprises an evaluation module arranged to evaluate each of a plurality of scalar speed functions at a plurality of key lateral positions predefined by a model about the road to generate a set of corresponding scalar speed values, wherein the value of each scalar speed function biases the autonomous control to control the host vehicle to travel along the road according to a corresponding one of the driving rules. The apparatus further comprises a target lateral speed generator module arranged to combine the scalar speed values ​​generated for each of the plurality of key lateral positions to generate a corresponding target lateral speed value for the key lateral position, the target lateral speed generator module being arranged to combine the scalar speed values ​​generated for each of the key lateral positions by adding a first value being the maximum of zero and the scalar speed value and a second value being the minimum of zero and the scalar speed value. The apparatus also includes: a lateral velocity field generator module, which is arranged to generate a lateral velocity field by interpolating between target lateral velocity values ​​generated for a plurality of key lateral positions; and a target lateral acceleration determination module, which is arranged to determine the target lateral acceleration of the host vehicle using the generated velocity field and the measured lateral velocity of the host vehicle.

[0015] According to the fourth aspect of the present invention, the inventor has also designed a vehicle comprising: an automatic driving system, which is arranged to autonomously control the vehicle to travel along a road according to predetermined driving rules and using a target lateral acceleration; and a device according to the third aspect, which is arranged to determine the target lateral acceleration. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] Embodiments of the present disclosure will now be explained in detail, by way of non-limiting example only, with reference to the accompanying drawings described below. The same reference numerals appearing in different figures of the accompanying drawings may represent the same or functionally similar elements, unless otherwise specified.

[0017] Figure 1A is a schematic diagram of an apparatus arranged to determine a target lateral acceleration of a host vehicle according to an example embodiment herein.

[0018] Figure 1B is a schematic diagram of a vehicle according to an example implementation herein.

[0019] Figure 2A A first example of a model of a road defined in a lane coordinate system is illustrated.

[0020] Figure 2B A second example of a model of a road defined in a lane coordinate system is illustrated.

[0021] Figure 3 is a block diagram illustrating an example implementation of an apparatus of an example embodiment in programmable signal processing hardware.

[0022] Figure 4 is a flow chart illustrating a process of determining a target lateral acceleration of a host vehicle by an apparatus according to an example embodiment.

[0023] Figure 5 is an example of cross Figure 2A and Figure 2B A graph showing the distribution of values ​​of a lane-following scalar speed function for a model road is shown.

[0024] Figure 6 is an example of cross Figure 2A and Figure 2B A graph showing the distribution of values ​​of the weak preference function for the model road shown.

[0025] Figure 7 is an example of cross Figure 2A and Figure 2B A graph showing the distribution of the values ​​of the strong preference function for the model road shown.

[0026] Figure 8 is a graph illustrating an exemplary full effective area having a truncated pyramid shape for an object.

[0027] Fig. 9 Shown is the full effect area around an object in a lane switch scenario.

[0028] Fig.10 is an example of cross Figure 2A and Figure 2B A graph showing the distribution of the values ​​of the overtaking function for the model road shown.

[0029] Fig.11 is an example of cross Figure 2A and Figure 2B FIG. 4 is a graph showing the distribution of no-cut function values ​​for the model road shown.

[0030] Fig.12 is an example of cross Figure 2A and Figure 2B A graph of a first example of distribution of values ​​of the auxiliary speed values ​​of a model road is shown.

[0031] Fig.13 is an example of cross Figure 2A and Figure 2B FIG. 5 is a graph showing a second example of the distribution of values ​​of the auxiliary speed values ​​of the model road.

[0032] Fig.14 is an example of cross Figure 2A and Figure 2B FIG. 5 is a graph showing the distribution of target speed values ​​for the model road.

[0033] Fig.15 is a graph illustrating an example of a quadratic interpolation between target lateral velocities calculated at two adjacent key lateral positions.

[0034] Fig.16 is a graph illustrating an example of a lateral velocity field determined by an apparatus of an example embodiment. DETAILED DESCRIPTION

[0035] In order to be considered roadworthy, vehicles incorporating autonomous driving capabilities are typically required to provide a high level of safety. For example, while the reliance on sensing devices for safety can be demonstrated only with respect to likelihood, the algorithms used by autonomous driving systems for behavior control and trajectory planning can be demonstrated to be safe using formal models such as Responsibility Sensitive Safety (RSS). RSS is a formal model that describes permissible behaviors that ensure safety.

[0036] However, in implementing an autonomous driving system such that the determined behavior and trajectory of the host vehicle are safe and similar to human behavior (i.e., such that autonomous control of the vehicle is similar to manual control performed by a safe human driver), and in formally proving the safety of the autonomous driving system, various difficulties may arise that must be overcome in order to provide suitable autonomous driving.

[0037] As an example, while the RSS model is sufficient to demonstrate safety regarding emergency maneuvers, it does not define conditions for safe behavior regarding road lanes. In addition, the distances defined by the RSS model are based on expected emergency maneuvers that, although safe, may not guarantee comfortable, human-like driving.

[0038] Furthermore, autonomous driving algorithms based on statistical models may lack transparency compared to rule-based models. Rule-based models allow predictions of what will happen in any given situation, and associate decisions about subsequent actions to be taken with specific rules. In contrast, collisions resulting from decisions made by statistical models (such as machine learning models) may be more difficult to prove, and the causes may be more difficult or impossible to determine. The inventors have recognized that the behavior in many conventional autonomous driving algorithms based on cost functions, when generalized to an arbitrary number of vehicles in a host vehicle environment, may have to be analyzed on a case-by-case basis with respect to the number of vehicles and all possible constellations of those vehicles in order to determine safety.

[0039] A rule-based approach for behavior and trajectory planning may include determining a dynamic force field on a road as a function of characteristics of the road and objects on the road, and using the dynamic force field to determine the trajectory of the host vehicle, as disclosed in Oskar Larsson's master's thesis "The Oskillator, Artificial Force Field Highway Chauffeur" Chalmers University of Technology, Gothenburg, Sweden 2019 (https: / / hdl.handle.net / 20.500.12380 / 300733), the contents of which are incorporated herein in their entirety. The approach provides improved transparency relative to autonomous driving algorithms based on statistical models, and takes into account the desired behavior of the host vehicle relative to the lanes of the road.

[0040] However, the inventors have recognized that the lateral portion of the dynamic force field approach described in the aforementioned master's thesis may result in unnatural slow lane changes, and that the avoidance of slow lane changes may result in abrupt movements of the host vehicle that are uncomfortable and not user-friendly for the driver / passenger of the host vehicle. Furthermore, the inventors have recognized that the use of a damped dynamic force field does not allow the autonomous driving algorithm to be extended to a higher "priority" in the various driving rules to be followed when autonomously controlling the host vehicle.

[0041] More specifically, the concept of using an overdamped piecewise linear force field to determine lateral acceleration is less effective than using a similar field to determine longitudinal acceleration. This is because of the small lateral distances moved combined with the relatively high lateral velocities required when, for example, performing a lane switch. Overdamped piecewise linear force fields can be used as velocity fields because they are close to equilibrium without overshoot. In the approach defined in the above-mentioned Master's thesis, it is important that the field is overdamped to avoid oscillations about equilibrium, which would result in serpentine motion of the host vehicle in its lane. However, in order for the system to remain overdamped, the damping coefficient must increase with the gradient of the field.

[0042] The inventors have recognized that, without significantly increasing the complexity of the force field and its components, the components of the lateral force field cannot be designed to: have sufficiently low gradients while also allowing the autonomous driving algorithm to be extended to a higher "priority" in the various driving rules to be followed, and to avoid sudden movements of the host vehicle that are uncomfortable and unhumane to the driver / passengers of the host vehicle.

[0043] The example implementations described below may address one or more of the problems outlined above and will now be described in detail with reference to the accompanying drawings.

[0044] Where a reference numeral is attached to a technical feature in the drawings, detailed description or any claims, the reference numeral is included only for the purpose of increasing the intelligibility of the drawings, detailed description and claims. Therefore, the presence or absence of a reference numeral has no limiting effect on the scope of any claim element.

[0045] Figure 1A is a schematic diagram of an apparatus 10 arranged to determine a target lateral acceleration of a host vehicle according to an example embodiment herein.

[0046] The device 10 is arranged to determine the host vehicle 1 (at Figure 1B ) relative to the road 20 along which the host vehicle 1 is traveling (in Figure 2A20 for autonomously controlling the host vehicle 1 to travel along the road 20 according to a predetermined driving rule. That is, the determined target lateral acceleration of the host vehicle 1 will be used for autonomous control of the host vehicle 1, for example, by Figure 1B The autonomous driving system 15 shown is used for autonomous control. As an example, the determined target lateral acceleration of the host vehicle 1 will be used for autonomous control of the lateral acceleration of the host vehicle 1 .

[0047] like Figure 1A As shown, the apparatus 10 includes an evaluation module 11 , a target lateral velocity generator module 12 , a lateral velocity field generator module 13 and a target lateral acceleration determination module 14 .

[0048] The evaluation module 11 is arranged to calculate a set of corresponding scalar speed values ​​for each of the plurality of scalar speed functions. The evaluation module 11 is arranged to calculate a set of corresponding scalar speed values ​​by evaluating the speed of the vehicle at a plurality of key lateral positions 24_1 to 24_10 (in Figure 2B The scalar speed function is evaluated at the corresponding lateral position in the set to calculate each scalar speed value in the set. The value of each scalar speed function biases the autonomous control to control the host vehicle 1 to travel along the road 20 according to the corresponding driving rule in the driving rules.

[0049] Figure 2A and Figure 2B An example of a model of the road 20 along which the host vehicle 1 travels can be controlled.

[0050] exist Figure 2A and Figure 2B In the example of FIG. 2 , the road 20 has three lanes 21A, 21B, and 21C. As in the example, the lanes of the road 20 may have the same width. As in the example, one of the lanes 21A, 21B, 21C may be used as a so-called “fast lane”, and another of the lanes 21A, 21B, 21C may be used as a so-called “slow lane”. In the example, the leftmost lane 21A serves as a fast lane, and the rightmost lane 21C serves as a slow lane.

[0051] Figure 2A and Figure 2B The exemplary model of the road 20 shown illustrates the road 20 and traffic on the road at a particular time. In the exemplary model of the road 20, the host vehicle 1 is located at a position 22 in the middle lane 21B and is traveling in the direction indicated by the arrow 23. An object O (e.g., a vehicle of another road user, i.e., a road user other than the host vehicle) is traveling in the same direction as the host vehicle 1 in the rightmost lane 21C.

[0052] As in this example, the position of the host vehicle 1 and the object O in the model of the road 20 can be defined relative to the center of the bounding box of each vehicle. Alternatively, the position of the host vehicle 1 and the object O can be defined in any suitable manner, such as a predetermined corner of the bounding box of each vehicle, the center of gravity of each vehicle, the center of mass of each vehicle, the average position of each vehicle, etc.

[0053] although Figure 2A and Figure 2B The model of the road 20 shown in has three lanes, but the road 20 on which the model is based may have one lane, two lanes, or four or more lanes, and a corresponding number of lanes may be included in the model. As another alternative, although in Figure 2A A single object O is shown in the model of the illustrated road 20, but any suitable number of objects may be included in the model of the road, and optionally the number of objects may depend on the traffic on the road at a given time. As an example, the number of objects may be determined based on information from devices such as radars, cameras, inertial measurement units, etc., which collect data about the host vehicle and its environment in order to generate a high-level environmental model describing the road and the traffic on the road.

[0054] exist Figure 2A and Figure 2B In the example of , the model of the road is defined in a lane coordinate system. The lane coordinate system may be a two-dimensional curvilinear coordinate system adapted to reflect the road 20 on which the model is based. In particular, the curvilinear coordinate system constituting the lane coordinate system has two axes, namely a longitudinal axis or x-axis extending in a longitudinal direction along the road (in Figure 2A ) and a transverse axis or y-axis extending across the road (indicated by the reference numeral X in Figure 2A The x-axis is always parallel to the lanes of the road and the y-axis is orthogonal to the x-axis at every value of x.

[0055] exist Figure 2A In the example lane coordinate system shown, the x-axis of the lane coordinate system increases toward the forward travel direction of the host vehicle 1, and the y-axis of the lane coordinate system increases toward the leftmost lane 21A of the road 20. This configuration is used for convenience. However, the lane coordinate system can be oriented in any suitable manner. As an example, the x-axis of the lane coordinate system can increase in a direction opposite to the forward travel direction of the host vehicle 1, and / or the y-axis can increase in a direction toward the rightmost lane of the road 20.

[0056] In addition, as in Figure 2A and Figure 2B In the example of , the lane coordinate system can be defined such that x=0 represents the position of the host vehicle on the x-axis, and y=0 represents the center of the lane of the road 20. In particular, as in Figure 2A and Figure 2B In the example of , the lane coordinate system may be defined such that y=0 represents the center of the center lane 21B. However, the lane coordinate system may be defined in any other suitable manner, for example, y=0 may be selected to represent the center of any lane in the plurality of lanes of the road 20 .

[0057] Figure 2B The diagram shows an example of a view from a position 22 where the host vehicle 1 is located. Figure 2A Figure 20 is a model of a road.

[0058] like Figure 2B As shown, the y-axis can be (as in Figure 2A and Figure 2B ) is scaled to lane widths, such that each increment or decrement of 1 on the y-axis represents the width of one lane, such that y=1 represents the center of the leftmost lane 21A, and y=-1 represents the center of the rightmost lane 21C, and y={-1.5, -0.5, 0.5, 1.5} represents lane boundaries of lanes 21A, 21B, and 21C. Alternatively, the y-axis may be scaled in any other suitable manner, such as such that each increment or decrement of 1 on the y-axis represents half the width of one lane, such that lane centers and lane boundaries have integer values, or the y-axis may not be scaled.

[0059] The plurality of key lateral positions may correspond to a fixed set of discrete points (y values) on the y-axis, such that the scalar speed function may be evaluated only at the fixed set of discrete points (y values) on the y-axis to determine a set of corresponding scalar speed values. In example embodiments such as the present example embodiment, where the road has a plurality of lanes, as in the present example embodiment, the scalar speed values ​​in the calculated set of scalar speed values ​​may be calculated only with respect to the plurality of key lateral positions 24_1 to 24_10. The scalar speed function and scalar speed values ​​are described in more detail below.

[0060] As in the present example embodiment, each key lateral position 24_1 to 24_10 may be a boundary of a lane 21A, 21B, 21C among multiple lanes or an edge of an offset region 25A, 25B, 25C within a lane 21A, 21B, 21C among multiple lanes, and the offset region 25A, 25B, 25C within each lane extends along the lane.

[0061] exist Figure 2BIn the example shown, the key lateral positions 24_1 to 24_10 include the boundaries of the lanes 21A, 21B, 21C and the edges of the offset regions 25A, 25B, 25C within the lanes 21A, 21B, 21C. Specifically, the key lateral positions 24_1, 24_4, 24_7 and 24_10 are the boundaries of the lanes 21A, 21B, 21C, respectively, and the key lateral positions 24_2, 24_3, 24_5, 24_6, 24_8 and 24_9 are the edges of the offset regions 25A, 25B, 25C within the lanes 21A, 21B, 21C, respectively.

[0062] As in Figure 2B In the example shown, each offset region 25A, 25B, 25C may be offset laterally from the center of the corresponding lane by Δy bias To define the lateral offset Δy bias The value of can be selected to represent the acceptable deviation (bias leeway) from the center of the lane that the vehicle may have while still being considered to be completely (safely) within the lane. In particular, to ensure safety, unless the host vehicle 1 is switching lanes, the host vehicle 1 should stay near the center of the lane it is traveling in, with a lateral offset Δy bias may be chosen to represent the maximum lateral deviation from the lane centre that the host vehicle 1 may appropriately have when not switching lanes.

[0063] In an example embodiment similar to the present example embodiment, where the y-axis is scaled to lane width, such that each increment or decrement of 1 in the y-axis represents the width of one lane, and the key lateral positions 24_1 to 24_10 include both the boundaries of the lane and the edges of the offset region, the plurality of key lateral positions Y key It can be defined as follows:

[0064] (1)

[0065] (2)

[0066] (3)

[0067] (4)Y key =Y b ∪Y left ∪Y right .

[0068] In example embodiments where the y-axis is not scaled to lane widths so that each increment or decrement of 1 in the y-axis represents the width of one lane, i may not be , and the value of 0.5 in the above equation (1) can be replaced by a value in the y-axis corresponding to half the width of one lane of the road.

[0069] exist Figure 2A and Figure 2B In the example of , the model of the road 20 is defined in a lane coordinate system. However, the model of the road 20 may be defined by any other suitable means, such as a grid model or using a Cartesian coordinate system or any other suitable coordinate system. More generally, the model of the road 20 may be defined in any suitable manner so that the device 10 is provided with information about the position of the host vehicle 1, the curvature of the road 20, the number and width of the lanes 21A, 21B, 21C, and the position and speed of any other objects on the road.

[0070] Refer again Figure 1A The target lateral velocity generator module 12 is arranged to combine the scalar velocity values ​​calculated for each of the plurality of key lateral positions 24_1 to 24_10 to generate a respective target lateral velocity value for the key lateral position 24_1 to 24_10. The target lateral velocity evaluation module is arranged to combine the scalar velocity values ​​calculated for each of the key lateral positions 24_1 to 24_10 by adding a first value being the largest of zero and the scalar velocity value to a second value being the smallest of zero and the scalar velocity value.

[0071] The lateral velocity field generator module 13 is arranged to generate a lateral velocity field by interpolating between target lateral velocity values ​​generated for a plurality of key lateral positions 24_1 to 24_10 .

[0072] The target lateral acceleration determination module 14 is arranged to determine a target lateral acceleration of the host vehicle 1 using the generated velocity field and the measured lateral velocity of the host vehicle 1 .

[0073] The device 10 may obtain the measured lateral velocity of the host vehicle 1 by any suitable means known to those skilled in the art. As an example, the device 10 may be provided with one or more sensors for measuring the lateral velocity of the host vehicle 1. Alternatively, the device 10 may be configured to receive the measured lateral velocity of the host vehicle 1 from any other system provided in the host vehicle 1, or to receive the measured lateral velocity of the host vehicle 1 from an entity outside the host vehicle 1.

[0074] Figure 1Bis a schematic diagram of a (host) vehicle 1 according to an example embodiment of the present invention. The vehicle 1 comprises an autonomous driving system 15 arranged to autonomously control the vehicle 1 along a road 20 according to predetermined driving rules and using a target lateral acceleration. The vehicle 1 also comprises a device 10 arranged to determine a target lateral acceleration.

[0075] The combination of the automatic driving system 15 and the device 10 may be referred to as an autonomous driving system, i.e., an autonomous driving system capable of performing behavior and trajectory planning and subsequent control of the host vehicle.

[0076] exist Figure 1B In the example embodiment shown, the apparatus 10 and the autonomous driving system 15 are illustrated as separate devices. The functionality of the apparatus 10 and the autonomous driving system 15 may alternatively be provided by a suitably configured single device (e.g., a suitably programmed computer processor).

[0077] Figure 3 is a schematic diagram of a programmable signal processing device 300 that can be configured to implement the functionality of the device 10. The signal processing device 300 includes an interface module 310 for receiving information and data about a host vehicle and its environment. The signal processing device 300 also includes a processor (CPU) 320 for controlling the device 10, a working memory 330 (e.g., a random access memory), and an instruction storage unit 340 storing a computer program, the computer program including computer readable instructions that, when executed by the processor 320, cause the processor 320 to perform processing operations of the device 10. The instruction storage unit 340 may include a ROM (e.g., in the form of an electrically erasable programmable read-only memory (EEPROM) or flash memory) preloaded with computer readable instructions. Alternatively, the instruction storage unit 340 may include a RAM or similar type of memory, and the computer readable instructions may be input therein from a computer program product (e.g., a computer readable storage medium 350, such as a CD-ROM, etc.) or a computer readable signal 360 carrying computer readable instructions.

[0078] In this example embodiment, the system includes a processor 320, a working memory 330, and an instruction storage unit 340. Figure 3 The illustrated combination of hardware components 370 is configured to implement Figure 1A The functionality of each of the component modules of device 10 is shown.

[0079] Figure 4 It is an example Figure 1A A flowchart of a process of determining a target lateral acceleration of a host vehicle 1 relative to a road 20 along which the host vehicle 1 is traveling, for autonomously controlling the host vehicle 1 to travel along the road 20 according to predetermined driving rules.

[0080] That is, according to Figure 4 The target lateral acceleration of the host vehicle 1 determined by the process of will be used for autonomous control of the host vehicle 1, for example, by Figure 1B The autonomous driving system 15 is shown. As an example, the determined target lateral acceleration of the host vehicle 1 will be used for autonomous control of the lateral acceleration of the host vehicle 1 .

[0081] The predetermined driving rules, which will be discussed in more detail below, are generally based on the expected behavior of the host vehicle 1 in various traffic situations, such as ensuring that the movement of the host vehicle 1 under autonomous control is safe and / or consistent with the expected behavior of a human driver. In particular, as in the present example embodiment, the predetermined driving rules may specify lateral movement of the host vehicle 1 within a lane and during lane changes, which should occur in response to prevailing traffic situations (e.g., when the host vehicle 1 is approaching a slower moving vehicle in its lane, when the host vehicle is overtaking another vehicle, etc.). Figure 4 The target lateral acceleration determined by the process can make the autonomous control of the host vehicle 1 based on the determined target lateral acceleration exhibit human-like behavior.

[0082] As an example, the following are examples of human-like behaviors that an autonomously driven host vehicle 1 should exhibit in order to resemble a vehicle driven by a safe and responsible human driver:

[0083] When driving in a specific lane 21B (current lane), the host vehicle 1 should follow the road 20, that is, the driving direction of the host vehicle 1 (such as Figure 2A The lanes 21A, 21B, and 21C are parallel or substantially parallel to each other.

[0084] The vehicle 1 should avoid objects in the current lane 21B;

[0085] Even if someone dangerously enters the current lane 21B, the host vehicle 1 should not make an illegal turn that endangers other drivers;

[0086] If there are no other objects in the slow lane 21C, the host vehicle 1 should only switch to that lane;

[0087] If there is no object in the fast lane 21A and if the object traveling in front of the host vehicle 1 in the current lane 21B is moving slowly (slow leading vehicle), the host vehicle 1 should switch to the fast lane 21A;

[0088] If there is a slow preceding vehicle and there are one or more objects in the fast lane 21A (blocked fast lane), the host vehicle 1 should remain in the current lane 21B;

[0089] If there is a slow-moving vehicle ahead, but switching lanes would create an obstacle in the other lanes 21A, 21C to which the host vehicle 1 can move, the host vehicle 1 should remain in the current lane 21B;

[0090] If there is a slow preceding vehicle, but the current lane is prioritized, for example according to the expected route of the host vehicle 1, such as only vehicles in a specific lane can turn or exit, then the host vehicle 1 should remain in the current lane 21B;

[0091] If it is safe to switch to another lane and if there is an obstacle in the current lane 21B, the host vehicle 1 should switch to another lane 21A, 21C;

[0092] Even if a second party's vehicle behaves unsafely, the host vehicle 1 should never pose a danger to third parties.

[0093] The predetermined driving rules may specify the lateral movement of the host vehicle 1 required for the host vehicle 1 to exhibit one or more of the above-mentioned human-like behaviors. As an example, the predetermined driving rules may be one or more of the following:

[0094] Towards the center of the lane, not exceeding the offset margin from the center of the lane;

[0095] Switch to a less preferred lane;

[0096] Switching to the fast lane when there is a slow-moving vehicle ahead;

[0097] Switch to / do not leave the strongly preferred lane;

[0098] Not switching to an occupied lane when there is an unsafe longitudinal distance to another vehicle.

[0099] As will be discussed in more detail below, it can be determined based on Figure 4 The target lateral acceleration is determined by the process of FIG. 1 , so that autonomously controlling the host vehicle 1 based on the determined target lateral acceleration will cause the host vehicle 1 to follow predetermined driving rules.

[0100] exist Figure 4In the processing step S41 of , the evaluation module 11 evaluates each of the plurality of scalar speed functions at a plurality of key lateral positions 24_1 to 24_10 predefined in the model with respect to the road 20 to generate a set of corresponding scalar speed values. The value of each scalar speed function is the bias of the autonomous control to control the host vehicle 1 to travel along the road 20 according to the corresponding driving rule in the driving rules. In other words, the value of each scalar speed function indicates a priority according to which the autonomous control controls the host vehicle 1 according to the corresponding driving rule in the driving rules. The value of the scalar speed function thus biases the autonomous control so that the host vehicle 1 follows different driving rules to different extents according to the priority indicated by the associated speed function value.

[0101] For example, the plurality of scalar velocity functions may include two or more scalar velocity functions, such that the two or more scalar velocity functions are evaluated at each of the key lateral positions 24_1 to 24_10. As a specific example, the plurality of scalar velocity functions may include four scalar velocity functions, such that the evaluation module 11 calculates four scalar velocity values ​​for each individual key lateral position 24_1 to 24_10 by evaluating each of the four scalar velocity functions at the key lateral position. The plurality of key lateral positions 24_1 to 24_10 may be the plurality of scalar velocity functions described above with respect to Figure 2B Any of the critical lateral positions 24_1 to 24_10 in question.

[0102] As in this example embodiment, each of the scalar speed functions can map a set of one or more input parameters or variables to a single output value, where the output value is a scalar value representing a priority that is used to generate a result intent through the synthesis process described herein, and then an appropriate speed, depending on where the function is evaluated to generate the scalar output value (e.g., a boundary or edge of a bias region).

[0103] For each of the scalar speed functions, a set of one or more input parameters or variables may relate to the environment of the host vehicle 1, such as one or more of the characteristics of the road 20 on which the host vehicle 1 is traveling, the lane 21B on which the host vehicle 1 is traveling, a predefined route for the host vehicle 1, and a relative position and speed of at least one object O (e.g., another vehicle) in the environment of the host vehicle 1. As such, the values ​​of the set of one or more input parameters for each of the scalar speed functions may vary over time and as the host vehicle 1 changes position along the road.

[0104] As in this example embodiment, the values ​​of the respective scalar speed functions can bias the autonomous control toward controlling the host vehicle 1 to travel along the road 20 according to the corresponding driving rule in the driving rules, because the magnitude or other characteristics of the scalar speed values ​​obtained by evaluating the particular scalar speed functions at the particular key lateral positions 24_1 to 24_10 can indicate the priority of taking an action (i.e., a lateral movement of the host vehicle 1) according to the corresponding driving rule in the driving rules. As an example, the action can be one of a sequence of actions including movement of the host vehicle 1 along the y-axis of the lane coordinate system, the movement causing the host vehicle 1 to remain within the offset margin of the lane. In another example, the action can be a movement across the key lateral position. In this case, the priority (or importance) indicated by the magnitude or other characteristics of the scalar speed value may need to be above a certain threshold (e.g., 0.5) so that the action takes precedence over other actions and causes lateral movement of the host vehicle 1 across the key lateral position (which will occur in a lane switch). As described in more detail below, such a threshold can be implemented by including a lane following scalar speed function.

[0105] Additionally or alternatively, the amplitude or other characteristics of the scalar speed value obtained by evaluating a specific scalar speed function at specific key lateral positions 24_1 to 24_10 can indicate the direction in which the host vehicle 1 should move, the speed at which the host vehicle 1 should move in a specific direction, or the acceleration at which the host vehicle 1 should move in a specific direction in order to comply with a corresponding driving rule in the driving rules.

[0106] As in this example embodiment, the scalar speed function may include a lane following speed function, which is an autonomous control biased towards controlling the host vehicle 1 to stay within a lane among the multiple lanes 21A, 21B, 21C. In this case, Figure 4 The processing may have the following processing steps, wherein the evaluation module 11 calculates a corresponding lane following scalar speed value of a lane following speed function for each of the plurality of key lateral positions 24_1 to 24_10. That is, the lane following speed function is a scalar speed function configured to turn the host vehicle 1 to the center of the current lane 21B.

[0107] As an example, the lane following scalar speed function ν lane It can be defined as follows, where Y key is the multiple key lateral positions Y defined in equation (4) key Key horizontal positions in:

[0108] (5)

[0109] The scalar velocity function ν in lane following laneIn the exemplary definition of , 0.5 represents the lane following scalar speed function ν lane The scalar value of the maximum amplitude A lane Alternatively, A lane It may be any other suitable scalar value, as discussed in more detail below.

[0110] Figure 5 is an example of cross Figure 2A and Figure 2B The lane of the road 20 shown follows the scalar speed function ν lane It should be noted that the lane following speed function ν is evaluated only at the key lateral positions 24_1 to 24_10. lane .so, Figure 5 The linear interpolation between the corresponding lane tracking scalar velocity values ​​calculated for each of the plurality of key lateral positions shown in is for ease of visualization only.

[0111] As in the present example embodiment, the scalar speed functions (excluding the optional lane following scalar speed function) can be classified into object scalar speed functions and preferred scalar speed functions, for which the calculated scalar speed values ​​for given key lateral positions 24_1 to 24_10 are calculated with respect to various objects (other vehicles / road users) in the environment of the host vehicle 1, and the preferred scalar speed function is independent of road traffic and depends on the intended route of the host vehicle 1.

[0112] For example, in some example embodiments such as the present example embodiment, where the road has multiple lanes, as in the present example embodiment, the multiple scalar speed functions may include at least one of the following:

[0113] (i) Weakly preferred function;

[0114] (ii) Strong optimization function;

[0115] (iii) overtaking function; and

[0116] (iv) No switching function.

[0117] The weak preference function biases the autonomous control toward guiding the host vehicle 1 toward a default lane among the plurality of lanes 21A, 21B, 21C.

[0118] The weak preference function may be independent of traffic on the road and provide a default behavior of returning to a slow lane or other default lane in the plurality of lanes 21A, 21B, 21C. As an example, the weak preference function may be configured to bias the autonomous control to direct the host vehicle 1 to return to the slow lane 21C after passing another vehicle.

[0119] As an example, the weakly preferred function v weak It can be defined as follows:

[0120] (6)

[0121] Among them, i weak is the lateral coordinate of the default lane in the plurality of lanes 21A, 21B, 21C. In example embodiments such as the present example embodiment, where the y-axis is scaled to lane widths, such that each increment or decrement of 1 on the y-axis represents the width of one lane, as in the present example embodiment, i weak Can be a real number A weak is a scalar value. For example, in this example implementation, A weak =1.

[0122] Figure 6 is an example of cross Figure 2A and Figure 2B The weak preference function ν of the road 20 shown is weak It should be noted that the weak preference function ν is evaluated only at the key lateral positions 24_1 to 24_10. weak .so, Figure 6 The linear interpolation between the respective weak preferred values ​​calculated for each of the plurality of key lateral positions shown in is for ease of visualization only.

[0123] When the host vehicle is not in the preferred lane, the strong preference function biases the autonomous control to guide the host vehicle 1 toward the preferred lane among the multiple lanes 21A, 21B, 21C, and prevents the host vehicle 1 from leaving the preferred lane when the host vehicle 1 is in the preferred lane. In addition, the strong preference function can also be configured to provide the host vehicle 1 with a default behavior of avoiding crossing some outer lanes 21A, 21C of the road 20.

[0124] As an example, a strong preference function may depend on the route input and may bias autonomous control to guide the host vehicle 1 toward the preferred lane, even if it means slowing down to follow a slower vehicle. For example, when a road fork is in front of the host vehicle 1, the left (slow) lane may be preferred, and autonomous control should be executed so that the host vehicle 1 does not switch lanes out of the left lane under any circumstances. The strong preference function may also bias autonomous control to prevent the host vehicle 1 from leaving lanes 21A, 21B, 21C under all circumstances.

[0125] As an example, the strongly preferred function v strong It can be defined as follows:

[0126] (7)

[0127] Among them, I strong is a set of one or more preferred lanes in the plurality of lanes 21A, 21B, 21C. In example embodiments such as the present example embodiment, where the y-axis is scaled to lane widths, each increment or decrement of 1 on the y-axis represents the width of one lane, such as in the present example embodiment, I strong Can be a set of real numbers A strong is a scalar value. For example, in this example implementation, A strong Equals 3.

[0128] Figure 7 is an example of cross Figure 2A and Figure 2B The strong preference function ν of the road 20 shown strong It should be noted that the strong preference function ν is evaluated only at the key lateral positions 24_1 to 24_10. strong , and therefore, Figure 7 The linear interpolation between the respective strong preferred values ​​calculated for each of the plurality of key lateral positions shown in is for ease of visualization only.

[0129] In the event that the host vehicle 1 is approaching a slower moving vehicle, the overtaking (passing) function biases the autonomous control to direct the host vehicle 1 toward the fast lane 21A among the plurality of lanes 21A, 21B, 21C.

[0130] In the event that the distance along the road 20 between the host vehicle 1 and the vehicle being overtaken is less than a threshold distance, the non-switching function biases the autonomous control toward preventing the host vehicle 1 from moving into the lane of the vehicle being overtaken by the host vehicle 1 .

[0131] As in the present example embodiment, the overtaking function and / or the no-switching function may be evaluated at each of the plurality of key lateral positions 24_1 to 24_10 for each object in the environment of the host vehicle 1 .

[0132] As an example, an overtaking function and / or a non-switching function may be determined based on a state of the host vehicle 1 and a state of at least one other object O on the road 20 in the environment of the host vehicle 1, such that the value obtained by evaluating the overtaking function at specific critical lateral positions 24_1 to 24_10 is based on other road users in the environment of the host vehicle.

[0133] For example, the state of the host vehicle 1 may include information about the host vehicle 1, including, as an example, at least one of the following items: the lateral position of the host vehicle 1, the longitudinal speed of the host vehicle 1, the lateral speed of the host vehicle 1, and the expected longitudinal speed. Additionally or alternatively, the state of the object O may include information about the object O, including, as an example, at least one of the longitudinal position of the object, the lateral position of the object, the longitudinal speed of the object, the lateral speed of the object, and the longitudinal acceleration of the object.

[0134] As an example, the overtaking function v pass and does not switch function v no-cut It can be defined in the following form.

[0135] The assessment module 11 may be provided with information about the host vehicle 1 in the form of a host state H which is a collection of the following characteristics:

[0136] y-horizontal position

[0137] ·v x - Longitudinal speed

[0138] ·v y - Lateral speed

[0139] ·v des - Desired longitudinal velocity.

[0140] Similarly, the evaluation module 11 may be provided with an object state O for each object i. i The information about the object in the form of the object state O for each object i i Is a collection of the following features:

[0141] ·x i - Vertical position (center of bounding box)

[0142] ·y i - Horizontal position (center of bounding box)

[0143] ·v x,i - Longitudinal speed

[0144] ·v y,i - Lateral speed

[0145] ·a x,i - Longitudinal acceleration

[0146] ·l x,i - The vertical extent of the object.

[0147] The host state H and object state O of each object i i Can be used to limit some intermediate values, as a limit to cross the component v passand / or without switching function v no-cut In particular, we can express the overtaking function v with respect to pass and / or without switching function v no-cut The model of the road 20 of the "full effect" region (e.g., in the lane coordinate system of the exemplary embodiment) defines a rectangular region around each object i where these functions have some full amplitude. Outside the full effect region, the transcendental function v pass and / or without switching function v no-cut It decreases linearly to zero with a certain ramp-up distance, thus having a truncated pyramid shape.

[0148] By providing the ramp-up distance in this way, smooth movement of the host vehicle can be ensured when other road users frequently move about on the road 20. In particular, the ramp-up distance can allow the values ​​of the generated overtaking value and the non-switching value, and thus the influence of the object O on the autonomous control of the host vehicle 1, to gradually increase as the object O moves relative to the road 20 or a lane on the road. In this way, the overtaking function v pass The host vehicle 1 may be allowed to switch completely to the fast lane and remain within the bias region of the lane. Similarly, the function v is not switched. no-cut The host vehicle 1 may be prohibited from leaving the offset region toward the occupied lane. If the object O is approaching the lane boundary, the range will further reach a lane. In this way, the function v is not switched. no-cut This may allow the host vehicle to avoid a dangerous synchronized lane switch into the lane into which object O is moving.

[0149] Figure 8 is a graph illustrating an exemplary area of ​​full effect having a truncated pyramid shape for a given object O. The lateral and longitudinal range functions are defined so as to provide a rectangular area of ​​full effect, decreasing linearly to zero at the edges.

[0150] The area and ramp distance are defined using specific longitudinal and lateral extents. The lateral extent depends only on the lateral position y of the object O itself. i and speed v i , and the longitudinal range also depends on the longitudinal speed v of the host vehicle 1 x The step of defining the lateral range and the longitudinal range for each object O also includes defining the following function:

[0151] (8)clip(x,a,b)=min(max(a,x),b)

[0152] (9)trapezoid(x,a,b)=clip((1-(xa) / (ba)),0,1)

[0153] The following equations (10) to (12) show how to use the above clip function and trapezoid function to calculate the value v at each point (x, y) to create a zoom with a pyramid shape:

[0154] (10)k x =min(trapezoid(-x,x2,x1),trapezoid(x,x3,x4))

[0155] (11) k y =min(trapezoid(-y,y2,y1),trapezoid(y,y3,y4))

[0156] (12)v=Amin(k x , k y )

[0157] (13)

[0158] Lateral range function Δy range (y, v) is used to determine the lateral range of the full effect area for each object O, where y is the lateral position of the object O and v is the lateral speed of the object O. The lateral range for each object O is defined to extend into the lane adjacent to the lane where the object O is located, far enough to contain the nearest edge of the offset area of ​​the adjacent lane as the key lateral position 24_1 to 24_10. In addition, the lateral range function can be defined so that the full effect area of ​​the non-switching component reaches the next lane of the object performing the lane switch, so that the host vehicle 1 is prohibited from performing a synchronous lane switch.

[0159] In the following definitions, it is assumed that the y-axis is scaled to the lane width so that each increment or decrement of 1 on the y-axis represents the width of one lane, such as in the present exemplary embodiment, so that the value 0.5 can represent half the lane width of the road 20 (i.e., the distance between the lane center and the lane boundary). Alternatively, in an exemplary embodiment where the y-axis is not so scaled, the value 0.5 in sets (i) and (ii) and equations (14) to (26) can be replaced with any suitable value corresponding to half the lane width of the road 20, and other values ​​(e.g., 1.5, 1, etc.) can be scaled accordingly.

[0160] Then the lateral range function Δy range (y,v) gives the left lateral extent, which can be defined as follows:

[0161] (i) ys = [-0.5, -Δy bias , Δy bias , 0.5]

[0162] (ii)rs = [1.5 - Δy bias , 1,1-Δy bias , 1.5-Δy bias ]

[0163] (14)

[0164] in, and

[0165] (15)

[0166] (16)Δy range (y, v) = Δy base (y)+Δy v,range (y, v)

[0167] By symmetry the right side range is calculated as Δy range (-y,-v).

[0168] In the above equation (15), v μ is a threshold speed (e.g., a peak lateral speed for setting an offset of the vehicle's lateral position relative to the center of the lane when driving within the lane (setting of this offset is referred to herein as "biasing")), below which the lateral range is not increased in order to avoid an increase in lateral range caused by small oscillations of the object O, which in turn may result in uncomfortable behavior, and v min,switch is the minimum lateral speed used during or to indicate a lane switch. By calculating the left lateral range and the right lateral range separately, it is ensured that the lateral range only increases on one side in the direction of the lane speed.

[0169] The longitudinal range of each object O is defined using a set of longitudinal distances, such as a safety distance and a comfortable equilibrium distance, ie, d ramp d pass d safe,f d safe,b d comf,eq d cut,f and d cut,b , as described below. These all depend on the longitudinal velocities of both object O and host vehicle 1.

[0170] ·d ramp - Ramp distance, the distance the component ramps from 0 to its maximum value. Depends on the following parameters:

[0171] -s min -Minimum ramp distance (m).

[0172] -t ramp-Minimum ramp-up time (s).

[0173] ·d pass - Overtake distance for full effect of overtake component. Far enough to complete lane switch before having to slow down. Depends on following parameters:

[0174] -t trail - Advance time (s).

[0175] -t switch - Time to complete lane switch (s).

[0176] -t a - Prediction time to maintain current acceleration (s).

[0177] ·d safe,f -Safety distance to other vehicles in front. Depends on the following parameters:

[0178] -t o,r - Reaction time of other road users (s).

[0179] -b max - Maximum braking deceleration of the host (ms -2 ).

[0180] -b o,min - Minimum emergency braking response of other road users (ms) -2 ).

[0181] ·d safe,b -Safety distance behind other vehicles. Depends on the following parameters:

[0182] -t r -Host response (adaptation) time (s).

[0183] -b o,max - Maximum braking deceleration of other road users (ms) -2 ).

[0184] -b min - Host minimum emergency braking response (ms -2 ).

[0185] ·d comf,eq - Comfort breakaway distance, the distance lost when comfortably slowing down to the vehicle ahead. Depends on the following parameters:

[0186] -t comf - Adjust the time to comfortable braking deceleration (s).

[0187] -Δb comf - Comfortable additional deceleration compared to the preceding vehicle (ms) -2 ).

[0188] ·d cut,f - The distance in front of other vehicles of the full effect area of ​​the switching component. Depends on the following parameters:

[0189] -d min - The minimum distance to another vehicle in the longitudinal direction that is always maintained (m).

[0190] ·d cut,b - The distance in front of other vehicles of the full effect area of ​​the switching component. Depends on the following parameters:

[0191] -d min - The minimum distance to another vehicle in the longitudinal direction that is always maintained (m).

[0192] The longitudinal range function defines the full effect longitudinal range and ramp distance of the object component as follows:

[0193] (17)d ramp (v,v o )=max(s min , abs(vv o )t ramp )

[0194] (18)

[0195] (19)

[0196] (20)

[0197] (twenty one)

[0198] (twenty two)

[0199] (twenty three)

[0200] Among them, the subscript o indicates that the parameter is a parameter of a vehicle other than the host vehicle, such as the object O whose longitudinal range is to be calculated, the subscript f indicates the front side of the object O relative to its traveling direction, and the subscript b indicates the rear side of the object O relative to its traveling direction.

[0201] As an example, Fig. 9 The full effect area around the object O in the lane switch scenario calculated using the lateral range function and the longitudinal range function described above is shown.

[0202] Using the above-described lateral range function and longitudinal range function, the overtaking function v can then be evaluated for each of the key lateral positions 24_1 to 24_10 at the longitudinal position of the host vehicle. pass, to calculate a scalar velocity value for each of the plurality of key lateral positions 24_1 to 24_10. Similarly, using the lateral range function and the longitudinal range function described above, the non-switching function v may then be evaluated for each of the key lateral positions 24_1 to 24_10 at the longitudinal position of the host vehicle. no-cut To calculate the scalar velocity value of each key lateral position in the plurality of key lateral positions 24_1 to 24_10.

[0203] According to this example, the object state O of the object is used. i , the overtaking function v can be defined for each object i in the following form pass :

[0204] (24)k x,i =min(trapezoid(-x i ,0,1),trapezoid(x i , d pass (v x , v x,i , a x,i ),d pass (v x , v x,i , a x,i )+d ramp (v x , v x,i )))

[0205] (25)

[0206] (26)

[0207] Among them, A pass is a scalar value. For example, in this example implementation, A pass Equals 2.

[0208] Fig.10 is an example of cross Figure 2A and Figure 2B The overtaking function ν of the road 20 shown is pass It should be noted that although the overtaking function ν pass is defined for all values ​​of y, but the overtaking function ν is evaluated only at the critical lateral positions 24_1 to 24_10 pass , and as will be discussed in more detail below, the generated lateral velocity field is based solely on the corresponding overtaking function value calculated for each of the plurality of key lateral positions.

[0209] According to this example, the object state O of the object is used. i, we can define the non-switching function v for each object i as follows no-cut :

[0210] (27)

[0211] (28)

[0212] (29)

[0213] (30)v no-cut,i (y key )=A no-cut (min(k x,i , k left,i (y key ))-min(k x,i , k right,i (y key ))),

[0214] Among them, A no-cut is a scalar value. For example, in this example implementation, A no-cut Equals 3.

[0215] Fig.11 is an example of cross Figure 2A and Figure 2B The non-switching function ν of the road 20 shown no-cut It should be noted that although the function ν is not switched no-cut is defined for all values ​​of y, but the non-switching function ν is evaluated only at the critical lateral positions 24_1 to 24_10 no-cut , and as will be discussed in more detail below, the generated lateral velocity field is based solely on the corresponding unswitched values ​​calculated for each of the plurality of key lateral positions.

[0216] In the weak preference function ν weak , strong optimization function ν strong 、Overtaking function ν pass and does not switch function ν no-cut In the above exemplary definition, the scalar value A weak , A strong , A pass and A no-cut have values ​​1, 3, 2, and 3, respectively, representing the maximum corresponding magnitudes of these functions. Furthermore, in the above lane following scalar speed function v lane In the exemplary definition of , the function has a maximum magnitude A lane . In this way, A weak :Astrong :A pass :A no-cut :A lane The ratio of is 2:6:4:6:1. That is, the maximum amplitude of each of these scalar speed functions is selected so that the value of each scalar speed function can bias the autonomous control to control the host vehicle 1 to travel along the road 20 according to the corresponding driving rule in the driving rules, because the amplitude of the scalar speed value obtained by evaluating a specific scalar speed function at a specific critical lateral position 24_1 to 24_10 indicates the priority (or importance) of following the corresponding driving rule in the driving rules when evaluating the scalar speed function with respect to other driving rules. It should be noted that A weak :A strong :A pass :A no-cut :A lane The ratio of is not limited to the example of 2:6:4:6:1 provided above, and any other ratio may be used as long as the ratio allows lane switching in three priority levels: A weak >A lane , A pass -A weak >A lane , A strong -A pass >A lane And A no-cut Greater than or equal to A weak , A strong , A pass and A lane Therefore, the exact relative amplitudes are not important, as long as the above inequality holds. To further summarize, if the following holds: n -A (n-1) >A lane , a lane switching rule with priority n can take precedence over a lane switching rule with priority n-1, where their magnitudes are A n and A (n-1) Similarly, if A2-A1 lane , then a rule with magnitude A1 can prohibit any lane switching rule with magnitude A2, which is why the no-switching component can prohibit dangerous lane switching.

[0217] As in this example embodiment, A weak , A strong , A pass , A no-cut and A lane The value of can be chosen so that the highest priority is given to the strong preference function ν strong and does not switch function ν no-cut ​, and the lowest priority is given to the lane following function v lane Specifically, as discussed in detail below, the target speed value for each key lateral position 24_1 to 24_10 depends on the relative magnitudes of the scalar speed values ​​calculated by evaluating the scalar speed function at that key lateral position 24_1 to 24_10, and therefore, a scalar speed function having the largest maximized magnitude, when evaluated, may tend to result in a larger scalar speed value than a scalar speed function having a smaller maximized magnitude.

[0218] Therefore, as an alternative, as long as the relative amplitude is maintained, A weak , A strong , A pass , A no-cut and A lane The value of can be set to any value. More generally, as another alternative, any suitable function can be used to define the weak preference function ν weak , strong optimization function ν strong 、Overtaking function ν pass , do not switch function ν no-cut and the lane following scalar velocity function v lane , so that the relative maximum magnitudes and hence the relative priorities of these scalar velocity functions are maintained.

[0219] exist Figure 4 In the processing step S42, the target lateral velocity generator module 12 combines the scalar velocity values ​​calculated for each of the plurality of key lateral positions 24_1 to 24_10 to generate the corresponding target lateral velocity values ​​for the key lateral positions 24_1 to 24_10. The target lateral velocity generator module 12 combines the scalar velocity values ​​calculated for each of the key lateral positions 24_1 to 24_10 by adding a first value that is the maximum of zero and the scalar velocity value and a second value that is the minimum of zero and the scalar velocity value.

[0220] As described above, the magnitude or other characteristics of the scalar speed value obtained by evaluating a specific scalar speed function at a specific key lateral position 24_1 to 24_10 can indicate the priority or importance of following a corresponding driving rule in the driving rules when evaluating the scalar speed function with respect to other driving rules. Additionally or alternatively, the magnitude or other characteristics of the scalar speed value obtained by evaluating a specific scalar speed function at a specific key lateral position 24_1 to 24_10 can indicate the direction in which the host vehicle 1 should move, the speed at which the host vehicle 1 should move in a specific direction, or the acceleration at which the host vehicle 1 should move in a specific direction in order to comply with a corresponding driving rule in the driving rules.

[0221] Therefore, by combining the scalar velocity values ​​calculated for each of the key lateral positions 24_1 to 24_10 by adding a first value that is the maximum of zero and the scalar velocity value and a second value that is the minimum of zero and the scalar velocity value, the resulting target velocity value calculated for a given key lateral position 24_1 to 24_10 will only depend on the scalar velocity value having the largest positive value (assuming that at least one of the scalar velocity values ​​calculated for that key lateral position 24_1 to 24_10 is greater than 0) and the scalar velocity component having the largest negative value (assuming that at least one of the scalar velocity values ​​calculated for that key lateral position 24_1 to 24_10 is less than 0).

[0222] In this way, it may be advantageously ensured that scalar speed values ​​that result in opposite behaviors of the host vehicle 1 cancel each other out, while scalar speed values ​​that result in similar behaviors of the host vehicle 1 do not cooperate.

[0223] In example embodiments such as the present example embodiment, where the overtaking (passing) function and / or the no-switching function may be evaluated for each object in the host vehicle's environment at each of the plurality of key lateral positions 24_1 to 24_10, a plurality of scalar speed values ​​corresponding to the plurality of objects in the host vehicle's environment may be generated based on a single scalar speed function (i.e., scalar speed values ​​of the same type) with respect to each of the plurality of key lateral positions 24_1 to 24_10. In such example embodiments, the step of combining the scalar speed values ​​calculated for a given key lateral position 24_1 to 24_10 may include combining the plurality of scalar speed values ​​of the same type with other scalar speed values ​​generated for the key lateral positions 24_1 to 24_10. As an example, if there are two vehicles in the host vehicle's environment that affect the lateral velocity field, the step of combining the scalar speed values ​​calculated for the given key lateral position 24_1 to 24_10 may include combining a single weak preferred value, a single strong preferred value, two no-switching values, and two overtaking values. However, more generally, there may be more than two vehicles in the environment of host vehicle 1 , there may be a single vehicle in the environment of host vehicle 1 , or there may be no other vehicles in the environment of host vehicle 1 affecting the lateral velocity field at any given moment.

[0224] As an example, consider Figure 2A, in the case where the plurality of scalar speed functions include a strong preference function, lane 21C may be set as the preferred lane of the host vehicle, such that the scalar speed values ​​obtained by evaluating the strong preference function at the plurality of key lateral positions 24_1 to 24_10 may bias the autonomous control to guide the host vehicle 1 toward lane 21C and prevent the host vehicle 1 from leaving lane 21C. However, in the case where the plurality of scalar speed functions include a no-switch function, when the object O is relatively close to the position 22 of the host vehicle, since the distance along the road 20 between the host vehicle 1 and the object O is less than the threshold distance, the scalar speed values ​​obtained by evaluating the no-switch function at the plurality of key lateral positions 24_1 to 24_10 may bias the autonomous control to prevent the host vehicle 1 from moving into lane 21C of the object O that is overtaken by the host vehicle 1. In this way, by combining the scalar speed values ​​as in processing step S42, the opposite behaviors obtained by the scalar speed values ​​calculated by evaluating the strong preference function and the no-switch function may be offset to prevent the host vehicle 1 from switching into lane 21C.

[0225] As another example, consider Figure 2A , in the case where the plurality of scalar speed functions include a strong preference function, the lane 21C may be set as a preferred lane of the host vehicle, such that the scalar speed values ​​obtained by evaluating the strong preference function at the plurality of key lateral positions 24_1 to 24_10 may bias the autonomous control to guide the host vehicle 1 toward the lane 21C and prevent the host vehicle 1 from leaving the lane 21C. In addition, in the case where the plurality of scalar speed functions include a weak preference function, the lane 21C may be set as a default lane of the host vehicle, such that the scalar speed values ​​obtained by evaluating the weak preference function at the plurality of key lateral positions 24_1 to 24_10 may bias the autonomous control to guide the host vehicle 1 toward the default lane 21C. In this case, since the lane 21C is both the default lane and the preferred lane, it is not necessary to guide the host vehicle 1 toward the lane 21C to a greater extent (e.g., at a higher speed or acceleration). It is sufficient to bias the autonomous control to guide the host vehicle 1 toward the lane 21C. In this way, combining the scalar speed values ​​as in processing step S42 avoids similar behavior cooperation based on the scalar speed values ​​calculated by evaluating the strong preference function and the weak preference function.

[0226] In some example embodiments, all scalar speed values ​​calculated for a given key lateral position by evaluating each of the scalar speed functions at the key lateral position may be combined as in process step S42. As an example, the lane following scalar speed value, the strong preference value, the weak preference value, the overtake value, and the do not switch value may be combined for each key lateral position by adding a first value that is the maximum of zero and the scalar speed value and a second value that is the minimum of zero and the scalar speed value.

[0227] Alternatively, in e.g. Figure 2A and Figure 2B In an example implementation of the present example, wherein the plurality of scalar speed functions include a lane following speed function, and the evaluation module 11 calculates a corresponding lane following scalar speed value of the lane following speed function for each of the plurality of key lateral positions 24_1 to 24_10, as in the present example implementation, the lane following scalar speed value may be combined individually and subsequently with an auxiliary speed value obtained by combining other scalar speed values ​​calculated for the key lateral positions 24_1 to 24_10.

[0228] In this way, the lane following scalar speed value obtained by evaluating the lane following scalar speed function can bias the autonomous control towards causing the host vehicle 1 to follow the current lane in a stable self-correcting manner, where all other scalar speed values ​​cancel each other out so as to cancel. This may be particularly advantageous for example embodiments where the lane following scalar speed function has the lowest priority among the scalar speed functions and therefore has the lowest maximum magnitude, so that if any other scalar lateral value has a non-zero value, the lane following scalar speed value will not affect or is unlikely to affect the value of the target lateral speed for a given critical lateral position 24_1 to 24_10.

[0229] For example, in such an example implementation, as part of generating the corresponding target lateral speed for each key lateral position 24_1 to 24_10, the target lateral speed generator module 12 may combine the lane following scalar speed value for the key lateral position 24_1 to 24_10 with the auxiliary speed value obtained by combining the scalar speed values ​​calculated for the key lateral positions 24_1 to 24_10. The target lateral speed generator module 12 may also add a third value, which is the largest of zero, the lane following scalar speed value, and the auxiliary speed value, and a fourth value, which is the smallest of zero, the lane following scalar speed value, and the auxiliary speed value.

[0230] As a more specific example, when the plurality of key lateral positions 24_1 to 24_10 are those defined by equations (1) to (4) and the plurality of scalar speed functions include a lane following scalar speed function v as defined in equation (5): lane , as defined in equation (6) the weak preference function ν weak , as defined in equation (7) the strong preference function ν strong , the overtaking function ν as defined in equation (26) pass and the unswitching function ν as defined in equation (30) no-cut In the example embodiment, as in the present example embodiment, by keyThe plurality of scalar velocity values ​​calculated from evaluating each of the plurality of scalar velocity functions may be combined using the following equation to generate a corresponding target lateral velocity value v for the key lateral positions 24_1 to 24_10: tot (y key ):

[0231] (31)F aux (y key )={v weak (y key ),v strong (y key )}∪{v pass,i (y key ), v no-cut,i (y key )for each object i}

[0232] (32)v aux (y key )=clip(max({0}∪F aux (y key ))+min({0}∪F aux (y key )),-2,2)

[0233] (33)v tot (y key )=max({0,v aux (y key ),v lane (y key )})+min({0,v aux (y key ),v lane (y key )})

[0234] More generally, once the plurality of scalar speed values ​​at each key lateral position 24_1 to 24_10 have been combined, the generated target speed value for each key lateral position 24_1 to 24_10 indicates at least one of the lateral direction in which the host vehicle 1 should move and the urgency with which the vehicle 1 should move.

[0235] As an example, Fig.12 is an example of cross Figure 2A and Figure 2B The auxiliary speed value v for the road 20 is shown aux (y key ) is a graph of a first example. Fig.12 In the example of , the scalar velocity function includes the weak preference function ν as defined in equation (6) weak and the strong preference function ν defined in equation (7)strong It should be noted that the auxiliary speed value v is evaluated only at the critical lateral positions 24_1 to 24_10. aux (y key ), and therefore, Fig.12 The corresponding auxiliary speed value v calculated for each of the multiple key lateral positions shown in aux (y key ) are only for visualization purposes.

[0236] As another example, Fig.13 is an example of cross Figure 2A and Figure 2B The auxiliary speed value v for the road 20 is shown aux (y key ) is a graph of a second example. Fig.13 In the example of , the scalar velocity function includes the weak preference function ν as defined in equation (6) weak , the strong preference function ν as defined in equation (7) strong and the overtaking function ν as defined in equation (26) pass It should be noted that the auxiliary speed value v is evaluated only at the critical lateral positions 24_1 to 24_10. aux (y key ), and therefore, Fig.13 The corresponding auxiliary speed value v calculated for each of the multiple key lateral positions shown in aux (y key ) are only for visualization purposes.

[0237] Fig.14 is an example of cross Figure 2A and Figure 2B The target speed value v of the road 20 is shown tot (y key ) is a graph showing an example of the distribution of Fig.13 In the example of , the scalar speed function includes the lane following scalar speed function ν as defined in equation (5) lane , the value of this scalar speed function is combined with the corresponding auxiliary speed value calculated according to equation (32). It should be noted that the target speed value v is evaluated only at the key lateral positions 24_1 to 24_10. tot (y key ), and therefore, Fig.14 The corresponding target speed value v calculated for each of the multiple key lateral positions shown in tot (y key ) are only for visualization purposes.

[0238] Optionally, in some example embodiments, the target lateral velocity generator module 12 may also be configured to perform weighting on the generated target velocity values ​​at the plurality of key lateral positions 24_1 to 24_10 so that the host vehicle 1 exhibits more human-like behavior under autonomous control.

[0239] As an example, as part of generating the corresponding target lateral speed for each key lateral position 24_1 to 24_10, the target lateral speed generator module 12 may also use a first weighting factor to weight the target lateral speed generated for the key lateral position when the key lateral position 24_1, 24_4, 24_7, 24_10 is a boundary of a lane in the plurality of lanes. In addition, when the key lateral position 24_2, 24_3, 24_5, 24_6, 24_8, 24_9 is an edge of an offset region 25A, 25B, 25C within a lane in the plurality of lanes, the target lateral speed generator module 12 may also use a second weighting factor to weight the target lateral speed generated for the key lateral position, the first weighting factor being greater than the second weighting factor.

[0240] By weighting the generated target speed values ​​at each key lateral position 24_1, 24_4, 24_7, 24_10 that are the boundaries of lanes 21A, 21B, 21C with a larger weighting factor, and weighting the generated target speed values ​​at each key lateral position 24_2, 24_3, 24_5, 24_6, 24_8, 24_9 that are the edges of bias areas 25A, 25B, 25C with a smaller weighting factor, the host vehicle 1 will exhibit more human-like behavior (i.e., behavior that is more similar to the behavior of the host vehicle 1 when it is controlled by a safe and responsible human driver), wherein the host vehicle 1 will switch lanes more decisively and change frequently within its lane more carefully.

[0241] Additionally or alternatively, the target lateral speed generator module 12 may also be configured to clip or truncate the generated target speed values ​​at the plurality of key lateral positions 24_1 to 24_10 such that none of the generated target speed values ​​exceeds a predetermined maximum safe lateral speed.

[0242] As a more detailed example, the target lateral velocity generator module 12 may also be configured to generate target velocity values ​​v at a plurality of key lateral positions 24_1 to 24_10 according to the following equation: tot (y key ) (which may be calculated, for example, according to equation (33)) performs weighting:

[0243] (34)

[0244] Among them, v max is the maximum safe lateral speed, i.e., the peak lateral speed used during the lane switch, v μ is in v aux The peak lateral velocity used to set the vehicle's lateral position relative to the lane center (when driving within the lane) is first clipped to the range (-2, 2). In this case, the target velocity value v tot will never exceed 1 and leave the bias region, and therefore v μ will be the minimum speed that the host vehicle 1 will have when performing a two lane switch in a row, and should be set low enough so that the resulting behavior is that the host vehicle 1 is driving almost straight in the middle lane and therefore not performing an illegal two lane switch.

[0245] exist Figure 4 In the processing step S43 , the lateral velocity field generator module 13 generates a lateral velocity field by interpolating between the target lateral velocity values ​​generated for the plurality of key lateral positions 24_1 to 24_10 .

[0246] As in the present example embodiment, the lateral velocity field generator module 13 may be configured to interpolate between the target lateral velocity values ​​generated for each pair of adjacent key lateral positions in the plurality of key lateral positions 24_1 to 24_10. Therefore, the generated lateral velocity field between any two adjacent key lateral positions depends only on the target lateral velocity values ​​of the two adjacent key lateral positions, thereby ensuring the locality of the field.

[0247] The lateral velocity field generator module 13 may, for example, be configured to perform a quadratic interpolation between respective target lateral velocity values ​​generated for each pair of adjacent key lateral positions in the plurality of key lateral positions.

[0248] More specifically, the step of performing a quadratic interpolation between any two adjacent key lateral positions may include defining one or more suitable quadratic functions that are functions of the lateral positions (e.g., Figure 2A and Figure 2B The lateral velocity field generator module 13 may then evaluate one or more defined quadratic functions for each position y between two adjacent key lateral positions in order to generate a lateral velocity field between the two adjacent key lateral positions. The lateral velocity field generator module 13 may then repeat these steps for each pair of adjacent key lateral positions.

[0249] One or more quadratic functions may be defined such that each of the one or more quadratic functions has a derivative of zero at its endpoints. For example, in the case of defining a single quadratic function, the endpoints may be key lateral positions. Alternatively, when defining more than one quadratic function, such as such that the lateral velocity field between any two adjacent key lateral positions is defined in a piecewise manner, the endpoints of each quadratic function may be similar to the region between two adjacent key lateral positions.

[0250] By defining one or more quadratic functions such that each quadratic function has a zero derivative at their endpoints, it is possible to ensure that the lateral velocity field is continuous across the lateral axis of the road 20 and does not have any discontinuities while maintaining the locality of the lateral velocity field. In contrast, most smooth interpolation methods (e.g., splines, Bezier curves, etc.) cannot guarantee locality.

[0251] More specifically, for example, the one or more quadratic functions may be defined as two parabolas having zero derivatives at endpoints, and the lateral velocity field generator module 13 may be configured to perform quadratic interpolation between corresponding target lateral velocity values ​​generated for each pair of adjacent key lateral positions in the plurality of key lateral positions to generate the lateral velocity field v(y) according to the following equation:

[0252] (35)

[0253] (36)

[0254] (37)

[0255] Wherein, v0 is the target lateral velocity calculated at the first key lateral position of a pair of adjacent key lateral positions, y0 is the lateral position of the first key lateral position, v1 is the target lateral velocity calculated at the second key lateral position of a pair of adjacent key lateral positions, and y1 is the lateral position of the second key lateral position.

[0256] When performing quadratic interpolation, using two parabolas with zero derivatives at the endpoints can be particularly advantageous because the lateral velocity field generated thereby has a parameter α. By setting the value of α as in equation (35) above, the jitter of the trajectory derived using the velocity field can be minimized.

[0257] As an example, Fig.15 is a graph illustrating an example of interpolating between calculated target lateral velocities at two adjacent key lateral positions by quadratic interpolation.

[0258] As another example, Fig.16 is a graph illustrating an exemplary lateral velocity field. Fig.16The exemplary lateral velocity field of is weighted according to equation (34) above and constructed using quadratic interpolation according to equation (37).

[0259] Refer again Figure 4 In processing step S44 , the target lateral acceleration determination module 14 determines the target lateral acceleration of the host vehicle using the generated lateral velocity field and the measured lateral velocity of the host vehicle.

[0260] As an example, the target lateral acceleration determination module 14 may be configured to determine the target lateral acceleration by using the generated lateral velocity field and the measured lateral velocity of the host vehicle to determine the target lateral acceleration of the host vehicle using a linear approximation.

[0261] For example, the apparatus 10 may be configured to perform Figure 4 The target lateral acceleration of the host vehicle 1 is determined at a predetermined period or frequency so that a new target lateral acceleration is determined for each time period Δt. This time period Δt may be referred to as a tick length and may be set to be equal to or less than t r (Host Reaction (Adjustment) Time) in order to ensure that the autonomously controlled host vehicle 1 will have sufficient time to react to any changes in its environment. In this case, the next lateral position of the host vehicle 1 can be calculated based on the current lateral position of the host vehicle, the current lateral velocity and the length of the time period Δt. The generated lateral velocity field can then be used to determine the target lateral velocity that the host vehicle should have at this next lateral position, and the acceleration required to achieve this target lateral velocity can be determined by linearly interpolating between the current lateral velocity of the host vehicle 1 (i.e., the measured lateral velocity) and the target lateral velocity of the host vehicle 1 for this next lateral position.

[0262] As a more specific example, the target lateral acceleration determination module 14 may be configured to determine the target lateral acceleration according to the following equation:

[0263] (38)

[0264] (39)

[0265] Among them, y next is the next lateral position of the host vehicle 1, y is the lateral position of the host vehicle 1, v y is the lateral velocity of the host vehicle 1 , w is the width of a lane among the plurality of lanes and v is a function defining the generated lateral velocity field.

[0266] Alternatively, the target lateral acceleration determination module 14 may be configured to determine the target lateral acceleration by determining the target lateral acceleration of the host vehicle using a cost function-based method, wherein the lateral velocity field is used as a reference velocity.

[0267] Optionally, the target lateral acceleration determination module 14 can be configured to correct the determined target lateral acceleration of the host vehicle 1 using an indication of the local curvature of the road, such that the corrected target lateral acceleration of the host vehicle includes a centripetal component that biases the autonomous control to cause the host vehicle to follow the local curvature of the road. Alternatively, the target lateral acceleration determination module 14 can also be configured to project the curvature-compensated target lateral acceleration of the host vehicle 1 onto the lateral direction (i.e., the y-axis) in the lane coordinate system. This may be advantageous at a later stage to allow the control signal for controlling the steering and / or acceleration of the host vehicle 1 to bring the lateral acceleration of the host vehicle 1 close to the determined target lateral acceleration to be generated.

[0268] In some example embodiments, such as in this example embodiment, Figure 4 The processing may optionally include an additional processing step S45. Figure 4 In the processing step S45, the device 10 generates a control signal for controlling the steering and / or acceleration of the host vehicle 1 so that the lateral acceleration of the host vehicle 1 approaches the determined target lateral acceleration.

[0269] Processing step S45 may be performed, for example, by the target lateral acceleration determination module 14. Alternatively, the apparatus 10 may optionally include an additional module configured to generate a control signal for controlling the steering and / or acceleration of the host vehicle 1 so that the lateral acceleration of the host vehicle 1 approaches the determined target lateral acceleration.

[0270] As another alternative, in Figure 4 In an example embodiment where the processing does not include processing step S45, any other suitable entity in the host vehicle may be provided with the target lateral acceleration determined by the target lateral acceleration determination module 14 and configured to generate a control signal for controlling the steering and / or acceleration of the host vehicle 1 to bring the lateral acceleration of the host vehicle 1 close to the determined target lateral acceleration. As an example, Figure 1B The autonomous driving system 15 shown in may optionally be configured to generate a control signal for controlling the steering and / or acceleration of the host vehicle 1 so that the lateral acceleration of the host vehicle 1 approaches the determined target lateral acceleration.

[0271] The verb "bias" is used herein to refer to (among other things) setting an offset in the balanced lateral position of the host vehicle 1 relative to the center of the lane in which it is driving. "Biasing" in this context is typically done by humans as a result of a simple preference to have extra margin to the left or right side of the vehicle, or to have extra safety margin when, for example, overtaking a wider vehicle. In the example embodiments described herein, for example, when overtaking or being overtaken, the host vehicle 1 may attempt to "bias" away from other vehicles in order to provide extra margin. In addition, as different components (such as the overtaking component) ramp up, the host vehicle 1 can gradually increase its bias until the component value is high enough to cross the edge of the bias area, at which point the host vehicle 1 will move completely into the bias area of ​​the target lane.

[0272] The example aspects described herein avoid limitations associated with autonomous driving, particularly limitations rooted in computer technology, and in particular techniques for determining a target lateral acceleration of a host vehicle relative to a road along which the host vehicle is traveling for autonomous control of the host vehicle. With the help of the example aspects described herein, sudden movements of the host vehicle that are uncomfortable for the driver / passenger of the host vehicle and not sufficiently human-like can be avoided. Moreover, with the help of the example aspects described herein, target lateral accelerations that result in unreasonably low speeds can be avoided, and when autonomously controlling the host vehicle, expansion to higher "priorities" between various driving rules to be followed can be allowed. Moreover, with the aforementioned capabilities of the example aspects described herein rooted in computer technology, the example aspects described herein improve computers and computer processing / functionality, and also improve at least the field of autonomous driving.

[0273] In the foregoing description, various aspects have been described with reference to several embodiments. Therefore, the description should be considered illustrative rather than restrictive. Similarly, the figures illustrated in the accompanying drawings highlighting the functions and advantages of the embodiments are presented for illustrative purposes only. The architecture of the embodiments is sufficiently flexible and configurable so that it can be utilized in a manner different from that shown in the accompanying drawings.

[0274] In an exemplary embodiment, the software implementation presented herein may be provided as a computer program or software, such as one or more programs with instructions or instruction sequences, which are included or stored in an article such as a machine-accessible medium or a machine-readable medium, an instruction storage unit, or a computer-readable storage device, each of which may be non-transitory. The program or instructions on the non-transitory machine-accessible medium, machine-readable medium, instruction storage unit, or computer-readable storage device can be used to program a computer system or other electronic device. The machine-readable medium or computer-readable medium, instruction storage unit, and storage device may include, but are not limited to, floppy disks, optical disks, and magneto-optical disks or other types of media / machine-readable media / instruction storage units / storage devices suitable for storing or transmitting electronic instructions. The techniques described herein are not limited to any particular software configuration. They can find applicability in any computing or processing environment. The terms "computer-readable medium", "machine-accessible medium", "machine-readable medium", "instruction storage unit", and "computer-readable storage device" used herein should include any medium capable of storing, encoding, or transmitting instructions or instruction sequences for execution by a machine, a computer, or a computer processor and causing the machine / computer / computer processor to perform any of the methods described herein. Furthermore, it is common in the art to refer to software in one form or another (e.g., program, procedure, process, application, module, unit, logic, etc.) as taking an action or causing a result. Such expressions are merely a shorthand way of stating that execution of the software by a processing system causes the processor to perform an action to produce a result.

[0275] Some embodiments may also be implemented by the preparation of application specific integrated circuits, field programmable gate arrays, or by interconnecting an appropriate network of conventional component circuits.

[0276] Some embodiments include computer program products. A computer program product may be a storage medium or multiple storage media, an instruction storage unit or multiple instruction storage units, or a storage device or multiple storage devices having instructions stored thereon or therein, which instructions may be used to control or cause a computer or computer processor to perform any program of the example embodiments described herein. Storage media / instruction storage units / storage devices may include, for example but not limited to, optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memories, flash cards, magnetic cards, optical cards, nanosystems, molecular memory integrated circuits, RAIDs, remote data storage units / archiving / warehousing, and / or any other type of device suitable for storing instructions and / or data.

[0277] Some implementations stored on a computer-readable medium or multiple media, an instruction store or multiple instruction stores, or a storage device or multiple storage devices include hardware for controlling the system and software for enabling the system or microprocessor to interact with a human user or other mechanism using the results of the embodiments described herein. Such software may include, but is not limited to, device drivers, operating systems, and user applications. Finally, such computer-readable media or storage devices also include software for performing the example aspects described above.

[0278] Included in the programming and / or software of the system are software modules for implementing the processes described herein. In some example embodiments herein, the modules include software, while in other example embodiments herein, the modules include hardware or a combination of hardware and software.

[0279] Although various embodiments of the present disclosure have been described above, it should be understood that they are presented as examples rather than limitations. It will be apparent to those skilled in the relevant art that various changes in form and detail may be made therein. Therefore, the present disclosure should not be limited by any of the above-described example embodiments, but should only be limited according to the attached claims and their equivalents.

[0280] In addition, the purpose of the abstract is to enable patent offices and the public, especially scientists, engineers and practitioners in the field who are not familiar with patent or legal terms or wording, to quickly determine the nature and substance of the technical disclosure of the present application from a cursory inspection. The abstract is not intended to limit the scope of the embodiments presented herein in any way. It should also be understood that any process recited in the claims need not be performed in the order presented.

[0281] Although this specification contains many specific implementation details, these details should not be interpreted as limitations on the content claimed, but as descriptions of specific features of specific implementations described herein. Certain features described in the context of separate implementations in this specification may also be implemented in combination in a single implementation. On the contrary, the various features described in the context of a single implementation may also be implemented individually or in any suitable sub-combination in multiple implementations. In addition, although features may be described above as working in certain combinations and even initially claimed as such, one or more features from the claimed combination may be deleted from the combination in some cases, and the claimed combination may be directed to a sub-combination or a variation of the sub-combination.

[0282] In some cases, multitasking and parallel processing may be advantageous. In addition, the separation of various components in the above-mentioned embodiments should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

[0283] Now that some exemplary embodiments have been described, it is apparent that the foregoing is illustrative and not restrictive, and has been presented by way of example. In particular, although many of the examples presented herein relate to specific combinations of devices or software elements, these elements may be combined in other ways to achieve the same purpose. Actions, elements, and features discussed only in conjunction with one embodiment are not intended to be excluded from similar effects in other embodiments or multiple embodiments.

[0284] The devices described herein may be implemented in other specific forms without departing from the features of the devices described herein. The above embodiments are illustrative rather than limiting of the described systems and methods. Therefore, the scope of the devices described herein is indicated by the appended claims rather than the preceding description, and changes falling within the meaning and range of equivalents of the claims are included therein.

Claims

1. A computer-implemented method for determining a target lateral acceleration of a host vehicle (1) relative to a road (20) along which the host vehicle (1) is traveling, the computer-implemented method for autonomously controlling the host vehicle to travel along the road according to a predetermined driving rule, the method comprising the following steps: evaluating (S41) each of a plurality of scalar speed functions at a plurality of key lateral positions predefined in a model about the road (20) to generate a set of corresponding scalar speed values, wherein the value of each scalar speed function biases the autonomous control to control the host vehicle (1) along the road (20) according to a corresponding driving rule of the driving rules; combining (S42) the scalar speed values ​​generated for each of the plurality of key lateral positions to generate a corresponding target lateral speed value for the key lateral position, the scalar speed values ​​generated for each of the key lateral positions being combined by adding a first value that is a maximum of zero and the scalar speed value and a second value that is a minimum of zero and the scalar speed value; generating (S43) a lateral velocity field by interpolating between the target lateral velocity values ​​generated for the plurality of key lateral positions; and The target lateral acceleration of the host vehicle (1) is determined (S44) using the generated velocity field and the measured lateral velocity of the host vehicle.

2. The computer-implemented method of claim 1 , wherein: The road (20) comprises a plurality of lanes, The plurality of scalar speed functions further include a lane following speed function that biases the autonomous control to control the host vehicle (1) to remain within a lane of the plurality of lanes, The method further comprises: calculating a corresponding lane following scalar speed value of the lane following speed function for each of the plurality of key lateral positions, and The step of generating a corresponding target lateral speed for each key lateral position also includes: combining a lane following scalar speed value for the key lateral position with an auxiliary speed value obtained by combining scalar speed values ​​calculated for the key lateral position by adding a third value and a fourth value, wherein the third value is the maximum of zero, the lane following scalar speed value, and the auxiliary speed value, and the fourth value is the minimum of zero, the lane following scalar speed value, and the auxiliary speed value.

3. The computer-implemented method of claim 1 or 2, wherein: The road (20) includes a plurality of lanes, and the plurality of scalar speed functions include two or more of the following: a weak preference function that biases the autonomous control to guide the host vehicle (1) toward a default lane among the plurality of lanes; a strong preference function that biases the autonomous control to guide the host vehicle (1) toward the preferred lane when the host vehicle (1) is not in the preferred lane among the plurality of lanes, and prevents the host vehicle (1) from leaving the preferred lane when the host vehicle is in the preferred lane; an overtaking function that biases the autonomous control to direct the host vehicle (1) toward a fast lane among the plurality of lanes if the host vehicle (1) is approaching a slower moving vehicle; as well as A non-switching function that biases the autonomous control to prevent the host vehicle (1) from moving into the lane of the vehicle being overtaken by the host vehicle (1) when the distance along the road (20) between the host vehicle (1) and the vehicle being overtaken is less than a threshold distance.

4. A computer-implemented method according to any one of the preceding claims, wherein: The road (20) comprises a plurality of lanes, The scalar velocity values ​​of each calculated set of scalar velocity values ​​are calculated by evaluating the corresponding scalar velocity function only at said key lateral position, and Each key lateral position is one of the following: boundaries of lanes in the plurality of lanes; and An edge of an offset region within a lane of the plurality of lanes, the offset region within each lane extending along the lane.

5. The computer-implemented method of claim 4, wherein: Generating the corresponding target lateral speed for each key lateral position also includes the following steps: weighting the target lateral speed generated for the key lateral position using a first weighting factor when the key lateral position is a boundary of a lane among the plurality of lanes; and weighting the target lateral speed generated for the key lateral position using a second weighting factor when the key lateral position is an edge of an offset region within a lane of the plurality of lanes, The first weighting factor is greater than the second weighting factor.

6. A computer-implemented method according to any one of the preceding claims, wherein: Interpolating between the target lateral velocity values ​​generated for the plurality of key lateral positions comprises the following steps: A secondary interpolation is performed between the respective target lateral velocity values ​​generated for each pair of adjacent key lateral positions in the plurality of key lateral positions.

7. A computer-implemented method according to any one of the preceding claims, wherein: Determining the target lateral acceleration comprises the following steps: using the generated lateral velocity field and the measured lateral velocity of the host vehicle (1) to determine the target lateral acceleration of the host vehicle (1) by using a linear approximation; or The target lateral acceleration of the host vehicle (1) is determined using a cost function based approach, wherein the lateral velocity field is used as a reference velocity.

8. The computer-implemented method of any preceding claim, further comprising: An indication of the local curvature of the road (20) is used to correct the determined target lateral acceleration of the host vehicle (1) such that the corrected target lateral acceleration of the host vehicle (1) includes a centripetal component that biases the autonomous control toward causing the host vehicle (1) to follow the local curvature of the road (20).

9. The computer-implemented method of any preceding claim, further comprising: A control signal is generated (S45) for controlling the steering and / or acceleration of the host vehicle (1) to minimize the difference between the measured lateral acceleration of the host vehicle (1) and the determined target lateral acceleration.

10. A computer program (345) comprising instructions which, when executed by a computer processor (320), cause the computer processor (320) to perform a computer-implemented method according to at least one of the preceding claims.

11. A device (10) arranged to determine a target lateral acceleration of a host vehicle (1) relative to a road (20) along which the host vehicle (1) is traveling, the device (10) being used to autonomously control the host vehicle (1) to travel along the road according to a predetermined driving rule, the device (10) comprising: an evaluation module (11) arranged to evaluate respective ones of a plurality of scalar speed functions at a plurality of key lateral positions predefined in a model about the road to generate a set of corresponding scalar speed values, wherein the value of the respective scalar speed function biases the autonomous control to control the host vehicle to travel along the road according to respective ones of the driving rules; a target lateral velocity generator module (12) arranged to combine the scalar velocity values ​​generated for each of the plurality of key lateral positions to generate a respective target lateral velocity value for the key lateral position, the target lateral velocity generator module (12) being arranged to combine the scalar velocity values ​​calculated for each of the key lateral positions by adding a first value to a second value, the first value being the maximum of zero and the scalar velocity value, the second value being the minimum of zero and the scalar velocity value; a lateral velocity field generator module (13) arranged to generate a lateral velocity field by interpolating between the target lateral velocity values ​​generated for the plurality of key lateral positions; and A target lateral acceleration determination module (14) is arranged to determine the target lateral acceleration of the host vehicle using the generated velocity field and the measured lateral velocity of the host vehicle.

12. A vehicle (1), comprising: an automated driving system (15) arranged to autonomously control the vehicle along a road (20) according to predetermined driving rules and using a target lateral acceleration; as well as A device (10) according to claim 11 arranged to determine the target lateral acceleration.

Citation Information

Patent Citations

  • Method and device for optimizing driver assistance systems

    CN105579320A

  • Method and system for controlling vehicle lane holding

    CN111315640A