You are on page 1of 16

Received: 4 May 2018 Revised: 3 December 2018 Accepted: 21 December 2018

DOI: 10.1002/ett.3559


Opportunistic multiple access (OMA) for crowdsensing

networks with sparse activation
Seyede Nazanin Moosavi Vahid Pourahmadi

Electrical Engineering Department,

Amirkabir University of Technology, Abstract
Tehran, Iran For gathering data in a crowdsensing network, we need to support the con-
nectivity of a massive number of low power devices. In this paper, a new
Vahid Pourahmadi, Electrical Engineering multiple access technique is proposed for such networks with a large number
Department, Amirkabir University of of devices/sensors/users where we have taken advantage of the fact that these
Technology, Tehran 15916 34311, Iran.
devices usually do not become active at the same time, which we refer to as
sparse activation property. In this scheme, each device uses a specific spreading
code which is changing at symbol level. Symbol-level change of the spread-
ing code and the random nature of user activation are the two building blocks
that provide opportunistic low interference between data transmitted by devices,
which are activated in a specific time slot. We also discuss how the proposed
scheme can be used in grant free schemes which eliminate the need for heavy
signaling before data transmission. The performance of the proposed scheme
has been evaluated in different scenarios, and the block error rates are compared
with a few other multiple access schemes.


Crowdsensing is one of the main applications of the Internet-of-things (IoT) networks in which we aim to collect infor-
mation from a large number of devices/sensors. As an example, we can consider a scenario that many sensors have
been distributed in a large field to crowdsource a particular environmental metric (like soil humidity/temperature). Such
IoT/crowdsensing application should support a massive number of low power devices that need transmitting data to an
access point (AP) located in the area. These networks are usually uplink dominated in which each device/sensor/user
needs only low data rate, and they become active sporadically (only a few of them may need to transmit simultane-
ously). The power constraint also promotes the need to have low complexity procedures with low signaling overhead for
IoT devices.1
The current cellular network is not able to fulfill the requirements of IoT network because 4G networks designed mainly
to support user equipments which need high data rates for a relatively few number of devices. To have high spectral effi-
ciency, 4G networks can use complex signaling which consumes more power and is not useful for IoT networks. Therefore,
novel transmit/receive procedures are needed to support IoT networks that can support crowdsensing applications.2,3
Multiple access (MA) scheme is one of the areas that should be reviewed such that it can support access to many num-
bers of devices with their IoT requirements.4,5 Several studies have been conducted in this area to present new methods
to support a large number of devices.6,7 These schemes can be categorized into three groups: (1) codebook-based MA, (2)
sequence-based MA, and (3) interleaver-based MA.8,9
In codebook-based MA schemes, the key feature is to map the devices data to a multidimensional codeword of a code-
book. Two examples of such schemes are sparse code MA (SCMA)10 and pattern division MA (PDMA).11 Codewords in
SCMA have the same number of zero elements, but codewords in PDMA have a different number of zeros according to
the channel state of each device.12 To recover devices data in this group, an iterative message passing algorithm (MPA) is

Trans Emerging Tel Tech. 2019;30:e3559. © 2019 John Wiley & Sons, Ltd. 1 of 16

used as a near-optimal solution, and since it is based on maximum likelihood, its complexity is relatively high compared
to the other groups.13,14
The key feature of the second group is to work on the spreading code of devices and, instead of using orthogonal
sequences, they design nonorthogonal spreading codes and explain how to allocate these sequences to devices. A novel
scheme in this group is multiuser shared access (MUSA) scheme.13,15 In this group, minimum mean square error (MMSE)
with parallel or successive interference cancelation (PIC/SIC) have been considered as a less complicated receiver than
MPA; hence, it would be useful in terms of computational complexity.16
The idea of the third group is to increase the capacity of MA by spreading the data of a device (using inter-
leaver/scrambler) across a long signal stream. This leads to different superposition patterns between possible transmitters,
and thus, it obtains the interference averaging effect. One of the most well-known schemes of interleaver/scrambler-based
MA is interleaver division MA (IDMA).17,18 In IDMA, through a device-specific bit-level interleaver, interdevice interfer-
ence is suppressed by overlapped signal experience. In this group, due to computational complexity, it is difficult to use
MMSE detection or MPA (as input bits are spread widely); therefore, an elementary signal estimator with PIC (ESE-PIC)
is used for signal detection. ESE-PIC exploits soft estimation and cancelation with average complexity.19
To support crowdsensing applications, some of the above methods, like MUSA, have tried to design short spreading
codes while keeping the acceptable block error rate (BLER) when we have a network with a large number of devices.
This property makes these codes more suitable for crowdsensing applications as these devices/sensors usually do not
need to send lots of data in each transmission and also due to power constraints, long spreading codes are not suitable for
such settings.
In this paper, we aim to keep the short length property of the code and also make sure that the proposed method works
for a large number of devices while we avoid signaling overhead in the network (IoT/crowdsensing devices, especially the
ones that has power constraints are very susceptible to high signaling overhead). The core idea of the proposed scheme is
to design the spreading code by taking advantages of an important property of a crowdsensing network that the devices
are usually activated sporadically. More precisely, although there could be many devices in the network (say M), only a
small fraction of them (say up to K devices) will be activated at each time. Therefore, instead of the requirement that we
need to have M spreading codes with low mutual interference that they all can coexist with each other, effectively, we
only need to design the spreading code that any K of them can operate at the same time (keep the acceptable BLER). It
means that we need to have M spreading codes that opportunistic selection of each K of them constitute a good set of
spreading codes. Note that the opportunistic term that we have used here is different from the opportunistically successful
transmission which has been discussed in previous studies. In this scheme, opportunistic term is used for that although
all M codes cannot be used simultaneously (they generate very high interference over each other), any K out of M devices
can coexist with each other.
In short, the proposed MA scheme works in a sparse activated network, and each of the M network devices has a
spreading sequence where
• the spreading code has a short length,
• the scheme is grant free (low signaling overhead),
• the code is not constant for a device and changes per symbol,
• the spreading code has low interference as long as less than K devices get activated.
The performance of the opportunistic multiple access (OMA) (It should be noted that in this paper OMA means oppor-
tunistic multiple access and it should not be confused with orthogonal multiple access) scheme has been evaluated in
different network settings and to show its superiority we have compared the results with that of a few other possible
The rest of this paper is organized as follows. The system model and the structure of the transceiver is described in
Section 2. In Section 3, we introduce the design of the OMA scheme and the design of the spreading codes. Simulation
results are provided in Section 4, and finally, Section 5 concludes this paper.


2.1 Network model

In this paper, we focus on uplink transmission in a network with M devices where only at most K of them gets activated
at each time (alternatively, we can say at most 𝛼% = K∕M of devices are active at each time) (see Figure 1 where red
devices are active devices).

FIGURE 1 Sparse device activation (eg, red dots show active devices)

FIGURE 2 Transmitter structure

As for MA and to keep the low overhead and, similar to MUSA, we have assumed that devices are using short length
spreading codes. The short length of the spreading code (and existence of large number of devices, M) implies that there
are not enough orthogonal spreading codes that can be simply assigned to each of the devices; in this paper, we are trying
to propose one way to accommodate a large number of devices with such short length spreading codes.

2.2 Transmitter
The structure of the transmitter is shown in Figure 2. Assuming that {u1 , u2 , … , uK } are the K devices which are active
in this time slot, {di1 , di2 , , diK } are the ith (1 ≤ i ≤ b) symbols of the data block (of length b) that each device wants to
send at this slot.
Symbol i of device j (di𝑗 ) is first encoded, ci𝑗 , and then modulated with x-QAM modulation where x is the size of mod-
ulation constellation, mi𝑗 . For notation simplicity, in Figure 2, we have removed the superscript i noting that it is for one
time slot.
In common spreading mechanism, each modulated symbol of device uj , ie, mi𝑗 , is multiplied by spreading code of uj ,
sj = [sj [1], sj [2], … , sj [L]] (a code sequence with length L) and generates L samples of mi𝑗 × [s𝑗 [1], s𝑗 [2], … , s𝑗 [L]] which
will be transmitted through the channel.
Vector tj of length b × L represents the vector resulted from the concatenation of the spread samples of all b symbols
of data block that device j is transmitting
The nth sample of all devices, tj [n], j = 1, 2, … , K, is simultaneously transmitted toward destination (over the same
time/frequency resources). The received signal r (for duration of 1 ≤ n ≤ b × L) is then

r[n] = h𝑗 tj [n] +  , (1)

where hj is the channel gain between device j and the AP, and it models the channel path-loss and small-scale fading
which is modeled as a random variable with normalized expectation. hj assumed to be constant during transmission of
one data block (of size b × L), and  is a complex-valued zero mean Gaussian noise.
Equation (1) shows the superposition of all M devices, by x, we refer to the data of all active devices in a particular
time n, ie,
x = [t1 [n], t2 [n], … , tK [n]]T . (2)
The above procedure is the common structure for spreading the codes of devices. The structure of the proposed OMA
transmitter is similar to the above except that the spreading code of device j, sj , is not fixed for all data symbols of user
j and it can change from symbol i to i + 1. Therefore, in the rest of this paper, we will use si𝑗 notation to emphasize the
possibility of changing the spreading code from a symbol to another.

2.3 Receiver structure

The OMA receiver is based on SIC method. Here, SIC is used to realize multiuser detection (MUD) and performs interfer-
ence cancelation in multiple stages to separate superimposed symbols of different devices.20 Note that the design principle
of spreading code is to use low cross-correlation codes which help the SIC receiver separate different streams. Such
sequences can usually be generated by Hadamard codes or pseudorandom sequences (PN) (or more advanced techniques),
which are not effective in the networks with a large number of devices and short spreading code length. The alternative that
OMA is using is discussed in Section 3.
For the detection part, a linear MMSE detector is used with a transformation matrix W such that it minimizes the mean
square error between the transmitted vector x and the estimated vector as follows21,22 :
x̂ = W∗i .r (3)
( )
W∗i = arg min E ||x − Wi r||2 . (4)

In the above equation, E is the expectation operation and from Wang et al21 and Yang,22 we have
( )−1
W∗i = Ri + N0 A−2 , (5)
where N0 is the noise covariance matrix, and A is the active devices' power matrix which captures the total effect of
path-loss and fading in this time slot. In (5), Ri is the correlation matrix between spreading codes used for the ith time
slot. Rlm is the inner product of the spreading codes that have been assigned to devices l and m for transmission of symbol
i, ie, For R, we have
⟨ ⟩
Ri [lm] = sil , sim , (6)
where si𝑗 is the spreading code for the ith symbol of device j. Note that since the spreading codes might change for each
symbol, the receiver should use the corresponding Wi for detection of ith symbol.
The SIC detection procedure, as shown in Figure 3, can be summarized as follows. The first MMSE detector is used to

FIGURE 3 MMSE-SIC receiver. MMSE, minimum mean square error; SIC, successive interference cancelation

decode the data stream of the first device (with highest received power). If the first stream is successfully decoded, then
we remove its contribution from the received stream (by first encoding and modulating the detected symbols, multiplying
it by channel gain (which should have been estimated at the receiver since it needs to decode the user's data stream),
and then subtracting it from the received signal). The second MMSE detector has to deal only with the interference from
u3 up to uK since u1 has been already removed from the received signal. This process is continued until the final MMSE
detector determines the transmitted signal of the last active device.23
Error propagation in SIC receiver is a potential issue, and it occurs when the receiver incorrectly detects the first device
message and therefore (in cancelation step) not only it does not remove the contribution of that device but also it adds more
interference to the system. To prevent, error propagation, in OMA, we have assumed that each device transmits parity
bits and the receiver performs cancelation only if it can verify the correctness of the detected signal using its parity bits.


The design of the OMA scheme is presented in the following three sections.
First, in Section 3.1, we want to look at the requirement for grant-free access for crowdsensing networks and, using
that, we define the required properties that the new spreading codes should have. In Section 3.2, the step-by-step design
of short-length spreading codes is discussed. In the last part, Section 3.3, we have analyzed the consideration to have
successful SIC operation at the receiver.

3.1 Grant-free medium access

As we are interested in crowdsensing applications, the spreading code should be short, similar to MUSA. Short
length spreading code has an important consequence in that it limits the number of proper (orthogonal or with low
cross-correlation) spreading codes. Thus, conventional spreading code designs are not suitable for a network with a large
number of devices.
On the other side, due to the sparse activity of users in crowdsensing networks, we can say that we do not need
to generate M good spreading codes, but we only need to have K codes and on each time slot assign these K
codes to devices which want to become active. This scheme is a very good method and, in fact, used in many current
grant-based MA techniques. By grant-based, we mean that a device needs to notify the AP somehow that it wants to
transmit data and then AP assigns one of the good k codes to that device and then the device can transmit its data. The
grant-based techniques; however, are not appropriate for crowdsensing networks as the devices in such networks are low
power, and the amount of data that they want to send is also small. Therefore, grant-free schemes that have low power
consumption over the signaling period suits more for crowdsensing applications.
A straightforward way to have grant-free MA is to give a fixed spreading code to each device (upon setup). These
codes should have a property that they do not make high interference when a few devices get activated. To have such
property (since we do not know which devices may become active), we need to have a code length that can accommodate
semiorthogonal codes for all network devices (K) which might be much larger than M and this contradicts the need to
have a short spreading code for crowdsensing applications.
To accommodate all these requirements simultaneously, we have proposed the OMA scheme where
• spreading codes are short;
• transmit-receive chain has low complexity at the device side (receiver at the AP has high complexity though);
• each device has a preassigned spreading sequence; therefore, they can transmit without prior signaling, low
• whenever transmitting, a device transmits a data packet of length b bits and also sends parity bits (like CRC) at the end
of each packet.
By spreading sequence, we mean a sequence of spreading codes that are assigned to each device after it deployed in
the network (regardless of if it needs to transmit data or not). Therefore, whenever a device gets activated and wants to
send data, it knows (without asking the AP) the spreading code that it should use to spread each of the symbols.
It is worth to explain that the length of the assigned initial spreading sequence is large and each time a user wants to
send data, depending on the length of that data block, it uses the first b spreading codes of the spreading sequence. This

way, there is no need for changing the spreading code based on the block length. The decision on the block length b is
selected based on what transmitter/receiver has decided based on their higher layers protocols.
We want to emphasize that the idea of OMA is that we do not need to design M proper (orthogonal, low
cross-correlation) spreading schemes, but we need to design M schemes such that, if any K of them becomes active, they
still generate low interference over each other and so the SIC receiver detect them successfully. In the following, we
present the details of the spreading scheme and explain the required SIC-receiver considerations.

3.2 Spreading sequence design

In this section, we present the design of spreading codes for OMA networks. To simplify the explanations, let's assume
that the length of the spreading code, ie, L, is 4. Thus, we can at most generate four orthogonal codes of length 4. These
codes can be expressed as
⎡ 1 ⎤
⎢ ⎥
base code-set = ⎢  2 ⎥ (7)
⎢ 3 ⎥
⎣ 4⎦
where each of the  i , i = {1, 2, 3, 4} is vector of length 4 and they are orthogonal to each other. In common spreading
approaches, AP will assign one of the sequences in base code-set to a device, and the device uses that for spreading all of
the symbols of its data block (which is not possible for many devices).
In OMA, in contrast, a device may spread different symbols (of one data block) using a different spreading code, ie,
symbol level spreading. As an example, it is possible that uj spread its ith symbol using  1 and i + 1th symbol using  3 .
Therefore, assuming that a device needs to send a data of b symbols, it needs to know the complete sequence of spreading
codes that it should use for each symbol of the data block. In OMA, therefore, we assign the sequence of spreading codes to
each device (not only one spreading code). For example, the sequence of spreading codes of device 1 can be expressed as:

 1,  3, … ,  1, (8)

a sequence with the length of b.

One direct consequence of symbol-level spreading is that we are now able to generate a large number of sequences
of spreading codes. In our example, for data of b symbols, there are b4 possible spreading sequences. Such design of the
spreading codes has the following properties:
1. In conventional MA schemes, because the number of spreading codes is limited, each device should have signaling
with AP to gets its specific spreading codes when it wants to transmit data. However, in OMA, there are many
spreading sequences so they can be allocated to each device when a device is turned on/deployed in the network.
Any time a device has a data to send, it uses its own spreading sequence, and there is no need for signaling which is
a desirable feature for crowdsensing networks.
2. In OMA, although we have bL possible sequences, however for each symbol, there are at most L possible selection of
spreading codes, ie, the ith element of the sequence or the spreading codes is one of the { 1 ,  2 , … ,  L }. Therefore,
like other MA schemes, if there are more than L active devices, there will be some collision in spreading sequences.
The good point, however, is that the spreading codes of devices are not fixed, although the spreading codes of two
devices might collide for some symbols, they will not collide for all symbols of a data block and opportunistically
may be orthogonal to each other (this will not happen in previous schemes as the assigned spreading code will be
used for transmission of all symbols of a data block, and if two devices happen to have the same spreading code they
will use it for all symbols). Such property results in that there will be some (not all) symbols of one data block that
may get corrupted from other device's interference. As simulation results show, if the number of active devices is
not large (and so not many corrupted symbols), such symbol errors can be corrected relying on the outer code that
has been used on the data and devices can still perform in an acceptable range of BLER.

3.3 SIC detection considerations

As explained in 2.3, in order to detect the devices data, the spreading codes of transmitting devices (for each symbol)
should be known at the SIC receiver. In OMA, since devices get activated randomly and use their preassigned spreading
codes (for each symbol), the receiver does not know exactly which K sequences are used.

The positive side, however, is that since the AP knows which devices are deployed in the network, it knows the M
possible sequences that potentially might be used in the network. This enables the OMA receiver to search over all of the
possible spreading sequences and determine the corresponding spreading sequence by calculating the parity bits of the
detected signal and comparing it with the transmitted parities.
Note that although the spreading sequences of each device in (8) is generated randomly, it is fixed for each device as
long as it is in the network. For example, when a device powers up, it selects one spreading sequence (as described before)
and during the initialization informs the AP about the spreading sequence that it has selected (this happens only once
upon power ups). After that, whenever this device has a data block to transmit, it uses this sequence for spreading the
symbols. Note that this scheme hugely simplifies the receiver structure as the receiver does not need to check all possible
spreading code combination at each sample. Instead, assuming there are M devices, the AP has information about their
spreading sequences, and it only checks if any of the M spreading sequences are a match to the received data.
For example, the receiver at first, check the first potential spreading sequence and detect the data using that sequence
and calculate its CRC. Then, check if the calculated CRC is equal to the received CRC, it means that the device associated
with that spreading sequence was active. If the CRC is not correct, the receiver continues its search for next spreading
sequence until finds the right one or declares a fail in detection. In addition, as mentioned in Section 2.3, to prevent error
propagation, the signal cancelation of SIC only happens if the detected signal has correct CRC.
We should note that this scheme has high complexity especially when the number of devices gets larger, but since
the search procedure is at the AP side (where there is not critical power constraint), it does not violate the low-power
requirement of crowdsensing devices.


It is assumed that all active devices are synchronized, and the transmitter uses Turbo code (with a code rate of 1/2)
and quadrature phase-shift keying as the encoding and modulation blocks. Unsynchronized devices would increase the
complexity of transmitting/receiving procedures, and we are not considering that in this study.
On the receiver side, channel estimation is assumed ideal, MMSE-SIC procedure is used for data detection and inter-
ference cancelation. The length of the spreading code is assumed to be L = 4 and Hadamard codes of length four are
considered as the base code set. The spreading code that each device uses for each symbol of the data block changes based
on the spreading sequence that has been assigned to it. Table 1 summarizes the link layer simulation parameters.
The performance of the proposed scheme is investigated in the following three sections.
First, in Section 4.1, we want to validate our model to show that it can have a good performance in terms of BLER.
In Section 4.2, we compare the performance of our model with Hadamard and PN spreading codes when we have a
network with a large number of devices which are activated sporadically, and it shows the restrictions of Hadamard and
PN models for such networks.
In the last part, Section 4.3, the performance of OMA is evaluated for different assumptions for the network when
(1) the number of active devices increases while the total number of devices is fixed, (2) the number of total network
devices increases when the number of active devices is fixed, (3) when the data length increased, and (4) when the code
length increased.

TABLE 1 Simulation Parameter

Parameter Assumption
Spreading code Hadamard/ PN/ OMA
Modulation QPSK
Coding scheme Turbo code - rate 1/2
AP receiver algorithm SIC
Data length 160
Abbreviations: AP, access point; OMA, opportunistic
multiple access; PN, pseudorandom sequences; QPSK,
quadrature phase-shift keying; SIC, successive interfer-
ence cancelation.

4.1 BLER results

Consider a network with M = 20 OMA capable devices with parameters summarized in Table 1. In addition, upon
installation/deployment, each of them is associated with a certain spreading sequence.
Now, assume that two devices randomly get activated in this network, and for transmission, each of them uses their own
spreading sequence. We want to simulate the BLER of such setting. The important consideration is that since the location
of devices (and thus their distance to the AP) is not known, we do not know about their relative received power at the AP
which highly affect the performance of the AP's SIC receiver. Therefore, to get a complete picture of the performance of
OMA, we have simulated the two device network in two settings where the device's relative powers of the two devices are
0.5 (device1 received power is two times of device2) and 1 (same power setting).
Figure 4 and Figure 5 show the BLER of these devices for the case of different power and the same power, respectively.
The x-axis in these two Figures is the received SNR of device-1 at the AP. As can be seen, the BLER of the first device gets
below one percent for the SNR of 2.5 dB and 2.8 dB for the different and same power settings, respectively.

FIGURE 4 Block error rates (BLER) of two devices scenario with different power. SNR, signal-to-noise ratio

FIGURE 5 Block error rates (BLER) of two devices scenario with same power. SNR, signal-to-noise ratio

FIGURE 6 Block error rates (BLER) of four devices scenario with different power. SNR, signal-to-noise ratio

FIGURE 7 Block error rates (BLER) of four devices scenario with same power. SNR, signal-to-noise ratio

Figure 6 and Figure 7 show the same analysis when 4 devices are activated together and have different or same power.
Similar to the two device cases, we observe the BLER waterfall behavior, but as expected, since there is more interference
in the network, they get to BLER of 10−2 in higher SNRs.
Note that, in both previous cases, we have assumed that there are a total of M = 20 OMA capable devices (not 2
or 4 devices). Thus, to see the correct performance of the OMA, we have used Monte Carlo method and simulated the
network many times, and each time 2/4 devices (from the total of 20 devices) become active and transmit using their own
preassigned spreading sequence. The results presented here is the average BLER over all these cases.

4.2 Comparison with conventional methods

The previous section demonstrates the good performance of the OMA scheme. In this section, we want to compare OMA's
performance with a few other transmission schemes. For more straightforward explanation, in all simulations, we have
assumed the spreading code of length 4, but the results can be extended to other cases easily.

It should be noted that there are many other advanced MA schemes including PDMA and SCMA that we did not
consider in our comparison study. This is mainly due to that these schemes do not use short spreading codes and
are not appropriate for crowdsensing applications. Schemes like MUSA13,15 are aimed for such applications and use
short spreading codes similar to PN codes that we have used in this study. The power of OMA is to enable data
transmission in a network with many potential active devices with small spreading sequences; if we let the network
uses long spreading sequences, the more advanced scheme can outperform OMA (which is not the target scenario in
this study).
Scheme I: This is the basic Hadamard scheme in which each device has a fixed special Hadamard code which is orthog-
onal to all other codes. There is no symbol-level spreading, and all bits of a device are spread with the same Hadamard
code. Note that the Hadamard codes with a short length are limited, eg, with length 4, we have just four different codes,
so Scheme I can support networks up to four devices.
Scheme II: In this scheme, devices still use Hadamard code, and the spreading code is fixed from one bit to another.
The difference compared to the Scheme I is that the same spreading code might be assigned to different devices. Thus,
it is possible in this scheme to support more than four devices at the expense that some of the devices will use the same
spreading sequence and they may cause interference on each other. Note that, as long as the number of devices is less than
the number of available Hadamard codes, we use Scheme I instead of Scheme II since, in Scheme I, we are sure about the
orthogonality of the assigned sequences.
Scheme III: In this scheme, the spreading sequences are generated based on the PN sequence. Use of PN sequences
let us support more devices (there are more PN sequences compared to Hadamard codes for the fixed length). However,
since the PN codes are not orthogonal to each other, they generate interference on each other. In Scheme III, like the
Scheme I, we assume that it is not possible to reuse the code on two devices. Therefore, we can only use this scheme
until the number of devices in the network is less than the number of PN sequences (eg, seven PN codes if the length of
spreading code is 4).
Scheme IV: This scheme is like Scheme II, just instead of Hadamard codes, devices use PN sequences. Similarly
note that as long as the number of devices is less than the number of available PN codes, we use Scheme III instead
of Scheme IV.
Scheme V: In this scheme, we use the proposed OMA scheme on which each device is assigned a spreading sequence
generated as explained in previous sections. Note that the number of spreading sequences is not limited in this case so
we can support many devices in the network.
To better understand each scheme, we first simulate their performance in a common network with no sparse activation
property. In the next part, we focus on a network with sparse activation property (M device while only up to K can become
active simultaneously) and show the superiority of the proposed scheme.

4.2.1 Common (nonsparse) networks

In this part, there is no assumption on sparse activation so when we say that there are 𝓁 devices in the network, we mean
that they are all active at the same time.
First, assume that we have a network with 2/4 devices. Since the number of devices is less than 4, we may use Scheme I,
Scheme III, or Scheme V. Figure 8 and 10 show the device-1 BLER in each of these settings when the number of network
devices is 2 and 4, respectively. The depicted BLER is the average BLER of device-1 when it is assumed that device-1 has
normalized received power and the power of other devices selected randomly between the range of [0.1, 0.9] compared
to device-1. Note that, in this part, we did not report the performance of Scheme II and Scheme IV as their performance
would be inferior to Scheme I and Scheme III as explained above.
As expected in Figure 8 and Figure 9, we can confirm that Scheme I have the best performance followed by Scheme III
and V. This is due to that devices in Scheme I have orthogonal spreading sequences, and so there will be no interference
when they transmit simultaneously. The performance of the Scheme III is a bit worse than Scheme I since despite the
PN sequences have low cross-correlation, they are not orthogonal, so they generate some interference on each other.
Although in an acceptable range, BLER of Scheme V is inferior compared to the other two schemes as due to its random
structure, the spreading sequence of OMA is not orthogonal to each other which results in higher interference and thus
lower performance. We wanted to note again that Figure 8 and Figure 9 are for the all active network and the design of
OMA is not for such setting. OMA is aimed for networks where there are many devices with sparse activation (discussed
in the next section). We just bring these results here to show the distinction better.

FIGURE 8 Block error rates (BLER) of nonsparse network with two devices. SNR, signal-to-noise ratio

FIGURE 9 Block error rates (BLER) of nonsparse network with four devices. SNR, signal-to-noise ratio

4.2.2 Sparse networks

Now, we consider a more realistic setup for IoT/crowdsensing applications where:
• there are 20 devices in the network;
• devices gets activated sparsely;
• there is no signaling between devices and receiver and the receiver should search among all available spreading codes
to find the right one for each device.
To see the performance, we have simulated Schemes II, IV, and V when we assume that 2, 4, and 6 devices (out of 20
devices) gets activated in the network. For these cases, the average BLER of the first device with respect to its received
SNR is depicted in Figure 10, Figure 11, and Figure 12, respectively. To have the average performance of device-1 BLER,
assuming device-1 has normalized received power, we have averaged BLER for different scenarios where, in each scenario,
other active devices are randomly selected among the other 19 devices and also when their received powers are randomly
selected between the range of [0.1,0.9]. Note that, as there are many devices in the network, Schemes I and III are not

FIGURE 10 Block error rates (BLER) of network with two (out of 20) active devices. SNR, signal-to-noise ratio

FIGURE 11 Block error rates (BLER) of network with four (out of 20) active devices. SNR, signal-to-noise ratio

applicable (they can support up to seven device networks with spreading code of length 4), so there are not BLER results
for these schemes.
As can be seen, device-1 BLER for Scheme II and IV rapidly deteriorates when the number of active devices increases,
whereas Scheme V maintains its waterfall behavior. In Schemes II and IV, if the activated devices select different codes
(like two orthogonal Hadamard codes), they can simultaneously transmit with no interference, and they will have good
BLER; however, if they select similar spreading code, their transmitted signal will get mixed up over the air, and it cannot
be recovered at the destination. Clearly, when the number of possible active devices increases, the chance of collision
increases, which decreases the average performance of the network. This is the reason that we see poor performance of
Schemes II and IV in Figure 12.
On the other hand, when the number of devices increases, OMA maintains its performance since it has many differ-
ent spreading sequences and each device is associated to one of them when it is deployed in the network. Whenever
each device wants to transmit, it uses that sequence (which is different from others) and does not need to select a code
randomly. This scheme, therefore, prevents two devices use the same spreading sequence which is the main reason that
OMA can maintain its performance. Note that, as previously seen in Section 4.2.1, the spreading sequences of OMA are

FIGURE 12 Block error rates (BLER) of network with six (out of 20) active devices. SNR, signal-to-noise ratio

FIGURE 13 Different activation with 40 devices in a network. BLER, block error rates; SNR, signal-to-noise ratio

not completely orthogonal, so the performance of OMA is not as good as Hadamard code or PN sequence of Figure 8
and Figure 9.

4.3 OMA performance in different network settings

To better see the performance of OMA here, we study the BLER of device-1 when the total number of devices in the net-
work is 40, and they become activated with different probabilities of 10%, 15%, and 20%. As can be seen in Figure 13, even
though there are 40 devices in the network, OMA has acceptable BLER performance when device activation probability
remains less than about 15%.
We can also study OMA performance, Figure 14, by assuming that the total number of devices is changing from 20 to
60, whereas the number of active devices is constant, four devices for this example. It is essentially a similar analysis of
Figure 13 but from another perspective. As can be seen, OMA is not very dependent on the total number of devices, and it
almost has the same performance as long as the maximum number of possible active devices is fixed. Slight degradation

FIGURE 14 Block error rates (BLER) analysis for four active devices. SNR, signal-to-noise ratio

FIGURE 15 Block error rates (BLER) analysis for different data length. SNR, signal-to-noise ratio

of more device scenarios may be justified noting that the more spreading sequence may contain some spreading codes
with not good cross-correlation property with others. It is the reason that, on average, they have slightly worst results.
To study the affect of data length on our system, we evaluate the BLER of the system when we change the block length.
In Figure 15, as expected, we can see that by increasing the data length the BLER increases; it is due to that the block will
be in error if any of its bits received incorrectly, so larger blocks experience higher BLERs.
To follow the short block-length requirement of the crowdsensing network, in the previous simulations, we have only
considered spreading code of length 4. We have observed, in such networks, as long as the number of simultaneous active
users is less than about 4/6, the OMA has satisfactory performance (regardless of how many potential users are in the
network). Although this is a good property, if the number of simultaneous active users goes beyond that limit, OMA
will loose its performance, meaning that the code length of 4 (even with OMA) cannot guaranty the required BLER. In
such settings, therefore, we need to increase the length of the spreading code. As the final simulation, and to show the
good performance of OMA in other code lengths, we have changed the code length from 4 to 8. Figure 16 shows that by
spreading code length to 8, we can support more than 4 active users in a 20-user network with acceptable BLER.

FIGURE 16 Block error rates (BLER) analysis for spreading code length 8. SNR, signal-to-noise ratio


In this paper, a novel MA scheme called OMA is proposed. This scheme is suitable for crowdsensing applications where
we need a grant-free uplink transmission for many devices in the network where only a small fraction of devices are
active simultaneously, and they only send a small amount of data each time. For data transmission, OMA uses spreading
codes that may change within a symbol of one data block. The design of such symbol-level spreading sequence is based
on the facts that we do not need to have spreading codes equal to the total number of devices M; instead, it suffices to have
spreading sequences that maintain low cross-interference when any k(k < < M) devices become active simultaneously.
To see the performance of OMA, it has been simulated in different network settings which demonstrates the gain that
can be expected when we use OMA as the access technology.


Vahid Pourahmadi

1. Bockelmann C, Pratas N, Nikopour H, et al. Massive machine-type communications in 5G: physical and MAC-layer solutions. IEEE
Commun Mag. 2016;54(9):59-65.
2. 3GPP. Non-orthogonal multiple access candidate for NR. Paper presented at: TSG RAN WG1#85 Meeting (R1-163992); May 23-27, 2016;
Nanjing, China.
3. 3GPP. Candidate NR multiple access schemes. Paper presented at: TSG RAN WG1#84-bis Meeting (R1-163510); April 11-15, 2016; Busan,
South Korea.
4. 3GPP. New uplink non-orthogonal multiple access schemes for NR. Paper presented at: TSG RAN WG1#86 Meeting (R1-167535);
August 22-26, 2016; Gothenburg, Sweden.
5. 3GPP. Non-orthogonal multiple access for new radio. Paper presented at: TSG-RAN WG1#85 Meeting (R1-162517); May 23-27, 2016;
Nanjing, China.
6. 3GPP. Considerations on DL/UL multiple access for NR. Paper presented at: TSG RAN WG1#84-bis Meeting (R1-162517); April 11-15,
2016; Busan, South Korea.
7. Dai L, Wang B, Ding Z, Wang Z, Chen S, Hanzo L. A survey of non-orthogonal multiple access for 5G. IEEE Commun Surv Tutor.
8. Kim H, Lim YG, Chae CB, Hong D. Multiple access for 5G new radio: categorization, evaluation, and challenges. arXiv preprint
arXiv:1703.09042; 2017.
9. Yan C, Yuan Z, Li W, Yuan Y. Non orthogonal multiple access schemes for non multiple access schemes for 5G. ZTE Commun. 2016;11:1.
10. Nikopour H, Baligh H. Sparse code multiple access. Paper presented at: 2013 IEEE 24th Annual International Symposium on Personal,
Indoor, and Mobile Radio Communications (PIMRC); 2013; London, UK.

11. Zeng J, Li B, Su X, Rong L, Xing R. Pattern division multiple access (PDMA) for cellular future radio access. Paper presented at: 2015
International Conference on Wireless Communications & Signal Processing (WCSP); 2015; Nanjing, China.
12. Ding Z, Lei X, Karagiannidis GK, Schober R, Yuan J, Bhargava V. A survey on non-orthogonal multiple access for 5G networks: research
challenges and future trends. arXiv preprint arXiv:1706.05347; 2017.
13. Fa-Long L, Zhang C. Signal Processing for 5G: Algorithms and Implementations. Hoboken, NJ: John Wiley & Sons; 2016.
14. Dai L, Wang B, Yuan Y, Han S, Chih-Lin I, Wang Z. Non-orthogonal multiple access for 5G: solutions, challenges, opportunities, and
future research trends. IEEE Commun Mag. 2015;53(9):74-81.
15. 3GPP. Receiver details and link performance for MUSA. Paper presented at: TSG RAN WG1#86 Meeting (R1-166404); August 22-26, 2016;
Gothenburg, Sweden.
16. Yuan Z, Yu G, Li W, Yuan Y, Wang X, Xu J. Multi-user shared access for internet of things. Paper presented at: 2016 IEEE 83rd Vehicular
Technology Conference (VTC Spring); 2016; Nanjing, China.
17. Ping L, Liu L, Wu K, Leung WK. Interleave division multiple-access. IEEE Trans Wirel Commun. 2006;5(4):938-947.
18. 3GPP. LLs results for RDMA, GOCA, RSMA and IDMA schemes. Paper presented at: TSG RAN WG1#86 Meeting (R1-167536);
August 22-26, 2016; Gothenburg, Sweden.
19. Saito Y, Kishiyama Y, Benjebbour A, Nakamura T, Li A, Higuchi K. Non-orthogonal multiple access (NOMA) for cellular future radio
access. Paper presented at: 2013 IEEE 77th Vehicular Technology Conference (VTC Spring); 2013; Dresden, Germany.
20. Shirvanimoghaddam M, Condoluci M, Dohler M, Johnson SJ. On the fundamental limits of random non-orthogonal multiple access in
cellular massive IOT. IEEE J Sel Areas Commun. 2017;35(10):2238-2252.
21. Wang B, Wang K, Lu Z, Xie T, Quan J. Comparison study of non-orthogonal multiple access schemes for 5G. Paper presented at: 2015
IEEE International Symposium on Broadband Multimedia Systems and Broadcasting; 2015; Ghent, Belgium.
22. Yang L-L. Minimum mean-square error and maximum likelihood multiuser detection: statistical properties and applications.
Paper presented at: IEEE 69th Vehicular Technology Conference (VTC Spring 2009); 2009; Barcelona, Spain.
23. Tse D, Viswanath P. Fundamentals of Wireless Communication. Cambridge, UK: Cambridge University Press; 2005.

How to cite this article: Moosavi SN, Pourahmadi V. Opportunistic multiple access (OMA) for crowdsensing
networks with sparse activation. Trans Emerging Tel Tech. 2019;30:e3559.