The present application claims the benefit of priority from Japanese Patent Application No. 2019-186954 filed on Oct. 10, 2019. The entire disclosure of the above application is incorporated herein by reference.
The present disclosure relates to a technique for generating a travelling trajectory in which a physical quantity of motion in future travelling of a vehicle is specified in time series.
Conventionally, a technique for generating a traveling trajectory which a vehicle follows in future driving has been proposed, for example. In the technology, the standard trajectory based on the traffic lane information is corrected by the constraint information to generate the traveling trajectory of the vehicle to follow.
A physical quantity of motion of a vehicle in future traveling is specified in time series in a traveling trajectory. A standard trajectory is calculated based on a standard response parameter as a traveling trajectory that does not consider a constraint condition in future traveling. A correction trajectory is calculated based on a correction response parameter different from the standard trajectory as a traveling trajectory having a correction amount for correcting the standard trajectory in time series according to the constraint condition. A target trajectory to which the vehicle follows is calculated as a traveling trajectory in which the correction trajectory is superimposed on the standard trajectory.
The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description made with reference to the accompanying drawings. In the drawings:
In a conceivable technique, one of multiple types in the constraint information is reflected on the standard trajectory one by one. Therefore, when the number of predicted points on the standard trajectory is defined as N, the maximum number of calculations required to generate the final traveling trajectory may reach 2N or more.
According to the above point, a trajectory generator is provided such that reduces a calculation load for generating a traveling trajectory. Further, a trajectory generation method is provided such that reduces a calculation load for generating a traveling trajectory. Further, a trajectory generation program is provided such that reduces the calculation load for generating a traveling trajectory.
According to an example embodiment, a trajectory generator (1) for generating a traveling trajectory (X) in which a physical quantity of motion of a vehicle (3) in future traveling is specified in time series, the trajectory generator includes:
According to an example embodiment, a trajectory generating method executed by a processor (12) for generating a traveling trajectory (X) in which a physical quantity of motion of a vehicle (3) in future traveling is specified in time series, the trajectory generating method includes:
According to an example embodiment, a trajectory generating program that includes instructions executed by a processor (12) and is stored in a storage medium (10) to generate a traveling trajectory (X) in which a physical quantity of motion of a vehicle (3) in future traveling is specified in time series, the instructions includes:
According to these embodiments, the standard trajectory without considering the constraint condition in the future traveling is corrected by the correction amount of the travelling trajectory in time series according to the constraint condition, and the correction trajectory is calculated based on the response parameter different from the standard trajectory. As a result, the constraint condition can be reflected at once in the calculation of the correction trajectory regardless of the type thereof. Therefore, it becomes possible to reduce the calculation load until the target trajectory is generated by superimposing the correction trajectory on the standard trajectory.
Hereinafter, an embodiment will be described with reference to the drawings.
As shown in
A sensor system 5 is mounted on the vehicle 3 in addition to the trajectory generator 1 and the driving control device 2. The sensor system 5 acquires various kinds of information that can be utilized for the trajectory generation by the trajectory generator 1 and for the driving control by the driving control device 2. As shown in
The outside sensor 50 generates information about the outside of the vehicle 3, which is the surrounding environment of the vehicle 3. The outside sensor 50 may acquire the outside information by detecting an object existing in the outside of the vehicle 3. The outside sensor 50 of the detection type is at least one of a camera, a LIDAR (Light Detection and Ranging/Laser Imaging Detection and Ranging), a radar, a sonar, and the like, for example.
The outside sensor 50 may acquire the external information by receiving a signal from an artificial satellite of a GNSS (Global Navigation Satellite System) disposed in the outside of the vehicle 3 or a signal from a roadside device of ITS (Intelligent Transport Systems).
The outside sensor 50 of the reception type is at least one of, for example, a GNSS receiver, a telematics receiver, and the like.
The inside sensor 52 generates information about the inside of the vehicle 3, which is the internal environment of the vehicle 3. The inside sensor 52 may generate the internal information by detecting a specific motion physical quantity in the inside of the vehicle 3. The detection type inside sensor 52 is, for example, at least one of a gyroscope, a traveling speed sensor, an acceleration sensor, a steering angle sensor, and the like.
Based on the acquired information of the sensor system 5, the travel trajectory generated by the trajectory generator 1 and output to the driving control device 2 defines the physical quantity of motion of the vehicle 3 in future travel in time series. Specifically, the travelling trajectory is generated in a region from the current time-series point to the future time-series point, which is set ahead of the current time-series point by the predetermined number of steps, as the future prediction region. That is, the time-series points on the travelling trajectory indicated by white circles in
The travel trajectory defines a vector value or a scalar value at each time series point in the future prediction region so as to give a desired response characteristic with respect to a specific physical motion quantity of various physical motion quantities of the vehicle 3. The physical quantity of motion of the vehicle 3 defined by the travelling trajectory is at least one of a lateral position or a yaw angle, a running speed, an acceleration, a travelling distance, a steering angle, and the like relative to the travelling path 4. Here, in order to facilitate understanding, the present embodiment will be described below by describing an example of the case where the trajectory generator 1 generates a traveling trajectory in a lateral position relative to the traveling path 4. The lateral position relative to the traveling path 4 is defined as the relative position from the center position (see the broken line in
When the lateral position and the yaw angle at time k are represented by e[k] and θ[k], respectively, the following equation 1 is approximately established between the lateral position and the yaw angle. In equation 1, kp[k] is the curvature of the traveling path 4. In equation 1, kv[k] is a curvature that the vehicle 3 should follow. In equation 1, Δ is a time interval between time series points. Under the condition that equation 1 is satisfied, the traveling trajectory X at that position is defined by the following equation 2 using the lateral position e[k] at each time series point where k is 1 to N.
Here, “” in an equation means “Equation.”
Then the state quantity x[k] representing the motion state of the vehicle 3 and the operation quantity u[k] representing the driving operation of the vehicle 3 are defined by the following equations 3 and 4, respectively, the equation 1 is linearly approximated by the following equations 5 to 7. Under this approximation, the evaluation index J regarding the traveling trajectory X at the lateral position e[k] in the future prediction region is represented by the following equation 8. In equation 8, the parameter matrix Q is a response parameter that adjusts the action of causing the traveling trajectory X to approach the central position in the width direction of the traveling path 4. In equation 8, the parameter coefficient R is a response parameter that adjusts the degree of steepness in the change of the traveling trajectory X. The evaluation index J expressed by the equation 8 specifies the response characteristic of the traveling trajectory X that is determined according to the settings of the parameter matrix Q and the parameter coefficient R. The center position in the width direction of the traveling path 4 is simply referred to as the center position in the following description.
When the traveling trajectory U of the operation quantity u[k] is defined by the equation 9 using the operation quantity u[k] at each time series point with setting k from 0 to N−1, the equations 5 and 8 are rearranged, so that the following equations 10 to 12 are obtained. That is, the evaluation index J regarding the traveling trajectory X at the lateral position e[k] in the future prediction region may also be expressed by equation 10 by substituting equations 11 and 12 into equation 10.
In order to generate the travelling trajectory X having the highest evaluation index J (that is, the minimum in equations 8 and 10), the trajectory generator 1 shown in
In the case of these ECUs, the trajectory generator 1 is connected to the driving control device 2 and the sensor system 5 via at least one of a LAN (Local Area Network), a wire harness, an internal bus, and the like. The ECU that constituting the trajectory generator 1 may be an ECU that also functions as the driving control device 2. In the case of this ECU, the trajectory generator 1 is connected to the sensor system 5 via at least one of a LAN, a wire harness, an internal bus, and the like.
The trajectory generator 1 is a special purpose computer including at least one memory 10 and at least one processor 12. The memory 10 is at least one type of non-transitory tangible storage medium, such as a semiconductor memory, a magnetic storage medium, and an optical storage medium, for non-transitory storing or memorizing computer readable programs and data. The processor 12 includes, as a core, at least one type of, for example, a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an RISC (Reduced Instruction Set Computer) CPU, and so on. The processor 12 executes a plurality of instructions included in the trajectory generation program stored in the memory 10.
Thereby, the trajectory generator 1 establishes a plurality of functional blocks for generating the traveling trajectory X. As described above, in the trajectory generator 1, the trajectory generation program stored in the memory 10 causes the processor 12 to execute a plurality of instructions in order to generate the traveling trajectory X, and thus a plurality of functional blocks are constructed.
As shown in
The standard calculation block 100 calculates a standard trajectory Xb based on a standard response parameter as a traveling trajectory X that does not consider the constraint condition (detailed later) in the future traveling of the vehicle 3. Specifically, the standard calculation block 100 sets the parameter matrix Qb and the parameter coefficient Rb for calculating the standard trajectory Xb as the parameter matrix Q and the parameter coefficient R which are the response parameters in the equation 10 representing the evaluation index J. The parameter matrix Qb and the parameter coefficient Rb are set to be appropriate values that satisfy the equations 13 and 14, respectively, by, for example, an experimental result or a simulation result, or an operation for each time point based on these results. Equation 13 is a conditional equation for setting a condition that the parameter matrix Qb is a positive semi-definite matrix.
[Equations 13 and 14]
Q
b≥0 13
R
b>0 14
Under the setting of the parameter matrix Qb and the parameter coefficient Rb, the standard calculation block 100 calculates the travelling trajectory Ub of the operation variable ub[k], with which the evaluation index J with respect to the standard trajectory Xb is the highest, by the following equation 15. The standard calculation block 100 calculates the standard trajectory Xb of the lateral position eb[k] where the standard evaluation index J is the highest, using the calculation results of the traveling trajectory Ub according to the following equations 16 and 17. In the calculation of these trajectories Ub and Xb, the state quantity x[0] of equations 16 and 17 is obtained based on at least the external information of the output information from the sensors 50 and 52.
The constraint calculation block 120 illustrated in
As a condition that the constraint calculation block 120 limits the traveling trajectory X according to the determined constraint, the constraint condition regarding the lateral position e[k] at each time series point where k is from 1 to N is defined by the following equation 18. In equation 18, eu[k] and el[k] are the upper limit position and the lower limit position of the lateral position e[k] shown in
Specifically, the constraint calculation block 120 determines the lateral positions of the left and right side limits (that is, the left and right side edges) of the travelling path 4 in the future prediction area based on at least the external information of the output information from the sensors 50 and 52. At the same time, the constraint calculation block 120 determines the presence or absence of the obstacle 6 on the traveling path 4 based on the external information from the outside sensor 50.
When the obstacle 6 is disposed on the left side of the center position of the traveling path 4 (see
On the other hand, when the obstacle 6 does not exist on the left side of the center position of the traveling path 4, the constraint calculation block 120 sets the calculated left side limit lateral position to be the upper limit starting position. The constraint calculation block 120 subtracts the sum of the half width and the safety margin width of the vehicle 3 from the set upper limit starting position toward the center position side of the traveling path 4 to determine the lateral position of the upper limit trajectory Xu at each time series point.
When the obstacle 6 exists on the right side of the center position of the travel path 4, the constraint calculation block 120 executes a process which is prepared by replacing the left side, the upper limit starting position, and the upper limit trajectory Xu with the right side, the lower limit starting position, and the lower limit trajectory Xl, respectively, in the above processing in which the obstacle 6 is disposed on the left side. On the other hand, when the obstacle 6 does not exist on the right side of the center position of the traveling path 4, the constraint calculation block 120 executes a process which is prepared by replacing the left side, the upper limit starting position, and the upper limit trajectory Xu with the right side, the lower limit starting position, and the lower limit trajectory Xl, respectively, in the above processing in which the obstacle 6 is not disposed on the left side.
Here, as a constraint condition, when a motion physical quantity of a type different from the lateral position e[k] is additionally considered in addition to the lateral position e[k], equations 17 to 20 and 22 to 24 are modified according to the motion physical quantity. For example, in the equation 1, when the constraint condition regarding the yaw angle θ[k] at each time series point where k is 1 to N is added, the constraint condition is defined by the following equation 25. In equation 25, θu[k] and θl[k] are the upper limit angle and the lower limit angle of the yaw angle θ[k], respectively. Under the definition of Equation 25, using the upper limit angle θu[k] and the lower limit angle θl[k] at each time series point where k is 1 to N, the upper limit trajectory Θu and the lower limit trajectory Θl of the yaw angle θ[k] are defined by the following Equations 26 and 27, respectively. In this case, the following equations 28 to 30 instead of the equations 22 to 24 and the following equation 31 instead of the equation 17 are obtained. Therefore, the constraint calculation block 120 calculates the upper limit trajectories Xu, Θu and lower limit trajectories Xl, θl so that the constraint conditions regarding the lateral position e[k] and the yaw angle θ[k] are given by the equation 20 to which the equations 28 to 31 are substituted. The specific calculation processing of the upper limit trajectory θu and the lower limit trajectory θl is based on the specific calculation processing of the upper limit trajectory Xu and the lower limit trajectory Xl described above, and thus the explanation thereof will be omitted.
The correction calculation block 140 shown in
Specifically, the correction calculation block 140 changes the parameter matrix Q and the parameter coefficient R which are the response parameters in the equation 10 representing the evaluation index J from the parameter matrix Qb and the parameter coefficient Rb of the standard to the parameter matrix Qm and the parameter coefficient Rm for calculating the correction trajectory Xm. At this time, the correction calculation block 140 sets the parameter matrix Qm and the parameter coefficient Rm, so as to provide the correction trajectory Xm in which the operation quantity u[k] for the vehicle 3 becomes larger than the standard trajectory Xb, as a response characteristic that changes the correction trajectory Xm to be steeper than the standard trajectory Xb as shown in
In such a setting, the correction calculation block 140 sets the parameter matrix Qm and the parameter coefficient Rm that satisfy the following equations 32 to 35 so as to provide the evaluation index J in which the N step vector p exists as a condition for satisfying the N step scheme (described in detail later). At this time, when the correction matrix M is defined by the following equation 36 using the parameter matrix Qm and the parameter coefficient Rm, the correction matrix M for presenting the N step vector p is obtained by setting the parameter matrix Qm and the parameter coefficient Rm that satisfy the following equation 37. In equation 37, Mαα is a submatrix of the correction matrix M corresponding to the index set α. Therefore, equation 37 is a conditional expression that establishes for all index sets α in which the submatrix Mαα is a positive definite matrix. In equation 37, pα is a partial vector of the N step vector p corresponding to the index set α. Equation 33 is a conditional equation for setting a condition that the parameter matrix Qm is a positive semi-definite matrix.
Under the setting of the parameter matrix Qm and the parameter coefficient Rm, the correction calculation block 140 calculates the correction trajectory Xm of the lateral position correction amount em[k] by the following equation 38 using the correction vector λ. At this time, when the target trajectory Xp (detailed later) generated by the target calculation block as the traveling trajectory X is defined by the following equation 39, the correction vector λ which satisfies the following equations 40 to 45 is necessary for calculating the correction trajectory Xm.
Therefore, the correction calculation block 140 calculates the correction vector λ by the N-step scheme in which the number N of time-series points on the correction trajectory Xm is the maximum calculation step number for each constraint type of future traveling. According to this N-step scheme, even when a constraint condition is considered for a plurality of motion physical quantities including the lateral position e[k], that is, even when a plurality of types of constraints are considered, the number of calculation steps of the correction vector A is limited by the number N of time series points for each constraint type. The correction calculation block 140 further calculates the correction trajectory Xm of equation 38 using the calculation result of the correction vector λ.
The target calculation block 160 shown in
(Equation 46)
X
p=[ep[1],ep[2], . . . ,ep[N]]T=Xb+Xm 46
The driving control device 2 shown in
From the above, the standard calculation block 100 corresponds to the “standard calculator”, the correction calculation block 140 corresponds to the “correction calculator”, and the target calculation block 160 corresponds to the “target calculator”.
The flow of the trajectory generation method in which the trajectory generator 1 generates the traveling trajectory X in cooperation with the functional blocks 100, 120, 140, 160 described above will be described below with reference to
In S101, the standard calculation block 100 calculates the standard trajectory Xb based on the standard response parameter as the traveling trajectory X that does not consider the constraint condition for future traveling. In S102, the constraint calculation block 120 calculates the constraint condition given to the vehicle 3 in the future traveling.
In S103, the correction calculation block 140 calculates the correction trajectory Xm based on the response parameter different from the standard trajectory Xb as the travel trajectory X of with correction amount for correcting the standard trajectory Xb calculated in S101 in time series according to the constraint condition calculated in S102. In S104, the target calculation block 160 calculates the target trajectory Xp which the vehicle 3 follows as the traveling trajectory X in which the correction trajectory Xm calculated in S103 is superimposed on the standard trajectory Xb calculated in S101. Although the present flow ends as described above, the target track Xp calculated in S104 is output to the driving control device 2, so that the vehicle 3 is controlled to follow the target track X.
(Functions and Effects)
The functions and effects in the present embodiment described above will be explained below.
According to the present embodiment, the correction trajectory Xm is calculated using the response parameter different from the standard trajectory Xb, as the correction amount of the travelling trajectory X for correcting the standard trajectory Xb that is obtained without considering the constraint condition in the future travelling, in the time series according to the constraint condition. As a result, the constraint condition can be reflected at once in the calculation of the correction trajectory Xm regardless of the type thereof. Therefore, it is possible to reduce the calculation load until the target trajectory Xp is generated by superimposing the correction trajectory Xm on the standard trajectory Xb.
According to this embodiment, the correction trajectory Xm is calculated so that the response characteristic is changed to be a steeper side than the standard trajectory Xb. Accordingly, the correction trajectory Xm having a different response parameter from the standard trajectory Xb can satisfy the constraint condition even with a small number of calculations. Therefore, it is possible to contribute to the reduction of the calculation load until the target trajectory Xp is generated.
According to the present embodiment, the corrected trajectory Xm is calculated so as to provide the response characteristic in which the operation quantity u[k] for the vehicle 3 is larger than the standard trajectory Xb. According to this, the correction trajectory Xm having a response characteristic steeper than that of the standard trajectory Xb can be accurately calculated even with a small number of calculations, and the constraint condition can be satisfied. Therefore, it is possible to reduce the calculation load until the target trajectory Xp is generated, while ensuring the generation accuracy thereof.
According to the present embodiment, the correction trajectory Xm is calculated so that the N step vector p exists as a condition for establishing the N step scheme in which the number N of time series points becomes the maximum number of calculation steps for each constraint type of future traveling. As a result, the number of calculations for the correction trajectory Xm can be suppressed. Here, in particular, even in the present embodiment in which the constraint conditions regarding the lateral position e[k] and the yaw angle θ[k] other than the lateral position are taken into consideration, the effect of suppressing the number of calculations can be obtained. From these, it becomes possible to contribute to the reduction of the calculation load until the target trajectory Xp is generated.
Although one embodiment has been described, the present disclosure should not be limited to the above embodiment and may be applied to various other embodiments within the scope of the present disclosure.
Specifically, the trajectory generator 1 of the modification may be a special purpose computer configured to include at least one of a digital circuit and an analog circuit as a processor. In particular, the digital circuit is at least one type of, for example, an ASIC (Application Specific Integrated Circuit), a FPGA (Field Programmable Gate Array), an SOC (System on a Chip), a PGA (Programmable Gate Array), a CPLD (Complex Programmable Logic Device), and the like.
Such a digital circuit may include a memory in which a program is stored.
In the modification under the condition that the equation 1 is satisfied, the equation 17 is replaced with the equation 31 so that the standard trajectory, the correction trajectory, and the target trajectory regarding the yaw angle θ[k] may be calculated according to the principle similar to the above embodiment. Alternatively, in a modification under the condition that the equation 1 is satisfied, equations 23 and 24 are replaced with equations 49 and 50 (in which I is an unit matrix), respectively, so that the standard trajectory, the correction trajectory and the target trajectory relating to the curvature correction amount kv[k]−kp[k] may be calculated according to the principle similar to the above embodiment. Further, in the latter modification, the curvature correction amount Kv[k]−Kp[k] and its constraint condition are converted into the steering angle, so that the standard trajectory, the correction trajectory, and the target trajectory related to the steering angle may be calculated.
The following equation 51 is established between the traveling distance s[k] and the traveling speed v[k] which are the state quantities of the vehicle 3 and the acceleration a[k] which is the operation quantity of the vehicle 3. In the modification under the condition that the equation 51 is satisfied, the equation 17 is replaced with the equation 31 so that the standard trajectory, the correction trajectory, and the target trajectory regarding the travelling speed v[k] may be calculated according to the principle similar to the above embodiment. Alternatively, in a modification under the condition that the equation 51, is satisfied, the equation 23 and the equation 24 are replaced with the equation 49 and the equation 50, respectively, so that the standard trajectory, the correction trajectory, and the target trajectory relating to the acceleration a[k] may be calculated according to the principle similar to the above-described embodiment.
In the modification, in order to make the response characteristic of the correction trajectory Xm different from that of the standard trajectory Xb, when the variation matrix δM that changes the correction matrix M is defined, the following equation 52 using the positive parameter coefficient ε may perturb the correction matrix M within the range where equation 37 is satisfied. Also in this modification, based on the correction matrix M that makes the response parameter different from the standard by the perturbation, the correction vector λ that satisfies equations 40 to 45 is calculated, and the correction trajectory Xm of equation 38 is can be calculated using the result of the correction vector calculation.
(Equation 52)
M←M+ε·δM 52
The controllers and methods described in the present disclosure may be implemented by a special purpose computer created by configuring a memory and a processor programmed to execute one or more particular functions embodied in computer programs. Alternatively, the controllers and methods described in the present disclosure may be implemented by a special purpose computer created by configuring a processor provided by one or more special purpose hardware logic circuits. Alternatively, the controllers and methods described in the present disclosure may be implemented by one or more special purpose computers created by configuring a combination of a memory and a processor programmed to execute one or more particular functions and a processor provided by one or more hardware logic circuits. The computer programs may be stored, as instructions being executed by a computer, in a tangible non-transitory computer-readable medium.
It is noted that a flowchart or the processing of the flowchart in the present application includes sections (also referred to as steps), each of which is represented, for instance, as S101. Further, each section can be divided into several sub-sections while several sections can be combined into a single section. Furthermore, each of thus configured sections can be also referred to as a device, module, or means.
While the present disclosure has been described with reference to embodiments thereof, it is to be understood that the disclosure is not limited to the embodiments and constructions. The present disclosure is intended to cover various modification and equivalent arrangements. In addition, while the various combinations and configurations, other combinations and configurations, including more, less or only a single element, are also within the spirit and scope of the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
2019-186954 | Oct 2019 | JP | national |