410 likes | 554 Views
*. **. City University of Hong Kong. A Trajectory-Preserving Synchronization Method for Collaborative Visualization. Lewis W.F. Li* Frederick W.B. Li** Rynson W.H. Lau**. Overview. Introduction Related Work Methodology Experiment Results Conclusion. Part I. Introduction.
E N D
* ** City Universityof Hong Kong A Trajectory-Preserving Synchronization Method for Collaborative Visualization Lewis W.F. Li* Frederick W.B. Li** Rynson W.H. Lau**
Overview • Introduction • Related Work • Methodology • Experiment Results • Conclusion
Part I Introduction
Introduction (1/2) • Collaborative visualization • Geographically separated users to be connected over the network to visualize and manipulate dataset for problem solving • Examples • Fluid dynamics visualization • Volume visualization • Medical data visualization
Introduction (2/2) • Characteristics of collaborative visualization • User is allowed to interact with the visualization dataset continuously over time • Dataset updates should subsequently be distributed to remote users over the network • Problems • Due to network latency, each remote user may receive updates with a different amount of delay • User’s ability in performing desirable collaborative tasks will be affected, due to the induced view discrepancy among remote users
Objectives of This Work • Provide a more synchronized view of visualization changes to collaborating users • Develop procedures to correct motion trajectories of dynamic objects • Prevent discontinuous motion • Address false positive and false negative collision detection problems
Part II Related Work
Related Work • Traditional Applications • Easy to work well provided that state updates are received by remote sites in a correct order • Time gap between two consecutive updates is typically large as compared to network latency • Collaborative Applications • State updates occurs continuously • Unfortunately, updates need to present to remote users timely or at least within a very short time • Existing solutions: - User or system side adaptation - Local Lag mechanism
Part III Methodology
Methodology • Relaxed Consistency Control Model • Gradual Synchronization • Trajectory-Preserving Synchronization
Relaxed Consistency Control Model • Observation: Users generally pay more attention on the trajectory of dynamic objects rather than their individual states • Given that the states of a replicated object at two remote sites at time t are si(t) and sj(t), the state discrepancy D of the object between the two sites during any time period Ta and Tb should be smaller than an application specific tolerance, ξ. Hence,
Gradual Synchronization (1/2)ACM Multimedia 2004 • Trade accuracy of individual state of a dynamic object for preserving their state trajectory • Run a reference simulator on the server for each object in a client-server environment • Note: 1st order simulator: 2nd order simulator: • When a client receive or initiate a new motion update of an object, the client will align the motion of the local object against its reference simulator
Gradual Synchronization (2/2) ACM Multimedia 2004 • Contribution: • This method effectively reduces the latency of a client to obtain a state update from a double round-trip time delay to a single one • Limitation: • High discrepancy occurs between the period when an interaction has just occurred and before the update message reaches a remote client • Apparently, such discrepancy appears shortly for each time, but would become serious if interactions occur frequently
Trajectory-Preserving Synchronization • Extends from our gradual synchronization method • Consider the characteristics of spatial changes and interactions of dynamic objects are affected by network latency • A set of procedures are developed to correct motion trajectory of dynamic objects • Handle false positive and false negative collision detection problem
Client-Server Trajectory-Preserving Synchronization • Client A (avatar) and the server
Client-ClientTrajectory-Preserving Synchronization • Server and client B (observer)
Arbitrary MomentTrajectory-Preserving Synchronization • Client A (avatar) and the server
Handling Object CollisionsTrajectory-Preserving Synchronization • Interpret the collision response as motion commands • Resolve inconsistent collision problem into two sets of simpler problems
Handling Object CollisionTrajectory-Preserving Synchronization • False negative collisions • Collisions detected in the avatar but not in the server (case (b)) • Inhabit the avatar to perform collision detection until motion remediation process has finished • False positive collisions • Collisions detected in the server but not in the observer (case (f)) • Inhabit the observer to perform collision detection until motion remediation process has finished
Part IV Experiment Results
Experiment I (1/4) • Demonstrate user’s navigation at an avatar, the serverand an observer • Compare the performance of different methods • Dead Reckoning • Original method • New Method • Here, focus on comparing dead reckoning and the new method only • Full and other Demos • http://www.cs.cityu.edu.hk/~kwfli/vis2006/vis.html
Experiment I (2/4) • Dead Reckoning
Experiment I (3/4) • New Method
Experiment I (4/4) • Focus on comparing several motion changes Dead Reckoning New Method
Experiment II (1/5) • Focus on the motion of selected object (the green ball) in the virtual environment • Compare the position discrepancy in between • Client A and the server • The server and client B • Client A and client B
Experiment II (2/5) • Screen shots of our prototype for collaborative visualization
Experiment II (3/5) • Client A and the server
Experiment II (4/5) • The server and client B
Experiment II (5/5) • Client A and client B
Experiment III (1/3) • Focus on the accuracy of the new method in handling object collisions • Compare the position discrepancy between server and four users with different network latencies
Part V Conclusion
Conclusion (1/2) • Propose a trajectory-preserving synchronization method to support collaborative visualization • Handle unpredictable user changes • Handle collision detection problem
Conclusion (2/2) • Limitations • Assume using connection-oriented network • Message loss is not considered • Future Works • Consider difference types of network • Support haptic interface and rendering
Thank you! Contacts Lewis Li: kwfli@cs.cityu.edu.hk Frederick Li: Frederick.Li@durham.ac.uk Rynson Lau: Rynson.Lau@durham.ac.uk Questions and Answers http://www.cs.cityu.edu.hk/~kwfli/vis2006/
Appendix Clock Synchronization • Two common approaches • Backward correction • Forward correction
Appendix Dead Reckoning • Client A and client B
AppendixGradual Synchronization • For each motion • Motion timers Ts and Tc are maintained at the server and client simulator, respectively • Assume position updates in every Δt • Estimate the round-trip time, Test • Adjust every Δt in client for Tc based on Test • Synchronized when Tc is the same as Ts
AppendixGradual Synchronization • Client A and the server
AppendixGradual Synchronization • Server and client B