# Multi-Dimensional Sparse-Coded Ambient Backscatter Communication for Massive IoT Networks
## 3 Sparse Codes
### Design of Constellation Mapping Function  
When the tags have data to transmit to the reader, they can generate \(V=\log_{2}M\) bits data \(\vec{\mathbf{d}}_{n}=[\vec{d}_{n,1},\cdots,\vec{d}_{n,V}]\in\{\hat{\mathbf{d}}(1 ),\cdots,\hat{\mathbf{d}}(m),\cdots,\hat{\mathbf{d}}(M)\}\), where \(\hat{\mathbf{d}}(m)=[\vec{d}_{1}(m),\cdots,\vec{d}_{V}(m)]\in\mathbb{B}^{1 \times V}\), and modulate constellation symbols in \(K_{1}\)-dimensional signal space with power reflection ratio \(0<\alpha\leq 1\). Typically, AmBC modulation is implemented by BPSK modulator with \(2\leq\tilde{M}\leq 3<M\) states of reflection coefficients. Based on the BPSK backscatter modulator, we can define a backscatter symbol vector \(\vec{\mathbf{b}}\in\mathbb{C}^{\tilde{M}\times 1}\) as  
\[\vec{\mathbf{b}}= \begin{cases}[\vec{b}(\vec{m}_{1}),\vec{b}(\vec{m}_{2})]^{T}= \sqrt{\alpha}[1,-1]^{T},&\text{for }\tilde{M}=2,\\ [\vec{b}(\vec{m}_{1}),\vec{b}(\vec{m}_{2}),\vec{b}(\vec{m}_{3})]^{T}=\sqrt{ \alpha}[1,0,-1]^{T},&\text{for }\tilde{M}=3.\end{cases}  \tag{15}\]  
Choice of the number of projection points \(\tilde{M}\) depends on the energy efficiency, complexity and BER performance. Figure 4 shows the signal constellations for \(\tilde{M}=2,3\). There are \(M=4\) constellation points with minimum Euclidean distance \(d_{\min}=\sqrt{2\alpha}\) and \(\tilde{M}=3\) projection points [26; 27] in the dimension \(k_{1}=1,2\) (i.e., horizontal and vertical axes) in Figure 4a. On the other hand, in Figure 4b, \(d_{\min}=2\sqrt{\alpha}\) and only \(\tilde{M}=2\) projection points are present in each dimension \(k_{1}\). By choosing \(\tilde{M}=2\), we can achieve the larger minimum Euclidean distance among constellation points and the lower decoding complexity of order \(\mathbb{O}(\tilde{M}^{N_{1}})\) where \(N_{1}\) is the number of interfering tags in each dimension. Besides, since fewer points are required in each dimension, the algorithm complexity for optimizing the constellation mapping function will be lowered, so the mapping can be systematically optimized for general values of \(K_{1}\) and \(M\). For this reason, we choose \(\tilde{M}=2\) for optimal design of the constellation mapping function, which is beneficial in terms of the Euclidean distance and encoding/decoding complexity. Figure 4: Comparision of symbol mapping for \(M=4\) and \(K_{1}=2\). (**a**) \(\tilde{M}=3\) projection points; (**b**) \(\tilde{M}=2\) projection points. Figure 3: Brief overview of MSC-AmBC modulation at RF tags. To design an optimal constellation mapping function, we define a constellation mapping matrix \(\tilde{\mathbf{F}}=[\tilde{\mathbf{f}}_{1}^{T},\cdots,\tilde{\mathbf{f}}_{m}^{T}, \cdots,\tilde{\mathbf{f}}_{M}^{T}]^{T}\in\mathbb{C}^{M\times K_{1}}\) with \(K_{1}\geq\log_{2}M\). Then the row vector \(\tilde{\mathbf{f}}_{m}=[\tilde{f}_{m}(1),\cdots,\tilde{f}_{m}(K_{1}),\cdots, \tilde{f}_{m}(K_{1})]\in\mathbb{C}^{1\times K_{1}}\) denotes the constellation point in \(K_{1}\)-dimensional signal space. Then the optimization problem for maximizing the minumum Euclidean distance among the constellation points can be formulated as  
\[ \begin{gathered}\max_{\{\tilde{\mathbf{f}}_{m}\}_{m=1,\cdots,M}} \min_{m_{1}\
eq m_{2}}\|\tilde{\mathbf{f}}_{m_{1}}-\tilde{\mathbf{f}}_{m_{2}} \|^{2}\\ \text{s.t.}\quad\tilde{f}_{m}(k_{1})\in\{\tilde{b}(\tilde{m}_{1}), \tilde{b}(\tilde{m}_{2})\},\quad m=1,\cdots,M,\quad k_{1}=1,\cdots,K_{1}.\end{gathered}  \tag{16}\]  
To solve the above optimization problem, we derive the constellation mapping matrix \(\tilde{\mathbf{F}}\) with \(m=2,4,8\) and \(K_{1}=1,2,3\) as depicted in Figure 5. By placing some constellation points in the lattice with Gray code labelings, we can observe the following remarks on design of the constellation mapping matrix \(\tilde{\mathbf{F}}\). **Remark 1**.