Special Course on Networked Virtual Environments January 23, 2004 Jouni Smed 1
SIMNET SIMNET
- Technical
Technical challenges challenges
- how to fabricate high
how to fabricate high-
- quality, low
quality, low-
- cost simulators
cost simulators
- how to network them
how to network them together to create a consistent battlefield together to create a consistent battlefield
- Testbed
Testbed
- 11 sites with
11 sites with 50 50– –100 100 simulators at each site simulators at each site
- a simulator
a simulator is is the portal to the synthetic environment the portal to the synthetic environment
- participants
participants can interact/play with others can interact/play with others
- play was
play was unscripted unscripted free play free play
- confined to
confined to the chain the chain of command
- f command
SIMNET NSA SIMNET NSA
Basic Basic components components
i. i.
An object An object-
- event architecture
event architecture
ii. ii.
A notion of autonomous simulator nodes A notion of autonomous simulator nodes
iii. iii.
An embedded set of predictive An embedded set of predictive modelling modelling algorithms algorithms (i.e., (i.e., ‘dead ‘dead reckoning’) reckoning’)
- i. Object
- i. Object-
- Event
Event Architecture Architecture
- Models
Models the world as a collection of the world as a collection of objects
- bjects
- vehicles and weapon systems that can interact
vehicles and weapon systems that can interact
- a single object is usually managed by a single
a single object is usually managed by a single host host
- ‘selective functional fidelity’
‘selective functional fidelity’
- Models
Models interactions between objects as a interactions between objects as a collection collection of
- f events
events
- messages indicating a change in the world or object state
messages indicating a change in the world or object state
- The basic terrain and structures are separate from the collectio
The basic terrain and structures are separate from the collection n
- f objects
- f objects
- if the structure can be destroyed then it has to be reclassified
if the structure can be destroyed then it has to be reclassified as an as an
- bject,
- bject, whose state
whose state is continually transmitted onto the is continually transmitted onto the network network
- ii. Autonomous
- ii. Autonomous Simulator Nodes
Simulator Nodes
- Individual players, vehicles, and weapon systems on the network
Individual players, vehicles, and weapon systems on the network are are responsible responsible for transmitting for transmitting accurately accurately their current state their current state
- Autonomous nodes do not interact with the recipients by any othe
Autonomous nodes do not interact with the recipients by any other way r way
- Recipients are responsible for
Recipients are responsible for
- receiving state change information
receiving state change information
- making appropriate
making appropriate changes to their local model of the world changes to their local model of the world
- Lack of a central server
Lack of a central server
- single point
single point failures do not crash the whole simulation failures do not crash the whole simulation
- players can join and leave at any
players can join and leave at any time (persistency) time (persistency)
- Each node is responsible for one or more objects
Each node is responsible for one or more objects
- the node
the node has to has to send send update packets update packets to to the network whenever its objects have the network whenever its objects have changed enough changed enough to notify the other nodes to notify the other nodes of the
- f the change
change
- a ‘heartbeat’
a ‘heartbeat’ message, usually every 5 seconds message, usually every 5 seconds
- iii. Predictive
- iii. Predictive Modelling
Modelling Algorithms 1 (3) Algorithms 1 (3)
- An embedded and well
An embedded and well-
- defined set of
defined set of predictive predictive modelling modelling algorithms algorithms called called dead dead reckoning reckoning
- Originally each change was reported
Originally each change was reported
- for some objects packets were generated as fast as possible
for some objects packets were generated as fast as possible (i.e., at (i.e., at frame frame rate) rate)
- flooded
flooded the network and the network and overloaded
- verloaded the CPUs
the CPUs
- Objects and ghosts
Objects and ghosts paradigm to reduce the packet traffic: paradigm to reduce the packet traffic:
- bjects
- bjects place packets onto the network only when their home node
place packets onto the network only when their home node determines that the others can determines that the others can no longer predict no longer predict their state within a their state within a certain threshold certain threshold
- the other
the other nodes maintain nodes maintain ‘ghost’ ‘ghost’ copies copies
- predict
predict the current the current location using location using the last the last known direction known direction, velocity, , velocity, and location and location
- iii. Predictive
- iii. Predictive Modelling
Modelling Algorithms 2 (3) Algorithms 2 (3)
- When new packets arrive, the ghost object is seen to move
When new packets arrive, the ghost object is seen to move
- ver or back slightly
- ver or back slightly
- Larger
Larger thresholds mean fewer packets but larger jumps thresholds mean fewer packets but larger jumps
- Helps also to cope with packet losses
Helps also to cope with packet losses
- Current properties are good for prediction if the object does no
Current properties are good for prediction if the object does not t move wildly move wildly
- if
if it does, another packet is most likely it does, another packet is most likely to be received to be received soon soon
- The heartbeat