Modelling uncertainty

How is duration uncertainty modelled?

We use Monte Carlo simulations to assess the impact that duration uncertainty of activities that are not completed can have on the overall risk profile of the project. 

Uncertainty stems from two different sources - the duration uncertainty that an activity has with respect to its completion, and the further impact that a discrete risk event can have on that uncertainty. 

Focusing on duration uncertainty, you can select the type of uncertainty distribution, parameterise it with respect to minimum, probable and maximum values, and apply it on an activity or WBS level.  

You can also use the AI toggle to get a recommendation on the duration uncertainty, based on the performance of activities that have been completed to date, and are similar to that selected activity. More information under the Prediction section

How are risk events modelled?

Risk events are modelled by their probability of occurrence and their impact on activity duration. 

During modelling, the probability of occurrence of risk events is sampled uniformly from a range of two probabilities, which you define in the Risk Event Template. In this screen you can also define the impact that this risk event has on the duration of that activity.

Risk events have an additive effect on duration uncertainty. Thus, when a risk event does occur, its duration impact is added on the activity duration. If more than one risk event is added on a specific activity, and during a given simulation more than one risk occurs, that activity will receive the summation of the risk events’ impact. 

Do you take calendars into account when modelling uncertainty? 

Yes, the impact of all the calendars you use is taken into account! 

We use your calendars to generate a business time calendar that is appropriate for each activity, depending on the specific calendars you have applied. We then use that business calendar of each activity to calculate the start, finish (and therefore duration) of each activity, in a way that guarantees compliance with the calendar you have assigned. This logic is also applied to float calculations and relationship lags.  

Do you take constraints into account? 

Yes, all constraints are taken into account during modelling, in a way that is consistent with how all major scheduling platforms process them, incl. Oracle Primavera P6. 

Some constraints require special treatment - specifically Mandatory Finish and Mandatory Start constraints are hard constraints that can break the logic of the schedule, and are therefore applied at the end of each Monte Carlo iteration

How does lag impact uncertainty modelling?

A lag represents delay on the start of a successor activity and is given as a number of days (hours or minutes). Lags are applied due to various reasons such as physical or resource constraints for the successor activity. They are defined on activity relationships and can be positive, zero or negative. A negative lag is also known as lead. A lead is applied when a successor activity should start before the end of the predecessor.

In our model, lags for each relationship are applied to the start point of the relationship and affect the finish-point of the relationship, i.e. for an FS relationship the corresponding lag will be added on the finish time (F) of the predecessor such that the start (S) of the successor can start only after the F plus the lag. 

Lags for each relationship are applied to the start point of the relationship and affect the finish-point of the relationship, i.e., for an FS relationship the corresponding lag will be added on the finish time of the predecessor such that the start of the successor can start only after the finish time of the predecessor plus the lag. 

Business time calendars are used to determine the absolute duration of the lag. Lag calendars can inherit from the predecessor or the successor in the relationship depending on what is defined on schedule data. Alternatively, a 24-hour calendar is adopted.

How do results compare with other tools like Primavera Risk Analysis?

We regularly and thoroughly check all results to ensure compatibility with existing tools like Oracle Primavera Risk Analysis. In this case, our results differ at most by 0.5% on P80 positions for both small schedules (a few hundred activities) and large schedules (thousands of activities). 

At the same time we are typically 10x faster in producing results, which helps you transtion to an almost real-time risk analysis mentality.

SettingsNodes & Links RiskPrimavera Risk Analysis
Speed to run (50k activities)100s1200s
Speed to run (5k activities)15s230s
Completely Random SamplingYesOptional
Latin Hypercube SamplingNoOptional
Number of iterations1,000Configurable

I suspect my schedule has cycles. How does that affect uncertainty modelling? 

No need to suspect - you can check that hunch by heading to the Health checks and confirm whether cycles indeed exist in your schedule.

Cycles can create several challenges when modelling the impact of uncertainty, as they can create infinite loops, where a delay is perpetuated within that cycle. 

We resolve this by identifying the activities involved in that cycle, and order them based on their scheduled start time. In this way, we guarantee that the correct order is enforced and that the activity sequence can be used to model the impact of uncertainty. 

In step with PMBOK, we always advocate for schedules to contain no cycles to ensure modelling uncertainty is maintained as high as possible. 

.