OMNET++ COGNITIVE NETWORK PROJECTS
OMNET++ COGNITIVE NETWORK PROJECTS
Cognitive networks have the ability to think, to learn and to remember.
In general, a cognitive network is formed of a set of distributed cognitive entities (agents), which are somehow ‘‘smart” in the way that they have certain reasoning capabilities and are connected in a network.
Research on cognitive network:
- Wireless resource management
- Qos aware routing
- Wireless service selection

Advantages of cognitive network:
- Providing Quality of Services.
- Improve the performance of resource management.
- Security.
- Access control.
- Achieve network goals.
Elements of cognitive network:
There are two different elements are considered as well as essential for developing cognitive network. There are,
- Cognition loop
- Knowledge representation
Sample code for cognitive network:
[code lang="js"]
class BaseCognitiveEngine : public cSimpleModule
{
public:
BaseCognitiveEngine();
virtual ~BaseCognitiveEngine();
protected:
virtual void initialize();
virtual void handleMessage(cMessage *msg);
};
void MobilityComponent::initialize()
{
// Statistics
scanChannelMapRequest = registerSignal("scanChannelMapRequest");
scanChannelMapReply = registerSignal("scanChannelMapReply");
rendezvousSuccess = registerSignal("rendezvousSuccess");
rendezvousFail = registerSignal("rendezvousFail");
broadcastTimerCount = registerSignal("broadcastTimerCount");
stateSignal = registerSignal("stateSignal");
txMobilitySignal = registerSignal("txMobilitySignal");
rxMobilitySignal = registerSignal("rxMobilitySignal");
stateMachineVector = registerSignal("stateMachineVector");
eventSignal = registerSignal("eventSignal");
broadcastTimerDuration = par("broadcastTimerDuration");
myAddress = getParentModule()->par("address");
broadcastAddress = getParentModule()->par("broadcastAddress");
state = State_INIT;
stateMachineStepTimer = new cMessage("StateMachineStepTimer");
broadcastTimer = new cMessage("BroadcastTimer");
updateGUI();
}
void MobilityComponent::updateGUI()
{
// GUI changes
std::stringstream sstr;
sstr << this->getDisplayString().str()
<< ";t=" << StateMachine_StateNames[state] << "\n"
<< "MyCH:" << printChannelSet(&nodeChannelsMap[myAddress]) << "\n"
<< "BCSet:" << printChannelSet(&channelSet); std::string str1 = sstr.str(); this->setDisplayString(str1.c_str());
}
[/code]

