Formação Galp Energia
Modelação e Simulação de Mercados de Energia Eléctrica
:: Sessão #3 ::
Despacho Económico
de Grupos Térmicos de Produção de Energia
Eléctrica
Jorge de Sousa
Professor Coordenador
ISEL - Instituto Superior de Engenharia de Lisboa
Webpage: pwp.net.ipl.pt/deea.isel/jsousa
Sessão #3 | 3 Maio 2010
-1-
Agenda

Enquadramento

Formulação do problema

Solução do problema

Exemplos de aplicação

Modelação e simulação em GAMS

Exercícios de simulação em GAMS
Sessão #3 | 3 Maio 2010
-2-
Enquadramento
Despacho Económico

O despacho económico tem como objectivo calcular o perfil
óptimo de produção de energia eléctrica considerando
disponíveis várias centrais térmicas para satisfação de um
consumo dado

Pretende-se minimizar o custo total de produção

Cada central possui limites técnicos de operação e caracterizase do ponto de vista económico por uma função de custo

É necessário satisfazer um dado consumo conhecido durante
um determinado período de tempo

A resolução do problema implica conhecimentos técnicos,
económicos e matemáticos (optimização com restrições)
Sessão #3 | 3 Maio 2010
-3-
Enquadramento
Relação entrada/saída de um grupo térmico
B
T
G
P
H
Caldeira
Turbina
Alternador
Aux
Serviços
Auxiliares
H(P )  a  b P  c P 2
H : Potência térmica de entrada
P : Potência eléctrica de saída
a, b, c : Parâmetros característicos do grupo
Sessão #3 | 3 Maio 2010
-4-
Enquadramento
Custo de produção
C (P ) [€/h]
Custo de produção relativo ao combustível
P min
P max
Potência eléctrica

P [MW]

C(P)  a  b P  c P 2 F
C : Custo de produção
F : Custo do combustível
Sessão #3 | 3 Maio 2010
-5-
Enquadramento
Custo marginal
C' (P ) [€/MWh]
Custo marginal de produção


C(P)  a  b P  c P 2 F
P min
P max
Potência eléctrica
P [MW]
C' ( P )   b  2 c P  F
Sessão #3 | 3 Maio 2010
-6-
Enquadramento
Custo médio
C (P )/P [€/MWh]
Custo médio de produção


C(P)  a  b P  c P 2 F
P min
P*
Potência eléctrica
P max
P [MW]
C (P )  a

   b  c P F
p
P

Sessão #3 | 3 Maio 2010
-7-
Agenda

Enquadramento

Formulação do problema

Solução do problema

Exemplos de aplicação

Modelação e simulação em GAMS

Exercícios de simulação em GAMS
Sessão #3 | 3 Maio 2010
-8-
Formulação do problema
Despacho económico de n grupos térmicos
C1(P1)
B1
B2
C2(P2)
G1
T1
P1
G2
T2
P2
Pcarga
Bn
Cn(Pn)
Tn
Gn
Pn
n
min
s.a
CT 
n
Pi

i 1
C i (Pi )

i 1
 Pc arg a
Pimin  Pi  Pimax
Sessão #3 | 3 Maio 2010
i  1,..., n
-9-
Formulação do problema
Optimização com restrições
max f (x)
s.a
g i (x)  0
hi (x)  0
i  1,..., m1
i  m1  1,..., m
f : En  E - função objectivo
gi: En  E - funções de restrição
n : número variáveis de decisão
m1 : número de restrições de maior ou igual a zero
m : número total de restrições
Sessão #3 | 3 Maio 2010
- 10 -
Formulação do problema
Teorema de Kuhn-Tucker
Considere-se o problema de programação não linear
max f (x)
s.a
g i (x)  0
hi (x)  0
i  1,..., m1
i  m1  1,..., m
em que f(x), gi(x) e hi(x) são funções diferenciáveis.
Se x* é solução óptima do problema
Então verificam-se as seguintes três condições:
KT1 :
gi (x* )  0
hi (x* )  0
i  1,..., m1
i  m1  1,..., m
Existem multiplicadores  i  0,
KT2 :
KT3 :
 i gi (x* )  0,
m1
f (x* ) 
s,
i  1,..., m1 e  i irres trito
i  m1  1,..., m tais que
i  1,..., m1
m
 i g i (x* )    i hi (x* )  0

i 1
i  m 1
1
Sessão #3 | 3 Maio 2010
- 11 -
Agenda

Enquadramento

Formulação do problema

Solução do problema

Exemplos de aplicação

Modelação e simulação em GAMS

Exercícios de simulação em GAMS
Sessão #3 | 3 Maio 2010
- 12 -
Solução do problema
Aplicação das condições de Kuhn-Tucker
n
max
 CT  
n
h(P ) 
C i (Pi )

i 1
Pi  Pc arg a 0

i 1
gi (P)  Pi  Pimin  0
i  1,..., n
gi (P)  Pimax  Pi  0
i  1,..., n
As condições de Kuhn-Tucker para este problema são dadas por:
n
KT1 :
P
i
 Pc arg a 0
Pi  Pimin  0
i  1,..., n
i
i
KT3 :
Sessão #3 | 3 Maio 2010
i  1,..., n
i 1
Existem multiplicadores  i ,  i  0,
KT2 :
Pimax  Pi  0
 Pi  Pi   0
 Pi  Pi   0
min
max
i  1,..., n
e
 irres trito
i  1,..., n
i  1,..., n
 Ci' Pi      i   i  0
i  1,..., n
- 13 -
Solução do problema
Aplicação das condições de Kuhn-Tucker
Quatro combinações possíveis para os multiplicadores:
Sessão #3 | 3 Maio 2010
1.
Nenhuma restrição activa
2.
Restrição activa para Pmax
3.
Restrição activa para Pmin
4.
Ambas as restrições activas
i
i
1)
0
0
2)
0
+
3)
+
0
4)
+
+
- 14 -
Solução do problema
Aplicação das condições de Kuhn-Tucker
i
i
1.
Nenhuma restrição activa
1)
0
0
2.
Restrição activa para Pmax
2)
0
+
3.
Restrição activa para Pmin
3)
+
0
4.
Ambas as restrições activas
4)
+
+
KT3 :
 Ci' Pi      i   i  0
i
=
i
i  1,..., n
= 0
C i' Pi   
Sessão #3 | 3 Maio 2010
i  1,..., n
- 15 -
Solução do problema
Aplicação das condições de Kuhn-Tucker
i
i
1.
Nenhuma restrição activa
1)
0
0
2.
Restrição activa para Pmax
2)
0
+
3.
Restrição activa para Pmin
3)
+
0
4.
Ambas as restrições activas
4)
+
+
KT2 :
i
i
KT3 :
 Pi  Pi   0
 Pi  Pi   0
min
max
i  1,..., n
i  1,..., n
 Ci' Pi      i   i  0
i
i  1,..., n
> 0 , i = 0
i
 Pi
max

 Pi  0

Pi  Pimax
C i' Pi      i  
Sessão #3 | 3 Maio 2010
- 16 -
Solução do problema
Aplicação das condições de Kuhn-Tucker
i
i
1.
Nenhuma restrição activa
1)
0
0
2.
Restrição activa para Pmax
2)
0
+
3.
Restrição activa para Pmin
3)
+
0
4.
Ambas as restrições activas
4)
+
+
KT2 :
i
i
KT3 :
 Pi  Pi   0
 Pi  Pi   0
min
max
i  1,..., n
i  1,..., n
 Ci' Pi      i   i  0
i
=0,
i
i
i  1,..., n
> 0
 Pi  Pi   0
min

Pi  Pimin
C i' Pi      i  
Sessão #3 | 3 Maio 2010
- 17 -
Solução do problema
Aplicação das condições de Kuhn-Tucker
i
i
1.
Nenhuma restrição activa
1)
0
0
2.
Restrição activa para Pmax
2)
0
+
3.
Restrição activa para Pmin
3)
+
0
4.
Ambas as restrições activas
4)
+
+
KT2 :
i
i
 Pi  Pi   0
 Pi  Pi   0
min
max
i > 0 ,  i
i  1,..., n
> 0
i
i
Sessão #3 | 3 Maio 2010
i  1,..., n
 Pi  Pi   0
 Pi  Pi   0
min
max

Pi  Pimin

Pi  Pimax
Impossível
- 18 -
Solução do problema
Resumo dos resultados
i
i
1)
0
0
C i' Pi    e
Pimin  Pi  Pimax
2)
0
+
C i' Pi    e
Pi  Pimax
3)
+
0
C i' Pi    e
Pi  Pimin
4)
+
+
Impossível
1.
Todos os grupos têm o mesmo custo marginal
2.
O custo marginal de um grupo pode ser inferior ao dos
restantes desde que esteja a Pmax
3.
O custo marginal de um grupo pode ser superior ao dos
restantes desde que esteja a Pmin
Sessão #3 | 3 Maio 2010
- 19 -
Agenda

Enquadramento

Formulação do problema

Solução do problema

Exemplos de aplicação

Modelação e simulação em GAMS

Exercícios de simulação em GAMS
Sessão #3 | 3 Maio 2010
- 20 -
Exemplos de aplicação
Características dos grupos térmicos
T1
B1
C1
T2
B2
C2
G1
P1
G2
P2
Pcarga
T3
B3
C3
G3
P3
Grupo
i
Pmin
[MW]
Pmáx
[MW]
Ci(Pi)
[c€/kWh]
1
80
220
15.3 + 1.17 P1 + 0.00145 P12
2
40
150
13.7 + 1.30 P2 + 0.00163 P22
3
25
90
10.3 + 1.48 P3 + 0.00226 P32
Sessão #3 | 3 Maio 2010
- 21 -
Exemplo de aplicação #1
Pcarga = 325 MW
Grupo
i
Pmin
[MW]
Pmáx
[MW]
Ci(Pi)
[c€/kWh]
1
80
220
15.3 + 1.17 P1 + 0.00145 P12
2
40
150
13.7 + 1.30 P2 + 0.00163 P22
3
25
90
10.3 + 1.48 P3 + 0.00226 P32
C1 (P1 )  

C 2 (P2 )  

C 3 (P3 )  
P  P  P  P
2
3
carga
 1

1.1 7  0.0 0 2 9 0P1  

1.3 0  0.0 0 3 2 6P2  

1.4 8  0.0 0 4 5 2P3  

P1  P2  P3  3 2 5
P1  1 7 1.2 M W

P2  1 1 2.5 M W

P3  4 1.3 M W

  1.6 6 7 c E uro/kWh
Sessão #3 | 3 Maio 2010
- 22 -
Exemplo de aplicação #1
Pcarga = 325 MW
Sessão #3 | 3 Maio 2010
- 23 -
Exemplo de aplicação #2
Pcarga = 200 MW
Grupo
i
Pmin
[MW]
Pmáx
[MW]
Ci(Pi)
[c€/kWh]
1
80
220
15.3 + 1.17 P1 + 0.00145 P12
2
40
150
13.7 + 1.30 P2 + 0.00163 P22
3
25
90
10.3 + 1.48 P3 + 0.00226 P32
C1 (P1 )  

C 2 (P2 )  

C 3 (P3 )  
P  P  P  P
2
3
carga
 1

1.1 7  0.0 0 2 9 0P1  

1.3 0  0.0 0 3 2 6P2  

1.4 8  0.0 0 4 5 2P3  

P1  P2  P3  2 0 0
C3 (2 5)  1.5 9 3c E uro/kWh 
e
P1  1 2 1.9 M W

P2  6 8.5 M W

P3  9.6 M W

  1.5 2 3c E uro/kWh
P3  P3min  2 5 M W
P1  1 1 3.7 M W

P2  6 1.3 M W

  1.5 0 0c E uro/kWh
Sessão #3 | 3 Maio 2010
- 24 -
Exemplo de aplicação #2
Pcarga = 200 MW
Sessão #3 | 3 Maio 2010
- 25 -
Exemplo de aplicação #3
Pcarga = 450 MW
Grupo
i
Pmin
[MW]
Pmáx
[MW]
Ci(Pi)
[c€/kWh]
1
80
220
15.3 + 1.17 P1 + 0.00145 P12
2
40
150
13.7 + 1.30 P2 + 0.00163 P22
3
25
90
10.3 + 1.48 P3 + 0.00226 P32
C1 (P1 )  

C 2 (P2 )  

C 3 (P3 )  
P  P  P  P
2
3
carga
 1
P1  2 2 0.0 M W

P2  1 5 0.0 M W

P3  8 0.0 M W
Sessão #3 | 3 Maio 2010

1.1 7  0.0 0 2 9 0P1  

1.3 0  0.0 0 3 2 6P2  

1.4 8  0.0 0 4 5 2P3  

P1  P2  P3  4 5 0
P1  2 2 0.6 M W

P2  1 5 6.4 M W

P3  7 3.0 M W

  1.8 1 0 c E uro/kWh
C1 (P1 )  1.8 0 8 c E uro/kWh 

C 2 (P2 )  1.7 8 9 c E uro/kWh 

C 3 (P3 )  1.8 4 2 c E uro/kWh 
e
P1  P1max
e
P2  P2 max
- 26 -
Exemplo de aplicação #3
Pcarga = 450 MW
Sessão #3 | 3 Maio 2010
- 27 -
Agenda

Enquadramento

Formulação do problema

Solução do problema

Exemplos de aplicação

Modelação e simulação em GAMS

Exercícios de simulação em GAMS
Sessão #3 | 3 Maio 2010
- 28 -
Modelação e simulação em GAMS
Enquadramento

O problema do Despacho Económico tem como objectivo calcular o
perfil óptimo de produção de energia eléctrica (minimizando o custo
total de produção) considerando disponíveis várias grupos térmicos
para satisfação de um dado consumo (carga).

Cada grupo produtor tem limites técnicos de operação (e.g., potência
mínima, potência máxima) e caracteriza-se, do ponto de vista
económico, por uma função de custo.

A resolução do problema do Despacho Económico pode ser efectuada
com recurso ao GAMS para modelizar e resolver o problema de
minimização do custo total de produção com as restrições impostas
pelos limites técnicos de operação dos grupos térmicos e pelo balanço
entre a produção e a carga.
Sessão #3 | 3 Maio 2010
- 29 -
Modelação e simulação em GAMS
Despacho económico de 3 grupos térmicos
T1
B1
C1
T2
B2
C2
G1
Pcarga = 325 MW
P1
G2
P2
Pcarga
T3
B3
C3
G3
P3
Grupo
i
Pmin
[MW]
Pmáx
[MW]
Ci(Pi)
[c€/kWh]
1
80
220
15.3 + 1.17 P1 + 0.00145 P12
2
40
150
13.7 + 1.30 P2 + 0.00163 P22
3
25
90
10.3 + 1.48 P3 + 0.00226 P32
Sessão #3 | 3 Maio 2010
- 30 -
Modelação e simulação em GAMS
Programação em GAMS (1/4)
* DESPACHO ECONOMICO de grupos termicos de produção de
* energia electrica
* Definicao dos conjuntos dos grupos e das suas caracteristicas
Set i grupos produtores /1*3/ ;
Set carac caracteristicas dos grupos produtores /Pmin, Pmax, a, b, c/
;
* Introducao dos dados dos grupos termicos: potencia mínima, potencia
* maxima e parametros caracteristicos da funcao de custos a, b e c
Table Dados(i,carac)
Pmin
Pmax
a
b
c
*
MW
MW
€
€/MW
€/MW2
1
80
220
15.30
1.17
0.00145
2
40
150
13.70
1.30
0.00163
3
25
90
10.30
1.48
0.00226
* Introducao do valor da carga a satisfazer
Scalar Carga /325/ ;
Sessão #3 | 3 Maio 2010
- 31 -
Modelação e simulação em GAMS
Programação em GAMS (2/4)
* Definicao das variaveis a serem determinadas pelo modelo
Variables
P(i) potencia produzida pelo grupo i
Custo custo total de producao
;
* Imposicao da potencia dos grupos como variavel nao negativa
Positive variables P ;
* Assignacao dos limites superiores e inferiores dos grupos termicos
P.up(i) = Dados(i,"Pmax") ;
P.lo(i) = Dados(i,"Pmin") ;
* Identificacao das equacoes custo total (a minimizar) e balanco
* entre a producao e a carga
Equations
EqCusto
custo total de producao
EqBalanco balanco entre a producao e a carga
;
Sessão #3 | 3 Maio 2010
- 32 -
Modelação e simulação em GAMS
Programação em GAMS (3/4)
* Definicao das equacoes
EqCusto
.. Custo =e= Sum(i, Dados(i,"a") + Dados(i,"b")*P(i) +
Dados(i,"c")*Power(P(i),2)) ;
EqBalanco .. Sum(i,P(i)) =g= Carga ;
* Definicao do modelo DE - Despacho Economico
Model DE /EqCusto, EqBalanco/ ;
* Instrucao para corrida do modelo ED usando
* programacao nao linear (NLP) por forma a minimizar a
* variavel custo total (funcao objectivo)
Solve DE using NLP minimizing Custo;
* Escrita no ficheiro .lst dos resultados
* relativos ao custo total (Custo.l)
* e da potencia de cada grupo (P.l)
Display Custo.l, P.l;
Sessão #3 | 3 Maio 2010
- 33 -
Modelação e simulação em GAMS
Programação em GAMS (4/4)
* Definicao e determinacao do custo marginal e escrita dos principais
* resultados em ficheiro externo .txt
* Determinacao do custo marginal de cada grupo (CM = C' = b+2*P)
Parameter CMarg(i) custo marginal ;
CMarg(i) = Dados(i,"b") + 2*Dados(i,"c")*P.l(i) ;
* Abre ficheiro externo de texto
File output /C:\GAMS_out\Desp_Economico.txt/ ;
put output ;
* Escreve custo total
put "Custo total = ", put Custo.l, put /, put / ;
* Escreve resultados de cada grupo
put "Grupo
Pmin
Pmax
Potencia
CMarginal",
put / ;
loop(i, put i.tl, put Dados(i,'Pmin'), put Dados(i,'Pmax'), put
P.l(i), put CMarg(i); put /) ;
* Fecha ficheiro
putclose output
Sessão #3 | 3 Maio 2010
- 34 -
Agenda

Enquadramento

Formulação do problema

Solução do problema

Exemplos de aplicação

Modelação e simulação em GAMS

Exercícios de simulação em GAMS
Sessão #3 | 3 Maio 2010
- 35 -
Exercícios de simulação em GAMS
1.
Usando as características dos grupos térmicos do exemplo apresentado,
efectue o despacho económico (usando o GAMS) para uma carga de:
i.
325 MW
ii.
200 MW
iii.
450 MW
2.
Comente os resultados obtidos tendo em consideração os custos
marginais de cada grupo e a sua potência relativa aos seus limites de
operação com vista a concluir que o resultado obtido em cada alínea é o
óptimo do problema do despacho económico.
3.
Introduza um novo grupo térmico com as características que achar
adequadas por forma a que nas condições do exercício 1.i. todos os três
grupos originais fiquem a funcionar à sua potência mínima.
Sessão #3 | 3 Maio 2010
- 36 -
Formação Galp Energia
Modelação e Simulação de Mercados de Energia Eléctrica
:: Sessão #3 ::
Despacho Económico
de Grupos Térmicos de Produção de Energia
Eléctrica
Jorge de Sousa
Professor Coordenador
ISEL - Instituto Superior de Engenharia de Lisboa
Webpage: pwp.net.ipl.pt/deea.isel/jsousa
Sessão #3 | 3 Maio 2010
- 37 -