  In this paper we consider distributed optimization problems in which the cost
function is separable, i.e., a sum of possibly non-smooth functions all sharing
a common variable, and can be split into a strongly convex term and a convex
one. The second term is typically used to encode constraints or to regularize
the solution. We propose a class of distributed optimization algorithms based
on proximal gradient methods applied to the dual problem. We show that, by
choosing suitable primal variable copies, the dual problem is itself separable
when written in terms of conjugate functions, and the dual variables can be
stacked into non-overlapping blocks associated to the computing nodes. We first
show that a weighted proximal gradient on the dual function leads to a
synchronous distributed algorithm with local dual proximal gradient updates at
each node. Then, as main paper contribution, we develop asynchronous versions
of the algorithm in which the node updates are triggered by local timers
without any global iteration counter. The algorithms are shown to be proper
randomized block-coordinate proximal gradient updates on the dual function.
