METHOD AND SYSTEM FOR CUSTOMIZING A DRIVING BEHAVIOR OF AN AUTONOMOUS VEHICLE
20190344797 ยท 2019-11-14
Inventors
Cpc classification
B60W50/085
PERFORMING OPERATIONS; TRANSPORTING
B60W60/0013
PERFORMING OPERATIONS; TRANSPORTING
G01C21/3484
PHYSICS
B60W30/18163
PERFORMING OPERATIONS; TRANSPORTING
G05D1/0088
PHYSICS
B60W30/16
PERFORMING OPERATIONS; TRANSPORTING
B60W50/10
PERFORMING OPERATIONS; TRANSPORTING
G01C21/3476
PHYSICS
B60W2540/215
PERFORMING OPERATIONS; TRANSPORTING
B60W60/0021
PERFORMING OPERATIONS; TRANSPORTING
International classification
B60W50/10
PERFORMING OPERATIONS; TRANSPORTING
G05D1/00
PHYSICS
Abstract
A system and method for customizing a driving behavior of an autonomous vehicle is disclosed. The method includes receiving, by a controller of the autonomous vehicle, at least one user preference. The at least one user preference relates to a preferred driving behavior. The method also includes modifying a pre-programmed driving behavior of the autonomous vehicle based on the received at least one user preference. The method also includes instructing the autonomous vehicle to drive according to the modified driving behavior.
Claims
1. A method, the method comprising: receiving, by a controller of an autonomous vehicle, at least one user preference, wherein the at least one user preference relates to a preferred driving behavior; modifying a pre-programmed driving behavior of the autonomous vehicle based on the received at least one user preference; and instructing the autonomous vehicle to drive according to the modified driving behavior.
2. The method of claim 1, wherein the modifying the pre-programmed driving behavior comprises determining at least one weighted parameter based on the at least one user preference, and the modified driving behavior of the autonomous vehicle is based on the at least one determined weighted parameter.
3. The method of claim 1, wherein the at least one user preference relates to at least one of a plan objective, a curve behavior, a distance-keeping tolerance, a lane changing dynamic, a desire to overtake, and a politeness factor.
4. The method of claim 1, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to: (1) minimize a drive time for reaching a destination, (2) prioritize providing a comfortable ride for the user, or (3) pass through landmarks when travelling to the destination.
5. The method of claim 1, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to correspond to a more active behavior or a more passive behavior.
6. The method of claim 1, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to maintain a threshold following distance.
7. The method of claim 1, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to maintain a threshold speed when passing through a curve.
8. The method of claim 1, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to maintain a threshold distance ahead of a tailgating vehicle.
9. The method of claim 1, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to travel at a specific speed when passing other vehicles.
10. The method of claim 2, wherein instructing the autonomous vehicle to drive comprises determining at least one action to perform using a reinforcement-learning system, wherein the determining the at least one action to perform comprises determining the action based at least on a state of the autonomous vehicle and the at least one weighted parameter.
11. A system of an autonomous vehicle, comprising: an electronic controller configured to: receive at least one user preference, wherein the at least one user preference relates to a preferred driving behavior; modify a pre-programmed driving behavior of the autonomous vehicle based on the received at least one user preference; and instruct the autonomous vehicle to drive according to the modified driving behavior.
12. The system of claim 11, wherein the modifying the pre-programmed driving behavior comprises determining at least one weighted parameter based on the at least one user preference, and the modified driving behavior of the autonomous vehicle is based on the at least one determined weighted parameter.
13. The system of claim 11, wherein the at least one user preference relates to at least one of a plan objective, a curve behavior, a distance-keeping tolerance, a lane changing dynamic, a desire to overtake, and a politeness factor.
14. The system of claim 11, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to: (1) minimize a drive time for reaching a destination, (2) prioritize providing a comfortable ride for the user, or (3) pass through landmarks when travelling to the destination.
15. The system of claim 11, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to correspond to a more active behavior or a more passive behavior.
16. The system of claim 11, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to maintain a threshold following distance.
17. The system of claim 11, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to maintain a threshold speed when passing through a curve.
18. The system of claim 11, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to maintain a threshold distance ahead of a tailgating vehicle.
19. The system of claim 11, wherein modifying the pre-programmed driving behavior of the autonomous vehicle comprises configuring the driving behavior to travel at a specific speed when passing other vehicles.
20. The system of claim 12, wherein instructing the autonomous vehicle to drive comprises determining at least one action to perform using a reinforcement-learning system, wherein the determining the at least one action to perform comprises determining the action based at least on a state of the autonomous vehicle and the at least one weighted parameter.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0024] Other features, advantages and details appear, by way of example only, in the following detailed description, the detailed description referring to the drawings in which:
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
[0034]
DETAILED DESCRIPTION
[0035] The following description is merely exemplary in nature and is not intended to limit the present disclosure, its application or uses. As used herein, the term module refers to processing circuitry that may include an application specific integrated circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that executes one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality.
[0036] One or more embodiments are directed to a system and method for customizing a driving behavior of an autonomous vehicle. Specifically, one or more embodiments can allow a user to customize the driving behavior based on at least one user preference, for example. One or more embodiments can customize the autonomous vehicle's driving behavior to incorporate a user preference regarding lane changing, distance keeping, desire to overtake other vehicles, and/or politeness to other vehicles, etc.
[0037] Conventional autonomous vehicles are generally configured to rigidly adhere to a pre-programmed driving behavior. Specifically, the conventional approaches generally configure the driving behavior of autonomous vehicles to perform in a manner that suits the preferences of the general population. However, certain users can consider use of the pre-programmed driving behavior to provide an undesirable transportation experience.
[0038] In view of the shortcomings of the conventional approaches in providing a desirable transportation experience for those users who do not want the vehicle to operate in accordance with a pre-programmed driving behavior, one or more embodiments can allow such users to customize the driving behavior of the autonomous vehicle based at least on a user-specific preference. The driving behavior can be customized within certain safety limits.
[0039]
[0040] Based on the one or more preferences that are adjusted by the user, at 130, one or more embodiments can determine a plurality of weighted parameters (i.e., W1, W2, W3, W4 . . . ). The weighted parameters can determine the customized/adaptive behavior that the autonomous vehicle will adhere to. At 140, as the vehicle encounters different driving scenarios, the vehicle will react to each scenario based on the determined customized/adaptive behavior.
[0041] If there is more than one user, the autonomous vehicle can use one or more preferences of one or more users. One or more embodiments can combine user preferences, which can result in an increased acceptability and trustworthiness of automated driving systems.
[0042]
[0043] In example scenario 220, vehicle 202 can react in at least one of two ways to a bicyclist that is on the road. First, vehicle 202 can decide to drive in close proximity to the bicyclist when passing the bicyclist. Alternatively, vehicle 202 can decide to keep a far distance away from the bicyclist when passing the bicyclist. As previously described, vehicle 202 will react to each scenario based on the adaptive behavior of the vehicle 202.
[0044]
[0045]
[0046]
[0047]
[0048]
[0049]
[0050] In the example of
Q(s.sub.t,a.sub.t)=Q(s.sub.t,a.sub.t)+Q(s.sub.t,a.sub.t,W.sub.1, . . . ,W.sub.n)
Where,
Q(s.sub.t,a.sub.t,W.sub.1, . . . ,W.sub.n)=[r+ max(Q(s.sub.t+1,a.sub.t+1,W.sub.1, . . . ,W.sub.n))Q(s.sub.t,a.sub.t,W.sub.1, . . . W.sub.n)]
where s.sub.t corresponds to the current vehicle state, s.sub.t+1 corresponds to a new vehicle state, a.sub.t corresponds to a current action, a.sub.t+1 corresponds to a new action, w.sub.1 . . . w.sub.n correspond to the previously-described weighted parameters, r corresponds to a reward on transition from the current vehicle state to the new vehicle state, corresponds to a learning rate, and corresponds to a discount rate.
[0051] Computer-implemented critic 860 can also include a temporal difference learning system 830 that allows the reinforcement-learning system 800 to learn which actions to take under which vehicle states. One way of learning which actions to take is by calculating a temporal difference error. In one example, temporal difference learning system 830 can determine the temporal difference error by using the following equation:
.sub.t=r.sub.t+1+Q(s.sub.t+1,a.sub.t+1,W.sub.1, . . . Wn)Q(s.sub.t,a.sub.t,W.sub.1, . . . W.sub.n)
[0052] With one embodiment, computer-implemented actor 861 can select an action based on a vehicle state, and weighted parameters, and a policy 840 (i.e., .sub.) that can be based on the state-action-value function 820. The action can also be based on input provided by temporal difference learning system 830, as described in more detail below.
[0053] The selected action 850 can then be executed by a controller in the driving environment 870. Feedback from the driving environment 870 can then be provided back to temporal difference learning system 830. Temporal difference learning system 830 can then provide input to actor 861, where actor 861 can use the input to determine a subsequent action, for example. Therefore, in view of the above, a reinforcement-learning-system can enable an autonomous vehicle to learn the different actions to take during runtime based on a customized driving behavior.
[0054]
[0055]
[0056] Computing system 1000 includes one or more processors, such as processor 1002. Processor 1002 is connected to a communication infrastructure 1004 (e.g., a communications bus, cross-over bar, or network). Computing system 1000 can include a display interface 1006 that forwards graphics, textual content, and other data from communication infrastructure 1004 (or from a frame buffer not shown) for display on a display unit 1008. Computing system 1000 also includes a main memory 1010, preferably random access memory (RAM), and can also include a secondary memory 1012. There also can be one or more disk drives 1014 contained within secondary memory 1012. Removable storage drive 1016 reads from and/or writes to a removable storage unit 1018. As will be appreciated, removable storage unit 1018 includes a computer-readable medium having stored therein computer software and/or data.
[0057] In alternative embodiments, secondary memory 1012 can include other similar means for allowing computer programs or other instructions to be loaded into the computing system. Such means can include, for example, a removable storage unit 1020 and an interface 1022.
[0058] In the present description, the terms computer program medium, computer usable medium, and computer-readable medium are used to refer to media such as main memory 1010 and secondary memory 1012, removable storage drive 1016, and a disk installed in disk drive 1014. Computer programs (also called computer control logic) are stored in main memory 1010 and/or secondary memory 1012. Computer programs also can be received via communications interface 1024. Such computer programs, when run, enable the computing system to perform the features discussed herein. In particular, the computer programs, when run, enable processor 1002 to perform the features of the computing system. Accordingly, such computer programs represent controllers of the computing system. Thus it can be seen from the forgoing detailed description that one or more embodiments provide technical benefits and advantages.
[0059] While the above disclosure has been described with reference to exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from its scope. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the disclosure without departing from the essential scope thereof. Therefore, it is intended that the embodiments not be limited to the particular embodiments disclosed, but will include all embodiments falling within the scope of the application.