Mathematical optimization techniques for resource allocation in cognitive radio networks