Professional Documents
Culture Documents
O modelo de programao linear reduz um sistema real a um conjunto de equaes ou inequaes onde pretendemos otimizar uma funo objetivo. O conjunto de equaes dever ser, em princpio, um conjunto indeterminado, de forma que o nmero das solues ditas "viveis" infinito. Mesmo sabendo que a soluo tima ser encontrada em um ponto extremo do conjunto das solues viveis, nosso trabalho no ser pequeno se desejarmos determin-lo. Infelizmente, esse nmero de pontos extremos ou vrtices pode ser muito grande, em nmero exponencial, em relao s variveis. Podemos resumir em dois blocos as dificuldades que devero ser vencidas por quem deseja encontrar a melhor soluo possvel para um sistema indeterminado de equaes lineares, segundo um critrio qualquer. Como obter solues viveis bsicas do sistema de equaes. Como evitar o teste de todas as solues viveis bsicas possveis para garantir a otimizao do sistema. nesse contexto que o algoritmo simplex destaca-se como uma das grandes contribuies Programao Matemtica desse sculo. Trata-se de um algoritmo geral extremamente eficiente para a soluo de sistemas lineares e adaptvel ao clculo computacional (apesar de algumas dificuldades clssicas), e cuja compreenso funcional embasar vrios outros mtodos. O estudo desse algoritmo indispensvel para o profissional que deseja dominar as tcnicas quantitativas de analise e soluo de problemas em um contexto razoavelmente avanado.
Um algoritmo um procedimento que termina em um nmero finito de operaes (passos) O simplex um algoritmo que se utiliza de um ferramental baseado na lgebra Linear para determinar, por um mtodo iterativo, a soluo tima de um Problema de Programao Linear (PPL). Sua concepo bsica simples e, por isso mesmo, eficiente. Em linhas bastante gerais, o algoritmo parte de uma soluo vivel do sistema de equaes que constituem as restries do PPL, soluo essa normalmente extrema (vrtice). A partir dessa soluo inicial vai identificando novas solues viveis de valor igual ou melhor que a corrente. O algoritmo, portanto, possui um critrio de escolha que permite encontrar sempre novos e melhores vrtices da envoltria convexa do problema, e um outro critrio que consegue determinar se o vrtice escolhido ou no um vrtice timo. Antes de desenvolvermos o algoritmo propriamente dito necessrio recordar alguns conceitos matemticos que sero utilizados pelo mtodo. Uma base de uma matriz A (m x n) uma matriz quadrada de m vetores coluna linearmente independentes em IRm. As variveis associadas a essas colunas denominaremos variveis bsicas.
----------------------------------------------------------------
Definio 4:
'
Podemos decompor o vetor das variveis x em (ver Figura 17): *: x = (xB, xR), onde: xB representa o vetor das variveis bsicas de m componentes e xR o vetor das restantes n-m variveis no bsicas. I o conjunto dos ndices correspondentes s variveis bsicas. J o ndice das variveis no bsicas.
Como podemos solucionar o conjunto de equaes m x m somente em funo das variveis bsicas, temos: x = (xB , 0). Se estendermos o raciocnio a matriz A, podemos igualmente dividi-la em uma matriz m x m, matriz que denominaremos por B, de rank = m e outra m X (n- m), matriz que denominaremos R.
A=m
Em relao diviso proposta pela Figura 18 podemos afirmar que: Definio 5: Seja B uma base associada matriz A. O vetor composto de xB = B-1 b e xR = 0 chamado de soluo bsica. E ainda que: Definio 6: Uma Soluo Bsica sem componentes negativas denominada
soluo bsica vivel.
Para fixar as definies anteriores; seja o seguinte sistema de equaes que constitui um conjunto de restries de algum problema de Programao Linear:
Da definio 7 decorrem os seguintes teoremas e corolrios importantes para o entendimento do mtodo simplex:
Teorema 1:
Demonstrao:
Seja C o conjunto formado pelos pontos x tais que: Ax = b x >= 0 Se C convexo ento (ver definio de conjunto convexo no anexo) para qualquer conjunto composto por dois pontos distintos x1 x2 pertencentes a C, a combinao linear convexa desses pontos tambm pertence a C, o que equivalente a dizer que:
Sejam duas solues viveis de C, x1 x2, tais que x1 <> x2, ento:
e seja:
Ento:
Teorema 2: Toda soluo bsica vivel do sistema Ax = b um ponto extremo do conjunto de solues viveis, ou seja, um extremo do conjunto C.
Demonstrao:
Seja, ainda, uma soluo vivel qualquer x, de dimenso n, na qual, sem perda de generalidade, as variveis bsicas so as m primeiras:
Suponhamos, por absurdo, que x no seja um ponto extremo do conjunto convexo C, definido anteriormente. Ento x pode ser obtido por uma combinao convexa de outros dois pontos distintos desse mesmo conjunto. Chamando de y e z esses dois pontos, temos:
A relao x = ay + (1 -a)z, colocada em termos das coordenadas de cada um dos trs vetores, fornece as seguintes relaes:
Devido s relaes 0=<a=<l, y>=0 e z>=0 as ltimas (n - m) relaes do conjunto acima descrito s podem ser satisfeitas num dos seguintes casos:
Neste caso teramos x = y=z, pois tanto y quanto z so solues bsicas do sistema em anlise, calculados com as mesmas variveis bsicas. . 2. a = 0 e zm + i = 0 para = 1, ..., n - m.
Por raciocnio anlogo ao caso anterior, deduzimos que x = z. Alm disso, como a = 0, segue-se que x = y = z. 3. a = l e ym + i = 0 para = 1,..., n-m. n | Por razes anlogas
conclui-se que x = y = z.
Dessa forma, demonstra-se que no existem solues viveis y e z, distintas da soluo bsica x que satisfaam a relao x = ay + (1 - a)z. Por contradio com a hiptese inicial, demonstra-se que x um ponto extremo do conjunto convexo C. A relao entre pontos extremos de C e as solues viveis bsicas de um PPL uma correspondncia biunvoca, como mostra a Figura 20.
O Teorema 2 demonstra a correspondncia no sentido do ponto extremo para a soluo bsica vivel e o Teorema 3 completa a associao. Teorema 3: Todo ponto extremo x de um conjunto de solues viveis de um sistema Ax = b uma soluo bsica vivel.
Observamos tambm que um ponto x extremo em um conjunto de solues viveis de um PPL se e somente se x >= 0 for uma soluo bsica do sistema de equaes lineares Ax = b. Corolrio 1: O conjunto dos pontos extremos de um conjunto de solues viveis finito e limitado em Cnm.
-----------------------------------------------------------------------
Corolrio 2; Se existe uma soluo vivel, ento existe uma soluo bsica vivel. Finalmente, o ltimo respaldo necessrio da teoria para entendermos e justificarmos a estratgia do mtodo simplex diz respeito ao valor timo alcanado pela funo objetivo. Qual seria a associao entre os pontos extremos e o valor da funo objetivo? Existe alguma garantia de que o valor timo seja alcanado nos pontos extremos de C? O Teorema 4 esclarece a questo colocada.
Teorema 4: 1, Se uma funo objetivo possui um mximo ou um mnimo finito, ento pelo menos uma soluo tima um ponto extremo do conjunto convexo C do Teorema 1. 2. Se a funo objetivo assume o mximo ou o mnimo em mais de um ponto extremo, ento ela toma o mesmo valor para qualquer combinao convexa desses pontos. A Figura 21 resume simplificadamente os aspectos tericos que garantem o bom funcionamento do mtodo simplex. O mtodo vai, basicamente, experimentar uma sequncia de soluo bsicas viveis na busca do valor timo para a funo objetivo, e isso um dos aspectos que permitem ao algoritmo um bom desempenho e a garantia de sua convergncia em nmero finito de passos.
"quadros" do simplex e de suas operaes de "pivoteamento". O mtodo normalmente sugerido na literatura o das operaes elementares. Essa tcnica permite que a cada passo do algoritmo o esforo de inverso j despendido em iteraes anteriores seja completamente aproveitado. importante que se entenda que no existe, de fato, um compromisso do algoritmo com um mtodo de inverso especfico para a matriz bsica. Em ltima anlise, o mtodo simplex no obriga que a matriz tenha que ser invertida por um mtodo de pivoteamento, apesar de que todo o seu raciocnio seja aplicado tradicionalmente junto com essa tcnica. O segundo ponto abordado por um critrio bastante simples que envolve o clculo da possvel contribuio para o acrscimo ou decrscimo da funo objetivo (conforme o caso: maximizao ou minimizao) com a possvel entrada na base de uma varivel no bsica. O critrio aponta a escolha da varivel de maior contribuio imediata. A eficincia do mtodo simplex e seu extraordinrio poder de funcionar na prtica est associado ao critrio adota-do nesse clculo. O terceiro tema diz respeito ao teste de parada que inclui a identificao das condies em que no existe mais a possibilidade de que uma troca de variveis na base possa melhorar o critrio de otimizao, ou ainda situaes em que identificado um comportamento patolgico de crescimento indefinido ou de inviabilidade do problema.
3.2 - Um Exemplo de Soluo de um Programa de Programao Linear Um pequena metalrgica deseja maximizar sua receita com a venda de dois tipos de finas fitas de ao que se diferenciam em qualidade no acabamento de corte. As fitas so produzidas a partir do corte de bobinas de grande largura. Existem duas mquinas em operao. Uma das mquinas mais antiga e permite o corte dirio de 4.000 m de fita. A outra, mais nova, corta at 6.000 m. A venda das chapas no mercado varia com a qualidade de cada uma. Fitas produzidas na mquina antiga permitem um lucro de 3 u.m. por mil metros de produo. Fitas cortadas na mquina moderna produzem um lucro de 5 u.m. por mil metros de produo. Cada mil metros de fita cortada na mquina antiga consome 3 homens x hora de mo-de-obra. Na mquina moderna so gastos apenas 2 homens X hora. Diariamente so disponveis 18 homens x hora para a operao de ambas as mquinas. Determinar a produo que otimiza o lucro da metalrgica. A modelagem deste problema de programao linear, que denominaremos "das fitas" ou Fita_l, simples e pode ser realizada da seguinte forma: 1. Escolha da varivel de deciso xi = comprimento da fita cortada na mquina velha i=l e comprimento da fita cortada na mquina nova (i = 2).
2. Elaborao da funo objetivo z = Maximizar {f(x) = 3xl + 5x2} -nmero total de unidades monetrias obtidas com a venda das fitas em seus diversos comprimentos. 3. Formulao das restries tecnolgicas Considerando a unidade de comprimento das fitas igual a 1.000 m temos: a) Restrio associada disponibilidade da maquinaria:
b) Restrio do comprimento das chapas fabricadas na mquina velha: i c) Restrio do comprimento das chapas fabricadas na mquina nova: 4. Restries de no negatividade Podemos resumir o modelo de Fita_l da seguinte forma:
Corno nos foi solicitado que, alm do modelo, fosse exibido o melhor esquema para a produo, vamos buscar a soluo do problema. Examinado o modelo de Fita_l encontramos a necessidade de maximizar uma funo linear sujeita a um conjunto de trs inequaes. O sistema de restries matricial com m linhas e n colunas, onde n > m. Supondo que esse sistema de equaes possua alguma soluo, ento essa soluo poder ser obtida atravs de um determinante da ordem de m, correspondendo a uma certa submatriz mXm derivada da matriz de restries de Fita_l. Nesse caso, deduzimos que a matriz de restries de Fita_l representa um conjunto de equaes indeterminado, ou seja, possuindo infinitas solues aceitveis. Resumindo: se Fita_l possui soluo, ento teremos que busc-la maximizando a funo z sobre um conjunto infinito de solues viveis. Vamos exemplificar a natureza da dificuldade do problema proposto atravs da representao grfica de Fita_l. Representaremos a varivel x1 no eixo dos x e a varivel x2 no eixo dos y. Como podemos observar na Figura 22 os pontos O, A, B, C, D e E so exemplos de solues para o conjunto de restries de Fita_l. A Tabela 28 mostra o valor assumido da funo objetivo z em cada um dos pontos selecionados: