Uplink OFDM detection with random multiple access

Orthogonal Frequency-Division Multiplexing with Random multiple access (OFDRMA) is discussed for uplink communications, whereby several active users send information towards a single base-station (BS), while all other users are dormant. Originally, uplink communication methods included sharing the frequency resources among the active users in an orthogonal fashion, i.e., a central unit is required to dynamically allocate the resources. More recently, non-orthogonal methods have arisen, meaning that several active users share the same frequency bins, but they still do require a central unit to dynamically allocate the resources in a uniform (as possible) manner over the available bandwidth. The task and overhead required for managing the frequency allocations among the users can be quite cumbersome. In OFDRMA, the frequency allocations for any user are independent of the frequency allocations for the other users, and independent of which of the other users are currently active. Rather, OFDRMA relies on random, yet predetermined, allocation of frequency bins for each user, known only to that user and the BS. A multi-user detection approach is presented based on a graphical representation of the system. It is shown to provide robustness against the forced randomness of the scheme. Capacity of OFDRMA and its optimization are analyzed and provided in detail. Simulation results are provided for demonstrating the performance attainable with OFDRMA and the proposed detection scheme. Both the capacity and the simulations are compared with modern multi-user multiple-input multiple-output (MU-MIMO) schemes.


Preliminaries
Herein, we consider a "single-cell" environment, i.e., a single access-point (base station), serving u active users. u is effectively a random variable (RV), as will be discussed later, assumed to be known to the BS (The algorithm by which u becomes known to the BS is outside the scope of this work). Each user is assumed to have a single transmit antenna, but this can be easily generalized. The number of receive antennas at the BS is denoted by ϑ.
A transmission by any (active) user is divided into units called packets. The total number of frequency subcarriers, available for information transmission in each packet, is denoted by m. m is termed the packet length; typical values for m range between 100-10, 000. The frequency-domain intercepted signals on the BS side are denoted by F a l , with l being the subcarrier index number, 1 ≤ l ≤ m , and a being the index number of the receive antenna, 1 ≤ a ≤ ϑ.
Let X i denote a length-n coded and modulated sequence that user i transmits toward the BS. Correspondingly, n is the number of frequency bins user i employs in a single packet (we assume that n is the same for all users, but this can be easily generalized), where n ≤ m.
The coded and modulated sequence X i is given by: Each of the elements of X i is chosen from a pre-defined finite constellation. Binary error-correcting codewords are generated by each user and mapped onto constellation points. For example, a user shall employ a single codeword per packet when using BPSK modulation, and two codewords per packet when QPSK modulation is employed. In the following we assume that each user employs QPSK for the sake of notational brevity; transmission using BPSK constellation is straightforwardly derived by simplifying the following expressions, and the development for higher order constellations is quite similar.
When using QPSK, 2 bits select a constellation point. Therefore, in each transmission, each active user generates two binary codewords: belonging to the binary, length-n, codes C 1 , C 2 , x 1 i ⊂ C 1 , x 2 i ⊂ C 2 . Typically, C 1 and C 2 are permutated versions of each other 13 . Each bit-pair is then mapped to a constellation point: (1) X i = [X i1 , X i2 , . . . , X in ].
The BS holds the following information concerning all the users operating within its cell: Definition 1 The allocation vector of user i, 1 ≤ i ≤ u , denoted by: is a size n (pseudo) random subset of {1, 2, . . . m} ; each t ij denotes the frequency bin on which the i th user sends its j th symbol. Each user i knows only its own t i , but the BS knows all t i , 1 ≤ i ≤ u.
The signals received at the BS receiver on frequency subcarrier l are affected by all the users transmitting on this subcarrier. Using OFDM frequency-domain equivalent channel, we get: where I(·) is the indicator function and h a il is the path gain on subcarrier l between user i and receive antenna a. The path gains are mutually independent and identically distributed (i.i.d) circularly-symmetric complex normal RVs with variance of 1 per sample. The values of h a il are assumed to be known only to the BS (the algorithms by which the path gains become known to the BS are outside the scope of this work 14 ). The noise samples n a l are i.i.d circularly-symmetric complex normal RVs with variance σ 2 per sample.

Collision events
Collisions occur when at least two users transmit simultaneously on the same subcarrier.

Definition 2
Let c l be the number of (non-zero) terms included in the double sum (7) of F l for a specific bin l (i.e., the number of users contributing to the value of F l ). If c l > 1 , we say that collision occurred on the l th subcarrier, with c l being the order of the collision.
Collision events may degrade system performance in terms of increased error rate, but no less important is the increased decoding complexity at the BS. First, we briefly derive a simple mathematical model for collision events.
The first user distributes n symbols in m distinct bins selected randomly. The event that a specific bin was chosen has a Bernoulli distribution with probability: The parameter p, which may be either fixed or viewed as an utilization factor, is of particular importance later in the paper, where we analyze the OFDRMA scheme capacity and its optimization.
The second user repeats the same process independently from the first user. For u active users, the number of users transmitting (colliding) on a specific bin has a Binomial distribution, the probability for collision of order c on any bin is: The average number of collisions on a single bin is: and we can also state that: as both sides of the equation are equal to the total number of interceptions at the BS, for all the users transmitting within the same packet. www.nature.com/scientificreports/ It should be noted that in practice, the users have fixed allocation vectors; however, since these vectors are generated randomly, and the u active users are taken (at random) from a much larger number of possible users, the above discussion is statistically correct.
It is evident from the above discussions that in order to minimize the occurrence of collisions, a small number of users, u, is desired (practically not controllable), and a large number of available frequency bins, m, is desired -which in turn reduces the transmission rate and increases latency. Shorter code length, n, also reduces the occurrence of collisions, but using shorter error correcting codes typically implies higher decoding error rate.

Graphical representation of the detection scheme
A unified graphical representation for the complete frequency allocation and coding scheme that captures all the active users is natural for OFDRMA. The graph can be divided into two interconnected bi-partite subgraphs as depicted in Fig. 1. The coded bits (denoted by circles), placed in the middle, connect the two sides of the graph.
The left-hand-side (LHS) subgraph represents the bits (circles) and their allocation (LHS edges) among all the available frequency bins (denoted by the LHS squares). In other words, the modulated symbol that carries a certain bit is transmitted on a certain bin if an edge connects the corresponding circle and square. If more than one edge is connected to a (LHS) square, it means that multiple users share the same frequency bin, leading to a collision on that bin. The number of edges coming out of this square is the collision order.
The right-hand-side (RHS) subgraph represents the error-correcting mechanism of this scheme. It is composed of a multiplicity of disjoint (bi-partite) graphs associated with the error-correcting parity check matrices of the active users. Each parity-check equation (RHS squares) connects (via RHS edges) to an appropriate set of bits (circles). Typically, this would imply that u copies of the same diagram are placed vertically, assuming each user employs the same error correcting code. This situation is demonstrated in Fig. 1. However, in general, this is not necessarily the case as each user can use a different code, if required.
The decoding process amounts to messages passing along the graph edges from left to right and vice versa. Initial bit reliability messages are extracted from the frequency bins and passed to the bits over the LHS edges. Then, messages iterate back and forth on the RHS edges for a desired number of iterations. Then, messages pass left and right (once) along the LHS edges, in order to update the initial bit reliability messages according to the other bits it shares on the same frequency bin. This whole process is repeated for a few cycles, as required. This iterative detection process is detailed in the following sections.

Multi-user detection using maximum a posteriori approach
Assume that each user transmits two LDPC codewords in a single packet using QPSK modulation (5). For the i th user, we need to calculate the probability (12) of the j th bit of the first code x 1 ij (the calculation for the corresponding second codeword bit x 2 ij is similar). First, the receiver (BS) uses the vector t i to find the frequency bin, denoted by α , over which this bit was transmitted, i.e. α = t ij . We list all the other users that transmit on the same bin and their corresponding bit indexes by the following set: i is a (vector) set consisting of pairs of integer numbers; each pair indicates a user number and its corresponding bit index transmitted over frequency bin α.
The order of the collision occurring in bin α is denoted by c α , as discussed in Sec. 3. The number of elements (pairs) in each set D α i is evidently c α − 1 . For simplicity of notation and without loss of generality, we replace c α with c, we assume that i = 1 , and assume that users numbered 2, 3, . . . , c have collided with user 1 in bin α . The bit indexes of the corresponding codewords are marked by ξ e , 1 ≤ e ≤ c (for instance, ξ 1 = j , as implied by the description above).
During the decoding process, the BS stores and periodically updates 2 tables; one table for each of the 2 errorcorrecting codewords (as we assume QPSK modulation). The size of each table is u × n , as it stores the current probabilities for all the bits associated with all the users: where i is the user number indicator, 1 ≤ i ≤ u , and j is the bit index indicator, 1 ≤ j ≤ n.
For brevity of notation in the expressions that follow, we replace the sum notation simply by x for the discussion that follows.
We need to calculate the probability for x 1 1j = β , β ∈ {0, 1} ; this probability is affected directly by all the signal values intercepted on the ϑ BS receive antennas on bin α , which are is the joint probability density function of the values intercepted on all the receive antennas on bin α ; we do not need to explicitly calculate this probability, as the decoding process requires only the ratio hence the term f (F 1 α , . . . , F c α ) is cancelled out in both the numerator and the denominator. Remarks to (13): www.nature.com/scientificreports/ (a) We take a-priori value p(x 1 1j = 1) = 0.5 always instead of the current p 1 1j value in order to minimize circulation of the same information on the code graphs (similar to the concept of minimizing cycles in LDPC codes 15 ); all the other probability values are taken from the probability tables (12) that are updated periodically. (b) The bit values are initially i.i.d., however as the algorithm progresses, some dependency is introduced due to the passing of information between frequency bins, receive antennas and distinct codeword bits; however, the i.i.d. assumption proves to be sufficiently accurate.
In view of the above derivation, a multi-user detection (MUD) algorithm can be stated as follows: Algorithm 1 1. Initialize the probability matrices Update the probability matrices according to (13). 3. Compute the log-likelihood ratio (LLR) metrics for each bit of each user: 4. Perform iterative Belief-Propagation decoding 15 for each of the 2u LDPC codewords of length-n, namely x 1 i and x 2 i , for 1 ≤ i ≤ u . The number of decoding iterations depends on a few parameters, e.g. the type of code used, the available decoding complexity and the desired decoding latency. 5. Using the LLR values obtained from the LDPC decoding, calculate the bit probability matrices values: 6. Return to Step (2).
To summarize, the presented multi-user detection algorithm is executed at the BS side based on MAP estimation principles. This detector is not MAP estimation per definition, but an approximated MAP (due to the separate metrics computations for every user and each bit, the separate decoding of each user and the use of suboptimal LDPC decoding methods). Nevertheless, the periodic probability calculation for every bit (13) is MAP-oriented in the sense that all the collision combinations are considered according to their respective a-priori probabilities. Indeed, the simulations presented in Sec. 8 provide good results. However, the complexity associated with this type of detection is high when the rate of collisions increases. This may occur due to larger number of active users, longer error correcting codes or shorter available packet length. An efficient reduced-complexity decoding algorithm is the subject of the next section.

Linear estimation approach
The proposed method in this section is based on finding estimates for the following modulated symbols: The estimates are based on ϑ signal values for each symbol; these values are the intercepted signals on all the receive antennas on the relevant allocated frequency bin t ij , i.e.
The intercepted signal values are complex numbers, hence the problem can be formulated as an estimation of a (real) RV from a given (real) random vector of length 2ϑ . Our estimator will be linear for computational feasibility (of particular significance when large antenna arrays are employed), hence statistics up to second order are required. Similar to the discussion in Sec. 5, for simplicity of notation and without loss of generality, we use the notation α = t ij , and the order of the collision occurring in bin α is denoted by c. We assume that i = 1 , and we assume that users 2, 3, . . . , c have collided with user 1 on bin α . We consider each estimator for x 1 ij and x 2 ij separately.
Estimator for x 1 1j . The QPSK symbol transmitted by user i = 1 on bin α is equal to S x 1 1j x 2 1j , given by (5). The probabilities required for the estimation are of the same form as (12). From (7) we get: We shall develop an estimator for x 1 1j given the length-2ϑ column vector x 1 kj · I(h a kα ) +x 2 kj · R(h a kα ) + I(n α ). where in (24) we take p 1 1j = 0.5 , rather than employing the current iteration probability value (see remark (a) on Eqn. (13)). All the other probability values are taken from the probability tables (12) that are updated periodically.
Define the following matrix ψ α of size 2ϑ × 2c as follows: and the following diagonal matrix Λ α of size 2c × 2c as follows: Combining (20-27), we express the covariance matrix of F in the following form: where I 2ϑ is the identity matrix of size 2ϑ . It is easily shown that the cross-covariance vector, between x 1 1j and F , is equal to: where again p 1 1j = 0.5 , hence Cx1 1j = 1 . For numerical calculation reasons, to be clarified later (see Obs. 1), we will express Cx1 1jF in the form: where ρ 1 is a length-2c row vector, consisting of a single 1 and 0 elsewhere: The mean of F is denoted by ηF ; ηF consists of the following values: and the mean-square error of the estimator is given by The following observation has significant implications for reducing the computational complexity of the linear estimator: Observation 1 Using Obs. 1, the MMSE linear estimator can be re-written in the form: While the estimator in (34) requires a sized 2ϑ matrix inversion, the estimator in (36) requires a sized 2c matrix inversion. The number of receive antennas, ϑ , is typically significantly higher than the number of users transmitting on a single bin, which is c. This implies that the estimator in (36) requires a significantly reduced computational complexity; more specifically, it requires an order O(c 3 ) numerical operations, compared to an order O(ϑ 3 ) numerical operations with the estimator in (34). In addition, it is more robust against accumulated calculation precision errors when using Gaussian elimination method or one of its variations for the matrix inversion.
Estimator for x 2 1j . The derivation of an estimator for x 2 1j is similar to the derivation for x 1 1j , herein we detail only the differences. Similar to the previous derivations, we take p 2 1j = 0.5 , rather than employing the current iteration probability value; all the other probability values are taken from the probability tables (12) that are updated periodically. This difference should be taken into consideration when calculating the matrix Λ α (27) and the vector ηF (32-33).
The cross-covariance vector, between x 2 1j and F , is equal to: Similar to (30), we express Cx2 1jF in the form: where ρ is a length-2c row vector, consisting of a single -1 and 0 elsewhere: (38) Cx2 above, the complete detection algorithm can be formulated as follows:

Calculate all the linear estimators x 1
ij , x 2 ij and their corresponding mean-square errors ε 1 ij , ε 2 ij using the results in subsec. 6.1 and 6.2. 3. Compute the log-likelihood ratio (Note that this algorithmic ratio calculation assumes that x 1 ij and x 2 ij have Gaussian distribution; an assumption which is not always accurate. However, it is shown, via simulation, to provide a very good approximation) for each bit of every user: 4. Run iterative Belief-Propagation (BP) decoding 15 for each of the 2u length-n LDPC codewords, namely x 1 i and x 2 i , for 1 ≤ i ≤ u. 5. Using the LLR values obtained from the LDPC decoding, calculate the bit probability matrices values (see (15)). 6. Return to step (2).
To summarize, we presented a detection algorithm carried out at the BS, which is based on a linear estimator, combined with an LDPC decoding method. This detection scheme has a low decoding complexity due to the simplified (linear) processing of collision events. The scheme is readily implementable for practical MU-MIMO and OFDRMA schemes, at the price of somewhat degraded error rate performance. Simulation results are presented in Sec. 8.

Uplink OFDRMA capacity
Each user transmits towards the BS on any of the frequency bins included in its allocation vector (Def. 1). Let us focus on the i th user. From this user's perspective, any transmission on any of its allocated bins t ij , 1 ≤ j ≤ n , can be corrupted by an interference of between 0 (no-interference) to u − 1 (maximum-interference) other users. The received signals at the base station, on any allocated bin α = t ij , can be re-written using (7) in the form: where F α is a length-ϑ column vector containing all the received signals on all the BS receive antennas, i.e., F a α for 1 ≤ a ≤ ϑ . Similarly, n α is a length-ϑ column vector containing all the noise samples on all the BS receive antennas, i.e., n a α for 1 ≤ a ≤ ϑ . H iα is a length-ϑ column vector containing all the path gains between the i th user and all the receive antennas, i.e., h a iα for 1 ≤ a ≤ ϑ . Each H˜i α is a length-ϑ column vector with a similar construct to H iα , with the following unique statistical property: where p is the single user Bernoulli distribution probability, as discussed in Sec. 3. The probability for H˜i α to have non all-zeroes value is equal to the probability to have a collision order of 1 on bin α , as detailed in Sec. 3. Note that the form in (41) is not mathematically identical to the form in (7), as (41) has independent randomness in each and every separate bin, while (7) has randomness in the allocation of frequency bins over the entire OFDM packet. The form (41-42) is however correct from the statistical point of view, hence relevant for the capacity analysis that follows. The entries in H iα and H˜i α are independent, which comes from the independency of the path gains h a iα and the independent nature of the allocations between any user to the others. We assume all users employ Gaussian code books, the usual form of optimum signal in MIMO problems 17,18 . Then, if we condition on H˜i α , ĩ = 1 . . . u , ĩ � = i , the interference-plus-noise from (41), ũ i=1,ĩ� =iHĩα · X˜i˜j +n α , is Gaussian distributed with covariance matrix: where ω is the mean signal energy, similar to (6). As the base station has knowledge of the channel path gains and the users allocations, the interference-plus-noise is whitened by multiplying F α by C 1 2 i . Using similar results from previous work 19 , the mutual information between the i th user input and the BS output can be expressed in the form: where H denotes the complete channel path gain information available to the BS, and the identity det(I + AB) = det(I + BA) was used. It would be useful, in addition, to compute the mutual information strictly for a specific given collision order on bin α . We will denote this by I c for shortage of notation: Where I 0 = 0 refers to an unused bin whose mutual information is null. Unfortunately, in general, there are no closed form expressions for each I c , and they have to be calculated numerically by Monte Carlo simulations. It is easy to see that every I c depends only on the number of receive antennas and the SNR ratio ω σ 2 . Keeping in mind that the base station knows all users bin allocations and hence the collision order c α on each bin α , and that a bin with collision order c α = c serves c users on bin α simultaneously, the average mutual information per-bin per-user is calculated as follows: where p(c α = c) is the binomial distribution taken from (9). p is the probability (8) for a single user to occupy bin α , equal to the ratio between the code length to the OFDM packet length, i.e., n m . Naturally, when discussing channel capacity, the code length n is very large, and therefore necessarily the packet length m is also very large, as m ≥ n . However, in terms of maximizing capacity, n should not necessarily take the maximum possible value, which is m. We would like to maximize (46) as a function of p. Differentiating (46) with respect to p, we get: I is a polynomial in p with order u, therefore dĪ dp is a polynomial with order u − 1 . Therefore, equating (47) to zero yields, in general, u − 1 solutions. As p takes values strictly in the range 0 < p ≤ 1 , only solutions in this range should be considered. In addition, p = 1 should be considered as a candidate for maximizing Ī if dĪ dp (p = 1) > 0 . It is easy to see that: meaning that if p = 1 should also be considered.
The Abel-Ruffini theorem states that no closed-form solutions exist for polynomial equations of degree 5 or higher, therefore when the number of active users u is 6 or higher, no closed-form solution exists for dĪ dp = 0 , and the optimal p values must be calculated numerically.
A more strict scenario than (49) can be useful as follows: for every 2 ≤ i ≤ u , then Ī is maximized by setting p = 1.
Proof Let p c , 0 ≤ p c ≤ 1 , be the probability for a collision of order c on bin α , i.e. p(c α = c) = p c . We would optimize the solution for the 'global' problem, i.e. maximize Ī when p c are not limited to binomial distribution, as long as c=u c=0 p c = 1 . Using the first equality in (46) and setting p u = 1 − c=u−1 c=0 p c , we differentiate Ī by each p c , 1 ≤ c ≤ u − 1: Combining (51) with (50), we get that dĪ dp c < 0 for all 1 ≤ c ≤ u − 1 (where dĪ dp 0 < 0 always). This implies that in order to maximize Ī , the values of p c for 1 ≤ c ≤ u − 1 should take the lowest value possible, which is 0; therefore p u = 1 . Now, note that this 'global' optimization solution coincides with the specific binomial distribution for p = 1 . Therefore p = 1 maximizes Ī for the binomial distribution.
(48) dĪ dp (p = 1) = u · (I u − I u−1 ) + I u−1 , We can see from (60) that the sign (and value) of dĪ M dp remain fixed for p in the range s u < p < s+1 u for any integer s, 0 ≤ s ≤ u − 2 . Therefore, a local maximum for Ī M occurs if and only if p = s+1 u , −s · I s + (s + 1) · I s+1 > 0 , and −(s + 1) · I s+1 + (s + 2) · I s+2 < 0 . The collection of the local maxima is the group of candidates, and the absolute maximum is chosen as the candidate that gives the largest Ī M . In addition, p = 1 is also a candidate if −(u − 1) · I u−1 + u · I u > 0 (note that this is the same condition for p = 1 as in the OFDRMA optimization). The maximum value of I M is therefore equal to: Capacity curves as a function of SNR for ϑ = 2 transmit antennas and u = 3 users are given in Fig. 2. The values of p that provide these maximum-entropy values are also displayed on the same graphs, denoted by p max . Both OFDRMA and MU-MIMO results are given in each graph for comparison, using Alg. 3 and Obs. 3, respectively. Similarly, capacity curves for ϑ = 4 transmit antennas and u = 8 users are given in Fig. 3, with the exception that the larger number of users implies that numerical maximization of the entropy was required for OFDRMA, as explained after (49).
We can see that for low SNR values the optimal p values are equal to p max = 1 . This is evident in Fig. 2 for SNR ≤ 5.14 dB and in Fig. 3 for SNR ≤ 0.1 dB . This is explained by that the additive Gaussian noise is more significant compared to the multi-users interference, therefore it is beneficial to use all the available bandwidth for However, as we shall see in the following simulation section, in the SNR region corresponding to practical bit error rates, this gap is not significant. In addition, mutual information curves for a fixed p value are provided for u = 8 with ϑ = 4 , and u = 8 with ϑ = 2 . This type of analysis can be useful in practical systems where the code length n and the packet length m are strictly pre-defined, hence the ratio p = n m is fixed. The results are given in Fig. 4 for p = 0.25 . Also displayed in the graphs are 4 vertical lines, which represent the SNR values required to achieve Ī = 7 30 and Ī M = 7 30 , for both ϑ = 4 and ϑ = 2 . The choices of the values p = 0.25 and mutual information of 7 30 will be clarified along with the simulation results in Sec. 8, where the simulations layout used the parameter p = 0.25 and the coding rate per-user per-bin is equal to 7 30 . The 'gap' between the SNR required to achieve Ī = 7 30 and Ī M = 7 30 is equal to 0.45 dB for ϑ = 4 and 1.06 dB for ϑ = 2 . This gap is naturally in favor of the traditional MU-MIMO scheme over the novel OFDRMA scheme. Further comparisons of the results in Fig. 4 and the simulation results are included in Sec. 8.

Simulation results
Extensive simulations were carried out using LDPC code of length n = 120 and dimension k = 56 . This code has a sparse parity check matrix with constant column order of 3, and irregular row order of 5 or 6, and has no 4-cycles in its graph. This code is labeled 120.64.3.109 in the Encyclopedia of Sparse Graph Codes 16 . The rest of the simulation parameters, i.e., the number of active users, number of receive antennas and packet length were chosen to represent a wide variety of scenarios for our proposed uplink scheme, and to demonstrate the robustness of OFDRMA against the forced randomness induced in the system.
OFDM packet length is equal to 4 times the code length, namely m = 480 , which implies that p = n m = 0.25 . QPSK modulation was used in all simulations. The number of users ranges between u = 1 to u = 8 , where 8 users implies that the number of users in each bin (10) is equal to u · p = 2 on the average for OFDRMA, and is exactly 2 in each bin for MU-MIMO. The coding rate per-user per-bin is equal to 2·k m = 7 30 , which explains the SNR comparisons for this specific mutual information on Fig. 4.  www.nature.com/scientificreports/ The degradation of the OFDRMA scheme compared to the state of the art MU-MIMO is between 0.25dB (for higher BER) to 0dB (for smaller BER) for u = 8 users. This is smaller than the theoretical mutual information gap shown in Fig. 4 (to our satisfaction). Few factors affect the difference between the theoretical and practical results, in particular the relatively short code length n and the sub-optimality of the decoding scheme.
The difference in the simulation results between the MAP and linear estimation approaches is found to be negligible for both OFDRMA and MU-MIMO.
In terms of the effect of number of users on performance, when u is increased from u = 1 to u = 8 , the degradation is between 0.5dB to 0dB for MU-MIMO, and between 0.75dB to 0dB for OFDRMA; this gap in SNR becomes smaller for decreasing BER values.
Similarly, Fig. 6 presents the BER for ϑ = 2 receive antennas. The degradation of the OFDRMA scheme compared to the state of the art MU-MIMO is between 0.8dB (for higher BER) to 0dB (for smaller BER) for u = 8 users. Again, this is smaller than the theoretical mutual information gap shown in Fig. 4, in correspondence with the explanation above. Evidently, the degradation of the OFDRMA scheme compared to the state of the art MU-MIMO is more significant with ϑ = 2 compared to ϑ = 4 . This is explained by that for OFDRMA, some bins can have high collision order (compared to the uniform distribution of MU-MIMO) due to the random allocation of users to bins. These bins transfer information poorly when the number of receive antennae is smaller, as the received diversity may be insufficient to cope with the higher collision orders on these bins.
The difference in the simulation results between the MAP and linear estimation approaches is negligible for MU-MIMO; for OFDRMA, the gap is found to be between 0dB to 0.1dB.
With respect to the effect of the number of users on performance, when u is increased from u = 1 to u = 8 , the degradation is between 0.7dB to 0dB for MU-MIMO, and between 1.5dB to 0.05dB for OFDRMA. The  www.nature.com/scientificreports/ detrimental effect of the increased number of users on performance is greater with ϑ = 2 compared to ϑ = 4 . This is explained by the fact that as the number of users increases, so does the collisions order. This is more difficult to handle at the BS side when the number of receive antennas, hence the received diversity order, is smaller.

Conclusions
OFDM with random multiple access (OFDRMA) was presented for uplink transmission. The capacity of the scheme was analyzed comprehensively and compared with the capacity of a comparable state of the art scheme, namely MU-MIMO. Two detection schemes, which vary in complexity, were described. These schemes were shown via simulation to provide good performance and robustness against the forced randomness of the system. The practical degradation in the performance of OFDRMA with respect to MU-MIMO was found to be actually less than that predicted by the theoretical capacity analysis. Nowadays, with the emergence of MU-MIMO and IoT related standards, relaying on NOMA in OFDMA is called for. The OFDRMA approach may prove as a viable alternative to MU-MIMO in scenarios where uplink communications cannot rely on BS oriented downlink messages that orchestrate the frequency resources allocations.