Cognitive Computing Models in Communication Systems