Using Digital Twins for Simulation
Digital twins have historically been employed as a tool for simulating the detailed behavior of a complex physical entity, like a jet engine. ScaleOut Digital Twins takes digital twin simulations in a new direction: simulation of large systems with many entities. In addition to using real-time digital twins for streaming analytics, its highly scalable, in-memory computing architecture enables it to use digital twins to simulate many thousands of entities and their interactions. This provides a powerful new tool for extracting insights about complex systems that today’s managers must operate at peak efficiency. Its analytics and predictive capabilities enable better predictions and improved decision making.
Developers can use simulations in two primary use cases:
to implement a workload generator for validating real-time analytics code in simulation prior to deployment in a live system, and
to build a time-driven simulation model of a large system with many interacting entities for use as a tool for analysis and prediction.
Both use cases require a simulation platform that can host a large population of digital twin objects that represent simulated devices or other data sources and deliver high throughput. With its scalable, in-memory computing platform running on a cluster of servers, ScaleOut Digital Twins provides just that.
Building a Workload Generator for Real-Time Analytics
Digital twins can implement a workload generator that generates telemetry used in validating streaming analytics code. Each digital twin object models the behavior of a physical data source, such as a vehicle in fleet, and the messages it sends and receives. When running in simulation, thousands of digital twin objects can then generate a telemetry workload that feeds streaming analytics, such as a telematics application, designed to track and analyze its behavior. In this way, ScaleOut Digital Twins enables digital twin objects to implement both the workload generator and streaming analytics code. This configuration is highly useful in testing a streaming analytics application prior to its deployment in a live system.
Here’s a simple example of using a digital twin object to simulate the operations of a pump and the telemetry (such as the pump’s temperature and RPM) that it generates. The simulation uses two digital twin models. A simulation digital twin model defines the behavior of a simulated pump and generates telemetry messages. A second, real-time digital twin model implements streaming analytics by ingesting and analyzing telemetry messages from a simulated or real pump.
Running in simulation, the simulation digital twin object for a pump feeds telemetry messages to a corresponding real-time digital twin object that analyzes the telemetry to predict impending issues:

Once validated, the real-time digital twin can be deployed to analyze telemetry from an actual pump:

Using digital twins to build a workload generator enables investigation of a wider range of scenarios than are likely to be encountered in typical, real-world use. Their parameterizable, stateful models of physical data sources help evaluate the ability of streaming analytics to analyze and respond in many possible situations.
By using digital twin objects to generate telemtry, simulations can easily scale to respresent large numbers of devices. For example, you can implement a workload generator that models a large fleet of trucks by creating many instances of a digital twin model for a truck. This enables the simulation to generate workloads that correspond to the actual scale expected in a live system:

Building a Large Simulation Model
Digital twin objects also can implement a self-contained, time-driven simulation model containing large groups of interacting physical entities. For example, an airline simulation might need to model passengers, aircraft, airport gates, and air traffic sectors to assess the impact of weather delays and other outages (such as ground stops). The model uses simulation digital twin objects to maintain state information about the physical entities they represent, and they run code at time steps in the simulation model’s execution to update their state. They also can exchange messages to model interactions.
Here is a depiction of an airline tracking simulation with digital twin objects that implement aircraft airports, and passengers:

Large simulations like this help systems managers plan logistics, evaluate decisions, and identify problems. They also can model live scenarios and help make predictions about the effects of decisions, such as airline schedule changes. By using digital twin objects to implement a simulation, you can easily scale the simulation to model realistic scenarios, such as an airline with thousands of flights and hundreds of thousands of active passengers.
The ScaleOut in-memory computing platform uses a cluster of servers to seamlessly scale as the workload grows. This transparently scales both the memory and CPU available to run the simulation:

You can vary the speed that a simulation runs relative to real time. For example, simulations can run at the same speed as real time to help demonstrate and visualize evolving behavior. They can run faster than real time to deliver predictions as quickly as possible.