Primal Dual Algorithm