# Robust Transceiver Design for IRS-Assisted Cascaded MIMO Communication Systems
## 3 Achievable Rate (Full-Duplex Relay)
### Algorithm Description
One approach to solve this problem is to solve it iteratively. With this method, first one finds the optimal \(\gamma_{s}\) by solving the maximization part of (37) under the assumption that the optimal \(\sigma_{r}\) is given, and then, having the optimal \(\gamma_{s}\), the minimization part of (37) can be solved efficiently. This process goes on until the convergence of \(\gamma_{s}\) and/or \(\sigma_{r}\). The maximization part is performed using the water-filling method. However, the additional conditions \(\forall\ i\leq\min(M,K_{r}),\sigma_{1_{i}}^{2}\gamma_{s_{p(i)}}\geq\sigma_{1_{ i+1}}^{2}\gamma_{s_{p(i+1)}}\) should be taken into account. For instance, if the optimal value for \(\gamma_{s_{i}}\) turns out to be equal to zero, then we should have \(\gamma_{s_{j}}=0\) for all \(j>i\) irrespective of their SNR. Figure 5 depicts two different examples of multi-level water-filling algorithms. As it can be seen, first, a regular water-filling algorithm is considered where for each subchannel we have \(\frac{\sigma_{1_{i}}^{2}}{1+\gamma_{t_{1}}\sigma_{p(i)}^{2}}\) as its channel gain. After finding the water-level in this way, we need to impose \(\gamma_{s_{p(i+1)}}\leq\frac{\min_{1\leq\sigma_{i}\leq\sigma_{1_{i}}^{2}} \gamma_{s_{p(f)}}}{\sigma_{1_{i+1}}^{2}}\). These additional restrictions act like caps on top of the water and create multilevel water-filling which can be interpreted as a cave. Figure 5a shows the case where these caps do not make any subchannel to have zero power. However, Figure 5b shows the case where subchannel \(i=13\) has to be zero as a result of the cap imposed by the additional constraints (37d). In this case, we have \(\gamma_{s_{p(13)}}=0\), and as a result \(\min_{1\leq\sigma_{i}^{2}\leq 13}\{\sigma_{1_{i}}^{2}\gamma_{s_{p(f)}} \}=0\). Thus, this condition forces all other subchannels (i.e., \(i>13\)) to get no power. Algorithm 1 provides the detail of multilevel water-filling. For the minimization part, a Lagrangian multiplier is used. We have  
\[L=\sum_{i=1}^{\min(M,K_{r})}\log_{2}\left(1+\frac{\sigma_{1_{i}}^{2}\gamma_{s_ {p(i)}}}{\sigma_{t}^{2}+T_{1}P_{s}+\gamma_{t_{r}}\sigma_{r_{p(i)}}^{2}}\right) +\lambda\left(\sum_{i=0}^{N}\sigma_{r_{i}}^{2}-T_{r}\right). \tag{38}\]  
Calculating \(\frac{\partial L}{\partial\sigma_{r_{i}}^{2}}=0\) we arrive at  
\[\sigma_{r_{i}}^{2}=\left[\frac{\sqrt{\left(\sigma_{1_{i}}^{2}\gamma_{s_{i}} \right)^{2}+\frac{4\sigma_{1_{i}}^{2}\gamma_{s_{i}}\gamma_{t_{i}}}{\lambda}} -\sigma_{1_{i}}^{2}\gamma_{s_{i}}-2(\sigma_{t}^{2}+T_{1}P_{s})}{2\gamma_{r_{i }}}\right]^{+}, \tag{39}\]  
where \(\lambda\) is the water level. Figure 4: Cumulative distribution function (cdf) of iterations when \(P_{s}=5\) and \(P_{\text{r}}=1\) and \(M=K_{\text{t}}=K_{r}=N=10\). The maximum number of iterations is set to be 50. Cases that took more than 50 iterations to converge are considered to be divergent. Similarly to the maximization case, there are additional constraints \(\gamma_{r_{i}}\sigma_{s_{p(i)}}^{2}\geq\gamma_{r_{i+1}}\sigma_{i+1}^{2}\) that must be considered during the minimization process. However, it can be shown that if the constraints \(\gamma_{r_{i}}\geq\gamma_{r_{i+1}}\) and \(\sigma_{1_{i}}^{2}\gamma_{s_{p(i)}}\geq\sigma_{1_{i+1}}^{2}\gamma_{s_{i+1}}\) are met, then the constraint \(\gamma_{r_{i}}\sigma_{s_{p(i)}}^{2}\geq\gamma_{r_{i+1}}\sigma_{r_{i+1}}^{2}\) becomes redundant. Please refer to Appendix E for proof. The summary of the algorithm to find the achievable rate can be found in Algorithm 2. Next we deal with the optimization for the cases where IRS is utilized to help either the source-relay or relay-destination channels. In such cases, the optimization part over the covariance matrices remains the same as the abovementioned case. In addition, the optimization of the IRS elements can be performed using eigenvalue decomposition and the algorithm introduced in [8].