uma alternativa na obtenc¸ao˜ de met´ odos de pontos ...aurelio/artigos/oo.pdf · caso, e´...
TRANSCRIPT
UMA ALTERNATIVA NA OBTENCAO DE METODOSDE PONTOSINTERIORESORIENTADOS A OBJETOSEXPLORANDO ESTRUTURAS ESPARSASPARA
PROBLEMAS DE OTIMIZAC¸ AO
Anibal TavaresdeAzevedo�
Aurelio Ribeiro Leite deOliveira�
SecundinoSoaresFilho�
[email protected]@[email protected]�DepartamentodeEngenhariadeSistemas,FaculdadedeEngenhariaEletrica,
UniversidadeEstadualdeCampinas,Av. Albert Einstein,400,CidadeUniversitaria,13083-970,Campinas- SP- Brasil�DepartamentodeMatematicaAplicada,InstitutodeMatematicaEstatısticae Computac¸ao
Cientıfica,UniversidadeEstadualdeCampinas,PracaSergio BuarquedeHolanda,651,CidadeUniversitaria,13083-859,Campinas- SP- Brasil
Resumo. Problemasde decisao relacionadosa situacoesreais podemassumirgrandesdi-mensoes.Nestesentido,osmetodosdepontosinterioressao indicadosna literatura comofer-ramentasrapidase robustas,desdequeaproveitema estrutura esparsaassociadaaoproblemaemquestao. Para a deducaodosmetodosdepontosinterioresduasabordagenspodemseruti-lizadas.Umadasabordagensapresentareaproveitamentodecodigoe rapidaimplementac¸aocomputacional,masdependeda utilizacao de conceitosde programacao orientadaa objetoscomopolimorfismo.O propositodestetrabalhoeo defornecerumaextensaodestaabordagempara a programacao procedural. Alemdisso,sao apresentadasaplicacoesda abordagemex-tendidapara doisproblemasreais. Um problemarelacionadoao planejamentoe controle daproducao da manufatura e outro relacionadoao planejamentoda operacao delongoprazodesistemasdepotencia.
Keywords: Otimizacao,Metodosdepontosinteriores,Programacaoorientadaa objetos
1. INTRODUCAO
Problemasde tomadade decisaopodemserrelacionadosa modelosde otimizacao. Mo-delosdeotimizacaorelacionadosa problemasreaispodemassumirgrandesdimensoes.Nestecaso,e necessario aproveitar a estruturaesparsado problema. Comoos metodosde pontosinterioressaoapresentadosnaliteraturacomometodosrobustose eficientesparaproblemasdegrandeporte,seraoestudadas,nestetrabalho,tecnicasparadeducaodosmesmos.
2. MetodosdePontosInterior es
Historicamente,o desenvolvimentodosmetodosdepontosinterioresteve grandeimpulsodevido a Karmarkar(Karmarkar,1984),e aosbonsresultadosobtidosem(Adler et al., 1989).Hoje emdia osmetodosdepontosinterioresparaprogramac¸aolinearestaobemestabelecidostantoem termosde fundamentac¸ao teorica (Gonzaga,1992;Wright, 1996;TapiaandZhang,1992), quantopratica (Gondzio,1996; Mehrotra,1994; Oliveira and Lyra, 1991), existindoumaseriedecodigosdeboaqualidadedisponıveis(Wright, 1996).
A eficienciadeum metododepontosinteriores(MPI) dependedaexploracaodaestruturaesparsadoproblemaemquestao.Paratanto,existemduasabordagensdededucaodeumMPI.
A primeiraabordagemconsistenasseguintesetapas:
1. Construiro lagrangeanoassociadoaoproblema.
2. Obterascondicoesdeotimalidade.
3. Aplicar o metododeNewtonascondicoesdeotimalidade.
4. Resolvero sistemalinearresultante.
OsMPIs assimdeduzidosseraodenominadosMPIs Tradicionais.Exemplosdeutilizacaodestaabordagemsao fornecidospor (Azevedoet al., 2002a;Oliveiraet al., 2004;BhatiaandBiegler,1999;Castro,2000).
A segundaabordagemepropostapor (GondzioandSarkissian,2003)econsisteem:
1. Construirum metodode pontosinteriores,semconsiderarestruturaesparsaparticular,utilizandoaprimeiraabordagem.
2. Identificarasoperac¸oesalgebricasrelacionadasaoscalculosdosmetodosdepontosinte-riores.
3. Definir asoperac¸oesalgebricasemfuncaodaestruturaesparsadoproblema.
Os MPIs assimdeduzidosserao denominadosdenominadosde MPIs por blocos. Estaabordagem,porem,dependedautilizacaodeconceitosdeprogramac¸aoorientadaaobjetos.Ouseja,aimplementac¸aodemetodosdepontosinterioresserarestritaalinguagensdeprogramac¸aocomoC++ eJava.
Estetrabalhoira estendera abordagemdeGondzioandSarkissian(2003),permitindoqueestapossaserutilizadaemambientesdeprogramac¸aoproceduralcomoMatlab.
Maioresdetalhessobreasabordagensseraofornecidosnasproximassecoes.
2.1 MPI Tradicional
Parailustrara deducaodeum MPI deacordocomprimeiraabordagem,temoso problemaEq. (1):�������� �������� � ��� ����� ��� (1)
quepodeserreformuladoparaEq. (2):���� ��� ��� �������� � ����� �!� �#"$��%�&�('*) (2)
A funcao Lagrangeanaassociadaao problemade otimizacao, com funcao objetivo nao-lineare restricoeslinearesedadapor:+ �,��������".-0/21%������"435 /6���7� �8" �9��".:;/<�=�>"$?@��".A�BDCE FHG �JILKNM � F � CE FHG ��IOKPM ? FOQSR (3)
As condicoesdeotimalidadedeprimeiraordemsaodadaspor:T �J������" � / -U� 5 ".: � )� �V"W� � )���X�Y" � � )Z\[ � A^]_a` � Ab]N� (4)
onde:Z
,_
,[
e`
saomatrizesdiagonaiscomelementosestritamentepositivose ] e umvetordeunsdedimensaoapropriada.
Parasimplificara notacao,define-sec �=���d� T � �J����� . Aplicandoo metododeNewton ascondicoesdeotimalidade:effffg " c ����� � / "8h h )� ) ) ) )h ) ) ) h) ) Z ) [` ) ) _ )
ikjjjjleffffgWm �m -m 5m :m �
ikjjjjl � effffgonqpn Cnsrnstnsuikjjjjl (5)
onde:������ ����� nsp �T �J�=����" � / -v� 5 "W:n C �,�w" � �nsr � �#"$�V".�nst �A^]Y" Z\[ ]nsu �A^]Y" _x` ]
Reescrevendoo sistemalinear:� / m -y" m 5 � m :U" c �=��� m � � nqp� m � � n Cm ��� m � � nqrZ m 5 � [ m � � nqt_ m :z� ` m � � nqu (6)
A eliminacao de variaveis do sistemalinear, dadopelaEq. (6), fornecera o MPI primaldualcomvariaveiscanalizadase restricoesdeigualdade:
Tabela1: MPI primaldualparaestruturaesparsa{ .MPI Primal Dual estrutura esparsa
�Dados���}|~���~|q� 5 |s�<:P|��w�S) , -�|��=��� n ] e ��� ��)��s��� ;Para � �)��s�N� R�R�RAb�8�������s�� C ,onde: C � dimensaodovetor �=�%�&��� , ��� e o GAPe���~�� C e o GAPmedio.n �p � T �����}�~��" � / -��\� 5 ��"W:P�n �C �,��" � �}�n �r � �#"$�}�d"��~�n �t �A � ]z" Z � [ � ]n �u �A � ]z" _ � ` � ]n �� � n �p � Z�� � � n �t " [ n �r �J"*� _ � � � � n �u� �8��� c �=�}�s�^�� Z �~� � � [ ���,� _ �s� � � ` �~�m -��Y��� � � � �q� � � � / � � � � n �C � � � � �q� � � n �� �m �}�z��� � �~� � � � � / m -��w" n �� �m �s�8� n �r " m �}�m 5 �8��� Z �~� � � � n �t " [ � m �s�s�m :P�z��� _ �s� � � � n �u " ` � m �}�~�] �C p �,���V�
F¢¡£�¤�¥¦�§ |©¨ � ¤ ¥¦£�¤�¥¦}ª �� F¢¡£�«�¥¦�§ |©¨ � « ¥¦£�«�¥¦¬ª �� F¢¡£&¬¥¦q§ |v¨ � ¥¦£&¬¥¦�ª � F¢¡£&®¯¥¦s§ |©¨ � ® ¥¦£�®¯¥¦bª�°± �² r ¤ ����J�¯�N� � ]s�C p �± �C p � F¢¡³ ¥&´0µ |·¶ ³ ¥¸�¹»º·¼ ��� ± � �-���½ � ��-��\� ± �C p m -��� ��½ � ��� � � ± �C p m � �� ��½ � �,� � � ± �C p m � �5 ��½ � � 5 �\� ± �C p m 5 �:P�<½ � �:��w� ± �C p m :P��¿¾ � ���AteConvergir
Cabedestacarque,a inversao de� � � � � / , paraencontrarm - , envolve a maior partedo
esforco computacionaldonossometodo.Mas,dadoque�
e c ����� sao ÀÂÁ7à , ÀÅÄÆà , tendoÀlinhaslinearmenteindependentes,entao,
� � � � � / e simetrica,definidapositivae,napratica,eusadaadecomposic¸aodeCholesky pararesolvero sistemalinear(Wright, 1996).
Paraproblemasemqueamatriz�
possuiumaestruturaesparsablocoprimaldadapor:
A �efffffffg� � ) Ç~Ç~Ç ) )) � � Ç~Ç~Ç ) )) ) ... ) )...
... Ç~Ç~Ç ......) ) Ç~Ç~Ç � ¡ )Z � Z � Ç~Ç~Ç Z ¡ � ¡ ½ �ikjjjjjjjl (7)
OspassosdescritosanteriormentedevemserseguidosparasededuzirumMPI tradicional.Detalhesdestaabordagempodemser vistosem (Azevedoet al., 2002a;BhatiaandBiegler,1999;Castro,2000).
2.2 MPI por Blocos
A grandevantagemdestaabordagemnodesenvolvimentodosMPIsea facilidadecomquesepodeexplorarasestruturasesparsasdamatriz
�.
A ideiachavedoprocessoe identificarquaissaoasoperac¸oesmatriciaisrelacionadascomoscalculosdosMPIs,comodescritonaFig. 1.
Figura 1: Identificacaodasoperac¸oesmatriciaisdeumMPI.
A Figura1 mostraqueparasedefinirum MPI deacordocomumaestruturaesparsaparti-cular, bastaseredefiniro significadodasseguintesoperac¸oesmatriciaisÈzÉ :Ê DadosA eD, calcular ËXÌ*ÍÏÎ�Ð É ÍzÑ .Ê CalcularosfatoresËXÌ�Ò�ÒJÑ .Ê ResolverossistemaslinearesË�Ó ÌÔ , Ò�Õ¿ÌÔ e ÒJÑ=ÓÖÌ*Õ .
× Produtodematrizcomvetor: Ø : , Ø / : para�
,�
e Ù .
Ouseja,parasededuzirum MPI porblocos,cujamatriz�
possuia estruturaesparsadadapelaEq. (7),bastautilizar o MPI daTabela1 comoperac¸oesmatriciaisÚ � redefinidasdeacordocomaEq. (7).
SupondodefinidaumaclasseVector, quedescreve osvetoresassociadosasmatrizes,umapossıvel declarac¸aodeumaclasseabstrataMatrix seria:
class Matrix{virtual void ComputeAThetaAt(Matrix theta);virtual void Factorize();virtual void SolveAThetaAt(Vector x, Vector y);virtual void SolveTriang(Vector x, Vector y);virtual void SolveTransTriang(Vector x, Vector y);virtual void MatrixVectProd(Vector x, Vector y);virtual void MatrixTransVectProd(Vector x, Vector y);
}
A classeMatrix podeserestendidaparaclassesconcretasasquaisseraoresponsaveisporfornecerumaimplementac¸aoparaasfuncoesmembro.
Ou seja,utilizandoo polimorfismode um objetoda classeMatrix (e possıvel representardiferentesobjetosquecompartilhamosmesmosmetodos)asoperac¸oesapropriadassaoimple-mentadasdeacordocomaestruturaesparsadamatriz.
A Figura2 ilustraaaplicacaodesteconceitoparamatrizes�
blocoprimal.
Figura 2: Classesparamatriz Û blocoprimal.
A classeAblock representaa matriz Í bloco primal do problema. Como a matriz Í ecompostapormatrizessupostassemestruturaesparsadefinida,denominadagenericas(matrizesÍzÜ e Ý Ü ), entao, ela utiliza classesque implementamestasmatrizese suasoperac¸oes(classeGenerica).
Isto so e possıvel, poisasclassesAblock e Genericaherdama mesmainterface,daclasseMatrix, quedefineasoperac¸oes ÈzÉ .
Comissoumamultiplicacaodeum objetomatriz Í daclasseAblock por um vetor Ó podeserrepresentadaemtermosdasoperac¸oesdefinidasnaclasseGenerica.
Dessaforma,partedadeclarac¸aodaclasseAblock, contendodoisvetoresdematrizesdaclasseGenerica, sera:
class Ablock : public Matrix{private:int NumBlocksGenerica[] Ai;Generica[] Si;
}
A Figura3 forneceumesquemadecalcular -�� � � , matriz�
comoemEq. (7),apartirdasoperac¸oesdemultiplicacaodematrizpor vetordefinidasnaclasseGenerica(ou seja,-#� � F �e -7� Z F � ).
Figura 3: Operac¸ao Þ©ß${�à paramatriz { constituıdaporblocosdematrizesgenericas.
Comoobservadonaapresentac¸aodo MPI daTabela1, a operac¸aodemaiorcustocompu-tacionale a resolucaodosistema(8):� � � � � � / � m -7��� n C � � � � � n � �âá Ù ����� (8)
onde:� � c �=���^� Z�� � [ � _ � � ` .
Uma observacao importantee que paraproblemasem que �J�=��� e linear ou quadratica,c ����� e matrizdezerosou diagonal,respectivamente.Assim,�
sera matrizdiagonaltal queocalculode
� � �emuito rapido.
Porem,paraproblemasemquea funcaoobjetivo e nao-linear, a estruturadamatriz c �=���poderaserdiferentedeumamatrizdiagonal.
Paraos casosem quea funcao ������� e linear ou quadratica,tal que�
e matriz diagonalseparadaporblocos,eamatriz
�e blocoprimal:
� � efffffg � � ) Ç~Ç~Ç ) )) � � Ç~Ç~Ç ) )
......
......
...) ) Ç~Ç~Ç � ¡ )Z � Z � Ç~Ç~Ç Z ¡ � ¡ ½ �i jjjjjl � �
efffffg � � ) Ç~Ç~Ç ) )) � � Ç~Ç~Ç ) )...
......
......) ) Ç~Ç~Ç � ¡ )) ) Ç~Ç~Ç ) � ¡ ½ �i jjjjjl (9)
Entao,amatriz� � � � � / sera dadapor:
ãäääääå!æ�ç è é¯é@é è èè æëêìé¯é@é è è......
......
...è è é¯é@éíæëî èï ç ï ê é¯é@é ï î æ î&ð�çñóòòòòòôõ ö6÷ øùãäääääåÏúUû çç è é¯é¯é è èè ú!û çê é¯é¯é è è...
......
......è è é¯é¯é ú û çî èè è é¯é¯é è ú!û çî&ð�çñóòòòòòôõ ö»÷ øübýqþãäääääåÏæ�ÿç è é@é¯é è ï ÿçè æ ÿ ê é@é¯é è ï ÿê...
......
......è è é@é¯éÂæ%ÿî ï ÿîè è é@é¯é è æ%ÿî�ð�çñóòòòòòôõ ö»÷ øù���
�effffffffg� � � � �� � / � ) Ç~Ç~Ç ) � � � � �� Z /�) � � � � �� � / � Ç~Ç~Ç ) � � � � �� Z /�
......
......
...) ) Ç~Ç~Ç � ¡ � � �¡ � /¡ � ¡ � � �¡ Z /¡Z � � � � / � Z � � � �� � / � Ç~Ç~Ç Z ¡ � � �¡ � /¡ ¡ ½ �E FkG � Z F � � �F Z /F � � ¡ ½ � � � �¡ ½ � � /¡ ½ �i jjjjjjjjl �
� efffffg Ù � ) Ç~Ç~Ç ) � /�) Ù � Ç~Ç~Ç ) � /�...
......
......) ) Ç~Ç~Ç Ù ¡ � /¡� � � � Ç~Ç~Ç � ¡ Ù ¡ ½ �i jjjjjl � Ù
onde:� F � Z F � � �F � /F e Ù F � � F � � �F � /F , para �7�ì�N�sÇ~Ç~Ç9�< e Ù ¡ ½ � �
¡ ½ �E FHG � Z F � � �F Z /F �� ¡ ½ � � � �¡ ½ � � /¡ ½ � .A fatoracaodamatriz Ù e dadapor:
Ù ��� Ç�� / � efffffg � � ) Ç~Ç~Ç ) )) � � Ç~Ç~Ç ) )
......
......
...) ) Ç~Ç~Ç � ¡ )� ¡ ¶ � � ¡ ¶ � Ç~Ç~Ç�� ¡ ¶ ¡ � ¡ ½ �i jjjjjlefffffg � / � ) Ç~Ç~Ç ) � /¡ ¶ �) � / � Ç~Ç~Ç ) � /¡ ¶ �...
......
......) ) Ç~Ç~Ç��J/¡ �J/¡ ¶ ¡) ) Ç~Ç~Ç ) � /¡ ½ �i jjjjjl
assim:����� ���� �F � /F � Ù F� ¡ ¶ F Ç�� /F � � F¡E FHG � � ¡ ¶ F Ç�� /¡ ¶ F ��� ¡ ½ � � /¡ ½ � � Ù ¡ ½ � R (10)
Utilizandoo sistema(10)pararesolvero sistemaÙ � �,� :������� ������ :F ��� � �F � F ���ë� �P�sÇ~Ç~Çb�<: ¡ ½ � �� � �¡ ½ � �2� ¡ ½ � "
¡E FHG � � F � � /F : F �� ¡ ½ � �� � /¡ ½ � : ¡ ½ �� F ��� � /F �2: F "� � �F � /F � ¡ ½ � �&���ë�D�N�sÇ~Ç~Çb�< (11)
A implementac¸ao do MPI apresentadona Tabela1 considerandomatrizes�
e�
, comodescritasna Eq. (9), implica na construc¸ao de duasclassesAblock e Dblock. As operac¸oesmatriciaisdessasmatrizessaocomodescritasanteriormente.
A Figura4 apresentacomoseraa trocademensagensentreasclassesAblock eDblock.
Figura 4: MensagensentreasclassesAblock (matriz { ) e Dblock (matriz � ).
E importanteobservar quea Fig. 4 e um detalhamento,em termosdasfuncoesmembrodefinidaspelainterfacedaclasseabstratamatrix, dasoperac¸oesdo nıvel 1 daFig. 1.
Al emdisso,asoperac¸oesmatriciaiscomo� � ��- , representadaporA.matrixVectProd, sao
definidascomodescritonaFig. 3. Istoso epossıvel comautilizacaodopolimorfismo,tal queofuncionamentodasoperac¸oesmatriciaisdependemdotipo deestruturaesparsaqueedeclaradaparaasmatrizes
�e�
.
2.3 MPI por blocosmodificado
Paradeduzirum MPI, utilizandoos conceitosilustradosna secao anterior, e necessarioobservarqueasmensagensentreasclassespodemsersubstituıdaspor funcoes.Estasfuncoes,porem,estaoassociadasaumdeterminadotipo deestruturaesparsa.
O codigodamultiplicacaodeumamatriz�
, comestruturaesparsadadaemEq. (7), porum vetor � , cujo resultadoe um vetor - , ou seja ->� � � , e dado,emMatlab(programandodemaneiraprocedural),por:
function [y] = matrixVectProdAblock(Ai,Si,x,n)
% Inicializacao de variaveis.y = [];fxi = 0;ys = 0;
% Loop de construcao de yi, i = 1,...,n.for i = 1:n
% Indices de particao de x.ixi = fxi + 1;fxi = fxi + size(Ai{i},2);
% Particionando x.
xi = x(ixi:fxi);% Calculo dos yi.[yi] = matrixVectProdDensa(Ai{i},xi);
% Ultimo bloco yi.ys = ys + matrixVectProdDensa(Si{i},xi);
% Armazenando em y os blocos yi.y = [y; yi];
end
% Novo valor de xi.ixi = fxi + 1;fxi = fxi + size(Ai{n+1},2);xi = x(ixi:fxi);
% Obtendo o ultimo termo do bloco ys.ys = ys + matrixVectProdDensa(Ai{n+1},xi);
% Armazenando o ultimo bloco na resposta.y = [y; ys];
Ou seja,no lugar de sededuziro MPI paraa estruturaesparsabloco angularpor meiodaorientacaoa objetoscomodescritonaFig. 2, e promovida a reutilizacaode funcoescomodescritonocodigoanterior.
Assim, a funcao matrixVectProdAblock, associadaa -�� � � da estruturaesparsablocoangular, e elaboradautilizandoa funcaomatricVectProdDensa, querepresenta- F � � F � F paramatrizes
� Fdensas.
Por meio destaabordagem,o MPI queeraconstruıdo pelaorientacao a objetoscomonaFig. 4, seracodificadocomoindicadonaFig. 5.
Figura 5: Funcoesaseremutilizadasparacadatipo dematriz(Ablock = { eDblock = � ).
Vale observar quea Fig. 5 mostraumadesvinculac¸ao entreas funcoesmembroe suasrespectivasclasses.Portanto,adiferenciac¸aoentreummultiplicacao -7� � � paraumaestruturamatricial bloco angularou densanao e feita mais pelo polimorfismo,e sim pelo nomedasfuncoes.
Assim, e possıvel aliar o reaproveitamentode codigo ja elaboradoparaoutrasestruturasesparsasdoenfoquedeGondzioandSarkissian(2003)comacapacidadederapidaprototipacaodefuncoesdoMatlab.
3. Aplicacoesdo MPI por blocosmodificado
Parailustrara aplicacaodosconceitosanteriores,nestasecaosera mostradaa construc¸aodeMPI porblocosparadoistiposdeproblemas:× O problemadeplanejamentoecontroledaproducao(PCP)damanufatura.× O problemadeplanejamentodaoperac¸aodelongoprazo(POLP)dageracaohidreletrica.
O objetivo emostrarcomoaplicaraabordagemdededucaodoMPI porblocosmodificadodeacordocomaestruturaesparsadoproblemaapresentado.
3.1 Aplicacoesemproblemasdemanufatura
O planejamentoe controledaproducao(PCP)e a formapelaqualasempresasgerenciama transformac¸ao de materias-primasem produtos.A funcao do PCPe de coordenartodasasatividades,desdea aquisicaodoscomponentesnecessariosate aentregadeprodutosacabados.O PCPpodeser dividido em 3 nıveis de planejamentodistintos: Planejamentoestrategico,Planejamentotaticoe PlanejamentoOperacionale e especialmenteimportanteparalidar comlimitacoescomocustos,capacidade,tempoe qualidade.
Como adventodosavancostecnologicos,temsidodadaumamaiorenfasea utilizacaodesistemascomputacionaisna manufatura. Um importantegrupodossistemascomputacionaissaoossistemasdemanufaturaflexıvel (FMS).O FMS eumacolecaodemaquinas,geralmentecontroladasnumericamente,ligadaspor um sistemaautomaticodemanipulac¸aodemateriaisedirigido porumcomputadorcentral.
O FMSpossuicapacidadedeseadaptarrapidamenteaalteracoesnosprodutos,resultandoemsetupsdesprezıveisequedevemserincluıdosnostemposdeprocessamento(Carvalhoetal.,1999).
ConsiderandoqueexisteumatendenciadeadocaodoFMSnasmanufaturasequenoFMSossetupssaodesprezıveis,o modelomatematicopropostopor Carvalhoet al. (1999)podeseradotado.
Assim, o problemade planejamentoe controleda producao da manufaturapodeutilizarumamodelagemdefluxosemredescomrestricoesdecapacidademutuaqueresultara emumproblemadeprogramac¸aolineardadopelaEq. (12).
��� ¡ ½ �E FkG � � F � Fefffffg � � ) Ç~Ç~Ç ) )) � � Ç~Ç~Ç ) )...
......
......) ) Ç~Ç~Ç � ¡ )Z � Z � Ç~Ç~Ç Z ¡ hikjjjjjlefffffg � �� �
...� ¡� ¡ ½ �ikjjjjjl �
efffffg � �� �...� ¡mikjjjjjl� F �W� F �� F , �����N�sÇ~Ç~Ç9�<¿���
(12)
onde:� F
representaa matriz associadaa linha de montagemdo produto � , � e um vetorcujoscomponentes� F representama disponibilidadedemateria-primae a demandaparacadaproduto� , � F representao valor dosfluxosdo produto � nosdiversosestagiosdalinha demon-tagem,� F representaa utilizacao mımima da maquina� , F expressaa capacidademaximadeproducaodamaquina� , Z F saoasmatrizesquerepresentamasrestricoesdecapacidademutua
associadasaosfluxos � F dosprodutos� na linha de montagem,e m e um vetor cujoscompo-nentesrepresentamquea capacidademaximade processamentosimultaneode produtosumamaquina� naodeve ultrapassarseulimite m � , e a funcaoobjetivo e relacionadaaoscustosdetransporteouprocessamentodosprodutos.
Estarepresentac¸aoutiliza a ideia intituitiva quede os componentes”fluem”pelamanufa-tura,sendoprocessadospor maquinasate setornaremprodutosfinais. Maioresdetalhessobreaconstruc¸aodomodeloem(Azevedoetal., 2002a,b).
Devido as dimensoesque o problemade PL, associadoao planejamentoda producao,podeassumir, emaplicacoespraticas,torna-senecessario o desenvolvimentodeum metododeresolucaoqueexploreaestruturadoproblema(Carvalhoetal., 1999;Yamakamietal.,2000).
ParasededuzirumMPI porblocosparaesteproblema,bastaverificarque� ¡ ½ � , damatriz�
dadaporEq. (9), e igualamatrizidentidadeh . UmadiscussaodetalhadaentreadeducaodoMPI tradicionaleo MPI porblocos,paraesteproblema,e fornecidaem(Azevedoetal.,2004).
3.2 Aplicacoesemgeracaohidreletrica
Naatualsociedade,aenergiaeletricatemumamploe importantepapel.Desdeautilizacaoparafins domesticos,ate naindustria,naoe possıvel concebera faltadesteimportanteinsumoem qualqueratividade. Portanto,e imprescındivel o planejamentootimizadodesteinsumo,considerandoa etapasdegeracao, transmissaoe distribuicao. Comotal planejamentoe tarefacomplexa,ageracaoeatransmissaosaoconsideradaspormeiodeumaCadeiadePlanejamento.A CadeiadePlanejamentodivideo problemaemdoishorizontesdetempo:× O problemadaoperac¸aodelongoprazo(POLP)consideraaspectoshidraulicos(geracao)
e umhorizonteanual.× O problemadaprogramac¸aodecurtoprazo(PPCP)consideraaspectoseletricos(trans-missao)ehorizontedeumasemana.
Pararesolvero POLP, umamodelagemdefluxosemredescomrestricoeslinearesefuncaoobjetivo nao-linearpodeserutilizadaCarvalhoandSoares(1987);OliveiraandSoares(1995);Cicogna(1999).
Paratanto,foi utilizadoo esquemadescritonaFig. 6.Assim, e obtidoum problemadefluxosem redesnao-linearcom arcoscapacitados,cuja
formulacaomatricialsimplificadaedadaporEq. (13):���� �J� 3���Z R � R � � 3� ����� 3���� R (13)
Onde: 3��� � � � e� � � 3� � Z � , sendo o vetor associadoasdefluenciasdas
usinase � o vetorassociadoaosvolumesdasusinas.Paraa rededaFigura6, asmatrizes 3� e
Zseraodadaspor:
3� � eg h ) )"zh h )) "zh h il eZ � eg � ) )) � )) ) � il R (14)
Onde: h e matriz identidade,� e matriz de incidenciano-arcoparaasvariaveis de de-fluencia .
Figura 6: Grafopara4 usinase 3 perıodos.
Para deduzirum MPI por blocosadaptadoparaesteproblemae necessario redefinir asoperac¸oesmatriciaisÚ � . Destacamosredefinicaodaoperac¸aodadaporEq. (8).
Inicialmente,eimportanteobservarqueamatrizHessianac �=��� doPOLPpossuiaseguinteestrutura:
c �����\� � c � c �c � c���� R (15)
Onde: c � , c � e c�� saomatrizesdiagonais.A matriz
�temamesmaestruturadamatriz c , demaneiraque
� � �podeserrapidamente
obtidaeamatriz� � � � � / teraumaestruturatridiagonal.
Comoexemplo,amatriz� � � � � / , paraa rededaFig. 6, seradadapor:
٠� � � � � � /^� eg ٠� � /� )� � ٠� � /�) � � �� il (16)
Onde:� F � � � � ���� F! � � � ��"� F# � / � , ٠� � � � ������ � � � ��"��� � / ����� � � ��"��� � � � �� ��� �*?@� e ٠F �� � ���� F � � � � � ���� F! � � � ��"� F! � / �D��� � � ��"� F! � � � �� � F! �*?@� , $ � � � , tal que
� � ���� F# , � � ��"� F! e� � �� � F! sao
submatrizesde� � �� ,
� � �� e� � �� queporsuavezsaosubmatrizesde
� � �.
A fatoracaodamatriz Ù e dadapor:
Ù ��%� / � eg � � ) )� ¡ ¶ � � � )) � ¡ ¶ � � �il eg � / � � /¡ ¶ � )) � / � � /¡ ¶ �) ) � / � il � (17)
assim:�� � � � � / � � Ù �� ¡ ¶ F � F � � F � $ ��� �N�'&� ¡ ¶ F � � � /¡ ¶ F � � ��� F � /F � Ù F R (18)
UtilizandoaEq. (17)pararesolvero sistema(8):���� ��� : � ��� � �� � �: F ��� � �F �2� F " � F � � � � /F � � : F � � �&�<�ë�&��sÇ~Ç~Ç9�)(� � ��� � /� : �� F ��� � /F �2: F "*� � �F � /F � F ½ � ���<��� �N�sÇ~Ç~Çb�'& (19)
4. ConclusoeseTrabalhosFuturos
Na tomadade decisao, relacionadosa problemasreaise comuma obtencao de modelosmatematicosdegrandeporte. Paraa resolucaodosmesmos,osmetodosdepontosinteriores,queexplorama estruturaesparsado problema,sao indicados,na literatura,comoumaalter-nativa rapidae robusta. O maior trabalho,porem, esta relacionadoa corretudee a tempodedesenvolvimentodasdeducoesmatematicasquefornecemos MPIs. Por meio da abordagemexpostanestetrabalho,epossıvel unir o rapidodesenvolvimentodeprogramasemMatlab,comareutilizacaodecodigodaprogramac¸aoorientadaaobjetivo. Isto resultaraemumamaiorfaci-lidadenaidentificacaodeerrosdeprogramac¸ao,reduzindoo tempodeconstruc¸aodeprogramasdeMPIs. Comotrabalhosfuturose interessanteaplicara abordagempropostaparaalem dosproblemasdePCPdamanufaturaedoPOLPdesistemasdepotenciaaquidescritos.
Agradecimentos
Estetrabalhocontoucomo suportefinanceirodaFundac¸aodeAmparoa Pesquisado Es-tadodeSaoPaulo(FAPESP),daCoordenac¸aodeAperfeicoamentodePessoaldeNıvel Supe-rior (CAPES)edoConselhoNacionaldeDesenvolvimentoCientıfico eTecnologico(CNPq).
Referencias
Adler, I., Resende,M. G. C.,Veiga,G.,& Karmarkar, N., 1989.An implementationof karmar-kar’s algorithmfor linearprogramming.MathematicalProgramming, vol. 44,pp.297–335.
Azevedo, A. T., Carvalho, M. F. H., Oliveira, A. R. L., & Soares,S., 2002a. Metodosdepontosinterioresaplicadosa problemademultifluxo comrestricoesadicionais.TendenciasemMatematicaAplicadaeComputacional, vol. 3, n. 1, pp.41–50.
Azevedo,A. T., Carvalho,M. F. H., Oliveira,A. R. L., & Soares,S., 2002b. Planejamentoecontroledaproducaovia fluxosemredescommetodosdepontosinteriores. In RevistadoXIV CongressoBrasileiro deAutomatica.
Azevedo,A. T., Carvalho,M. F. H., Oliveira,A. R.L., & Soares,S.,2004.Eficienciaerobustezdemetodosdepontosinterioresnoplanejamentoecontroledaproducaomodeladoporfluxosemredes.In SubmetidoaoXXXVISimposioBrasileiro dePesquisaOperacional.
Bhatia,T. & Biegler, L., 1999. Multiperiod designandplanningwith interior point methods.ComputerandChemicalEngineering, vol. 23,n. 7, pp.919–932.
Carvalho,M. & Soares,S.,1987. An efficient hydrotermalschedulingalgorithm. IEEE Tran-sactionsonPowerSystems, vol. 2, n. 3, pp.537–542.
Carvalho, M. F., Fernandes,C. A. O., & Ferreira,P. A. V., 1999. Multiproduct multistageproductionscheduling(mmps)for manufacturingsystems. ProductionPlanningControl,vol. 10,n. 7, pp.671–681.
Castro,J., 2000. A specializedinterior-point algorithmfor multicommoditynetwork flows.SIAMJ. Optimization, vol. 10,n. 1, pp.852–877.
Cicogna, M., 1999. Modelo de Planejamentoda Operacao Energetica de SistemasHi-drotermicosa UsinasIndividualizadasOrientadopor Objetos. PhDthesis,TesedeMestradodaFEEC- UNICAMP - Campinas.
Gondzio,J.,1996. Multiple centralitycorrectionsin a primal-dualmethodfor linearprogram-ming. ComputationalOptimizationandApplications, vol. 6, pp.137–156.
Gondzio,J.& Sarkissian,R.,2003.Parallelinteriorpointsolverfor structuredlinearprograms.MathematicalProgramming, vol. 96,n. 3, pp.561–584.
Gonzaga,C. C.,1992.Pathfollowing methodsfor linearprogramming.SIAMReview, vol. 34,n. 2, pp.167–227.
Karmarkar, N., 1984. A new polinomial-timealgorithmfor linearprogramming.Combinato-rica, vol. 4, n. 4, pp.373–395.
Mehrotra,S.,1994.On implementationof aprimal-dualinteriorpointmethods.SIAMJournalonOptimization, vol. 2, n. 4, pp.575–601.
Oliveira, A. & Lyra, C., 1991. Implementac¸ao de um metodo de pontos interioresparaprogramac¸aolinear. RevistaSBA: ControleeAutomacao, vol. 3, n. 2, pp.370–382.
Oliveira,A., Soares,S.,& Nepomuceno,L., 2004. Shorttermhydroeletricschedulingcombi-ning network flow andinterior point approaches.Aceito parapublicacaonaEletricalPower& Energy Systems.
Oliveira,G. & Soares,S.,1995.A second-ordernetwork flow algorithmfor hydrotermalsche-duling. IEEETransactionsonPowerSystems, vol. 10,n. 3, pp.1635–1641.
Tapia,R. A. & Zhang,Y., 1992. Superlinearandquadraticconvergenceof primal-dualinte-rior point methodsfor linear programmingrevisited. Journal of OptimizationTheoryandApplications, vol. 73,pp.229–242.
Wright, S.J.,1996.Primal-Dual Interior-Point Methods. SIAM Publications.
Yamakami,A., Takahashi,M. T., & Carvalho,M. F., 2000.Comparisonof somealgorithmsformanufacturingproductionplanning.IFAC-MIM 2000SymposiumonManufacturing, Mana-gementandControl, vol. , pp.280–284.