Sie sind auf Seite 1von 16

PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA

Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA


Figueroa Puma

|
vfrbbtr

ING. ELECTRICA UNSA Página 1 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

INTRODUCCIÓN
En informática, la programación dinámica es un método para reducir el tiempo de
ejecución de un algoritmo mediante la utilización de subproblemas superpuestos y
subestructuras óptimas, como se describe a continuación.

El matemático Richard Bellman inventó la programación dinámica en 1953 que se utiliza


para optimizar problemas complejos que pueden ser discretizados y secuencializados.

Una subestructura óptima significa que se pueden usar soluciones óptimas de


subproblemas para encontrar la solución óptima del problema en su conjunto. Por
ejemplo, el camino más corto entre dos vértices de un grafo se puede encontrar calculando
primero el camino más corto al objetivo desde todos los vértices adyacentes al de partida,
y después usando estas soluciones para elegir el mejor camino de todos ellos. En general,
se pueden resolver problemas con subestructuras óptimas siguiendo estos tres pasos:

Dividir el problema en subproblemas más pequeños.


Resolver estos problemas de manera óptima usando este proceso de tres pasos
recursivamente.
Usar estas soluciones óptimas para construir una solución óptima al problema original.
Los subproblemas se resuelven a su vez dividiéndolos en subproblemas más pequeños
hasta que se alcance el caso fácil, donde la solución al problema es trivial.

LA PROGRAMACION DINAMICA
Los algoritmos basados en este modo de operación son mas eficientes pero al mismo
tiempo complejos por decir generalmente si tenemos un problema este también tiene
subproblemas superpuestos es decir que se usa un mismo subproblema para resolver
diferentes problemas mayores. Por ejemplo, en la sucesión de Fibonacci (F3 = F1 + F2 y
F4 = F2 + F3) calcular cada término supone calcular F2. Como para calcular F5 hacen
falta tanto F3 como F4, una mala implementación para calcular F5 acabará calculando F2
dos o más veces. Esto sucede siempre que haya subproblemas superpuestos: una mala
implementación puede acabar desperdiciando tiempo recalculando las soluciones óptimas
a problemas que ya han sido resueltos anteriormente.

ING. ELECTRICA UNSA Página 2 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

Esto se puede evitar guardando las soluciones que ya hemos calculado. Entonces, si
necesitamos resolver el mismo problema más tarde, podemos obtener la solución de la
lista de soluciones calculadas y reutilizarla. Este acercamiento al problema se llama
memorización (no confundir con memorización; en inglés es llamado memorization. Si
estamos seguros de que no volveremos a necesitar una solución en concreto, la podemos
descartar para ahorrar espacio. En algunos casos, podemos calcular las soluciones a
problemas que de antemano sabemos que vamos a necesitar.
En resumen, la programación hace uso de:
 Subproblemas superpuestos
 Subestructuras óptimas
 Memorización

1. EL PRINCIPIO DE OPTIMALIDAD

Cuando hablamos de optimizar nos referimos a buscar alguna de las mejores soluciones
de entre muchas alternativas posibles. Dicho proceso de optimización puede ser visto
como una secuencia de decisiones que nos proporcionan la solución correcta. Si, dada
una subsecuencia de decisiones, siempre se conoce cuál es la decisión que debe tomarse
a continuación para obtener la secuencia óptima, el problema es elemental y se resuelve
trivialmente tomando una decisión detrás de otra, lo que se conoce como estrategia voraz.
En otros casos, aunque no sea posible aplicar la estrategia voraz, se cumple el principio
de optimalidad de Bellman que dicta que “dada una secuencia óptima de decisiones,
toda subsecuencia de ella es, a su vez, óptima”. En este caso sigue siendo posible el ir
tomando decisiones elementales, en la confianza de que la combinación de ellas seguirá
siendo óptima, pero será entonces necesario explorar muchas secuencias de decisiones
para dar con la correcta, siendo aquí donde interviene la programación dinámica.

Contemplar un problema como una secuencia de decisiones equivale a dividirlo en


problemas más pequeños y por lo tanto más fáciles de resolver como hacemos en Divide
y Vencerás, técnica similar a la de programación dinámica. La programación
dinámica se aplica cuando la subdivisión de un problema conduce a:

 Una enorme cantidad de problemas.


 Problemas cuyas soluciones parciales se solapan.

ING. ELECTRICA UNSA Página 3 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

 Grupos de problemas de muy distinta complejidad.


2. LA FUNCIÓN RECURSIVA
La idea de la función recursiva es poder atacar un problema global de optimización de n
etapas en n problemas de optimización de una sola etapa.
Este método de recursividad que se ha desarrollado de la etapa n a la etapa uno, en PD
recibe el nombre Backward (hacia atrás). Todos los problemas en los que se puede aplicar
la programación dinámica pueden ser resueltos en forma Backward, sin embargo, no
todos pueden ser resueltos en forma Forward.
La función recursiva tiene la propiedad que Bellman bautizó como el principio de
Optimalidad: "Una política óptima tiene la propiedad de que cualquiera que sea el estado
inicial y la primera decisión, las decisiones restantes constituyen una política óptima en
relación a los efectos resultantes de la primera decisión". Esto nos dice que si las
decisiones que hacen falta por tomar en un sistema no son óptimas, entonces toda la
política de decisiones tampoco es óptima. La función recursiva resuelve en cada etapa un
problema de optimización asociado a un subsistema del problema original. El
procedimiento es el de optimizar las decisiones del subsistema teniendo presente la
posible variación de la entrada a él. Después de optimizarse este subsistema se añade una
etapa adicional conformando así un subsistema mayor, y así sucesivamente hasta abarcar
el sistema completo.

Por ejemplo

En un río hay unos embarcaderos, en cada uno de los cuales se puede alquilar un bote
para ir a otro embarcadero que esté más abajo en el río. Suponemos que no se puede
remontar el río. Una tabla de tarifas indica los costes de viajar entre los distintos
embarcaderos. Se supone que puede ocurrir que un viaje entre i y j salga más barato
haciendo escala en k embarcaderos que yendo directamente.

El problema consistirá en determinar el coste mínimo para un par de embarcaderos.

Vamos a llamar a la tabla de tarifas, T. Así, T[i,j] será el coste de ir del embarcadero i al
j. La matriz será triangular superior de orden n, donde n es el número de embarcaderos.

La idea recursiva es que el coste se calcula de la siguiente manera:

C(i, j) = T[i, k] + C(k, j)


A partir de esta idea, podemos elaborar una expresión recurrente para la solución:

ING. ELECTRICA UNSA Página 4 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

0 si i = j
C(i, j)=
Min(T(i,k) + C(k,j), T(i,j)) si i < k <= j
T: tiempo
K: constante

3. UNIT COMMITMENT
En el capítulo anterior se explicó que el despacho económico consiste en determinar la
repartición óptima de carga entre las unidades generadoras termoeléctricas con las que se
dispone de tal manera que el costo total de generación sea mínimo, no analiza la manera
de obtener mejores resultados y por consiguiente una mejor utilización del recurso. Ahora
abordaremos el problema de determinar que unidades generadoras deben acoplarse o
desacoplarse según la variación de la demanda para conseguir la mejor optimización de
los recursos, para ello en este capítulo se desarrolla la asignación de unidades o unit
commitment con lo cual abordaremos más adelante la solución a la asignación de
unidades térmicas.
Como sabemos la demanda de energía a suplir por un grupo de generadores no es
constante en el transcurso del día, la demanda es generalmente alta en ciertos períodos
(punta) y por el contrario es baja en otros (valle) y cada zona presenta un comportamiento
similar. Este comportamiento se puede analizar también de manera diaria, ya que no son
iguales los requerimientos de carga de un día de semana normal comparado con los de
uno de fin de semana, entonces debido a este comportamiento es que la asignación de
unidades representa un problema para la operación del sistema de potencia. No se trata
simplemente de encender las unidades, sincronizarlas y ponerlas en línea, esto representa
un gasto demasiado alto, entonces lo que se busca es hacer la asignación de unidades de
forma eficiente, esto se logra apagando las unidades cuando no son necesarias para los
requerimientos de carga del momento, con lo cual se logra un ahorro considerable.

3.1.Métodos De Solución Para La Asignación De Unidades


El problema de la asignación de unidades puede ser muy difícil debido a todas las
restricciones y combinaciones posibles que pueden surgir de un dado número de
unidades, por lo tanto se deben buscar procedimientos que nos ayuden a encontrar

ING. ELECTRICA UNSA Página 5 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

una solución rápida y real al problema, para ello plantearemos la situación que se
tiene al inicio del problema.
* Tenemos establecida una demanda a cubrir para un período de M intervalos.
* Se cuenta con N unidades para cubrir la demanda de un período T .
* Los T niveles de carga y límites de operación de las N unidades es tal que una unidad
puede suplir cargas individuales y cualquier combinación de unidades puede también
suplir estas cargas.
Las técnicas más utilizadas para encontrar la solución de la asignación de unidades son:
1- Diseño de lista de prioridades
2- Programación dinámica
3- Relajación de Lagrange

3.1.1. Diseño de lista de prioridades


Este método consiste en crear una lista de prioridades de los generadores, la cual puede
ser obtenida después de una exhaustiva enumeración de todas las posibles combinaciones
para cada nivel de carga, por ejemplo:
A continuación, se presenta la solución para un despacho de carga el cual posee 15
distintos niveles de carga (T = 15) usando las mismas unidades del Ejemplo 3A y en el
que se presentan las combinaciones óptimas de las unidades para el despacho económico.
podemos observar que cuando la carga es menor que 600 MW sólo funciona la unidad 1,
cuando la carga se encuentra entre 600 MW y 1000 MW funcionan las unidades 1 y 2 y
si la carga sobrepasa los 1000 MW funcionan todas las unidades.

ING. ELECTRICA UNSA Página 6 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

Combinación óptima de unidades del Ejemplo 3A para una carga variable. Otra forma de
hacer la lista de prioridades para las unidades puede estar basada en los costos promedios
de producción cuando la unidad está a su máxima capacidad, en la Tabla mostrada se
presentan estos costos para las unidades del Ejemplo 3A y en la Tabla El orden en que se
despachan las unidades siguiendo este criterio, es de hacer notar que hay diferencias entre
la asignación de unidades que se observa en la Tabla

Costo promedio de producción para las unidades del ejemplo

Despacho de unidades en base a su costo promedio de producción


Algunos esquemas de listas de prioridades son construidas en base a un algoritmo de
apagado-encendido de unidades como se muestra en Figura anterior el cual consiste en
tomar distintas decisiones cuando ya están definidas las prioridades de las unidades en
base a reserva rodante, costo de arranque, mínimos de encendido y apagado, etc.
Ejemplo Lista de Prioridades

ING. ELECTRICA UNSA Página 7 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

3.1.2. Relajación de Lagrange


El método de programación dinámica para la asignación de unidades tiene algunas
desventajas cuando los sistemas de potencia son de tamaño considerable. Esta desventaja
radica en que la
programación dinámica busca la solución al problema reduciendo el número de
combinaciones a probar cuando pasa de una etapa a otra, pero si el sistema es grande
siempre se tiene un número considerable de caminos o trayectorias y la solución se
complica en estos sistemas utilizando ésta técnica. En la técnica de la Relajación de
Lagrange esta desventaja desaparece, ya que la solución está basada en la optimización
dual vista en el capítulo anterior.

U = 0 si la unidad i está fuera de línea durante un período t t


i U = 1 si la unidad i está en línea durante un período t t
iP
Es la potencia producida por el generador i tD
P demanda total del sistema en una hora o período t
Ahora definiremos algunas restricciones y la función objetivo del problema de asignación
de unidades:
Ejemplo Relajación Lagrangiana

𝐹1 (𝑃1 ) = 30 + 10 𝑃1 + 0.002𝑃1 2 𝑦 100 < 𝑃1 < 600

𝐹2 (𝑃2 ) = 20 + 8 𝑃1 + 0.0025𝑃1 2 𝑦 100 < 𝑃1 < 400

𝐹3 (𝑃3 ) = 10 + 6 𝑃1 + 0.005𝑃1 2 𝑦 50 < 𝑃1 < 200

Carga

t P CARGA(MW)
1 300
2 500
3 1100
4 400

Horas Lambda u1 u2 u3 P1 P2 P3 P CARGA P1 P2 P3


1 0 0 0 0 0 0 0 300 0 0 0
2 0 0 0 0 0 0 0 500 0 0 0
3 0 0 0 0 0 0 0 1100 0 0 0
4 0 0 0 0 0 0 0 400 0 0 0

ING. ELECTRICA UNSA Página 8 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

𝐽−𝑞
𝑞(λ) = 0,0 𝐽∗ = 40000 𝐷𝑜𝑛𝑑𝑒
𝑞

Horas Lambda u1 u2 u3 P1 P2 P3 P CARGA P1 P2 P3


1 3 0 0 0 0 0 0 300 0 0 0
2 5 0 0 0 0 0 0 500 0 0 0
3 11 1 1 1 250 400 200 250 500.6 400 200
4 4 0 0 0 0 0 0 400 0 0 0

𝐽−𝑞
𝑞(λ) = 15435 𝐽∗ = 40000 𝐷𝑜𝑛𝑑𝑒 = 1.591
𝑞

Horas Lambda u1 u2 u3 P1 P2 P3 P CARGA P1 P2 P3


1 6 0 0 0 0 0 0 300 0 0 0
2 10 0 1 1 0 400 200 -100 0 299.5 200
3 13.5 1 1 1 600 400 200 -100 500.6 400 200
4 8 0 0 1 0 0 200 400 0 0 0

𝐽−𝑞
𝑞(λ) = 19270, 𝐽∗ = 34618 𝐷𝑜𝑛𝑑𝑒 = 0.796
𝑞

Horas Lambda u1 u2 u3 P1 P2 P3 P CARGA P1 P2 P3


1 5.1 0 1 1 0 200 200 -100 0 100 200
2 10.24 0 1 1 0 360 200 -60 0 299.5 200
3 15.8 1 1 1 600 400 200 -100 500.6 400 200
4 9.9 0 1 1 0 400 200 -200 0 199.7 200

𝐽−𝑞
𝑞(λ) = 19756 𝐽∗ = 20000 𝐷𝑜𝑛𝑑𝑒 = 0.00123
𝑞
3.1.3. La Programación Dinámica Aplicada Para Despacho Economico De
Centrales Eléctricas
La programación dinámica tiene algunas ventajas sobre los esquemas de lista de
prioridades, la principal ventaja es que reduce las dimensiones del problema, este método
así como el diseño de lista de prioridades lo que buscan es minimizar los costos al hacer
la asignación de unidades en un sistema eléctrico.
La coacción de una lista de prioridades en orden de la demanda máxima da
como resultado un despacho teórico solamente si:
 Las características de entrada y salida de los generadores son lineales
entre cero y la demanda máxima.
 Sin demanda los costos son cero.
 No hay otras restricciones.

ING. ELECTRICA UNSA Página 9 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

 Los costos de arranque son fijos.


Pero como las condiciones de los generadores y la demanda no son realmente
lo antes descrito, se asume que:
 Un estado consiste de un vector con unidades operando y el resto fuera
de línea.
 Los costos de arranque de una unidad térmica son independientes del
tiempo.
 No hay costos de reserva rodante.
 Hay un orden de prioridad, y en cada intervalo un mínimo de capacidad
para ser operado.

La Programación Dinámica empieza con la reducción de la dimensionalidad del


problema, al encontrar unidades térmicas que con cualquier combinación de ellas cumpla
la demanda. Las combinaciones máximas que se presentan están dadas por 2n )1 estados
en la hora K, siendo n el número de generadores
disponibles en el sistema.
En la metodología de Programación Dinámica el punto de inicio esta ligado a la última
hora del periodo de 24 horas anterior, por lo tanto el punto inicial de un periodo de 24
horas será el punto final del periodo de 24 horas anterior. El algoritmo recursivo para el
cálculo del costo mínimo en la hora K con una combinación I es:

El estado (K, I) es la combinación I en la hora K. Para la Programación Dinámica, se


utiliza una estrategia en la transición, desde un estado en una hora dada a un estado en la
hora siguiente.

ING. ELECTRICA UNSA Página 10 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

Algoritmo de búsqueda para las rutas en la Programación Dinámica.


En la siguiente figura se muestra el diagrama de flujo utilizado en la Programación
Dinámica aplicado al despacho óptimo de centrales térmicas de generación eléctrica.

ING. ELECTRICA UNSA Página 11 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

Diagrama de flujo utilizado en la Programación Dinámica.

ING. ELECTRICA UNSA Página 12 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

Diagrama de flujo de la técnica de Árbol Binario.

ING. ELECTRICA UNSA Página 13 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

Diagrama de flujo de la técnica de Árbol Binario.

ING. ELECTRICA UNSA Página 14 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

Diagrama de flujo de la técnica de Árbol Binario.

Diagrama de flujo de la técnica de Árbol Binario.

ING. ELECTRICA UNSA Página 15 de 16


PLANIFICACION Y OPERACIÓN DE SISTEMAS DE POTENCIA
Trabajo: Alexander CAPITULO 5 COMPROMISO DE LA UNIDAD EN LA PROGRAMACION DINAMICA
Figueroa Puma

Como vimos en los casis anteriores se utilizo la técnica de Árbol Binario que incorpora
los límites de operación de todos los generadores en línea y los límites debido a los
generadores en rampa, para la aplicación de esta metodología a la Programación
Dinámica se asume que todos los generadores térmicos tienen sus respectivos límites de
operación pero que ningún generador térmico esta en rampa.
Ejemplo Programación Dinámica

ING. ELECTRICA UNSA Página 16 de 16

Das könnte Ihnen auch gefallen