Abstract. Empty flushing is the most effective approach to evacuate the deposited sediments in the reservoir. However, emptying reservoir essentially conflicts with its water supply operation, thus a feasible strategy of empty flushing should prevent significant increase of water shortage risks. This paper presents a framework of performing empty flushing in a multi-reservoir system, where flushing is carried out in a primary reservoir and the other reservoirs provide backup storage for stable water supply during flushing. A network flow programming-based model is employed to simulate daily joint operation of reservoirs. During the simulation, if the storage of each reservoir achieves the predefined conditions, drawdown and empty flushing of the primary reservoir is activated. During the flushing, if the storage of any reservoir reaches the pre-defined thresholds, then the flushing operation is halted and the simulation switches back to the regular joint operation mode. This simulation model is linked with a nonlinear optimization algorithm to calibrate the optimal parameters. The optimized strategy yields a maximum amount of flushed sediments, while the incremental water shortage is controlled within the acceptable threshold.