# Joint Spreading Factor and Channel Assignment in Multi-Operator LoRaWAN Deployments
## 6 Multi-Operator Game for Channel Selection
### Best Response Algorithm for Computing the NE
At \(S=2\) km, our proposal results in a total normalized throughput higher than 1.5, as compared to an underwhelming 0.25 for the legacy approach. At \(S=20\) km, both of the algorithms produce throughput values in the vicinity of 0.8 with our proposal ever-so-slightly producing better values. Both ends of the plot highlight an aspect of legacy LoRaWAN functionality. When the distance between the gateway and the devices is rather small, the majority of the devices using the ADR approach for SF selection will default to SF7. The lower SFs would generally become too crowded, leading to excessive collisions. When the area size is large, the motivations for the legacy approach become visible. The SFs are balanced between the devices and on the different available channels. Nonetheless, our simulation scenario favors the legacy approach in this case. With the densification of IoT devices and gateway deployment, and with the natural need of wireless applications for more reliability, the proportion of devices that are in close proximity to the gateway will increase. Therefore, for most devices, the left side of the graph will be the best indicator of performance. We additionally assess the performance of our distributed learning approach, in comparison to its semi-distributed best response counterpart. Figure 4b has a box plot of the percentage difference in the total normalized throughput resulting from the use of either of the approaches. The box plot shows insignificant difference in payoffs between the two, with a median difference of less than 0.05% and a maximum difference slightly above 0.15%. This means that the distributed approach could be used to incur less signaling with an insignificant loss in performance. \begin{table}
\begin{tabular}{l l} \hline
**Parameter** & **Value** \\ \hline Number of different networks & 4 \\ Number of devices per network & [750,1000,1250,1500] (4500 total) \\ Number of available channels & 3 to 8 \\ \# of channels per operator \(n\) & 1 to 3 \\ Number of gateways per network & 2 \\ Network layout & Square with side \(S=8\) km \\ Path loss model & Okumura-Hata Model \\ Spreading factors SF & 7–12 \\ Tx power & 14 dBm \\ Carrier frequency & 868 MHz \\ Gateway height & 30 m \\ Device height & 1.5 m \\ Packet generation rate per network \(\lambda^{i}\) & [1,2,3,4] packets/hour \\ Packet length & 50 Bytes \\ Duty Cycle & 1\% \\ \hline \end{tabular}
\end{table} 
Table 3: Simulation Parameters. ### Impact of Device Densification

We aim to assess the impact of an increase in the number of IoT devices in the deployment area. To this end, we fix the packet generation rate for all devices, across all networks, at five packets per hour. The number of devices for each network, which we vary in this simulation, is also equal across all networks. The number of available channels is three, and \(n=1\) for our proposal. Figure 5 has a plot with the resulting total normalized throughput values. Again, we notice a wide gap between our proposal and the legacy approaches to SF and channel assignments. When the number of devices is 750, the total normalized throughput is 0.9542 for the legacy algorithm as compared to 1.54 for our proposal. When the number of devices is 1750, the total normalized throughput is 2.2682 for our proposal, as compared to 1.82 for the legacy approach. Figure 4: Impact of the area size on the performance. (**a**) Game approach gains. (**b**) Best response vs. learning approach. Figure 5: Impact of an increase in the number of devices on the total normalized throughput. ### Impact of an Increase in the Number of Available Channels

In all subsequent simulation scenarios, we increase the number of available channels from three to eight, the maximum possible under ISM band regulations. With an increase in the number of available channels, and with the legacy algorithm being able to access all of them, we increase the number of channels that each operator chooses in our approach (\(n\)) from one to two/three.