## 2 Materials and Methods
### Overall Methodology
Generally, MPC is used for the short-term control of continuous systems to cope with unanticipated or indescribable dynamics. Examples of such applications are robot motion control and collision avoidance [36], production control [34; 37], supplier management [38], or energy and building management [39]. Further information on examples, implementations, and MPC, in general, can be found, e.g., in [40]. Nevertheless, the general scheme also applies to planning scenarios with longer time horizons. The MPC scheme applies a combination of two connected control loops, as depicted in Figure 2. The closed loop tethers to the controlled, real-world system. At distinct sampling instance \(t_{i}\), the closed loop measures the current state of the real-world system denoted as state \(x_{i}\). These sampling instances are distributed according to the sampling step size \(T\). Afterward, the state gets forwarded to the open-loop optimization. This optimization uses so-called system models to estimate events and responses in the real-world system, and tries to obtain an optimal control sequence \(u=\{u_{1},u_{2},\ldots,u_{P}\}\) for a simulated prediction horizon \(N=P\times T\) with \(P\) denoting the number of planning periods of length \(T\). The algorithm then passes this sequence back to the closed-loop control, which extracts the first control \(u_{1}\) for the current sampling instance \(t_{i}\) and applies it to the real-world system. As time progresses and reaches the next sampling instance \(t_{i+1}\), the cycle starts over by measuring the current state of the system \(x_{i+1}\) and thus, by evaluating the effects of the provided control. The MPC scheme provides a viable baseline for the implementation of a decision-support system. It thereby implements the monitoring policy by selecting suitable values for the sampling step size, whereas the state defines all values that must be measured and monitored. In terms of the scheduling of offshore operations, the decision-support system should monitor deviations from a  
Figure 2: Schematic depiction of the Model Predictive Control scheme (following [9]). given plan/schedule. As the open loop already provides an optimized plan, deviations can be recognized quickly. As an intervention policy, this approach devises new schedules as recourse action, reacting to deviations by incorporating them into a new plan. Where, for most common applications, the sampling step size \(T\) is only a few seconds or less, the adaptation of the MPC to the scheduling of offshore operations allows for substantially longer horizons. For this article, \(T\) is chosen as either 84 or 168 h, i.e., one week. The prediction horizon is generally varied between \(N=168\) h (one week) and \(N=540\) h (three weeks), as explained in more depth in Section 2.3. Due to the long horizons, each control subsumes a set of operations to be conducted within the corresponding week, thus representing a plan. Therefore, the control for the next sampling step size is considered a short-term plan, while the open loop's optimal control sequence can be considered a mid- to long-term plan depending on the choice of \(P\). As each plan consists of several operations, the realization of this plan is prone to failure. For the described scheduling problem, the primary source of dynamics stems from uncertainties in weather forecasts, and thus from uncertainties about the real duration of operations. In this context, a plan fails if an operation finishes too early or if it takes so long that follow-up operations cannot commence in time. Thus, plans may fail or finish before the next sampling instance. In the context of a decision-support system, it is a viable assumption that information on plan failures is available to the system. Moreover, as operations take a long time, it can be assumed that deviations from the plan can be anticipated early enough, to devise a new plan, i.e., to implement recourse actions. Therefore, the algorithm loosens the notion of sampling instances for this application.