# Research on Roll Stabilizing Based on Energy Optimization for Autonomous Surface Vehicle

Authors: Hongjian Wang; Linlin Wang; Lixin Pan
Journal: Journal of Applied Mathematics
 (2014)

---

## Abstract

Considering the case of ASV (autonomous surface vehicle) navigating with low speed near water surface, a new method for design of roll motion controller is proposed in order to restrain wave disturbance effectively and improve roll stabilizing performance. Control system design is based on GPC (general predictive control) theory and working principle of zero-speed fin stabilizer. Coupling horizontal motion model of ASV is decoupled, and an equivalent transfer function of roll motion is obtained and transformed into a discrete difference equation through inverse Laplace transformation and Euler approximation. Finally, predictive model of GPC, namely, the difference equation of roll motion, is given. GPC algorithm of ASV roll motion is derived from performance index based on roll stabilizing performance and energy consumption used for driving fin stabilizer. In allusion to time-variant parameters in roll motion model, recursive least square method is adopted for parameter estimation. Simulation results of ASV roll motion control show better stabilizing performance and minimized energy consumption improved by self-adaptive GPC.


---

## Body

## 1. Introduction

ASV (autonomous surface vehicle) rolls severely if it is navigating near water surface and wave disturbance has an obvious effect on its motion attitude. Violent roll motion often discontinues normal working of ASV [1, 2]. So, it is necessary to design an effective control pattern for solution to the problem of ASV motion attitude control. Moreover, it is hard for traditional fin stabilizer to generate enough lift when ASV is navigating with low speed. Consequently roll motion is very difficult to control at the moment. Then a new pattern of fin stabilizer working is required to realize effective roll control in low speed navigation. Marine Research Institute Netherlands, KoopNautic Holland, and Quantum Controls Ltd. have ever cooperated in the research on zero-speed fin stabilizer system [3]. Harbin Engineering University has designed and tested zero-speed fin stabilizers since 2005 [4]. Considering the characteristic of ASV motion with low speed near water surface, roll attitude is controlled by zero-speed fin stabilizer.Roll attitude is often affected due to strong coupling among yaw, sway, and roll motion [5, 6]. In the design of traditional roll stabilizing system, only roll motion is considered and coupling effect of yaw and sway on roll is neglected [7, 8]. So, control system based on ASV model with single degree of freedom usually cannot attain expected roll stabilizing performance in practical application. It is very hard to establish dynamic model of ASV because of uncertainty in motion model parameters especially for roll damp. There is a great error between theoretical value and actual value. Summing up the above, traditional PID control cannot adapt to parameter variation of ASV model and roll stabilizing performance is also affected as a result.On the basis of some authentic references [9–11], coupling effect of yaw and sway on roll is considered and made as premise of issue discussion in this paper. GPC (general predictive control) is adopted in system design due to its well robustness for model identification error and uncertain time-lag or order of controlled system [12]. Compared to traditional control, strict requirement is not raised for model structure. In the meantime, time variation, model mismatch, and disturbance uncertainty are also considered in GPC which is fit for roll motion control of ASV working near water surface. Zero-speed fin stabilizer would not generate enough lift force in low speed if it was in the working pattern of traditional fin stabilizer. So, zero-speed fin stabilizer works in another different pattern and usually generates lift force through revolving around its fin axis. Moment for driving fin stabilizer is large enough in order to satisfy roll stabilizing requirement. Consequently, energy consumption for roll attitude control is also very large. For small scale ASV, energy supplied to zero-speed fin stabilizer is often limited. So, it is necessary to reduce energy consumption for driving fin stabilizer, while roll stabilizing performance is satisfactory. Energy consumption and roll stabilizing performance are both considered in performance index of GPC in this paper. Finally, ASV roll attitude control and energy consumption saving are realized at the same time.To sum up the above ideas, the assumption and associated limitation in this paper can be described as follows.(a)
ASV is navigating with low speed.
(b)
Coupling effect of yaw and sway on roll is considered.
(c)
Time variation of parameters in ASV motion model and disturbance uncertainty are considered in GPC.


## 2. Roll Stabilizing Principle of ASV with Low Speed

Schematic diagram of ASV roll stabilizing system is shown in Figure1.Figure 1
Scheme diagram of ASV roll stabilizing system.Roll attitude of ASV with low speed is controlled through actuation of system controller. Wings of fin stabilizer actively flap around fin axis with high frequency in sea water. Lift on the wing surface is generated under driving of servo system. Lift righting moment counteracts wave moment effectively, and then roll motion amplitude is reduced [13]. In Figure 1, ψ, D, and ϕ represent yaw angle, sway displacement, and roll angle, respectively. Similarly, ψ
^, D
^, and ϕ
^ are measured values of corresponding variables. ASV model discussed in this paper is chosen from [14]. Relevant parameters of fin stabilizer are shown as follows: span length is 0.25 m, chord length is 0.5 m, and navigating speed is 1.832 m/s. According to roll stabilizing theory, lift values of traditional fin stabilizer are very small and several Newtons in quantity if fin size and navigating speed are set as values above. Lift force is too small to satisfy the need of roll stabilizing if traditional fin stabilizer is used under this condition. But conventional zero-speed fin stabilizer, which has the same size, can generate enough lift force to counteract wave disturbance in the case of low speed navigation near water surface. Thus, lift model of conventional zero-speed fin stabilizer [15] is adopted in the following discussion.Principle of zero-speed fin stabilizer is shown in Figure2. Considering special working pattern of zero-speed fin stabilizer, force analysis during normal working of fin commits to category of unsteady flow problem [16]. When zero-speed fin stabilizer flaps in perfect fluid or nonperfect fluid, lift generated on the fin can be analyzed by using potential theory and vortex action theory instead of fix wing theory. The forces on zero-speed fin stabilizer in unsteady flow are similar to tail fin of bionic fish [17]. The difference between them is that resistance produced by rotating is concerned for zero-speed fin stabilizer; however, thrust in the direction of going forward is concerned for bionic fish. The forces on tail fin of bionic fish are analyzed by many scholars. It is usually recognized that the forces can be divided into three types, namely, shape resistance, added mass force, and vortex force. The model of lift will be established by analyzing the forces in hydrodynamics. Through relevant deduction, lift model of zero-speed fin stabilizer [18] can be described as
(1)
L
zero
=
[
e
0
ρ
3
(
C
d
+
3
k
)
(
3
a
2
c
+
c
3
)
ω
2
+
J
I
d
ω
.
]
×
cos
⁡
(
ω
t
)
=
(
c
1
ω
2
+
c
2
ω
.
)
cos
⁡
(
ω
t
)
.Figure 2
Principle of zero-speed fin stabilizer.In (1), e
0 is span length, ρ is sea water density, C
d is coefficient of drag force, k is proportion factor, 2
a is chord length, c is distance from fin axis to midpoint of chord length, ω is angular rate of fin wings flapping, J
I is additional moment of inertia, d is distance from fin axis to the point where force on additional mass acts, and c
1, c
2 are both constants.Because the problem discussed in this paper is roll attitude control of ASV with low speed, it is necessary to consider additional effect of water flow on lift force while sea water flows through fin surface with relative flow speed. The additional lift is in relation to navigating speed, and it is time-variant; namely, additional lift can be denoted asΔ
L
lift
(
V
,
t
). Thus, lift model of fin stabilizer, when ASV is navigating with low speed, can be given by
(2)
L
lift
=
L
zero
+
Δ
L
lift
(
V
,
t
)
.If navigating speed is 1.832 m/s, value ofΔ
L
lift
(
V
,
t
) is much less than that of L
zero. Ratio of additional lift to total lift is 3%-4%. So, (3) can be approximately accepted in simulations. Consider
(3)
L
lift
≈
L
zero
.


## 3. Calculation of Wave Moment

In research of ASV motion control, Pierson-Moskowitz spectrum with single parameter is often used [19] and its spectral density formula is given by
(4)
S
(
ω
)
=
8.1
×
1
0
-
3
g
2
ω
5
exp
⁡
[
-
3.11
H
s
2
ω
4
]
.Here,S
(
ω
) is spectral density (m
2
·
s), ω is wave frequency (rad/s), and H
s is significant wave height (m). In the following simulation, spectral density S
(
ω
) is divided into 30 wavebands in frequency domain, and each waveband is δ
ω in width. Then, wave moment relevant to each component wave is added up, and total transient wave moment can be obtained and expressed as
(5)
M
wave
(
t
)
=
∑
i
=
1
30
M
wave
i
(
t
)
=
-
∑
i
=
1
30
c
M
l
∇
ρ
(
1
-
0.02
u
cos
⁡
γ
)
sign
⁡
(
cos
⁡
γ
)
f
i
×
cos
⁡
ω
e
i
t
.Here,f
i
=
a
i
2
ω
i
2
exp
⁡
(
-
ω
i
2
h
(
t
)
/
g
), a
i
=
[
2
S
(
ω
i
)
δ
ω
]
1
/
2, h
(
t
) is navigating depth, ∇ is volumetric displacement, u is navigating speed, γ is heading angle, c
M is a given coefficient of hydrodynamic force, ρ is sea water density, l is total length of AUV, g is acceleration of gravity, ω
e is encountering frequency, and ω
e
=
-
ω
-
(
ω
2
u
/
g
)
cos
⁡
γ.


## 4. ASV Motion Model

Coupling horizontal motion model of ASV is considered in this paper. Detailed derivation of ASV motion model is specified in AppendixA.


## 5. Design of Self-Adaptive GPC Controller

### 5.1. Basic Structure of GPC

Basic structure of GPC is shown in Figure3. GPC belongs to the group of “long-range predictive controllers” and generates a set of future control signals in each sampling interval, but only the first element of the control sequence is applied to the system input.Figure 3
Basic structure of GPC.The prediction of the system outputy is based on two different components. The “free response” represents the predicted behaviour of the output y
(
t
+
j
∣
t
)  (in the range from t
+
1 to t
+
N), based on old outputs y
(
t
-
i
∣
t
) and inputs u
(
t
-
i
∣
t
), assuming a future control action of zero. The “forced response” represents the additional component of the outputyresulting from the optimisation criterion.The total prediction is the sum of both components (for linear systems). Together with the known reference values, the future errors can be calculated by(6)
e
(
t
+
j
t
)
=
w
(
t
+
j
t
)
-
y
(
t
+
j
t
)
,
with j counting from1 to N (system stability will be improved ifNincreases, but response rapidity will deteriorate in the same time and vice versa.Ncan be quantified through combining stability with rapidity). Caused by these “future errors,” future control signals are calculated to force the output to the desired reference values.In addition to its well-known good control performance, the robustness properties make GPC interesting and realizable for practical control applications. For this purpose GPC offers a compact control strategy in terms of model mismatches, variable dead time, and disturbances.


### 5.2. GPC Algorithm

If wave disturbance is not taken into account, roll motion model of ASV can be expressed as(7)
A
(
z
-
1
)
Δ
ϕ
(
k
)
=
B
(
z
-
1
)
Δ
M
fin
(
k
)
,
where A
(
z
-
1
)
=
1
+
a
1
z
-
1
+
a
2
z
-
2, B
(
z
-
1
)
=
b
0
+
b
1
z
-
1, and Δ
=
1
-
z
-
1. Performance index of GPC is defined as
(8)
J
=
E
{
∑
j
=
2
N
2
+
1
Δ
α
j
·
|
M
f
i
n
(
k
+
j
-
1
)
|
∑
j
=
N
1
N
2
(
ϕ
(
k
+
j
)
-
ϕ
r
(
k
+
j
)
)
2
+
λ
·
∑
j
=
2
N
2
+
1
Δ
α
j
·
|
M
fin
(
k
+
j
-
1
)
|
}
.In (8), E represents operation of calculating mathematical expectation, N
1
N
2 are minimal time domain and maximal time domain of GPC prediction, respectively, ϕ denotes roll angle, ϕ
r
(
k
+
j
) is expected value of roll angle at the time k
+
j, and λ is weight coefficient of performance index. Δ
M
fin
(
k
+
j
)
=
0, j
=
N
u
,
…
,
N
2, where N
u is control time domain, which means control input M
fin
(
k
) keeps invariant after N
u steps. Δ
α
j is variation of fin angle. Consider
(9)
α
k
+
j
=
α
k
+
j
-
1
+
ω
k
+
j
′
·
T
,
where α
k
+
j
α
k
+
j
-
1 are fin angles at the time k
+
j and k
+
j
-
1, respectively, ω
k
+
j
′ is angular rate of fin wings flapping, and T is sampling period. Considering frequent flapping of zero-speed fin stabilizer wings, T is set as 1 ms. From (9), variation of fin angle can be calculated as
(10)
Δ
α
j
=
α
k
+
j
-
α
k
+
j
-
1
=
ω
k
+
j
′
·
T
.
In order to obtain optimal predictive value of ϕ
(
k
+
j
), the following Diophantine equations are considered firstly:
(11)
1
=
E
j
(
z
-
1
)
A
(
z
-
1
)
Δ
+
z
-
j
F
j
(
z
-
1
)
E
j
(
z
-
1
)
B
(
z
-
1
)
=
G
j
(
z
-
1
)
+
z
-
j
H
j
(
z
-
1
)
,
where j
=
1
,
…
,
N
2, E
j
=
e
0
+
e
1
z
-
1
+
⋯
+
e
j
-
1
z
-
j
+
1, F
j
=
f
0
j  +  f
1
j
z
-
1  +  f
2
j
z
-
2, G
j
=
g
0  +  g
1
z
-
1
+
⋯  +  g
j
-
1
z
-
j
+
1, and H
j
=
h
0
j. Through deduction from (7) and (11), optimal predictive value of ϕ
(
k
+
j
) is obtained and given by
(12)
ϕ
(
k
+
j
)
=
G
j
Δ
M
fin
(
k
+
j
)
+
F
j
ϕ
(
k
)
+
H
j
Δ
M
fin
(
k
)
,
where j
=
1
,
…
,
N
2. Equivalent matrix form of (12) is described as
(13)
ϕ
=
G
Δ
M
fin
+
F
ϕ
(
k
)
+
H
Δ
M
fin
(
k
)
,
where
(14)
ϕ
T
=
[
ϕ
(
k
+
1
)
,
…
,
ϕ
(
k
+
N
2
)
]
,
M
fin
T
=
[
M
fin
(
k
+
1
)
,
…
,
M
fin
(
k
+
N
2
)
]
,
F
T
=
[
F
1
,
…
,
F
N
2
]
,
H
T
=
[
H
1
,
…
,
H
N
2
]
,
G
=
[
g
0
g
1
g
0
⋮
⋮
⋱
g
N
u
-
1
g
N
u
-
2
⋯
g
0
⋮
⋮
⋮
⋮
⋱
g
N
2
-
1
g
N
2
-
2
⋯
g
N
2
-
N
u
⋯
g
0
]
.Ifϕ
r
T
=
[
ϕ
r
(
k
+
1
)
,
…
,
ϕ
r
(
k
+
N
2
)
] and Δ
α
=
[
ω
k
+
2
′
·
T
,
…
,
ω
k
+
N
2
+
1
′
·
T
], (8) can be expressed as the following matrix form:
(15)
J
=
E
{
(
ϕ
-
ϕ
r
)
T
(
ϕ
-
ϕ
r
)
+
λ
·
Δ
α
·
abs
(
M
fin
)
}
,
where abs
(
·
) denotes the matrix composed of absolute values of original matrix elements and λ is selected according to the range of roll angle and corresponding energy consumption used for roll stabilizing. For simplification of the following discussion, N
u
=
1, then
(16)
abs
(
M
fin
)
=
sign
⁡
[
M
fin
(
k
+
1
)
]
·
M
fin
(
k
+
1
)
·
[
1,1
,
…
,
1
]
T
.
In (16), sign
⁡
(
·
) denotes signum function. Equations (13) and (16) are substituted into (15), and (17) is obtained. Consider
(17)
2
Δ
G
T
[
G
Δ
M
fin
+
F
ϕ
(
k
)
+
H
Δ
M
fin
(
k
)
-
ϕ
r
]
+
λ
·
{
[
1,1
,
…
,
1
]
T
+
(
Δ
α
)
T
·
sign
⁡
[
M
fin
(
k
+
1
)
]
∂
(
Δ
α
)
∂
M
f
i
n
∂
(
Δ
α
)
∂
M
fin
·
sign
⁡
[
M
fin
(
k
+
1
)
]
·
M
fin
(
k
+
1
)
·
[
1,1
,
…
,
1
]
T
+
(
Δ
α
)
T
·
sign
⁡
[
M
fin
(
k
+
1
)
]
∂
(
Δ
α
)
∂
M
f
i
n
}
=
0
.
In (17),(18)
∂
(
Δ
α
)
∂
M
fin
=
[
∂
ω
k
+
2
′
∂
M
fin
(
k
+
1
)
∂
ω
k
+
3
′
∂
M
fin
(
k
+
1
)
⋯
∂
ω
k
+
N
2
+
1
′
∂
M
fin
(
k
+
1
)
⋮
⋮
⋮
⋮
∂
ω
k
+
2
′
∂
M
fin
(
k
+
N
2
)
∂
ω
k
+
3
′
∂
M
fin
(
k
+
N
2
)
⋯
∂
ω
k
+
N
2
+
1
′
∂
M
fin
(
k
+
N
2
)
]
·
T
,
Δ
M
fin
=
[
Δ
M
fin
(
k
+
1
)
,
0
,
…
,
0
]
T
.If(19)
G
′
=
G
T
G
=
[
g
11
′
g
12
′
⋯
g
1
N
2
′
⋮
⋮
⋮
⋮
g
N
2
1
′
g
N
2
2
′
⋯
g
N
2
N
2
′
]
and p
T
=
[
1,0
,
…
,
0
], (17) is multiplied by p
T. Through further simplification, (20) is obtained. Consider
(20)
{
2
Δ
p
T
G
′
Δ
+
λ
·
p
T
·
∂
(
Δ
α
)
∂
M
fin
·
sign
⁡
[
M
fin
(
k
+
1
)
]
}
·
M
f
i
n
=
2
Δ
p
T
G
T
[
ϕ
r
-
F
ϕ
(
k
)
-
H
Δ
M
fin
(
k
)
]
-
λ
·
p
T
·
(
Δ
α
)
T
·
sign
⁡
[
M
fin
(
k
+
1
)
]
.SinceM
fin
(
k
+
1
)
=
2
·
L
lift
·
l
f
=
2
·
l
f
·
(
c
1
ω
k
+
1
′
2
+
c
2
ω
k
+
1
′
.
)
·
cos
⁡
α
k
+
1, ω
k
+
2
′
=
ω
k
+
1
′
+
ω
k
+
1
′
.
·
T, partial derivative of ω
′ with respect to M
fin is given by
(21)
∂
ω
k
+
2
′
∂
M
fin
(
k
+
1
)
=
∂
ω
k
+
1
′
.
∂
M
fin
(
k
+
1
)
·
T
=
T
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
∂
ω
k
+
3
′
∂
M
fin
(
k
+
1
)
=
∂
(
ω
k
+
2
′
+
ω
k
+
2
′
.
·
T
)
∂
M
fin
(
k
+
1
)
=
∂
ω
k
+
2
′
∂
M
fin
(
k
+
1
)
=
T
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
∂
ω
k
+
4
′
∂
M
fin
(
k
+
1
)
=
∂
(
ω
k
+
3
′
+
ω
k
+
3
′
.
·
T
)
∂
M
fin
(
k
+
1
)
=
∂
ω
k
+
3
′
∂
M
fin
(
k
+
1
)
=
T
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
⋮
∂
ω
k
+
N
2
+
1
′
∂
M
fin
(
k
+
1
)
=
∂
(
ω
k
+
N
2
′
+
ω
k
+
N
2
′
.
·
T
)
∂
M
fin
(
k
+
1
)
=
∂
ω
k
+
N
2
′
∂
M
fin
(
k
+
1
)
=
T
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
,
where l
f is lever of righting moment. So, in (20),
(22)
p
T
·
∂
(
Δ
α
)
∂
M
fin
=
[
∂
ω
k
+
2
′
∂
M
fin
(
k
+
1
)
∂
ω
k
+
3
′
∂
M
fin
(
k
+
1
)
⋯
∂
ω
k
+
N
2
+
1
′
∂
M
fin
(
k
+
1
)
]
·
T
=
T
2
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
·
[
1
1
⋯
1
]
p
T
·
(
Δ
α
)
T
=
ω
k
+
2
′
·
T
=
(
ω
k
+
1
′
+
ω
k
+
1
′
.
·
T
)
·
T
=
ω
k
+
1
′
·
T
+
ω
k
+
1
′
.
·
T
2
=
ω
k
+
1
′
·
T
+
T
2
·
M
fin
(
k
+
1
)
-
2
l
f
c
1
ω
k
+
1
′
2
cos
⁡
α
k
+
1
2
l
f
c
2
cos
⁡
α
k
+
1
.Consideringϕ
r
=
[
ϕ
r
(
k
+
1
)
,
…
,
ϕ
r
(
k
+
N
2
)
]
T
=
[
0
,
…
,
0
]
T, (22) are substituted into (20); then
(23)
{
λ
(
N
2
+
1
)
T
2
2
l
f
c
2
cos
⁡
α
k
+
1
·
sign
⁡
[
M
fin
(
k
+
1
)
]
+
2
(
g
11
′
+
g
12
′
+
⋯
+
g
1
N
2
′
)
λ
(
N
2
+
1
)
T
2
2
l
f
c
2
cos
⁡
α
k
+
1
}
·
M
fin
(
k
+
1
)
=
[
4
(
g
11
′
+
g
12
′
+
⋯
+
g
1
N
2
′
)
-
2
(
g
0
H
1
+
g
1
H
2
+
⋯
+
g
N
2
-
1
H
N
2
)
]
·
M
fin
(
k
)
+
[
4
(
g
0
H
1
+
g
1
H
2
+
⋯
+
g
N
2
-
1
H
N
2
)
-
2
(
g
11
′
+
g
12
′
+
⋯
+
g
1
N
2
′
)
]
·
M
fin
(
k
-
1
)
-
2
(
g
0
H
1
+
g
1
H
2
+
⋯
+
g
N
2
-
1
H
N
2
)
·
M
fin
(
k
-
2
)
-
2
(
g
0
F
1
+
g
1
F
2
+
⋯
+
g
N
2
-
1
F
N
2
)
·
ϕ
(
k
)
+
2
(
g
0
F
1
+
g
1
F
2
+
⋯
+
g
N
2
-
1
F
N
2
)
·
ϕ
(
k
-
1
)
-
λ
·
sign
⁡
[
M
fin
(
k
+
1
)
]
·
(
ω
k
+
1
′
·
T
-
c
1
c
2
ω
k
+
1
′
2
T
2
)
.
Equation (23) is abbreviated as (24), where A
1
,
A
2
,
A
3
,
A
4
,
B
1
(
z
-
1
), B
2
(
z
-
1
), C are coefficients of corresponding terms in (23). Consider
(24)
A
1
·
M
fin
(
k
+
1
)
=
A
2
·
M
fin
(
k
)
+
A
3
·
M
fin
(
k
-
1
)
+
A
4
·
M
fin
(
k
-
2
)
+
B
1
(
z
-
1
)
·
ϕ
(
k
)
+
B
2
(
z
-
1
)
·
ϕ
(
k
-
1
)
+
C
.So, GPC algorithm can be described as(25)
M
fin
(
k
+
1
)
=
(
[
A
2
·
M
fin
(
k
)
+
A
3
·
M
fin
(
k
-
1
)
+
A
4
·
M
fin
(
k
-
2
)
+
B
1
(
z
-
1
)
·
ϕ
(
k
)
+
B
2
(
z
-
1
)
·
ϕ
(
k
-
1
)
+
C
]
)
×
(
A
1
)
-
1
.


### 5.3. Recursive Solution to Diophantine Equations

GPC algorithm obtained in Section5.2 is followed by some relevant conclusions; namely, in Diophantine equations (9)-(10), E
j
(
z
-
1
), F
j
(
z
-
1
), G
j
(
z
-
1
), and H
j
(
z
-
1
) vary with predictive step number j and need recalculation. In order to save calculation time and use the information in step backward, E
j
(
z
-
1
), F
j
(
z
-
1
), G
j
(
z
-
1
), and H
j
(
z
-
1
) are calculated with recursive method. Through derivation, recursive formulas of coefficients in Diophantine equations are obtained and listed in Appendix B.


### 5.4. Parameter Estimation of ASV Roll Motion Model

Parameter estimation is necessary due to time-variant parameters in ASV roll motion model. Recursive least square method is used here and algorithm for estimating parameter vector is given in AppendixC.


### 5.5. Steps of Self-Adaptive GPC Algorithm

(1)
Assign values toN
1, N
2, λ, and μ.
(2)
Set initial vectorθ
(
0
) and initial matrix Ω
(
0
). (Ω
(
0
) is a positive definite matrix.)
(3)
Measure current roll angleϕ
(
k
) and fetch corresponding set value ϕ
r.
(4)
Estimate parameter vectorθ
(
k
) with recursive least square method and calculate coefficients of corresponding terms in A
(
z
-
1
) and B
(
z
-
1
), namely, a
1
,
a
2
,
b
0, and b
1.
(5)
CalculateE
j
(
z
-
1
), F
j
(
z
-
1
), G
j
(
z
-
1
), and H
j
(
z
-
1
) according to (B.1).
(6)
SubstituteE
j
(
z
-
1
), F
j
(
z
-
1
), G
j
(
z
-
1
), and H
j
(
z
-
1
) into (25) and then calculate optimal control variable M
f
i
n
(
k
+
1
).
(7)
ExertM
fin
(
k
+
1
) on current roll motion model of ASV.
(8)
Return to step(
3
).


## 5.1. Basic Structure of GPC

Basic structure of GPC is shown in Figure3. GPC belongs to the group of “long-range predictive controllers” and generates a set of future control signals in each sampling interval, but only the first element of the control sequence is applied to the system input.Figure 3
Basic structure of GPC.The prediction of the system outputy is based on two different components. The “free response” represents the predicted behaviour of the output y
(
t
+
j
∣
t
)  (in the range from t
+
1 to t
+
N), based on old outputs y
(
t
-
i
∣
t
) and inputs u
(
t
-
i
∣
t
), assuming a future control action of zero. The “forced response” represents the additional component of the outputyresulting from the optimisation criterion.The total prediction is the sum of both components (for linear systems). Together with the known reference values, the future errors can be calculated by(6)
e
(
t
+
j
t
)
=
w
(
t
+
j
t
)
-
y
(
t
+
j
t
)
,
with j counting from1 to N (system stability will be improved ifNincreases, but response rapidity will deteriorate in the same time and vice versa.Ncan be quantified through combining stability with rapidity). Caused by these “future errors,” future control signals are calculated to force the output to the desired reference values.In addition to its well-known good control performance, the robustness properties make GPC interesting and realizable for practical control applications. For this purpose GPC offers a compact control strategy in terms of model mismatches, variable dead time, and disturbances.


## 5.2. GPC Algorithm

If wave disturbance is not taken into account, roll motion model of ASV can be expressed as(7)
A
(
z
-
1
)
Δ
ϕ
(
k
)
=
B
(
z
-
1
)
Δ
M
fin
(
k
)
,
where A
(
z
-
1
)
=
1
+
a
1
z
-
1
+
a
2
z
-
2, B
(
z
-
1
)
=
b
0
+
b
1
z
-
1, and Δ
=
1
-
z
-
1. Performance index of GPC is defined as
(8)
J
=
E
{
∑
j
=
2
N
2
+
1
Δ
α
j
·
|
M
f
i
n
(
k
+
j
-
1
)
|
∑
j
=
N
1
N
2
(
ϕ
(
k
+
j
)
-
ϕ
r
(
k
+
j
)
)
2
+
λ
·
∑
j
=
2
N
2
+
1
Δ
α
j
·
|
M
fin
(
k
+
j
-
1
)
|
}
.In (8), E represents operation of calculating mathematical expectation, N
1
N
2 are minimal time domain and maximal time domain of GPC prediction, respectively, ϕ denotes roll angle, ϕ
r
(
k
+
j
) is expected value of roll angle at the time k
+
j, and λ is weight coefficient of performance index. Δ
M
fin
(
k
+
j
)
=
0, j
=
N
u
,
…
,
N
2, where N
u is control time domain, which means control input M
fin
(
k
) keeps invariant after N
u steps. Δ
α
j is variation of fin angle. Consider
(9)
α
k
+
j
=
α
k
+
j
-
1
+
ω
k
+
j
′
·
T
,
where α
k
+
j
α
k
+
j
-
1 are fin angles at the time k
+
j and k
+
j
-
1, respectively, ω
k
+
j
′ is angular rate of fin wings flapping, and T is sampling period. Considering frequent flapping of zero-speed fin stabilizer wings, T is set as 1 ms. From (9), variation of fin angle can be calculated as
(10)
Δ
α
j
=
α
k
+
j
-
α
k
+
j
-
1
=
ω
k
+
j
′
·
T
.
In order to obtain optimal predictive value of ϕ
(
k
+
j
), the following Diophantine equations are considered firstly:
(11)
1
=
E
j
(
z
-
1
)
A
(
z
-
1
)
Δ
+
z
-
j
F
j
(
z
-
1
)
E
j
(
z
-
1
)
B
(
z
-
1
)
=
G
j
(
z
-
1
)
+
z
-
j
H
j
(
z
-
1
)
,
where j
=
1
,
…
,
N
2, E
j
=
e
0
+
e
1
z
-
1
+
⋯
+
e
j
-
1
z
-
j
+
1, F
j
=
f
0
j  +  f
1
j
z
-
1  +  f
2
j
z
-
2, G
j
=
g
0  +  g
1
z
-
1
+
⋯  +  g
j
-
1
z
-
j
+
1, and H
j
=
h
0
j. Through deduction from (7) and (11), optimal predictive value of ϕ
(
k
+
j
) is obtained and given by
(12)
ϕ
(
k
+
j
)
=
G
j
Δ
M
fin
(
k
+
j
)
+
F
j
ϕ
(
k
)
+
H
j
Δ
M
fin
(
k
)
,
where j
=
1
,
…
,
N
2. Equivalent matrix form of (12) is described as
(13)
ϕ
=
G
Δ
M
fin
+
F
ϕ
(
k
)
+
H
Δ
M
fin
(
k
)
,
where
(14)
ϕ
T
=
[
ϕ
(
k
+
1
)
,
…
,
ϕ
(
k
+
N
2
)
]
,
M
fin
T
=
[
M
fin
(
k
+
1
)
,
…
,
M
fin
(
k
+
N
2
)
]
,
F
T
=
[
F
1
,
…
,
F
N
2
]
,
H
T
=
[
H
1
,
…
,
H
N
2
]
,
G
=
[
g
0
g
1
g
0
⋮
⋮
⋱
g
N
u
-
1
g
N
u
-
2
⋯
g
0
⋮
⋮
⋮
⋮
⋱
g
N
2
-
1
g
N
2
-
2
⋯
g
N
2
-
N
u
⋯
g
0
]
.Ifϕ
r
T
=
[
ϕ
r
(
k
+
1
)
,
…
,
ϕ
r
(
k
+
N
2
)
] and Δ
α
=
[
ω
k
+
2
′
·
T
,
…
,
ω
k
+
N
2
+
1
′
·
T
], (8) can be expressed as the following matrix form:
(15)
J
=
E
{
(
ϕ
-
ϕ
r
)
T
(
ϕ
-
ϕ
r
)
+
λ
·
Δ
α
·
abs
(
M
fin
)
}
,
where abs
(
·
) denotes the matrix composed of absolute values of original matrix elements and λ is selected according to the range of roll angle and corresponding energy consumption used for roll stabilizing. For simplification of the following discussion, N
u
=
1, then
(16)
abs
(
M
fin
)
=
sign
⁡
[
M
fin
(
k
+
1
)
]
·
M
fin
(
k
+
1
)
·
[
1,1
,
…
,
1
]
T
.
In (16), sign
⁡
(
·
) denotes signum function. Equations (13) and (16) are substituted into (15), and (17) is obtained. Consider
(17)
2
Δ
G
T
[
G
Δ
M
fin
+
F
ϕ
(
k
)
+
H
Δ
M
fin
(
k
)
-
ϕ
r
]
+
λ
·
{
[
1,1
,
…
,
1
]
T
+
(
Δ
α
)
T
·
sign
⁡
[
M
fin
(
k
+
1
)
]
∂
(
Δ
α
)
∂
M
f
i
n
∂
(
Δ
α
)
∂
M
fin
·
sign
⁡
[
M
fin
(
k
+
1
)
]
·
M
fin
(
k
+
1
)
·
[
1,1
,
…
,
1
]
T
+
(
Δ
α
)
T
·
sign
⁡
[
M
fin
(
k
+
1
)
]
∂
(
Δ
α
)
∂
M
f
i
n
}
=
0
.
In (17),(18)
∂
(
Δ
α
)
∂
M
fin
=
[
∂
ω
k
+
2
′
∂
M
fin
(
k
+
1
)
∂
ω
k
+
3
′
∂
M
fin
(
k
+
1
)
⋯
∂
ω
k
+
N
2
+
1
′
∂
M
fin
(
k
+
1
)
⋮
⋮
⋮
⋮
∂
ω
k
+
2
′
∂
M
fin
(
k
+
N
2
)
∂
ω
k
+
3
′
∂
M
fin
(
k
+
N
2
)
⋯
∂
ω
k
+
N
2
+
1
′
∂
M
fin
(
k
+
N
2
)
]
·
T
,
Δ
M
fin
=
[
Δ
M
fin
(
k
+
1
)
,
0
,
…
,
0
]
T
.If(19)
G
′
=
G
T
G
=
[
g
11
′
g
12
′
⋯
g
1
N
2
′
⋮
⋮
⋮
⋮
g
N
2
1
′
g
N
2
2
′
⋯
g
N
2
N
2
′
]
and p
T
=
[
1,0
,
…
,
0
], (17) is multiplied by p
T. Through further simplification, (20) is obtained. Consider
(20)
{
2
Δ
p
T
G
′
Δ
+
λ
·
p
T
·
∂
(
Δ
α
)
∂
M
fin
·
sign
⁡
[
M
fin
(
k
+
1
)
]
}
·
M
f
i
n
=
2
Δ
p
T
G
T
[
ϕ
r
-
F
ϕ
(
k
)
-
H
Δ
M
fin
(
k
)
]
-
λ
·
p
T
·
(
Δ
α
)
T
·
sign
⁡
[
M
fin
(
k
+
1
)
]
.SinceM
fin
(
k
+
1
)
=
2
·
L
lift
·
l
f
=
2
·
l
f
·
(
c
1
ω
k
+
1
′
2
+
c
2
ω
k
+
1
′
.
)
·
cos
⁡
α
k
+
1, ω
k
+
2
′
=
ω
k
+
1
′
+
ω
k
+
1
′
.
·
T, partial derivative of ω
′ with respect to M
fin is given by
(21)
∂
ω
k
+
2
′
∂
M
fin
(
k
+
1
)
=
∂
ω
k
+
1
′
.
∂
M
fin
(
k
+
1
)
·
T
=
T
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
∂
ω
k
+
3
′
∂
M
fin
(
k
+
1
)
=
∂
(
ω
k
+
2
′
+
ω
k
+
2
′
.
·
T
)
∂
M
fin
(
k
+
1
)
=
∂
ω
k
+
2
′
∂
M
fin
(
k
+
1
)
=
T
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
∂
ω
k
+
4
′
∂
M
fin
(
k
+
1
)
=
∂
(
ω
k
+
3
′
+
ω
k
+
3
′
.
·
T
)
∂
M
fin
(
k
+
1
)
=
∂
ω
k
+
3
′
∂
M
fin
(
k
+
1
)
=
T
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
⋮
∂
ω
k
+
N
2
+
1
′
∂
M
fin
(
k
+
1
)
=
∂
(
ω
k
+
N
2
′
+
ω
k
+
N
2
′
.
·
T
)
∂
M
fin
(
k
+
1
)
=
∂
ω
k
+
N
2
′
∂
M
fin
(
k
+
1
)
=
T
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
,
where l
f is lever of righting moment. So, in (20),
(22)
p
T
·
∂
(
Δ
α
)
∂
M
fin
=
[
∂
ω
k
+
2
′
∂
M
fin
(
k
+
1
)
∂
ω
k
+
3
′
∂
M
fin
(
k
+
1
)
⋯
∂
ω
k
+
N
2
+
1
′
∂
M
fin
(
k
+
1
)
]
·
T
=
T
2
2
·
l
f
·
c
2
·
cos
⁡
α
k
+
1
·
[
1
1
⋯
1
]
p
T
·
(
Δ
α
)
T
=
ω
k
+
2
′
·
T
=
(
ω
k
+
1
′
+
ω
k
+
1
′
.
·
T
)
·
T
=
ω
k
+
1
′
·
T
+
ω
k
+
1
′
.
·
T
2
=
ω
k
+
1
′
·
T
+
T
2
·
M
fin
(
k
+
1
)
-
2
l
f
c
1
ω
k
+
1
′
2
cos
⁡
α
k
+
1
2
l
f
c
2
cos
⁡
α
k
+
1
.Consideringϕ
r
=
[
ϕ
r
(
k
+
1
)
,
…
,
ϕ
r
(
k
+
N
2
)
]
T
=
[
0
,
…
,
0
]
T, (22) are substituted into (20); then
(23)
{
λ
(
N
2
+
1
)
T
2
2
l
f
c
2
cos
⁡
α
k
+
1
·
sign
⁡
[
M
fin
(
k
+
1
)
]
+
2
(
g
11
′
+
g
12
′
+
⋯
+
g
1
N
2
′
)
λ
(
N
2
+
1
)
T
2
2
l
f
c
2
cos
⁡
α
k
+
1
}
·
M
fin
(
k
+
1
)
=
[
4
(
g
11
′
+
g
12
′
+
⋯
+
g
1
N
2
′
)
-
2
(
g
0
H
1
+
g
1
H
2
+
⋯
+
g
N
2
-
1
H
N
2
)
]
·
M
fin
(
k
)
+
[
4
(
g
0
H
1
+
g
1
H
2
+
⋯
+
g
N
2
-
1
H
N
2
)
-
2
(
g
11
′
+
g
12
′
+
⋯
+
g
1
N
2
′
)
]
·
M
fin
(
k
-
1
)
-
2
(
g
0
H
1
+
g
1
H
2
+
⋯
+
g
N
2
-
1
H
N
2
)
·
M
fin
(
k
-
2
)
-
2
(
g
0
F
1
+
g
1
F
2
+
⋯
+
g
N
2
-
1
F
N
2
)
·
ϕ
(
k
)
+
2
(
g
0
F
1
+
g
1
F
2
+
⋯
+
g
N
2
-
1
F
N
2
)
·
ϕ
(
k
-
1
)
-
λ
·
sign
⁡
[
M
fin
(
k
+
1
)
]
·
(
ω
k
+
1
′
·
T
-
c
1
c
2
ω
k
+
1
′
2
T
2
)
.
Equation (23) is abbreviated as (24), where A
1
,
A
2
,
A
3
,
A
4
,
B
1
(
z
-
1
), B
2
(
z
-
1
), C are coefficients of corresponding terms in (23). Consider
(24)
A
1
·
M
fin
(
k
+
1
)
=
A
2
·
M
fin
(
k
)
+
A
3
·
M
fin
(
k
-
1
)
+
A
4
·
M
fin
(
k
-
2
)
+
B
1
(
z
-
1
)
·
ϕ
(
k
)
+
B
2
(
z
-
1
)
·
ϕ
(
k
-
1
)
+
C
.So, GPC algorithm can be described as(25)
M
fin
(
k
+
1
)
=
(
[
A
2
·
M
fin
(
k
)
+
A
3
·
M
fin
(
k
-
1
)
+
A
4
·
M
fin
(
k
-
2
)
+
B
1
(
z
-
1
)
·
ϕ
(
k
)
+
B
2
(
z
-
1
)
·
ϕ
(
k
-
1
)
+
C
]
)
×
(
A
1
)
-
1
.


## 5.3. Recursive Solution to Diophantine Equations

GPC algorithm obtained in Section5.2 is followed by some relevant conclusions; namely, in Diophantine equations (9)-(10), E
j
(
z
-
1
), F
j
(
z
-
1
), G
j
(
z
-
1
), and H
j
(
z
-
1
) vary with predictive step number j and need recalculation. In order to save calculation time and use the information in step backward, E
j
(
z
-
1
), F
j
(
z
-
1
), G
j
(
z
-
1
), and H
j
(
z
-
1
) are calculated with recursive method. Through derivation, recursive formulas of coefficients in Diophantine equations are obtained and listed in Appendix B.


## 5.4. Parameter Estimation of ASV Roll Motion Model

Parameter estimation is necessary due to time-variant parameters in ASV roll motion model. Recursive least square method is used here and algorithm for estimating parameter vector is given in AppendixC.


## 5.5. Steps of Self-Adaptive GPC Algorithm

(1)
Assign values toN
1, N
2, λ, and μ.
(2)
Set initial vectorθ
(
0
) and initial matrix Ω
(
0
). (Ω
(
0
) is a positive definite matrix.)
(3)
Measure current roll angleϕ
(
k
) and fetch corresponding set value ϕ
r.
(4)
Estimate parameter vectorθ
(
k
) with recursive least square method and calculate coefficients of corresponding terms in A
(
z
-
1
) and B
(
z
-
1
), namely, a
1
,
a
2
,
b
0, and b
1.
(5)
CalculateE
j
(
z
-
1
), F
j
(
z
-
1
), G
j
(
z
-
1
), and H
j
(
z
-
1
) according to (B.1).
(6)
SubstituteE
j
(
z
-
1
), F
j
(
z
-
1
), G
j
(
z
-
1
), and H
j
(
z
-
1
) into (25) and then calculate optimal control variable M
f
i
n
(
k
+
1
).
(7)
ExertM
fin
(
k
+
1
) on current roll motion model of ASV.
(8)
Return to step(
3
).


## 6. Results

Total length of ASV is 5.3 m, ASV height is 0.5 m, ASV width is 1 m, and navigating speed is 1.832 m/s. Distance from fin axis to midpoint of chord length is 0.125 m, and maximum of fin angle is 60°. Parameters of self-adaptive GPC algorithm are set asN
1
=
1, N
2
=
5, N
u
=
1, λ
=
3
×
10
-
7, and μ
=
0.5. Initial values for parameter estimation are θ
(
0
)
=
[
-
2.5947
,
2.2035
,
-
0.6088
,
1.1152
×
10
-
4
,
-
2.1877
×
10
-
4
,
1.0725
×
10
-
4
] and Ω
(
0
)
=
I
6
×
6 (identity matrix with 6 dimensions). Set values of roll angle are all 0; namely, ϕ
r
(
k
+
j
)
=
0
(
j
=
1,2
,
3,4
,
5
). Significant wave height and heading angle are denoted by H
s and γ, respectively. Simulation results under different sea conditions are shown in Figures 4, 5, 6, 7, 8, 9, 10, 11, and 12.Figure 4
Simulation without roll reduction whenH
s
=
1 and γ
=
4
5
°.Figure 5
Simulation of self-adaptive GPC whenH
s
=
1 and γ
=
4
5
°.Figure 6
Fin angle of self-adaptive GPC whenH
s
=
1 and γ
=
4
5
°.Figure 7
Simulation without roll reduction whenH
s
=
1 and γ
=
9
0
°.Figure 8
Simulation of self-adaptive GPC whenH
s
=
1 and γ
=
9
0
°.Figure 9
Fin angle of self-adaptive GPC whenH
s
=
1 and γ
=
9
0
∘.Figure 10
Simulation without roll reduction whenH
s
=
1 and γ
=
13
5
°.Figure 11
Simulation of self-adaptive GPC whenH
s
=
1 and γ
=
13
5
°.Figure 12
Fin angle of self-adaptive GPC whenH
s
=
1 and γ
=
13
5
°.Roll stabilizing performance in Table1 and energy-saving ratio in Table 2 are calculated according to the following formulas, respectively:
(26)
RSP
=
SDRA
without
roll
control
-
SDRA
with
GPC
SDRA
without
roll
control
×
100
%
ESR
=
EC
based
on
⁡
J
0
-
EC
based
on
⁡
J
EC
based
on
⁡
J
0
×
100
%
.Table 1
Statistics of roll stabilizing performance.
Significant wave height(m)
Heading angle(°)
SDRA without roll control(°)
SDRA with GPC(°)
RSP(%)
H
s
=
1
γ
=
45°
2.1861
0.4451
79.64
H
s
=
1
γ
=
90°
2.8383
0.5565
80.39
H
s
=
1
γ
=
135°
1.8226
0.3654
79.95Table 2
Calculation of energy consumption for roll stabilizing.
Significant wave height(m)
Heading angle(°)
RSP based onJ
0  (%)
RSP based onJ  (%)
EC based onJ
0  (J)
EC based onJ  (J)
ESR(%)
H
s
=
1
γ
=
45°
79.91
79.64
419726
358740
14.53
H
s
=
1
γ
=
90°
83.76
80.39
444810
377648
15.10
H
s
=
1
γ
=
135°
81.23
79.95
403842
343871
14.85Meanings for RSP, SDRA, ESR, and EC are shown as follows:RSP: roll stabilizing performance,
SDRA: standard deviation of roll angle,
ESR: energy-saving ratio,
EC: energy consumption.According to [20, 21], expression of J is given by (8). In order to demonstrate the improved performance of roll stabilizing system based on energy optimization design, J
0 is defined as the performance of GPC only considering roll stabilizing effectiveness; namely,
(27)
J
0
=
E
{
∑
j
=
1
5
(
ϕ
(
k
+
j
)
-
ϕ
r
(
k
+
j
)
)
2
}
,
where ϕ denotes roll angle, ϕ
r
(
k
+
j
) is expected value of roll angle at the time k
+
j, and E represents operation of calculating mathematical expectation.Energy consumption is calculated according to the following formula:(28)
EC
=
∑
k
=
1
600
|
M
fin
(
k
)
|
Δ
α
k
,
where M
fin is righting moment generated by zero-speed fin stabilizer and Δ
α
k is variation of fin angle.In order to demonstrate the effectiveness of saving energy used for roll stabilizing, energy consumption based onJ is compared with energy consumption based on J
0 as shown in Figure 13. Simulation results shown in Figures 4–12 demonstrate that self-adaptive GPC embodies favorable robustness and satisfactory performance of roll stabilizing. There is no instability phenomenon in ASV roll motion. Conventional zero-speed fin stabilizer is used for roll stabilizing of ASV navigating with low speed near water surface. Roll stabilizing performance is favorable as shown in Table 1. Calculation results of energy consumption in Table 2 demonstrate that energy consumption based on performance index J is less than energy consumption based on performance index J
0. In Figure 13, curves of energy consumption versus heading angle are displayed and corresponding maximums in energy consumption both occur in 90°. The heading angle increases with a step of 20° in Figure 13. The two curves based on J
0 and J obey normal distribution approximately, since motion attitude of ASV is obviously dominated by roll when heading angle varies in 75°–105° and is mainly affected by pitch and heave in 0°–15° or 165°–180°. For the same reason, frequency of fin angle differs in Figures 6, 9, and 12; namely, fin flaps more frequently when γ
=
90
° than γ
=
45
° and 135
°. Since control of M
fin is implemented through adjustment of ω
′
. and ω
′ with regard to zero-speed fin stabilizer, which is different from fin angle control of traditional fin stabilizer, short-term saturation occurs in the maximal fin angle as shown in Figures 6, 9, and 12 when ω
′ is equal to zero. Figure 13 adequately shows the effectiveness of saving energy used for roll stabilizing. Satisfactory performance of roll stabilizing is also shown in Figures 14-15 and Figures 17-18, which correspond to different significant wave heights (H
s
=
1.2 m and 1.5 m) when γ
=
90
°. Figures 16 and 19 show that the method proposed in this paper is effective on saving energy used for roll stabilizing when sea condition varies.Figure 13
Comparison of energy consumption:H
s
=
1.Figure 14
Simulation without roll reduction whenH
s
=
1.2 and γ
=
9
0
°.Figure 15
Simulation of self-adaptive GPC whenH
s
=
1.2 and γ
=
9
0
°.Figure 16
Comparison of energy consumption:H
s
=
1.2.Figure 17
Simulation without roll reduction whenH
s
=
1.5 and γ
=
9
0
°.Figure 18
Simulation of self-adaptive GPC whenH
s
=
1.5 and γ
=
9
0
°.Figure 19
Comparison of energy consumption:H
s
=
1.5.Through similar derivation, self-adaptive GPC is applied in traditional design of roll stabilizing system, where effects of sway and yaw on roll are disregarded. At this time, roll motion model is given by (D.4) in Appendix D and performance index of GPC is still given by (8). Detailed derivation of control law is not given here. Figures 20 and 21 show the roll stabilizing performances of traditional design. Compared to Figures 15 and 18, roll stabilizing performances in Figures 20 and 21 are not quite satisfied. This result proves that the method in this paper is obviously superior to traditional design method, since roll motion model is more accurate if coupling effects are considered adequately.Figure 20
Simulation of traditional design whenH
s
=
1.2 and γ
=
9
0
°.Figure 21
Simulation of traditional design whenH
s
=
1.5 and γ
=
9
0
°.In order to prove robustness of self-adaptive GPC controller designed in this paper, simulation experiment is conducted when significant wave heightH
s is 1 m and wave encounter angle γ
=
90 deg. Uncertain parameters in ASV motion model (A.8) are described as Δ
a
1
¯
=
0.08
[
1
+
sin
(
0.2
t
)
]
a
1
¯, Δ
a
2
¯
=
0.08
[
1
+
sin
(
0.2
t
)
]
a
2
¯, Δ
b
1
¯
=
0.1
[
1
+
sin
(
0.2
t
)
]
b
1
¯, and Δ
b
2
¯
=
0.1
[
1
+
sin
(
0.2
t
)
]
b
2
¯, where a
1
¯, a
2
¯, b
1
¯, and b
2
¯ are corresponding normalized values of hydrodynamic force coefficients, and Δ
a
1
¯, Δ
a
2
¯, Δ
b
1
¯, and Δ
b
2
¯ represent their corresponding uncertain sections. Figure 22 shows the curve of roll angle without roll control under above uncertainty conditions, and Figure 23 shows corresponding curve with self-adaptive GPC. Working process of fin stabilizer is also described in Figure 24. Simulation results prove that self-adaptive GPC can be used to avoid parameter uncertainty in ASV motion model. Favorable stability and robustness demonstrate that the designed controller is effective when wave disturbance and ASV parameters are not determined.Figure 22
Simulation without roll reduction under uncertainty conditions.Figure 23
Simulation of self-adaptive GPC under uncertainty conditions.Figure 24
Fin angle of self-adaptive GPC under uncertainty conditions.Figures25, 26, and 27 show the simulation results when ASV is navigating under rough sea conditions that significant wave height (H
s) is 3 m. As shown in Figure 25, the curve of roll angle violently varies between −25° and 25° when ASV roll motion is not controlled. If self-adaptive GPC is adopted for roll reduction, the range of roll angle is reduced to (−6°, 6°). Roll stabilizing performance is satisfied, and the ability to cope with rough sea conditions proves the robustness of self-adaptive GPC. Simulation results demonstrate that self-adaptive GPC proposed in this paper is an effective method for the controller design of ASV roll motion, especially under rough sea conditions.Figure 25
Simulation without roll reduction whenH
s
=
3 and γ
=
9
0
°.Figure 26
Simulation of self-adaptive GPC whenH
s
=
3 and γ
=
9
0
°.Figure 27
Fin angle of self-adaptive GPC whenH
s
=
3 and γ
=
9
0
°.


## 7. Conclusions

In the end, conclusions are drawn from analysis of simulation results; namely, ASV roll stabilizing performance is favorable under self-adaptive GPC, energy consumption can be reduced, and utilization rate of energy resource is raised by means of optimization if energy consumption is considered in performance index of GPC.



---

*Source: 347589-2014-09-01.xml*