behavioral assumption-based prediction f or high-latency hiding in mobile games
DESCRIPTION
BEHAVIORAL ASSUMPTION-BASED PREDICTION F OR HIGH-LATENCY HIDING IN MOBILE GAMES. Giliam J.P. de Carpentier Rafael Bidarra. Computer Graphics and CAD/CAM Group Faculty of Electrical Engineering, Mathematics and Computer Science. The problem. Multi-player games Fast-paced racing - PowerPoint PPT PresentationTRANSCRIPT
BEHAVIORAL ASSUMPTION-BASED PREDICTION
FOR HIGH-LATENCY HIDING IN MOBILE GAMES
BEHAVIORAL ASSUMPTION-BASED PREDICTION
FOR HIGH-LATENCY HIDING IN MOBILE GAMES
Computer Graphics and CAD/CAM GroupFaculty of Electrical Engineering, Mathematics and Computer
Science
Computer Graphics and CAD/CAM GroupFaculty of Electrical Engineering, Mathematics and Computer
Science
Giliam J.P. de Carpentier Rafael Bidarra
Giliam J.P. de Carpentier Rafael Bidarra
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
The problemThe problem
• Multi-player games– Fast-paced racing
• Network connections
• Latency
• Multi-player games– Fast-paced racing
• Network connections
• Latency
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
The problemThe problem
• Multi-player games– Fast-paced racing
• Network connections
• Latency
• Multi-player games– Fast-paced racing
• Network connections
• Latency
Network
T = t1 : Transmit red position
Network
Received position red
Actual position red
T = t1 + ΔTlatency : Receive position
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
A common techniqueA common technique
• Prediction
• Prediction errors
• Dead reckoning
• Prediction
• Prediction errors
• Dead reckoning
Network
Network
Received position red at t1
Actual position red≈
Predicted position red
T = t1 + ΔTlatency : Receive position
T = t1 : Transmit red position
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
A common techniqueA common technique
• Prediction
• Prediction errors
• Dead reckoning
• Prediction
• Prediction errors
• Dead reckoning
Network
Network
Actual position red
Predicted position red
Received position red at t1
T = t1 + ΔTlatency : Receive position
T = t1 : Transmit red position
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
Mobile gamesMobile games
LAN network(PC game)
Internet(PC game)
GPRS network (Mobile game)
Network latency 1 - 5 ms 50 - 200 ms 1500 - 3500 ms
Prediction distance in a race game@ 100 km/h
0.03 – 0.14 meter
1.4 - 5.6 meter 42 – 97 meter
Prediction error, assuming a max. of 10% deviation.
< 2 cm < 0.6 meter < 10 meter
Results Dead- reckoning
Good. Medium. Interactions like collisions can be problematic.
Bad. Errors as large as the width of a track are unacceptable.
• Platform: Java, BREW, Symbian, …• Network: GPRS using HTTP/TCP/IP stack
• Platform: Java, BREW, Symbian, …• Network: GPRS using HTTP/TCP/IP stack
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
Prediction modelsPrediction models
• Standard strategy:– Only extrapolate
from older data
• Our approach:– Assume track
following behavior
– Or assume racing line optimizing behavior
• Standard strategy:– Only extrapolate
from older data
• Our approach:– Assume track
following behavior
– Or assume racing line optimizing behavior
Xt-1
Xt-2
~Xt
Xt
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
Prediction modelsPrediction models
Xt-1
Xt-2
~Xt
Xt• Standard strategy:– Only extrapolate
from older data
• Our approach:– Assume track
following behavior
– Or assume racing line optimizing behavior
• Standard strategy:– Only extrapolate
from older data
• Our approach:– Assume track
following behavior
– Or assume racing line optimizing behavior
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
Continuity Continuity
• Multiple simulations
– Running 2 or 3 real-time simulations
– Linear interpolation between simulations
– Round robin
• Multiple simulations
– Running 2 or 3 real-time simulations
– Linear interpolation between simulations
– Round robin
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
Continuity Continuity
• Multiple simulations
– Running 2 or 3 real-time simulations
– Linear interpolation between simulations
– Round robin
• Multiple simulations
– Running 2 or 3 real-time simulations
– Linear interpolation between simulations
– Round robin
simBsimA simC
time
weig
ht
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
A Test DriveA Test Drive
• Creating a testbed
• Comparing results
• Razor
• Creating a testbed
• Comparing results
• Razor
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
A Test DriveA Test Drive
• Creating a testbed
• Comparing results
• Razor
• Creating a testbed
• Comparing results
• Razor
http://www.exmachina.nl
G.J.P. de Carpentier and R. Bidarra CGAMES 2005, FranceG.J.P. de Carpentier and R. Bidarra CGAMES 2005, France
ConclusionsConclusions
• Mobile 2.5G networks: a problematic domain
• Standard dead reckoning is insufficient
• Behavioral assumptions improve prediction
• Running multiple simulations: a good fit
• Mobile 2.5G networks: a problematic domain
• Standard dead reckoning is insufficient
• Behavioral assumptions improve prediction
• Running multiple simulations: a good fit