Complementary Constrained Model Predictive Depth Control of a Hybridly-Actuated Submarine Drifter

The submarine drifter is a novel Lagrangian-based observation platform to explore the ocean, but its precise and rapid depth control system design is still an open issue. The major challenge would be the complex hybrid actuation system, which contains anisotropic characteristics and switching issues. In this paper, we proposed an modified complementary constrained model predictive control (MCC-MPC) scheme to meet the metrics. The scheme reformulates complex drifter and hybrid actuation system dynamics into a solvable system with complementary constraints. The nonlinear component inside the system is approximated by applying a sgn-sigmoid approximation function for the sake of linearization and computation. Then the customized online optimizer predicts the system dynamics with complementary constraints and computes the optimal control outputs in the finite horizon in an iterative loop. The validation results prove that the proposed controller can effectively control the submarine drifter to achieve the desired depth and the key metrics are <inline-formula> <tex-math notation="LaTeX">$10\times, 4\times$ </tex-math></inline-formula>, and <inline-formula> <tex-math notation="LaTeX">$2\times$ </tex-math></inline-formula> better than conventional PID control, disturbance observer-based control, and conventional MPC methods, respectively.


I. INTRODUCTION
Ocean observation technology is a crucial topic since it's essential to protect the ocean environment, mine ocean resources, and prevent ocean hazards. The observation methods can be divided into space-based and sea-based: spacebased observations use satellite remote sensing technology or aircraft to obtain sea surface remote sensing data; seabased observations are referred to the measurement systems deployed on vessels, which is the most direct and reliable way to observe ocean. The commonly used ocean mobile observation platforms including ocean research ships, ocean observation stations, and unmanned ocean mobile observation platforms provide more detailed observations of the ocean. In recent years, with the rise of intelligent technology, unmanned ocean mobile observation platforms (e.g., Argo, autonomous underwater vehicle (AUV), underwater glider, The associate editor coordinating the review of this manuscript and approving it for publication was Ton Duc Do . unmanned vessel, drifter, etc.) carrying variety of sensors can perform a series of important tasks in the extreme ocean environment. Though there are still lots of problems of these intelligent platforms, especially, if the observation problem is unique. The ocean current observation is an attractive area for scientists, but the existing methods do not meet the desired performance metrics yet. Argos are challenging to meet precise depth control requirements to conduct reliable measurement because of its inherent driving systems [1]. Their depth is adjusted by a mechanism of a plunger pump to change its gravity which is sensitive to the sea density. Underwater gliders are designed with better driving systems but they do not fit the fine-scale measurement tasks [2], [3]. AUVs that utilize propellers can provide precise position control and are considered as ideal platforms for ocean observation [4], [5]. But its propellers can significantly affect the nature of the ocean current. Unmanned vessels [6] can replace traditional ocean research ship with Acoustic Doppler Current Profiler (ADCP) [7] to fulfill a part of the tasks, but the measurement ranges are limited to the sea surface while three-dimensional information is incomplete.
As a Lagrangian-based observation method, the drifter requires the observation platform to follow the current effectively and can intuitively reflect some physical phenomena in the ocean [8]. Therefore, it can be used for a fine-scale observation of the ocean to make up for the shortcomings of other observation methods [9] (e.g., fixed-point Euler observation using ADCP, self-propelled observation using AUV, glider and vessel, etc.). For example, [10] reveal the influence of geostrophic strain on oceanic ageostrophic motion and surface chlorophyll using the surface drifter; [11] use the drifter to observe submesoscale flow kinematics in the coastal ocean, etc. However, the existing drifters only can follow the two-dimensional flow at the ocean surface or near surface because of their positive buoyancy. Although floats like Argo can change their gravity to dive, they do not have the function of following the current effectively and their depth control is not precise, so they cannot be used as drifter for three-dimensional observation. It's the lack of observation techniques including underwater depth control of the drifter that hinders the application of three-dimensional Lagrangian observation and scientists' further studying of the ocean [12]- [14].
At present, the research works of depth control for underwater vessels are mainly focused on AUVs and remotely operated vehicles (ROVs). For example, [15] use gain-scheduled reduced order output feedback and [16] use reinforcement learning to achieve the depth control of AUVs; [17] use fuzzy PID and [18] use neural network predictive control to provide solutions for the depth control of ROVs. The optimized finite time stabilized attitude control approach with fault-tolerant capability can be also adapted to ROVs and other under water vessels [19], [20]. However, there is no ideal solution to the depth control problem of the drifter. It can't install propellers to reformulate the control problems to AUVs, etc. Because these active driving systems disturb the surrounding flow field and lead the observation tasks to be failed.
By investigating the principles of the different platforms, we propose a novel oceanic observation platform namely submarine drifter with both current following and precision depth control capability. The idea is originated from Argo and surface drifter, but the mechanical structures and the driving systems are completely redesigned. As shown in Fig. 1, the drifter is equipped with sails to improve its ability to follow the current, and hybrid driving system which will be discussed in detail in the next section is used as an actuator for the depth control. Although this design can effectively solve the hardware problem in the application, hybrid driving system greatly increases the difficulty of the control system.
The hybrid depth actuation system is composed of a gear pump and a solenoid valve, which makes the ascending and diving control anisotropic (asymmetrical). Classical solutions like PID control calculate the control output through feedback results without considering these problems, which will cause the driving system to switch passively between the pump and the valve in order to track the control output. Thus, a good performance of depth control cannot be guaranteed. For the ascending and diving directions, the system shows anisotropic characteristics which can be usually formulated as switched control problems. Due to the theoretical difficulties, the authors are proposing an alternative approach. MPC is a kind of optimal control, which can transform nonlinear control problem of the drifter into real-time linear optimal control problem with constraints and be solved by linear quadratic programming [21]. It has the potential to provide the rapidly and precise depth control function for the drifter, if two barriers can be overcome: (1) computation costs and (2) hybrid driving system formulation. The underwater motion of submarine drifter has the characteristics of low dynamic ranges and the macro actuator is not designed to switch rapidly, so the overall bandwidth of the drifter is low enough to allow the engineering to implement complex depth control algorithms of the drifter. The hybrid driving system is also modeled as two actuators with complementary constraints, so the MPC frameworks can be valid.
The main contributions of this paper can be summarized as follows: (1) The intrinsic dynamics of the submarine drifter is analyzed. The unique time delay mechanism and hybrid actuation system inside the drifter are modeled and further approximated for engineering practice.
(2) Modified complementary constrained model predictive control (MCCMPC) is proposed for the depth control, which can handle the nonlinear switching and time delay characteristics with improved settling time and steady state performance.
(3) The computational costs are analyzed and optimized with a customized online solver. This solver transforms the nonlinear optimization problem into an equivalent linear system to accelerate the computation process.
(4) The performance and advantage of the proposed method have been verified with the comparison of other potential controllers. The results show that MCCMPC can effectively control the drifter to the desired depth set point and the key metrics are significantly better than PID control, disturbance observer based control, and conventional model predictive control (MPC).

II. SUBMARINE DRIFTER MODEL A. BOUYANCY MECHANISM
Bouyancy is changed by varying the displacement of the drifter, through an oil-filled bladder system. The control scheme and the inner dynamics of submarine drifter are shown in Fig. 2. The hybrid actuation system (in the blue box) consists of the pump and the valve, which are used to vary the bladder volume. The challenge is that these two mechanisms have completely different dynamic characteristics, and their relationship with the controller is like a single-pole double-throw switch, which will cause discontinuity and anisotropy in modeling and step-like jumps in control. To establish a feasible control solution, these switching dynamics must be investigated and modeled in a practical way. The reminder of this section gives these details.

B. DYNAMIC ANALYSIS
By design, the drifter center of gravity is far lower than its center of buoyancy. Consequently, the submerged drifter maintains a vertical, upright orientation. Define d to be the drifter depth. The vertical motion dynamic is described by: where m is the drifter mass, k is the water damping coefficient, sgn(·) is the signum (sign) function, and F is net buoyancy of the drifter. Net bouyancy is modeled as: where G is the drifter weight, and F b is the controlled buoyancy that is changed by the bladder volume. At equilibrium, F = 0, velocityḋ = 0, and the drifter is suspended in the water.
The relationship between actuator output u and controlled buoyancy F b is given by: where k uF is a buoyancy conversion coefficient for the actuator output u. The hybrid actuation system is furthered described next.

C. HYBRID ACTUATION SYSTEM
As shown in Fig. 3(a), the drifer's hybrid actuation system is mainly composed of a outer oil bladder, gear pump, solenoid valve and inner oil bladder. The outer oil bladder is outside of the control cabin and bears the water pressure, while the other components of the system are installed inside the fixed-volume control cabin. Because the reverse pressure capacity of the pump is low, a one-way check valve is in series with the pump. Otherwise, hydraulic oil will leak back into the inner oil bladder from the outer oil bladder when the reverse pressure is high. The other control branch consists of a solenoid valve. By controlling the flow of hydraulic oil between oil bladders, the system can change the volume of the outer oil bladder, and thusly control buoyancy F b of the drifter. When the gear pump is turned on and the solenoid valve is closed, the hybrid actuation system is equivalent to the situation shown in Fig. 3(b). The hydraulic oil is discharged from the inner oil bladder to the outer oil bladder under the action of the pump, and buoyancy increases.
When the solenoid valve is turned on and the gear pump is closed, the hybrid actuation system is equivalent to the situation shown in Fig. 3(c). Water pressure forces hydraulic oil back into the inner oil bladder, reducing the volume of the outer bladder, resulting in decrease of bouyancy.
The pump and the valve can not be simultaneously opened; the actuator is either in the mode of Fig. 3 Fig. 3(c).

D. MODELING WITH COMPLEMENTARY CONSTRAINTS
The drifter's ascent and descent dynamics are dfferent, and there are step-like jumps in the control because of the switching actions of pump and solenoid valve. In this work, two complementary constraints apply to the hybrid actuation system: where Q is the hybrid actuation system flow rate, Q V is the solenoid valve flow rate, and Q P is the pump flow rate. Valve and pump flow rates are modeled as: where u c is the output of controller, k p is the flow rate coefficient of pump, and f ( p) is the flow rate coefficient of solenoid valve. Coefficient f ( p) is a function of the differential pressure p across the valve, and is modeled by: where k pq is the pressure-flow (p, q) conversion coefficient, k dp is the depth-pressure (d, p) conversion coefficient, d is drifter depth as explained earlier, p atmos is atmospheric pressure, and p in is the inner oil bladder pressure. Analysis of (5) and (6) shows that drifter depth affects the solenoid valve flow rate in nonlinear manner, but the pump flow rate is a constant value. When the drifter is at the water surface, k p is about eight times larger than f ( p). As such, there is a significant nonlinear difference in flow characteristics between the pump and the valve.
Define the state vector x with variables Then the state space model of submarine drifter dynamics takes the form: where x ∈ R 3 , u c ∈ R, and vector field f is given by: Because of the particular design structure of hybrid actuation system, the buoyancy control has to switch between the pump and the valve with distinct difference in flow characteristics. Moreover, it needs time for the actuator to track the control output, which leads to different control response delays under the action of the pump or the valve.
Classical solution approaches like PID control do not directly consider these problems, so a small settling time with response that is free of oscillations cannot be guaranteed. For the ascending and diving directions, the system shows anisotropic characteristics that can be usually formulated as switched control problems. In view of these theoretical difficulties, an alternative approach based on model predictive control (MPC) is used in this work.
MPC has the potential to provide the rapid, precise depth control function for the drifter, if two barriers can be overcome: (1) large computation time, and (2) hybrid driving system formulation. The hybrid actuator is not designed to switch rapidly, however, and the overall bandwidth of the drifter is low enough to allow implementation of complex depth control algorithms. The hybrid driving system is also modeled as two actuators with complementary constraints, so an MPC-based framework is suitable.
In the next section, a conventional MPC approach and its shortcomings are briefly described, followed by description of the main contribution, which is a modified complementary constrained MPC, hereafter abbreviated as MCCMPC.

III. PROPOSED CONTROL STRATEGY
Conventional MPC for drifter depth control is discussed in the first subsection for sake of providing prerequisite materials for the proposed control method. The second subsection details the MPC strategy with MCCMPC.

A. CONVENTIONAL MPC
There are two different approaches to implement model prediction. The first approach is that the anisotropy of model (8) can be considered as one of two separate cases: If u c ≥ x 3 , then the solenoid valve will be opened and the following equivalent submodel is used for MPC prediction, Otherwise, u c < x 3 , the gear pump will be turned on, and the following submodel will be used, This first approach does not solve the discontinuity of model (8). Discontinuous switching between two prediction submodels will occur, which can lead to control extremes (overly timid or overly strong).
A second approach is to avoid switching between prediction submodels (9) and (10). A fixed prediction model could be based on the submodel with smaller gain, i.e. use the submodel that is more conservative. This approach solves the problem of discontinuity, but sacrifices prediction accuracy.

B. MPC WITH MODIFIED COMPLEMENTARY CONSTRAINTS
To overcome the above barriers and drawbacks, a MCCMPC approach that fully considers the anisotropy and discontinuity of the drifter dynamics is presented here.

1) MODEL PREPROCESSING
The complex actual model behavior is the first barrier to be removed, by using several model preprocessing actions. Firstly, the original complex single-input, single-output system with max function is converted to a two-input, single-output system. Next, each discontinuous sgn function in the system model is replaced by a smooth approximation. Lastly, linearization is applied.
In model (8), the control u c is either the solenoid valve control value u v , or the gear pump control value u p . Therefore, the max function can be eliminated by introducing a complementary equality constraint: The physical principles of the hybrid actuation system are reflected by additional inequality constraints: where u max , u min are the respective maximum and minimum output of hybrid actuation system. These equations show that the boundary of constraints is dynamic and the optimal solution must satisfy one-way flows of the pump and valve. Therefore, equations (4), (5) are equivalent to these relations: The sgn function is next approximated by a sigmoid function: where k s ≥ 0 is the sigmoid coefficient that affects approximation accuracy. Fig. 4 shows a comparison of the sgn and S(x) curves for k s = 1, 10, and 100. Choosing a large k s makes the S(x) curve very similar to the sgn function, but also causes the sigmoid to be insensitive to the argument x, and affects the numerical stability of the optimization solver. To illustrate the feasibility of approximating the sgn function, the original model (8) is compared to one having the approximation S(x) with k s = 100. Three different input signals (unit step, unit pulse train, and unit sine) are used to excite the two models. The frequency of pulse train and sine wave is 0.5 Hz, and the initial depth d = 10 m. The results are shown in Fig. 5. With the step signal, the valve remains open and the drifter descends (dives). Under the action of periodic signals, the pump and the valve switch at a frequency of 0.5 Hz and because Q P > Q V , the drifter ascends (decreasing depth). Original and approximate models exhibit almost no differences in response to these typical signals.
After conversion and approximation of the system model, the state-space model of the drifter dynamics with two inputs becomes: The final step of model preprocessing is linearization of (15), which is performed in every MPC iteration. The linearized model takes the form:ẋ Note that the preprocessing results in a two-input model, where bold-face u ∈ R 2 is a vector with elements representing the valve and pump effects.

2) MCCMPC STRATEGY
For online numerical calculations, state-space model (16) is discretized: In the above, subscript d denotes discrete-time, and should not be confused with the symbol for water depth. To improve steady-state performance, integrating control action is introduced by rewriting model (17) in incremental form and augmenting the model as follows: x(k + 1) where where N c is the control horizon, and define the output prediction sequence where N p is the prediction horizon. Here u(k) is the control increment at time k, and y(k + 1|k) is the output of the time k + 1 predicted at time k. The relationship between U and Y is: where The MPC strategy is designed to minimize both the depth control tracking error and the speed of response. These requirements are expressed as a quadratic cost function: where vector R s ∈ R N P ×1 is the reference depth sequence. In the second term, coefficient matrix R ∈ R N P ×N P is adjusted for the trade-off between tracking error and speed of response (control effort). Substituting (19) into (20), the MPC depth control problem with hybrid actuation is described by the quadratic cost minimization problem: subject to the constraints: There are two additional problems that must be solved to ensure the performance of the closed-loop system and reduce computational burdens: (a) selection of MPC parameters, and (b) the treatment of complementary constraints. These issues are addressed next.

3) MPC TUNING CONSIDERATIONS
MPC parameters N p , N c , and R are critical to system performance. The length of prediction horizon is N p , which is the number of time steps to predict future output at each optimization iteration. Adjusting N p affects the compromise between computational efficiency and prediction accuracy. Because the drifter system has significant nonlinearity, VOLUME 8, 2020 behaviors over a long predictive horizon (large N p ) will deviate from the linearized operating point of the current iteration and may cause instability. On the other hand, a short prediction horizon cannot provide enough contributions for optimization. In general, 20-30 time steps have been found appropriate, given the low dynamics of the drifter.
Control horizon N c ranges from 1 to N p . Derivation of the matrices F and in (19) indicates that the tuning philosophy for N c is similar to N p , by balancing the computing resource and performance. This application takes advantage of the relatively slow dynamics of the submarine environment, and suggests that N c be gradually increased to maximize the control performance.
Matrix R is a soft constraint on the rate of u, and affects settling time and overshoot. This parameter is gradually increasted until the overshoot and settling time are acceptable.

4) COMPLEMENTARY CONSTRAINT PROCESSING
Equation (21) is subject to nonlinear inequality constraints. The problem can be converted to an unconstrained optimization problem by using the method of Lagrange multipliers, and then solved by Newton's method [26], but real-time implementation is difficult and solution accuracy cannot be guaranteed. In this work, the nonlinear constraints are treated as three different cases: The corresponding control constraints are transformed as follows: and u c can be remapped to: Thus, MPC depth control of submarine drifter is expressed as an optimization problem to solve quadratic programming, where the nonlinearly constrained problem is equivalent to three linear quadratic programming problems. The three programming problems can be solved by the primal-dual method [27] and their optimal values can be found respectively in a few optimization iterations. The minimum optimal value among these case is the desired optimal value.

5) SOLVER IMPLEMENTATION
Algorithm (1) details the MCCMPC depth control algorithm of the drifter. The algorithm can be divided into three parts: real-time linearization, optimal value calculation, and state feedback. In each iteration, model (8) is linearized The optimal control sequence is obtained by solving the equivalent problem of complementary constraints. Finally, the latest control increment is output by the controller until the next iteration arrives. Discretize model to obtain A, B, and C. 6: Compute T , T R s and T F; 7: Considering 3 cases: 10: Compute U * = [ u(k), u(k + 1), . . . , u(k + N c − 1)]; 11: u(k) = u(k − 1) + u(k); 12: Output u(k); 13: k = k + 1; 14: end while

C. OTHER CONTROL METHODS FOR COMPARISON
PID control is one of two other control approaches that are considered. There exist well-established PID tuning methods that can treat the process as a ''black box'' to achieve desired performance [28]. For this application, the PID control approach fails to achieve the desired objectives. The hybrid actuator system switching behaviors and highly nonlinear system dynamics are not adequately considered by PID tuning.
The second control approach considered is the use of the disturbance observer, which treats the nonlinearity and anisotropy of the drifter as internal lumped disturbances, and estimates and compensates these disturbances [29], [30]. Under the framework of the disturbance observer, the drifter model can be rewritten as: where f (x) + g 1 (x)u c represents the approximate characteristics of the drifter in one direction (either ascent or descent), while the other direction and the remaining uncertainties are expressed in disturbance term δ. Vector fields g 1 (x), g 2 (x) are smooth with respect to x, but (8) has nonlinear terms with sgn and max functions coupled to each other, and this will make the disturbance term have a more complex structure and stronger nonlinearity. Performances of the proposed modified complementary constrained MPC (MCCMPC), conventional MPC, PID control, and disturbance observer based control (DOBC) are compared in the next section.

IV. VALIDATION
Experiments and simulations to validate the submarine drifter system are presented here. To guarantee the feasibility of the proposed method, the model parameters of the drifter are firstly characterized by experiments. Simulation comparisons of several control methods are evaluated using M ATLAB S IMULINK.

A. IDENTIFICATION OF MODEL PARAMETERS
The overall dimension of the drifter is 0.8 × 0.8 × 3.0 m and contains four water sails arranged in a cross, an antenna, a set of linearly arranged sensors and an outer oil bladder. In the cabin of the drifter, there is a 24V battery, a STM32Fx microcontroller, a gear pump, a solenoid valve, an inner oil bladder and several sensors such as flow sensor, pressure sensor, etc. The drifter's parameters can be identified separately. For example, experiments of identifying the water damping coefficient k are carried out with five fixed actuator output values u. The real response are plotted in Fig. 6, and we can calculate k by fitting these curves according to equation (1). Buoyancy conversion coefficient k uF can be obtained by calibrating the volume change of outer oil bladder caused by u. Pump's flow rate coefficient k p and pressure-flow conversion coefficient k pq can be measured by flow experiments. And the other parameters such as atmospheric pressure p atmos , inner oil bladder pressure p in and the depth-pressure conversion coefficient k dp are known constants. The final state-space model of (15) is identified as: and the control constraints are identified as:

B. SIMULATION CONFIGURATION AND MCCMPC PARAMETER TUNING
MATLAB R2014a is used to simulate and compare depth control using PID, disturbance observer based control (DOBC), conventional model predictive control (MPC), and the proposed MCCMPC. In Sec. III-A, two methods for conventional MPC were described -the simulation comparisons use the first method. All programs are running on the Intel i5-4200U CPU. The sampling rate is 1 Hz.
In Fig. 7, curves data1-data7 are the system responses during parameter tuning. The line data8 is the depth setpoint (r = 3m), and curve data9 is the satisfactory response achieved after tuning is completed.
At the start of tuning, the system is initialized with a small R, a large prediction horizon N p and a small control horizon N c , resulting in large overshoot, as plotted in data1. Increasing R gradually reduces overshoot, as illustrated by data2 and data3. Tuning R is insufficient to achieve satisfactory performance; as discussed earlier, the prediction horizon N p also affects response qualities. Curves data4 -data7 illustrate the effect of adjusting N p . Control horizon N c is gradually increased to achieve satisfactory system performance plotted in data9.

C. DEPTH CONTROL RESULTS
Two different depth set-point values of r = 3m and 10m are considered. For conventional MPC, the parameter ranges are N p ∈ [20,30], N c ∈ [3,10] and R ∈ [0.2, 1], and the best performance is selected for comparison. The PID controller tuned by Ziegler-Nichols (ZN) method [31] resulted in controller gains K P = 2.3, K I = 0.01, K D = 10, and the disturbance observer design follows the parameter tuning instructions in [32].

1) COMPARISON OF SETTLING TIMES
System response to PID control, disturbance observer based control (DOBC), conventional MPC, and the proposed MCCMPC are plotted in Figs. 8,9,10, and 11, respectively, for the dive from the surface to a depth r = 3m. It is important to note that the time scales are different for the four cases. There are clear differences in settling time; the drifter settles approximately 12 times faster under MCCPCC compared to PID control. The proposed MCCMPC response also settles faster than MPC and DOBC. Responses to a deeper dive (r = 10 m) are plotted in in Fig. 12, 13, 14, and 15. The proposed MCCMPC still takes the shortest time, about 65s.  Responses to PID, DOBC and MPC take approximately 300s, 275s and 140s, respectively.
It may seem strange that the system response with PID control at larger set-point r = 10m is faster than the smaller set-point r = 3m. This strange phenomenon is determined by the interacting characteristics of both the PID controller and hybrid actuation system. Under PID control, a larger set-point value will produce a larger control output, which is beneficial to the diving acceleration process of the drifter. Furthermore, the solenoid valve flow rate gradually increases with diving depth.   When the set-point is r = 3m, the drifter under PID control fluctuates about ±0.15m, while it only fluctuates about ±0.02m with MCCMPC. Although MPC and DOBC have significantly less fluctuations at the set-point than PID, they overshoot about 10% and 14%, respectively. When the set-point is r = 10m, the fluctuation of the drifter under PID control become worse and is about ±0.2m with about 15% overshoot. MPC and DOBC also have 10% and 20% overshoot respectively. while the fluctuation of the drifter under MCCMPC is about ±0.025m without any clear overshoots.

2) COMPARISON OF STEADY STATE PERFORMANCE
In summary, the MCCMPC approach can fully take advantage of modelling knowledge -it considers both the floating and the diving characteristics of the drifter, and achieves the best performance. The advantages will be discussed further in the following subsection.

3) ANALYSIS OF DEPTH CONTROL
We also simulate depth control from 1m to 10m in incremental steps of 1m. The rms error values and settling times are tabulated in Table 1.  PID depth control has a overall worse performance than MCCMPC. It regards the drifter as a single-input singleoutput system, without considering the internal operating VOLUME 8, 2020 mechanism of the system. The magnified details of PID control in Fig. 8 and Fig. 12 show that the actuator has to switch between the pump and the valve in order to track u c . At 1 Hz sampling frequency, the actuator output u will exceed or fall below the u c within the sampling interval, which results in switching. As we can see from Fig. 8 and Fig. 12, although the drifter under PID control responds faster at r = 10m than r = 3m, the diving speed is not slowed down in advance which makes the drifter produce about 15% overshoot. The valve flow rate also increases nonlinearly with depth, while the pump flow rate remains constant. PID tuning does not account for these changes effectively, so the steady state performance under PID control cannot be guaranteed. Therefore, these defects of the PID controller cause the poor performances, which reflect in the slow system response and large fluctuation.
Compared with PID control, the performances of depth control using MPC and DOBC have been improved. However, they still show slower response speeds and large overshoots compared to MCCMPC. DOBC simplifies model (8) by considering the anisotropy and nonlinearity of the model as lumped disturbances, and uses disturbance observer to make compensation. Because the discontinuous functions such as sgn, max in the original model are coupled together, the disturbance term has a complex structure and strong nonlinearity. The disturbance observer cannot fully compensate it instantly, so the tracking speed of the drifter can be greatly affected. MPC makes prediction basing one direction's characteristic. When switching occurs between (9) and (10), the optimal solution and optimal state calculated by the previous submodel will not be applicable under the current submodel. Therefore, MPC that does not consider complementary constraints cannot achieve the desired control performance because of the large model mismatch.
In contrast, the MCCMPC solution has showed its merits from multiple aspects. The improvements are conducted by appropriately solving the nonlinear and non-ideal characteristics. It reformulates the SISO complex switch system into a two-input-single-output system with constraints which simplifies the controller design procedures. Then the flow characteristics between the pump and the valve are also taken into account based on the system model. With the well established nominal model, it predicts the future state within a certain time window based on the current state, and optimizes the controller output with cost function, which makes the switching between the pump and the valve more proactive. By reviewing the results that illustrated in Fig. 11 and Fig. 15, the results of the depth control with MCCMPC can be divided into three stages: dive accelerating, buffering and decelerating, and maintaining steady state. It makes predictions before the set-point arrives to slow down the drifter and proactively adjust the switching between the pump and the valve at the steady state, which makes the drifter respond quickly without overshoot and almost has no fluctuation at the set-point.

4) FEASIBILITY ANALYSIS OF MCCMPC ONLINE IMPLEMENTATION
The computation cost is the major concern for MPC-based controls. We evaluated the computation time of our proposed solver. In make a fair comparison, we also used MATLAB's nonlinear solver fmincon [33] to solve the complementary constraint in equation (21). That is, we use fmincon to directly obtain the optimal U in Algorithm (1) instead of steps 7, 8, and 9. Fig. 17 shows the computational cost of Fig. 15.
After the equivalent constraints processing, the average time for the controller to calculate the optimal value in each iteration only takes 0.02s, which is a small fraction of the 1s sample period. In contrast, it takes more than 10 times cost to solve the complementary constraints directly using fmincon. This is because we transformed the original nonlinear complementary constraint optimization problem into a linear constraint optimization problem. The solutions to the linear constrained optimization problems are all on the boundary of the convex polygon formed by its constraints, which is easy to find. Therefore, the processing of complementary constraint can satisfy the requirement of online MCCMPC implementation.

V. CONCLUSION
In this paper, a modified complementary constrained MPC scheme (MCCMPC) is proposed to precisely control the depth of a submarine drifter with hybrid actuation system, which cannot be processed efficiently by standard controllers. The drifter's control system model is established with equivalent constraints, and the model parameters of actual submarine drifter are characterized by experiments. The complementary constraint is transformed into three linear quadratic programming problems in order to implement online application. Compared with other three control methods, the proposed MCCMPC scheme achieves satisfied performance by solving the difficult nonlinear dynamics with complemenatary constraints and providing the accelerated optimization solver. The key metrics of the drifter under the proposed method show an overall improvement of 10x compared to classical methods.
We admit that this solution requires more works involving accurate system identification to conduct a reliable prediction model and relatively complex solver implementation. However, the validation sufficiently prove that this MCCMPC is able to fulfill the mission of depth control of the drifter. The suggested future work would be an auto tuning algorithm for MCCMPC and evaluate its anti-disturbance capability.