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]