Abstract

The Internet of Things (IoT) is the interconnection of different objects through the internet using different communication technologies. The objects are equipped with sensors and communications modules. The cognitive radio network is a key technique for the IoT and can effectively address spectrum-related issues for IoT applications. In our paper, a novel method for IoT sensor networks is proposed to obtain the optimal positions of secondary information gathering stations (SIGSs) and to select the optimal operating channel. Our objective is to maximize secondary system capacity while protecting the primary system. In addition, we propose an appearance probability matrix for secondary IoT devices (SIDs) to maximize the supportable number of SIDs that can be installed in a car, in wearable devices, or for other monitoring devices, based on optimal deployment and probability. We derive fitness functions based on the above objectives and also consider signal to interference-plus-noise ratio (SINR) and position constraints. The particle swarm optimization (PSO) technique is used to find the best position and operating channel for the SIGSs. In a simulation study, the performance of the proposed method is evaluated and compared with a random resources allocation algorithm (parts of this paper were presented at the ICTC2017 conference (Wen et al., 2017)).

1. Introduction

The Internet of Things (IoT) is expected to offer advanced connectivity of devices, systems, and services that go beyond machine-to-machine communications and covers a variety of protocols, domains, and applications [1, 2]. It is believed that the IoT paradigm will have a strong impact on everyday life in the future for assisted living, automation, improved learning, industrial manufacturing, logistics, process management, intelligent transportation of people/materials, real-time monitoring of industrial processes, e-health facilities, and more [3]. The IoT has been attracting a great deal of attention because of its functions to enhance users’ everyday lives and behavior. However, there are still a lot of challenges for IoT applications. The large number of IoT objects also creates massive amounts of data in a network; the crux of the problem lies in how to solve the problem of interference between different IoT devices. In addition, spectrum scarcity is also a big issue. IoT objects are expected to grow into large numbers, and it will be very difficult to allocate spectrum bands to all these objects [4]. To address the above problems, recent trends in research are shifting to cognitive radio networks (CRNs), viewing them as a potential solution for IoT applications. Thus, a new paradigm of IoT networks based on the cognitive radio (CR) system has been proposed.

Cognitive radio can sense, learn, and adapt to the surrounding environment according to inner and outer stimuli. Generally, a cognitive radio network is based on a dynamic spectrum allocation procedure, and licensed primary users (PUs) or unlicensed secondary users (SUs) have the right to share the spectrum provided they do not cause intense interference. The success of the network lies in enhancing spectrum and resource allocation. As mentioned before, for such a large number of IoT objects, the current fixed spectrum utilization policies cannot satisfy their needs, and result in inefficient spectrum utilization. Besides, the cost-effectiveness issues with spectrum assignment are not negligible. Thus, CRNs are gaining popularity for addressing these situations. In addition, it is strongly believed that CR-based IoT frameworks can alleviate interference by looking for interference-free channels through a dynamic spectrum access capability [5]. Many researchers have already addressed IoT resource allocation problems by taking advantage of the mentioned characteristics of CRNs. Salameh et al. [6] proposed a probabilistic spectrum assignment algorithm in time-critical IoT-based CRNs under proactive jamming attacks. They aimed at minimizing the packet invalidity ratio of each CR transmission, subject to delay constraints. Shigueta et al. [7] presented a strategy for channel assignment in IoT networks, which uses opportunistic spectrum access via CR.

With the increasing interest in IoT sensor applications (e.g., smart cities, industrial control, security, and emergencies), the huge number of interconnected sensors coupled with the increasing demand and usage of wireless spectrum (especially in the industrial, scientific, and medical band) challenges the deployment of real-life IoT [8]. Because of CR’s dynamic spectrum allocation policy, it can provide huge spectrum opportunities and improve spectrum utilization for IoT sensors, and this capability provides the possibility of deployment for IoT devices. By applying CR into densely deployed wireless devices (e.g., sensor nodes), the corresponding sensor nodes are considered SUs. They can simultaneously transmit data packets under different channels and release occupied channels to PUs through a smart handoff. Therefore, this technology can reduce energy consumption sufficiently and greatly improves the efficiency of transmission. Li et al. [9] designed a transmission scheduling method in cognitive radio sensor networks (CRSNs) with minimal occupation of channels and high transmission efficiency, aimed at exploring the performance of CRSNs in the industrial IoT. A new system that improves multichannel IoT network environments and that could be an excellent candidate for low-power cognitive IoT sensor network applications was proposed by Hong et al. [10].

As can be clearly seen from the above research, either in CR-based IoT networks or in IoT sensor networks, a lot of researchers fully use CR’s characteristics of dynamic spectrum allocation in order to utilize the spectrum and resources to the maximum extent possible. In fact, the CRN has been widely used in wireless sensor networks (WSNs). Bakhsh [11] proposed an energy-efficient distributed relay selection technique for multihop WSNs. Energy consumption was reduced by selecting a stable relay and power allocation for collaboration. Zhu et al. [12] proposed a novel channel access scheme for the problem of how to access multiple channels without environment information on the cognitive users. In an IoT sensor network, sensors can be viewed as SUs, so the problem becomes how to allocate spectrum resources to SUs and reduce interference among them, while taking full advantage of CRN characteristics. In fact, how to improve resource allocation using a dynamic allocation policy in a CRN has always been a hot research area. Yang and Zhao [13] proposed a heuristic, robust, relay selection scheme and formulated robust power allocation as a semi-infinite program to maximize capacity while ensuring that interference with primary users is below a predefined interference threshold. Tiwari and Saha [14] presented a particle swarm optimization- (PSO-) based, cochannel interference-constrained, efficient, and low-complexity novel spectrum allocation scheme with simultaneous power and network capacity optimization. Taking into consideration the energy limitations, many papers have studied resource allocation schemes aimed at saving energy. For example, Denis et al. [15] investigated the problem of SUs’ energy efficiency maximization under secondary total power and primary interference constraints. In CRNs, utilizing resources without subjecting PUs to harmful interference is a crucial problem; this means that any method used to assign the resources must guarantee that PU transmissions are always prioritized.

In a CR wireless network, due to the dynamic spectrum allocation procedure, PUs can share the spectrum with SUs; in this scenario, the success of the network lies in enhancing spectrum and resource allocation. Establishing methods that can effectively assign resources while also protecting PU performance in CR networks is a hot topic in this research area. Chabalala et al. [16] employed a Lagrangian framework to reformulate the optimization problem and determine the optimal channel selection and power distribution for SUs. Besides, more and more researchers have found that placing the base station at an inappropriate location and/or selecting an incorrect channel will increase the interference and directly minimize the quality of service (QoS). Some papers have discussed minimizing power consumption by obtaining optimal base station positions [17, 18]. Unlike previous investigations that accounted for positions of base stations in order to regulate interference, focusing on interference management among SUs and PUs can also play a key role in resource allocation. The positions of SUs and channel allocation in CR systems have received a great deal of attention recently. Xue et al. [19] presented a general resource-allocation framework that optimizes power and channel allocation for SUs; this depended on SUs being aware of their location. Tan et al. [20] proposed a scheduling algorithm to improve the priority of SUs for which bandwidths are restricted by position. Ozcan and Gursoy [21] investigated channel selection based on the lowest channel gain or the highest data channel gain. Khan and Yoo [22] proposed a dynamic interference control in OFDM-based cognitive radio network using GA.

Effective resource allocation should satisfy the different QoS requirements of multiple PUs and SUs without interrupting higher priority transmissions in a CR network, regardless of power, channel spectrum, PU/SU or base station position allocation. However, little attention has been paid to methods that combine base station positioning with channel selection. In fact, these two factors directly impact the overall interference and performance of a system. While placing the base stations or selecting the operating channel randomly, the subsequent interference among them will increase. Additionally, in a wireless sensor network (WSN), the base station location is closely related to the lifetime of the sensor network.

In our paper, our method derives the optimal locations of secondary information gathering stations (SIGSs) and their operating channels and can be used in IoT sensor networks, which, to the best of our knowledge, has not been studied in the literature. We also consider the appearance probability of secondary IoT devices (SIDs) that can be installed in cars, in wearable devices or for other monitoring devices. This work aims to maximize the secondary IoT system capacity while also guaranteeing an interference threshold for primary users, subject to signal to interference-plus-noise ratio (SINR) constraints, while maximizing the supportable number of SIDs. The contributions of our proposed scheme can be summarized as follows:(1)We propose a scheme that combines optimal positioning of the SIGSs with selection of the optimal channel, which has not been studied in the literature. This method can improve spectrum utilization and maximize system throughout, fundamentally enhancing total system performance. Additionally, the scheme can be used for IoT sensor networks.(2)We propose an appearance probability for the SIDs that may be installed in cars and in wearable devices or for other monitoring devices. This can facilitate analysis and reduce the complexity of the problem. At the same time, our method can also maximize the number of SIDs in service based on the probability.(3)We use a PSO algorithm to find the optimal positions for SIGSs and the operating channel; this has relatively low complexity and can effectively address problems.

The rest of this paper is organized as follows. In Section 2, the system model is described. In Section 3, the proposed optimal positions of the SIGSs and the operating channel selection mechanism for IoT sensor networks are presented. In Section 4, the PSO algorithm used to determine the optimal SIGS locations and channel selection is explained. In Section 5, the performance of the proposed method is evaluated and compared with the results of a random distribution case. Finally, Section 6 provides our conclusions.

2. System Model

This paper considers a scenario where multiple primary links and primary base station (PBS) are receiving signals from PUs on the uplink channel, and SIDs are communicating with SIGSs using primary uplink channels. In our scenario, we do not know the positions of the PUs, so we consider uplink channels for primary systems. We also assume that secondary systems already have information about the PBS locations and the operating channel. In addition, they will use the primary systems’ uplink channels. In our model, SIDs have information about the interference they cause on the primary systems, and they can directly access a part of the licensed spectrum as long as the interference is below a predefined threshold.

As shown in Figure 1, PBSs will receive interference from SIDs, SIGSs, and other primary systems (including PBSs and PUs that use the same channel as the PBS). In Figure 1, the black line denotes the interference suffered by the PBS. PUs will receive interference from SIDs, SIGSs, and other primary systems that use the same channel. The dotted black line in Figure 1 shows the interference received by a PU. Concerning the secondary systems, SIDs will receive interference from PBSs and PUs, as well as other secondary systems (including SIGSs and SIDs that use the same channel as the initial SIDs). Similarly, SIGSs will receive interference from other SIGSs, SIDs, PBSs, and PUs that share the same channel.

However, in our model, we ignore the interference from primary systems and assume that they are well controlled by the primary operator; instead, we are interested in the interference suffered by SIDs and PBSs. Before determining the SIGS positions and the matched channel, we assume that secondary systems have information about the PBS positions and operating channel. Every base station has its own coverage range, which is calculated by the Friis transmission equation; this will be explained in detail in the next section.

3. Optimal Position of the Secondary Base Station and the Operating Channel Selection Mechanism for IoT Sensor Networks

As shown in Figure 2, we divide the whole space into small equally sized boxes with a numeral in every unit area, which ranges from 0 to 1; this stands for the probability of SID appearance in this unit area. We assume that no more than one SID can exist in each unit site. We assume that the SID appearance probability at each unit area is known before deploying the SIGS, and the probabilities in every unit area are independent of each other.

Every SIGS has its own coverage range, which is calculated by the Friis transmission equation:where is the receiving power available on input at the receiving antenna; is the output power to the transmitting antenna; are antenna gains of the transmitting and receiving antennas, respectively; is the wavelength; and is the distance between the transmitting and receiving antennas. We need to obtain , which is the radius of the base station’s coverage. This can be derived by rearranging (1):where is the minimum decodable receiving power.

Every base station has its own coverage radius, which is referred to as its service range. From (2), it is clear that the radius of the coverage range depends on the transmitter power when the other factors are fixed; thus, if the transmitter power of SIGSs and PBSs are fixed, we can assume that every SIGS has the same coverage range in the same way that every PBS has the same coverage range. However, it is difficult to avoid the situation where some SIGSs cover the same area. This means that there will be some inevitable overlap between the service ranges of SIGSs. For this situation, we put forward a policy that can effectively solve this kind of problem.

Figure 3 shows the situation where the coverage areas of SIGSs overlap. It is clear that SIGS1 and SIGS2 have the same user in their service area: SID1. To determine which SIGS will be selected to communicate with SID1, two factors will influence the result: one depends on distance and the other on the ID number. For example, if the distance between SIGS1 and SID1, referred to as D11, is greater than the distance from SIGS2 to SID1 (D21), then SID1 will choose SIGS1 for communication. When D11 is equal to D21, the selection will be based on the ID number; here, SID1 will connect to SIGS1 because its ID is 1.

The performance objectives of the CR system are described in terms of fitness function or objective function. The results should consider the balance between the fitness and objective functions to meet the requirement while enhancing system performance. The fitness functions are applied to find the optimal solution in the defined search space. We assume that signal propagation is dominated by path loss effects. Table 1 shows the summary of notations used in this paper.

As mentioned in Section 2, significant interference exists in CR systems. Since secondary systems only use the uplink channel of the primary system, we will consider the interference that PBS and SIDs will suffer. We can calculate the average SINR at the unit area (SID) on the channel belonging to the SIGS as given in (3).

Part of (3) is the average interference from PUs, and part of (3) represents the average interference from other secondary systems that use the channel. Because we assume that only one secondary device (a SIGS or one of the SIDs) can use the channel at any given time in each secondary system, we divide by the number of SIDs that are covered by the SIGS () in order to obtain the average interference that originates from other secondary systems using the same channel. It should be noted that because we do not know the positions of PUs, we assume that PUs are uniformly distributed within the PBS range. Therefore, we approximate the average as , where is the PBS. Additionally, is the channel gain between the SIGS and the SID, whereas is the received power (), as obtained from (2). Also, , where is the distance from the transmitter. Therefore, we can obtain the channel gainwhere is the distance from the SIGS to the SID.

For primary systems, we consider the worst case primary user location scenario, as shown in Figure 4. In the worst case, PUs are located at the edge of the PBS service range so that the PBS will receive the weakest signal power from the primary users. The worst SINR at the primary base station (PBS) on the channel can be presented aswhere part represents the interference from other primary system users. Alternatively, indicates the interference from secondary systems. is the worst channel gain between the PBS and PUs. Therefore, , is the PBS coverage radius.

After obtaining the SINR equations, the capacity can be calculated using the following functions, based on the Shannon equation:where is the bandwidth. and can be obtained from (3) and (5), respectively. In order to achieve our goals, the fitness functions are designed to do the following: (i) maximize the secondary capacity, (ii) maximize the supportable number of SIDs, and (iii) guarantee the interference threshold to primary system to protect. Combined with the above formulations, which are related to our multiple objectives, the optimization of SIGS positioning and operating channel selection for IoT sensor networks can be formulated by a general framework as follows:with respect towhere and are the required SINR thresholds for primary base station and secondary users, respectively. Equation (8) represents the total capacity, including the primary and secondary capacities. and are the SID capacity and SID appearance probability at unit area. Equation (9) indicates the supportable number of SIDs. Equation (10) is our final objective function, which is composed of the total capacity and supportable number of SIDs; here, represents weight factors, which have a value from 0 to 1. According to our model, we proposed SINR constraints, as denoted by (11) and (12), in which the SINR of every primary base station and secondary user should satisfy the primary and SID SINR thresholds, respectively. Additionally, in order to protect primary systems, if (12) cannot be satisfied, the distributional plan for the SIGSs and operating channel selection should be discarded.

4. Optimal Location and Operating Channel Selection of a Secondary Information Gathering Base Station Using Particle Swarm Optimization

In this work, the particle swarm optimization (PSO) algorithm is invoked to obtain an optimized solution; this achieves our multiple objectives. PSO is a population-based, stochastic optimization technique that is modelled after the flocking and swarming behavior in birds and animals. In PSO, the potential solutions are called particles, and these candidate solutions are referred to as swarms of particles. Each of these is characterized by its position and velocity based on its own best value (), as well as the best value in the whole search space (). Then, every particle adjusts its value (position) toward its and at each iteration. This movement is governed by the following equations:where is the weight inertia; are the learning factors that determines the relative influence of cognitive and social component, respectively, in search space; and are two independently generated random numbers from [0, 1]; and and are the position and velocity of second particles, respectively. The objective functions described in the previous section are then used in the fitness function and optimized by the PSO algorithm. For each iteration, every particle is evaluated and compared with the values of and , and every particle updates its velocity and position based on the above equations until a termination condition is reached.

Figure 5 shows the particle structure in the proposed algorithm, including the SIGS position and operating channel. The range of the search space is composed of two parts: the ranges of position and the channel. Each particle should search within this range in every iteration. If we divide the total area into unit areas and set the channel number to n, then the range of the search space for the first particle component is from , and the second particle component search space is . As Figure 6 shows, the practical implementation of classical PSO mainly involves the following steps. (1) Parameter initialization: initialize all required particle positions and velocities randomly, and then define the range, number of particles, and population size. (2) Evaluate the desired objective function of each particle. (3) Compare each particle’s current fitness value with the previous ; if this value is greater than the previous one, set the value to the current value. (4) Determine of the swarm from the total value. (5) Update the velocity and position of every particle using (13) and (14). (6) Update the generation number using . Check the current iteration number; if this is less than the total iterations, go back to step 3; otherwise, go to step 7. (7) Output the optimal solution. Figure 6 shows the movement of particles in PSO.

(1)/ initialization/
(2)Generate topology of primary systems;
(3)Generate SIDs appearance probability matrix randomly;
(4)Set the values of , , , , , , and ;
(5)Determine the PSO parameters: , iteration number;
(6)Set ;
(7)Generate particle (SIGSs positions and channels) positions and velocities using Equations (13) and (14);
(8)Obtain the SIGS position and matched channel;
(9)Set ;
(10)/ calculate every particles utility function/
(11)while (iteration ≤ predetermined maximum iteration number)
(12){
(13)for population size, to
(14) {
(15)  for SIGS, to
(16)  {
(17)   Calculate the and based on particle positions;
(18)   Check the constraint using Equations (11) and (12);
(19)  if ()
(20)   {
(21)    Calculate the and using Equations (6) and (7);
(22)    Calculate Equations (8) and (9);
(23)    Obtain the value based Equation (10);
(24)   }
(25)  else
(26)  }
(27) }
(28) / evaluate every particles and /
(29)if ()
(30)  {
(31)  ;
(32)  }
(33)if ()
(34)  {
(35)  ;
(36)  }
(37) Update position and velocity of () based on Equations (13) and (14);
(38) Check position constraint;
(39) iterations ++
(40)}

5. Simulation Results

In this section, we evaluate the performance of the proposed SIGS location and operating channel selection algorithm. Simulations were carried out using MATLAB software. The best results of the optimal topology of SIGS positions and the matched channel that were found via PSO are shown. In addition, the capacities of the primary and secondary systems, the supportable number of SIDs, and the average result of the fitness functions for multiple topologies are all compared with the result of a random topology. The parameters used for simulations are given in Table 2. and are both equal to 1 dBi, and the frequency is 10 GHz.

In the proposed method, which uses the PSO algorithm to find the best topology for the location of SIGSs and matched channel, each candidate solution is referred to as a swarm of particles. We then divide the total area into unit areas, so the first particle’s (i.e., the position of SIGSs) range is from 1 to . Here, the range is from 1 to 2500; every number stands for a position and will be mapped to the corresponding coordinates. We set five channels, and the selection space is . This means that the second particle (i.e., the channel) only has five cases from . From Table 2, we can see that the topology is created by 10 secondary systems and 5 primary systems that share five channels, which are generated in cell areas with radii of  = 40 m and  = 130 m, respectively. The transmitting power of the secondary systems is set to 0.2 W, and the PU transmitter power is 2 W [23]. The population size in PSO is 70, the weight inertia is 0.99, and the learning factors of is 2. We set that SID SINR threshold is 10 dB and PBS SINR threshold is 5 dB [24]. Figure 7 shows the multiple objective results that were determined by PSO during 1000 iterations. The figure shows that PSO found the best result after around 650 iterations.

Figure 8 show the optimal topology for the optimal SIGS locations and matched channels. As mentioned in Section 2, the secondary systems already have the positions of the PBS and the operating channels before they are distributed; therefore, we fixed the PBS positions and operating channels in the simulation. The red color stands for the PBS position, and blue represents the SIGS. We obtained a result after 1000 iterations using PSO. As can be seen from the figures, each small box has four unit areas. In our model, we assumed that each base station is located in the center of the unit site, and we obtain the base station’s coordinates by combining its locations of x and y axes. Because the PBS service range is bigger than that of the SIGS, the optimal deployment of the SIGS position and channel selection should consider the interference experienced by the PBS and should protect the PBS as much as possible. Additionally, other factors should be taken into account to decrease the interference among SIGSs and maximize the supportable number of SIDs.

We set PBS positions to possibly cover most of the entire area, and each PBS uses a different channel in an attempt to decrease interference among primary systems. Additionally, channel gain is related to the distances between base stations and users so that SIGSs that share the same channel with the PBS should consider the distances between SIGS and PBS. For example, if the PBS is using channel 5, and other SIGSs want to share this channel, they must be far from the PBS in order to avoid causing intense interference to the PBS. Therefore, they are deployed at locations that are farthest from this PBS. The same situation also needs to be considered among SIGSs that use the same channel.

In order to verify that our scheme is effective, we compared our proposed algorithm to a random resource allocation (RRA) algorithm. In the RRA algorithm, each SIGS is randomly distributed in the area, and the operating channel is randomly selected without considering neighboring PBSs or SIGSs; however, it still needs to satisfy the SINR threshold for the PBS that can protect primary system. It is worth noting that the appearance probability matrix for SIDs should be the same, regardless of whether the RRA algorithm or the proposed algorithm is used. From Figure 7, we can see that PSO found the optimal result after around 650 iterations. For the RRA algorithm, in order to ensure fairness, we also set 650 circulations and used the same topology as the PBS. After each loop, we recorded related data, and then found the best result of the multiple-objectives function from all of the recorded results. We also recorded the best capacity and greatest number of supportable SIDs in order to compare them with our algorithm. Figure 9 shows the best topologies of the SIGS locations and matched channel for the RRA algorithm.

Due to the fact that the RRA algorithm distributes the SIGS positions and the operating channel randomly (it is only concerned with satisfying the SINR threshold for the PBS), some SIGSs can be allocated near the SIGSs or the PBSs that use the same channel, as shown in Figure 9. This causes severe interference between SIGSs. In Figure 9, we can see that the positions of SIGSs are more centralized than the optimal deployment in Figure 8. Figure 9 shows the topology of the best result from all of the recorded results after 650 iterations. To compare the two methods in detail, we also compared the capacity, supportable number of SIDs, and topologies.

Figure 10(a) shows the effect of different number of particles on multiobjectives result. In the PSO algorithm, population size can affect the speed and optimal value of the search results. In this experiment, we set different population sizes and concentrate on exploring their influence on results. As we can see, the multiobjectives result calculated by PSO becomes larger when we increase the population size. Figure 10(b) shows the effect of different number of SIGSs on multiobjectives result. In this experiment, we change the number of SIGSs but fix the number of channels (i.e., number of channels = 5) and population size (=70). The multiobjectives result keeps increasing when the number of SIGSs increases. Because when we increase SIGSs, the secondary throughput and the supportable number of SIDs are also increasing. It should be noted that the increasing slope is not linear because the more SIGSs results in possible collisions between SIGSs to share channels. Figure 10(c) shows the effect on different number of channels on multiobjectives result. It is shown that multiobjectives result is increasing while increasing the number of channels because increasing the number of channels expands the available channel select range and also reduces the interference with PBSs and other SIGSs. It should be also noted that when the number of channels is larger than 5, most of SIGS systems already utilized available channels successfully so that even though we increase the number of channels, the performance is saturated.

Figure 11 presents the capacity comparison between our algorithm and the RRA algorithm. The red lines stand for the capacity of the primary systems, reflected on the right y-axis. The steady, dashed red line is the PBS capacity from the best result of the RRA algorithm, which we previously recorded. From this figure, we see that the primary system’s capacity increased by 26%, compared with the RRA algorithm, whereas the secondary system’s capacity increased by 43%. In Figure 11, we can see that the capacity of PBSs (red solid line) decreased from the 200th to 250th iterations. In general, the capacity should always increase in our algorithm, but our multiple-objectives fitness function is composed of two parts, as shown in (10). One part is the total capacity (including the secondary and primary capacities), and the other is the supportable number of SIDs. Because the secondary capacity is always greater than that of the PBSs (because the number of SIGSs is 10, while there are five PBSs), we can say that the main factor that influences the whole capacity function is the secondary capacity. Thus, it is possible that the whole capacity result still keeps increasing, even if the PBS capacity slightly decreases. Besides, as the figure shows, the PBSs capacity still largely increases even though it shows a little decrease during the process. Therefore this situation also satisfies our requirements and achieves the goal.

In Figure 12, the supportable number of SIDs is compared. Similarly, the dashed line that remains steady is the result corresponding to the highest number of supportable SIDs for the RRA algorithm, while the other solid line shows the result from our algorithm, as determined via PSO. From this figure, we can conclude that the number of supportable SIDs increased by 20%, compared with the RRA algorithm.

Figure 13 shows the average fitness result comparison between the proposed algorithm and the RRA algorithm. We used multiple topologies for different numbers of SIGSs. Unlike fixed PBS positions and the SID appearance probability matrix in the above experiments, they should be changed every time. For example, if the number of SIGSs is five, and we execute 20 topologies, we need to change the PBS positions and SID appearance probability matrix 20 times. We can use our algorithm to find the optimal results for total capacity and the number of supportable users for each topology. They are added together, and the results are averaged. Next, when the number of SIGSs is changed, the 20 topologies and SID appearance probability matrix should be kept the same with last time, in order to allow for a better comparison. We analyzed the same topologies with the RRA algorithm, and then obtained results and averaged our findings after changing the topology 20 times. Next time when the number of SIGS changed, we executed the same steps. However, for RRA algorithm, we do not need to circulate and find the best one this time because we only need the average results.

For this comparison, we looked at multiple topologies where the number of SIGSs was 5, 7, 9, and 11. As mentioned before, for each time, we changed the PBS positions and SID appearance probability 20 times. We then obtained the average results while performing the same steps using the RRA algorithm. In Figure 13, we can see that the average fitness results continue to increase as more SIGSs are added, regardless of the algorithm used. However, it is clear that our algorithm’s result has higher growth than the RRA algorithm.

6. Conclusions

In this paper, we proposed a distributed scheme that determines the optimal location and operating channel of SIGSs to manage the interference and the resource allocation in cognitive radio networks for IoT sensor networks. The proposed algorithm can maximize the secondary system’s capacity while guaranteeing primary system’s required performance. Meanwhile, it maximizes the supportable number of SIDs based on the proposed probability of SID appearance. In addition, the distributed scheme has lower complexity and fundamentally improves total system performance. The simulation results show that the proposed algorithm works well to achieve our multiple objectives. Furthermore, when compared with the RRA algorithm, the proposed algorithm is always at least 20% better, whether it is about the secondary capacity or the number of supportable SIDs. Additionally, our algorithm showed better efficiency through the last comparison, which compared the average results in multiple topologies.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This research was supported by the Ministry of Science, ICT and Future Planning (MSIP), Korea, under the Information Technology Research Center (ITRC) support program (IITP-2017-2014-0-00729) supervised by the Institute for Information & communications Technology Promotion (IITP). This research was also supported by the Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Science, ICT and Future Planning (NRF-2017R1A2B4003512).