# Robust Transceiver Design for IRS-Assisted Cascaded MIMO Communication Systems
## 3 Achievable Rate (Full-Duplex Relay)
### Algorithm Description  
In this subsection, our proposed algorithm is given. In short, it works as follows. First, based on the task of the IRS in the system, we compute the effect of IRS on the RSI, source-relay and/or relay-destination channel links. After that, we design the best signal design for the source and relays transmitters with the objective of maximizing the throughput. In the rest of this subsection, the detailed explanation of the algorithm is given. First, we need to solve the optimization problem (37). It can be readily shown that \(R_{\rm rd}^{\rm FD}\) is a monotonically increasing function of \(P_{r}\). Furthermore, one can show that \(R_{\rm sr}^{\rm FD}\) is an increasing function with respect to \(P_{s}\) and a decreasing function with respect to \(T^{\prime}\) and \(P_{r}\) (See Appendix D). Consequently, the worst-case RSI chooses a strategy to reduce the spectral efficiency, while the relay and the source cope with such strategy for improving the system robustness. That means, on one hand, the RSI hurts the stronger eigendirections of the received signal space more than the weaker ones. However, on the other hand, the source tries to cope with this strategy adaptively by smart eigen selection. This process clearly makes the optimization problem complicated at the source-relay hop. Unlike the source-relay hop, the resource allocation problem at the relay-receiver hop is rather easy. Since at the relay-receiver hop there is only one maximization, we can find the sum capacity simply by using the well-known water-filling algorithm. Observe that although finding each \(R_{\rm sr}^{\rm FD}\) and \(R_{\rm rd}^{\rm FD}\) separately is a convex problem, the problem (37) as a whole is not convex. Therefore in this paper, we find the optimal \(R_{\rm sr}^{\rm FD}\) by keeping \(R_{\rm rd}^{\rm FD}\) fixed. Then we use the resulting \(R_{\rm sr}^{\rm FD}\) to find optimal \(R_{\rm rd}^{\rm FD}\) and again, using the new resulted \(R_{\rm rd}^{\rm FD}\) to find optimal \(R_{\rm sr}^{\rm FD}\). This iterative process repeats until the convergence. Our simulation showed that the algorithm has a very fast convergence and only in rare cases does it take more than 20 iterations for the algorithm to converge. This is mainly due to the fact that inequalities (37d) and (37e) restrict the eigenvalues to vary up to a certain limit, which in turn, makes the whole outputs more stable. Figure 4 depicts a typical histogram of iterations. As it can be seen, only less than 3% of cases did not converge until 50 iterations. Notice that the optimum values for the transmission power on relay hop may not sum to \(P_{r}\). The reason is that \(R_{\rm sr}^{\rm FD}\) is a monotonically decreasing function of \(P_{r}\) and as we are interested in the \(\min(R_{\rm sr}^{\rm FD},R_{\rm rd}^{\rm FD})\), with \(R_{\rm sr}^{\rm FD}<R_{\rm rd}^{\rm FD}\) we will have \(\min(R_{\rm sr}^{\rm FD},R_{\rm rd}^{\rm FD})=R_{\rm sr}^{\rm FD}\). Therefore, it is in our interest to keep \(P_{r}\) as low as possible to increase \(R_{\rm sr}^{\rm FD}\) as much as possible. Analogously, in the case of \(R_{\rm sr}^{\rm FD}>R_{\rm rd}^{\rm FD}\) we have \(\min(R_{\rm sr}^{\rm FD},R_{\rm rd}^{\rm FD})=R_{\rm rd}^{\rm FD}\) which can be increased by increasing the total power usage of relay's transmitter. As a result, the well-known bisection method can be used to find the optimal rate where we have \(R_{\rm sr}^{\rm FD}=R_{\rm rd}^{\rm FD}\), unless the case \(R_{\rm sr}^{\rm FD}\geq R_{\rm rd}^{\rm FD}\) happens even if the maximum allowed power is used at the relay transmitter. In such a case, the relay-destination link becomes the bottleneck. Now we focus on how to find \(R_{\text{sr}}^{\text{FP}}\). In order to find the sum rate for the source-relay hop, we assume that we are already given \(\gamma_{r}^{*}\) which is the vector of relay input powers that maximizes the sum rate at the relay-destination hop. The next step is to complete the minimization over \(\sigma_{r}\) and the maximization over \(\gamma_{s}\).