Sunteți pe pagina 1din 16

Annals of Operations Research 120, 117132, 2003

2003 Kluwer Academic Publishers. Manufactured in The Netherlands.

Using GRASP to Solve the Unit Commitment Problem


ANA VIANA aviana@inescporto.pt
INESC Porto, Campus da FEUP, Rua Dr. Roberto Frias 378, 4200-465 Porto, Portugal, and
ISEP Instituto Superior de Engenharia do Porto, Rua Dr. Antnio Bernardino de Almeida 341,
4200-072 Porto, Portugal

JORGE PINHO DE SOUSA and MANUEL MATOS {jsousa;mam}@inescporto.pt


INESC Porto, Campus da FEUP, Rua Dr. Roberto Frias 378, 4200-465 Porto, Portugal, and
FEUP Faculdade de Engenharia da Universidade do Porto, Rua Dr. Roberto Frias, 4200-465 Porto,
Portugal

Abstract. In this paper, the Unit Commitment (UC) problem is presented and solved, following an in-
novative approach based on a metaheuristic procedure. The problem consists on deciding which electric
generators must be committed, over a given planning horizon, and on defining the production levels that are
required for each generator, so that load and spinning reserve requirements are verified, at minimum pro-
duction costs. Due to its complexity, exact methods proved to be inefficient when real size problems were
considered. Therefore, heuristic methods have for long been developed and, in recent years, metaheuristics
have also been applied with some success to the problem. Methods like Simulated Annealing, Tabu Search
and Evolutionary Programming can be found in several papers, presenting results that are sufficiently in-
teresting to justify further research in the area. In this paper, a resolution framework based on GRASP
Greedy Randomized Adaptive Search Procedure is presented. To obtain a general optimisation tool,
capable of solving different problem variants and of including several objectives, the operations involved in
the optimisation process do not consider any particular characteristics of the classical UC problem. Even
so, when applied to instances with very particular structures, the computational results show the potential
of this approach.

Keywords: unit commitment, metaheuristics, GRASP

Introduction

Due to its economical importance, the Unit Commitment (UC) problem has for long
been a matter of concern for generator companies (GENCOs) and, consequently, an
important area of research. The UC problem is the problem of deciding which electric
generators must be committed/decommitted over a planning horizon (lasting from 1 day
to 2 weeks, and generally split in periods of 1 hour), and the production levels at which
they must be operating, so that production costs are minimised. The committed units
must satisfy the forecasted system load and reserve requirements, subject to a large set
of other system, technological and environmental constraints.
Corresponding author.
118 VIANA ET AL.

Although the problem of defining, in a rough way, the production level of the units
that are on (pre-dispatch problem) can be easily solved by using, e.g., the -iteration
method [21], the complete UC problem is a NP-hard problem. Being a combinatorial
true multi-period problem (due to important start-up and shut-down costs) it is in general
very hard to solve, as it is not possible to perform a separate optimisation for each time
interval. Therefore, when exact methods (e.g., dynamic programming and branch-and-
bound) are applied to medium and large size instances, they prove to be inefficient and,
in general, not capable of finding a solution within the time available for real decision
making. Research efforts have, therefore, concentrated on developing methods able to
efficiently find satisfactory solutions (not necessarily optimal), for real size problems.
Heuristic approaches based on exact methods, e.g., branch-and-bound [3], as well as
methods based on priority-lists [11] and Lagrangian relaxation [1,14] or, more recently,
neural networks [9,15,17] and metaheuristics (e.g., genetic algorithms [4,10], simulated
annealing [13,22,23], tabu search [12] have been used [18]. Metaheuristics [16] are
particularly appealing: they are usually easier to develop than constructive heuristics;
they are able to easily incorporate new information/details in the model (being therefore
easy to adapt to different problem variants); they can tackle complex cost functions and
they are able to solve the very same problem for completely different objective functions,
without any changes in the code.
In this paper, an algorithmic framework based on another metaheuristic principle
(GRASP Greedy Randomized Adaptive Search Procedure [6]) is presented. A very
interesting feature of GRASP is its adaptability property. Following a philosophy that is
slightly different from standard metaheuristics, the decisions taken by the method, when
building a solution, are somehow adapted according to decisions previously taken. This
dynamic learning-process often leads to very good solutions.
Considering the radical restructuring processes that the energetic sector is going
through, the aim of this work is to develop a general framework, capable of handling a
wide variety of contexts. In fact, if inserted in market environments, UC models must
consider new regulatory requirements that are continuously evolving. To handle such
dynamic models, optimisation tools, that can easily incorporate new market issues, must
be developed. Following this reasoning, the framework presented in this paper is based
on general operations that do not consider instance particular structure characteristics.
By doing so, one obtains a more general resolution approach, that is not problem depen-
dent, and can, if necessary, be adapted to each particular application context.
For general evaluation purposes, the instances presented in [10] (where a global
management of the power units is performed) were used, allowing a comparison between
our GRASP approach and algorithms from the literature (Lagrangian heuristics and an
optimisation tool based on genetic algorithms). The computational results show that
the method is robust and effective at handling centralised UC problems. It therefore
deserves some further research, and can be seen as a first step for the design of more
advanced tools, capable of handling the additional information that must be considered
in competitive electricity markets [8,19].
USING GRASP TO SOLVE THE UCP 119

1. Problem formulation

In this section, the classical Unit Commitment problem formulation is presented. The
model considers that the power units are centrally managed in a global way, and aims at
minimising the total production cost, over the planning horizon, expressed as the sum of
fuel, start-up and shut-down costs. Several system and technological constraints are also
described.

1.1. Notation

Indexes
t time periods (t = 1, . . . , T ),
T planning horizon,
i units (i = 1, . . . , I ),
I number of units.
Decision variables

1 if i is ON in period t,
uit =
0 otherwise,
Pit production level of unit i, in period t (MW).
Auxiliary variables
OFFit number of consecutive periods for which unit i has been OFF,
immediately before period t (h),
ONit number of consecutive periods for which unit i has been ON, immediately
before period t (h).
Problem parameters
P i , P i minimum and maximum production level of unit i (MW),
Tion , Tioff minimum up and down time of unit i (h),
up
rit maximum up rate of unit i, in period t (MW/h),
down
rit maximum down rate of unit i, in period t (MW/h),
Ptd system load requirements in period t (MW),
Rt spinning reserve requirements in period t (MW),
ai , bi , ci fuel cost parameters (measured in $/h, $/MWh and $/MW2 h, respectively).
Unit initial state

1 if i was ON for t < 1,
ui0 =
0 otherwise,
OFFi0 number of consecutive periods for which unit i has been OFF,
immediately before t = 1 (h),
ONi0 number of consecutive periods for which unit i has been ON, immediately
before t = 1 (h).
120 VIANA ET AL.

Production costs
F (Pit ) fuel cost of unit i, in period t ($/h),
SC(OFFit , uit ) start up cost of unit i, in period t ($),
DCi shut down cost of unit i ($).

1.2. Objective function


T 
UT
min F (Pit ) + SC(OFFit , uit ) + DCi (1)
t =1 i=1

where we consider the traditional function for F (Pit ):


F (Pit ) = ci Pit2 + bi Pit + ai (2)
and
SC(OFFit , uit ) = uit (1 ui,(t 1) ) Sx (OFFit ) (3)
Start-up costs, Sx , depend on the latest period the unit was operating and can be
represented in several ways. In this work, the following function is considered:

Sh if OFFit  ticold ,
Sx =
Sc otherwise,
where Sh and Sc are the costs incurred for a hot and a cold start-up, respectively. ticold is
a unit parameter that indicates the number of hours that the boiler needs to cool down.
Shut-down costs are, in this case, represented by a constant.

1.3. Constraints

In this work, the following constraints, related to system and technical characteristics,
are considered:
Load demand

I
Pit + Ptd , t = 1, . . . , T . (4)
i=1

Spinning reserve requirements



UT
P i uit  Ptd + Rt , t = 1, . . . , T . (5)
i=1

Production limits
P i uit  Pit  P i uit , i = 1, . . . , I, i = 1, . . . , T . (6)
USING GRASP TO SOLVE THE UCP 121

Minimum down time


 
(uit ui,(t 1) ) OFFi,(t 1) Tioff  0, i = 1, . . . , I. (7)
with
OFFit = (1 + OFFi,(t i) ) (1 uit ). (8)
Minimum up time
 
(uit ui,(t 1) ) ONi,(t 1) Tion  0, i = 1, . . . , I, (9)
ONit = (1 + ONi,(t 1) ) uit . (10)
Maximum up rate
up
rit  Pit Pi,(t 1) , i = 1, . . . , I, t = 1, . . . , T . (11)
Maximum down rate
ritdown  Pi,(t 1) Pit , i = 1, . . . , I, t = 1, . . . , T . (12)
Two system constraints must be considered. In each period of time:
(1) the units that are committed must satisfy load demand (expression (4));
(2) the total amount of generation available in the system, minus the current load de-
mand, must be above a certain value the spinning reserve (expression (5)). This
second condition is related to reliability and quality of service, imposed by regula-
tory entities.
For each unit, several technical and economical constraints, presented from expres-
sion (6) to (12), must also be considered. Expression (6) defines bounds on generation,
while expressions (7) and (9) state that if a unit is off, it must remain off for at least
Tioff periods of time. On the other hand, if a unit is on it must remain on for at least
Tion periods of time. Finally, expressions (11) and (12) impose a limit to the maximum
difference between production levels, in two consecutive periods of time.

2. Application of GRASP to the UC problem

2.1. Algorithm description

GRASP [6] is a multi-start metaheuristic composed of two main phases: a construction


phase and a local search phase. In the construction phase, an initial feasible solution
is iteratively built following an adaptive reasoning, i.e., the decisions taken in previous
iterations influence the decision taken in the current iteration. Then, the neighbourhood
of that solution is explored, using a local search procedure, and the best overall solution
is kept, if it is better than the best solution found in previous runs of the algorithm.
To obtain an initial feasible solution, at each iteration of the construction phase,
all elements (decisions that can be taken) in a set of possible candidates, are ranked
122 VIANA ET AL.

according to a greedy function that evaluates the contribution to the objective function
obtained by choosing that particular element. If the elements in the ranked list reach a
given threshold, they are accepted for future decisions and stored in a Restricted Can-
didate List (RCL). The decisions taken in each iteration of the construction phase are
then randomly selected among those in the RCL. By following this reasoning, at each
GRASP iteration a different initial solution is obtained and, hopefully, different regions
of the search space are explored by the local search procedure. Finally, at the end of
each iteration, the greedy function is adapted, so that in the following iterations it will
take into account the decisions previously taken.

2.2. Application to the UC problem

Although GRASP has already been applied to a wide range of combinatorial optimisa-
tion problems with success [7], as far as the authors know, this is the first time that it is
used to solve the UC problem. In this section, some details concerning its implementa-
tion are referred and the neighbourhood operations are described.

Construction Phase
Due to problem specific characteristics, the GRASP construction phase for the UC prob-
lem turns out to be, in some cases, very simple. When must-run and minimum-up time
constraints are considered, it can happen that before the algorithm reaches a certain pe-
riod t, the state of a unit has already been fixed to ON, for that period. In algorithm 1
(line 2) a function that calculates the sum of the maximum production capacity of those
units is used (T represents the planning horizon). If the sum, prod(t), verifies the reserve
requirements, no further calculations are needed for that period. Otherwise, based on
the RCL (line 4), the other units are set to ON or OFF. Finally, the operating levels that
lead to a minimum operating cost are computed (line 5) and the solution current cost is
obtained (line 6).

Algorithm 1 (UC construction phase).


for all t T do
2: prod(t) = CheckCurrentProduction (Pmax )
if the reserve requirements are not verified then
4: MakeRCL(Solution)
CalculateDispatchValues(Solution)
6: CalculateCurrentCost(Solution)
end if
8: end for

The elements to be stored in the RCL are the units that can be turned ON in the
period being analysed. The MakeRCL algorithm (figure 1) is used to guarantee that the
solution will remain feasible. At the beginning, an intermediate list (RCLCandidates)
that contains only the units that, if turned ON in period t, will verify the minimum
USING GRASP TO SOLVE THE UCP 123

Figure 1. Flowchart for the MakeRCL procedure.

down-time constraints, is built. If those units are not capable of satisfying the demand
and reserve requirements on their own, a second list (RCLNoCandidates), storing the
remaining units of the system that are OFF in period t, is built. The units in RCLCan-
didates are then ranked, according to a greedy function, and those that reach a certain
threshold are stored in the RCL.
124 VIANA ET AL.

Equation (13) defines the greedy function gf (i) for unit i, in a generic period of
time (t):
i
FuelCost(Pmax ) + SC(i) DC(i)
gf (i) = i
t. (13)
Pmax
i
FuelCost(Pmax ) represents the fuel cost of unit i, when it is operating at its maxi-
i
mum production level (Pmax ); SC(i) represents the start-up costs of unit i (if it was OFF
in period t 1), and DC(i) represents the shut-down costs of unit i (if it was ON in
period t 1). As the decision of turning unit i ON suppresses the shut-down cost in
period t, this cost comes with a minus sign in equation (13).
The units that reach the established threshold are those in the interval given by
expression
 
gf t  gf (i)  gf t + gf t gf t . (14)
where is a pre-defined parameter that controls the RCL size, gf t is the lower bound of
the greedy function obtained in period t (i.e. gf t = min(gf (i))) and gf t its upper bound.
One should notice that when = 0, GRASP turns into a normal greedy algorithm
and, when = 1, it becomes a random walk algorithm.
After obtaining the RCL, the RCLCandidates are updated and the value of is
incremented. When necessary, the same process is applied to RCLNoCandidates. How-
ever, as the elements in this list do not verify the minimum down time constraints, if they
are chosen, they must be turned ON, since the last period they were ON, until period t is
reached.

Local search phase neighbourhood structure


To explore the solution space with a local search procedure, a neighbourhood structure
has been developed. The way it works is presented in algorithm 2 and consists in ran-
domly choosing one unit i, a period t and a direction dir, which indicates if the changes
will be done to the left (before) or to the right (after) of t. Depending on the state of unit i
in period t, this change will mean a shut-down or a start-up for a certain amount of time,
decided by ShutDownInterval(i, t, dir) or by StartUpInterval(i, t, dir), respectively.

Algorithm 2 (Neighbourhood structure).


i = ChooseAtRandomUnit( )
t = ChooseAtRandomTime( )
dir = ChooseAtRandomDirection( )
if (unit i is ON in period t) then
ShutDownInterval(i, t, dir)
else
StartUpInterval(i, t, dir)
end if
USING GRASP TO SOLVE THE UCP 125

The rules used in the ShutDownInterval(i, t, dir) procedure, for units that are al-
ways ON or OFF, over the entire planning horizon, are described in algorithm 3. They
should be read in the following way: if State(. . .) or State(. . .) then Down(. . .).
State(a, b, c, d) represents the state being studied: a {ON, OFF} indicates if a
unit is always ON or OFF, b {Left, Right} is the direction of search, c {ON, OFF}
gives the initial state of unit i and d is a specific time or time interval.
Down(t1, t2) is the interval for which the unit is turned off. UT(i) and DT(i) stand
for the minimum up and down time of unit i, and per_ini(i) stands for the number of
periods that unit i has been on/off for t < 1 (i.e. for the periods before the planning
horizon).
Algorithm 3 (Shutting-down rules).
I
t1 = max(UT(i) per_ini(i), 0)
State(ON, Left, ON, t  DT(i) + t1)
State(ON, Left, OFF, t  UT(i) + DT(i))
Down(t DT(i) + 1, t)
II
t1 = max(UT(i) per_ini(i), 0)
State(ON, Left, ON, t < DT(i) + t1)
Down(t t1, t t1 + DT(i) 1)
III
State(ON, Left, OFF, t = 0)
State(ON, Right, OFF, t = 0)
State(ON, Right, ON, t > 0 and t  UT(i) per_ini)
State(ON, Right, OFF, t  UT(i)
Down(t, t + DT(i) 1)
IV
t1 = max(UT(i), t DT(i) + 1)
State(ON, Left, OFF, t > 0 and t < UT(i) + DT(i))
t1 = max(UT(i) per_ini(i), 0)
State(ON, Right, ON,t < t1)
Down(t1, t1 + DT(i) 1)
V
State(ON, Right, OFF, t = 0 and t < UT(i))
Down(UT(i), UT(i) + DT(i) 1)

The shutting-down rules for those units that change their state at least once over the
planning horizon are the following: if the interval containing t is equal to UT(i), the unit
is turned off for all periods in that interval. Otherwise, it is turned off for a number of
periods chosen at random in the interval [1, SumUp UT(i)], where SumUp represents
the number of consecutive periods for which the unit is ON.
126 VIANA ET AL.

Moreover, to guarantee that load and reserve requirements are still satisfied, one
sometimes needs to restore the feasibility of the solution. The feasibility recovery proce-
dure is based on StartUpInterval(i, t, dir) and turns on units, until feasibility is reached.
With an exception made to the recovery procedure, which is not needed in
StartUpinterval(i, t, dir), the same reasoning is followed for defining the start-up rules.
Finally, in what concerns StartUpInterval(i, t, dir), a variant to the basic procedure
will also be studied in this work. An add-in, to check if there is an over-commitment
of units, will be included in the basic procedure. After each Start-Up operation, this
additional simplification tool will check, for each period of time, if the spinning reserve
exceeds the required value. If this is the case, a greedy procedure is started: choose the
period with the maximum excess of spinning reserve and check if there are any units that
can be turned off, without loss of solution feasibility. In case they exist, they are turned
off. Otherwise, the next period with maximum excess is chosen.

3. Computational experience
In this section, the results obtained by applying GRASP to some problem instances are
reported and discussed. The code was developed in C++. All computational tests were
performed on a 500 MHz Pentium III PC.

3.1. Problem instances


The problem instances presented in [10] will be used in this work. All problems consider
a 24 h planning horizon and the number of units varies from 10 to 100 units. Another
possibly interesting set of randomly generated diversified problems is that presented
in [2]. However, it was not possible to obtain detailed data to reproduce the larger
instances contained in that set.
In table 1, the base problem (for 10 units) is presented. The other problems are
generated based on this one, by reproducing the 10 units as many times as necessary.
The load values are also multiplied by the same increasing ratio and, in all cases, the
reserve requirements are considered to be 10% of the load (table 2).
In table 1, a, b and c are the coefficients to be used in the fuel cost function,
as mentioned in section 1.1. In what concerns transition costs, hot start-up costs are
considered when the unit has been OFF for a number of periods smaller or equal to the
value presented in row cold start hours, and cold-start costs are considered otherwise.
Shut-down costs are set to zero, for all instances. Finally, the initial state row is related
to the unit initial conditions: a positive value (+v) means that the unit has already been
ON for v consecutive periods and a negative value indicates that it has been OFF (e.g.,
unit 6 has been OFF for 3 periods).
Table 2 presents the load and reserve requirements for a 24 h planning horizon.
3.2. Parameter tuning

To set up a search for GRASP, two parameters have to be tuned: the maximum number
of iterations (Max_Iterations) and . Therefore, finding by experimentation the best
USING GRASP TO SOLVE THE UCP 127

Table 1
Data for the 10 generators problem.
Unit 1 Unit 2 Unit 3 Unit 4 Unit 5
Pmax (MW) 455 455 130 130 162
Pmin (MW) 150 150 20 20 25
a ($/h) 1000 970 700 680 450
b ($/MWh) 16.19 17.26 16.60 16.50 19.70
c ($/MW2 h) 0.00048 0.00031 0.002 0.00211 0.00398
min up (h) 8 8 5 5 6
min down (h) 8 8 5 5 6
hot start cost ($) 4500 5000 550 560 900
cold start cost ($) 9000 10000 1100 1120 1800
cold start hours (h) 5 5 4 4 4
initial state (h) +8 +8 5 5 6
Unit 6 Unit 7 Unit 8 Unit 9 Unit 10
Pmax (MW) 80 85 55 55 55
Pmin (MW) 20 25 10 10 10
a ($/h) 370 480 660 665 670
b ($/MWh) 22.26 27.74 25.92 27.27 27.79
c ($/MW2 h) 0.00712 0.00079 0.00413 0.00222 0.00173
min up (h) 3 3 1 1 1
min down (h) 3 3 1 1 1
hot start cost ($) 170 260 30 30 30
cold start cost ($) 340 520 60 60 60
cold start hours (h) 2 2 0 0 0
initial state (h) 3 3 1 1 1

Table 2
Load and reserve requirements.
Hour Load (MW) Reserve (MW) Hour Load (MW) Reserve (MW)
1 700 70 13 1400 140
2 750 75 14 1300 130
3 850 85 15 1200 120
4 950 95 16 1050 105
5 1000 100 17 1000 100
6 1100 110 18 1100 110
7 1150 115 19 1200 120
8 1200 120 20 1400 140
9 1300 130 21 1300 130
10 1400 140 22 1100 110
11 1450 145 23 900 90
12 1500 150 24 800 80
128 VIANA ET AL.

set of parameter values is, in this case, relatively simple. In this work, the values of
Max_Iterations and , for each instance, were fixed by performing some systematic
computational experiments.

3.3. Computational results

When evaluating the performance of random based methods (like metaheuristics) it is


natural to test if the methods are correctly implemented, by checking whether different
seeds, that initialise the random number generator, do not influence the final results
obtained with the method.
In this work, tests have been performed for the 10, 20 and 60 unit instances. For
fixed values of , five seeds were considered and the results obtained showed that their
values did not significantly influence the global behaviour of the method. In fact, in all
cases the same results were obtained, independently of the seed being used, a behaviour
that is not necessarily true for other metaheuristics.
For each instance, several computational tests were also done, to obtain the value
of leading to a better performance of the algorithm. That value was fixed at 0.6 for the
20, 40, 80 and 100 unit problems and 0.4 for the 60 unit problem. For the 10 unit problem
the method performed equally well for values of above 0.3. The results obtained are
those presented in table 3.
The introduction of the simplification tool mentioned in section 2.2, resulted in a
considerable improvement in the efficiency of the algorithm for the 20, 40 and 80 unit
problem. Those results, reported in table 4, show that better solutions could be found
within much shorter CPU times.
One should also notice that the value of that led to a better performance of the
algorithm was, in this case, higher than that used when no simplification techniques were
Table 3
Computational results for GRASP.
Problem size better Production cost CPU time (sec)
10 565 825 17
20 0.6 1 128 160 571
40 0.6 2 259 340 1 511
60 0.4 3 383 184 2 638
80 0.6 4 525 934 3 308
100 0.6 5 668 870 4 392

Table 4
Computational results for GRASP (with simplification tool).
Problem size better Production cost CPU time (sec)
20 0.8 1 126 805 171
40 0.8 2 255 416 906
80 0.8 4 524 207 863
USING GRASP TO SOLVE THE UCP 129

considered. This adjustment of parameters can be explained, in a certain way, by the fact
that the simplification technique used follows a greedy reasoning. Due to that, GRASP
must introduce more randomness in the search (by increasing ), to properly explore the
search space.

3.3.1. Analysis of results


Table 5 presents the results reported by [10]. DP stands for dynamic programming,
LH for Lagrangian Heuristic, and GA for Genetic Algorithm. The average time column
refers to the average CPU time necessary for convergence, i.e. obtaining a solution equal
to, or better than that of the LH approach.
When comparing the results obtained with GRASP, with those presented in [10]
for the Lagrangian Heuristic (LH), they seem to compete equally; GRASP presenting
better results for the 20, 40, 60 and 80 unit problems, and LH for the 100 unit one.
The relative error of the results ((x Best_Result)/Best_Result) is presented in table 6
(a minus sign is assigned to the cases where GRASP performed better).
The comparison with the Genetic Algorithms approach shows that, although being
worse, the results obtained with GRASP are of the same order of magnitude of those
obtained with the Genetic Algorithms. If one excludes the result obtained for the 100
unit problems, where GRASP had its worst performance (with a deviation of 0.736%,
when compared with the result in [10]), for the other instances the maximum deviation
was of 0.428% (table 6). In what concerns the CPU time required by each approach, it
Table 5
Computational results reported in [10].
Problem size Production cost Average time (sec)
DP LH GA
10 565 825 565 825 565 825 221
20 1 130 660 1 126 243 733
40 2 258 503 2 251 911 2 697
60 3 394 066 3 376 625 5 840
80 4 526 022 4 504 933 10 036
100 5 657 277 5 627 437 15 733

Table 6
GRASP vs. LR/GA: relative error.
Problem size Relative error(%)
GRASP vs. LR GRASP vs. GA
10 0.00 0.00
20 0.342 0.049
40 0.137 0.157
60 0.322 0.194
80 0.040 0.428
100 0.205 0.736
130 VIANA ET AL.

is only reported for future reference and no particular analysis will be done. The tests
were performed in different machines and the authors do not have any reference about
the relative speed of each machine.

4. Conclusions and future work

Considering that, as far as the authors know, this is the first time that GRASP is applied
to the unit commitment problem, the results obtained in this work are encouraging for
further research in the area. By being able of achieving, for some instances, better
results than those obtained with a Lagrangian Heuristic (that is still considered to be one
of the most powerful tools in solving the UC problem), and by reaching values that are
similar to those obtained with Genetic Algorithms (an approach that already has some
tradition in the area), GRASP shows that it has potential to become an additional
useful technique, for solving the UC problem. In particular, if one considers the special
structure of the problem instances used in this work, where large problems repeat the
same pattern of small problems, the results obtained with GRASP, when compared
with those obtained with the GA approach, are particularly interesting. In general, for
problems with this type of structure, where the best solutions tend to have repeated
patterns, methods like GA, that are based on inheritance rules, tend to outperform any
other approaches.
Final results show that using metaheuristics like GRASP, that take into account
decisions made in previous iterations for choosing the current movements, is a positive
way of tackling true multi-period problems. As shown in the paper, the results obtained
by performing several computational tests in instances from the literature, lead us to say
that the method is robust and efficiently reaches good results.
Although a very general approach has been followed (with the aim of producing
a generic framework, capable of handling several problem variations and of tackling
different objective functions), and no problem specific operators have been considered,
final results show that GRASP is capable of correctly handling this problem, leading to
quite good results.
Besides, being a very general approach, it has the advantage of being easily adapted
to different variants of a UC problem. When necessary, additional tools that can help the
searching process, may be added to the framework, with no changes in the main core of
the algorithm. New information and objectives, related to the aims of the different actors
present in the decision process, can therefore be incorporated in the algorithm with no
important changes in its structure.
Further work will focus on including hydro units in the problem. The authors will
also adapt the current model to a market environment and study the behaviour of this
approach for problems that reflect the particular features of such environments.
Under market conditions, and following the research priorities specified in the
99DIMACS Workshop (The Next Generation of Unit Commitment Models), pre-
sented in [8], particular attention will also be given to versions of the problem that can
include several objectives (e.g., take or pay contracts can be modeled as objective func-
USING GRASP TO SOLVE THE UCP 131

tions) and therefore allow the Decision Maker to consider further important information
in the decision process. Multiobjective metaheuristics [5,20] shall be developed for this
purpose.

Acknowledgments

The authors would like to thank Prof. Kazarlis and Prof. Bakirtzis, from AUTH, Greece,
for making available detailed information about the instances presented in this paper.

References
[1] K. Aoki et al., Unit commitment in a large-scale power system including fuel constrained thermal and
pumped-storage hydro, IEEE Trans. Power Systems 4 (1987) 10771084.
[2] J.F. Bard, Short-term scheduling of thermal-electric generators using Lagrangian relaxation, Oper.
Res. 36(5) (1988) 756766.
[3] A.I. Cohen and M. Yoshimura, A branch-and-bound algorithm for unit commitment, IEEE Trans.
Power Apparatus Systems 102(2) (1983) 444451.
[4] D. Dasgupta and D. McGrevor, Thermal unit commitment using genetic algorithms, IEE Proc. Gen-
eration Transmission Distribution 141 (1994) 459465.
[5] M. Ehrgott and X. Gandibleux, A survey and annotated bibliography of multiobjective combinatorial
optimization, OR Spektrum 22 (2000) 425460.
[6] T. Feo and M. Resende, Greedy randomized adaptive search procedures, J. Global Optim. 6 (1995)
109133.
[7] P. Festa and M. Resende, GRASP: An annotated bibliography, in: Essays and Surveys on Metaheuris-
tics, eds. P. Hansen and C. Ribeiro (Kluwer Academic, Dordrecht, 2001).
[8] B.F. Hobbs et al., The Next Generation of Electric Power Unit Commitment Models (Kluwer Acad-
emic, Dordrecht, 2001).
[9] S.-J. Huang and C.-L. Huang, Application of genetic-based neural networks to thermal unit commit-
ment, IEEE Trans. Power Systems 12 (1997) 654660.
[10] S. Kazarlis, A. Bakirtzis and V. Petridis, A genetic algorithm solution to the unit commitment problem,
IEEE Trans. Power Systems 11 (1996) 8392.
[11] F. Lee, Short term unit commitment a new method, IEEE Trans. Power Systems 3 (1988) 421428.
[12] A. Mantawy, Y.L. Abdel-Magid and S.Z. Selim, A simulated annealing algorithm for unit commit-
ment, IEEE Trans. Power Systems 13 (1998) 197204.
[13] A. Mantawy, Y.L. Abdel-Magid and S.Z. Selim, Unit commitment by tabu search, IEE Proc. Genera-
tion Transmission Distribution 145 (1998) 5665.
[14] A. Merlin and P. Sandrin, A new method for unit commitment at Electricite de France, IEEE Trans.
PAS 102 (1983) 12181225.
[15] Z. Ouyang and S. Shahidehpour, A multi-stage intelligent system for unit commitment, IEEE Trans.
Power Systems 7 (1992) 639646.
[16] C.R. Reeves, Modern Heuristiques Techniques for Combinatorial Problems (McGraw-Hill, New
York, 1995).
[17] H. Sasaki, M. Watanabe and R. Yokoyama, A solution method of unit commitment by artificial neural
networks, IEEE Trans. Power Systems 7 (1992) 974981.
[18] S. Sen and D.P. Kothari, Optimal thermal generating unit commitment: a review, Electrical Power
Energy Systems 20 (1998) 443451.
[19] G. Shebl, Computational Auction Mechanisms for Restructured Power Industry Operation (Kluwer
Academic, Dordrecht, 1999).
132 VIANA ET AL.

[20] A. Viana and J.P. Sousa, Using metaheuristics in multiobjective resource constrained project schedul-
ing, European J. Oper. Res. 120 (2000) 359374.
[21] A. Wood and B.F. Wollenberg, Power Generation Operation and Control (Wiley, New York, 1996).
[22] S. Yin Wa Wong, An enhanced simulated annealing approach to unit commitment, Electrical Power
Energy Systems 20 (1998) 359368.
[23] F. Zhuang and F.D. Galiana, Unit commitment by simulated annealing, IEEE Trans. Power Systems
5 (1990) 311318.

S-ar putea să vă placă și