The reservoir operational decision rule is an equation that can balance reservoir system parameters in each period by considering previous experiences of the system. That equation includes variables such as inflow, volume storage and released water from the reservoir that are commonly related to each other by some constant coefficients in predefined linear and nonlinear patterns. Although optimization tools have been extensively applied to develop an optimal operational decision rule, only optimal constant coefficients have been derived and the operational patterns are assumed to be fixed in that operational rule curve. Genetic programming (GP) is an evolutionary algorithm (EA), based on genetic algorithm (GA), which is capable of calculating an operational rule curve by considering optimal operational undefined patterns. In this paper, GP is used to extract optimal operational decision rules in two case studies by meeting downstream water demands and hydropower energy generation. The extracted rules are compared with common linear and nonlinear decision rules, LDR and NLDR, determined by a software package for interactive general optimization (LINGO) and GA. The GP rule improves the objective functions in the training and testing data sets by 2.48 and 8.53%, respectively, compared to the best rule by LINGO and GA in supplying downstream demand. Similarly, the hydropower energy generation improves by 48.03 and 44.21% in the training and testing data sets, respectively. Results show that the obtained objective function value is enhanced significantly for both the training and testing data using GP. They also indicate that the proposed rule, based on GP, is effective in determining optimal rule curves for reservoirs.