Dynamic Programming Based Operation of Reservoirs: Incremental dynamic programming in optimal reservoir operation