Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND SYSTEM FOR CONTROLLING AN AUTONOMOUS VEHICLE DEVICE TO REPEATEDLY FOLLOW A SAME PREDETERMINED TRAJECTORY
Document Type and Number:
WIPO Patent Application WO/2019/228626
Kind Code:
A1
Abstract:
A method for controlling an autonomous vehicle to repeatedly follow a same predetermined trajectory comprises: a) receiving a target trajectory signal indicative of the predetermined trajectory; b) generating a control signal adapted to steer the vehicle along the predetermined trajectory; and, for at least one of a number of iterations: c) steering the vehicle along the predetermined trajectory by feeding the control signal to the vehicle; d) measuring an actual trajectory followed by the vehicle in response to being steered according to the control signal; e) recording an actual trajectory signal indicative of the measured actual trajectory; f) using an iterative learning controller to determine an altered control signal using the control signal, the actual trajectory signal and the target trajectory signal. The method allows to improve a tracking performance during a subsequent iteration.

Inventors:
TONG SON (BE)
NGUYEN VAN LANH (DE)
Application Number:
PCT/EP2018/064238
Publication Date:
December 05, 2019
Filing Date:
May 30, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS IND SOFTWARE NV (BE)
International Classes:
G05D1/02
Other References:
KAPANIA NITIN R ET AL: "Path tracking of highly dynamic autonomous vehicle trajectories via iterative learning control", 2015 AMERICAN CONTROL CONFERENCE (ACC), AMERICAN AUTOMATIC CONTROL COUNCIL, 1 July 2015 (2015-07-01), pages 2753 - 2758, XP033185259, DOI: 10.1109/ACC.2015.7171151
MANOHARAN P S ET AL: "Tracking Trajectory Using Iterative Learning Control", PROCESS AUTOMATION, CONTROL AND COMPUTING (PACC), 2011 INTERNATIONAL CONFERENCE ON, IEEE, 20 July 2011 (2011-07-20), pages 1 - 5, XP031928422, ISBN: 978-1-61284-765-8, DOI: 10.1109/PACC.2011.5978963
ROSOLIA UGO ET AL: "Autonomous racing using learning Model Predictive Control", 2017 AMERICAN CONTROL CONFERENCE (ACC), AACC, 24 May 2017 (2017-05-24), pages 5115 - 5120, XP033110687, DOI: 10.23919/ACC.2017.7963748
Attorney, Agent or Firm:
MAIER, Daniel (DE)
Download PDF:
Claims:
Patent claims

1. A method for controlling an autonomous vehicle device to repeatedly follow a same predetermined trajectory, the method comprising :

a) receiving (S10) a target trajectory signal (d) indica tive of the predetermined trajectory;

b) generating (S20) a control signal (u) adapted to steer the autonomous vehicle device along the predetermined trajec tory; and,

for at least one of a number of iterations:

c) steering (S31) the autonomous vehicle device along the predetermined trajectory by feeding the control signal (u) to the autonomous vehicle device;

d) measuring (S32) an actual trajectory followed by the autonomous vehicle device in response to being steered ac cording to the control signal (u) ;

e) recording (S33) an actual trajectory signal (y) indic ative of the measured actual trajectory;

f) using (S40) an iterative learning control device (40) to determine an altered control signal (uu) based on at least the control signal (u) , the actual trajectory signal (y) and the target trajectory signal (d) .

2. The method according to claim 1,

wherein step e) comprises recording the actual trajectory signal (y) in a memory device (33) while the autonomous vehi cle device is being steered, and at least step f) is carried out after the autonomous vehicle device has been steered in step c) .

3. The method according to claim 1 or 2,

wherein the method further comprises

h) using the altered control signal (uu) as the control signal (u) for a subsequent iteration of the number of itera tions .

4. The method according to one of claim 1 - 3,

wherein the iterative learning control device (40) comprises a control model adapted to generate a predicted trajectory signal from a control signal, and step f) comprises:

fl) altering the control model based on the control sig nal and the actual trajectory signal; and

f2) altering the control signal based on the altered con trol model.

5. The method according to claim 4,

wherein step fl) comprises altering the control model (43) so as to reduce a deviation between the actual trajectory signal (y) and the predicted trajectory signal generated by the con trol model (43) from the control signal (u) .

6. The method according to claim 4 or 5,

wherein step f2) comprises altering the control signal (u) so as to reduce a deviation between the predicted trajectory signal, generated by the altered control model (43) from the altered control signal (uu) , and the target trajectory signal (d) .

7. The method according to one of claim 4 - 6,

wherein said altering performed in step fl) and/or in step f2) is performed under a constraint imposed on the autonomous vehicle device.

8. The method according to one of claim 4 - 7,

wherein step d) comprises determining an actual parameter re lated to the actual trajectory,

the control model (43) being further adapted to generate a predicted parameter related to the predicted trajectory; and step fl) comprises altering the control model (43) so as to reduce a deviation between the actual parameter and the pre dicted parameter generated by the control model (43); and/or step f2) comprises altering the control signal so as to re duce a deviation between the predicted parameter generated by the control model (43) and a predetermined parameter target; wherein a respective parameter related to a respective tra jectory is a parameter indicative of a physical property of the respective trajectory and/or the autonomous vehicle de vice and/or a behavior thereof when following the respective traj ectory .

9. The method according to claim 8,

wherein the predicted parameter related to the predicted tra jectory and the actual parameter related to the actual tra jectory each are indicative of at least one of a time used by the autonomous vehicle device for following the respective trajectory and an amount of fuel consumed by the autonomous vehicle device while following the respective trajectory.

10. The method according to one of claim 4 - 9,

wherein in step fl) and/or in step f2), the control model (43) and/or the control signal (u) is altered in a number of iterations .

11. The method according to one of claim 4 - 10,

wherein the autonomous vehicle device is an autonomous motor vehicle .

12. The method according to one of claim 4 - 10,

wherein the autonomous vehicle device is a simulator device configured to simulate a motor vehicle under design.

13. The method according to one of claim 1 - 12,

wherein step b) comprises generating the control signal (u) from control input obtained by manually and/or autonomously steering the autonomous vehicle device.

14. A computer program product comprising a program code for executing the method according to one of claim 1 - 13 when run on at least one computer.

15. A system (1) for controlling an autonomous vehicle device to repeatedly follow a same predetermined trajectory, the system comprising:

a first device (10) configured to a) receive a target trajectory signal (d) indicative of the predetermined trajec tory;

a second device (20) configured to b) generate a control signal (u) adapted to steer the autonomous vehicle device along the predetermined trajectory; and

a third device (30) configured to, for at least one of a number of iterations:

c) steer the autonomous vehicle device along the prede termined trajectory by feeding the control signal (u) to the autonomous vehicle device;

d) measure an actual trajectory followed by the autono mous vehicle device in response to being steered according to the control signal (u) ; and

e) record an actual trajectory signal (y) indicative of the measured actual trajectory; and

a fourth device (40) configured to, for the at least one of a number of iterations, f) use iterative learning control to determine an updated control signal (uu) based on at least the control signal (u) , the actual trajectory signal (y) and the target trajectory signal (d) .

Description:
Description

Method and system for controlling an autonomous vehicle device to repeatedly follow a same predetermined trajectory

The present invention relates to the field of autonomous driving, and more particularly, to a method and a system for controlling an autonomous vehicle device to repeatedly follow a same predetermined trajectory.

Control methods such as proportional integral derivative (PID) control, state-space control, feedback control and mod el predictive control (MPC) have been used to control an au tonomous vehicle to follow a desired trajectory.

In scenarios such as home or valet parking into a predeter mined parking lot, autonomous lap races, and the like, an au tonomous vehicle is repeatedly controlled to follow a same predetermined trajectory, such as a trajectory into a speci fied parking lot or a trajectory around a lap.

It is one object of the present invention to improve a per formance when controlling an autonomous vehicle to repeatedly follow a same predetermined trajectory.

According to a first aspect, a method for controlling an au tonomous vehicle device to repeatedly follow a same predeter mined trajectory comprises: a) receiving a target trajectory signal indicative of the predetermined trajectory; and b) generating a control signal adapted to steer the autonomous vehicle device along the predetermined trajectory. The method further comprises, for at least one of a number of itera tions: c) steering the autonomous vehicle device along the predetermined trajectory by feeding the control signal to the autonomous vehicle device; d) measuring an actual trajectory followed by the autonomous vehicle device in response to be- ing steered according to the control signal; e) recording an actual trajectory signal indicative of the measured actual trajectory; and f) using an iterative learning control device to determine an altered control signal based on at least the control signal, the actual trajectory signal and the target trajectory signal.

The proposed method advantageously allows to leverage Itera tive Learning Control (ILC) to improve a tracking performance of the autonomous vehicle device during a subsequent itera tion of steering the autonomous vehicle device along the same predetermined trajectory.

A "tracking performance" may for example be a tracking error or deviation between the predetermined trajectory and the ac tual trajectory, and "optimizing the tracking performance" may refer to reducing the tracking error.

The autonomous vehicle device may be an actual autonomous ve hicle. The autonomous vehicle device may also be a simulated model of a vehicle. "Autonomous", as used herein, may refer to the ability of the autonomous vehicle device to follow the predetermined trajectory without human intervention.

The term "signal" may refer to a time-series of readings or values. The time-series may be continuous or discrete. A dis crete time-series may be equidistant or non-equidistant . In the control signal, the values may comprise acceleration and steering angle. In a respective trajectory signal, the values may comprise two- or three-dimensional coordinates and. A re spective signal may further comprise a time code indicative of a time for each value.

The predetermined trajectory may be a desired path or route that the vehicle is expected to follow. Examples for the pre determined trajectory are a trajectory from an entrance of a valet parking lot (start point) to a predetermined parking space (end point), or a trajectory around, or from a starting line (start point) to a finishing line (end point) of a lap of a racing site.

In step a), the predetermined trajectory may be received, for example, from a stationary control unit, such as a parking lot controller and/or a racing site controller, and/or from an on-board control unit of the autonomous vehicle, such as an in-car navigation controller, and/or from a mobile device.

In step b) , the control signal adapted to steer the autono mous vehicle device along the predetermined trajectory may be generated by detecting and recording a time series of control inputs, such as acceleration and steering angle, provided to the car by a human driver, a PID controller or the like in response to receiving the target trajectory signal. Alterna tively, the control signal may be generated by calculation.

The phrase "to steer/steering the autonomous vehicle device along the predetermined trajectory" herein may refer to con trolling the autonomous vehicle device so as to follow, or move/drive along, an actual trajectory that may deviate from the predetermined trajectory by an allowable tracking error.

A "number of iterations" may refer to a number of one or more .

A respective iteration may refer to a respective instance of steering the autonomous vehicle device from the start point of the predetermined trajectory to the end point along the predetermined trajectory according to a respective control signal. Specifically, in a first iteration, steps c) , d) , e) and f) may be performed in response to the control signal generated in step b) . In any further iteration, steps c) , d) , e) and f) may be performed in response to the altered control signal generated in step f) as the control signal.

Feeding the control signal to the autonomous vehicle device in step c) may refer to repeatedly, for each of a plurality of time instances, providing a respective of the values com prised by the control signal to the autonomous vehicle de vice, such as to a steering device of the autonomous vehicle device .

Likewise, the measuring in step d) and the recording in step e) may also be performed repeatedly for at least some of the plurality of time instances. That is, steps d) and e) may be performed in parallel to and/or synchronous with step c) .

The measuring of step d) may refer to using a location device such as a GPS receiver, using radio communication with sign posts distributed along the predetermined trajectory or the like, to acquire two-dimensional and or three-dimensional co ordinate values.

In step e) , recording may refer to forming a signal from a plurality of the values measured in step d) for a plurality of the time instances.

In step f) , the iterative learning control device may be a device configured to use Iterative Learning Control (ILC) to provide an altered (updated, improved, optimized) control signal for a subsequent iteration based on the control signal and the actual trajectory signal (recorded actual trajectory signal) of a current iteration.

More particularly, "based on the control signal and the tar get trajectory signal" may mean "based on an actual tracking error signal indicative of a tracking error between the actu al trajectory signal and the target trajectory signal". The actual tracking error signal may be obtained by subtracting the actual trajectory signal from the target trajectory sig nal. "Tracking error" may refer to a deviation, such as an averaged or root mean square distance, between the respective signals . "Based on a signal", may, in particular, refer to "using the signal as an input".

Still more particularly, the iterative learning control de vice may be configured to iteratively learn, by being used repeatedly for each of the iterations, an optimum control signal that optimizes the tracking performance. In particu lar, optimizing the tracking performance may refer to reduc ing or minimizing the actual tracking error signal (an energy content, time average value, or root mean square thereof) .

Specifically, "learning" may refer to repeatedly altering (updating, optimizing) data stored in the iterative learning control device, such as a parameter, operator or control mod el .

It is noted that step f) is in no way limited to an embodi ment wherein a respective value of the control signal, a cor responding value of the actual trajectory signal, and a cor responding value of the target value signal are used to de termine a corresponding value of the altered control signal, wherein all values are values related to a same time in stance .

Rather, step f) may preferably operate using entire signals. That is, each of the values of the altered control signal for each of the plurality of time instances may be determined de pending on a portion corresponding to a range of time in stances or to all of the time instances of a time series of each of the control signal, the actual trajectory signal and the target value signal and/or the actual tracking error sig nal .

According to an embodiment, step e) comprises recording the actual trajectory signal in a memory device while the autono mous vehicle device is being steered, and at least step f) is carried out after the autonomous vehicle device has been steered in step c) . That is, the iterative learning control device may be used off-line, i.e., after steering the autonomous vehicle device along the predetermined trajectory has been completed, so as to prepare for a subsequent iteration of steering the autono mous vehicle device along the predetermined trajectory.

As compared to time-critical on-line operation, off-line op eration of the iterative learning control device may offer the advantage of being able to use a more sophisticated con trol algorithm (more sophisticated parameters, operators or a more sophisticated and computing-intensive control model) in the iterative learning control device. Thereby, it may be possible to further optimize the tracking performance.

In particular, the actual trajectory signal may be recorded by storing, for each of the at least some of the plurality of time instances for which the actual trajectory is measured, a position value (coordinate values) in the memory device.

The memory device may be a volatile or a non-volatile memory, such as a RAM, a flash memory, a hard disk drive, and the like .

According to a further embodiment, the method further com prises using the altered control signal as the control signal for a subsequent iteration of the number of iterations.

By repeatedly using the altered control signal as the control signal for a subsequent iteration of the number of iterations of steps c) to f) , after a number of the iterations, advanta geously, an optimum control signal to maximize the tracking performance may be determined.

A "subsequent iteration" may refer to a next iteration that follows immediately after the current iteration and/or may refer to a next-but-one or to any further subsequent itera- tion that is carried out at a later time than the current it eration .

Note that steps of a plurality of the iterations may partly overlap. For example, in a case where a subsequent iteration of steering the vehicle along the predetermined trajectory follows immediately after a current iteration, as for example in a lap race, the next iteration that follows immediately after the current iteration may use the same control signal u that was used for the current iteration, and the altered con trol signal uu determined in step f) may be provided not to the next iteration, but to a subsequent iteration that fol lows after the next iteration (next-but-one iteration) .

By parallelizing step f) and steps c) , d) , e) in this way, off-line iterative learning control with a sophisticated mod el may be advantageously used even in a lap race scenario.

According to a further embodiment, the iterative learning control device comprises a control model adapted to generate a predicted trajectory signal from a control signal, and step f) comprises: fl) altering the control model based on the control signal and the actual trajectory signal; and f2) al tering the control signal based on the altered control model.

That is, the altered output signal is determined based on the control signal, the actual trajectory signal, the target tra jectory signal, and the altered model.

In other words, the control method according to the present embodiment may be described as a combination of feedback con trol, model-based control, and learning control. This combi nation may be advantageous in that the tracking performance may be further optimized.

In particular, in step fl), the control model may be altered based on information about the autonomous vehicle device that is derivable from the control signal and the actual trajecto ry signal .

Step fl) may thus be described as a learning step in which the control model learns new information about the autonomous vehicle device, and step f2) may be described as an applica tion step in which the learned information is used to deter mine an altered control signal while applying the learned in formation .

According to a further embodiment, step fl) comprises alter ing the control model so as to reduce a deviation between the actual trajectory signal and the predicted trajectory signal generated by the control model from the control signal.

Thereby, advantageously, the control model comprised by the iterative learning controller is optimized to more accurately predict the actual trajectory signal.

Specifically, step fl) may comprise solving an optimization problem. The optimization problem may constitute in determin ing altered parameters of the control module that reduce or minimize the deviation. A minimum may be a local minimum or a global minimum.

According to a further embodiment, step f2) comprises alter ing the control signal so as to reduce a deviation between the predicted trajectory signal, generated by the altered control model from the altered control signal, and the target trajectory signal.

Thereby, advantageously, the predicted tracking error (devia tion between the predicted trajectory signal and the target trajectory signal) of a subsequent iteration conducted using the altered control signal is reduced. Thus, advantageously, an actual tracking error of the subsequent iteration may be reduced as well. Specifically, step f2) may comprise solving an optimization problem. The optimization problem may be to determine an al tered control signal that reduces or minimizes the deviation. A minimum may be a local minimum or a global minimum.

According to a further embodiment, said altering performed in step fl) and/or in step f2) is performed under a constraint imposed on the autonomous vehicle device.

An example for a constraint may be a maximum steering angle, a maximum acceleration, and the like. The constraint may be applied when solving a respective optimization problem.

Thereby, advantageously, the altered control signal may be adjusted to properties and/or a desired behavior of the au tonomous vehicle device.

According to a further embodiment, step d) comprises deter mining an actual parameter related to the actual trajectory. The control model is further adapted to generate a predicted parameter related to the predicted trajectory. Step fl) com prises altering the control model so as to reduce a deviation between the actual parameter and the predicted parameter gen erated by the control model; and/or step f2) comprises alter ing the control signal so as to reduce a deviation between the predicted parameter generated by the control model and a predetermined parameter target. A respective parameter relat ed to a respective trajectory is a parameter indicative of a physical property of the respective trajectory and/or the au tonomous vehicle device and/or a behavior thereof when fol lowing the respective trajectory.

Thereby, "optimizing the tracking performance" may not just refer to reducing a tracking error or deviation between the positional coordinates of the actual trajectory and the coor dinates of the predetermined trajectory. Rather, advanta geously, a deviation between any desired parameter related to the respective trajectories may be reduced. The desired pa- rameter may be one of tracking error, fuel consumption, wear of a part of the vehicle, total driving time, and the like.

It is noted that according to embodiments wherein step f) comprises solving an optimization problem, a deviation that is desired to be reduced as much as possible may be set as an objective function of the optimization problem, while a devi ation that is desired not to exceed a certain maximum limit may be set as a constraint when solving the optimization problem. For example, the fuel consumption may be used as ob jective function and the tracking error may be used as a con straint to optimize for fuel consumption. Alternatively, the fuel consumption may be used as a constraint and the tracking error may be used as objective function to optimize for accu racy of tracking.

According to a further embodiment, the predicted parameter related to the predicted trajectory and the actual parameter related to the actual trajectory each are indicative of at least one of a time used by the autonomous vehicle device for following the respective trajectory and an amount of fuel consumed by the autonomous vehicle device while following the respective trajectory.

In particular, the respective parameter may be indicative of the time or fuel used while following a predetermined portion of the respective trajectory, such as from its start point to its end point.

According to a further embodiment, in step fl) and/or in step f2), the control model and/or the control signal is altered in a number of iterations.

That is, an optimization problem solved in step fl) and/or step f2) may be a non-analytical problem. Solving the non- analytical optimization problem may involve iteratively solv ing the optimization problem. Iteratively solving may com prise using a steepest descent method or the like. The itera- tions may be repeated until a respective deviation is below a predetermined threshold value and/or until a respective devi ation changes less than a predetermined threshold between consecutive iterations and/or until a steepest gradient is below a predetermined threshold. In other words, the itera tions may be repeated until convergence at a global or local minimum is attained.

Thereby, advantageously, a sophisticated control model may be used that may not be solvable analytically and may require iterative solution, to further improve the tracking perfor mance .

According to a further embodiment, the autonomous vehicle de vice is an autonomous motor vehicle.

Herein, "autonomous" may refer to a fully autonomous motor vehicle, a semi-autonomous motor vehicle, or a conventional motor vehicle with equipped with driving assistance function ality.

The autonomous motor vehicle may be a car such as an electric car, a hybrid car, an internal combustion engine car and the like .

The control method according to the present embodiment may advantageously be performed whenever the car is steered along a same predetermined trajectory. For example, the car may be provided with a target trajectory signal by an automated parking lot or a racing site in step a) . In response to the target trajectory signal, a human or a PID controller may generate a control signal to steer the car along the target trajectory in step b) . The car may then be steered along the target trajectory according to the control signal and its ac tual trajectory is recorded in steps c) , d) and e) . Thereaf ter, step f) may be executed to improve the tracking perfor mance. The next time the car is provided with the same target trajectory, the car may repeat steps c) to e) to autonomously steer the car along the target trajectory with improved tracking performance and step f) to further improve the tracking performance. Thereby, over time, by employing itera tive learning control, the number of steering operations, the time used and/or the amount of fuel consumed for steering the car along the predetermined trajectory may be optimized (re duced) .

According to a further embodiment, the autonomous vehicle de vice is a simulator device configured to simulate a motor ve hicle under design.

The motor vehicle under design may be an autonomous vehicle or a conventional vehicle; in the latter case, "autonomous" in "autonomous vehicle device" may relate to the fact that the simulator device (but not necessarily the final motor ve hicle) may be operated automatically without human interven tion .

The simulator device may be embodied in software and/or hard ware. In particular, the simulator device may be a high- fidelity vehicle dynamic model created using a simulation software such as Siemens Imagine. Lab Amesim.

An engineer may use the proposed control method to repeatedly simulate steering the simulated motor vehicle along a prede termined trajectory and to determine an optimum control input for said steering. This may allow the engineer to evaluate the vehicle dynamic model's optimum performance. The engineer may then alter the simulator device (alter the model of the motor vehicle under design) and repeat the process, until a model with desired properties is achieved.

Thus, the proposed method may be used with advantage as an aid in early-stage motor vehicle development.

According to a further embodiment, step b) comprises generat ing the control signal from control input obtained by manual- ly and/or autonomously steering the autonomous vehicle de vice .

The control input may be, for example, steering angle and ac celeration .

"Manually steering" may refer to steering by a human driver.

"Autonomously steering", when referring to step b) , may refer to steering using an autonomous driving control method such as proportional integral derivative (PID) control, state- space control, feedback control or model predictive control (MPC) .

Any embodiment of the first aspect may be combined with any embodiment of the first aspect to obtain another embodiment of the first aspect.

According to a second aspect, the invention relates to a com puter program product comprising a program code for executing the above-described method for controlling an autonomous ve hicle device when run on at least one computer.

A computer program product, such as a computer program means, may be embodied as a memory card, USB stick, CD-ROM, DVD or as a file which may be downloaded from a server in a network. For example, such a file may be provided by transferring the file comprising the computer program product from a wireless communication network.

According to a third aspect, a system for controlling an au tonomous vehicle device to repeatedly follow a same predeter mined trajectory comprises: a first device configured to a) receive a target trajectory signal indicative of the prede termined trajectory; a second device configured to b) gener ate a control signal adapted to steer the autonomous vehicle device along the predetermined trajectory; and a third device configured to, for at least one of a number of iterations: c) steer the autonomous vehicle device along the predetermined trajectory by feeding the control signal to the autonomous vehicle device; d) measure an actual trajectory followed by the autonomous vehicle device in response to being steered according to the control signal; and e) record an actual trajectory signal indicative of the measured actual trajecto ry; and a fourth device configured to, for the at least one of a number of iterations, f) use iterative learning control to determine an updated control signal based on at least the control signal, the actual trajectory signal and the target trajectory signal.

The embodiments and features described with reference to the method of the first aspect apply mutatis mutandis to the sys tem of the further aspect. The system of the third aspect may be implemented to execute the method of the first aspect or the method of any of the embodiments of the first aspect.

The respective device, e.g. the first, second, third and/or fourth device, may be implemented in hardware and/or in soft ware. If said device is implemented in hardware, it may be embodied e.g. as a computer or as a processor or as a part of a system, e.g. a computer system. If said device is imple mented in software it may be embodied as a computer program product, as a function, as a routine, as a program code or as an executable object.

Further possible implementations or alternative solutions of the invention also encompass combinations - that are not ex plicitly mentioned herein - of features described above or below with regard to the embodiments. The person skilled in the art may also add individual or isolated aspects and fea tures to the most basic form of the invention.

Further embodiments, features and advantages of the present invention will become apparent from the subsequent descrip tion and dependent claims, taken in conjunction with the ac companying drawings, in which: Fig. 1 shows a flow chart illustrative of a method according to a first embodiment;

Fig. 2 shows a block diagram illustrative of a system accord ing to the first embodiment; and

Fig. 3 shows a block diagram illustrative of a system accord ing to a second embodiment.

In the Figures, like reference numerals designate like or functionally equivalent elements, unless otherwise indicated.

Fig. 1 shows a flow chart illustrative of a method according to a first embodiment for controlling an autonomous vehicle device to repeatedly follow a same predetermined trajectory ("control method" hereinbelow) . Fig. 2 shows a block diagram illustrative of a system 1 for controlling an autonomous ve hicle device to repeatedly follow a same predetermined tra jectory ("control system" hereinbelow) according to the first embodiment. Reference will be made to Fig. 1 and Fig. 2.

The control system 1 comprises a trajectory receiver (first device) 10, an autonomous driving controller (second device) 20, a vehicle interface assembly (third device) 30 and an it erative learning control device (fourth device) 40.

The control system 1 is associated with (such as installed in, or communicatively connected to) an autonomous vehicle device such as an autonomous car ("car" hereinbelow; not shown) .

In step S10 of the control method, the trajectory receiver 10 receives a target trajectory signal d from an external entity (not shown) such as, for example, a transmitter installed at a valet parking lot (not shown) . The target trajectory signal d indicates a predetermined trajectory that the car is ex pected to follow. Merely as an example, the predetermined trajectory may be a trajectory leading from an entrance of the valet parking lot to a predetermined parking space of the valet parking lot.

In step S20 of the control method, the autonomous driving controller 20 is provided with the target trajectory signal d. The autonomous driving controller 20 may be a PID control ler in the present embodiment. Details of the PID control are omitted for brevity. In response to being provided with the target trajectory signal d, the autonomous driving controller generates a control signal u and provides the control signal u to the vehicle interface assembly 30.

In response to being provided with the control signal u, the vehicle interface assembly 30 performs the following the three steps S31, S32, and S33:

In step S31, the control signal u is fed to the autonomous vehicle device. Thereby, the autonomous vehicle device is steered along the predetermined trajectory.

In step S32, an actual trajectory followed by the autonomous vehicle device in response to being steered according to the control signal u is measured.

In step S33, an actual trajectory signal y indicative of the measured actual trajectory is recorded.

The vehicle interface assembly 30 provides the actual trajec tory signal y to the iterative learning control device 40. Likewise, the control signal u and the target trajectory d are also provided to the iterative learning control device 40.

In step S40, the iterative learning control device 40 uses iterative learning control (ILC) to determine an altered con- trol signal uu based on the control signal u, the actual tra jectory signal y and the target trajectory signal d.

Steps S31, S32, S33 and S40 thus constitute a first iteration in which the vehicle has been steered along the predetermined trajectory from a start point to an end point thereof in step S31, an actual trajectory has been measured in step S32, an actual trajectory signal y has been recorded in step S33, and an altered control signal uu has been determined in step S40 based on the actual trajectory signal y, the target trajecto ry signal d and the controls signal u.

Thereby, during the first iteration, an altered control sig nal uu has been determined in which, advantageously, a track ing performance of the automated vehicle may have been im proved by Iterative Learning Control.

According to a preferred variant, after step S40, the altered control signal uu may be fed back to the vehicle interface assembly 30 to be used as the control signal u during one of one or more subsequent iterations of steps S31, S32, S33 and S40.

Fig. 3 shows a block diagram illustrative of a control system 1 according to a second embodiment. The following description focuses on differences between the control system of Fig. 3 and the control system 1 of Fig. 1. Reference will be made to Fig. 3 and Fig. 1.

In addition to the trajectory receiver 10, the autonomous driving controller 20, the vehicle interface assembly 30 and the iterative learning control device 40, the system 1 of Fig. 3 further comprises a database 50.

The database 50 is configured to store a plurality of control signals and target trajectory signals in association with each other. The vehicle interface assembly 30 comprises a steering device 31, a measuring device 32, a memory device 33 and a consump ¬ tion meter 34. The consumption meter may comprise a fuel gauge .

The iterative learning control device 40 comprises a

subtractor 41 and an iterative learning controller 42. The iterative learning controller 42 comprises a control model 43.

The system 1 according to the second embodiment may operate in the following manner:

In step S10, the trajectory receiver 10 receives a target trajectory signal d from the external entity. The target tra ¬ jectory signal d comprises a series of target position values d(k), with k=l...K, wherein k is a discretization index such as a discretized time, and K is the total number of values com ¬ prised by the target trajectory signal d. The trajectory re ¬ ceiver 10 provides the target trajectory signal d(k), with k=l..K, to the autonomous driving controller 20 to be used for generating the control signal u as described hereinbelow, to the database 50 to be stored therein in association with an altered control signal uu as described hereinbelow, and to the iterative learning control device 40 to be used to deter ¬ mine a predicted tracking error signal and an actual tracking error signal e.

The autonomous driving controller 20 may be configured to generate, in step S20 the control signal u to be supplied to the vehicle interface assembly 30 in one of two manners:

Specifically, the autonomous driving controller 20 is commu ¬ nicatively coupled to the database 50. Upon receiving the target trajectory signal d, the autonomous driving controller 20 may query the database 50 to determine whether the data ¬ base 50 stores a control signal in association with the tar ¬ get trajectory signal d (or a control signal u stored in as- sociation with a target trajectory signal indicative of a same predetermined trajectory as the target trajectory signal d) .

If the database 50 comprises a control signal u stored in as sociation with the target trajectory signal d, the autonomous driving controller 20 may know that a subsequent iteration of steering the car along the predetermined trajectory indicated by the target trajectory signal d is desired. In this case, the stored control signal may be an altered (updated, im proved, optimized) control signal uu for steering the car along the predetermined trajectory indicated by the trajecto ry signal d. Thus, the autonomous driving controller 20 may generate the control signal u by supplying the control signal uu that is stored in the database 50 in association with the target trajectory signal d as the control signal u to the ve hicle interface assembly 30.

If the database 50 does not comprise a control signal stored in association with the target trajectory signal d, the au tonomous driving controller 20 may uses PID control or the like to generate the control signal u and supply the control signal u to the vehicle interface assembly 30.

In the vehicle interface device 30, in response to being sup plied with the control signal u, the following steps are per formed :

To steer the car along the predetermined trajectory in step S31, for each discretized time k, a corresponding value u(k) of the control signal u is supplied to the steering device 31. The value u(k) may comprise an acceleration and a steer ing angle. The value u(k) is further provided to the memory device 33 to be stored therein. Thereby, the control signal u may be recorded in the memory device 33.

While the car is steered along the predetermined trajectory, for each discretized time k, the measuring device 32 measures current coordinates of the actual trajectory followed by the car in response to being steered according to the control signal u in step S32. The current coordinates are provided to the memory device 33 to be stored therein. Thereby an actual trajectory signal y may be recorded in the memory device 33 (step S33, Fig. 1) .

Further, a parameter p indicative of an amount of fuel con sumed by the car while following the actual trajectory (one example for an actual parameter related to the actual trajec tory) is stored in the memory 33. The parameter p is deter mined and updated by the fuel gauge 34 in regular intervals, such as for each discretized time k.

After steering the car along the predetermined trajectory has been completed, that is, when the discretized time K has been reached, the recorded control signal ur (k) , with k=l..K, the recorded actual trajectory signal yr(k), with k=l..K, and the recorded actual parameter pr are provided to the iterative learning control device 40.

More specifically, the recorded actual trajectory signal yr may be provided to the subtractor 41 of the iterative learn ing control device 40. The target trajectory signal d may al so be provided to the subtractor 41. The subtractor 41 may subtract the recorded actual trajectory signal yr(k) from the target trajectory signal d(k) to achieve an actual tracking error signal e(k). The actual tracking error signal e(k), with k=l..K, may be provided to the iterative learning con troller 42 along with the recorded control signal ur (k) and the recorded parameter pr.

The iterative learning controller 42 comprises a control mod el 43 of a controlled system including the car.

Specifically, in step S40, the iterative learning controller 42 may determine an altered control signal uu(k) using the control model 43 by evaluating a learning function f. The learning function f may be a function of the actual tracking error e(k), the recorded actual control signal ur(k) and the recorded parameter signal pr: uu(k) = f[ur(k), e(k), pr] , with k=l...K

In particular, the function f may be a non-analytical func tion .

Specifically, evaluating the function f may comprise learning processing, in which the control model 43 is altered based on knowledge learned from the actual tracking error signal e(k), the recorded actual parameter signal pr(k) and the actual control signal ur(k) . Evaluating the function f may further comprise optimization processing, in which an altered control signal uu(k) is determined based on the altered control model 43 altered in the learning processing.

The optimization problem may comprise an objective function and a constraint. The objective function may be to reduce a tracking error, and the constraint may be a maximum allowable fuel consumption. Conversely, the objective function may be to reduce the fuel consumption, and the constraint may be a maximum allowable tracking error.

When the altered control signal uu(k) has been determined in this way, the altered control signal uu(k) is provided to the database 50 and stored therein in association with the target trajectory signal d(k).

In this way, the altered control signal uu(k) is made availa ble for use by the autonomous driving controller 20 during subsequent iterations in which the trajectory receiver 10 re ceives the same target trajectory signal d(k).

Thereby, a tracking performance, such as tracking error expe rienced, fuel consumed or time used by the vehicle when fol- lowing the same predetermined trajectory, may be iteratively improved over subsequent iterations.

A preferred variant of the second embodiment will now be used to describe a preferred variant of step S40 in more detail.

According to a preferred variant of the second embodiment, the control model 43 may be configured to generate a predict ed trajectory signal based on a control signal provided to the control model 43. The control model 43 may be further configured to generate a predicted parameter based on the control signal.

That is, according to the preferred variant, the iterative learning controller 42 may perform the following steps to evaluate the learning function f using the control model 43 in step S40:

In a first sub-step fl), which is an example for the learning processing mentioned above, the iterative learning controller 42 may alter the control model 43 in a number of iterations. In each iteration, the iterative learning controller 42 may use the control model 43 to determine a predicted trajectory signal yp(k) and a predicted parameter pp based on the rec orded control signal ur(k) .

Herein, the predicted parameter pp may be a predicted amount of fuel consumed by the car while following the predicted trajectory indicated by the predicted trajectory signal yp(k) (one example for a predicted parameter related to the pre dicted trajectory).

In the respective iterations, the iterative learning control ler 42 may alter the control model 43 according to an itera tive optimization strategy such as a method of steepest de scent. An objective function of the optimization strategy may be to reduce or minimize a deviation between the predicted trajectory yp(k) and the recorded trajectory yr(k) and/or to reduce or minimize a deviation between the predicted parame ter pp and the recoded parameter pr.

It is noted herein, that reducing a deviation between the predicted trajectory signal yp(k) and the recorded trajectory signal yr(k) may be functionally equivalent to reducing a de viation between a predicted tracking error signal determined by subtracting the predicted trajectory signal yp(k) from the target trajectory signal d(k) and the actual tracking error signal e(k) . The subtractor 41 may be used to determine the predicted tracking error signal, although this is not shown explicitly in Fig. 3.

The iterative learning controller 42 may alter the control model 43 by altering one or more parameters thereof. The it erative learning controller 42 may continue to iteratively alter the control model 43 until convergence of the deviation at a local or global minimum is attained.

In other words, in the learning processing of the first sub step fl), the iterative learning controller 42 may solve an optimization problem so as to bring the control 43 model in better agreement with an observed behavior of the controlled system comprising the car, which is modeled by the control model 43. Herein, the observed behavior may be indicated by the recorded control signal ur(k), the recorded parameter pr and the recorded actual trajectory signal yr(k) (the actual tracking error signal e(k)).

In a second sub-step f2) of step S40, the iterative learning controller 42 may iteratively determine an altered control signal uu(k). Specifically, the iterative learning controller 42 may first use the recorded control signal ur(k) as the al tered control signal uu(k) and iteratively alter the altered control signal uu(k) in a number of iterations.

In each iteration, the iterative learning controller 42 may use the altered control model 43 to determine a predicted target trajectory yp(k) and a predicted parameter pp based on the current altered control signal uu(k) .

In the respective iterations, the iterative learning control ler 42 may alter the altered control signal uu(k) according to an iterative optimization strategy such as a method of steepest descent. An objective function of the optimization strategy may be to reduce or minimize a deviation between the predicted trajectory yp(k) and the desired target trajectory d(k) (also referred to as reducing or minimizing a tracking error), and/or to reduce or minimize a deviation between the predicted parameter pp and a predetermined parameter target. Specifically, the predetermined parameter target may be an allowable maximum total fuel consumption.

The iterative learning controller 42 may continue to itera tively alter the control model 43 until convergence of the deviation at a local or global minimum is attained.

Herein, if the deviation to be minimized is selected to be the deviation between the predicted trajectory yp(k) and the target trajectory d(k), the iterative learning controller 42 effectively optimizes a predicted tracking error (an example for a predicted tracking performance to be optimized) . If the deviation to be minimized is selected to be the deviation be tween the predicted parameter pp and the predetermined param eter target, the iterative learning controller 42 effectively optimizes a predicted parameter related to the predicted tra jectory such as a predicted amount of fuel consumed by the car when following the predicted trajectory (another example for a predicted tracking performance) .

While optimizing a predicted tracking error, an allowable maximum fuel consumption may be considered as a constraint when altering the altered control signal uu(k) . Conversely, when optimizing a predicted fuel consumption, an allowable maximum tracking error may be considered as a constraint when altering the altered control signal uu(k) . Further constraints considered when altering the altered con trol signal uu(k) may be constraints that are imposed by properties of the car, such as an allowable maximum steering angle, or an allowable maximum acceleration.

In other words, in the optimization processing of the second sub-step f2), the iterative learning controller 42 may solve an optimization problem so as to determine an altered control signal uu(k) which is expected, based on predictions generat ed by the altered control model 43, to yield an improved or optimized tracking performance (such as minimum tracking er ror or minimum fuel consumption) under a predetermined set of constraints .

In this way, when step S40 is carried out after the car has been steered along the predetermined trajectory indicated by the received target trajectory signal d(k), in step fl), the control model 43 is altered by learning, and in step f2), the control signal is altered by optimizing a predicted tracking performance .

By repeatedly carrying out step S40 in each of the iterations (iterations wherein the car is steered along the same prede termined trajectory, i.e., according to steps S31, S32, and S33, Fig. 1), advantageously, an actual tracking performance may be improved over subsequent iterations through iterative learning .

Although the present invention has been described in accord ance with preferred embodiments, it is obvious for the person skilled in the art that modifications are possible in all em bodiments .

The embodiments have been described mainly in view of a valet parking scenario, however, the teachings disclosed are equal ly applicable to a lap racing scenario, a home parking sce nario and any other scenario in which an autonomous vehicle device is repeatedly steered along a same predetermined tra jectory .

The embodiments have been described in view of an autonomous motor vehicle such as a car as an example of the autonomous vehicle device. However, the teachings disclosed are equally applicable to a development scenario in which the autonomous vehicle device is a simulator device configured to simulate a motor vehicle under design.

The parameter related to a trajectory is not limited to an amount of fuel consumed, but may also include an amount of wear exerted on a part of the vehicle, a time used to com plete steering of the car from a start point to an end point of the predetermined trajectory, and the like.

It is noted that, according to the second embodiment, a plu rality of target trajectory signals and associated altered control signals may be stored in the database 50. Preferably, the database 50 may also store a plurality instances of the control model 43 each associated with one of the target tra jectory signals. Herein, an instance of the control model may be, for example, a set of model parameters. More precisely, for each execution of step S40, the iterative learning con trol device S40 may load the corresponding instance of the control model 43, which corresponds to a current target tra jectory signal, into the iterative learning controller 42, before executing the learning processing and the optimizing processing of step S40, and may write the altered control model 43 (instance thereof) back to the database 50 upon com pletion of step S40. That is, different instances of the con trol model 43 may be taught (altered) in accordance with dif ferent target trajectory signals (different driving scenari os) .

However, the database 50 is a non-limiting optional feature, and direct feedback of the altered control signal uu to the vehicle interface 30 for a subsequent interface is also con templated. An embodiment without database 50 may be used ben eficially in a lap racing scenario where the autonomous vehi cle is repeatedly stored along a same lap and optimizing of the tracking performance takes place throughout the race. Af ter the race is finished, the learned information is no long er required and therefore there is no need to store such in formation in a database. Portions of, or all of, steps S31, S32, S33 and S40 may be parallelized at the discretion of the skilled person.

The various signals described in the second embodiment, such as the actual trajectory signal y and the desired signal d, do not necessarily need to be parametrized using a same dis cretization index k, but may each be parametrized using dif ferent discretizations.