MitC: Open-source software for construction project control and delay mitigation

.


Motivation and significance
Probabilistic simulations are typically employed in construction project scheduling to estimate the project's duration given a predefined probability level.However, the project schedule can change during the project execution phase, impacting (i.e., delaying) the project's completion time.Two factors cause delays in the project's completion time, the variations in the durations of activities and the occurrence of risk events.To prevent such a delay, mitigation measures are usually used.Mitigation measures are actions that can be taken to reduce the project's duration.In the context of this paper, mitigation measures are equivalent to crashing activities.Every mitigation measure can reduce the duration of one or more activities resulting in reduced project duration.Several studies have addressed the topic of identifying the most effective delay mitigation measures and finding their influence on the project's duration [1][2][3][4].Such mitigation measures reduce the durations of the critical activities of a project so that the project's duration again matches the planned duration.
The classical approach for identifying and selecting mitigation measures does not reflect the actual behavior of project managers who react to scheduling deviations during the project execution.The classical approach constitutes repeated Monte Carlo (MC) simulations with different subsets of mitigation measures.The subset of mitigation measures that leads to the required probability level of the desired project's duration is then selected [5,6].This method implies that the same mitigation strategy (i.e., a combination of mitigation measures) is used within every Monte Carlo simulation regardless of the reason or amount of delay incurred in each simulation iteration.This simulation approach contains a fundamental modeling error because it does not properly model the project manager's goal-oriented behavior where optimization is intuitively carried out by the project manager.The project manager in real life would select only the mitigation strategy (i.e., combination of measures) that could meet the requirements of meeting the target completion time.Every iteration of the Monte Carlo simulation should be equivalent to a real-life scenario.Hence, the classical approach of incorporating mitigation measures does not correctly reflect the actual behavior of project managers.Another disadvantage of fixing the mitigation strategy in all iterations is that the results become overly conservative because mitigation measures might not be necessary for some iterations where the delay is short.This, consequently, leads to an inaccurate and misleading cumulative probability curve of project completion time (S-curve).
To overcome the problems above, the selection of the mitigation strategy should incorporate mitigation measures that prove to be the most cost-effective.This means that a mitigation measure can be part of the mitigation strategy in only some simulation iterations (thus, only under some scenarios).This paper introduces the Mitigation Controller (MitC) software, a tool that automates finding the optimal mitigation measures for construction projects.Using control theory concepts, the MitC can reflect the project manager's control behavior by solving an optimization problem within each iteration of the MC simulation, where each iteration represents a potential real-life scenario.The optimization engine developed within the MitC aims at maximizing the timely completion probability of a project while keeping the cost overrun to a minimum.The type mitigation measures considered in the software is ''activity crashing''.Hence, this does not affect the network structure.
The Mitigation Controller introduced here constitutes an opensource code written in Matlab© language as well as a Graphical User Interface (GUI) to facilitate its use, especially for project managers who have little or no prior programming background.This application of control concepts has not been incorporated yet neither in the industrial tools (e.g., Primavera) nor in the scientific construction scheduling literature.Hence, the introduced software is considered an important addition to the construction project industry.This paper focuses on the application of the MitC software rather than the theoretical background behind it.Extensive information on the theory and algorithm details behind the MitC can be found in the repository [7] or in the previously published paper on the Mitigation Controller [8].

Mitigation controller objective and consideration
The main purpose of the Mitigation controller is to provide a tool that reflects the actual control behavior of project managers when mitigating project delays and therefore reduces the modeling errors.Another objective of the MitC is to automate and optimize the delay mitigation process in construction projects so that the timely completion probability of the project is maximized while keeping the net cost to a minimum.To fully achieve those objectives, the MitC considers several stochastic and managerial aspects in its simulation engine.Table 1 provides an overview of the various primary aspects considered within the MitC.The MitC allows incorporating risk events as well as uncertainties on planned construction activities and mitigation measures within the simulation, resulting in an even more accurate model.It also considers the correlation between the activities' durations and allows contractual penalty/reward schemes in the simulation.Fig. 1 depicts the input data required by the MitC software, which includes (a) activity description, associated probabilistic duration and relation with other activities, (b) mitigation measure description, associated probabilistic mitigation capacity and cost, and relation with the activities, (c) risk event description, associated probabilistic risk duration, affected activities and probability of occurrence, and (d) shared uncertainty factor description, associated probabilistic duration and relation with the activities.

Software architecture and Graphical User Interface (GUI)
The Graphical User Interface (GUI) and the software architecture are provided in Fig. 2. The Graphical User Interface of the MitC (Fig. 2-a) is created with the App Designer in MATLAB R2020b.Table 2 describes the different components within the GUI.
The inputs of the Mitigation Controller are provided by the user using an intuitive pre-designed spread-sheet form following the structure presented in Fig. 1, which is then imported into the software.The user is responsible for providing data on the project.Once the simulation is run, the software performs the operations shown in the flowchart in Fig. 2-b.The Mitigation Controller considers the durations of the activities and the occurrence of risk events in the simulation, which are determined using a random sampling process.In every iteration, the software calculates the project completion duration and compares it to the planned/target duration.If the actual completion duration exceeds the planned duration, the software identifies the most effective mitigation strategy to reduce the project duration considering potential penalties and rewards.
The main output of the MitC is the optimal mitigation strategy considering the overhead cost of the mitigation measures, rewards in case of early completion, and penalties in case of late completion.Other results include (1) activities criticality, (2) network paths criticality, (3) mitigation measures criticality, (4) cost probability distribution, and (5) project completion probability distribution (S-curve).More details on the inputs, outputs, and the use of the software can be found in the documentation (https://github.com/mitigation-controller/mitc).

Table 1
Summary of the aspects considered within the Mitigation Controller.

Aspects Description
Risk events occurrence and impact Various risks can impact a project throughout its execution phase leading to partial or entire construction operation being interrupted for an extended period of time.Ignoring these risks results in project delays and/or cost overruns.The occurrence of risk events is modeled in the MitC using the Bernoulli distribution model.The risk event's impact (i.e., the delay the risk would induce) is represented by a random variable that follows the Beta-PERT distribution, defined by three duration estimates under the most pessimistic, likely and optimistic scenarios.The distribution of every risk event is used for sampling in the Monte Carlo simulation.
Duration uncertainty of project activities Each activity duration, mitigation measure capacity (measured in duration), and risk event delay is given three duration estimates: minimum, most likely, and maximum.The three-point estimate is used to build a PERT distribution for the random sampling in the Monte Carlo simulation.

Mitigation capacity uncertainty of mitigation measures
Delay uncertainty of risk events

Mitigation cost uncertainty
The cost uncertainty of the mitigation measure is linked to its capacity uncertainty.That is, the mitigation cost depends on the outcome of the mitigation capacity in a given iteration.More information on the mitigation cost definition can be found in [8].
Contractual penalty and reward schemes Contractual penalties or rewards can be included in the simulation as a daily economical penalty in case of delay and daily economical reward in case of early finish.This results in the lowest net cost.

Correlations between activity durations
The uncertainties in the durations of the activities are caused by several factors, such as site conditions, weather, and labor skills, which can impact the timely execution of construction activities.These factors may simultaneously impact several activities in a particular project and may result in correlated activity durations.The MitC considers the correlations between activities by dividing the duration of activities into two parts, the uncorrelated and correlated durations.The correlated duration can be shared by several activities at the same time.This, in turn, generates implicit correlations between the durations of activities.

Software functionalities
This section describes the optimization approach implemented in the MitC.An optimization problem is solved within each iteration of the MC simulation.The optimization problem aims at finding the optimal set of mitigation measures that minimize the net cost.Fig. 3-a shows three possible optimization scenarios that could occur.In Scenario 1, which occurs when both penalty and reward are relatively high, the new project duration (i.e., after applying the mitigation strategy) is lower than the target duration.The net cost, in this case, is the mitigation cost minus the reward for early completion.In Scenario 2, when both penalty and reward are relatively low, the new project duration is larger than the target duration.The net cost is then the mitigation cost plus the penalty.In Scenario 3, when the penalty is high and the reward is low enough not to compensate for the application of further mitigation activities, the new project duration is roughly equal to the target duration.The net cost, in this case, is the cost of the selected mitigation measures in that iteration.Fig. 3-b,c,d provide graphical representations of the optimization problem corresponding to the three scenarios.As shown, the optimization problem is a minimization of the net cost.More information on the rationale behind the mathematical formulation of the optimization problem can be found in [8].The results of the MC simulation are used to create the cumulative probability distribution of project completion (S-curve) as well as other outputs.The MitC outputs will be discussed in the next section.

Application of the MitC software to a Dutch construction project
This section briefly describes the software's functionality and shows the software's main outputs through an example.Furthermore, detailed documentation and recorded tutorials have been included in the repository.
The use of the MitC software is demonstrated here with an application to a sub-project of a real construction project.The analyzed sub-project is composed of 19 activities.The initially  Load project data Opens a file browser to select an .xlsxproject.

Select save folder
Opens a file browser to select the folder to store the simulation results.A timestamped folder will be created in the selected directory.

Run simulation
Press to run the simulation and disable all inputs.The button will remain disabled when the user has not selected any project data or a save directory.

Documentation
Link to the online user instruction on GitHub.

Reset
Resets the GUI.

Close
Close the GUI.

Logging
Message window Displays messages, warnings, and errors.

Lamp
Displays the status of the simulation setup.Green: ready to run the simulation.Orange: missing inputs.Red: error.
planned duration of the project (i.e., target duration) is T tar = 1466 days.As will be shown later in the results, the probability of completing the project within this duration is very low due to the presence of risk events and durations uncertainties; hence, a mitigation strategy is needed.Fig. 4 shows the project Gantt chart, highlighting the critical path as initially reported in the original planning.This figure is provided for the sake of comprehension, and it is not an output of the software.Note that this critical path is meaningless when performing stochastic simulations in which the durations of activities randomly change.In this example, a list of 19 risk events is identified and included.A set of mitigation measures is introduced to mitigate any potential project delay.All input data related to this example can be found in the online repository.We analyze four different cases by varying the amount of penalty and reward.Fig. 5 shows the cumulative probability curves of the project's completion time (S-curves) for each of the four cases.In each case, the result of the MitC (i.e., bold curve), which chooses only the cost-effective mitigation measures in every Monte Carlo iteration, is compared to extreme cases where the mitigation measures are either all used (All Mit) or not used at all (No Mit).

Case 1:
No penalty, no reward (Fig. 5-a) In the first case, neither a penalty nor a reward is present.The only parameter the MitC considers in this case is the cost of the mitigation measures.Hence, to minimize the net cost, the MitC avoids applying any mitigation measure to incur additional costs.Therefore, the curve of the MitC coincides with the curve of No Mit.

Case 2:
High penalty, no reward (Fig. 5-b) This case comprises a high contractual penalty for any incurred delay and no reward for early completion.The MitC in this case selects the most cost-effective mitigation measures that prevent any project delay, also avoiding over-mitigation.In other words, the MitC maximizes the probability of project completion at the planned duration (probability of 0.97 at T = 1466 days).
In some cases, when the penalty is low, the cost of applying mitigation measures might become higher than the penalty (see Case 4).The MitC would then allow for some delay as long as the net cost is minimized.

Case 3:
High penalty, high reward (Fig. 5-c) In Case 3, both penalty and reward are high.In this case, the MitC attempts to mitigate the project duration as much as possible so that penalties are avoided and rewards are gained.As shown in Fig. 5, The MitC curve coincides with the All Mit curve.It is worth noting that although the two curves coincide, the MitC does not necessarily exhaust all available mitigation measures since some of the available measures might not be effective.This means that the MitC would reduce the net cost despite yielding the same probability level as All Mit.
3.4.Case 4: penalty and reward with the same order of magnitude as the average cost of mitigation measures (i.e., typical case) (Fig. 5-d) In this last case, penalty and reward exist simultaneously with a similar magnitude as the average cost of the mitigation measures.Within every iteration, the MitC identifies the optimal mitigation strategy that produces the lowest net cost considering both penalty and reward.Depending on the activities' durations and the risk events in a given iteration, the MitC might opt for either an early completion or a delay so that the net cost is minimal.Hence, in this case, the target duration is not governing the optimization problem as the probability of timely completion of the project is just 0.5.
Regarding the costs, Fig. 6 compares the estimated net cost obtained in Case 4 for two mitigation strategies, MitC and All Mit.The net cost is the sum of the mitigation cost, rewards in case of early completion, and penalties in case of late completion.A significant cost reduction can be obtained using the MitC compared to the scenario where all available measures are performed simultaneously.The maximum cost recorded when using the MitC is 0.86M Euros, while it is 4.46M Euros when all measures are used in all iterations.This demonstrates the argument discussed in the Introduction section that the traditional probabilistic approach (All Mit) overestimates costs (by 3.6M Euros or 81% in this example).This cost overestimation results from the modeling error in the classical simulation approach.

Impact
The MitC is a support tool for automating the process of finding the most effective set of mitigation measures to maintain a required probability of a project's timely completion.Given that the model provides a more accurate representation of the project evolution, project managers using MitC at the project execution stage will have a clear advantage in competitive bid processes.The S-curves produced by the software showing the probability of project target completion time are crucial for making effective managerial decisions as they incorporate the manager's control behavior.Therefore, they accurately represent the current state of the project.Thus, MitC can act as an early-warning system for project managers to take prompt and effective mitigation actions during the project execution.The MitC can be applied in the tender or execution phase.In the execution phase, ongoing activities (i.e., partially completed) can be modeled as activities that are 0% completed with the uncertainty band being adjusted.
Stochastic control tools that utilize optimization algorithms are not present in the available project control solutions.Project managers highly rely on their expertise and judgment when  controlling their projects.While the MitC does not eliminate the need for the project manager's intervention, it is an essential tool that helps the manager make optimal decisions.Moreover, The MitC GUI developed on top of the main algorithm removes most contractors' obstacles.Contractors want a ready and easy-to-use tool rather than a code.The MitC GUI has been developed to overcome this problem and increase the tool's impact.The use of MitC is also not limited to the construction industry.It can be used in any industry that performs project control and schedule optimization.The MitC was initially created for teaching purposes and is currently used in a Master's course at the Delft University of Technology.Nonetheless, it has been extended for research purposes and industrial applications.The MitC is published with an opensource license on GitHub, allowing the research community and industry to develop the software further and tailor it to their needs.Hence, the MitC is currently oriented towards research, industry, and teaching.

Conclusions
The essence of modeling is to represent the real world by a model.Models cannot capture the exact real behavior; however, they must guarantee that the most relevant aspects to be considered are accurately reflected.
Classical probabilistic construction planning theory and its applications are based on a fundamental modeling error: scientific researchers and state-of-the-art scheduling software (e.g., Primavera) do not consider the project manager's goal-oriented and control behavior during project execution.
This paper introduced the Mitigation Controller (MitC), a software tool to simulate and optimize finding the most effective delay mitigation strategy in construction projects.The MitC combines the PERT scheduling approach with Monte Carlo simulation to generate the project completion probability curve (i.e., the S-curve).The MitC removes the modeling error present in the traditional delay mitigation approach by reflecting the human control action in the simulation.It considers several essential modeling aspects while finding the optimal mitigation strategy, such as the stochastic variations in the activities' durations, mitigation capacities (i.e., mitigated duration), and mitigation costs.It also accounts for potential risk events that could impact the project's duration.Moreover, the MitC captures the correlations between the activities' durations and incorporates performance schemes (penalty/reward) in the optimization problem.By accounting for these various aspects, the MitC returns a realistic estimate for the timely completion probability of the project.The MitC has been created with several end-user groups in mind: students, researchers, and project managers.These target groups can utilize the software and tailor it to their needs using the developed GUI or the open-source code.
The paper's results proved that the classical probabilistic construction planning is overly conservative in the number of required mitigation measures, resulting in over-spending.It was also shown that the adopted penalty/reward scheme determines the optimal completion date of the project.
The MitC in its current form does not allow choosing custom distributions in the Monte Carlo simulation.It is restricted to the Beta-Pert distribution.Moreover, the software assumes unlimited personnel and material resources when selecting mitigation measures.Future work will be oriented to addressing these limitations.The MitC is under continuous development to allow additional features and state-of-the-art solutions.

Declaration of competing interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Fig. 1 .
Fig. 1.Examples of input data required by the MitC software.

Fig. 5 .
Fig. 5. Cumulative probability of project completion time for four cases: (a) Case 1: no penalty, no reward, (b) Case 2: high penalty, no reward, (c) Case 3: high penalty, high reward, (d) Case 4: penalty and reward with the same order of magnitude as the average cost of a mitigation measure.

Fig. 6 .
Fig. 6.Cost distribution obtained from the MC simulation for the Tentative (MitC) and Permanent (All Mit) mitigation strategies.

Table 2
Description of the GUI components.
Parameters Nr. simulations Set the number of Monte Carlo runs.Target project duration Set projected project duration in days.Penalty Daily penalty for late completion.Incentive Daily reward for early completion.Buttons Switch Switch to choose between the Basic and Advanced versions.The latter enables the Penalty and Incentive parameters.