Pumping water to utility customers is an expensive service which consumes large amounts of energy. Most approaches to date require simplifications and assumptions for the specific system or which limit the generality of the approach. A general methodology is presented which allows multiple tank and pump systems to be considered. In addition, the spatial demand distribution can vary and modeled using the exact relationships which describe the flow patterns. A two level process is suggested where the optimal pump station discharge and pressure head added are determined with the optimal tank trajectories by a nonlinear programming algorithm.