1 / 20

PROGRAMAÇÃO DINÂMICA

OTIMIZAÇÃO DE SISTEMAS DISCRETOS. PROGRAMAÇÃO DINÂMICA. 27 de maio de 2014. Considere um sistema constituido de N estágios em série. N -1. 1. 2. N. x 1. x 2. x N-2. x N-1. x N. x o.

espen
Download Presentation

PROGRAMAÇÃO DINÂMICA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OTIMIZAÇÃO DE SISTEMAS DISCRETOS PROGRAMAÇÃO DINÂMICA 27 de maio de 2014

  2. Considere um sistema constituido de N estágios em série. N -1 1 2 N x1 x2 xN-2 xN-1 xN xo O dimensionamento deste sistema é um problema de otimização com G = N graus de liberdade tendo x1 ... xNcomo variáveis de projeto Uma forma de conduzir a otimização consiste um realizar uma busca multivariável por um dos métodos conhecidos (H&J, por exemplo). Uma outra forma consiste em realizar N buscas univariáveis. PROGRAMAÇÃO DINÂMICA

  3. PROGRAMAÇÃO DINÂMICA Método criado por Richard Bellman para a otimização de sistemas em estágios. Aplicações na Engenharia Química baterias de reatores, extratores, torres de destilação, etc... x2 xN-2 xN-1 xN 1 2 N -1 N x1 x*o

  4. Base do Método PRINCÍPIO DO ÓTIMO “Optimality Principle” (Bellman) "Para que um sistema em estágios em série seja ótimo é necessário que ele seja ótimo de qualquer estágio em diante". x2o xN-2o xN-1o xNo 1 2 N -1 N x1o x*o Todo xi está com o seu valor ótimo

  5. Exemplo: 3 extratores em série W1 W2 W3 X1 kgAB/kgA X2 kgAB/kgA X3 kgAB/kgA Q = 10.000 kgA/h 3 1 2 xo = 0,02 kgAB/kgA y3 = kgAB/kgA y1 kgAB/kgA y2 = kgAB/kgA

  6. A solução ótima W1o = 843,7 kgB/h W2o = 843,7 kgB/h W3o = 843,7 kgB/h x1o = 0,015kgAB/kgA x2o = 0,011kgAB/kgA x3o = 0,0084kgAB/kgA Q = 10.000 kgA/h 3 1 2 xo = 0,02 kgAB/kgA y3 = 0,03344 kgAB/kgA y1 = 0,0598 kgAB/kgA y2 = 0,04472 kgAB/kgA Incorporando as equações ordenadas ao Lucro: L (xo, x1, x2, x3) = 4.000 (0,02 – x3) – 25 (0,02 / x1 – x1/ x2 – x2/ x3 – 3) A solução ótima pode ser obtida pelo método analítico, maximizando o Lucro do processo completo. L / x1 = 0  x2 = 50 x12 L / x2 = 0  x3 = x22 / x1 L / x3 = 0  x1o = 0,01495  x2o= 0,01118 x3o = 0,008359 W1o = W2o = W3o = 843,7 Lo (xo, x1, x2, x3) = 21,3 $/h

  7. W1o = 843,7 kgB/h W2o = 843,7 kgB/h W3o = 843,7 kgB/h X1o = 0,015kgAB/kgA x2o = 0,011kgAB/kgA x3o = 0,0084kgAB/kgA Q = 10.000 kgA/h 3 1 2 xo = 0,02 kgAB/kgA y3 = 0,03344 kgAB/kgA y1 = 0,0598 kgAB/kgA y2 = 0,04472 kgAB/kgA W1 = 1.972 kgB/h W2 = 843,7 kgB/h W2 = 391,2 kgB/h x1 = 0,01118kgAB/kgA x2 = 0,008359kgAB/kgA x3 = 0,007228kgAB/kgA Q = 10.000 kgA/h 3 1 2 xo = 0,02 kgAB / kgA y3 = 0,02891 kgAB/kgA y1 = 0,04472 kgAB/kgA y2 = 0,03344 kgAB/kgA Este sistema é ótimo a partir de qualquer estágio Outra solução: este sistema não é ótimo a partir de estágio algum !

  8. A outra Solução: cada Estágio busca o seu lucro máximo ignorando os Estágios seguintes. W1o = 843,7 kgB/h W2o = 843,7 kgB/h W3o = 843,7 kgB/h X1o = 0,015kgAB/kgA x2o = 0,011kgAB/kgA x3o = 0,0084kgAB/kgA Q = 10.000 kgA/h 3 1 2 xo = 0,02 kgAB/kgA y3 = 0,03344 kgAB/kgA y1 = 0,0598 kgAB/kgA y2 = 0,04472 kgAB/kgA W1 = 1.972 kgB/h W2 = 843,7 kgB/h W2 = 391,2 kgB/h x1 = 0,01118kgAB/kgA x2 = 0,008359kgAB/kgA x3 = 0,007228kgAB/kgA Q = 10.000 kgA/h 3 1 2 xo = 0,02 kgAB / kgA y3 = 0,02891 kgAB/kgA y1 = 0,04472 kgAB/kgA y2 = 0,03344 kgAB/kgA Lo' (xo, x1, x2, x3) = L1o' (xo, x1) + L2o' (x1, x2) + L3o' (x2, x3) = 15,6 + 2,8 + 0,6 = 19 $/h Solução Ótima: cada Estágio abre mão do seu lucro máximo em favor dolucro máximo do sistema Lo (xo, x1, x2, x3) = 4.000 (0,02 – x3o) – 25 (0,02 / x1o – x1o/ x2o –x2o/ x3o – 3) = 21,3 $/h

  9. A forma correta de executar as buscas univariáveis levando em conta os estágios a jusante, é através da PROGRAMAÇÃO DINÂMICA

  10. De uma forma simplificada, pode-se dizer que a solução por Programação Dinâmica é obtida em duas fases: Fase de Ida Fase de Volta

  11. Fase de Ida: o sistema é percorrido no sentido inverso ao do fluxo, do último ao primeiro Estágio. Nesta fase, cada estágio é “consultado” quanto à sua participação na solução ótima, ficando preparado o caminho de volta. W1 W2 W3 X1 ? kgAB/kgA X2 ? kgAB/kgA X3 ? kgAB/kgA Q = 10.000 kgA/h 3 1 2 xo = 0,02 kgAB/kgA y3 = kgAB/kgA y1 kgAB/kgA y2 = kgAB/kgA

  12. Fase de Volta: o sistema é percorrido no sentido do fluxo, do primeiro para o último Estágio. Nesta fase, a solução ótima vai sendo produzida, de estágio a estágio, utilizando as informações colhidas na Fase de Ida. W1 W2 W3 X1okgAB/kgA X2okgAB/kgA X3okgAB/kgA Q = 10.000 kgA/h 3 1 2 xo = 0,02 kgAB/kgA y3 = kgAB/kgA y1 kgAB/kgA y2 = kgAB/kgA

  13. EXEMPLO: 3 extratores em série Explicitando o lucro proporcionado por cada estágio: L (xo, x1, x2, x3) = L1 (xo, x1) + L2 (x1, x2) + L3 (x2, x3) W1 W2 W3 L1 (xo, x1) = 105 – 4.000 x1 – 0,5 / x1 1 2 L2 (x1, x2) = 25 + 4.000 x1 – 4.000 x2 – 25 x1 / x2 3 xo* x1 x2 x3 L3 (x2, x3) = 25 + 4.000 x2 – 4.000 x3 – 25 x2 / x3 y1 y2 y3 Otimização do Estágio 3 para o valor ótimo de volta ainda desconhecido x2# : dL3/dx3 = - 4.000 + 25 x2# / x32 = 0x3o = 0,0791  x2#L3o = 25 + 4.000 x2# - 632,46  x2# Assim , fica garantido que o Estágio 3 será ótimo para qualquer valor de x2.

  14. Do passo anterior:x3o = 0,0791  x2L3o = 25 + 4.000 x2 - 632,46  x2 W1 W2 Otimização dos Estágios 2 + 3 para o valor ótimo de volta ainda desconhecido x1# (aproveitando L3o ): W3 L23 = L2 (x1, x2) + L3o = [25 + 4.000 x1# – 4.000 x2 – 25 x1# / x2] + [25 + 4.000 x2 - 632,46  x2 ] 1 2 3 xo* x1 x2 x3 y1 y2 y3 L23 = 50 + 4.000 x1# - 25 x1# / x2 – 632,46  x2 dL23/dx2 = 25 x1# / x22 – (1/2)(632,46 /  x2#) = 0x2o = 0,1843 x1#2/3L23o = 50 + 4.000 x1# – 407,2 x1#1/3 Assim , fica garantido que os Estágios 2 e 3 serão ótimos para qualquer valor de x1.

  15. Do passo anterior:x2o = 0,1842 x12/3L23o = 50 + 4.000 x1 – 407,2 x11/3 W1 W2 W3 Otimização dos Estágios 1 + 2 + 3 para a constante xo( aproveitando L23o ): L123 = L1 (xo, x1) + L23o = [105 – 4.000 x1 – 0,5 / x1] + [50 + 4.000 x1 – 407,2 x11/3 ] L123 = 155 – 0,5/x1 – 407,2 x11/3 1 2 3 xo* x1 x2 x3 y1 y2 x1o = 0,015 : W1o = 843,7 kg/h L123o = Lo = 21,2 $/a y3  dL123/dx1 = 0,5 / x12 – 135,7 x1-2/3 = 0 Retornando, no sentido do fluxo: x2o = 0,01842 x12/3= 0,01118 : W2o = 843,7 kg/h x3o = 0,07905  x2= 0,008365 : W3o = 843,7 kg/h

  16. DESENVOLVIMENTO LITERAL

  17. ETAPA PREPARATÓRIA L (x1, x2, x2) = L1 (xo, x1) + L2 (x1, x2) + L3 (x2, x3) x2# W1 W2 W3 Primeiro passo: otimiza-se o estágio 3 para um valor hipotético x2# . 1 2 3 xo* x1 x2 x3 y1 y2 A função objetivo a maximizar é L3 (x2#, x3 ) e a variável de projeto é x3. Busca univariável em x3. Obtem-se x3o (x2# ) e L3o (x2# ) , ambos função de x2#. L3o (x2# ) será usado no passo seguinte. x3o (x2# ) fica agurdando o resultado x2o a ser determinado na etapa na volta. y3

  18. ETAPA PREPARATÓRIA L (x1, x2, x2) = L1 (xo, x1) + L2 (x1, x2) + L3 (x2, x3) x1# Segundo passo: otimizam-se os estágios 2 e 3, em conjunto, para um valor hipotético x1#. W1 W2 W3 1 2 3 xo* x1 x2 x3 A função objetivo a maximizar é L23 (x1#, x2, x3 ) = L2 (x1#, x2) + L3 (x2, x3). Porém, para qualquer valor de x2, já se conhece o valor máximo de L3 . Então, a função objetivo fica: L23 (x1#, x2) = L2 (x1#, x2) + L3o(x2)e a variável de projeto fica sendo x2. Busca univariável em x2 . Obtem-se x2o (x1# ) e L23o (x1# ) , ambos função de x1#. L23o (x1# ) será usado no passo seguinte. x2o (x1# ) fica aguardando x1o (x1# ) a ser determinado na etapa de na volta. y1 y2 y3

  19. ETAPA PREPARATÓRIA L (x1, x2, x2) = L1 (xo, x1) + L2 (x1, x2) + L3 (x2, x3) Terceiro passo: otimizam-se os estágios 1, 2 e 3, em conjunto, para o valor fixo xo*. W1 W2 W3 1 2 3 xo* x1 x2 x3 A função objetivo a maximizar é L123 (xo , x1 , x2, x3 ) = L1 (xo, x1) + L2 (x1, x2) + L3 (x2, x3). Porém, para qualquer valor de x1, já se conhece o valor máximo de L23 . Então, a função objetivo fica: L123 (xo, x1) = L1 (xo, x1) + L23o(x1) e a variável de projeto fica sendo x1. Busca univariável em x1 . Obtem-se x1o e L123o , ambos função de xo. y1 y2 y3 Quarto passo: regenera-se a solução final voltando com os valores de x1o e x2o e x3o

  20. A solução analítica se torna inviável para problemas de grande porte. Procedimento numérico alternativo A pré-otimização de cada estágio se dá para um conjunto discreto de valores da variável de entrada. Os resultados intermediários de Lo e xio são lançados em gráficos ou tabelas. Os de Lo são usados durante a pré-otimização Os de xio são usados no caminho de volta Ver ProgramaçãoDinâmica.xls

More Related