Upload
vernon-barrett
View
219
Download
0
Tags:
Embed Size (px)
Citation preview
Behavior Control of Virtual Vehicle
Hongling Wang
April 21, 2003
Introduction
• Purpose of behavior control– Run a virtual vehicle on a road network– Following traffic rules– A vehicle should be able to get anywhere in
the road network
• Behavior control is complex– Divided into basic component behaviors– Integrate all the basic components
Components of Vehicle Behavior
• Cruising behavior– Vehicle drives at desired speed
• Following behavior– Vehicle keeps a safe distance behind its leader
• Intersection behavior– Vehicle traverses intersections safely
• Obeys traffic signals• Respects right of way
• Lane changing behavior– Vehicle leaves the current lane and enters an adjacent
target lane
Behavior and Kinematics
• Behavior sets control parameters– Acceleration– Driving curvature
• Kinematics moves a vehicle to a new position according to parameter values
Path • Path, a ribbon composed
of road lanes and intersection corridors
• Path used to guide vehicle moving– Path forms a consistent
frame of reference– Pursuit point on path
centerline
• Path is an interface between a vehicle and outside world
Path (Cont.)
• Path simplifies behavior control– Driving curvature
determined by path– Acceleration
determined by behaviors
• Path provides a basis for spatial relationship
Cruising behavior
• Determines desired speed• Compare current speed with desired speed
– Current speed is higher, negative acceleration– Current speed is lower, positive acceleration
• Proportional controller
• Reactive behavior– Decision depends only on the state at this moment
)(*1 tdtt VVKpa
Following behavior
• Query the leader on the path of a vehicle
• Compute relative distance and relative speed
• Proportional-derivative controller
• Contribute the acceleration if negative, discard it if positive
• Reactive behavior
)()(1
rtVKd*d
tDr
tDKp*
ta
PD controller response to a slow leader
• acceleration– Before critical point, positive– After critical point, negative
and increasing– After negative maximum,
negative and decreasing to approach 0
• phases of vehicle actions– No response– Slow down to leader’s speed– Keep a safe distance from its
leader
Integration of cruising and following behaviors
• If following acceleration >0, choose cruising acceleration
• If following acceleration <=0, choose smaller value among the two
• Integrated behavior: a vehicle always tries to drive at a desired speed, while keeps from running into or too close to its leader
Intersection behavior
• What a vehicle does before entering an intersection– Stop– Keep going– Stop and go alternatively
• Actions chosen according to ambient traffic and traffic control signals
• Sequential behavior– Decision depends on both the state in last moment and
the state in this moment
Intersection behavior (Cont.)
• An intersection is a resource– A vehicle should not enter it if it can’t leave it
soon
• Three sub behaviors because of different right-of-way rules– Going straight– Turning left– Turning right
Intersection behavior (Cont.)
• Main problems– Stop a vehicle on desired position– Using state machines to control action flow– Gap acceptance
• Immediate gap (e.g., turning right on RED)• Predicted gap (e.g., turning left on GREEN)
Stopping behavior
• Requirements– Inform a vehicle it is the time to decelerate– Stop a vehicle in desired position if computed
acceleration applied– Keep a vehicle stopped after it stopped
• Acceleration computation method– PD controller– Invariant acceleration controller
PD controller for stopping
• Acceleration formula
• Phases of vehicle actions– No response– Slow down and stop
at desired position– Stay stopped at
desired position
)(1 t
VKd*t
Kp*Dta
PD controller for stopping
• disadvantages– No fully stopping, speed
infinitely approaches 0– Acceleration value may be
too big, if critical point is missed
Invariant acceleration controller for stopping
• Controller
• Advantages– Be able to give a full stop at desired position– Gives a reasonable acceleration in some cases where
PD controller gives a too big acceleration
• Disadvantage– Sensitive to small errors of both speed and distance
• Conclusion: a better choice than PD controller
)2/(2 sva
State machines for Intersection behavior
• Basic states of state machines for intersection behavior– START, no response to state of control signal– CONTINUE, keep going while stopping still possible– SLOWDOWN, decelerate for stopping– STOPPED, speed is 0– END, stopping becomes impossible or is no longer
necessary
• One state machine built for each sub behavior
Gap acceptance computation
• Gap is a time period within which my required space is free– A resource– Relationship between time and space
• Immediate gap– Estimate when others will get to my required space– Check if it is within the gap
• Predicted gap – Estimate when I will get to and leave my required
space– Estimate when others will get to my required space– Check if they overlay
Intersection behavior by simple right of way rules
• Simple right of way rules
• Problems: – Deadlock– Starvation
• Solutions – Deadlock breaking
rule– Starvation avoidance
rule
Integration of cruising, following and intersection behaviors
• Before intersection behavior is activated, choose the former acceleration
• After it is activated– In SLOWDOWN or STOPPED phase, choose the
smaller value among the former acceleration and intersection acceleration
– In other phases, choose the former acceleration
• Integrated behavior: A vehicle tries to drive at a desired speed, keeps a safe distance with its leader and responds to traffic control signals on intersections
Lane change behavior
• Modeled as a sequence of four steps– Consider a lane change– Choice of a target lane– Gap acceptance– Move over to the target lane
• Classified as MLC and DLC– MLC, mandatory lane change– DLC, discretionary lane change
• Sequential behavior– State machine with 4 states corresponding to the 4
steps
Discretionary Lane Change
• Consider DLC when the speed is below a desired speed
• Change to a neighboring lane for opportunity to increase speed
• A gap is acceptable when both lead and lag gaps on target lane are acceptable
Trajectories of a vehicle and its pursuit point during lane changing
• Move pursuit point from center of current lane to center of target lane
• Use PD controller to control lateral moving of pursuit point
• Vehicle overshoots the target offset
Gap acceptance for lane change
• Both lead gap and lag gap are acceptable
• My current leader and follower are not changing to my target lane
• No vehicle on another adjacent lane of my target lane is changing to my target lane
Integrate lane change behavior with following behavior
• The concept of following leader changed– The ahead vehicle in my current lane – The ahead vehicle in my target lane if I am in
lane change– The ahead vehicle whose target lane is my
current lane and who is in lane change
• Problem: too conservative
• Solution: visibility computation
Visibility computation
• The ahead vehicle in my current lane may be out of my way when I am in lane change
• Lane change will complete sooner with visibility computation, especial when ahead vehicle is very slow
Take MLC into consideration
• MLC is necessary• The concept and structure of path don’t support
MLC efficiently• Route, a higher level conceptual structure, is
necessary for MLC– Route of a vehicle is composed of roads
• Relation between route and path– Route is a long term plan– Path is a short term plane– Path is built to follow route
Take MLC into consideration
• A multiple-lane MLC is treated as multiple single-lane changes
• When still far from road end, consider only DLC, not MLC
• DLC consistent with target of MLC is given priority
• DLC against target of MLC is given some penalty for resource requirement
General Behavior Integration
• Acceleration combined contribution from– Cruising behavior– Following behavior– Intersection behavior
• Driving curvature combined contribution from– Path following– Lane changing behavior