Distributed Learning and Adaptive Algorithms for Edge Networks