Introduction
The number of connected machines will reach 50 billion by 2020 with an ever-increasing demand for wherever and whenever communications [1]. The challenges of future mobile and wireless communication systems are to address these societal needs by improving the energy and the spectral efficiency, while lowering the cost and improving the scalability to deal with a large number of connected devices.
Wireless Machine-to-Machine (M2M) communication is a typical class of wireless communication which is expected to develop tremendously in the future. This is especially related to the emergence of surveillance applications/remote control in various fields such as the environment (to anticipate the volcanic eruptions for example), health (for tracking a patient at home from the surgery) or the industry 4.0 (sensor networks, smart meters). The M2M challenge [2] involves the deployment of a huge number of connected machines which are stand-alone energy devices and with a limited complexity processing capability. Information is transmitted to a concentrator (or fusion center) having a higher processing capability.
M2M communications have low data rates and transceivers are most of the time idle, yielding sporadic traffic with short frames. To reduce the frame overhead, the connected objects directly send their data packets without signaling, in a random access manner. Thus, the receiver has to detect both the activity of the objects and the transmitted data. Due to the low activity rate, the number of simultaneous active objects is rather small compared to the total number of objects. If the number of objects is huge, though, the system of equations to be solved to recover the active users and their data may be underdetermined.
However, assuming that the number of simultaneous active objects is small compared to the total number of objects yields the solution of the system to be sparse. Solving such sparse underdetermined systems can be successfully performed thanks to Compressed Sensing based Multi-User Detection (CS-MUD) [3], where algorithms from sparse signal processing and Compressed Sensing (CS) are utilized. CS has applications in many different research topics such as radar [4], neural network [5], image processing [6], channel estimation [7], etc. CS theory permits the sensing and recovery of sparse signals using a small number of linear measurements, roughly proportional to the number of non-zero values the signals take in the sparse domain [8], [9].
Various CS algorithms apply to solve problems made of an underdetermined set of equations. These algorithms can be classified into two categories. The first one includes all convex optimization algorithms [10]. They involve a sparsity promoting term, using the
In addition to sparsity and depending on the application, other constraints can be considered in the recovery problem formulation. For example in multi-band signals [14], face recognition [15], spectrum sensing, equalization of sparse communication channels, the non-zero values are not only few, but they are also clustered in blocks [16]–[18]. Such a signal is said to be block-sparse. Non-zero values usually take values in a specific set that can be either bounded to some continuous convex region or discrete (alphabet). Both features (structure and set) can define additional constraints. However a discrete set (non-zero values) means a non-convex solution space, which complicates its consideration in the problem formulation. This is the reason why most published CS algorithms, which are dedicated to finite-alphabet recovery, propose to relax the discrete set constraint to convex constraints [18]–[21].
In this paper, we consider the detection of block-sparse signals whose non-zero values belong to a finite alphabet. We apply a two-step signal recovery, carrying out the support detection first (localization of non-zero blocks), followed by the data estimation (evaluation of non-zero values). The support corresponds to the non-zero positions in the signal vector. The separation between support detection and data estimation has already been considered in [3] and will be referred to as ED-LS. It proposes an energy detection (ED) algorithm to identify the support and then, a Least Squares (LS) estimation to recover the data using the previously estimated support. However, the ED-LS performance exhibits an error floor when the signal-to-noise ratio increases. Maximum A Posteriori (MAP) support detection alone was proposed in [22] but without considering the assumptions of
A. Contributions
In this paper,
B. Paper Organization and Notations
The paper is organized as follows: In Section II, we first present a state-of-the-art of greedy block-sparse CS algorithms where the support detection and the data estimation are jointly performed. Since the alphabet constraint is hardly considered in the literature, we then modify the best CS algorithms so as to incorporate the finite-alphabet constraint. Their performance will be used as a baseline of our proposed algorithms. The detection problem in sporadic multi-user communications is investigated in Section III. The two-step approach (MAP-based support detection followed by data estimation) is detailed, first for linear modulations and then for CPM. The simulation results are given in Section IV. Finally a conclusion and some perspectives are given in Section V.
Throughout this paper, lower-case bold letters
Block-Sparse Compressed-Sensing With Alphabet Constraints for Joint Detection and Estimation
In most state-of-the-art CS algorithms that are applied to recover block-sparse signals whose non-zero values belong to a discrete set, the support detection and the data estimation are jointly performed, and the alphabet constraint is hardly taken into account. In this section, we propose to modify some greedy CS algorithms in order to incorporate the alphabet constraint. Their performance will serve as a benchmark for the algorithms developed in Section III.
A. Notations
We consider the observation of a block-sparse signal in a noisy environment from \begin{equation*} {\boldsymbol y} = {\boldsymbol A} {\boldsymbol x} + {\boldsymbol \eta },\tag{1}\end{equation*}
\begin{equation*} {\boldsymbol x} = [\underbrace {x_{1},\ldots,x_{N}}_{\boldsymbol x^{T}_{1}}, \ldots, \underbrace {x_{ (K - 1)N +1},\ldots, x_{KN}}_{\boldsymbol x^{T}_{K}}]^{T}.\tag{2}\end{equation*}
Similarly to (2), we can represent the measurement matrix \begin{equation*} ~{\boldsymbol A} \!=\! [\underbrace {\boldsymbol a_{1},\ldots,{\boldsymbol a}_{N}}_{\boldsymbol A_{\Gamma (1) }},\underbrace {\boldsymbol a_{N+1},\ldots,{\boldsymbol a}_{2N}}_{\boldsymbol A_{\Gamma (2) }}, \ldots, \underbrace {\boldsymbol a_{ (K \!-\!\, 1)N \!+\!\,1},\ldots, {\boldsymbol a}_{KN}}_{\boldsymbol A_{\Gamma (K)}}],\end{equation*}
\begin{equation*} {\boldsymbol y} = {\boldsymbol A}_{\boldsymbol s} {\boldsymbol x}_{\boldsymbol s} + {\boldsymbol \eta }.\tag{3}\end{equation*}
B. Block-Sparse CS Algorithms Without Alphabet Constraints
1) GOMP
One of the most popular CS algorithms of the literature is the Orthogonal Matching Pursuit (OMP) which iterativeley determines the sparse vector. The extension of this algorithm to the block-sparse case is the Group OMP (GOMP) [16] reminded in Algorithm 1, where no assumption is made regarding the alphabet of the components of
Algorithm 1 Group Orthogonal Matching Pursuit (GOMP)
Initialize:
for
end for
return
2) GMMP
One drawback of GOMP is the selection of only one non-zero block position at each iteration. To reduce the risk caused by a wrong decision on one support position, the authors of [25] proposed an extended version of OMP algorithm called Multipath Matching Pursuit (MMP) which relies on an iterative list construction. Given an iteration, from each temporary list element,
Algorithm 2 Group Multipath Matching Pursuit (GMMP)
Initialize:
for
for
for
if
end if
end for
end for
end for
return
C. Block-Sparse CS Algorithms With Alphabet Constraint Using BLS
We propose hereinafter simple extensions of the two previous popular block-sparse CS algorithms to take into account the alphabet constraints. The aim is to come up with a reasonable benchmark for the performance comparison in Section IV.
We will introduce the alphabet knowledge by the substitution of the LS estimation step of Algorithms 1 and 2 by another estimation step that takes into account the finite data set. In order to reduce the error propagation and to take into account the modulation alphabet, we propose to bound the estimation using fixed bounds according to the modulation alphabet. Since the introduction of a discrete set constraint on non-zero data values is not feasible, we relax it to a convex constraint. More precisely, we restrict the solution space to a convex region that includes the discrete alphabet.
The LS estimation step will be replaced by the Bound-constrained LS estimation first proposed in [26], mathematically detailed in [27, Chapter 5] and [28] and described in Algorithm 3.
Algorithm 3 Bound-Constrained Least-Squares: BLS(\boldsymbol y, {\boldsymbol H},\Xi)
return
Replacing Line 5 in Algorithm 1 by
MAP Support-Detection and Application to Compressed-Sensing Multiuser Detection
In Section II, we introduced the finite-alphabet constraint in CS algorithms that jointly detect and estimate block-sparse signals. In this section, we will focus on CS algorithm where the support detection is separated from the symbol estimation and we propose a MAP criterion for support detection exploiting the finite alphabet property of the signal.
We illustrate it in the context of sporadic communications for which we consider two modulation schemes: first a linear modulation with independent symbols and then a non-linear modulation with dependent symbols. For each of them, we proceed into two steps: we start by providing an explicit expression of the measurement matrix
A. Sporadic Communications Model
M2M communications or Machine-Type-Communications (MTC) can often be represented by a sporadic communication model for which compressed sensing-based multi-user detection (CS-MUD) is well suited [3], [21]. In this setup, a large number
M2M sporadic random access communication scenario involving
Sparse signal detection with high successful recovery probability requires a minimum number of observations [29]. This number can be increased with the help of either spreading sequences as proposed in [30] or multiple receive antennas. In this paper, we choose the first solution. Pseudo-random sequences of length
B. Linear Modulation of Independent Symbols
As a first example, we assume that independent symbols from a linear modulation are sent by the users over a Rayleigh fading channel. This assumption isn’t strictly exact since an error correction code is usually implemented yielding dependent symbols. However, its accuracy depends on the code length and the use of an interleaver.
1) Measurement Matrix
The \begin{equation*} {\boldsymbol y} = \sum _{k=1}^{K} {\boldsymbol G}_{k} {\boldsymbol C}_{k} {\boldsymbol x}_{k} + {\boldsymbol \eta },\tag{4}\end{equation*}
\begin{equation*} {\boldsymbol C}_{k} = {\boldsymbol I}_{N} \otimes {\boldsymbol c}_{k}.\tag{5}\end{equation*}

2) MAP Criterion for Support Detection (Independent Symbols)
The key idea of our approach relies on the approximation of the discrete distribution of \begin{equation*} \Pr \big (x_{i}=\xi \big) = \begin{cases} 1/M & \text {if} \quad \xi \in \Xi \\ 0 & \text {otherwise} \end{cases}\tag{8}\end{equation*}
\begin{equation*} \Pr \big (x_{i}=\xi \big) \approx \frac {1}{ M \pi \sigma _{\epsilon }^{2}}\sum _{j=1}^{M} e^{- \frac {|\xi -\xi _{j}| ^{2} }{ \sigma _{\epsilon }^{2}}}\tag{9}\end{equation*}
\begin{equation*} \Pr \big ({\boldsymbol x}_{s}| {\boldsymbol s} \big) \approx \frac {1}{(M\pi \sigma _{\epsilon }^{2})^{K_{a}N}} \sum _{\boldsymbol \zeta \in \Xi ^{K_{a}N} } e^{-\frac {||{\boldsymbol x}_{s} - {\boldsymbol \zeta } ||_{2}^{2}}{\sigma _{\epsilon }^{2}}}.\tag{10}\end{equation*}
\begin{equation*} p({\boldsymbol y}|{\boldsymbol x}_{s},{\boldsymbol s}) = \frac {1}{(\pi \sigma _{\eta }^{2})^{n}} \exp \left ({- \frac {1}{\sigma _{\eta }^{2}} ||{\boldsymbol y} - {\boldsymbol A}_{s} {\boldsymbol x}_{s} ||_{2}^{2} }\right)\tag{11}\end{equation*}
To compute the MAP estimation of
Given the observation vector \begin{align*} \hat {\boldsymbol s}=&\underset {\boldsymbol u}{\arg \,\max } \Pr (\boldsymbol {s}={\boldsymbol u}|{\boldsymbol y})\\=&\underset {\boldsymbol u}{\arg \,\max } \; p({\boldsymbol y}|\boldsymbol {s}={\boldsymbol u}) \Pr (\boldsymbol {s}={\boldsymbol u}).\end{align*}
\begin{align*}&\hspace {-1.6pc}\hat {\boldsymbol s} = \underset {\boldsymbol u}{\arg \,\max } \frac {1}{|\det ({\boldsymbol Q}_{u})|} \sum _{\boldsymbol \zeta \in {\Xi ^{K_{a} N}}} \exp \Bigg (\frac {1}{\sigma _\eta ^{2}} \bigg [\bigg ({\boldsymbol y}^{H} {\boldsymbol A}_{u} \\&\quad +\, \left.{\left.{ \frac {\sigma ^{2}_\eta }{\sigma ^{2}_{\epsilon }} {\boldsymbol \zeta }^{H}}\right)\! {\boldsymbol Q}_{u}^{-1} \!\left ({{\boldsymbol A}_{u}^{H} {\boldsymbol y} + \frac {\sigma ^{2}_\eta }{\sigma ^{2}_{\epsilon }} {\boldsymbol \zeta } }\right) \!- \!\frac {\sigma ^{2}_\eta }{\sigma ^{2}_{\epsilon }} ||{\boldsymbol \zeta }||_{2}^{2} }\right] \Bigg) \tag{12}\end{align*}
In practice, the cardinality of \begin{equation*} \hat {\boldsymbol s} = \underset {\boldsymbol u}{\arg \,\max } \quad f({\boldsymbol u})\tag{13}\end{equation*}
\begin{align*}&\hspace {-1.9pc}f({\boldsymbol u}) = \underset {\boldsymbol \zeta \in {\Xi ^{K_{a} N}}}{\max } \Biggl ({\frac {1}{\sigma _\eta ^{2}}\left ({{\boldsymbol y}^{H} {\boldsymbol A}_{u} + \frac {\sigma ^{2}_\eta }{\sigma ^{2}_{\epsilon }} {\boldsymbol \zeta }^{H}}\right) {\boldsymbol Q}_{u}^{-1} \bigg ({\boldsymbol A}_{u}^{H} {\boldsymbol y} } \\&\qquad +\, {{ \frac {\sigma ^{2}_\eta }{\sigma ^{2}_{\epsilon }} {\boldsymbol \zeta } }\bigg) \!-\! \frac {\sigma ^{2}_\eta }{\sigma ^{2}_{\epsilon }} ||{\boldsymbol \zeta }||_{2}^{2} }\Biggr) \!- \!\log \Big (\left |{\det \left ({{\boldsymbol Q}_{u}}\right)}\right | \Big) \tag{14}\end{align*}
3) Sub-Optimal Implementation
The max-log-MAP criterion developed in (13) requires an exhaustive search over all of the
The iterative suboptimum solution of (13) is described in Algorithm 4. We start with an empty support
Algorithm 4 MAP-Based OMP Support Detection
Initialize:
for
for
Compute
end for
end for
return
It is important to mention the main difference between the classic OMP algorithm and the proposed version. In fact, the classic OMP also allows to detect the support, but based on a previous data estimation. The
Once the support has been estimated, a BLS optimization (Algorithm 3) including the alphabet constraints can be applied to estimate the transmitted symbols. Denoting the support estimate by
C. Continuous-Phase Modulation
Some M2M applications involving e.g. sensing require battery powered transceivers without the possibility to change nor charge the battery. The energy efficiency is then one of the key performance indicator for such systems. When a massive number of such transceivers is to be deployed, low-cost is another stringent specification. Constant envelope modulations enable both low-cost and energy-efficient transceivers: the signal is not distorted by highly non-linear amplifiers which are cheaper and more energy-efficient.
Continuous phase modulations (CPM) [36] are a particular case of constant envelope modulations which exhibit a more confined power spectrum density compared to their non-continuous phase counterpart.
Several applications show the potential of CPM including early wireless standards (GSM), satellite communications [37], deep-space communications or low-rate long-distance microwave radio links for cellular backhauling [38], Bluetooth, telemetry [39] etc.
The symbols sent through a CPM are dependent, unlike in Section III-B. We propose to take into account this dependence to compute the MAP criteria of support detection in a frequency-selective fading channel. As for linear modulations, there exist binary or non-binary CPM formats. In the remainder of this paper, we will focus on binary CPMs for which the information symbols belong to a binary alphabet, as described in the following subsection.
1) CPM Reminder
The complex envelope of a binary CPM signal can be expressed as [36] \begin{equation*} \Psi (t,{\boldsymbol \alpha },h) = \sqrt {\frac {2E_{s}}{T}} \exp \left ({j 2 \pi h \sum _{i=0}^{J-1} \alpha _{i+1} w(t-iT) }\right)\!,\tag{15}\end{equation*}
\begin{equation*} w(t) = \begin{cases} 0 & \text {when} ~t \leq 0 \\ \dfrac {1}{2} & \text {when} ~t \geq LT \end{cases}\tag{16}\end{equation*}
Based on Laurent representation [40] which provides a decomposition of the complex envelope of the CPM over a set of pulses \begin{equation*} \Psi (t,{\boldsymbol \alpha },h) \approx \sum _{i=0}^{J-1}\beta _{i+1} \varrho _{0}(t-iT),\tag{17}\end{equation*}
\begin{equation*} \beta _{i} = \beta _{i-1} e^{j\pi h \alpha _{i}}.\tag{18}\end{equation*}
2) System Model Under Spread Binary CPM Assumption
In the sporadic communication model, the sequence of symbols of the \begin{align*}&\hspace {-2.1pc}{\Psi }(t,\tilde {\boldsymbol \alpha }_{k},h) = \sqrt {\frac {2E_{s}}{T}} \exp \Big (j 2 \pi h \\&\qquad \,\times \sum _{i=0}^{J-1} \sum _{l=0}^{N_{s}-1} \tilde {\alpha }_{k,iN_{s}+l+1} w(t-(i N_{s} + l) T_{c}) \Big),\end{align*}
The approximation of Laurent decomposition of \begin{equation*} {\Psi }(t,\tilde {\boldsymbol \alpha }_{k},h) \approx \sum _{i=0}^{J-1}\sum _{l=0}^{N_{s}-1}\tilde {\beta }_{k,iN_{s}+l+1} \tilde {\varrho }_{0}\big (t-(iN_{s}+l)T_{c}\big),\tag{19}\end{equation*}
\begin{equation*} \tilde {\beta }_{k,iN_{s}+l} = \tilde {\beta }_{k,iN_{s}+l-1} e^{j\pi h \tilde {\alpha }_{k,iN_{s}+l}}.\tag{20}\end{equation*}
In order to obtain a vectorial formulation of the MUD problem, we first need to overcome the non-linearity induced by the pseudo-symbols \begin{equation*} \tilde {\beta }_{k,(i-1)N_{s}+l} = \delta _{k,i} e^{ j \pi h \kappa _{k,l} \alpha _{k,i}}\tag{21}\end{equation*}
\begin{align*} \tilde {\beta }_{k,(i-1)N_{s}+l}=&\frac {\delta _{k,i}}{2} \left ({(1 \!+\! \alpha _{k,i})e^{j \pi h \kappa _{k,l}} }\!+\!\, { (1 \!-\! \alpha _{k,i})e^{-j \pi h\kappa _{k,l}} }\right) \\=&\delta _{k,i} \left ({\cos (\pi h \kappa _{k,l}) + j \alpha _{k,i}\sin (\pi h \kappa _{k,l})}\right).\tag{22}\end{align*}
\begin{align*}&\hspace {-2.6pc}\tilde {\beta }_{k,(i-1)N_{s}+l} =\delta _{k,i} \Biggl ({\alpha _{k,i}^{2} \cos (\pi h \kappa _{k,l}) } \\&\qquad \qquad \qquad \qquad \qquad { +\, j \alpha _{k,i}\sin (\pi h \kappa _{k,l})}\Biggr) \tag{23}\end{align*}
\begin{equation*} \tilde {\beta }_{k,(i-1)N_{s}+l} = \theta _{k,i} d_{k,l} + \bar {\theta }_{k,i} v_{k,l}\tag{24}\end{equation*}
\begin{equation*} \tilde {\boldsymbol \beta }_{k} = {\boldsymbol D}_{k}{\boldsymbol \theta }_{k} + {\boldsymbol V}_{k} \bar {\boldsymbol \theta }_{k}\tag{25}\end{equation*}
Let us now derive the matrix formulation of the problem. We assume a frequency-selective fading channel whose discrete impulse response is sampled at chip period \begin{equation*} y(t) = \sum _{k=1}^{K}\sum _{j=0}^{L_{g}-1} g_{k,j} {\Psi }(t-jT_{c},\tilde {\boldsymbol \alpha }_{k},h) + b(t),\tag{26}\end{equation*}
\begin{align*} y_{i,l}=&\int y(t) \tilde {\varrho }_{0}\left ({t-\left ({(i-1)N_{s}+l-1}\right)T_{c}}\right) dt \\=&z_{i,l} + \eta _{i,l}. \tag{27}\end{align*}
The noise coefficient \begin{equation*} \eta _{i,l} = \int b(t) \tilde {\varrho }_{0}\left ({t-\left ({(i-1)N_{s}+l-1}\right) T_{c}}\right) dt.\tag{28}\end{equation*}
The sample \begin{equation*} z_{i,l} \approx \sum _{k=1}^{K} \sum _{j=0}^{L_{g}-1} g_{k,j} \sum _{u=-LN_{s}+1}^{LN_{s} - 1} \lambda _{u} \tilde {\beta }_{k, (i-1) N_{s} + l + j - u }\tag{29}\end{equation*}
\begin{equation*} \lambda _{u} \triangleq \int \tilde {\varrho }_{0}(t) \tilde {\varrho }_{0}(t-u T_{c}) dt = \lambda _{-u}.\tag{30}\end{equation*}
\begin{align*} {\boldsymbol z}=&\sum _{k=1}^{K} {\boldsymbol G}_{k} {\boldsymbol \Lambda } {\boldsymbol \beta }_{k} \\=&\sum _{k=1}^{K} {\boldsymbol G}_{k} {\boldsymbol \Lambda } {\boldsymbol D}_{k} {\boldsymbol \theta }_{k} + {\boldsymbol G}_{k} {\boldsymbol \Lambda } {\boldsymbol V}_{k} \bar {\boldsymbol \theta }_{k} \tag{31}\end{align*}

3) MAP Criterion for Support Detection (Dependent Symbols)
In the model described above, the parameter
Let \begin{align*} {\omega }_{\ell,j}=&\mathbb {E}(\eta _{i,l} \eta _{i',l'}^{*}) \tag{35}\\=&\iint _{\mathbb {R}^{2}} \mathbb {E}(b(t) b(t')^{*}) \tilde {\varrho }_{0}(t-\ell T_{c}) \tilde {\varrho }_{0}(t'-jT_{c}) dt dt' \\=&\sigma _{b}^{2}\int _{\mathbb {R}} \tilde {\varrho }_{0}(t-\ell T_{c}) \tilde {\varrho }_{0}(t-jT_{c}) dt \\=&\begin{cases} \sigma _{b}^{2} \lambda _{\ell -j} & \text {if }~|\ell -j| \leq LN_{s}-1\\ 0 & \text {otherwise.} \end{cases}\tag{36}\end{align*}
\begin{equation*} p({\boldsymbol y}|{\boldsymbol x}_{s},{\boldsymbol s}) = \frac {1}{\pi ^{n} |{\boldsymbol \Omega }| } \exp \Big (-({\boldsymbol y} - {\boldsymbol A}_{s} {\boldsymbol x}_{s})^{H} {\boldsymbol \Omega }^{-1} ({\boldsymbol y} - {\boldsymbol A}_{s} {\boldsymbol x}_{s}) \Big)\end{equation*}
Following the same approach as in Section III-B.2, we obtain the max-log-MAP-based approximation of the support given by Equation (51), as shown at the bottom of page 12,
It is possible to simplify the cost function in (51). First, CPM signals have a constant modulus, and so \begin{align*}&\hspace {-0.2pc}\hat {\boldsymbol s} = \underset {\boldsymbol u}{\arg \,\max } \Biggl \{{ {\boldsymbol y}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol A}_{u} {\boldsymbol Q_{u}'}^{-1} {\boldsymbol A}_{u}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol y} } \\&\qquad { + \frac {2}{\sigma _\epsilon ^{2}} \underset {\boldsymbol \zeta }{\max } ~\Re \{ {\boldsymbol y}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol A}_{u} {\boldsymbol Q_{u}'}^{-1} {\boldsymbol \zeta } \} - \log \left ({\left |{\det \left ({{\boldsymbol Q}_{u}'}\right)}\right | }\right) }\Biggr \}. \\ {}\tag{37}\end{align*}
4) Data Estimation
Once the support has been estimated, the data estimation is carried out in two steps. The linear decomposition of the CPM signal involves the vectors
The solution of this optimization problem gives the estimated values of
Then the second step aims to determine the transmitted data symbols \begin{equation*} \delta _{k,i+1}=\delta _{k,i}e^{j\pi h \kappa _{k}\alpha _{k,i}}\tag{38}\end{equation*}
\begin{equation*} \gamma (\upsilon _{i},\upsilon _{i+1})=\frac {1}{2} \left ({{\left ({\upsilon _{i}\alpha }\right)}^{\ast } \widehat {\theta _{k,i}} + {\left ({\upsilon _{i}\alpha ^{2}}\right)}^{\ast } \widehat {\bar {\theta }_{k,i}} }\right).\tag{39}\end{equation*}
Performance Evaluation
In this section, the algorithms proposed in Section III are compared with some state-of-the-art algorithms. First, the complexity of the considered algorithms is estimated. Then, the case of independent symbols is studied through linear BPSK modulation and the case of dependent symbols is studied through MSK modulation, that is a binary CPM modulation with
A. Complexity Analysis
To give a rough estimation of the complexity, we only kept the most complex computational operations and we neglected the others.
For the GOMP algorithms, the overall complexity is dominated by the LS or BLS estimation step, maximum at last iteration and given by
For the GMMP algorithms, the overall complexity is also dominated by the LS or BLS estimation step which has to be performed at most
The complexity of the proposed algorithm is dominated by the complexity of the support detection (Algorithm 4) and particularly Step 5 dominated by
B. Linear Modulation (Independent Symbols)
We chose the Binary Phase Shift Keying (BPSK) modulation. Activity-detection error rate for BPSK modulation with
Activity-detection error rate for BPSK modulation with frames of
The symbol error rate performance for the same algorithms is illustrated in Figure 3. It is also compared to oracle bounds obtained by assuming the perfect knowledge of the activity of each user. Thus only the data estimation has to be performed either using an LS algorithm (Oracle-LS) or a BLS algorithm (Oracle-BLS). We can observe that the proposed algorithm performs very close to the lower bound (Oracle BLS) whereas the other ones exhibit an error floor in the high SNR regime.
C. CPM (Dependent Symbols)
For the simulations of CPM, we chose the MSK (Minimum Shift Keying) modulation which is a popular CPM modulation defined by a rectangular frequency pulse of length
The alphabet \begin{align*}&\hspace {-0.4pc}\hat {\boldsymbol s} \approx \underset {\boldsymbol u}{\arg \,\max } \Bigg \{ {\boldsymbol y}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol A}_{u} {\boldsymbol Q_{u}'}^{-1} {\boldsymbol A}_{u}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol y} \\&\quad +\, \left.{\frac {2}{\sigma _\epsilon ^{2}} \sum _{m=1}^{K_{a} N} \max (|\Re \{ v_{m} \}|,|\Im \{v_{m} \}|) - \log \left ({\left |{\det \left ({{\boldsymbol Q}_{u}'}\right)}\right | }\right) }\right \}.\end{align*}
The comparison of the activity detection error rate is illustrated in Figure 4 using the same algorithms as for the linear modulation case. We can clearly see that the algorithms which are based on joint data and support detection fail to recover the signal. The BLS greedy algorithms, despite incorporating the finite alphabet constraint, exhibit a noticeable error floor after 20dB. On the contrary, our proposed algorithm allows a significant gain of nearly 6 dB over BLS-GMMP (
Activity-detection error rate for MSK modulation with frames of
The symbol error rate (SER) performance is illustrated in Figure 5 where a comparison is also performed with oracle bounds as for the linear modulation. The conclusions drawn for the activity detection error rate simulations are still observable in the symbol error rate simulations. Our proposed algorithm converges to the lower Oracle-BLS bound.
Symbol error rate for MSK modulation with frames of
Scaling the detection to a higher number of users does not degrade the performance, on the contrary: the activity detection error rate as a function of the number of users
Conclusions
This paper addressed the problem of block-sparse finite-alphabet signal recovery. Usual greedy-based approaches jointly detect the signal support and data, and do not consider the finite-alphabet in the optimization constraints. In this paper, we rather focus on algorithms where support detection and data estimation are performed successively. We propose to take into account the finite alphabet both in the cost function for support detection and in the bound-constrained least-squares optimization algorithm for data estimation. The proposed support detection greedy algorithms rely on a maximum-a-posteriori-like cost function based on a Gaussian mixture distribution approximation model for the discrete data symbol distribution. We considered two cases: linear modulation with independent symbols and binary continuous phase modulation (CPM) where the symbols are dependent. Simulations were carried out in the context of sporadic multiuser communications for which CPM is a good candidate combined with energy-efficient power amplifiers. First, the proposed algorithms significantly enhance the user activity detection probability compared to usual greedy algorithms. Besides, scaling up the number of users doesn’t degrade the performance. Secondly, the proposed algorithms strongly improve the data estimation probability with convergence towards the performance of their corresponding oracle. Future work will consider the extension to block-sparse
Appendix AMAP Estimation of the Support (Linear Modulation)
MAP Estimation of the Support (Linear Modulation)
All the integrals and all the sums in this Appendix will be evaluated for
We begin by developing an expression for \begin{align*} p({\boldsymbol y}|{\boldsymbol s})=&\int \Pr ({\boldsymbol y}|{\boldsymbol x}_{s},{\boldsymbol s}) \Pr ({\boldsymbol x}_{s}|{\boldsymbol s}) d {\boldsymbol x}_{s} \\=&\frac {1}{ (M \pi \sigma _{\epsilon }^{2})^{ K_{a}N}} \frac {1}{(\pi \sigma _{\eta }^{2})^{m}} \\&\times \sum \int \exp \left ({- \frac {||{\boldsymbol y}-{\boldsymbol A}_{s} {\boldsymbol x}_{s}||_{2}^{2}}{\sigma _{\eta }^{2}} - \frac {||{\boldsymbol x}_{s}-{\boldsymbol \zeta }||_{2}^{2}}{\sigma _{\epsilon }^{2}} }\right) d {\boldsymbol x}_{s} \\ {}\tag{40}\end{align*}
The exponential term can be developed by considering its variable \begin{align*} G({\boldsymbol x}_{s})=&\frac {||{\boldsymbol y} - {\boldsymbol A}_{s} {\boldsymbol x}_{s}||_{2}^{2}}{\sigma _{\eta }^{2}} + \frac {||{\boldsymbol x}_{s}-{\boldsymbol \zeta }||_{2}^{2}}{\sigma _{\epsilon }^{2}} \\=&\frac {||{\boldsymbol y}||_{2}^{2}}{\sigma _{\eta }^{2}} + \frac {1}{\sigma _{\eta }^{2}} {\boldsymbol x}_{s}^{H} {\boldsymbol A}_{s}^{H} {\boldsymbol A}_{s} {\boldsymbol x}_{s} - \frac {2}{\sigma _{\eta }^{2}} \Re \left ({{\boldsymbol y}^{H} {\boldsymbol A}_{s} {\boldsymbol x}_{s}}\right) \\&+ \frac {1}{\sigma _{\epsilon }^{2}} \left ({{\boldsymbol x}_{s}^{H} {\boldsymbol x}_{s} + {\boldsymbol \zeta }^{H} {\boldsymbol \zeta } - 2 \Re ({\boldsymbol \zeta }^{H} {\boldsymbol x}_{s}) }\right)\tag{41}\end{align*}
\begin{align*} G({\boldsymbol x}_{s})=&{\boldsymbol x}_{s}^{H} {\boldsymbol R}_{s}^{H}{\boldsymbol R}_{s} {\boldsymbol x}_{s} + \frac {1}{\sigma _\eta ^{2}} ||{\boldsymbol y}||_{2}^{2} \\&-\, \frac {2}{\sigma _\eta ^{2}} \Re \left ({{\boldsymbol y}^{H} {\boldsymbol A}_{s} ({\boldsymbol R}_{s}^{H}{\boldsymbol R}_{s}) ^{-1} {\boldsymbol R}_{s}^{H} {\boldsymbol R}_{s} {\boldsymbol x}_{s} }\right) \\&+ \frac {1}{\sigma _\epsilon ^{2}} \left ({{\boldsymbol \zeta }^{H} {\boldsymbol \zeta } - 2 \Re ({\boldsymbol \zeta }^{H} ({\boldsymbol R}_{s}^{H}{\boldsymbol R}_{s})^{-1} {\boldsymbol R}_{s}^{H} {\boldsymbol R}_{s} {\boldsymbol x}_{s}) }\right) \\=&||{\boldsymbol R}_{s} {\boldsymbol x}_{s} - {\boldsymbol R}_{s} {\boldsymbol \nu }_{\boldsymbol \zeta }||_{2}^{2} + \gamma _{\boldsymbol \zeta }\tag{42}\end{align*}
\begin{align*} {\boldsymbol \nu }_{\boldsymbol \zeta }=&({\boldsymbol R}_{s}^{H}{\boldsymbol R}_{s}) ^{-1} \left ({\frac {1}{\sigma _\eta ^{2}}{\boldsymbol A}_{s}^{H} {\boldsymbol y} + \frac {1}{\sigma _\epsilon ^{2}} {\boldsymbol \zeta } }\right) \tag{43}\\ \gamma _{\boldsymbol \zeta }=&\frac {1}{\sigma _\eta ^{2}} ||{\boldsymbol y}||_{2}^{2} + \frac {1}{\sigma _\epsilon ^{2}} ||{\boldsymbol \zeta }||_{2}^{2} - {\boldsymbol \nu }_{\boldsymbol \zeta }^{H} {\boldsymbol R}_{s}^{H}{\boldsymbol R}_{s} {\boldsymbol \nu }_{\boldsymbol \zeta }\tag{44}\end{align*}
\begin{align*}&\hspace {-2.4pc}p({\boldsymbol y}|{\boldsymbol s}) = \frac {1}{ (M \pi \sigma _{\epsilon }^{2})^{K_{a}N}} \frac {1}{(\pi \sigma _{\eta }^{2})^{m}}\sum \exp (-\gamma _{\boldsymbol \zeta }) \\[3pt]&\quad \times \int \exp \left ({- ({\boldsymbol x}_{s} - {\boldsymbol \nu }_{\boldsymbol \zeta })^{H}{\boldsymbol R}_{s}^{H} {\boldsymbol R}_{s} ({\boldsymbol x}_{s} - {\boldsymbol \nu }_{\boldsymbol \zeta }) }\right) d {\boldsymbol x}_{s}\tag{45}\end{align*}
\begin{align*}&\hspace {-4.8pc}\int \exp \left ({- ({\boldsymbol x}_{s} - {\boldsymbol \nu }_{\boldsymbol \zeta })^{H}{\boldsymbol R}_{s}^{H}{\boldsymbol R}_{s}({\boldsymbol x}_{s} - {\boldsymbol \nu }_{\boldsymbol \zeta })) }\right) d {\boldsymbol x}_{s} \\[3pt]=&\int \exp \left ({- ||{\boldsymbol R}_{s} ({\boldsymbol x}_{s} - {\boldsymbol \nu }_{\boldsymbol \zeta })||_{2}^{2} }\right) d {\boldsymbol x}_{s} \\[3pt]=&\left |{\mathrm {det}\left ({({\boldsymbol R}_{s}^{H} {\boldsymbol R}_{s})^{-1}}\right)}\right | \pi ^{K_{a}N} \\[3pt]&\times \, \int \frac { \exp \left ({-|| {\boldsymbol R}_{s} ({\boldsymbol x}_{s} - {\boldsymbol \nu }_{\boldsymbol \zeta })||_{2}^{2} }\right)}{\left |{\mathrm {det}(({\boldsymbol R}_{s}^{H} {\boldsymbol R}_{s})^{-1})}\right | \pi ^{K_{a}N}}d {\boldsymbol x}_{s} \\=&\frac {\pi ^{K_{a}N}}{|\mathrm {det}({\boldsymbol R}_{s}^{H} {\boldsymbol R}_{s})|}\tag{46}\end{align*}
\begin{align*}&\hspace {-2.2pc}p({\boldsymbol y}|{\boldsymbol s}) = \frac {C}{|\mathrm {det}({\boldsymbol Q}_{s})|} \sum \exp \Biggl ({\frac {1}{\sigma _\eta ^{2}} \Biggl [{ \left ({{\boldsymbol y}^{H} {\boldsymbol A}_{s} + \frac {\sigma _\eta ^{2}}{\sigma _\epsilon ^{2}} \,{\boldsymbol \zeta }^{H}}\right)}} \\&\qquad \times \, {{ {\boldsymbol Q}_{s}^{-1} \left ({{\boldsymbol A}_{s}^{H} {\boldsymbol y} + \frac {\sigma _\eta ^{2}}{\sigma _\epsilon ^{2}} \,{\boldsymbol \zeta } }\right) - \frac {\sigma _\eta ^{2}}{\sigma _\epsilon ^{2}} ||{\boldsymbol \zeta }||_{2}^{2} }\Biggr] }\Biggr)\tag{47}\end{align*}
\begin{align*} \hat {\boldsymbol s}=&\underset {\boldsymbol u}{\arg \,\max } \,\Pr ({\boldsymbol s}={\boldsymbol u}|{\boldsymbol y}) \\=&\underset {\boldsymbol u}{\arg \,\max }\,\, p({\boldsymbol y|{\boldsymbol s}={\boldsymbol u}})\, \Pr ({\boldsymbol s}={\boldsymbol u})\end{align*}
\begin{align*} \hat {\boldsymbol s}=&\underset {\boldsymbol u}{\arg \,\max }\, \frac {1}{|\mathrm {det}({\boldsymbol Q}_{u})|} \sum \exp \Biggl ({\frac {1}{\sigma _\eta ^{2}} } \\&\times \, {\!\! \left [{\! \left ({{\boldsymbol y}^{H} {\boldsymbol A}_{u} \!+\!\, \!\!\frac {\sigma _\eta ^{2}}{\sigma _\epsilon ^{2}} {\boldsymbol \zeta }^{H}}\right )\! {\boldsymbol Q}_{u}^{-1} \!\left ({{\boldsymbol A}_{u}^{H} {\boldsymbol y} \!+\!\, \frac {\sigma _\eta ^{2}}{\sigma _\epsilon ^{2}} {\boldsymbol \zeta } }\right )\! }{ - \frac {\sigma _\eta ^{2}}{\sigma _\epsilon ^{2}} ||{\boldsymbol \zeta }||_{2}^{2} }\right ] }\Biggr )\end{align*}
Appendix BMAP Estimation of the Support (CPM)
MAP Estimation of the Support (CPM)
All the integrals and all the sums in this Appendix will be evaluated for \begin{align*} p({\boldsymbol y}|{\boldsymbol s})=&\int \Pr ({\boldsymbol y}|{\boldsymbol x}_{s},{\boldsymbol s}) \Pr ({\boldsymbol x}_{s}|{\boldsymbol s}) \,d {\boldsymbol x}_{s} \\=&\frac {\sum \int \exp \left ({- ({\boldsymbol y}-{\boldsymbol A}_{s} {\boldsymbol x}_{s})^{H} {\boldsymbol \Omega }^{-1} ({\boldsymbol y}-{\boldsymbol A}_{s} {\boldsymbol x}_{s}) }\right) }{ (M \pi \sigma _{\epsilon }^{2})^{K_{a}N} \pi ^{N_{s} N}\det \left ({{\boldsymbol \Omega }}\right) } \\&\times \, \exp \left ({- \frac {||{\boldsymbol x}_{s}-{\boldsymbol \zeta }||_{2}^{2}}{\sigma _{\epsilon }^{2}} }\right) d {\boldsymbol x}_{s}\tag{48}\end{align*}
The exponential term can be developed by considering its variable \begin{align*} G({\boldsymbol x}_{s})=&({\boldsymbol y}-{\boldsymbol A}_{s} {\boldsymbol x}_{s})^{H} \,{\boldsymbol \Omega }^{-1} \,({\boldsymbol y}-{\boldsymbol A}_{s} {\boldsymbol x}_{s}) +\, \frac {||{\boldsymbol x}_{s}-{\boldsymbol \zeta }||_{2}^{2}}{\sigma _{\epsilon }^{2}} \\=&{\boldsymbol x}_{s}^{H} \left ({{\boldsymbol A}_{s}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol A}_{s} + \frac {1}{\sigma _\epsilon ^{2}} {\boldsymbol I}_{K_{a}N} }\right) {\boldsymbol x}_{s} \\&-\, 2 \Re \left [{ {\boldsymbol x}_{s}^{H} ({\boldsymbol A}_{s}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol y} + {\boldsymbol \zeta }) }\right] + {\boldsymbol y}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol y} + \frac {1}{\sigma _\epsilon ^{2}} ||{\boldsymbol \zeta }||_{2}^{2} \\=&{\boldsymbol x}_{s}^{H} \left ({{\boldsymbol A}_{s}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol A}_{s} + \frac {1}{\sigma _\epsilon ^{2}} {\boldsymbol I}_{K_{a}N} }\right) {\boldsymbol x}_{s} \\&-\, 2 {\boldsymbol x}_{s}^{H} ({\boldsymbol A}_{s}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol y} + {\boldsymbol \zeta }) - 2 ({\boldsymbol y}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol A}_{s} + {\boldsymbol \zeta }^{H}) {\boldsymbol x}_{s} \\&+ {\boldsymbol y}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol y} + \frac {1}{\sigma _\epsilon ^{2}} ||{\boldsymbol \zeta }||_{2}^{2} \\=&\left ({{\boldsymbol x}_{s} - {\boldsymbol \nu _\zeta }' }\right)^{H} {\boldsymbol Q}_{s}' \left ({{\boldsymbol x}_{s} - {\boldsymbol \nu _\zeta }' }\right) + \gamma _\zeta '\tag{49}\end{align*}
\begin{align*} {\boldsymbol Q}_{s}'=&{\boldsymbol A}_{s}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol A}_{s} +\, \frac {1}{\sigma _\epsilon ^{2}} {\boldsymbol I}_{K_{a}N} \\ {\boldsymbol \nu }_\zeta '=&{\boldsymbol Q_{s}'}^{-1} ({\boldsymbol A}_{s}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol y} +\, {\boldsymbol \zeta }) \\ \gamma _\zeta '=&{\boldsymbol y}^{H} {\boldsymbol \Omega }^{-1} {\boldsymbol y} +\, \frac {1}{\sigma _\epsilon ^{2}} ||{\boldsymbol \zeta }||_{2}^{2} - {\boldsymbol \nu _\zeta '}^{H} {\boldsymbol Q}_{s}' {\boldsymbol \nu }_\zeta '\end{align*}
\begin{equation*} p({\boldsymbol y}|{\boldsymbol s}) = \frac {C^{st}}{ \det \left ({{\boldsymbol Q}_{s}'}\right)} \sum \exp {(- \gamma _\zeta ') }\tag{50}\end{equation*}
\begin{align*} \hat {\boldsymbol s}=&\underset {\boldsymbol u}{\arg \,\max } \,\Pr ({\boldsymbol s}={\boldsymbol u}|{\boldsymbol y}) \\=&\underset {\boldsymbol u}{\arg \,\max }\,\, p({\boldsymbol y|{\boldsymbol s}={\boldsymbol u}})\, \Pr ({\boldsymbol s}={\boldsymbol u})\end{align*}