Distributed optimization: designed for federated learning