Motion Prediction for Online Gaming Rynson W.H. Lau May 14, 2011.

Slides:



Advertisements
Similar presentations
A Hierarchical Position Prediction Algorithm for Efficient Management of Resources in Cellular Networks Tong Liu, Paramvir Bahl, Imrich Chlamtac
Advertisements

A Trajectory-Preserving Synchronization Method for Collaborative Visualization Lewis W.F. Li* Frederick W.B. Li** Rynson W.H. Lau** City University of.
CSCE643: Computer Vision Bayesian Tracking & Particle Filtering Jinxiang Chai Some slides from Stephen Roth.
Network Research Lab. Sejong University, Korea Jae-Kwon Seo, Kyung-Geun Lee Sejong University, Korea.
Playback delay in p2p streaming systems with random packet forwarding Viktoria Fodor and Ilias Chatzidrossos Laboratory for Communication Networks School.
On Large-Scale Peer-to-Peer Streaming Systems with Network Coding Chen Feng, Baochun Li Dept. of Electrical and Computer Engineering University of Toronto.
G. Alonso, D. Kossmann Systems Group
Network Coding in Peer-to-Peer Networks Presented by Chu Chun Ngai
Lab 2 Lab 3 Homework Labs 4-6 Final Project Late No Videos Write up
A Framework for Secure Data Aggregation in Sensor Networks Yi Yang Xinran Wang, Sencun Zhu and Guohong Cao The Pennsylvania State University MobiHoc’ 06.
Introduction to Mobile Robotics Bayes Filter Implementations Gaussian filters.
Autonomous Robot Navigation Panos Trahanias ΗΥ475 Fall 2007.
Secure Multicast Xun Kang. Content Why need secure Multicast? Secure Group Communications Using Key Graphs Batch Update of Key Trees Reliable Group Rekeying.
Analyzing Multi-channel MAC Protocols for Underwater Sensor Networks Presenter: Zhong Zhou.
Time Synchronization (RBS, Elson et al.) Presenter: Peter Sibley.
Peer-to-Peer 3D Streaming ACM Multimedia 2007 submission Presenter: Shun-Yun Hu ( 胡舜元 ) Adaptive Computing and Network Lab Dept. of CSIE,
1 IMPROVING RESPONSIVENESS BY LOCALITY IN DISTRIBUTED VIRTUAL ENVIRONMENTS Luca Genovali, Laura Ricci, Fabrizio Baiardi Lucca Institute for Advanced Studies.
Prefix Caching assisted Periodic Broadcast for Streaming Popular Videos Yang Guo, Subhabrata Sen, and Don Towsley.
Chess Review May 11, 2005 Berkeley, CA Tracking Multiple Objects using Sensor Networks and Camera Networks Songhwai Oh EECS, UC Berkeley
Particle Filters for Mobile Robot Localization 11/24/2006 Aliakbar Gorji Roborics Instructor: Dr. Shiri Amirkabir University of Technology.
Today Introduction to MCMC Particle filters and MCMC
Improving the Accuracy of Continuous Aggregates & Mining Queries Under Load Shedding Yan-Nei Law* and Carlo Zaniolo Computer Science Dept. UCLA * Bioinformatics.
The Calibration Process
“On the Integration of MPEG-4 streams Pulled Out of High Performance Mobile Devices and Data Traffic over a Wireless Network” Spyros Psychis, Polychronis.
Presented by Tao HUANG Lingzhi XU. Context Mobile devices need exploit variety of connectivity options as they travel. Operating systems manage wireless.
Detecting Spammers with SNARE: Spatio-temporal Network-level Automatic Reputation Engine Shuang Hao, Nadeem Ahmed Syed, Nick Feamster, Alexander G. Gray,
1 Cardinality Estimation for Large-scale RFID Systems Chen Qian, Hoilun Ngan, and Yunhao Liu Hong Kong University of Science and Technology.
Network Planète Chadi Barakat
Kalman filter and SLAM problem
A User Experience-based Cloud Service Redeployment Mechanism KANG Yu.
Particle Filtering in Network Tomography
Markov Localization & Bayes Filtering
Application-Layer Anycasting By Samarat Bhattacharjee et al. Presented by Matt Miller September 30, 2002.
Network Aware Resource Allocation in Distributed Clouds.
“Intra-Network Routing Scheme using Mobile Agents” by Ajay L. Thakur.
Simultaneous Localization and Mapping Presented by Lihan He Apr. 21, 2006.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Particle Filters.
TOMA: A Viable Solution for Large- Scale Multicast Service Support Li Lao, Jun-Hong Cui, and Mario Gerla UCLA and University of Connecticut Networking.
November 4, 2003APOC 2003 Wuhan, China 1/14 Demand Based Bandwidth Assignment MAC Protocol for Wireless LANs Presented by Ruibiao Qiu Department of Computer.
Tarun Bansal, Bo Chen and Prasun Sinha
Motion Planning in Games Mark Overmars Utrecht University.
1 MMORPG Servers. 2 MMORPGs Features Avatar Avatar Levels Levels RPG Elements RPG Elements Mission Mission Chatting Chatting Society & Community Society.
Real-Time Simultaneous Localization and Mapping with a Single Camera (Mono SLAM) Young Ki Baik Computer Vision Lab. Seoul National University.
SD1230 Unit 6 Desktop Applications. Course Objectives During this unit, we will cover the following course objectives: – Identify the characteristics.
Joseph M. Hellerstein Peter J. Haas Helen J. Wang Presented by: Calvin R Noronha ( ) Deepak Anand ( ) By:
A NOVEL PREFETCHING METHOD FOR SCENE-BASED MOBILE SOCIAL NETWORK SERVICE 作者 :Song Li, Wendong Wang, Yidong Cui, Kun Yu, Hao Wang 報告者 : 饒展榕.
Visualizing QoS. Background(1/2) A tremendous growth in the development and deployment of networked applications such as video streaming, IP telephony,
Multiplayer games on networks potential and tradeoffs.
On Reducing Mesh Delay for Peer- to-Peer Live Streaming Dongni Ren, Y.-T. Hillman Li, S.-H. Gary Chan Department of Computer Science and Engineering The.
Mixture Kalman Filters by Rong Chen & Jun Liu Presented by Yusong Miao Dec. 10, 2003.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks TCP.
Pure Path Tracing: the Good and the Bad Path tracing concentrates on important paths only –Those that hit the eye –Those from bright emitters/reflectors.
1 1 Slide Simulation Professor Ahmadi. 2 2 Slide Simulation Chapter Outline n Computer Simulation n Simulation Modeling n Random Variables and Pseudo-Random.
Big traffic data processing framework for intelligent monitoring and recording systems 學生 : 賴弘偉 教授 : 許毅然 作者 : Yingjie Xia a, JinlongChen a,b,n, XindaiLu.
A Bandwidth Scheduling Algorithm Based on Minimum Interference Traffic in Mesh Mode Xu-Yajing, Li-ZhiTao, Zhong-XiuFang and Xu-HuiMin International Conference.
A Framework to Predict the Quality of Answers with Non-Textual Features Jiwoon Jeon, W. Bruce Croft(University of Massachusetts-Amherst) Joon Ho Lee (Soongsil.
1 Selection Strategies for Peer-to-Peer 3D Streaming Wei-Lun Sung, Shun-Yun Hu, Jehn-Ruey Jiang National Central University, Taiwan 2008/05/29.
Distributed Systems Lecture 5 Time and synchronization 1.
Kalman Filter and Data Streaming Presented By :- Ankur Jain Department of Computer Science 7/21/03.
SOURCE:2014 IEEE 17TH INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND ENGINEERING AUTHER: MINGLIU LIU, DESHI LI, HAILI MAO SPEAKER: JIAN-MING HONG.
University of Pennsylvania 1 GRASP Control of Multiple Autonomous Robot Systems Vijay Kumar Camillo Taylor Aveek Das Guilherme Pereira John Spletzer GRASP.
Tracking Objects with Dynamics
The Calibration Process
CHAPTER 3 Architectures for Distributed Systems
Client-Server Interaction
Minimizing Broadcast Latency and Redundancy in Ad Hoc Networks
Algorithms for Selecting Mirror Sites for Parallel Download
Overview: Chapter 2 Localization and Tracking
Presentation transcript:

Motion Prediction for Online Gaming Rynson W.H. Lau May 14, 2011

1. Network Latency According to our earlier experiments, the one- way network latency values for different network connections are shown as follows: According to our earlier experiments, the one- way network latency values for different network connections are shown as follows: Network Connection Average Latency LAN (2 hosts within the university network) 0.64ms Internet (local connection, 2 hosts within HK) 10ms Internet (overseas connection, between US and HK) 0.16s Internet (overseas connection, between UK and HK) 0.2s May need to consider other overheads, such as I/O and CPU.

Problems of Network Latency in Online Gaming Motion Synchronization Problems Motion Synchronization Problems  Motion discrepancy of shared objects among clients.  In a collaborative game, it will be difficult to synchronize interactions among remote players. Object Distribution Problem Object Distribution Problem  In a streaming environment, geometry of visible objects may not be readily available locally at the time when they are needed.

Solution to the Network Latency Problems We accept that prediction is a prediction. We can never have a 100% accuracy. We accept that prediction is a prediction. We can never have a 100% accuracy. However, we do want a reliable motion prediction method: However, we do want a reliable motion prediction method:  Given a specific time in the future, the prediction method should return the most likely position of the target object.

2. Related Work Roughly two types of motion prediction methods: Short-term prediction Short-term prediction  short prediction length (typically < 1s). Long-term prediction Long-term prediction  Long prediction length (typically >> 1s).

Short-term Prediction General predictors: General predictors:  Dead reckoning + polynormial predictor (Singhal & Zyda, 1999)  Modified EWMA scheme (Chim et al., 1998) Specialized predictors: Specialized predictors:  Kalman filter for head motion prediction (Azuma & Bishop, 1995)  Gauss-Markov process model for head prediction (Liang et al., 1991) and for human motion prediction (Capin et al., 1997)  Sequential Monte Carlo for motion tracking (Isard & Balke, 1998) In general, specialized prediction methods are more accurate but are only suitable for predicting motion of specific objects.

Long-term Prediction Mobility modelling: Mobility modelling: For mobile handovers -  Random process (Thomas et al., 1988; Xie & Goodman, 1993; Broch et al., 1998)  Discrete state conditional probability (Bar-Noy et al., 1995; Choi & Shin, 2002) For bandwidth optimization -  Zone-based sampling statistics (Tabbane, 1995; Bhattacharya & Das, 2002)  Zone-based path retrieval (Liu & Maguire, 1996; Liu et al., 1998; Akyildiz & Wang, 2004)

Path planning: Path planning:  Collision avoidance using prior knowledge (Tado et al., 1995) or statistics from samples (Tana, 1992)  Moving obstacle avoidance by considering obstacle motion trajectories (Kruse et al., 1997) To find an optimal path to move from one place to another while satisfying some predefined constraints.

Our Streaming-Based DVE We have developed a DVE, which is based on geometry streaming (Chim et al., 1998; Chim et al., 2003). We have developed a DVE, which is based on geometry streaming (Chim et al., 1998; Chim et al., 2003). <demo video> <demo video>  Objects formatted for progressive transmission.  Send initial packet as a user joins the game.  Send additional geometry packets as the user moves around in the game. This DVE was later extended into a game engine prototype (Li et al., 2004). This DVE was later extended into a game engine prototype (Li et al., 2004).

Problems: Too late if we request objects from the server only when the objects become visible. Too late if we request objects from the server only when the objects become visible. Need to ask the server for objects before they become visible. Need to ask the server for objects before they become visible.  Need a reliable motion prediction method.  Predict future visible objects based on the predicted future position from the predictor.  Request server for the predicted visible objects.

3. Short-term Motion Prediction We needed a reliable motion prediction method for 3D navigation – to address the network latency problem. We needed a reliable motion prediction method for 3D navigation – to address the network latency problem. As most desktop DVE systems still use the 2D mouse for navigation input, we studied the mouse behavior during such navigation. As most desktop DVE systems still use the 2D mouse for navigation input, we studied the mouse behavior during such navigation. We noted that a typical navigation step (from mouse button down to release) contains a number of pulses. We noted that a typical navigation step (from mouse button down to release) contains a number of pulses.

Mouse-based Hybrid Motion Prediction When plotting the mouse acceleration against velocity, we noted that each pulse can be approximated by an ellipse: When plotting the mouse acceleration against velocity, we noted that each pulse can be approximated by an ellipse: velocity Hence, we model it as: Hence, we model it as: v = K 1 (cos(K 2 t)-1) v = K 1 (cos(K 2 t)-1) where K 1 and K 2 are constants determined by the shape of the pulse. where K 1 and K 2 are constants determined by the shape of the pulse.

We proposed an elliptic model to model the mouse motion behavior (Chan et al., 2005). We proposed an elliptic model to model the mouse motion behavior (Chan et al., 2005). Two predictors are needed, one for the motion in x axis and the other for motion in y axis. Two predictors are needed, one for the motion in x axis and the other for motion in y axis. The predicted mouse velocity is then mapped to the 3D game scene to obtain the player’s future position. The predicted mouse velocity is then mapped to the 3D game scene to obtain the player’s future position. <Video Demo> <Video Demo>

Performance of the Predictor

Hand Motion Prediction We observed similar motion behavior in finger motion. We observed similar motion behavior in finger motion. We extended the elliptic model for hand motion prediction, by considering constraints within and between fingers (Chan et al., 2008). We extended the elliptic model for hand motion prediction, by considering constraints within and between fingers (Chan et al., 2008). Preformance comparison: Preformance comparison: <Video Demo> <Video Demo> Rock-Paper-Scissor game: sop -, ehm - Rock-Paper-Scissor game: sop -, ehm - <Video Demo> <Video Demo> <Video Demo> <Video Demo>

4. Long-term Motion Prediction We need a reliable motion prediction method for object prefetching and resource allocation (such as multi-server load-balancing). We need a reliable motion prediction method for object prefetching and resource allocation (such as multi-server load-balancing). We are developing a statistical-based method. We are developing a statistical-based method. The environment is divided into square zones. The environment is divided into square zones. We collect statistics as users go in and out of each zone. We collect statistics as users go in and out of each zone.

Given the boundary position that a user enters the zone, we compute the conditional probability that the user will leave the zone at a particular boundary position. Given the boundary position that a user enters the zone, we compute the conditional probability that the user will leave the zone at a particular boundary position.

wheren is the number of mixture, f i (y; C i, m i ) is the i th Gaussian distribution function, with covariance C i and mean m i, 0 < a i < 1, and We model such a distribution function f(y|x) as a Gaussian mixture: We model such a distribution function f(y|x) as a Gaussian mixture:

Performance of the Predictor [Choi02] computes the probability of the user moving to different neighboring zones based on the user’s previous and current zones.

An interesting feature of this method is that we may consider a zone as a basic block. An interesting feature of this method is that we may consider a zone as a basic block. We may aggregate this probability values from zone to zone to construct a path tree. We may aggregate this probability values from zone to zone to construct a path tree.

Current Work on Long-term Prediction How should we measure prediction accuracy with multiple predicted paths, each with a different probability? How should we measure prediction accuracy with multiple predicted paths, each with a different probability? Does prediction at lower spatial resolution help reduce computational cost, given that the prediction accuracy is high enough? Does prediction at lower spatial resolution help reduce computational cost, given that the prediction accuracy is high enough?

5. Combined Motion Prediction Short-term prediction Short-term prediction  Precise predicted location  Very short prediction length  Prefetching performance can be significantly affected by other factors, such as amount of geometry to be streamed, available network bandwidth, CPU processing delay, network latency fluctuation, etc. When applied to our streaming-based DVE, the two types of prediction methods have different behaviors:

Long-term prediction Long-term prediction  Imprecise predicted location  Generally lower prediction accuracy  Much longer prediction length  May start prefetching much earlier in time, but most of the objects prefetched may not be needed at all, due to the imprecise predicted location and the lower prediction accuracy.

Long-term predictor helps prefetch objects in low resolution, e.g., base meshes. Long-term predictor helps prefetch objects in low resolution, e.g., base meshes. Short-term predictor helps prefetch refinement information, e.g., progressive records, to bring the visible objects to their optimal resolution. Short-term predictor helps prefetch refinement information, e.g., progressive records, to bring the visible objects to their optimal resolution. One approach that we are considering is to combine the two types of predictors to optimize the prefetching performance:

6. Problems and Future Works Can we improve the prediction accuracy by incorporating user interests? Can we improve the prediction accuracy by incorporating user interests? Can we improve the prediction accuracy of the long-term predictor with results from the short- term predictor (or vise versa)? Can we improve the prediction accuracy of the long-term predictor with results from the short- term predictor (or vise versa)? Investigation on prediction errors and bounding of prediction errors. (Lau & Lee, 2010) Investigation on prediction errors and bounding of prediction errors. (Lau & Lee, 2010)

Q & A