• Página Principal
  • PRODIS - Aplicação de Técnicas de Processamento Distribuído nos Programas do DEA
  • VOLTAR
  • IMPRIMIR
  • ENVIAR
  • A+ A-
PRODIS - Aplicação de Técnicas de Processamento Distribuído nos Programas do DEA

Apresentação

A utilização de computação paralela e distribuída em aplicações computacionais de grande porte em engenharia e ciências é largamente adotada nos ambientes de pesquisa. A relação custo/benefício dessa forma de computação é pequena quando comparada com opções convencionais. A utilização de sistemas de clusters de estações de trabalho ou computadores pessoais vem recebendo grande aceitação recentemente, devido ao custo relativamente baixo e à facilidade de atualizações. Por conta deste custo relativamente baixo, o Cepel, no âmbito do Departamento de Otimização Energética e Meio Ambiente (DEA), procurou adotar uma solução que permitisse baixar os tempos finais de execução dos seus principais programas através de processamento distribuído.

 

O objetivo do projeto PRODIS é implementar técnicas de processamento distribuído nos programas do DEA e, atualmente, os programas NEWAVE (Modelo de Planejamento da Operação de Sistemas Hidrotérmicos Interligados de Longo e Médio-Prazo) e DECOMP (Modelo de Planejamento da Operação de Sistemas Hidrotérmicos Interligados de Curto-Prazo) já possuem versões executáveis em ambiente de alto desempenho. O programa NEWAVE foi o primeiro a ser modificado e esta escolha se baseou nos seguintes aspectos:


• o programa é largamente utilizado no Setor Elétrico Brasileiro, com destaque para o Planejamento da Operação Energética de Médio Prazo e nos Estudos de Planejamento da Expansão;
• os casos possuem uma grande demanda de tempo de CPU (algumas horas);
• o programa possui tarefas claramente independente entre si.


O programa NEWAVE é utilizado para resolver problema de planejamento da operação de longo e médio prazos (5 a 15 anos de horizonte de planejamento) e emprega como técnica de solução a programação dinâmica dual estocástica (PDDE). O processo de solução consiste em determinar uma estratégia de operação para que, a cada estágio do período de planejamento, dado um estado inicial, sejam fornecidas metas de geração para cada subsistema que minimizam o valor esperado do custo total de operação ao longo do horizonte de planejamento.


Esta estratégia, representada pela função de custo futuro (FCF), é aproximada através de uma função linear por partes, construída iterativamente pelos cortes de Benders. A cada estágio, e para cada estado do sistema (nível de armazenamento e afluências nos meses anteriores), o problema de operação hidrotérmica é modelado como um problema de programação linear (PL), e as variáveis duais associadas à solução desse problema são utilizadas para a construção dos cortes de Benders (processo backward).
 

Para se obter uma estimativa do valor esperado do custo de operação ao longo do horizonte de planejamento, considerando-se a FCF construída, processa-se a simulação da operação do sistema para os diversos cenários de afluências (processo forward). Dado que este método é constituído por processos que são independentes entre si, aproveitou-se esta característica para distribuir os vários problemas de PL envolvidos nos processos backward e forward entre vários processadores.
 

No processo backward, em cada estágio do horizonte de planejamento, cada processador recebe um conjunto de problemas de despacho de operação associados a diferentes cenários de energias afluentes. De posse das soluções de cada um dos problemas, cada processador gera um corte de Benders que é enviado para um dos processadores. Esse processador, de posse de todos os cortes de Benders recebidos, constrói a FCF que será utilizada no estágio (t-1) e a transmite para todos os demais processadores participantes do cálculo (Figura 1).

 

 

prodis1

Figura 1 - Distribuição dos cortes de Benders no processo backward.

 

De forma semelhante, no processo forward, em cada estágio, os processadores recebem um conjunto de problemas de PL, cujas soluções são transferidas para um processador para verificação da convergência (Figura 2).

 

prodis2

Figura 2 - Distribuição dos cortes de Benders no processo forward.

 

Caso a convergência não tenha sido alcançada, uma nova iteração é executada, de forma distribuída, até a convergência final. As comunicações entre os processadores são feitas através de instruções MPI (Message Passing Interface).


A versão atual do programa conta com uma estratégia de paralelização com as seguintes características: (1) permite a distribuição dinâmica da solução dos PLs, otimizando o balanceamento de carga entre os núcleos de processamentos; (2) minimiza a comunicação entre os núcleos de processamento; (3) introduz assincronismo na comunicação de mensagens no agrupamento dos cortes de Benders; (4) ajusta as mensagens à nova estrutura de hardware com processadores e múltiplos núcleos de processamento. Com estas novas características, os fatores de aceleração e as eficiências do processamento paralelo do programa NEWAVE foram melhorados de forma significativa (Figura 3). 

 

prodis

Figura 3 - Diferenças das Eficiências das Estratégias de Paralelização do Programa NEWAVE

 

A eficiência e o fator de aceleraçãoda estratégia de paralelização são definidos pelas seguintes experessões:

 formula

Na Figura 4, estão apresentados os fatores de aceleração e as eficiências da versão atual do programa NEWAVE.

 

prodis2

 Figura 4 - Eficiências da Versão 18 do Programa NEWAVE

 

O segundo programa modificado foi o DECOMP, que é utilizado no planejamento de curto prazo, com horizonte de planejamento de até 1 ano. Nessa etapa, obtêm-se metas semanais de geração para cada usina térmica e hidroelétrica, armazenamentos nos reservatórios e intercâmbios de energia entre subsistemas para o primeiro mês de estudo. As vazões afluentes do mês inicial são determinísticas e discretizadas semanalmente, sendo que, a partir do segundo mês, a discretização é mensal, e as afluências são representadas por cenários estocásticos. Utiliza-se no acoplamento a médio prazo a política definida pelo programa NEWAVE, representada pela FCF.

 

Consideram-se diversas restrições elétricas do sistema, limites de intercâmbio entre subsistemas, restrições referentes aos usos múltiplos da água e ambientais. Obtêm-se ainda novas FCF para cada estágio (semanal e mensal) do estudo, agora como função do armazenamento em cada reservatório, que serão utilizadas para a etapa de Programação Diária. Durante o processo de descida da árvore de cenários, as soluções dos diversos PLs no segundo mês, resultantes da utilização dos cenários de vazões, podem ser resolvidos de forma simultânea, uma vez que a solução de um não depende de nenhum dos outros problemas. Esta característica não existe nos problemas semanais do primeiro mês, uma vez que as condições iniciais do problema de uma semana depende do estado final do problema da semana anterior.


Aplicando-se técnicas de processamento distribuído nos subproblemas do segundo mês, conseguiu-se reduzir o tempo total de execução da ordem de horas para a ordem de minutos.

 

A importância deste projeto pode ser medida na significativa redução de tempo de execução dos programas NEWAVE e DECOMP, que foram os primeiros a terem seus códigos fontes modificados para execução em ambiente multiprocessado. O programa NEWAVE, que levava 32 horas para processar um caso típico com 20 iterações, passou a levar cerca de 30 minutos para resolver o mesmocaso com a utilização de 128 núcleos de processamento. Por sua vez, o programa DECOMP, que levava quase 20 horas para resolver um caso com 2 meses estocásticos, leva apenas 36 minutos com a utilização de 80 núcleos de processamento. Estas reduções de tempo permitem acelerar a implementação de melhorias na modelagem matemática dos programas e a obtenção de resultados em diversos estudos.

 

Para a execução dos programas com processamento distribuído, o Cepel conta com a infraestrutura computacional do Laboratório de Computação Intensiva (Labcin).

Contato

Entre em contato com a área responsável através do e-mail:


 prodis@cepel.br