Thunderhead Engineering Forum

Public Forum => Pathfinder => Topic started by: liu_zhen on March 24, 2009, 11:38:42 pm

Title: Simulation parameter: steering update interval
Post by: liu_zhen on March 24, 2009, 11:38:42 pm
Hi, I have a question about the parameter called steering update interval.

Does it mean that one occupant can re-calculate its path every time step which is specified by this update interval?

Now, the default value is 0.1s; and it seems occupants are quite smart, I mean they can soon find the optimistic route even in some complicated environment. Do you have any recommend to define a reasonable value for this parameter?
Title: Re: Simulation parameter: steering update interval
Post by: Charlie Thornton on March 25, 2009, 08:01:00 am
The steering update interval (default: 0.1s) controls how frequently occupants will re-calculate their desired velocity.  The desired velocity is the output of the steering behaviors.  Each simulation time step (default: 0.025s), the occupant will attempt to accelerate to match its velocity with the desired velocity.  Recalculations of the desired velocity are also forced when occupants are bumped off-path or when they reach a waypoint.

The steering calculation is relatively expensive in CPU cycles, so the default parameters should make simulations run about 4x faster than if you put the steering update interval at 0.025s.

As the update interval gets bigger, where you start to see it is in crowds.  Occupants will take turns moving in something like strange coordinated shifts - about half will stop and the other half will angle off for the update interval.  It's not very pretty.  If it gets really big, they'll start to do more corner sliding.  However, the the default settings do a pretty good job of balancing speed with accuracy.  If you have a sparse simulation (no congestion) you can make both values bigger without much of a problem, but it'll already run faster anyway, so there's not much point.