## 5 Properties Analysis of the Functions \(\varphi_{m}^{s}\)
### Single-Resource-Block Maritime User Allocation
The left derivative of \(W_{s}{{}^{\prime}}(p^{s})\) concerning \(p^{s}\) can be described as follows [32]:

\[\varphi_{2}=\psi[a,\,n,\,m+1]. \tag{40}\]7

where \(l\) represents the index value when \(\widehat{p}_{l}^{s}\) reaches the upper limit of the power budget on this resource block \(s\). Algorithm 5 describes the pseudo-code of the GRAD algorithm. In the third line, we initialize the fault tolerance \(\xi\) to represent the iteration termination condition. From lines 5 to 6, the gradient of \(\sum_{s\in S}W_{s}\) evaluated at the power budget vector \(\mathbf{P^{s}}\) denotes the search direction. At line 7, we can adjust the \(\lambda\) by means of a precise straight-line search simulation. Finally, the projection of \(\mathbf{P^{s}}+\lambda\triangle\) in the search constraint space is calculated effectively at line 8. ```
1:FunctionGRAD\(\left(\mathbf{\mathrm{Input}:\mathbf{a},\mathbf{T},\mathbf{B_{S}},\mathbf{G_{t}^{s}(\mathbf{t}\in\mathbf{T}),\mathbf{ \sigma}_{t}^{s}(\mathbf{t}\in\mathbf{T}),\mathbf{A},\mathbf{P_{max}^{s}}}}\right)\)
2:Let \(\mathbf{P^{s}}\gets 0\) be the starting point
3:While\(\left\|\mathbf{P^{s}}\ast-\mathbf{P^{s}}\right\|\succ\xi\)do
4:Conserve the preceding vector \(\mathbf{P^{s}}\ast\leftarrow\mathbf{P^{s}}\)
5:Determine a search direction \(\triangle\)
6:\(\triangle\leftarrow\left(W_{1}{{}^{\prime}}(p^{1}),W_{2}{{}^{\prime}}(p^{2}), \ldots,W_{S}{{}^{\prime}}(p^{S})\right)\)
7:Select a step length \(\lambda\)
8:Update \(\mathbf{P^{s}}\leftarrow\) projection of \(\mathbf{P^{s}}+\lambda\triangle\) in search space: feasible set \(\left\{\mathbf{P^{s}}:\mathrm{C2}:\sum_{s\in S}^{s_{max}}p^{s}\leq P_{max}\right.\)
9:Endwhile
10:Return \(P^{s}\)
11:EndFunctionGRAD
```

**Algorithm 5** Heuristic algorithm based on gradient descent (GRAD)

When we adopt RBUA as the basic module in the multi-resource-block joint optimization, the GRAD algorithm achieves the complexity of \(O(log(1/\xi)SAT^{2})\). However, the application of our improved method RBPUA to the GRAD scheme reduces the complexity to \(O(SAT^{2}+log(1/\xi)SAT)\). ### Multiple-Choice Knapsack Algorithm Based on Dynamic Programming (MCKP-DP)

We have simplified and transformed the objective function before to deal with the problems of joint marine users and power allocation more simply. This process depends on the change in variable \(p^{s}\) with a continuous search space. However, the research on NP-hard optimization and the relevant approximate algorithm requires that the accuracy of the parameters and variables be bounded. In that case, the discretization of variables can be adopted to simplify the complexity [33]. This method of discrete simplification is suitable for practical systems limited by a minimum transmit power at the coastal BS. In conclusion, we can discretize the seek constraint space similarly to the method in reference [9]. We set the minimum discrete transmit power value as \(p\). The power budget \(p^{s}\) on each resource block is a multiple of the minimum power \(p\): \(P^{s}=j\times p,j\in\left\{0,1,2,..,\left\lfloor\frac{p^{s}}{p}\right\rfloor\right\}\). Let \(J=\left\lfloor\frac{p^{s}}{p}\right\rfloor\) represent the total number of items with an allocated power. Then, we discretize the constraint conditions of the optimization function into a feasible set \(F\), which is expressed as follows:

\[\varphi_{2}=\psi[a,\,n,\,m+1]. \tag{40}\]8

Through the discretization of the power budget on each resource block, problem \(W_{MRB}\) can be transformed into the classic multiple-choice knapsack problem \(W_{MCKP}\)[28]:\[\varphi_{2}=\psi[a,\,n,\,m+1]. \tag{40}\]9

\[X[a,\,n,\,m]=\widetilde{p}^{*}, \tag{41}\]0

\[X[a,\,n,\,m]=\widetilde{p}^{*}, \tag{41}\]1

\[X[a,\,n,\,m]=\widetilde{p}^{*}, \tag{41}\]2

\[X[a,\,n,\,m]=\widetilde{p}^{*}, \tag{41}\]3

In the \(W_{\text{MCKP}}\) problem, we define \(S\) non-intersecting classes to represent \(S\) non-interfering resource blocks. Each class includes \(J\) items packed into a backpack with a capacity of \(P_{\text{max}}\).