I. Introduction
SHORT-TERM hydro-thermal generation scheduling deals with determining the optimal allocation of the available hydro and thermal electrical energy for the duration of a scheduling period of time (1 day to 1 week) [1], [2]. This is to determine, optimally, which of the committed thermal generating units should run and how much power is generated by the hydro and thermal plants so that the total operating cost is minimum. Minimizing the total cost in this optimization problem is subject to many control and operational constraints. Reliability and security requirements are also accounted for when solving this problem. Hydraulic and thermal constraints may include load balance, generation limits, water discharge, starting and ending storage volume of water and spillage discharge rate [1]. Further, in order to solve the hydro-thermal scheduling problem, thermal unit commitment and economic load dispatch problems should be solved all together with the hydro schedules. Therefore, the STHTS is a large-scale nonlinear and complicated constrained power system optimization problem. Various optimization techniques have been applied to solve the STHTS problem. These techniques are mostly based on the principle of local search in the feasible region of solution [3]. Applied optimization methods can be calculus-based programming algorithms such as linear and nonlinear programming, dynamic programming and interior point methods [4], [5]. The other methods are the artificial intelligence techniques including neural networks [6], fuzzy systems [7] and the evolutionary methods such as genetic algorithms [8], the simulated annealing [9] and the particle swarm optimization technique [10]. These optimization methods can be generally classified into two main groups: deterministic methods and heuristic methods. Deterministic methods include Lagrangian relaxation and Benders decomposition methods, mixed integer programming, dynamic programming and interior point methods. Genetic algorithms, particle swarm optimization and other evolutionary methods are heuristic. Most of the methods that have been used to solve the STHTS problem are deterministic in nature. However, modern heuristic methods are getting more attention in solving large-scale optimization problems. To search for the optimal solution, classical deterministic methods, also known as derivative-based optimization methods, apply techniques such as the gradient and Hessian operators. They use single path search methods while heuristic methods use population-based search techniques to search the solution hyperspace. This difference, in fact, is an advantage for the heuristic methods as it helps searching in spaces with non-smooth characteristics. It also improves the convergence for heuristic methods and makes it less dependent on the initial solution points. Being derivative-free, modern methods are applicable to any optimization problem regardless of the linearity or nonlinearity of its objective function and constraints. In contrast, different deterministic methods are required for different optimization problems. Another main difference between the two classes is that heuristic methods use stochastic techniques and include randomness in moving from one solution to the next while determinist methods follow deterministic transition rules. This, of course, gives an advantage to heuristic methods in avoiding local minima. In spite of the advantages of the heuristic techniques, classical methods have been used by the majority of research papers covered in this review. The reason is their efficiency in solving optimization problems, the solid mathematical foundation and the availability of software tools [11]. A comprehensive survey on the optimization methods used to solve the STHTS problem could be found in [12].