A generalized disjunctive programming model for the optimal design of reverse electrodialysis process for salinity gradient-based power generation