1 / 11

Parallel and Distributed Simulation

Parallel and Distributed Simulation. Dead Reckoning. Outline. Distributed simulation example, rationale for dead reckoning models (DRM) Basis DRM Generating state updates Position extrapolation Refinements Time compensation Smoothing. Distributed Simulation Example.

cahil
Download Presentation

Parallel and Distributed Simulation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Parallel and Distributed Simulation Dead Reckoning

  2. Outline • Distributed simulation example, rationale for dead reckoning models (DRM) • Basis DRM • Generating state updates • Position extrapolation • Refinements • Time compensation • Smoothing

  3. Distributed Simulation Example • Virtual environment simulation containing two moving vehicles • One vehicle per federate (simulator) • Each vehicle simulator must track location of other vehicle and produce local display (as seen from the local vehicle) • Approach 1: Every 1/60th of a second: • Each vehicle sends a message to other vehicle indicating its current position • Each vehicle receives message from other vehicle, updates its local display

  4. Limitations • Position information corresponds to location when the message was sent; doesn’t take into account delays in sending message over the network • Requires generating many messages if there are many vehicles

  5. last reported state: position = (1000,1000) traveling east @ 50 feet/sec “infrequent” position update messages (1050,1000) 1000 visual display system get position at frame rate predicted position one second later Image Generator Dead reckoning model terrain database 1000 1050 • When are updates sent? • How does the DRM predict vehicle position? Dead Reckoning • Send position update messages less frequently • local dead reckoning model predicts the position of remote entities between updates

  6. close enough? timeout? High Fidelity Model aircraft 1 DRM aircraft 1 simulator for aircraft 1 DRM aircraft 2 over threshold or timeout entity state update PDU DRM aircraft 1 simulator for aircraft 2 display sample DRM at frame rate Re-synchronizing the DRM When are position update messages generated? • Compare DRM position with exact position, and generate an update message if error is too large • Generate updates at some minimum rate, e.g., 5 seconds (heart beats)

  7. Dead Reckoning Models • P(t) = precise position of entity at time t • Position update messages: P(t1), P(t2), P(t3) … • v(ti), a(ti) = ith velocity, acceleration update • DRM: estimate D(t), position at time t • ti = time of last update preceding t • ∆t = ti - t • Zeroth order DRM: • D(t) = P(ti) • First order DRM: • D(t) = P(ti) + v(ti)*∆t • Second order DRM: • D(t) = P(ti) + v(ti)*∆t + 0.5*a(ti)*(∆t)2

  8. DRM estimates position receive message just before screen update A B C true position t1 generate state update message t2 state update D message E DRM estimate of true position display update DRM Example Potential problems: • Discontinuity may occur when position update arrives; may produce “jumps” in display • Does not take into account message latency

  9. true position state update A B C message t1 DRM estimate of true position t2 update with time compensation display update D E Time Compensation Taking into account message latency • Add time stamp to message when update is generated (sender time stamp) • Dead reckon based on message time stamp

  10. true position state update message A B interpolated position C DRM estimate of true position t1 t2 display update D E extrapolated position used for smoothing Smoothing Reduce discontinuities after updates occur • “phase in” position updates • After update arrives • Use DRM to project next k positions • Interpolate position of next update Accuracy is reduced to create a more natural display

  11. Summary • Dead reckoning model (DRM) • Extrapolate current position based on past updates • Send update messages when DRM error becoming too large • Reduces interprocessor communication • DRM based on equations of motion • Time compensation to account for message latency • Smoothing to avoid “jumps” in display

More Related