An algorithm for the min concave cost flow problem