1 Introduction

A dynamically positioned (DP) vessel is defined by the International Maritime Organization (IMO) and certifying class societies (DNV, ABS, LR, etc.) as a vessel that maintains its position and heading (fixed position or pre-determined track) exclusively by means of active thrusters. Over the last five decades, deep water dynamic positioning systems (DPSs) have been used in the marine sector, oil and gas industries, and military services for many tasks, such as drilling, oil and gas floating production platforms, cable and pipe laying, docking and towing, and maintaining the side-by-side arrangement of FPSO and shuttle tankers [1]. Descriptions of DPSs, including their early history can be found in [2].

Three degrees of freedom (DOF) motion control (i.e., surge, sway, and yaw) has been generally regarded as adequate for most of DP vessels (see, for example [3,4,5,6,7,8,9,10,11]). However, for certain marine constructions, particularly those with small waterplane area and low metacentric height, which results in relatively low hydrostatic restoring force compared to inertial forces, unintentional coupling between the vertical and horizontal plane motions can be invoked through the thruster action, as discussed in [12]. Semi-submersible platform is a typical example of the type of marine constructions with these problems, since it has natural periods in roll and pitch in the range of 35–65 s, which are generally within the bandwidth of the thruster action. Sørensen and Strand [13] argued that roll and pitch motion may be unintentionally excited by the thruster system, which is only supposed to act in the horizontal plane, emphasizing the roll and pitch amplitudes. These oscillations should be essentially suppressed to avoid discomfort for the crew and limited operations.

Sørensen and Strand [12] proposed a new model based on a multivariable control strategy accounting for both horizontal and vertical motions, with the exception of heave, and showed that significant roll and pitch damping could be achieved. Jenssen [14] applied a thruster feedback control from the pitch rate to mitigate pitch motion in the DP controller. Xu et al. [15] proposed extending the roll and pitch damping controller by adding acceleration feedback, and showed a reduction of horizontal motion positioning accuracy after employing the roll and pitch control law. Jin et al. [16] subsequently investigated specifical positioning accuracy analysis for a DP platform with the same roll and pitch motion control strategy. Distinct from these studies, a novel roll–pitch motion controller incorporating proportional roll and pitch motion control was proposed by the authors [17]. As a continual study of that, this paper conducts a sensitivity analysis of the tuning parameters of the novel roll–pitch motion controller.

For a controller used in DP operation, tuning parameters can significantly influence the positioning performance. Sensitivity analysis may be broadly defined as the investigation of such changes and their effect on the underlying model [18]. Thus, sensitivity analysis of the tuning parameters can help guide achieving better performance of the controller when applying the novel controller for operation. Therefore, this paper focuses on sensitivity analysis of the tuning parameters on the controller performance in suppressing large roll and pitch motion. To quantify the positioning performance of the controller, a possible criterion containing several key variables representing different perspective of the positioning performance is first proposed. Meanwhile, we suggest a weighting coefficients optimization method by (NSGA) non-dominated sorting genetic algorithms algorithm, to avoid one or some of the variables may dominate the final criterion. The sensitivity analyses are conducted based on time domain simulations for a dynamically positioned semi-submersible platform.

This paper is in five sections. A mathematical modelling of the DPS including roll and pitch motion controller is given in Sect. 2. Section 3 proposes a methodology for conducting the tuning parameter sensitivity analysis, where a positioning performance criterion and weight coefficients optimization means is suggested. The controller tuning parameter sensitivity analyses for a semi-submersible platform are performed in Sect. 4. Finally, conclusions are summarized in Sect. 5.

2 Mathematical modelling

2.1 Kinematics

Figure 1 shows the different right-handed coordinate systems used in this paper and described below [12].

  • The global or Earth-fixed coordinate system is denoted as the \(X_{G}Y_{G}Z_{G}\) coordinate system.

  • The vessel-parallel \(X_{V}Y_{V}Z_{V}\) coordinate system is fixed in the global coordinate system and rotated to the desired heading angle, \(\psi _{0}\). The origin is translated to the desired x and y position.

  • The body-fixed XYZ coordinate system is fixed to the vessel body with the origin located at the mean oscillatory position in the average water plane with \((x_{G}, 0, z_{G})\), and the X axis pointing towards the head of the vessel.

For the convenience to derive the dynamics of the vessel, transformation between the different coordinate systems are expressed below. The linear and angular velocity of the vessel in the body-fixed coordinate system relative to the global coordinate system is given by Eq. 1.

$$\begin{aligned} {\dot{\varvec{\eta }}} = \left[ \begin{array}{c} \dot{\varvec{\eta }}_1 \\ \dot{\varvec{\eta }}_2 \\ \end{array}\right] = \left[ \begin{array}{cc} \varvec{J}_1(\varvec{\eta }_2) &{} \varvec{O}_{3 \times 3} \\ \varvec{O}_{3 \times 3} &{} \varvec{J}_1(\varvec{\eta }_2) \\ \end{array}\right] \left[ \begin{array}{c} \varvec{v}_1 \\ \varvec{v}_2 \\ \end{array}\right] = \varvec{J}(\varvec{\eta }_2)\varvec{v}. \end{aligned}$$
(1)

The vectors defining the vessel’s global coordinate position and orientation, and the body-fixed translation and rotation velocities are

$$\begin{aligned} \begin{aligned} \varvec{\eta }_1&= \left[ x \quad y \quad z\right] ^{\text {T}} {,}&\varvec{\eta }_2&= \left[ \phi \quad \theta \quad \psi \right] ^{\text {T}} { ,} \\ \mathbf {v}_1&= \left[ u \quad v \quad w\right] ^{\text {T}} { ,}&\mathbf {v}_2&= \left[ p \quad q \quad r\right] ^{\text {T}} { .} \end{aligned} \end{aligned}$$
(2)

The transformation matrix \(\varvec{J}(\varvec{\eta }_2) \in {\text {{SO}}}(3) \times \mathbb {R}^{3 \times 3}\) is as defined in [5].

Fig. 1
figure 1

Reference coordinates

2.2 Nonlinear low frequency vessel model

The nonlinear 6 DOF coupled equations of the low frequency motions are

$$\begin{aligned} \mathbf {M}\dot{\mathbf {v}} + \mathbf {C}_{\text {RB}}(\mathbf {v})\mathbf {v} + \mathbf {C}_{A}(\mathbf {v}_{r})\mathbf {v}_{r} + \mathbf {D}(\mathbf {v}_{r}) + \varvec{G}(\varvec{\eta }) = \varvec{\tau }_{\text {env}} + \varvec{\tau }{ ,} \end{aligned}$$
(3)

where \(\mathbf {M}\) is the system inertia matrix including the added mass, see [19] for a detailed expression; \(\mathbf {C}_{\text {RB}} \in \mathbb {R}^{6 \times 6}\) is the skew symmetric Coriolis and centripetal matrix due to the rotation of the body coordinate system about the inertial earth coordinate system, see [20] for a detailed expression.

Wichers [21] divided the current effect into potential and viscous parts. The potential part was formulated as [20], which includes Munk moments, \(\mathbf {C}_{A}(\mathbf {v}_{r})\mathbf {v}_{r}\). The damping vector may be divided into nonlinear and linear components according to

$$\begin{aligned} \mathbf {D}(\mathbf {v}_{r}) = \mathbf {D}_{L}\mathbf {v} + \mathbf {d}_{NL}(\mathbf {v}_{r}{ ,} \varvec{\gamma }_r){ .} \end{aligned}$$
(4)

For most vessels, it is difficult to calculate the damping coefficients. Therefore, a combination of empirical formulas, model tests, and computational fluid dynamics (CFD) are used to find the damping coefficients. The detail formulation of \(\mathbf {D}(\mathbf {v}_{r})\) can be found in [22]. Here, small roll and pitch angles are assumed, such that the restoring vector \(\varvec{G}(\varvec{\eta })\) can be linearized to \(\varvec{G}\varvec{\eta }\), where \(\varvec{G}\) is a matrix of linear generalized gravitation and buoyancy force coefficients and is written as follows for xz-plane symmetry.

$$\begin{aligned} \varvec{G} = \left[ \begin{array}{cccccc} 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 \\ 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 \\ 0 &{} 0 &{} Z_z &{} 0 &{} Z_\theta &{} 0 \\ 0 &{} 0 &{} 0 &{} K_\phi &{} 0 &{} 0 \\ 0 &{} 0 &{} M_z &{} 0 &{} M_\theta &{} 0 \\ 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 \\ \end{array} \right] \end{aligned}$$
(5)

where the coefficients \(Z_z\), \(Z_\theta\) and so on are defined in [19].

The right-hand expression of Eq. 3 represents generalized external forces on the vessel, and \(\varvec{\tau }_{\text {env}} \in \mathbb {R}^3\) represents slowly varying environmental loads, with the exception of current loads, acting on the vessel (i.e., wind, second-order mean, and low frequency wave loads). The effect of current is already included on the left hand side of Eq. 3 by the introduction of the relative velocity vector. The environmental loads \(\varvec{\tau }_{\text {env}}\) mainly contain wind loads, current loads and slowly varying second-order wave force. In this paper, only the second-order wave force \(\varvec{\tau }_{\text {wave}2}\) is considered, for details see [19, 23].

\(\varvec{\tau }\) represents the generalized forces generated by the vessel propulsion system, which can be expressed as

$$\begin{aligned} \varvec{\tau } = \mathbf {B}(\mathbf {\varvec{\alpha }})\mathbf {u}{ .} \end{aligned}$$
(6)

The vector \(\varvec{u} \in \mathbb {R}^m\) contains the force magnitudes produced by each individual actuator, and \(\alpha _i\) is the azimuth angle of the i-th actuator, defining the direction of the force produced in the vessel body-fixed coordinate system. The i-th column of the \(6 \times m\) matrix \(\mathbf {B}(\varvec{\alpha })\) is

$$\begin{aligned} B_i(\alpha _i) = \left( \begin{array}{c} \cos \alpha _i \\ \sin \alpha _i \\ 0 \\ -l_{zi}\sin \alpha _i \\ l_{zi}\cos \alpha _i \\ -l_{yi}\cos \alpha _i + l_{xi}\sin \alpha _i \\ \end{array}\right) { ,} \end{aligned}$$
(7)

and the location of the i-th actuator in the vessel is \((l_{xi}, l_{yi})\) in the body-fixed coordinate system.

2.3 Linear wave frequency model

Wave frequency motions \(\varvec{x}_W\) are evaluated using transfer functions related to the wave height, i.e., response amplitude operators (RAOs), which are obtained using numerical methods modelling the potential flow around the hull. Such an approach is grounded in the assumption of a linear response of wave frequency motions and uncoupling between wave frequency and low frequency motions. Therefore, the real position of the vessel is

$$\begin{aligned} \varvec{x} = \varvec{x}_L + \varvec{x}_W {.} \end{aligned}$$
(8)

Since the DP controller does not explicitly suppress first-order wave motions to avoid wear and tear on the thrusters [24], first-order motion will be effectively filtered off before being transmitted to the controller.

2.4 Thrust allocation logic

The thrust allocation problem can be formulated as an optimization problem [25], where the objective is typically to minimize the use of control power and the gap between desired and achieved force, subject to actuator rate and other operational constraints. The desired force (moments) comes from the corresponding control law.

Johansen et al. [26] proposed a constrained nonlinear control allocation method with singularity avoidance. The method used sequential quadratic programming, solving a convex quadratic program for each sample. Therefore, we define the optimization problem

$$\begin{aligned} \begin{aligned} J(\varDelta \varvec{\alpha }, \varDelta \mathbf {u}, \mathbf {s}) =&\sum _{i=1}^{m}\left( \frac{{\text {d}}W_i}{{\text {d}}u_i}(u_{0,i})\varDelta u_i + \frac{{\text {d}}^2 W_i}{{\text {d}}{u_i}^2}(u_{0,i}){u_i}^2\right) \\&+\, \mathbf {s}^{{\text {T}}}\mathbf {Q}\mathbf {s} + \varDelta \varvec{\alpha }^{{\text {T}}} \Omega \varDelta \varvec{\alpha } \\&+ \,\frac{{\text {d}}}{{\text {d}}\varvec{\alpha }}\left[ \frac{\rho }{\epsilon + {\text {det}}(\mathbf {B}(\varvec{\alpha })\mathbf {B}^{{\text {T}}}(\varvec{\alpha }))}\right] _{\varvec{\alpha } = \varvec{\alpha }_0} \varDelta \varvec{\alpha }{ ,} \end{aligned} \end{aligned}$$
(9)

subject to

$$\begin{aligned}&\mathbf {s} + \mathbf {B}(\varvec{\alpha }_0)\varDelta {\mathbf {u}} + \frac{\partial }{\partial \varvec{\alpha }}(\mathbf {B}(\varvec{\alpha })\mathbf {u})\Big |_{\begin{array}{c} \varvec{\alpha } = \varvec{\alpha }_0\\ \mathbf {u} = \mathbf {u}_0 \end{array}}\varDelta {\varvec{\alpha }} = \varvec{\tau } - \mathbf {B}(\varvec{\alpha }_0)\mathbf {u}_0 { ,} \end{aligned}$$
(10)
$$\begin{aligned}&\mathbf {u}_{{\min }} - \mathbf {u}_0 \le \varDelta {\mathbf {u}} \le \mathbf {u}_{{\max }} - \mathbf {u}_0 { ,} \end{aligned}$$
(11)
$$\begin{aligned}&\varvec{\alpha }_{{\min }} - \varvec{\alpha }_0 \le \varDelta {\varvec{\alpha }} \le \varvec{\alpha }_{{\max }} - \varvec{\alpha }_0 { ,} \end{aligned}$$
(12)
$$\begin{aligned}&\varDelta \varvec{\alpha }_{{\min }} \le \varDelta {\varvec{\alpha }} \le \varDelta {\varvec{\alpha }_{{\max }}} { ,} \end{aligned}$$
(13)

where \(W_i\), \(u_i\) are the i-th thruster’s consumed power and thrust force, respectively; and \(\varDelta {\varvec{\alpha }}\), \(\varDelta {\mathbf {u}}\) are the azimuth thruster’s angle and thrust difference between the current and previous time step, respectively.

The second term, \(\mathbf {s}^{{\text {T}}}\mathbf {Q}\mathbf {s}\), in Eq. 9 penalizes the error between the desired and achieved force, and the maximum and minimum forces provided by thrusters are specified through the constraints in Eq. 11. The azimuth angles \(\varvec{\alpha }\), are required to be constrained to given sectors defined by the vectors with lower and upper bounds, \(\varvec{\alpha }_{\min }\) and \(\varvec{\alpha }_{\max }\) in Eq. 12. The rate of change in azimuth is constrained in Eq. 13 and minimized by the third term in the criterion. Singularity avoidance is considered in the last term, where \(\epsilon> 0\) is required to avoid numerical problems and \(\rho> 0\) is a weighting parameter.

2.5 Roll and pitch motion control

This paper adopted the roll–pitch motion controller from previous work of the authors [17]. The horizontal motion control law can be extended to consider roll and pitch motion through couplings between horizontal and vertical plane motions, that is surge and sway feedback loops can be extended to incorporate feedback from the estimated low frequency pitch and roll motions. The novel proportional, derivative, and acceleration type of feedback controller is based on the vertical plane roll and pitch DOF motions. Conventional derivative and acceleration feedback controllers are given first, followed by a specific illustration of the proportional controller.

2.5.1 Derivative controller

Sørensen and Strand [12] first applied derivative type feedback controllers to roll and pitch DOF, and proposed a theoretical analysis to demonstrate the effectiveness of the controller in increasing roll and pitch damping. For simplicity, this paper does not extend the yaw feedback loop to incorporate feedback from the roll velocities, since coupling between yaw and roll DOF is insignificant.

A linear formulation of the roll and pitch derivative control law can be expressed as

$$\begin{aligned} \begin{aligned} \varvec{\tau }_{{\text {rpd}}}&= - \mathbf {K}_{\text {d}}^\mathrm {rp}\tilde{\mathbf {v}}^{\text {rp}} { ,} \end{aligned} \end{aligned}$$
(14)

where the roll and pitch controller gain matrix, \(\varvec{K}_{\text {d}}^\mathrm {rp} \in \mathbb {R}^{2 \times 2}\), is defined as

$$\begin{aligned} \varvec{K}_{\text {d}}^\mathrm {rp} = \left[ \begin{array}{cc} 0 &{} k_{xq} \\ k_{yp} &{} 0 \\ \end{array}\right] { ,} \end{aligned}$$
(15)

where \(k_{xq}, \, k_{yp}\) are non-negative roll and pitch derivative controller gains, and \(\tilde{\mathbf {v}}^{\text {rp}} = [\;p \quad q\;]^{\text {T}}\) contains the estimated roll and pitch angular velocities.

2.5.2 Acceleration feedback controller

Lindegaard [27] introduced acceleration feedback control in horizontal plane motion, and showed it was theoretically possible to attenuate a disturbance influence, obtaining improved positioning and simultaneously lower applied thrust force. It has been experimentally demonstrated that using measured acceleration actively in DP operations can cost effectively reducing operational cost while increasing safety and positioning performance. Subsequently, [15] added acceleration feedback control to vertical plane motion control, and numerical simulations have demonstrated improved suppression of roll and pitch motions.

A linear formulation of roll and pitch acceleration feedback control can be expressed as

$$\begin{aligned} \begin{aligned} \varvec{\tau }_{{\text {rpac}}}&= - \mathbf {K}_{\text {ac}}^\mathrm {rp}\dot{\tilde{\mathbf {v}}}^{\text {rp}} { ,} \end{aligned} \end{aligned}$$
(16)

where the roll and pitch controller gain matrix, \(\varvec{K}_{\text {ac}}^\mathrm {rp} \in \mathbb {R}^{2 \times 2}\), is defined as

$$\begin{aligned} \varvec{K}_{\text {ac}}^\mathrm {rp} = \left[ \begin{array}{cc} 0 &{} k_{x\dot{q}} \\ k_{y\dot{p}} &{} 0 \\ \end{array}\right] { ,} \end{aligned}$$
(17)

where \(k_{x\dot{q}}, \, k_{y\dot{p}}\) are non-negative roll and pitch acceleration feedback controller gains; and \(\dot{\tilde{\mathbf {v}}}^{\text {rp}} = [\,\dot{p} \quad \dot{q}\,]^{\text {T}}\) contains the estimated roll and pitch angular acceleration velocities.

2.5.3 Proportional controller

Proportional controllers are widely used in horizontal plane motion control, but rarely been applied to vertical motion control [17]. This is probably because vertical motion often has restoring force(s) and disturbances may be induced when considering the proportional force. However, [17] proposed a proportional controller properly integrated into the roll and pitch control law and demonstrated its effectiveness. When the vessel was operated with high requirement on roll and pitch motions, the proportional controller can assist the DP system to suppress roll and pitch motion, although the proportional controller may decrease the positioning accuracy in the horizontal plane. Thus, a trade-off is required when one adopts the proportional controller.

To decrease disturbances caused by the proportional controller to the natural restoring force, small roll and pitch amplitudes should not activate the controller, and a target limiting roll and pitch amplitude should be defined. A linear formulation of the roll and pitch proportional control law can be expressed as

$$\begin{aligned} \varvec{\tau }_{{\text {rpp}}} = \bigg \{ \begin{aligned}&- \varvec{K}_{\text {p}}^\mathrm {rp} {\text {sign}}(\varvec{e}^{\text {rp}}) \left( |\varvec{e}^{\text {rp}}| - \delta \varvec{e}_{\lim }^\mathrm {rp}\right) ,\quad && {\text {if}} \, |\varvec{e}^{\text {rp}}|> \delta \varvec{e}_{\lim }^{\text {rp}} \\&0,\quad && {\text {else}} \end{aligned} {,} \end{aligned}$$
(18)

where the roll and pitch controller gain matrix, \(\varvec{K}_{\text {P}}^{\text {rp}} \in \mathbb {R}^{2 \times 2}\), is defined as

$$\begin{aligned} \varvec{K}_{\text {p}}^{\text {rp}} = \left[ \begin{array}{cc} 0 &{} k_{x\theta } \\ k_{y\phi } &{} 0 \\ \end{array}\right] { ,} \end{aligned}$$
(19)

where \(k_{x\theta }, \, k_{y\phi }\) are non-negative roll and pitch proportional controller gains, respectively; \(\varvec{e}^{\text {rp}} = [\,\phi \quad \theta \,]^{\text {T}}\) contains the estimated roll and pitch angles; \(\varvec{e}^{\text {rp}}_\mathrm {lim}\) is the limiting roll and pitch angle that meets operational requirements; and \(\delta \in [\,0, \,1\,)\) is an advance coefficient that determines how large the ratio of the roll and pitch angles to their limiting angles activates the proportional controller: smaller \(\delta\) means the proportional controller suppresses the corresponding motion more in advance.

2.5.4 Resulting roll and pitch controller

From the control laws above, the proposed roll and pitch controller can be expressed as

$$\begin{aligned} \begin{aligned} \varvec{\tau }_{{\text {rp}}}&= - \varvec{H}_{\text {p}} \cdot \varvec{\tau }_{{\text {rpp}}} - \varvec{H}_{\text {d}} \cdot \varvec{\tau }_{{\text {rpd}}} - \varvec{H}_{\text {ac}} \cdot \varvec{\tau }_{{\text {rpac}}} { ,} \end{aligned} \end{aligned}$$
(20)

where \(\varvec{H}_{\text {p}}, \, \varvec{H}_{\text {d}}, \, \varvec{H}_{\text {ac}} \in \mathbb {R}^{2 \times 2}\) are projection matrixes that enable or disable roll and pitch control in proportional, damping, and acceleration feedback.

2.5.5 Resulting controller

The resulting roll and pitch horizontal motion controller can be expressed as

$$\begin{aligned} \varvec{\tau }_{{\text {rp}}}^\mathrm {re} = \varvec{\tau }_{\text {h}} + \varvec{H}_{\text {tran}}\varvec{\tau }_{{\text {rp}}} {,} \end{aligned}$$
(21)

where \(\varvec{H}_{\text {tran}} \in \mathbb {R}^{3 \times 2}\) is a transformation matrix transforming the two DOF surge and sway thrust force to three DOF horizontal plane,

$$\begin{aligned} \varvec{H}_{\text {tran}} = \left[ \begin{array}{cc} 1 &{} 0 \\ 0 &{} 1 \\ 0 &{} 0 \\ \end{array}\right] { .} \end{aligned}$$
(22)

It should be noted that the desired forces \(\varvec{\tau }_{{\text {rp}}}^\mathrm {re}\) generated by the proposed controller remain in the horizontal plane. Thus, the controller does not suppress first-order motion, similarly to the horizontal 3 DOF controller, to avoid wear and tear of the thrust system.

3 Methodology for Sensitivity Analysis

In the proposed proportional controller (Eq. 18), the limiting roll and pitch angle \(\varvec{e}^{\text {rp}}_\mathrm {lim}\) and the advance coefficient \(\delta \in [\,0, \,1\,)\) are important parameters to determine controller performance in suppressing roll and pitch motions. This section derives the methodology to investigate the sensitivity of these parameters in affecting controller performance. A possible criterion containing several key variables representing different perspective of the positioning performance is first proposed, followed by a weighting coefficients selection suggestion, to avoid one or some of the variables dominating the final criterion.

3.1 Positioning performance criterion

We define a criterion to quantify the positioning performance of the controller as

$$\begin{aligned} C =\,&({\phi _{\text {std}}} {\theta _{\text {std}}})^{-a} ({N_{\text {L}}(\phi )} {N_{\text {L}}(\theta )})^{-b} \nonumber \\&\,\cdot ({\mu _{\text {dan}}(\phi )} {\mu _{\text {dan}}(\theta )})^{-c}({x_{\text {std}}} {y_\mathrm {std}})^{-f} {P}^{-g} { ,} \end{aligned}$$
(23)

where \(x_{\text {std}}, \, y_{\text {std}}, \, \phi _{\text {std}}, \, \theta _{\text {std}}\) are the standard deviations of surge, sway, roll and pitch motions, respectively; P represents the normalized consumed power; \(N_{\text {L}}(\phi ), \, N_{\text {L}}(\theta )\) are the number of the roll and pitch angles, respectively, larger than respective dangerous angles,

$$\begin{aligned} \phi _{\text {dan}}= & {} \lambda _\phi \cdot \phi _{\lim } , \end{aligned}$$
(24)
$$\begin{aligned} \theta _{\text {dan}}= & {} \lambda _\theta \cdot \theta _{\lim }, \end{aligned}$$
(25)

where \(\lambda _\phi , \, \lambda _\theta \in [\,0,\,1\,]\) are roll and pitch motion dangerous coefficients, respectively; \(\mu _{\text {dan}}(\phi ), \, \mu _{\text {dan}}(\theta )\) are mean values of roll and pitch angles larger than \(\phi _{\text {dan}}, \, \theta _{\text {dan}}\), respectively,

$$\begin{aligned} \mu _{\text {dan}}(\phi )= & {} \sum _{i=1}^{N_{\text {L}}} \frac{\phi _{\text {L}}^i}{N_{\text {L}}(\phi )} { ,} \end{aligned}$$
(26)
$$\begin{aligned} \mu _{\text {dan}}(\theta )= & {} \sum _{i=1}^{N_{\text {L}}} \frac{\theta _{\text {L}}^i}{N_{\text {L}}(\theta )} { ,} \end{aligned}$$
(27)

where \(\phi _{\text {L}}^i, \, \theta _{\text {L}}^i\) are the i-th roll and pitch angles which are larger than \(\phi _{\text {dan}}, \, \theta _{\text {dan}}\), respectively; and \(a, \, b, \, c, \, f, \, g\) are weighting coefficients: larger coefficient implies more importance of the corresponding variable to the positioning performance criterion. The minus sign in the exponential guarantees that the criterion is a monotonically increasing function of the weighting coefficients.

3.2 Weighting coefficients selection

The weighting coefficients \(a, \, b, \, c, \, f, \, g\) in the proposed positioning performance criterion (Eq. 23) will significantly influence the resulting criterion. Thus, it is essential to develop a reasonable weighting coefficient selection method.

For a specific case, positioning results such as \(x_{\text {std}}, \, y_{\text {std}}\) are constant values, and the final criterion can be seen as a function of the weighting coefficients \(a, \, b, \, c, \, f, \, g\). Thus, the function can be expressed as

$$\begin{aligned} C = C(a, \, b, \, c, \, f, \, g) { .} \end{aligned}$$
(28)

When investigating the effect of a coefficient (e.g., a) to the criterion, we let the corresponding coefficient be zero, i.e., the corresponding positioning variable in the criterion (Eq. 23) is not accounted for. To retain consistency, the ratio of the criterion without and with consideration of the corresponding variables is utilized as the weighting coefficient effect (e.g., a) on the criterion. Thus,

$$\begin{aligned} F(a) = \frac{C(0, \, b, \, c, \, f, \, g)}{C(a, \, b, \, c, \, f, \, g)} \end{aligned}$$
(29)

represents the effect of weighting coefficient a in the criterion, etc.

If the criterion \(\varvec{C}\) is a vector with two or more elements, the coefficient effect can be formulated as a correlation coefficient of the criterion without and with consideration of the corresponding variables,

$$\begin{aligned} R_{cor}(a) = {\text {Corr}}(\varvec{C}(0, \, b, \, c, \, f, \, g), \, \varvec{C}(a, \, b, \, c, \, f, \, g)) { ,} \end{aligned}$$
(30)

where \({\text {Corr}}(\cdot ,\cdot )\) estimates the cross-covariance of two discrete sequences without considering lag [28]. The closer \(R_{\text {cor}}(a)\) is to 1, the smaller the effect of the corresponding weighting coefficient is to the criterion. One can change the weighting coefficients to obtain a desired effect state, which is used as the actual weighting factors \(R_{\text {cor}}\) for the corresponding variables in the final criterion.

3.3 Weighting factors optimization using NSGA algorithm

Genetic algorithm (GA) is a random search algorithm which uses natural selection and natural genetic mechanism in biology. Unlike the traditional algorithms, the genetic algorithm does not rely on gradient information, but simulates the natural evolution process to search for the optimal solution. The classic genetic algorithm is mainly aimed at single objective optimization problems with multi decision variables. For the multi-objective problem, the commonly method is normalizing the objective function using weighting factors. But sometimes it is difficult to choose appropriate weighting factors and a weighting factor is set inappropriate will make one or several objective functions governing others. To solve this problem, [29] proposed a non-dominated sorting genetic algorithm (NSGA) in 1994 based on the concept of Pareto optimization. Different from classical genetic algorithm (GA), the non-dominated sorting genetic algorithm (NSGA) hierarchies individuals according to the domination relationship between individuals before the selection operator is executed. The non-dominated hierarchical approach in the NSGA allows the better individuals to have a greater chance of inheriting to the next generation; the fitness sharing strategy makes the individuals on the quasi-Pareto surface evenly distributed, maintaining the diversity of the group, overcoming the super-individual over-breeding, to prevent premature convergence.

There are five objective functions when using the NSGA to achieve a desired weighting factors relationship of the key variables in the final positioning performance criterion (Eq. 23). Those objective functions can be described as the error between the current weighting factor relationship and the desired one:

$$\begin{aligned} \displaystyle J_{i}=\frac{\varvec{R}_{\text {cor}}^{\text {ci}}-\varvec{R}_{\text {cor}}^{\text {di}}}{\varvec{R}_{\text {cor}}^{\text {di}}} \end{aligned}$$
(31)

Where the \(J_{i}\) is i-th the objective functions, \(\varvec{R}_{\text {cor}}^{\text {ci}}\) and \(\varvec{R}_{\text {cor}}^{\text {di}}\) are the current and desired i-th weighting factors, respectively. Therefore, the specific process of weighting factor optimization can be described as follows:

  1. 1.

    Determine a desired weighting factor relationship as the objective function.

  2. 2.

    Set the feasible range of the decision variables. Initialize a random parent population and calculate the weighting factor relationship. Then sort individuals by fast non-dominated sort algorithm based on the objective functions, then calculate the crowding distance of each individual.

  3. 3.

    Select strong individuals based on the sort rank and crowding distance. The individual is stronger with a smaller rank. For the individuals in the same front, the individual with a larger crowding distance is stronger than others.

  4. 4.

    The selected strong individuals produce the offspring population by crossover and mutation.

  5. 5.

    Implement 3-th step to 4-th step till the stop condition is met.

Thus, the weighting coefficients can be tailored to accord with any specific requirements by quantifying weighting coefficient effects of different variables on positioning performance in the final criterion.

4 Tuning parameter sensitivity analyses

The roll and pitch controller positioning performance has been previously demonstrated by time domain simulations based on a MATLAB\(^\circledR\) program independently developed by the authors [17]. This paper focuses on tuning parameter sensitivity analyses to investigate the impact of limiting roll and pitch angles \(\phi _{\lim }, \, \theta _{\lim }\) and proportional controller activation advance coefficient \(\delta\) selection on the proposed roll and pitch controller performance for a dynamically positioned semi-submersible.

Table 1 shows the adopted semi-submersible parameters. The semi-submersible was equipped with eight azimuth thrusters, each of which can provide a thrust force of 800 kN. The full QTF matrix was obtained using the HydroD computation module of the Sesam\(^\circledR\) commercial software [30]. Figure 2 shows the panel model of the semi-submersible. We used interpolation to obtain \(\varvec{P}_{ij}\) and \(\varvec{Q}_{ij}\) values for corresponding \(\omega _i\) and \(\omega _j\) regular waves, and superposing the second-order wave forces for these regular waves for obtaining the total low frequency wave drift forces. White noise sampling of ITTC spectral formulations is used to generate waves‚ where the composed waves have equal intensity at different frequencies. Figure 3 shows the time series for the wave elevation.

The semi-submersible heading was 180\(^\circ\), and surge and pitch motions were dominant in the simulation, so only pitch motion was mitigated by the proposed controller. The two limiting pitch angles were set as 3\(^\circ\) and 2.5\(^\circ\), respectively, and \(\delta\) was set from 0 to 0.9 with 0.1 interval for every limiting angle. To obtain the best \(\delta\), the corresponding obtained best interval was further investigated again with a smaller interval of 0.05. The total simulation time was set 12,600 s, with the first 1800 s excluded from the results to avoid transient effects.

Table 1 Particularities of the semi-submersible
Fig. 2
figure 2

Semi-submersible panel model

Fig. 3
figure 3

Elevation time series for the irregular wave

Since mitigating the pitch angle and positioning accuracy are relatively more important than power consumption for a safety critical vessel with high requirement on roll and pitch angle, the weighting coefficients were initially selected as \(a = b = c = f = 2, \; g = 1\). The weighting coefficients were also optimized to achieve a desired weighting factor relationship. The desired weighting factors relationship for the key variables was set as [0.4 0.45 0.8 0.85 0.95] in this case, which fulfills a reasonable relationship \(R_{\text {cor}}(\theta _{\text {std}})< R_{\text {cor}}(N_{\text {L}}(\theta ))<<< R_{\text {cor}}(\mu _{\text {dan}}(\theta ))< R_{\text {cor}}(x_{\text {std}})<< R_{\text {cor}}(P)\), where the control performance of pitch motion has the highest priority. It should be noted that the desired weighting factors relationship can be tailored to accord with any specific requirements. The objective function was set \(J_{i} < 0.1\).

4.1 Limiting pitch angle 3°

Figure 4 shows the time traces for pitch motion using the proposed \(\tau _{\text {HC} \& \text {RPPDA}}\) controller with different \(\delta\) and limiting pitch angle \(= 3^\circ\). When \(\delta = 0, \, 0.1, \, 0.2, \, 0.3, \, 0.4\), the largest pitch angle is less than \(3^\circ\). For sensitivity analysis on \(\delta\), we selected the dangerous coefficient \(\lambda = 0.8\) (Eq. 24). Table 2 shows variable values from Eq. 23 and obtained criterion. The results for \(\delta = 0.05, \, 0.15\) are also included to investigate the best \(\delta\) selection more precisely.

To further quantify the sensitivity of the advance coefficient, \(\delta\), on the positioning performance, a criterion comprised of several key variables was determined by selecting the weighting coefficients properly. When the weighting coefficient \(b = 2\), C is too strongly influenced by \(N_{\text {L}}(\theta )\), with the other variables having little effect on the final criterion. To ensure that the positioning performance criterion represents more perspectives, the weighting factors of the corresponding variables in the criterion were optimized using NSGA algorithm, as shown in Fig. 5. Clearly, the optimized weighting factors feature the desired relationship well, and they are selected for subsequent analysis.

Fig. 4
figure 4

Time traces of pitch motion using the proposed \(\tau _{\text {HC} \& \text {RPPDA}}\) controller with different advance coefficients, \(\delta\), for limiting pitch angle \(=3^\circ\)

Fig. 5
figure 5

Correlation of criterion value vectors with initial and optimized weighting factors, for limiting pitch angle \(=3^\circ\)

Table 2 Criterion variable values and the obtained criterion with initial and optimized weighting factors, for limiting pitch angle \(=3^\circ\) (Criterion C is normalized)

Table 2 shows that the controller synthesized performance is crucially affected by the \(\delta\) selection, with the best \(\delta = 0.15\) in this case. Too small \(\delta\) may make the controller too aggressive to compensate the pitch motion, resulting in contrary performance, whereas too large \(\delta\) may make the controller too slow to compensate the pitch motion, resulting in unsatisfactory performance. Generally, smaller \(\delta\) is better for this case from comparison of the criterion values.

4.2 Limiting pitch angle 2.5°

Figure 6 shows the time traces for pitch motion using the proposed \(\tau _{\text {HC} \& \text {RPPDA}}\) controller with different \(\delta\) and limiting pitch angle \(=2.5^\circ\). When \(\delta =0, \, 0.1, \, 0.2, \, 0.3, \, 0.4\), the largest pitch angle is smaller than \(3^\circ\). It is unfortunately the largest pitch angle for all \(\delta\) exceeds the limiting pitch angle, \(2.5^\circ\). Thus, although the proposed roll and pitch controller can significantly mitigate the pitch motion, the degree of mitigation is limited. Because pitch motion is mainly determined by vessel particularities as well as the encountered wave forces and induced thrust forces. For a safety critical vessel with high roll and pitch motion requirements, the design and construction requirements corresponding to roll and pitch motion must also be high. However, considering the effective roll and pitch mitigating controller, the vessel design can be more open. Sensitivity analysis to \(\delta\) is presented below.

For this case, we selected \(\lambda = 1\) (Eq. 24), and Table 3 shows the variable values from Eq. 23 and obtained criterion. The results for \(\delta = 0.05, \, 0.15\) were included to investigate the best \(\delta\) selection more precisely.

Fig. 6
figure 6

Time traces of pitch motion using the proposed \(\tau _{\text {HC} \& \text {RPPDA}}\) controller with different advance coefficients, \(\delta\), for limiting pitch angle \(=2.5^\circ\)

Fig. 7
figure 7

Correlation of criterion value vectors with initial and optimized weighting factors, for limiting pitch angle \(=2.5^\circ\)

To ensure that the criterion values in Table 3 represent more perspective of semi-submersible positioning performance, we also optimized the weighting factors to achieve desired relationship, as shown in Fig. 7. Thus, the optimized weighting factors are used for subsequent analysis.

Table 3 Criterion variable values and the obtained criterion with initial and optimized weighting factors, for limiting pitch angle \(=2.5^\circ\) (criterion C is normalized)

Table 3 also shows that the controller performance is crucially affected by the advance coefficient \(\delta\) selection, with the best \(\delta =0.1\) in this case. The \(\delta\) selection has similar effect as with the previous case: too small \(\delta\) may make the controller too aggressive and too large \(\delta\) may make the controller too slow to compensate the pitch motion. In this case, larger \(\delta\) is better from comparison of the criterion values, which contrasts to the previous case, but reinforces that the tuning parameters can significantly influence controller performance.

Comparing the positioning performance of the cases with different limiting pitching angles adopting their best advance coefficients \(\delta\), we can find that the case with limiting angle 2.5\(^\circ\) has relatively worse performance than that with limiting angle 3\(^\circ\), although the pitch angle is more likely suppressed with a sacrifice of the horizontal plane positioning accuracy and more pitch angles larger than the defined dangerous angle. Therefore, it is necessary to select a reasonable limiting pitch angle for the roll–pitch controller. The proposed parameter sensitivity analysis methodology can be used as a tool to determine appropriate roll–pitch controller gains with high positioning performance.

5 Conclusions

This paper is a continued study of the previous work [17], where a novel roll–pitch motion control strategy dedicated to mitigating roll and pitch motion has been proposed. To investigate the impacts of tuning parameters on the controller performance, a tuning parameter sensitivity analysis is performed in this paper. A methodology for the sensitivity analysis is proposed to quantify the positioning performance and guide weighting factors selection. The sensitivity analysis is evaluated by time domain simulation for a dynamically positioned semi-submersible vessel. Some conclusions can be summarized as follows.

  1. 1.

    The weighting coefficients can be tailored to accord with specific requirements by NSGA algorithm given the desired weighting factor relationship for different variables representing different perspectives of positioning performance in the final criterion.

  2. 2.

    The controller performance is crucially affected by selection of the advance coefficient, \(\delta\), that determines how large the ratio of the roll and pitch angles to their limiting angles activates the proportional roll–pitch controller. Too small \(\delta\) may make the controller too aggressively compensate pitch motion, resulting in contrary performance; whereas too large \(\delta\) may make the controller too slow to compensate pitch motion, resulting in unsatisfactory performance.

  3. 3.

    The proposed parameter sensitivity analysis methodology can be used as a tool to determine appropriate roll–pitch controller gains with high positioning performance.