Parallel and Distributed Simulation

Slides:



Advertisements
Similar presentations
Dead Reckoning Objectives – –Understand what is meant by the term dead reckoning. –Realize the two major components of a dead reckoning protocol. –Be capable.
Advertisements

Synchronous Maneuvering of Uninhabited Air Vehicles
Networked Gaming Networking Bandwidth Security/Cheating Dynamics.
Parallel and Distributed Simulation Time Warp: Basic Algorithm.
Parallel and Distributed Simulation Lookahead Deadlock Detection & Recovery.
Lookahead. Outline Null message algorithm: The Time Creep Problem Lookahead –What is it and why is it important? –Writing simulations to maximize lookahead.
Computer Vision Optical Flow
Dead Reckoning Andrew Williams. Dead reckoning Process of estimating a position using known information from the (recent) past. If you know the speed.
Motion Tracking. Image Processing and Computer Vision: 82 Introduction Finding how objects have moved in an image sequence Movement in space Movement.
Video Processing EN292 Class Project By Anat Kaspi.
Prepared By: Kevin Meier Alok Desai
Transform Domain Distributed Video Coding. Outline  Another Approach  Side Information  Motion Compensation.
1 Diagnostics Project Introduction Matt Morgan. 2 Diagnostic ’ s Project Purpose Develop the Network layer services for diagnostics on CAN for road vehicle.
Lecture 12 Synchronization. EECE 411: Design of Distributed Software Applications Summary so far … A distributed system is: a collection of independent.
Logical Clocks (2). Topics r Logical clocks r Totally-Ordered Multicasting r Vector timestamps.
Holistic Mobile Game Development with Unity 2015 Taylor & Francis. All rights Reserved.
Hardware Supported Time Synchronization in Multi-Core Architectures 林孟諭 Dept. of Electrical Engineering National Cheng Kung University Tainan, Taiwan,
Introduction to Networked Graphics Part 3 of 5: Latency.
Data Distribution Dynamic Data Distribution. Outline Introductory Comments Dynamic (Value based) Data Distribution: HLA Data Distribution Management –Routing.
Time Manipulation.  The game states rendered at the clients are different because latency is dependent on the location of the client from the server.
Recursive Bayes Filters and related models for mobile robots.
Burnout 3: Case Study (Outline) What is Burnout 3? What is Burnout 3? What does this mean? What does this mean? How did we satisfy these constraints? How.
Parallel and Distributed Simulation Synchronizing Wallclock Time.
Distributed Virtual Environments Introduction. Outline What are they? DVEs vs. Analytic Simulations DIS –Design principles Example.
HQ U.S. Air Force Academy I n t e g r i t y - S e r v i c e - E x c e l l e n c e Improving the Performance of Out-of-Order Sigma-Point Kalman Filters.
Motion Planning in Games Mark Overmars Utrecht University.
Dead Reckoning Irwin Chiu Hau Nicolas Ng Man Sun.
Parallel and Distributed Simulation Distributed Virtual Environments (DVE) & Software Introduction.
Dead Reckoning References: Gamasutra (1), Gamedev (1)1 Forum articles (1)1.
Multiplayer games on networks potential and tradeoffs.
Dead Reckoning. Outline Basic Dead Reckoning Model (DRM) –Generating state updates –Position extrapolation Refinements –Time compensation –Smoothing.
Motion Estimation Today’s Readings Trucco & Verri, 8.3 – 8.4 (skip 8.3.3, read only top half of p. 199) Newton's method Wikpedia page
Data Distribution. Outline Fundamental concepts –Name space –Description expressions –Interest expressions Static Data Distribution: HLA Declaration Management.
High Level Architecture Time Management. Time management is a difficult subject There is no real time management in DIS (usually); things happen as packets.
Tracking with dynamics
Parallel and Distributed Simulation Data Distribution II.
Networked Graphics Building Networked Virtual Environments and Networked Games Chapter 11: Latency and Consistency.
Motion Estimation Today’s Readings Trucco & Verri, 8.3 – 8.4 (skip 8.3.3, read only top half of p. 199) Newton's method Wikpedia page
Clock Synchronization (Time Management) Deadlock Avoidance Using Null Messages.
Spatial Databases: Spatio-Temporal Databases Spring, 2015 Ki-Joune Li.
Kalman Filter and Data Streaming Presented By :- Ankur Jain Department of Computer Science 7/21/03.
Presented by: Chaitanya K. Sambhara Paper by: Rahul Gupta and Samir R. Das - Univ of Cincinnati SUNY Stony Brook.
Chapter 3: The Data Link Layer –to achieve reliable, efficient communication between two physically connected machines. –Design issues: services interface.
1 Group Communications: Host Group and IGMP Dr. Rocky K. C. Chang 19 March, 2002.
PDES Introduction The Time Warp Mechanism
CAT: High-PreCision Acoustic Motion Tracking
Jamming for good: a fresh approach to authentic communication in WSNs
Parallel and Distributed Simulation
THE OSI MODEL By: Omari Dasent.
Distributed Computing
Injong Rhee ICMCS’98 Presented by Wenyu Ren
Aditya Mavlankar and David Varodayan
Parallel and Distributed Simulation Techniques
PDES: Time Warp Mechanism Computing Global Virtual Time
Sarah Diesburg Operating Systems COP 4610
Lecture 19 – TCP Performance
Concurrent Graph Exploration with Multiple Robots
Precision and Accuracy
Sequence Diagrams Getting the Message.
CS4470 Computer Networking Protocols
Andy Wang Operating Systems COP 4610 / CGS 5765
Parallel and Distributed Simulation
CS 425 / ECE 428  2013, I. Gupta, K. Nahrtstedt, S. Mitra, N. Vaidya, M. T. Harandi, J. Hou.
Spatial Databases: Spatio-Temporal Databases
Introduction to High Performance Computing Lecture 16
Error Checking continued
Last Class: Naming Name distribution: use hierarchies DNS
Author: Ramana Rao Kompella, Kirill Levchenko, Alex C
Presentation transcript:

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 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

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

“infrequent” position Dead Reckoning Send position update messages less frequently local dead reckoning model predicts the position of remote entities between updates 1000 1050 (1050,1000) last reported state: position = (1000,1000) traveling east @ 50 feet/sec predicted position one second later When are updates sent? How does the DRM predict vehicle position? Image Generator Dead reckoning model visual display system terrain database “infrequent” position update messages get position 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) High Fidelity Model aircraft 1 DRM aircraft 2 over threshold or timeout close enough? timeout? entity state update PDU simulator for DRM aircraft 1 simulator for aircraft 2 sample DRM at frame rate display

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

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

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 A B C t1 true position DRM estimate of state update display update message t2 update with time compensation D E

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 A B C interpolated position D t1 true position DRM estimate of state update display update message t2 extrapolated position used for smoothing E Accuracy is reduced to create a more natural display

Summary Dead reckoning model (DRM) DRM based on equations of motion 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