Está en la página 1de 6

Despacho Econmico de Carga mediante el uso de

Algoritmos Genticos en el Software Digsilent.


Gonzalo Oscar Eulate Choque
Abstract.
This paper presents a proposal for implementation in software
DIgSILENT POWER FACTORY Economic Load Dispatch
using Genetic Algorithms in Electrical Power Systems,
application case of 11 nodes.
Keywords Economic Dispatch, optimizations techniquesobjective function, genetic algorithms.

I.
Resumen.
El presente trabajo presenta una propuesta de implementacin
en el software DIgSILENT POWER FACTORY el clculo de
Despacho Econmico de Carga mediante el uso de
Algoritmos Genticos en Sistemas Elctricos de Potencia caso
aplicacin de 11 nodos.
II.
Introduccin.
El Despacho Econmico de Carga, es la asignacin de la
potencia que debe generar cada una de las plantas de
generacin disponibles, de tal manera que el costo del
suministro de energa a la carga es minimizado, satisfaciendo
restricciones de la red y operacin del sistema elctrico de
potencia [2].
El software Digsilent Power Factory, es una herramienta
integrada para el anlisis de sistemas elctricos de potencia,
caracterizando tcnicas confiables y flexibles de modelado y
algoritmos. Ha sido desarrollado en la nueva tecnologa de
programacin orientada a objetos y lenguaje de programacin
C++. Entre las funciones principales se pueden mencionar;
Flujo de potencia AC/DC, Anlisis de cortocircuito VDE/IEC,
Simulacin de Transitorios Electromagnticos EMT,
Coordinacin de Rels de proteccin, Despacho Econmico,
Lenguajes DSL++ y DPL, entre otras funciones.
Todas las funciones tienen acceso a una base de datos
relacionales, rpidos y comunes, con un sistema integrado de
manejo de casos de estudio y escenarios de sistemas. En
Bolivia la base de datos del Sistema Interconectado Nacional
es actualizada en forma semestral en el software Digsilent y
est a cargo del Comit Nacional de Despacho de Carga.
El programa utiliza un ambiente de trabajo muy similar al que
utiliza Windows.
El software DIgSILENT dispone de un modulo para
programacin DPL (Digsilent Program Language).
La plataforma de programacin DPL (Digsilent Program
Language), tiene la caracterstica de declarar previamente
cada una de las variables a utilizar. Por lo cual es necesario
precisar los diferentes tipos de variables [3].
Variable set, este tipo de variable define a aquellas que
representar a los objetos, por ejemplo los generadores del
sistema elctrico de potencia.
Variable object, define a cada uno de los elementos definidos
en la variable set.

Variable string, define las variables que almacenan cadenas de


caracteres.
Variable doubl, define las variables numricas.
Variable int, define las variables enteras numricas.
ElmSym corresponde al objeto maquina sincrnica
(generador) que se encuentra modelada del sistema elctrico
de potencia.
Los mtodos utilizados para las variables tipo object son:
Objeto: pgini es el mtodo que retorna el valor de la potencia
activa generada.
En DPL, administrar datos en matrices es una gran ventaja.
Las matrices que se deseen usar en un Comando DPL (DPL
Comand) deben crearse dentro del mismo, esto es posible
entrando en el Contenido (Contents) del Comando DPL y
creando un objeto de la forma *.IntMat.
En DPL, el manejo de las matrices es muy diferente al uso
general.
Mtodo Init, mediante este mtodo se asigna las dimensiones
que tendr la matriz.
Mtodo Set, Mediante este mtodo se puede asignar un valor
de tipo double o int a un elemento de la matriz en DPL. La
forma de asignar un valor v al elemento de la primera
columna y la primera fila de la matriz M es M.Set(1,1,v), a
manera de ejemplo.
Mtodo Get, Este mtodo tiene como objetivo asignar a una
variable, previamente declarada, el valor correspondiente a un
elemento de una matriz. Usando el ejemplo anterior, su uso
adecuado es v = M.Get(1,1).
III.

Formulacin Matemtica del Despacho


Econmico de Carga.
Considerando un sistema elctrico de potencia con N
nodos, donde se tienen m nodos PQ y n nodos PV, el
Despacho Econmico de Carga, es la asignacin de la
potencia que debe generar cada una de las plantas de
generacin disponibles, de tal manera que el costo del
suministro de energa a la carga es minimizado, satisfaciendo
restricciones de la red y operacin del sistema elctrico de
potencia [2], [5].
La formulacin general: minimizar
n

CT ( P g ) = Ci (Pgi) 1
i=1

Sujeto a las restricciones:

Pgmin Pgi Pgmax 2


V min V i V max 3

i=1

i=1

Pgi= Pd i + PL 4
Donde:

PL = Prdidas de potencia activa en MW.


Pg = Potencia activa generada en MW.
Pd = Potencia activa demandada en MW.
Las variables son las potencias generadas en los distintos
generadores que tienen una funcin de costos.
IV.
Algoritmos Genticos.
Los algoritmos genticos, son algoritmos de bsqueda
basados en el mecanismo de seleccin natural y teora
gentica Goldberg (1989) [1].
Los algoritmos genticos son mtodos adaptativos que son
usados para resolver problemas de bsqueda y optimizacin.
Estn basados en el proceso gentico de los organismos vivos.
A lo largo de las generaciones, las poblaciones evolucionan
en la naturaleza de acorde con los principios de la seleccin
natural y la supervivencia de los ms fuertes, postulados por
el bilogo Charles Darwin (1859) [1], [6].
El Algoritmo Gentico Simple, tambin denominado
Cannico, se representa en el pseudo cdigo de algoritmos
genticos [7]. Como se ver a continuacin, se necesita una
codificacin o representacin del problema, que resulte
adecuada al mismo. Adems se requiere una funcin de ajuste
o adaptacin al problema, la cual asigna un nmero real a
cada posible solucin codificada. Durante la ejecucin del
algoritmo, los padres deben ser seleccionados para la
reproduccin, a continuacin dichos padres seleccionados se
cruzarn generando dos hijos, sobre cada uno de los cuales
actuar un operador de mutacin. El resultado de la
combinacin de las anteriores funciones ser un conjunto de
individuos (posibles soluciones al problema), los cuales en la
evolucin del Algoritmo Gentico formarn parte de la
siguiente poblacin.
Existen cinco factores que influyen en el desempeo de un
algoritmo gentico:
El mtodo de la representacin de las soluciones
(como son codificados los cromosomas).
Una tcnica para la generacin de una poblacin
inicial de posibles soluciones (por lo general se utiliza un
proceso aleatorio).
Una funcin de evaluacin que nos mida la calidad
de las soluciones, clasificando las soluciones en trminos de
su aptitud.
Un conjunto de operadores genticos que alteran la
composicin gentica de los individuos de la poblacin a
travs de las generaciones.
Configuracin de los valores de los parmetros del
algoritmo (tamao de la poblacin, probabilidad de
cruzamiento, probabilidad de mutacin, criterio de parada,
etc.).
PROCEDURE ALGORITMOS GENTICOS
begin
t0
Inicializar P(t);

Evaluar P(t);
while (no termina la condicin) do
begin
recombinar P(t) para crear C(t);
evaluar C(t);
seleccionar P(t+1) de P(t) y C(t);
tt+1;
end
end
V.1 Operadores Genticos.
La gran mayora de las variantes de los algoritmos genticos
utilizan como operadores genticos la seleccin, cruza y
mutacin.
V.1.1 Operador de Seleccin.
La contribucin de la seleccin en el funcionamiento de un
algoritmo gentico es concentrar la bsqueda de la solucin
ptima en las regiones prometedoras del espacio de bsqueda.
Si el tipo de seleccin es muy exigente, la bsqueda terminar
prematuramente y si el tipo de seleccin es muy dbil, el
algoritmo converger lentamente a la solucin. En general se
recomienda comenzar con una presin selectiva baja y utilizar
una presin selectiva alta a medida que avanza en el nmero
de generaciones [6], [4].
Las principales alternativas propuestas para este operador son;
seleccin proporcional (mtodo de la ruleta), Seleccin pro
muestreo estocstico universal, seleccin por ranking,
seleccin por torneo.
V.1.2 Operador de Cruzamiento (Crossover).
El proceso de bsqueda es realizado en fases consecutivas de
explotacin y exploracin. Por un lado, la seleccin dirige la
bsqueda hacia reas prometedoras y por el otro, los
operadores de combinacin pretenden explorar el espacio del
problema generando nuevas soluciones a partir de las
existentes, introduciendo un componente de innovacin al
proceso [1], [4], [7].
El cruzamiento o cruza es una operacin de combinacin
sexual de cromosomas entre dos individuos. La idea es
segmentar a los padres en dos o ms fracciones para despus
intercambiar las partes para formar los nuevos individuos. Las
principales variantes para este operador son las siguientes:
R Cruzamiento en un punto.
Se selecciona un punto de corte que corresponde a una
posicin al azar entre 1 y la longitud del cromosoma y se
intercambian los segmentos anlogos de las dos cadenas.
- Cruzamiento en dos puntos.
Se eligen dos puntos de corte al azar y se intercambian los
segmentos medios de ambas cadenas, se considera a los
extremos de la cadena como sitios contiguos.
- Cruzamiento uniforme.
Para cada posicin de bit de una cadena a generar, se elige
aleatoriamente se elige el bit de la misma posicin de alguna
de las cadenas generadoras.
V.1.3 Operador de Mutacin.
El operador de mutacin, que proporciona un elemento de
aleatoriedad en la vecindad de los individuos de la poblacin.
El principal objetivo de este operador, es promover una
variacin mediante saltos aleatorios en el espacio de bsqueda
[6], [7]. Una forma tpica de la mutacin consiste en decidir
con una probabilidad determinada para cada gen del nuevo
individuo si se altera o no el valor que presenta.

V.1.4 Criterio de Convergencia de Aptitud.


Puede suceder que existan soluciones equivalentes o cuasi
equivalentes a un problema, que obtengan valores de aptitud
similares. En ese caso, es probable que no haya una solucin
que se imponga en la poblacin (y el criterio de terminacin
por convergencia de identidad nunca se cumpla) [5], [16].
Este criterio no espera a que la poblacin se componga
mayoritariamente de una sola solucin, sino que finaliza la
ejecucin del algoritmo cuando los valores de aptitud de un
determinado porcentaje de las soluciones son iguales, o
difieren en un pequeo porcentaje. Por ejemplo, cuando el
90% de las soluciones tenga valores de aptitud que no difieran
en ms de un 1%.
V.1.5 Manejo de Restricciones.
Por lo general en problemas de optimizacin sujeto a
restricciones, los operadores genticos generan descendientes
no factibles. Para corregir este problema, se han propuesto
varias tcnicas que puedan tomar en cuenta las restricciones
en los algoritmos genticos. Estas tcnicas pueden ser
clasificadas en los siguientes mtodos:
Mtodo de Rechazo o Eliminacin.
Mtodo de Reparacin.
Mtodo de Penalizacin.
El mtodo de rechazo consiste en eliminar los cromosomas
generados que no cumplan las restricciones.
El mtodo de reparacin consiste en tomar cromosomas no
factibles y mediante algn procedimiento de reparacin,
introducir nuevamente este cromosoma en el conjunto de
soluciones factibles.
El mtodo de penalizacin, es la tcnica ms utilizada para
problemas con restricciones. Esta tcnica transforma un
problema restringido en un problema no restringido
penalizando las soluciones no deseadas [4], [6].
V.1.6 Clasificacin de Funciones de Penalizacin.
Existen entonces mtodos destinados a contemplar la
existencia de restricciones en el problema:
Se modifica la funcin de adaptacin, agregndoles trminos
o factores que tengan en cuenta si la solucin cumple las
restricciones. En caso de no cumplirlas, disminuye el valor de
la aptitud de la solucin considerada, de modo que otra con
similar aptitud que si cumpla la restriccin, tenga mejores
probabilidades de sobrevivir.
- Penalizaciones Estticas.
Las penalizaciones no cambian con la cantidad de
generaciones.
- Penalizaciones Dinmicas.
Las funciones de penalizacin cambian con las generaciones,
de acuerdo a un esquema prefijado. En general, al principio
las penalizaciones son suaves o inexistentes, aceptando
cualquier solucin.
Conforme avanza la cantidad de generaciones, se van
poniendo ms restrictivas y cerca del final de la corrida, solo
aceptan soluciones que cumplan todas las restricciones,
penalizando severamente a las dems.
- Penalizaciones Adaptativas.
Uno o ms factores de las funciones de penalizacin cambian
de acuerdo al progreso de la corrida, de acuerdo a la cantidad
de soluciones factibles que se encuentran en la poblacin, y la
cantidad de generaciones restantes.

En forma general la funcin de adaptacin [4] que toma en


cuenta las restricciones es la siguiente:

G=w1 F +w 2 f 2+ w3 f 3 5

Donde:
F = Es la funcin de evaluacin original.

f 2yf3

= Son las funciones asociadas a las restricciones

del problema.

w 1 , w 2 y w3

= Son los pesos que pueden tomar valores

de acuerdo al tipo de penalizacin a utilizar.


V.
Implementacin de los Algoritmos
Genticos en la Propuesta de Solucin.
VI.1 Representacin.
La cantidad de variables al despacho econmico de carga,
corresponde a las magnitudes de las potencias activas
generadas en las barras de tipo PV, es decir la cantidad de
variables desconocidas es igual a n.

n=NPV 6
Donde:
NPV = Nmero de barras de tipo PV.
La potencia generada en la barra SLACK se obtiene a partir
del flujo de carga ejecutado en el software DIgSILENT, que
garantiza el cumplimiento del balance de potencias descrito
en 2).
Debido a la cantidad de variables incgnitas, que varan en
funcin a la cantidad de generadores convocados al despacho
econmico de carga, se define la codificacin real que adems
requiere poco requerimiento de memoria.
Para fines de facilitar la programacin, la cantidad de
variables es igual a la cantidad de generadores 1 (que
corresponde al generador que cierra el balance de potencias).

Pg[Pg1 , Pg2 PG N 1]
Donde:

Pgi

= Potencia activa de generador i.

Pgmin Pg i Pg max 7

VI.2 Poblacin Inicial.


La poblacin inicial es generada en forma aleatoria, tomando
en cuenta los lmites de la potencia activa generada de
acuerdo a la siguiente expresin:

pobi ,1.. N =Pgmin +rand ( Pg maxPgmin ) 8


PgSLACK =F ( Pgi , i , Vi ) 9

La ltima expresin significa que el valor de la potencia


generada en la barra SLACK se obtiene a partir de flujos de
carga, que considera prdidas en las lneas de transmisin,
lmites de tensin.
Para que sea considerada una posible solucin,
adicionalmente debe satisfacer las siguientes condiciones:

PSLACK >0 10

Con el cumplimiento de estas condiciones, se garantiza


soluciones factibles y el cumplimiento del balance de
potencias:
n

i=1

i=1

Pgi= Pd i + PL 11

VI.3 Funcin de Aptitud.


La funcin de aptitud propuesta en el presente trabajo,
corresponde a la funcin que toma en cuenta las restricciones
de la expresin 13) y tambin considera la penalizacin
esttica [4].
A continuacin se presenta la funcin de aptitud utilizada a lo
largo del presente trabajo:
n

Fmin = C i ( Pgi)+w 1+ w2 12
i =1

Donde:
El valor del peso

w 1 , se toma como valor de 600 cuando

no cumple con la restriccin de generacin en el clculo de la


potencia en el nodo slack.
El valor del peso

w 2 se toma como valor de 1000, cuando

no se cumple con la restriccin del balance de energa


(cuando la demanda es mayor a la potencia generada).
VI.4 Operadores Genticos.
- Criterio de Seleccin.
Para la seleccin de los individuos que pueden ser utilizados
para la generacin de la siguiente descendencia, se ha
utilizado el mtodo de Ranking, adems permite que los
mejores individuos pasen siempre a la siguiente generacin.
Se considera que el elitismo es muy importante para
conseguir resultados satisfactorios.
- Operador de Cruzamiento.
Se ha utilizado el cruce lineal de Wright [1], [4], [6], este tipo
de operador de cruzamiento, toma dos individuos a y b
como progenitores, para generar tres descendientes c, d y
e, la forma de generacin es la siguiente:

pobc = pob a + ( 1 ) pob b 13

pobd =( 1+ ) poba pob b 14


Donde:
= Es un valor aleatorio que vara entre 0 y 1.
Se toman en cuenta aquellos individuos que cumplen con la
siguiente restriccin:

Pg i >0 15
Con el cumplimiento de estas condiciones, se garantiza
soluciones factibles, porque las potencias activas en un
sistema elctrico de potencia es positivo y mayor a cero.
Los individuos que no cumplen con la anterior restriccin,
son rechazados.
Se ha considerado que el 40% de la poblacin, es utilizado
para generar el 60% de las posibles soluciones.
No se ha utilizado el operador de mutacin en el presente
trabajo.
VI.6 Sustitucin de la Poblacin.
Para la insercin de individuos en la siguiente generacin, se
ha utilizado la insercin elitista, es decir los mejores
individuos pasan a ser miembros de la poblacin de la
siguiente generacin [1], [7].
Se ha considerado que en cada generacin el 20% de la
poblacin sea reemplazada por una poblacin generada en
forma aleatoria. El 20% de la poblacin a ser reemplazado
corresponde a los individuos peores que resultan despus de
la evaluacin de aptitud.
VI.7 Criterio de Terminacin.
El criterio de terminacin usado, corresponde al criterio de
cantidad de generaciones [1], [4]
VI.8 Funcionamiento.
A continuacin se presenta el diagrama del flujo gentico del
despacho econmico de carga en el software DIgSILENT
POWER FACTORY.
Diagrama N 1: Diagrama de flujo del algoritmo gentico
utilizado.

Fuente: Elaboracin propia.


El programa fue escrito en el software DIgSILENT POWER
FACTORY.
A continuacin se presentan los parmetros utilizados para el
clculo de flujos de carga con algoritmos genticos.
Tabla N 1: Datos de Potencias.

Fuente. Elaboracin propia.


En la siguiente grfica se presenta el comportamiento del
costo total de generacin en funcin al nmero de
generaciones.

Fuente: Elaboracin propia.

Grfico N 1: Costo total en funcin al nmero de


generaciones.

Tabla N 2: Datos de Potencias Demandadas.

Fuente. Elaboracin propia.


Tabla N 3: Datos de Parmetros de las Lneas.

Fuente. Elaboracin propia.


Se presentan a continuacin los resultados obtenidos
utilizando la metodologa propuesta y que han sido
comparados con los resultados obtenidos utilizando el
Mathpower:
En el siguiente cuadro se presentan los resultados del
Despacho Econmico de carga del caso analizado.
Tabla N 4: Resultados del Despacho Econmico.

Fuente: Elaboracin propia.


De acuerdo al anterior grfico, el costo total de generacin
permanece constante a partir de la generacin 12.
VI.
Conclusiones.
De acuerdo a los resultados que han sido obtenidos en el
clculo del despacho econmico implementado en el software
DIgSILENT POWER FACTORY, se verifica el uso del DPL
para el despacho econmico, asimismo se verifica el uso de
matrices en el DPL y el manejo de parmetros elctricos con
programacin.
IX. Referencias.
[1]. Goldberg David E, Genetic Algorithm in Search
Optimization, and Machine Learning, Adisson-Wesley
publishing company, inc. New York. U.S.A. january 1989.
[2]. Msc. Ing. Armengol Blanco Benito, Operacin
Econmica y Planificacin de Sistemas Elctricos de
Potencia, UTO, Oruro Bolivia, 2007.
[3]. A. Ataupillco M., J. L. Cabrera C. Student IEEE, N. H.
Lpez Student IEEE, S. E. Trujillo A., Student IEEE,
Implementacin en DIgSILENT Power Factory de
Algoritmos Genticos para la Solucin de Flujo de Potencia,
FIEEE-UNI, Per, 2010.
[4]. Gonzalo Oscar Eulate Choque, Anlisis de Flujos de
Carga mediante el uso de Tcnicas Heursticas, Tesis de
Maestra UMSA, La Paz Bolivia, marzo 2013.
[5]. Gonzalo Oscar Eulate Choque, Condiciones de
Operacin Optima en Sistemas Hidrotrmicos, Proyecto de
grado UMSA, La Paz Bolivia, diciembre 1997. [10] Harper,

Enriquez, Anlisis Moderno de Sistemas Elctricos de


Potencia: Soluciones de flujos de potencia, Operacin
econmica de sistemas de potencia. Impreso en Mxico:
MacGraw-Hill/Limusa, 1981, 574 pginas.
[6] Dr. Adrian Will Algoritmos Genticos y Optimizacin
Heurstica, apuntes de clases. Grupo de Aplicaciones de
Inteligencia Artificial Universidad Nacional de Tucumn, 290
pginas.
[7] Xiaodong YIN, Application of Genetic Algorithms to
Multiple Load Flow Solution Problem in Electrical Power
Systems,
Laboratoire
dElectrotechnique
et
d
Instrumentation Catholic University of Louvain Place du
Levant, December 1993, 6 pginas.
Gonzalo Oscar Eulate Choque

Ingeniero Electricista, Docente Universidad Mayor de San


Andrs, Trabaja en el Departamento de Planificacin de la
Empresa Electricidad de La Paz S.A., reas de inters:
Regulacin de Electricidad, Inteligencia Artificial, Sistemas
Elctricos de Distribucin, Senior Member IEEE. Estudios de
Postgrado en Administracin de Empresas, Planificacin,
Proteccin de Redes de Distribucin, Mtodos Numricos de
la Simulacin y Modelacin, Anlisis de los Regmenes de las
Redes de Distribucin, Economa Informtica, Ingeniera del
Software.
Pgina web: http://geulate.okicode.com
Email: geulate@gmail.com

También podría gustarte