You are on page 1of 7

Aplicação de um Método Primal-Dual de Pontos Interiores, do Tipo

Previsor-Corretor, em Problemas de Despacho Econômico


Antonio R. Balbo(1) Márcio A. Silva Souza(2) Edméa C. Baptista(1)
(1) Departamento de Matemática – FC – Unesp
(2) Aluno de Pós-Graduação em Matemática com Ênfase
a Aplicação de Recursos Computacionais
Av: Eng. Luís Edmundo C. Coube, s/n, Vargem Limpa
17033-360, Bauru, SP
e-mail: arbalbo@fc.unesp.br, baptista@fc.unesp.br, mass20@fc.unesp.br

1 - INTRODUÇÃO propostos entre outros por Megiddo, Renegar, Vaidya


Desde sua introdução em 1984, o algoritmo de e Ye em [12], [16], [19] e [21], bem como, os
transformação projetiva de Karmarkar [8] métodos de trajetória central, propostos entre outros
transformou-se em um notável método de ponto por Gonzaga em [5] e [6], e Monteiro e Adler em
interior para resolver problemas de programação [14]. Estes últimos iniciavam a estratégia primal-dual
linear. Este trabalho pioneiro provocou uma agitação de resolução dos PPL’s.
nas atividades de pesquisas nesta área. Ao longo desta direção, um terceiro variante, o
Entre todos os variantes relatados do algoritmo assim chamado algoritmo Primal – Dual de pontos
original de Karmarkar, o primeiro procedimento que interiores, foi apresentado e analisado por Monteiro,
atraiu a atenção dos pesquisadores foi aquele que Adler e Resende [15] e também por Kojima, Mizuno,
utilizava uma transformação afim simples para e Yoshise [10], em 1989. A demonstração teórica da
substituir a transformação projetiva original de complexidade de tempo polinomial foi feita com
Karmarkar, a qual era muito complexa e permitir que sucesso pelos autores citados em [15] e [10]. Estes
se trabalhasse no problema de programação linear em algoritmos exploram uma função potencial primal-
sua forma original, ou seja, em sua forma padrão. O dual variante da função barreira logarítmica citada,
algoritmo afim foi apresentado primeiramente por denominada de função potencial.
Dikin [3], um matemático soviético, em 1967. Mais Os métodos inseridos na metodologia primal-
tarde, em 1985, o trabalho era independentemente dual de pontos interiores, principalmente aqueles
redescoberto por Barnes e por Vanderbei, Meketon, e propostos em [10] e [14], amplamente investigados
Freedman [20]. Estes propuseram usar o algoritmo em [4], tem sido explorados nesta última década para
Primal – Afim para resolver os problemas de solucionar, com eficiência, problemas de
Programação Linear, na forma padrão e na prova programação matemática linear, não-linear e inteira.
estabelecida da convergência do algoritmo. Um Na área de Engenharia Elétrica, o problema de
algoritmo similar, denominado de algoritmo Dual – minimização dos custos dos combustíveis
Afim, foi projetado e executado por Adler, empregados na geração termoelétrica de energia
Karmarkar, Resende e Veiga [1] para resolver denominado de Problema de Despacho Econômico
problemas de Programação Linear na forma de (DE), pode ser numericamente solucionado através
desigualdade. Comparado à transformação projetiva, do Método Primal-Dual citado. De acordo com [7] o
relativamente incômoda, a implementação do DE é definido como sendo um processo de alocação
algoritmo Primal – Afim e Dual – Afim era mais ótima da demanda de energia elétrica entre as
simples por ter relação direta com os problemas de unidades geradoras disponíveis, de tal forma que, as
programação linear. Estes dois algoritmos, quando restrições operacionais sejam satisfeitas e que o custo
aplicados em problemas de grande dimensão, de geração seja mínimo. A partir do uso do Critério
exibiram resultados promissores, embora a prova dos Custos Incrementais Iguais, definido em [18],
teórica da complexidade de tempo polinomial não foi tem-se a equivalência do (PDE) com um problema de
obtida com a transformação afim utilizada. O minimização de funcionais quadráticos, com
trabalho de Megiddo e Shub [13] indicou que a restrições lineares de igualdade e variáveis
trajetória que conduz à solução ótima fornecida pelos canalizadas, quando desconsideram-se pontos de
algoritmos afins depende da solução inicial. Uma má válvula.
solução inicial, que está perto de um vértice do O modelo geral de otimização para o Despacho
domínio viável, poderá resultar em uma investigação Econômico Clássico, o qual é definido sem se
que percorre todos os vértices do problema. considerar pontos de válvula, é apresentado por:
Não obstante, a complexidade de tempo Minimizar Fe = in=1 FePVI = a i Pi 2 + bi Pi + c i
polinomial dos algoritmos Primal – Afim e Dual – (PDE)
Sujeito a i =1 Pi = PD + PL
n

Afim pode ser reestabelecida incorporando uma


função barreira logarítmica ao PPL original a qual Pi Min ≤ Pi ≤ Pi Max
visava solucionar o problema apontado por Megiddo, onde:
ou seja, impedir que uma solução interior ficasse Fe : é a função custo total de geração do DE;
"presa" à fronteira do problema (possivelmente um Fe FePVI : representa os custos de cada unidade
vértice) e que possibilitou a prova de complexidade
dos métodos. Nesta classe de métodos podem-se citar geradora i, sem considerar o efeito do ponto de
os métodos de pontos interiores que usam a função válvula;
objetivo penalizada pela função barreira logarítmica, ai , bi e ci : são os coeficientes da função custo;
Pi´ s : correspondem às potências nas quais as 1 T
Maximizar − x Qx + bT w − u T y + l T s
unidades geradoras devem operar; 2
Sujeito a − Qx + AT w + s − y = c (2.3)
PD : é o valor da demanda de energia;
PL : representa as perdas na transmissão; s ≥ 0;
y≥0
PiMin e PiMax : são, respectivamente, os limites
onde w ∈ R m e s, y ∈ R n .
operacionais inferiores e superiores de saída das
Para um escalar µ > 0 , pode-se incorporar ao
unidades de geração termoelétrica.
Neste trabalho faz-se uma aplicação do método (PPL) uma função barreira logarítmica resultando no
primal-dual de pontos interiores, utilizando-se da seguinte problema de otimização não-linear:
n n
estratégia do tipo previsor-corretor, encontrada em Min Fµ ( x) = cT x − µ ln x j −µ ln z j
[11] e [23], investigando-se a teoria do mesmo, seu j =1 j =1

esquema iterativo e sua implementação Sujeito a Ax = b ; (2.4)


computacional, para a determinação de direções de x + z = u ; z ≥ 0;
busca e de soluções aproximadas do Problema de
x − r = l; r ≥ 0.
Programação Quadrático definido em (PDE). As
atenções serão focalizadas nos três elementos básicos O problema dual de (PPL) é:
de um processo iterativo, a saber: como começar; 1 n n
Max − xT Qx+ bT w − uT y + lT s − µ ln sj −µ ln yj
como sintetizar uma boa direção de busca e como 2 j =1 j =1

parar um algoritmo iterativo. A análise é feita Sujeito a − Qx+ AT w + s − y = c (2.5)


explorando-se as condições de Karush-Kuhn-Tucker s ≥ 0;
e de primeira e segunda ordem de Taylor, para a y ≥0
determinação de direções de busca, soluções
aproximadas e critérios de parada do método citado. As condições de otimalidade de Karush-Kuhn-
Apresentam-se aplicações deste método em Tucker (KKT) para os problemas (2.4) e (2.5) são:
problemas práticos simples, desta natureza,
− Qx + A T w + s − y = c (2.6a)
encontrados na Engenharia Elétrica, em especial ao
(PDE), visto em [9] e [17]. Testa-se uma Ax = b (2.6b)
implementação computacional à determinação de x+ z =u (2.6c)
soluções aproximadas de (PDE), comparando-se x−r =l (2.6d)
estas com resultados já obtidos e publicados em [9] e ZYe − µe = 0 (2.6e)
[17]. Esta investigação comparativa demonstra a BSe − µe = 0 (2.6f)
competitividade do Método Primal-Dual de Pontos
onde R, Z, S e W são matrizes diagonais,
Interiores, do tipo previsor-corretor, com os
e = (1, ,1) e µ a métrica dual ou parâmetro de
T
algoritmos, Genético e Genético Co-evolutivo, bem
como, o Genético Atávico Híbrido, utilizados, ajuste à curva definida pela trajetória central.
respectivamente, em [17] e [9]. A fim de simplificar notações, o conjunto
solução, Ω 0 , para os problemas (2.2) e (2.3) será
2 - A definição do Problema de Programação denotado aqui como:
Quadrática (PPQ)
O problema de minimização de funções
(x, w, z, r , y, s ) / − Qx + AT w + s − y = c,
Ω0 =
quadráticas, com restrições de igualdade e variáveis Ax = b, x + z = u , x − r = l (z , r , y, s ) > 0
canalizadas é expresso de maneira geral por: e a função F, dependente das variáveis x, w, z, r, y e s
1 T por:
Minimizar x Qx + c T x
2 Ax − b
Sujeito a Ax = b (2.1) − Qx + A T w + s − y − c
l ≤ x≤u x+ z −u .
F (x, w, z , r , y , s ) =
onde A ∈ R m × n , tal que posto A é n, b ∈ R m , x −r −l
x, c, u ∈ R n e Q ∈ R nxn é uma matriz diagonal. ZYe − µe
O problema (2.1) é equivalente a: S Re − µe
1 T Consideram-se as variáveis do problema definidas
Minimizar x Qx + c T x
2 a partir de uma iteração k por:
Sujeito a Ax = b (2.2) x = x k + d xk ;
x+z =u ; z≥0 w = w k + d wk ;
x−r =l ; r≥0 z = z k + d zk ;
O PPQ Dual de (2.2) é expresso por:
r = r k + d rk
y = y k + d yk ;
s = s k + d sk .
Usando a aproximação linear da Série de Taylor inviável computacionalmente. Assim, determina-se
para avaliar F ( x, w, z , r , y, s ) , obtêm-se a seguinte d ( k ) resolvendo-se o seguinte sistema linear:
aproximação: J ( h ( k ) )d ( k ) = − F ( h ( k ) ) ; (2.10)
F ( x, w, z , r , y, s ) = F (h ( k ) ) + J ( h ( k ) )d ( k ) (2.7a) É imediato que:
onde A 0 0 0 0 0
h( k ) = (xk , wk , z k , r k , yk , sk ) , d = (dx , dw, dz , dr , dy , ds ) e
T (k ) k k k k k k T
−Q AT 0 0 −I I
J ( h ) é a matriz Jacobiana, cujo
(k )
(i, j) -ésimo J (h ( k ) ) =
I 0 I 0 0 0
(2.11)
elemento é dado por: I 0 0 −I 0 0
∂Fi (h) 0 0 Y 0 Z 0
.
∂h j h=hk
0 0 0 S 0 R
Tem-se ainda que, para a resolução aproximada Considerando-se (2.11), então, reescreve-se
de (2.7a), a seguinte condição (2.10) da seguinte maneira:
Ax − b A 0 0 0 0 0 d xk tk
− Qx + A T w + s − y − c − Q A T 0 0 − I I d wk uk
x + z −u (2.7b) I 0 I 0 0 0 d k
fk
F ( h) = =0 z
= (2.12a)
x −r −l I 0 0 −I 0 0 d rk ok
ZYe − µe 0 0 Y 0 Z 0 d yk qk
S Re − µe
0 0 0 S 0 R d sk vk
2.1 - Direções de busca onde, t k = b − Ax k ; u k = Qx k + c − AT w k − s k + y k ;
As expressões (2.7a) e (2.7b) serão de interesse f k = u − xk − z k ; ok = l − xk + r k
para redefinir as direções de busca do método
q k = µ k e − Z k Yk e ; v k = µ k e − R k S k e . (2.12b)
investigado, definidas a seguir.
k
2.1.1 - Direções de busca – Tipo Previsor A maneira como foram definidos os resíduos t ,
Supondo em um passo k que as condições de u , f k , o k , q k , v k em (2.12b) é que evidencia, no
k

otimalidade (2.6) satisfaçam à viabilidade primal e


algoritmo a ser proposto, a diferenciação entre o
dual, então, a definição do novo ponto, na iteração
passo previsor e corretor do método.
k+1, depende diretamente das direções de movimento
As direções a serem determinadas a seguir, no
e comprimento de passo nesta direção. Sem se
passo previsor, utilizam os resíduos definidos em
preocupar, em uma primeira análise, com o
(2.12b).
comprimento do passo, considera-se, na iteração
Para determinar as direções no passo previsor não
k + 1 , o novo ponto h k +1 definido por: é usual resolver o sistema linear (2.12) devido à
x k +1 x k + d xk estrutura esparsa e de blocos da matriz. Assim,
w k +1 w k + d wk calcula-se d xk , d wk , d zk , d rk , d yk e d sk ,
z k +1 z k + d zk separadamente, através das seguintes equações:
h k +1 = r k +1 = k . (2.8)
r + d rk Ad xk = t k (2.13a)
y k +1 y k + d yk − Qd xk + AT d wk + d sk − d yk = u k (2.13b)
k +1
s k
s +d k
s d +d = f
k k k
(2.13c)
x z

Assim, necessita-se determinar a direção d −d =o


k k k
(2.13d)
d ( k ) = (d xk , d wk , d zk , d rk , d yk , d sk ) para obter-se o novo
x r
T
Yk d zk + Z k d yk = q k (2.13e)
k +1
ponto h . S k d + Rk d = v
k k k
(2.13f)
b s
Seguindo-se os passos do Método de Newton e
Desde que, em uma iteração k , a viabilidade
considerando (2.7a) e (2.7b), explicitamente, a
depende de x k + z k = u e de x k − r k = l , então para
direção de movimento d ( k ) pode ser obtida por:
as novas soluções x k +1 , z k +1 e r k +1 estas condições
d xk
devem ser garantidas.
d wk Considerando-se x k +1 = x k + d xk , z k +1 = z k + d zk e
d zk r k +1 = r k + d rk , chega-se à condição:
= − J −1 (h ( k ) ) F (h ( k ) ) . (2.9)
d rk
d xk + d zk = 0 .
d yk
Portanto,
d sk d zk = −d xk (2.14a)
Mas não é usual, na prática, determinarmos d (k )
Analogamente tem-se:
através de (2.8), pois a inversão de J ( h ( k ) ) é d rk = d xk (2.14b)
Agora, isola-se d yk e d sk de (2.13e) e (2.13f), ~
A 0 0 0 0 0 d xk tk
respectivamente tem-se: ~
−Q AT 0 0 −I I d wk uk
d yk = Z k−1 ( q k − Yk d zk ) (2.14c) ~k
I 0 I 0 0 0 dz fk
~ = ; (2.16)
d = R (v − S k d )
k
s
−1
k
k k
r
(2.14d) I 0 0 −I 0 0 d rk ok
~
Combinando-se os resultados encontrados em 0 0 Y 0 Z 0 d yk q~ k
(2.14a), (2.14b), (2.14c) e (2.14d) com aqueles vistos ~k
0 0 0 S 0 R ds v~ k
em (2.13), são determinados às direções de
movimento d wk e d xk para o método. onde:
De (2.13b) tem-se: t k = b − Ax k ; u k = Qx k + c − AT w k − s k + y k ;
− Qd xk + A T d wk + Rk−1 (v k − S k d rk ) − Z k−1 ( q k − Yk d zk ) = u k f k = u − xk − z k ; ok = l − xk + r k ;
q~ = µ e − Z kYk e − Dzk D yk e ;
k k

− Qd xk + A T d wk + Rk−1 v k − Rk−1 S k d rk − Z k−1 q k + Z k−1Yk d zk = u k ~


v k = µ ke − R S e − Dk Dke k
(2.17)k x s
pk
As matrizes D xk , D zk , D yk e D sk são matrizes
A d = u − p + R S k d + Z Y k d + Qd + Z q
T k k k −1 k −1 k k −1 k

(d ) ,
w k x k x x k
diagonais, cujos elementos diagonais são k
x i

A T d wk = u k − p k + Z k−1 q k + ( Rk−1 S k + Z k−1Yk + Q)d xk (2.14e) (d ) , (d ) e (d ) , i = 1,


k
z i
k
y i
k
s i
, n ,respectivamente.
Considerando-se:
Note que, no passo corretor, as direções d xk , d zk ,
θ = ( Rk−1 S k + Z k−1Yk + Q ) −1 (2.14f)
dyk e d sk definidas no passo previsor são utilizadas
Multiplicando Aθ em ambos os lados da
(2.14e), tem-se: para a redefinição dos resíduos q ~ k e v~ k em (2.17).
AθAT d wk = Aθ (− p k + Z k−1 q k + u k ) + Aθθ −1 d xk ~ ~
A partir de (2.16) e (2.17) calculam-se d xk , d wk ,
AθAT d wk = Aθ (− p k + Z k−1 q k + u k ) + Ad xk ~ ~ ~ ~
d zk , d rk , d yk e d sk através das seguintes equações:
tk ~
d = ( AθA ) [Aθ (− p + Z q + u ) + t ] (2.14g)
k T −1 k −1 k k k Ad xk = t k (2.18a)
w k ;
~ ~ ~ ~
Reconsiderando-se (2.14e) tem-se: − Qd xk + A T d wk + d sk − d yk = u k ; (2.18b)
AT d wk + p k − Rk−1 S k d xk − Z k−1Yk d xk − Qd xk − Z k−1 q k = u k ~k ~k
dx + dz = f ; k
(2.18c)
A T d wk + p k − Z k−1 q k − ( R k−1 S k + Z k−1Yk + Q )d xk = u k ~k ~k
. dx − dr = o ; k
(2.18d)
Partindo-se de (2.14f): ~k ~k ~k
Y d +Z d =q ; (2.18e)
− θ −1 d xk = u k − A T d wk − p k + Z k−1 q k k z k y
~ ~
θ −1 d xk = AT d wk + p k − Z k−1 q k − u k S k d rk + Rk d sk = v k . (2.18f)
Seguindo os mesmos passos feitos para as
d xk = θ ( AT d wk + p k − Z k−1q k − u k ) . (2.14h) direções do passo previsor, chega-se aos seguintes
Resumindo-se os resultados encontrados em resultados:
~
(2.14), têm-se as seguintes direções de busca do d wk = ( AθA T ) −1 [Aθ ( − p k + Z k−1 q~ k + u k ) + t k ] ;
passo previsor: ~ ~
d xk = θ ( AT d wk + p k − Z k−1 q~ k − u k ) ;
d wk = ( AθA T ) −1 [Aθ (− p k + Z k−1 q k + u k ) + t k ]
~ ~
d xk = θ ( A T d wk + p k − Z k−1 q k − u k ) d zk = − d xk ;
~ ~
d zk = − d xk (2.14) d rk = d xk ; (2.18)
~k −1 ~ k ~k
d = Z ( q − Yk d )
k
y
−1
k
k k
z
d y = Z k ( q − Yk d z ) ;
~ ~
d yk = Z k−1 (q k − Yk d zk ) d k = R −1 (v~ k − S d k ) .
s k k r

2.1.2 - Direções de Busca -Tipo Corretor 2.2 – Comprimento do passo


Analogamente ao realizado em 2.1.1, determina- Uma vez que as direções de busca do tipo
se a direção de busca do passo corretor, denominada corretor são obtidas em (2.18), tem-se a condição de
~ se mover para um novo ponto
de d ( k ) , resolvendo-se o seguinte sistema linear:
~ ~ ( x k +1 , w k +1 , z k +1 , r k +1 , y k +1 , s k +1 ) garantindo-se que
J ( h ( k ) )d ( k ) = − F (h ( k ) ) ; (2.15)
s k +1 > 0 , z k +1 > 0 , y k +1 > 0 e r k +1 > 0 . A restrição
onde, F (h ( k ) ) é obtido considerando-se aproximações
de não-negatividade destas variáveis requer um
de 2ª ordem em (2.7a), consideradas, a partir do
controle do passo a ser dado em cada direção obtida,
passo previsor, tal que (2.15) é equivalente a:
assim, consideram-se as variáveis definidas no passo
corretor por:
~
x k +1 = x k + β P d xk (2.19a)
;
~
w k +1 = w k + β D d wk ; (2.19b) f k = u − xk − z k ; ok = l − xk + r k ;
~ q k = µ k e − Z k Yk e ; v k = µ k e − Rk S k e e
s k +1 = s k + β D d sk ; (2.19c)
~ θ = ( R S k + Z Yk + Q ) , onde S k , Z k , Yk e Rk
−1 −1 −1
r k +1 = r k + β P d rk ; (2.19d) k k

~ são as matrizes diagonais cujas componentes


y k +1 = y k + β D d yk (2.19e)
; diagonais são s ik , z ik , y ik e ri k ,respectivamente.
~ k Passo Corretor
z = z + βPdz .
k +1 k
(2.19f)
onde: Calcule:
v~ k = µ k e − X k S k e − D xk Dsk e
~ αz k αr k ~ ~
~
β P = Min 1,− ~ ki ,− ~ ik tal que d zki , d rki < 0 (2.20a) q = µ e−Z Y e−D D e.
k k k k

d zi d ri k k z y

Observação: para melhor desempenho e


e convergência do método é interessante considerar
~ αs k αy k ~ ~ parâmetros primal e dual diferentes dados por:
β D = Min 1,− ~ ki , − ~ ki tal que d ski ; d yki < 0 (2.20b)
d si d yi (r k ) T s k ( z k )T y k
µ k1 = ; µ k2 = e fazer
onde 0 < α < 1 . n n
µ k = Min{µ k1 , µ k2 }, para a determinação de novas
2.3 – Critério de Parada direções e soluções.
Ao contrário do método Simplex, os algoritmos
de pontos interiores nunca encontram soluções Passo 3 (Verificando a otimalidade): Se
exatas, para os problemas de programação linear ou uk
quadrática. Por isso, o algoritmo precisa usar um µ k < ε1 e < ε2
critério de parada para decidir quando a iteração Qx x + c + 1
corrente está próxima o suficiente da solução ótima, então PARE. A solução é ótima. Caso contrário vá
baseando-se em [22]. para a etapa seguinte.
Muitos algoritmos consideram uma boa solução
aproximada àquela que possui os resíduos, primal, Passo 4 (direções de translação - previsor):
t k = b k − Ax k , dual, u k = Qx k + c − A T w k − s k + y k e Determine as direções de busca d xk , d wk , d zk , d rk , d yk
a métrica dual µ suficientemente pequenos. Para esse e d sk do passo previsor através de (2.14).
fim pode-se usar medidas relativas diminuindo os
problemas de escala dos dados [22]. Testes típicos
Passo 5 (direções de translação - corretor): Calcule
para uma solução (x k , w k , z k , r k , y k , s k ) são: as direções de busca do passo corretor através de
tk b − Ax k (2.18).
= ≤ ε1 ; (2.21a)
b +1 b +1
Passo 6 (Encontrando o comprimento do passo):
uk Qx k + c − AT w k − s k + y k ~
= ≤ ε 2 ; (2.21b)
Calcule o comprimento do passo primal β Pk e dual
Qx k + c + 1 Qx k + c + 1 ~
β Dk através de (2.20a) ou (2.20b), utilizando
onde ε 1 e ε 2 são tolerâncias pré-definidas. α = 0.995 .
Naturalmente outros critérios podem ser adotados em
concordância com a aplicação a um problema Passo 8 (Determinando um novo ponto):
específico. Para outros tipos de critério de parada, ~
x k +1 = x k + β P d xk
veja [2] e [4]. ;
~
w k +1 = w k + β D d wk ;
2.4 – Algoritmo Primal-Dual para Variáveis ~
s k +1 = s k + β D d sk ;
Canalizadas com Procedimento Previsor- ~
Corretor. y k +1 = y k + β D d yk
;
~
Passo 1 (iniciando o algoritmo): Ajuste k = 0 . z k +1 = z k + β P d zk ;
~
Escolha um ponto arbitrário r k +1 = r k + β P d rk .
( x 0 ; w 0 ; z 0 , y 0 , r 0 , y 0 , s 0 ) ∈ Ω 0 e escolha ε 1 e
Faça k ← k + 1 e volte para o Passo 2.
ε2 números positivos suficientemente pequenos.
3 - Aplicação ao Modelo de Despacho Econômico
Passo 2 (Cálculos intermediários): O modelo geral de otimização para o Despacho
Passo Previsor Econômico Clássico, o qual é de definido sem se
(x k )T s k + (z k )T y k considerar pontos de válvula, equivalentemente ao
Calcule: µ k = ; t k = b − Ax k ; (PDE) visto, é apresentado por:
n
u k = Qx k + c − AT w k − s k + y k ;
Minimizar Fe = n
i =1 FePVI = a i Pi 2 + bi Pi + c i A aplicação do algoritmo visto ao problema
definido nesta seção determinou os resultados, visto
Sujeito a n
i =1 Pi = PD + PL (3.1) na tabela 2. Nesta tabela apresentam-se, para
Pi ≤ Pi ≤ Pi
Min Max
comparação, alem das soluções obtidas pelo Método
Para o problema (3.1) tem-se que: Fe é a função Primal-Dual com procedimento Previsor-Corretor
(PDPC), aquelas encontradas pelos métodos, do
custo total de geração do DE com, FePVI ,
Gradiente (MG) e Algoritmo Genético Híbrido
representando os custos de cada unidade geradora i, (AGH) e Algoritmo Genético Co-Evolutivo (Co-
sem considerar o efeito do ponto de válvula; ai, bi, e Evolutivo). As soluções dadas pro MG , AGH e Co-
ci são os coeficientes característicos da função custo; Evolutivo são encontradas em [17]. Optou-se por não
Pi 's correspondem as potencias nas quais as unidades colocar-se nesta tabela os tempos de CPU, pois estes
geradoras devem operar; PD é o valor da demanda de são insignificantes para os métodos abordados.
energia; PL representa as perdas na transmissão;
MG AGH Co- PDPC
Resultados
Pi Min e Pi Max são, respectivamente, os limites evolutivo
operacionais inferiores e superiores de saída das P1 (MW) 643,8791 651,1451 735,626 680,0000
unidades de geração termoelétrica. P2 (MW) 330,1394 319,9820 337,4955 333,6533
Uma implementação do algoritmo visto, P3 (MW) 309,5107 320,4637 292,6257 314,0267
elaborada em pascal 7.0, foi aplicada para o problema P4 (MW) 124,5300 137,7761 146,7135 117,7600
definido na tabela 1, encontrado em [9] e [17]: P5 (MW) 145,1631 156,6884 177,3462 157,0133
P6 (MW) 150,7257 147,0077 131,5521 147,2000
Pmín Pmáx
Gerador a b c P7 (MW) 160,1543 159,1650 154,1975 166,8267
(MW) (MW) P8 (MW) 172,1578 145,3784 159,5506 157,0133
1 0 680 0.00028 8.1 550 P9 (MW) 176,9499 151,5512 167,3398 161,9200
2 0 360 0.00056 8.1 309 P10 (MW) 62,5544 82,2596 60,67783 68,69333
3 0 360 0.00056 8.1 307 P11 (MW) 92,8891 86,3206 74,68194 58,88000
4 60 180 0.00324 7.74 240 P12 (MW) 62,6343 82,8938 56,53708 68,69333
5 60 180 0.00324 7.74 240 P13 (MW) 88,7153 79,3682 25,65585 88,32000
6 60 180 0.00324 7.74 240 2.520,00 2.520,00 2.520,00 2.250,00
Σ Pi (MW)
7 60 180 0.00324 7.74 240
8 60 180 0.00324 7.74 240 TABELA 2 – Resultados obtidos
9 60 180 0.00324 7.74 240
10 40 120 0.00284 8.6 126 Resultados Função Objetivo
11 40 120 0.00284 8.6 126 MG 24.703,32
12 55 120 0.00284 8.6 126 AGH 24.111,69
13 55 120 0.00284 8.6 126 Co-Evolutivo 24.072,03
Tabela 1 – Dados de um Problema de Despacho PDPC 24.093,35
Econômico TABELA 3 – Valores da Função Objetivo

3.1 – Adaptação do Problema de Despacho Apresentam-se, na tabela 3, os valores da Função


Econômico ao algoritmo visto. Objetivo obtidos através da minimização feita pelos
Para o exemplo de Problema de Despacho métodos citados. Considerando-se ainda os resultados
Econômico visto na tabela 1 são feitas as seguintes encontrados em [9], através do Algoritmo Genético
Atávico Híbrido (AGAH), encontra-se como valor ótimo
definições, no sentido de adaptar este problema ao
da Função Objetivo, para o PDE definido pela Tabela 1, o
algoritmo visto na seção anterior, desenvolvido para valor de 24.052,34, o qual é o melhor resultado obtido
Problemas de Programação Quadrática, com comparando-se com aqueles apresentados na Tabela 3.
restrições lineares de igualdade e variáveis
canalizadas: 4 – Conclusão
Qi ,i = 2a i e Qi , j = 0, se i ≠ j Neste trabalho fez-se uma aplicação da
Pi = xi ; Pi MIn = l i e Pi Max = u i implementação computacional de um Método
Primal-Dual de Pontos Interiores do tipo Previsor-
Ai , i = 1 e Ai , j = 0, se i ≠ j ; onde i, j = 1, ..., n; Corretor, elaborada em pascal 7.0, em Problema de
b = PD + PL . Despacho Econômico, encontrados na Engenharia
Consideram-se, ainda, as seguintes soluções para Elétrica, os quais, no caso de não se considerar
inicialização do método: b = PD + PL = 2520 , onde pontos de válvula, são equivalentes ao problema de
minimizar funcionais quadráticos, restritos a sistemas
PD = 2520 é o valor da demanda e PL = 0 , ou seja,
lineares de igualdade e variáveis canalizadas.
não há perda na transmissão; As soluções obtidas em alguns exemplos testados
x0 = (645,340,320,120,160,150,170,160,165,70,60,70,90) foram muito próximas daquelas encontradas em [9] e
w0 = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) ; [17]. Os resultados obtidos, apresentados na tabela 3,
mostram a eficiência do método PDPC para a resolução
y0 = (30, 30,30,30,30,30,30,30,30,30,30,30,30). de problemas de Despacho Econômico, comparados
com os métodos considerados em [9] e [17], que era o [11] I.J. Lustig, On Implementing Mehrota’s
objetivo deste trabalho. Isto incentiva a busca de Predictor-Corretor Interior Point Method for Linear
melhoria na implementação feita para a obtenção de Programming, Rutcor Research Report, Rutgers
melhores resultados. Neste sentido, tem-se a University, RRR#26-90, 1990.
possibilidade de explorar a inclusão de funções
potenciais à função quadrática minimizada, além de [12] N. Megiddo, On the complexity of linear
procedimentos do tipo previsor-corretor, bem como, programming, in Advances in Economical Theory,
processos híbridos envolvendo o Método Primal- ed. t Bewely, Cambridge University Press,
Dual e Algoritmos Genéticos encontrados em [9] e Cambridge, 225-268, 1987.
[17], para se investigar novos e melhores resultados.
[13] N. Megiddo e M. Shub, Boundary behavior of
5 - Referências interior point algorithms in linear programming,
Mathematics of Operations Research 14, 97-146,
[1] I. Adler, N. Karmakar, M. Resende e G. Veiga, 1989.
An Implementation of Karmakar's algorithm for
linear Programming, Math Programming-pp. 297- [14] R.D.C. Monteiro e I. Adler, Interior Path-
335, 1989. Following Primal-Dual Algorithms. Part I: Linear
Programming, Part II: Convex Quadratic
[2] B. Borches, J. E. Mitchel, “Using an Interior Point
Method in a Branch an Bound Algorithm for Integer
Programming, Mathematical Programming, 44, 27-
Programming”, Technical Report 195, Mathematical 66, 1989.
Sciences, Resselaer Polytechnic Institute, Troy, NY 12180,
March 1991, Revised July 7, 1992. [15] R. C. Monteiro, I. Adler e M. C. Resende, A
polynomia-time primal-dual affine scaling algorithm
[3] I. I. Dikin, Iterative solution of problems of linear for linear and convex quadratic programming and its
and quadratic programming (in Russian), Doklady power series extension, Mathematics of Operations
Akademiia Nauk USSR 174, 747-748, Soviet Research 15, 191-214, 1990.
Mathematics Doklady 8, 674-675, 1967.
[16] J. Renegar, A polynomial-time algorithm based
[4] S. C. Fang e S. Puthenpura, “Linear Optimization on Newton´s method for linear programming,
and Extensions: Theory and Algorithms”, Prentice- Mathematical Programming 40, 59-93 , 1988.
Hall, Englewood Cliffs, New Jersey, 1993.
[17] M.M.A. Samed, “Um Algoritmo Genetico
[5] C. Gonzaga, An algoritthm for solving linear Hibrido Co-Evolutivo para Resolver Problemas de
programming problems in O(n3L) operations in Despacho”, Tese de Doutorado, UEM, Depto. de
Progress in Mathematical Programming: Interior- Engenharia Química, Agosto de 2004, 167 p.
Point and Related Methods, ed. N. Megido, Springer-
Verlag, New York, 1-28, 1989. [18] M.J.C Steinberg; T.H. Smith, “Economic
Loading of Power Plants and Eletric Systems”,
[6] C. Gonzaga, Polynomial affine algorithms for MacGraw-Hill, 1943.
linear programmimg, Mathematical Programming
49, 7-21, 1990. [19] P. M. Vaidya, An algorithm for linear
programming which requires O(((m + n)n2 + (m +
[7] H. H. Happ, Optimal Power Dispatch - n)1.5n)L) arithmetic operations, Mathematical
Comprehensive Survey, IEEE Transactions on Programming 47, 175-2001, 1990.
Power Apparatus and Systems, 3 Vol.96, (1977) 841-
854. [20] R.J. Vanderbei, M. S. Meketon, e B. Freedman,
A., A modification of Karmarkar’s linear
[8] N. Karmakar,, A new polynomial time algorithm programming algorithms, Algorithmica 1, 395-407,
for linear programming, Combinatoria 4, 373-395, 1986.
1984.
[21] Y. Ye, An O(n3 L) potential reduction algorithm
[9] J.O. Kim, D. J. Shin, J.N. Park and C. Singh, for linear programming, Contemporary Mathematics,
Atavistic Genetic algorithm for economic dispatch 114, 91-107, 1986.
with valve point effect, Eletric Power Systems
Research, 62, (2002) 201-207. [22] S. J. Wright, Primal-Dual Interior Point
Methods, SIAM Journal, 289-304, 1997.
[10] M. Kojima, S. Mizuno e A. Yoshise, A primal
dual - interior point method for linear programming, [23] Y.C. Wu, A.S. Debs e R.E. Marsten, A direct
it Progress in Mathematical Programming: Interior- nonlinear Predictor-Corrector Primal-Dual Interior
Point and Related Methods, Ed. N. Megiddo, Point Algorithm for Optimal Power Flows, IEEE
Springer-Verlag, New York, 29-48, 1989. Transactions on Power Systems, 9, No.2, 876-883,
1994.

You might also like