Predicting the future
In this lesson you will learn how simulations in Elara can be used to predict the future.
Generating future events
When deriving descriptive insights, you have historical data to fall back on. With predictive insights, we need to predict activity that hasn't occurred yet. Elara provides a convenient mechanism to generate events in the future.
In an Elara model, processes are able to schedule other processes to occur in the future. One interesting case is when you get a process to schedule itself, recursively. For example, you can create a model where an event occurs periodically. Consider procuring stock every day. When you procure stock on Monday you can schedule the process to repeat in 24 hours time. You end up with a chain of events like:
This pattern is used extensively in predictive simulations. You can recursively set up processes for predicting future sales (daily or hourly, say), schedule the beginning and end of shifts (for each staff member), predict breakdowns of equipment (that occur randomly), and more. The duration between events can by dynamic, and the details of processes can depend on the state of the simulation at that point in time. A simulation will typically have many different types of processes scheduled or "in flight" at a given point in time.
You can easily configure the simulation to terminate at a specified date-time or under programmed conditions, so the simulation will terminate eventually.
Randomness and Monte Carlo simulation
Uncertainty is the only certainty there is. No-one can know precisely what the future will hold. We can, however, make informed predictions based on statistical knowledge. For example, the weather bureau might predict a 75% chance of rain tomorrow.
Elara models uncertainty by embracing randomness in simulation processes. The simulations use the Monte Carlo approach by performing random sampling when a process with uncertainty is encountered. For example, if in the simulation there is a 75% chance of rain then you'll see rain three-quarters of the time (and sunny weather otherwise). You can (optionally) create an ensemble of Monte Carlo trajectories and produce a spectrum of possible future outcomes (some with rain and some with sunshine).
Randomness can be "programmed" into the model directly, using the random functions provided by East. Doing this well can require skill and care from an experienced practitioner. However a more accurate and data-driven approach may be to use machine learning to predict the likelihood of certain occurrences based on historical events.
Machine learning
Machine learning is another central feature for Elara. It is included primarily to aid in the prediction of future processes and events. It allows you to build "accurate enough" simulations of messy real-world processes easily, without requiring years of analysis or a PhD in maths.
Machine learning models are first trained on historical data. An ML model is a "learned" function from some features to an output value. During training you provide a series of examples. Generally these are historical datasets listing the features and outputs observed in the past. The trained model can make a prediction of the output value based on provided features. Machine learning is famously versatile and adaptable, and can be applied to a wide variety of situations.
Using ML does not necessarily introduce randomness into your simulation model. Machine learning functions in Elara can be set as deterministic (using a maximum likelihood approach) or statistical (predicting the probability of a range of possible outcomes, and sampling that), depending on your needs.
Next Steps
In the
next lesson you will learn use Elara to recommend decisions based on scenario comparison and automatic optimization.