You are on page 1of 6

CLANCY LAYOUT 8/2/07 3:25 PM Page 47

COGNITIVE WIRELESS NETWORKS

APPLICATIONS OF MACHINE LEARNING TO


COGNITIVE RADIO NETWORKS
CHARLES CLANCY, DEPARTMENT OF DEFENSE
JOE HECKER, SAIC
ERICH STUNTEBECK, GEORGIA TECH
TIM OSHEA, NC STATE

Licensed signal channel access ABSTRACT can sense and adapt to its environment. The
term cognitive implies awareness, perception,
Cognitive radio offers the promise of intelli- reasoning, and judgment. However, nowhere is
gent radios that can learn from and adapt to learning required.
their environment. To date, most cognitive radio So far this has fueled much research into pol-
research has focused on policy-based radios that icy-based cognitive radios. These are radios
are hard-coded with a list of rules on how the whose operation is governed by a reasoning
radio should behave in certain scenarios. Some engine that examines the current state of the
work has been done on radios with learning environment and makes decisions on how the
engines tailored for very specific applications. radio should operate. An example of this might
This article describes a concrete model for a be an IEEE 802.11 modulation controller that
generic cognitive radio to utilize a learning switches from 16-quadrature amplitude modula-
Secondary user channel access engine. The goal is to incorporate the results of tion (QAM) to quaternary phase shift keying
the learning engine into a predicate calculus- (QPSK) to binary PSK (BPSK) as the signal-to-
based reasoning engine so that radios can noise ratio (SNR) decreases [1].
The authors describe remember lessons learned in the past and act
quickly in the future. We also investigate the dif-
Generic learning-based cognitive radio is a
relatively unchartered research area. Various
a concrete model for ferences between reasoning and learning, and the projects have used techniques such as genetic
fundamentals of when a particular application algorithms to evolve radio parameters with the
a generic cognitive requires learning, and when simple reasoning is goal of optimizing performance [2]. In contrast,
sufficient. The basic architecture is consistent this article examines the fundamentals of learn-
radio to utilize a with cognitive engines seen in AI research. The ing and reasoning, and proposes an architecture
focus of this article is not to propose new to use them together. We then apply the frame-
learning engine. machine learning algorithms, but rather to for- work to two common problems in cognitive
The goal is to malize their application to cognitive radio and
develop a framework from within which they can
radio: capacity maximization and dynamic spec-
trum access.
incorporate the be useful. We describe how our generic cognitive In this article we describe the cognitive radio
engine can tackle problems such as capacity max- architecture, and discuss reasoning and learning
results of the imization and dynamic spectrum access. engines. We then describe applications and how
they work with the described model, and outline
learning engine into our cognitive radio implementation. We then
INTRODUCTION conclude the article.
a predicate In todays literature, cognitive radio is often
calculus-based treated as a buzz word rather than a scientific COGNITIVE RADIO ARCHITECTURE
term since it has been used by so many different
reasoning engine. people to mean so many different things. The A software radio (SR) can be defined as a radio
most generally accepted definition is a radio that implemented with generic hardware that can be
programmed to transmit and receive a variety of
waveforms. Cognitive radio is often thought of
This work was completed while J. Hecker, E. Stuntebeck, as an extension to software radio, and here we
and T. O'Shea were with the Laboratory for Telecommu- treat it as such. A cognitive radio extends a soft-
nication Sciences, U.S. Department of Defense, which ware radio by adding an independent cognitive
funded this research. The opinions expressed in this docu- engine, composed of a knowledge base, reason-
ment represent those of the authors, and should not be ing engine, and learning engine, to drive soft-
considered an official opinion or endorsement by the ware modifications. A well defined application
Department of Defense or U.S. federal government. programming interface (API) dictates communi-

IEEE Wireless Communications August 2007 1536-1284/07/$20.00 2007 IEEE 47


CLANCY LAYOUT 8/2/07 3:25 PM Page 48

The SR exports
Radio parameters and
variables that are statistics are exported to Stores true predicates and
knowledge base as predicates set of available actions
either read-only or
read-write. The Executes actions from
the knowledge base
read-only parameters
Reasoning
represent statistics engine
Evolves predicates
Software directly to maximize
maintained by the radio
Knowledge
base objective function
Learning
SR, such as signal to engine

noise ratio or bit Cognitive radio engine


error rate. The read-
Figure 1. Cognitive radio architecture showing the interactions between the software radio, knowledge
write variables repre- base, and policy and learning engines.
sent configurable
parameters such as cation between the cognitive engine and the SR. the following example, the objective of which is
Figure 1 illustrates this architecture and the to decrease the modulation rate with a decrease
transmit power, interaction between various components. in SNR.
At any given time, the cognitive engine gen- The knowledge base contains the following
coding rate, or erates conclusions based on information defined predicates:1
symbol constellation. in the knowledge base, the radios long-term
memory. These conclusions are the result of
modRate(QPSK) snr(5 dB) (1)
extrapolations of this information based on rea- and the following action
soning or learning. The reasoning engine is what
is often referred to in artificial intelligence (AI) action: decreaseModulationRate
literature as an expert system. The learning precond: modRate(QPSK) snr( 8 dB) (2)
engine is responsible for manipulating the knowl- postcond: modRate(QPSK) modRate(BPSK)
edge base from experience. As lessons are
learned, the learning engine stores them in the The reasoning engine uses planning, which is
knowledge base for future reference by the rea- a field of AI that works with logic.2 At any given
soning engine. Depending on the application, time, it looks at the current state and determines
the learning engine may only be run to train a which actions are executable in that state. All
newly initialized radio, or it could be run period- the possible resulting states are then evaluated
ically as the radio operates. to see which is optimal, where optimality is
The following sections describe each of the determined by an objective function fR().
two engines in more detail. In our current example, we can successfully
infer the preconditions from our knowledge-
REASONING AND PLANNING base. As a result, the decreaseModulationRate
The SR exports variables that are either read- action is executed and the postconditions are
only or read-write. The read-only parameters applied to the knowledge-base, resulting in
represent statistics maintained by the SR, such
KB = KB postcond
as SNR and bit error rate. The read-write vari-
= (modRate(QPSK) snr(5 dB)) (3)
ables represent configurable parameters such as
( modRate(QPSK) modRate(BPSK))
transmit power, coding rate, and symbol constel-
= modRate(BPSK) snr(5 dB)
lation.
These radio parameters are bound to predi- Observe how modulation is changed from
cates in the knowledge base. Knowledge bases QPSK to BPSK when the SNR drops below 8
are very common in AI planning. The one we dB. While this example may seem elementary, it
describe here contains two basic data structures. provides the fundamentals for reasoning in our
The first is a logic expression made up of predi- cognitive radio.
1Note the commonly used cates that represents the state of the environ- This example also illustrates the necessity for
notation in predicate cal- ment. Predicates are expressions in first-order a learning engine. In complex radios with many
culus is as follows: logical logic that evaluate to either true or false. inputs and many outputs, a countless number of
AND is , logical OR is , The second set of data contained within the actions would be necessary to account for all
and logical NOT is . knowledge base is actions. Actions define opera- possible radio states. Rather than preprogram-
tions the reasoning engine could perform to ming this list of actions, the learning engine
2 We mostly consider sce- change the state of its environment. Actions con- should auto-generate these actions based on
narios that use forward sist of a set of preconditions and postconditions. experience.
chaining rather than Preconditions must be inferable from the knowl-
backward chaining for edge base and evaluate true for the action to be LEARNING
inferencing, since often we selected. An actions postconditions describe the The learning engine is responsible for augment-
do not have a particular modified state of the knowledge base. ing the list of actions available to the radio that
goal state. To better illustrate this discussion, consider allow it to adapt to a changing environment.

48 IEEE Wireless Communications August 2007


CLANCY LAYOUT 8/2/07 3:25 PM Page 49

Evolutionary
Cognitive
Single cognitive engine
radio RF link exchanges application techniques such as
engine data, radio configuration
controls both the
transmitter and receiver
information, and radio statistics genetic algorithms
could evolve the
Master Slave
Source
application
software RF link software Destination
application
radios state in order
radio radio
to maximize the
Figure 2. Configuration of a basic simplex cognitive radio communications link. objective function.
After each state
Many different learning algorithms are available equates to our learning engine generating the
to a cognitive radio, including hidden Markov following actions for the policy engine: change, the resulting
models [3], neural networks [4], and genetic
algorithms [5].
action: learnedActionX state will be
precond: n N 1 in on (5)
Nearly every learning technique involves the
use of an objective function to determine the
postcond: in iN. evaluated. This
value of the learned data. In a cognitive radio, If the radio environment changes, however, process continues
these objective functions reflect the overall goal oN may not result from iN, and iN may no longer
of the application, such as maximizing channel be optimal. If this occurs, the learning engine until a globally
capacity. The goal of the learning engine is to should be aware of the changes and remove the
determine which input state will optimize the suboptimal learned action from the knowledge- optimal state is
objective function. However, unlike the objective base. This can be expressed as
function used by the reasoning engine, there is found.
action: unlearnActionX
no simple mathematical relationship between the precond: iN oN (6)
system inputs and the objective function. postcond: learnedActionX.
In order for learning to be necessary, the
precise effects of the changing inputs on the The cognitive process, both reasoning and
outputs must not be known. This is often the learning, is then reinstatiated in search of a new
case in non-ideal radio channels. For example, optimal state. The next section describes con-
we typically know that decreasing coding rate crete instantiations of the policy and learning
will also decrease bit error rate, but we do not engines for particular applications.
necessarily know by how much for an arbitrary
communications channel. Using a learning APPLICATIONS
engine, we can estimate our channel statistics;
then, using that data, we can make decisions In this section we describe several applications
that are optimal for our current radio frequency of learning to real radio problems. For each
(RF) environment. application, the inputs and outputs of the SR are
More formally, we define the radios state- defined, along with an objective function. We
space S. A particular state s S is made up of then describe strategies for how a cognitive radio
both the radios input predicates i and output can solve the problem.
predicates o. That is, s = i o. All the applications assume the basic commu-
We have an objective function fL: S R that nications architecture shown in Fig. 2. This
can be evaluated on a particular state s S and architecture defines a simplex link between a
returns a real number. State s 1 is preferable to source and a destination SR. The source radio
state s2 if fL(s1) > fL(s2). has a cognitive engine that controls the source
The learning algorithm will try to precisely radios parameters, and uses the existing link to
characterize fL() in an effort to find an optimal exchange configuration information (e.g., modu-
state. For example, a neural network using unsu- lation scheme, frequency, or bandwidth) and
pervised learning could try to find statistical cor- statistics (e.g., noise power or bit error rate).
relations between inputs and outputs to come up In order for this system to work, we must
with a mathematical representation of fL(). assume that both the master and slave radio
Similarly, evolutionary techniques such as start off with the same initial configuration c 0.
genetic algorithms could evolve the radios state When the cognitive radio decides a change to
in order to maximize the objective function. configuration c i+1 is necessary, the master SR
After each state change, the resulting state is sends a message containing c i+1 to the slave
evaluated. This process continues until a globally using configuration ci. A simple example of this
optimal state is found. would be a frequency hopping radio system
Let us assume that the learning algorithm where a hop to frequency f i+1 is signaled by
evaluated N different inputs i 1 , i 2 , , i N with sending a control message at frequency fi.
resulting outputs o1, o2, , oN before finding the To extend this basic architecture to a duplex
optimal one. This implies that link between two SRs, a cognitive radio engine
can be added to the second radio. However,
fL(iN oN) fL(in on) 1 n N 1. (4)
here we assume that each cognitive engine acts
Thus, we now know that if our radio is ever as an independent agent controlling only out-
in state i 1 o 1 , , i N1 o N1 , the optimal bound data and not communicating with other
behavior is to set the radio inputs to i N . This cognitive radio engines.

IEEE Wireless Communications August 2007 49


CLANCY LAYOUT 8/2/07 3:25 PM Page 50

maximize the objective function subject to our


environments SNR S.
A key thing to notice here is that our radio
output predicate snr(S) is independent of our
7 inputs, and as a result, a pure policy-based radio
can be used. The learning engine is not neces-
6 sary. Given the above-defined objective function,
Channel capacity

5 the cognitive radios reasoning engine can deter-


mine the optimal radio operating parameters.
4 A knowledge base for maximizing channel
3
capacity can be composed with several basic
actions. The first can be used to set the modula-
2 tion type.
1 action: switchModType(A,B)
precond: modType(A) (7)
0
postcond: modType(A) modType(B).
1 1
1.5 0.8 The second can be used to set the coding
2 0.6
2.5 type.
3 0.4
3.5 0.2 action: switchCodeType(A,B)
Modulation Coding
40 precond: codeType(A) (8)
postcond: codeType(A) codeType(B).
Figure 3. Sample objective function for a particular RF environment, show-
ing optimality over modulation type 22m-QAM and coding rates from 0 to 1, The reasoning engine will start with the initial
interpolated onto a continuous surface. state and derive all possible resulting states
achievable with the above two actions. For all
resulting states, the objective function will be
evaluated, and the radio will then execute the
To extend this model to a multiparty or ad actions that lead to that state. In this section our
hoc network, each radio would maintain inde- key assumption is an AWGN channel where
pendent state in its cognitive radio engine for ei(S) can be derived for every possible modula-
each destination node, as each pairwise directed tion scheme. In the next section we look at a
communications channel could have different channel where ei(S) is not known, and learning
properties. Certainly these channels are not algorithms must be used.
completely independent, so some shared state
can be used to more quickly find optimal solu- CAPACITY MAXIMIZATION IN A
tions.
NON-AWGN CHANNEL
CAPACITY MAXIMIZATION IN AN AWGN CHANNEL In the previous section we examined the prob-
One very typical application of cognitive radio is lem of capacity maximization for an AWGN
to create a radio that can adapt to a channel to channel. We demonstrated that a cognitive radio
maximize its overall performance. Here we can perform this without using a learning engine
assume a fixed power, frequency, and bandwidth, since the radio outputs were independent of the
since these parameters are more commonly radio inputs. In this section we consider a non-
thought of as being within the realm of dynamic AWGN channel with fading non-Gaussian noise
spectrum access, detailed later. and interference. In this channel we cannot
Thus, here we try to select a modulation type know how any given modulation and coding
and coding rate to maximize capacity. For an scheme will perform without first trying it.
additive white Gaussian noise (AWGN) channel, In order to avoid a brute force search, we must
we can compute channel capacity using the assume a continuous convex solution space. To
Shannon-Hartley law [6], and our goal is to find achieve this, there is a logical ordering of modula-
a modulation type and coding rate that can get tion types and coding types that results in a contin-
us as close to capacity as possible. uous convex objective function, such that if we
Let us assume we have M modulation types evaluate the objective function for modulation type
M1, M2, , MM and N coding types C1, C2, , CN. Mi and find it to be less than Mi+1, the objective
Modulation type Mi can transmit di data bits per function evaluated for Mi1 must be less than Mi.
symbol and has a probability of bit error e i (S) This will allow the use of an algorithm that
for SNR S. Coding type C j has rate r j and can performs a gradient search to find the objective
correct cj bit errors per block of size bj bits. For function maxima. If the solution space is not
this application we assume an AWGN channel; continuous and convex, it does not mean we can-
therefore, ei(S) can be computed directly [6]. not find a solution, only that we cannot find it as
Our goal is to maximize capacity, so our quickly.
objective function should reflect the capacity of In this application our objective function will
our channel. For an arbitrary input configuration depend heavily on our outputs. Assuming our
Mi Cj, we can compute channel capacity Ci,j by slave SR can measure the corrected bit success
computing the raw data rate multiplied by the rate coming out of the decoder, the resulting
probability of not receiving c j+1 or more bit capacity is the product of our bit success rate, cod-
errors. This results in a suitable objective func- ing rate, and raw modulation data rate. As before,
tion fR(). we can use this as our objective function fL().
Thus, our goal is to find values Mi and Cj that As an example, a sample objective function

50 IEEE Wireless Communications August 2007


CLANCY LAYOUT 8/2/07 3:25 PM Page 51

has been plotted in Fig. 3 for various modulation


types and coding rates. Since it is convex, hill
climbing will efficiently yield an optimal configu- Licensed signal channel access
ration.

DYNAMIC SPECTRUM ACCESS

Frequency
Dynamic spectrum access (DSA) involves locat-
ing frequency bands and times when a cognitive
radio can transmit without causing harmful
interference to other transceivers [7]. For exam-
ple, consider a cognitive radio network operat-
ing in the UHF television bands, where
transmission is permissible provided devices can
guarantee they will not interfere with licensed
broadcasts.
More concretely, the goal is to locate center
frequencies, bandwidths, and times when a cog- Time
nitive radio can transmit, while maximizing Secondary user channel access
capacity and minimizing interference. This type
of problem is very different from capacity maxi-
mization where we wanted to learn how our Figure 4. Example showing cognitive radio coexisting with bursty signals in
radio inputs affected our radio outputs. DSA both frequency and time.
involves learning where and when other radios
will be transmitting.
If we assume all signals with which we are
trying to coexist are continuous in time, the Another interesting extension to this idea is
problem simplifies to one solvable by a policy- to consider non-continuous signals, such as ones
based radio. Imagine our SR exports predicates using time-division multiple access. For these sit-
to the knowledge base regarding detected signals uations, we can coexist not only in frequency but
s1, s2, , sN that are of the form also in time. Using various cyclostationary statis-
tical learning algorithms [8], we can compute the
signalFreq(si, fi) signalBW(si, Wi). (9)
expected length of channel vacancy and incorpo-
Our goal is to find some f c and W that do not rate that into our decision making.
overlap any detected signal, while maximizing W Imagine a neural network has computed for
and consequently the radios capacity. us the probability Pi(t) that signal si is transmit-
First, let us assume we have a helper function ting at time t, where the probability is periodic
notOverlap(fc, W, si) that evaluates to true if the over time i. Our learning engine can then export
band occupied by a signal centered at f c with to the knowledge base predicates describing this
bandwidth W does not overlap signal si. Then we signal.
can define our predicate,
signalFreq(si, fi) signalBW(si, Wi)
action: moveBand(fold, Wold, fnew,Wnew) (t < , Pi(t) > signalON(si, t) (13)
precond: i N notOverlap(fnew, Wnew, si) (t < , Pi(t) < signalOFF(si, t).
(centerFreq(f{old) bandwidth(Wold))
A threshold is used to indicate that the sig-
postcond: (centerFreq(fold) bandwidth(Wold))
nal is present with very low probability. We can
(centerFreq(fnew) bandwidth(Wnew)).
now extend our notOverlap function to take into
(10)
consideration whether si is transmitting at time t,
Then we define our objective function, and our radio can compute its optimal course of
action.
fR(centerFreq(fc) bandwidth(W)) = W. (11)
action: moveBand(fold, Wold, fnew, Wnew)
We now have a policy-based cognitive radio that
precond: i N : notOverlap(fnew, Wnew, si, t)
will search out the largest continuous piece of
postcond: (centerFreq(fold) bandwidth(Wold))
bandwidth for communication.
(centerFreq(fnew) bandwidth(Wnew))
In more complex noise and interference envi-
(14)
ronments, this approach is too simplistic, as dif-
ferent frequency bands may have different noise We can use the same objective function as
floors. Extension to this environment will require before, or incorperate SNR if necessary.
the use of a learning engine. Imagine our SR
exports predicate snr(S) for the currently tuned IMPLEMENTATION
center frequency and bandwidth. This gives us
more information, and we can define a better To build on the ideas developed in this article,
objective function based on the Shannon-Hartley we have implemented a cognitive radio based on
law: a generic cognitive engine [9]. It combines
OSSIE, which is an open source software com-
fL(centerFreq(fc) bandwidth(W) snr(S)) (12)
munications architecture (SCA) core framework
= W log2(1 + S).
implementation from Virginia Tech, with the
This learning objective function can only be eval- Soar cognitive engine from the University of
uated when S is known, and this can only be Michigan.
computed after the radio has been tuned to cen- Within it we have implemented both the poli-
ter frequency fc. cy-based capacity maximization and the learning-

IEEE Wireless Communications August 2007 51


CLANCY LAYOUT 8/2/07 3:25 PM Page 52

Certainly there is a great deal of future work


Capacity vs. SNR in the field of cognitive radio, and in particular
1000 applications of machine learning to cognitive
Measured
900 Capacity radio. The architecture described here is flexible
800 enough to address many different applications
700
provided they can be expressed in predicates,
actions, and objective functions. The real work
Capacity (kb/s)

600 will be mapping potential applications to predi-


500 cate calculus.
400
REFERENCES
300
[1] IEEE 802.11, Working Group on Wireless Local Area
200 Networks, http: //www.ieee802.org/11/
[2] T. Rondeau et al., Cognitive Radios with Genetic Algo-
100 rithms Intelligent Control of Software Defined Radios,
0 SDR Forum Conf. 2004.
0 0.2 0.4 0.6 0.8 1 1.2 1.4 [3] L. Rabiner, A Tutorial on Hidden Markov Models and
Selected Applications in Speech Recognition, Proc.
SNR (dB) IEEE, 1989.
[4] S. Haykin, Neural Networks: A Comprehensive Founda-
tion, Prentice Hall, 1998.
Figure 5. Theoretical and achieved capacity as a function of signal to noise [5] D. Goldberg, Genetic Algorithms in Search, Optimiza-
ratio. tion, and Machine Learning, Addison Wesley, 1989.
[6] J. Wozencraft and I. Jacobs, Principles of Communica-
tion Engineering, Waveland Press, 1990.
[7] P. Leaves et al., Dynamic Spectrum Allocation in a
based capacity maximization. The radio achieves Multiradio Environment Concept and Algorithm, Conf.
3G Mobile Commun. Technologies 2001.
the optimal configuration of modulation and [8] T. Clancy and B. Walker, Predictive Dynamic Spectrum
coding in an environment with time-varying Access, SDR Forum Conf. 2006.
noise power (Fig. 5). One of the biggest factors [9] E. Stuntebeck et al., Architecture for an Open-Source
to consider in an implementation is adaptation Cognitive Radio, SDR Forum Conf. 2006.
[10] J. Mitola, Cognitive Radio: An Integrated Agent Archi-
time. The more intelligence you put behind the tecture for Software Defined Radio, Ph.D. dissertation,
decision making process, generally the slower it KTH, 2000.
is. If your cognitive engine is constantly running,
searching for better radio configurations, it can BIOGRAPHIES
utilize a significant portion of your processor C HARLES C LANCY (clancy@ltsnet.net) is a senior researcher
time. Our policy radio adapts on the order of with LTS and adjunct professor at the University of Mary-
tens of milliseconds, while our learning radio land. He recieved his M.S. in electrical engineering from
the University of Illinois and Ph.D. in computer science
adapts on the order of hundreds of milliseconds. from the University of Maryland. His research interests
We are currently working to implement dynamic include next-generation wireless networks and wireless
spectrum access and adaptation to interference security.
and fading channels within OSCR.
J OE H ECKER (heckerj@clemson.edu) is an engineer with
SAIC. He received his M.S. in electrical engineering from
CONCLUSION Clemson University. His research interests include artificial
intelligence and pattern recognition.
Since the introduction of cognitive radio in 1999
ERICH STUNTEBECK (eps@gatech.edu) is a Ph.D. candidate in
[10], there have been many high-level discussions the Electrical and Computer Engineering Department at
on proposed capabilities of cognitive radios. In Georgia Tech. His research interests include wireless sensor
this article we have tried to formalize some of networks.
the architecture behind these ideas and the
T IM O'S HEA (tjoshea@ncsu.edu) is a graduate student at
applications for which they are most suited, and North Carolina State, pursuing an M.S. in electrical engi-
give some insight into the differences between neering. His research interests include software-defined
reasoning and learning. radio implementation and spectrum sensing.

52 IEEE Wireless Communications August 2007

You might also like