Pesquisa Operacional_Metodo Simplex

download Pesquisa Operacional_Metodo Simplex

of 42

Transcript of Pesquisa Operacional_Metodo Simplex

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    1/42

    Algoritmos de Otimizacao

    Marcos Augusto dos Santos

    [email protected]

    9 de agosto de 2005

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    2/42

    PO SUMARIO

    Sumario

    1 Introducao 3

    2 Programacao linear 4

    2.1 Resolucao grafica . . . . . . . . . . . . . . . . . . . . . . . . 9

    3 Metodo simplex 13

    3.1 Colocacao do pplna forma padrao . . . . . . . . . . . . . . . 153.2 Caracterizacao algebrica dos vertices . . . . . . . . . . . . . . 163.3 O algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.4 Solucao inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.5 Teste de otimalidade . . . . . . . . . . . . . . . . . . . . . . . 183.6 Melhoria da solucao . . . . . . . . . . . . . . . . . . . . . . 183.7 Resolvendo algebricamente o problema da cervejaria . . . . . 193.8 O Simplex utilizando quadros . . . . . . . . . . . . . . . . . 22

    4 Analise de sensibilidade 244.1 Variacao dos termos independentes das restricoes . . . . . . 244.2 Variacao dos coeficientes da funcao objetivo . . . . . . . . . . 264.3 Analise de sensibilidade - utilizacao dos quadros do simplex . 28

    4.3.1 Determinacao dos custos marginais e reduzidos . . . . 294.3.2 Limites de variacao dos coeficientes da funcao objetivo 314.3.3 Limites de variacao dos termos independentes . . . . . 32

    4.4 Confiabilidade da solucao otima . . . . . . . . . . . . . . . . . 34

    5 Dualidade em programacao linear 34

    5.0.1 Problema 1 - Mistura de racoes . . . . . . . . . . . . . 355.0.2 Problema 2 - Custo dos nutrientes . . . . . . . . . . . 365.0.3 Solucao dos problemas 1 e 2 . . . . . . . . . . . . . . . 37

    6 Exerccios propostos 38

    6.1 Parte 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    7 Introducao a programacao convexa diferenciavel 38

    8 Algoritmos baseados na nocao de centro 38

    8.1 Metodo das secoes centrais, esferas e elipsoides . . . . . . . . 39

    Lista de Figuras

    1 Representacao da regiao correspondente ax1, x2 0 e 5x1+15x2 480 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    2 Regiao da figura 1 limitada com a representacao do estoquede lupulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    1

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    3/42

    PO LISTA DE FIGURAS

    3 Conjunto de solucoes viaveis do problema da cervejaria . . . . 124 Valores maiores da Receita (ou menores) correspondem aos

    pontos nos extremos dos seguimentos rs genericos . . . . . . 135 Curvas de nvel de uma funcao f(x) . . . . . . . . . . . . . . 146 Enumeracao dos vertices do conjunto de solucoes viaveis . . 19

    2

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    4/42

    PO

    1 Introducao

    Em 1992, a prestigiosa revista Management Sciencepublicou um artigo so-bre as profissoes do futuro. Tentou prever quais seriam as ofertas de trabalhomais promissoras no seculo XXI. Em um exerccio arriscado, listou ramos

    de servico ligados a geriatria, bioinformatica, genetica, computacao e outrasareas. Chama a atencao um dos seus poucos fracassos.

    Apostou em uma mudanca no paradigma de conducao dos negocios quepassaria a envolver intimamente a Programacao Matematica. Sabemos,hoje, que o uso de modelos sofisticados na vida das industrias e dos negocioscontinua tao apagado quanto na epoca em que o artigo foi escrito. Hamotivos para acreditar que ate nos meios academicos ha quem a consideredisciplina dispensavel para a formacao de Engenheiros, bachareis de Siste-mas de Informacao, Computacao, Economistas e Administradores.

    Talvez as tecnicas nao tenham evoludo na velocidade requerida; emgeral, a solucao de varios problemas ainda exige o desenvolvimento de al-goritmos especficos e uma boa dose de criatividade. Nao cabe aqui umageneralizacao mas, percebe-se claramente uma distancia acentuada entre te-oria, recursos e realidade de mercado. Fazer fluir essa disciplina em cursosde graduacao como complemento de outras materias ja estudadas, e um doscaminhos para tentar alterar esse estado de coisas.

    Este texto e uma introducao a Programacao Matematica e busca apri-morar a capacidade do leitor de resolver problemas e construir solucoes.E uma contribuicao diferente. Ao inves de assentar a disciplina segundoseus canones e apresenta-la pelos seus aspectos que a diferenciam das ou-

    tras materias como usualmente e feito nos textos da area busca-se aintersecao com outras tecnicas e metodos que ja sejam de conhecimento doleitor. Esse formato implica em sacrificar, em parte, a argumentacao teoricaque tornaria mais elegante e concisa a apresentacao de alguns temas. Mas,por outro lado, poderia nao incentivar ou afastar talentos capazes de levarpara o mercado importantes subsdios que a materia oferece para o planeja-mento e operacao de sistemas complexos. Assim, em alguns captulos, estematerial tera de ser suplementado com o apoio de algum dos livros sugeridosna bibliografia.

    Outra diferenca refere-se a arquitetura que esta por traz do texto. Utilizo

    de um projeto que tem funcionado nos meus cursos da disciplina. Depoisde varias tentativas; mal sucedidas, das quais meus alunos foram as maio-res vtimas; concluo com alguma seguranca, que o melhor e comecar pelaProgramacao Linear e utilizar a mais tradicional das tecnicas; o metodoSimplex. Ate a, nada de diferente. Este e o primeiro captulo de quase

    3

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    5/42

    PO

    todo compendio da area. O que vem depois e que e mais criativo e util.Na sequencia, a Programacao Linear e posta como um caso bem particularda Programacao Convexa Diferenciavel. Depois, para introduzir os algorit-mos polinomiais, que recentemente tiveram um grande avanco, sao tratadosmetodos baseados na nocao de centro. Eles sao uteis e capazes de despertar

    a criatividade do leitor.

    Consistentemente, todo o curso foi planejado para utilizacao de algumambiente para exercitar os algoritmos. E sugerida a utilizacao do Scilab,um software livre, disponvel na rede para ser baixado sem grande esforco.A atitude subjacente e que, uma vez validado o modelo ou processo em umambiente matematico, este possa ser implementado em um ambiente pro-fissional, utilizando algumas das rotinas disponveis no proprio ambiente deprototipagem.

    Finalmente, gostaria de agradecer aos meus alunos de Pesquisa Opera-

    cional que, de tanto reclamar da bibliografia que eu sugeria, incurtiu-meo mantra escrever as notas de aula, que agora transformo em acao, nodecorrer das ferias do fim do primeiro semestre letivo de 2005.

    2 Programacao linear

    Foi mesmo Marco Polo quem introduziu o macarrao na Italia, trazendo-oda China? Claro que nao! Em 827, segundo Jeffrey Steingarten, crticogastronomico da revista Vogue, seculos antes de Marco Polo ter ou nao na-vegado ate a China, os arabes conquistaram a Siclia e levaram o macarraoconsigo. Mas, talvez nao seja o caso de falar de macarrao em tempos de

    dieta de Atkins que anda banindo todo carbohidrato da alimentacao.

    Da janela do meu escritorio vejo uma pequena floresta que mal da paraalimentar seus passaros. Insistentemente, eles debatem no meu telhado emum esforco inutil em busca de alimento. Encostado na cerca da divisa, jazesquecida uma caixa de material para reciclar. Examino cuidadosamente,embora de longe, as garrafas vazias, o papelao prensado e toda sorte debugiganga, que certamente sera util para alguem criativo. Uma garrafa es-cura, dessas de formato antigo, que ha algum tempo atras conservou umtipo de cerveja artezanal, reluz na claridade do fim da tarde. Parece queha espaco no mercado sendo ocupado por pequenos fabricantes em meio aosmonopolios que dominam a fabricacao e distribuicao desses fermentados.

    Estou tomado de um subito interesse pela fabricacao de cerveja. Meucomputador coletou uma duzia de receitas. Os especialistas certamente di-vergiriam ao apontar qual e a melhor. Estou utilizando a menor delas. Dos

    4

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    6/42

    PO

    ingredientes, o mais estranho e o lupulo. O dicionario informa que e umaflor de trepadeira originaria de regioes frias da Europa. O malte e a cevadaparcialmente germinada e submetida a secagem branda e controlada. Desteprocesso resultam quatro tipos de malte: pilsen (cervejas claras), muchen(semi-escura), caramelo (malzbier) e preto (escura). O microorganismo que

    ativa a fermentacao da pasta que se forma durante a fermentacao, e o levedo.Controlar a temperatura dessa pasta e a parte mais difcil.

    No livro A cozinha de Paul Bocuse, o proprio recomenda que todas asreceitas, simples ou complicadas que nele [no livro] se encontram s o teraoexito se a dona de casa souber escolher, no mercado local, os produtos dequalidade que devem entrar na composicao dos pratos. Adiante acrescenta, se o preparo do prato mais sofisticado nao der totalmente certo, [...] tam-pouco sera um fracasso completo, caso tenha sido feito com produtos deprimeira. Da conclui, por isso a dona de casa nao deve abrir este livroe resolver preparar este ou aquele prato, sem mais nem menos. Antes, deve

    ir ao mercado ou a feira, onde vera com o que pode contar.

    Um gerente de cervejaria artezanal trabalha sujeito a uma serie de res-tricoes rigorosas. Fabricar bebidas com os alimentos que estejam no seu apicesazonal elimina parte das possibilidades. Assim, imagine que a producao temde ser planejada para faturar o maximo possvel e que no momento, somentedois tipos de cerveja podem ser produzidos; a cerveja clara e a cerveja es-cura. Os ingredientes escassos sao o millho, o lupulo e a cevada. Estaodisponveis nas quantidades de 480u, 160ue 1190u. Na receita consta que 1barril de cerveja clara consome 5u de milho, 4u de lupulo e 35u de cevada.Ja um barril de cerveja escura gasta 15u de milho, 4u de lupulo e 20u decevada. Pela tabela vingente, e possvel vender um barril de cerveja clarapor R$13, 00. A cerveja escura, talvez devido a raridade, encontra um precomelhor,R$23, 00 por barril.

    Escolher a producao nao e atividade descuidada; determinar quantosbarris de cada uma das cervejas deverao ser produzidos para maximizar areceita nao e resultado que se obtem sem planejar.

    Cautelosamente, o gerente esboca tres possibilidades:

    Fabricar o maximo possvel do produto mais caro.Neste caso,

    o estoque de milho da para

    480u

    15 ubarril

    = 32 barris;

    5

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    7/42

    PO

    o estoque de lupulo consegue fabricar

    160u

    4 ubarril

    = 40 barris e

    o estoque de cevada e suficiente para

    1190u

    20 ubarril

    = 59, 5 barris.

    Esta escolha propicia uma receita de R$732, 00 (32 R$23, 00) e im-plica em sobras de lupulo e de cevada.

    Economizar o recurso que esta se tornando escasso mais rapidamente.Tao imediata quanto a primeira estrategia, esta encontra um culpadopelas sobras; o milho. Assim, produzindo-se somente a cerveja claraque consome menos milho que a cerveja escura, tem-se que:

    o estoque de milho da para

    480u

    5 ubarril

    = 96 barris;

    o estoque de lupulo consegue fabricar

    160u

    4 ubarril

    = 40 barris e

    o estoque de cevada e suficiente para

    1190u

    35 ubarril

    = 34 barris.

    O resultado R$442, 00 (34 R$13, 00) e inferior aos R$732, 00 da es-trategia anterior.

    Utilizar convenientemente os recursos. Nas duas estrategias sobram in-sumos. Nao constitui coincidencia que a melhor escolha de producaoe aquela que aproveita, da melhor forma possvel, os recursos. Semtemor, o gerente pos-se a procurar aleatoriamente operacoes mais

    rentaveis e, em um golpe de sorte, conseguiu uma terceira escolha,melhor que as duas anteriores. A fabricacao de 14 barris de cer-veja clara ao lado de 26 barris de cerveja escura resulta na receitade 14 R$13, 00 + 26 R$23, 00 =R$780, 00.

    6

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    8/42

    PO

    O ultimo resultado pos o gerente em alerta; seria esta a melhor solu cao?Embora entendesse bem dos meandros do complexo processo de transfor-mar cereais em fermentados, as circunstancias tornavam difcil escolher oque fazer. Cetico acerca de seus proprios processos de tomada de decisao,percebeu, finalmente, que nao haveria jeito de conseguir dar uma resposta

    sem um modelo. Seguro, definiu duas variaveis para representar as decisoesa serem tomadas:

    x1, quantidade de barris de cerveja clara a serem fabricadas e

    x2, quantidade de barris de cerveja preta.

    Como um bom comeco ja e metade, prosseguindo, ao examinar a res-tricao a disponibilidade de milho;

    a quantidade de milho consumido na fabricacao de x1

    barris de cervejaclara+

    a quantidade de milho consumido na fabricacao de x2 barris de cervejaescura

    nao pode ser superior aoestoque de milho;

    percebeu que ela pode ser expressa por uma inequacao:

    5x1+ 15x2 480.

    E, de forma semelhante, as restricoes da disponibilidade do lupulo e da ce-vada;

    4x1+ 4x2 160,

    35x1+ 20x2 1190.

    Estas duas ultimas, juntamente com a restricao do milho, formam um con-junto de inequacoes que devem ser satisfeitas por qualquer escolha de valorespara (x1, x2). Elaborando um pouco mais, percebeu que os valores negativospara as variaveis nao faziam sentido. Mais duas restricoes de nao negativi-

    dade deveriam se juntar as outras:

    x1 0 e

    x2 0.

    7

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    9/42

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    10/42

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    11/42

    PO 2.1 Resolucao grafica

    0 10 20 30 40 50 60 70 80 900

    5

    10

    15

    20

    25

    30

    Restrio associda disponibilidade de milho

    nmero de barris de cerveja clara

    nmerodebarrisdecerveja

    escura

    Figura 1: Representacao da regiao correspondente a x1, x2 0 e 5x1 +15x2 480

    entao ReceitaOtima = Receitax1= x

    k1 ,x2= x

    k2

    fim sek = k + 1fim repitafim algoritmo

    O algoritmo tem duas falhas que saltam aos olhos. Primeiro, nao temcondicao de parada, ja que nao e capaz de identificar a solucao otima. Se-gundo, o espaco de busca e infinito. A instrucao

    escolha (xk1, xk2)

    T S,

    e difcil de ser implementada. Preocupado com o lado pratico;

    o algoritmo tem de terminar em um numero finito de passos;

    o gerente intui que tem de buscar as caractersticas da solucao otima.

    Em um terceiro eixo, ortogonal ao plano (x1, 0, x2), ele decide anotaras receitas obtidas por pontos (x1, x2) pre-determinados; por exemplo, parax1= 5 ex2= 10 a receita de 295 (13 5 + 2 3 10) corresponde a ordenada295 deste terceiro eixo.

    10

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    12/42

    PO 2.1 Resolucao grafica

    0 5 10 15 20 25 30 35 400

    5

    10

    15

    20

    25

    30

    35

    40Restries associdas s disponibilidades de milho e lpulo

    nmero de barris de cerveja clara

    nmerodebarrisdecerveja

    escura

    milho

    o

    lpulo

    Figura 2: Regiao da figura 1 limitada com a representacao do estoque delupulo

    Na figura 4, foram escolhidos dois pontos p e q(p, q R2), cujas receitassao Receitap e Receitaq. Os matematicos tem uma forma analtica pararepresentar os pontos do segmento pq; dizem que eles sao uma combinacaolinear dos pontos p e q; para [0, 1], qualquer x pqpode ser expressocomo

    x= (1 )p+r.

    As receitas obtidas com os pontos x pertencentes ao segmento pqpodem ser

    computadas pela funcao objetivoReceita= cTx,

    que e uma equacao linear:

    Receita= cT((1 )p+r).

    Logo, o conjunto de pontos corespondentes as receitas geradas pelos pon-tos pqcorrespondem ao segmento de reta ReceitapReceitaq. Considerandoagora os pontos r es e as respectivas receitasReceitar e Receitas, chega-sea seguinte conclusao:

    na busca do ponto otimo, nao e necess ario pesquisar pontos fora da

    fronteira.

    Receitas melhores (cotas mais altas) sao obtidas escolhendo-se um dos ex-tremos dos segmentos rs genericos.

    11

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    13/42

    PO 2.1 Resolucao grafica

    0 5 10 15 20 25 300

    10

    20

    30

    40

    50

    Restrio do estoque de cevada

    Conjunto de solues viveis do problema da cervejaria

    nmero de barris de cerveja clara

    nmerodebarrisdecerveja

    escura

    Figura 3: Conjunto de solucoes viaveis do problema da cervejaria

    Embora satisfeito com o avanco de seus estudos, os problemas do algo-ritmo 1 ainda persistem.

    Quando este mesmo raciocnio e feito na fronteira, observa-se que, naverdade, somente interessam as receitas geradas pelos extremos do segmentoab, que sao vertices do conjunto de solucoes viaveis. A seguinte conclusaolimita o espaco de busca:

    a solucao otima e um dos vertices do conjunto de solucoes viaveis.

    Antes de continuar: este resultado e fundamental. Resolve, obviamente,os problemas apontados no algoritmo 1. Se, do ponto de vista pratico, fossepossvel gerar todos os vertices do conjunto de solucoes viaveis, o problemaestaria resolvido. Mas, infelizmente, conforme sera visto mais adiante, onumero de vertices, muito embora seja finito, cresce exponencialmente comas dimensoes do problema.

    Curvas de nvel sao formas de representar figuras de tres dimensoes (oufuncoes) em um plano tomado como referencia. Em cotas pre-determinadas,intercepta-se um plano com a figura. Os resultados das intersecoes, sao pro-jetados no plano de referencia, produzindo o diagrama das curvas de nvelda figura (ou funcao) - ver figura 5.

    12

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    14/42

    PO

    05

    1015

    2025

    3035 0

    10

    20

    30

    400

    100

    200

    300

    400

    500

    600

    700

    800

    p

    qr

    s

    Receita r

    Receita s

    Figura 4: Valores maiores da Receita (ou menores) correspondem aos pontosnos extremos dos seguimentos rs genericos

    Agora o gerente da cervejaria esta pronto para achar, graficamente, asolucao otima do seu problema de escolha da producao. O lugar geometricoassociado a equacao da receita;

    Receita= 13x1+ 23x2;

    e um plano e as suas curvas de nvel sao retas.

    Ja se sabe que o ponto otimo, quando finito, e um dos vertices do con-junto de solucoes viaveis. No nosso caso, a Receita atinge o maior valor nopontox= (12 28)T, correspondente a cota 800.

    Os problemas reais envolvem centenas e ate milhares de variaveis, tor-nando impraticavel a sua resolucao grafica; o computador e sempre uma fer-ramenta indispensavel. A seguir, discutimos o metodo Simplex, uma formade implementar as ideias discutidas ate aqui.

    3 Metodo simplex

    Ha figuras na otimizacao que sao objeto de culto, como Dantzig que ganhounotoriedade quando em 1947, ao buscar a solucao para um problema deabastecimento aereo, fixou as bases para resolver um ppl. O metodo Sim-plex criado por ele, reinou absoluto ate os anos 80. A sua importancia junto

    13

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    15/42

    PO

    0 5 10 15 20 25 30 35 0

    10

    20

    30

    40

    0

    200

    400

    600

    800

    1000

    1200

    1400

    E

    D

    (vrtice timo)C

    Obteno da soluo tima

    o

    B

    A

    Figura 5: Curvas de nvel de uma funcaof(x)

    a comunidade cientfica transcendia o aspecto pratico a que se propunha.Esta classe de problemas, como ficara mais claro adiante, sob um determi-nado prisma, pode ser visto como combinatoria e o Simplex, popularizadona decada de 70 como um metodo eficaz, so veio a ser destronado maistarde, quando a dupla Klee-Minty propos uma classe de problemas para oqual metodo tem complexidade exponencial. Khachian em 1978 apresentouum algoritmo polinomial com otimas propriedades teoricas mas desempe-nho sofrvel na pratica. O que e bem diferente do Simplex, que convergeentre 2me 4miteracoes em varios problemas da vida real. Somente a partir

    dos trabalhos de Karmakar em 1984 e que se obteve uma classe de algorit-mos polinomiais, conhecida como de pontos interiores, que categoricamentefixou-se como superior ao metodo Simplex.

    Progresso na area obtem-se com metodos que tornam mais faceis pro-blemas difceis; problemas faceis podem ate ficar mais difceis. Obviamente,nao ha progresso quando problemas faceis tornam-se faclimos e os difceis,dificlimos. O primeiro caso parece ser o que ocorre com os metodos depontos interiores; problemas faceis ficaram difceis. Destarte as suas par-cas propriedades teoricas, o desempenho do Simplex em algumas classes deproblemas de medio porte, e excepcional. Continuamos a ensinar o Simplex

    por este motivo e, principalmente, por que ele e um bom instrumento parafixar as ideias subjacentes aos varios metodos que serao vistos nos captulosposteriores.

    14

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    16/42

    PO 3.1 Colocacao doppl na forma padrao

    3.1 Colocacao do ppl na forma padrao

    Por que formular umpplem uma forma padrao? Por dois motivos; um delese obvio. Facilita a discussao do metodo, uma vez que voce so tem que aterao padrao; discutir as variantes torna-se desnecessario. Fosse so isto, naovaleria a pena dedicar um subitem a questao.

    Para caracterizar os vertices do conjunto de solucoes viaveis, e necessariotransformar as inequacoes em equacoes equivalentes. Uma inequacao, porexemplo,

    x1 10,

    pode ser transformada em equacao equivalente com o uso de uma novavariavel s, restrita a ser nao negativa (s 0):

    x1+s= 10.

    Os mesmos pontos x1 que verificam a inequacaox1 10 tambem verificam

    a ultima equacao, desde que sejam atribudos valores adequados a variavels. Parax1= 7,s tem de valer 3 que seja mantida a identidade expressa porx1+s= 10.

    Nao e a toa que variaveis desse tipo sao conhecidas como variaveis defolga. Introduzindo uma variavel de folga de folga, em cada restricao doproblema da cervejaria, tem-se o modelo no seguinte formato:

    Maximizar Receita= 13x1+ 23x2sujeito a

    5x1+ 15x2+x3 = 480

    4x1+ 4x2+x4 = 16035x1+ 20x2+x5 = 1190

    x1, x2, x3, x4, x5 0

    Diz-se que este problema esta na forma padrao porque

    todas as variaveis sao restritas a serem nao negativas,

    a funcao objetivo e de maximizar e,

    todas as restricoes sao de igualdade.

    Como e de se esperar, nao ha perda de generalidade quando se estabelecea forma padrao; qualquerpplpode ser colocado neste formato. Quando emum problema fizer sentido uma variavel assumir valores negativos, por exem-plo,x1ser irrestrito em sinal, bastaria substituir no modelo x1porx1x1.

    15

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    17/42

    PO 3.2 Caracterizacao algebrica dos vertices

    e impor a nao negatividade a estas duas novas variaveis. Qualquer numeronegativo pode ser expresso como uma diferenca entre dois numeros positivos.Ja no caso em que a funcao objetivo e de minimizacao, basta multiplicar afuncao por -1 e resolver normalmente o problema; o mesmo argumento xque maximizaz(x), tambem minimiza +z(x).

    Uma ultima observacao. Desigualdades do tipo x1 10 sao transfor-madas em equacoes equivalentes com a introducao de variaveis de excesso(surplus): x1 s= 10 e com a mesma exigencia de nao negatividade paras (s 0).

    3.2 Caracterizacao algebrica dos vertices

    Em um sistema de equacoes lineares dem linhas porn colunas comn > m,da-se o nome de solucao basica a solucao do sistema obtida quando se faznmvariaveis iguais a zero. O sistema passa a a ter o numero de incognitasigual ao numero de variaveis. No pplda cervejaria, o numero de variaveis e5 e numero de equacoes e 3; logo zerando 5 - 3 = 2 variaveis, tem-se umasolucao basica. Por exemplo, fazendo-se x1 = x2 = 0, tem-se a seguintesolucao basica:

    x3 = 480

    x4 = 160

    x5 = 1190.

    As variaveis x3, x4 e x5 sao variaveis basicas e x1 e x2 que estao valendozero, variaveis nao basicas. A solucao basica e compatvel quando todas asvariaveis sao nao negativas.

    Qual a importancia de uma solucao compatvel basica? Prova-se quea toda solucao compatvel basica corresponde um vertice do conjunto desolucoes viaveis em um ppl.

    3.3 O algoritmo

    Nos algoritmos de otimizacao sempre podem ser identificados procedimentospara realizar as seguintes tarefas:

    obtencao de uma solucao inicial,

    teste de otimalidade e

    melhoria da solucao

    16

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    18/42

    PO 3.4 Solucao inicial

    A partir de um ponto inicial, segue-se iterativamente melhorando a solucaoate que o teste de otimalidade indique a hora de parar; ver algoritmo aseguir.

    algoritmok = 0

    obtenha (xk) Srepitase xk e solucao otimaentao interrompafim seMelhore a solucao, computandoxk+1

    k = k + 1fim repitafim algoritmo

    O metodo Simplex caminha pelos vertices do conjunto de solucoes viaveis.A partir de um vertice inicial, muda-se para um vertice vizinho que aumentao valor da solucao corrente. Quando nao for mais possvel deslocar com ga-nho para a vizinhanca, tem-se caracterizado um otimo local. Dada umapropriedade intrnseca aos problemas de programacao linear, propriedadeessa que vem a ser a convexidade, este ponto de otimo local e global.

    A possibilidade de reconhecer o ponto de otimo nos problemas convexosfaz toda a diferenca na programacao matematica. Sao conhecidos bonsprocedimentos para alcancar um ponto estacionario para uma ampla gamade problemas. Mas, na ausencia da convexidade, pouco pode ser afirmadoquanto a otimalidade desse ponto alcancado.

    3.4 Solucao inicial

    Em geral, uma solucao inicialx0 para um algoritmo de otimizacao tem de serviavel. Nem sempre temos de pronto um ponto que atende simultaneamentetodas restricoes do modelo e este passo e resolvido com a resolucao de umproblema de viabilidade. Por enquanto, obtem-se uma base (vertice) inicialobvia que e formada somente pelas variaveis de folga. Zerando-se as variaveisde decisao (x1= x2 = 0) tem-se a seguinte solucao basica compatvel :

    x3 = 480,

    x4 = 160,x5 = 1190.

    Nada e produzido, a receita e zero e todo o estoque esta sobrando.

    17

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    19/42

    PO 3.5 Teste de otimalidade

    3.5 Teste de otimalidade

    Ao examinar a funcao objetivo;

    Receita= 13x1+ 23x2;

    observa-se que ha aumento na receita se forem atribudos valores superioresa zero as variaveis nao basicasx1 ex2. Portanto, o vertice atual formado sopelas variaveis de folga (x3, x4, x5) nao e o vertice otimo.

    Nos casos dos problemas de maximizacao, uma variavel nao basica com ocoeficiente maior que zero na funcao objetivo indica que a presente solucaoainda nao e otima. Importante notar que este teste so e valido quandoa funcao objetivo esta expressa somente com variaveis nao basicas (formapadrao). Essa necessidade pode ser atestada com um exemplo. Seja xnumavariavel nao basica (xn= 0) e xb uma variavel basica (xb= 0). Para avaliara seguinte funcao objetivo de maximizacao

    z= 10000 + 10xn+xb, (1)

    tem de ser conhecido xb. Supondoxb = 1000 100xn, o valor de z e dadopor:

    z= 10000 + 10 0 + 1000 100 0 = 11000.

    Sexndeixar de valer zero, o valor da funcao objetivo decresce; isto fica claroquando a funcao z e expressa somente com variaveis nao basicas:

    z = 10000 + 10xn+ (1000 10xn)

    z = 11000 90xn.

    Nesta ultima expressao ve-se que se xn assumir algum valor superior a zero,z decresce. Este fato nao estava aparente na equacao 1.

    3.6 Melhoria da solucao

    Vertices vizinhos tem em comum todas as variaveis basicas exceto uma. Acomposicao das bases associadas a cada um dos vertices do problema dacervejaria encontra-se no quadro a seguir (os vertices foram nomeados porA,B,C,... a partir da origem e no sentido horario; ver figura 6). Nesta

    tabela nota-se que a relacao das variaveis basicas de um vertice (segundacoluna) difere-se da seu vizinho (terceira coluna) em apenas uma vari avel.Este fato e geral e independe do numero de variaveis do problema.

    18

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    20/42

    PO 3.7 Resolvendo algebricamente o problema da cervejaria

    0 5 10 15 20 25 30 350

    5

    10

    15

    20

    25

    30

    35

    A

    B

    C

    D

    E

    milho

    lpulo

    cevada

    Vrtices do conjunto de solues viveis

    nmero de barris de chopp

    nmerodebarrisdecerv

    eja

    Figura 6: Enumeracao dos vertices do conjunto de solucoes viaveis

    vertice variaveis basicas (= 0) variaves nao basicas (= 0)

    A x3, x4, x5 x1, x2B x2, x4, x5 x1, x3C x2, x1, x5 x3, x4D x2, x1, x3 x5, x4E x4, x1, x3 x5, x2

    Relacao de bases no problemada cervejaria

    Obtem-se um vertice vizinho retirando uma variavel da base e colocandooutra nao basica em seu lugar.

    3.7 Resolvendo algebricamente o problema da cervejaria

    No problema da cervejaria, a partir da solucao basica inicial correspondenteao vertice A, melhora-se o valor da solucao colocando-se ou x1, ou x2 nabase. Para obter o vertice vizinho, somente uma destas duas variaveis en-tra na base (deixa de valer zero). Arbitrariamente, opta-se por x2. Com aproducao do produto 2 (cerveja preta) os estoques de milho, lupulo e cevadavao sendo consumidos ate que um deles acaba. Nesse ponto fica caracte-

    rizada a mudanca para o vertice vizinho; sai da base a variavel que maislimita o crescimento da variavel escolhida para entrar na base.

    A variavel x2 foi a escolhida para entrar na base; quanto maior o valorde x2, maior a receita. Expressando-se as variaveis basicas em funcao das

    19

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    21/42

    PO 3.7 Resolvendo algebricamente o problema da cervejaria

    nao basicas, tem-se:

    x3 = 480 5x1 15x2

    x4 = 160 4x1 4x2

    x5 = 1190 35x1 20x2

    A variavelx1continuara fora da base, isto e, o seu valor continuara sendozero. O numero de barris de cerveja preta que podera ser produzido com osestoques de milho lupulo e cevada e o mnimo de

    (480

    15 ,

    160

    4 ,

    1190

    35 )

    que e 32; isto e, a poducao dex2= 32 barris de cerveja preta zera o estoquede milho (x3= 0).

    A nova solucao passa a ser:

    Receita = 23x2= 736

    x2 = 32

    x4 = 160 4 32 = 32

    x5 = 1190 20 32 = 550

    que corresponde ao vertice B .

    Seguindo o algoritmo, e o instante de realizar o teste de otimalidade.

    A funcao objetivo tem de ser expressa somente em funcao de variaveis naobasicas. Utilizando a equacao correspondente a variavel x3 que acabou desair da base para expressar x2;

    x2= 32 1

    3x1

    1

    15x3;

    tem-se a nova expressao da Receita:

    Receita = 13x1+ 23(32 1

    3x1

    1

    15x3)

    Receita = 736 +16

    3x1

    23

    15x3

    A presente solucao ainda nao e otima. Com a variavel x1 entrando nabase, o valor da receita aumenta. Para determinar qual variavel deixara a

    20

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    22/42

    PO 3.7 Resolvendo algebricamente o problema da cervejaria

    base, as variaveis basicas sao expressas em funcao das nao basicas:

    x2 = 32 1

    3x1

    1

    15x3

    x4 = 160 4x1 4x2

    x5 = 1190 35x1 20x2

    As equacoes correspondentes as variaveis basicasx4e x5contem, cada uma,um termo com a nova variavel basicax2. Utilizando a primeira das equacoesdessa ultima serie para substituir x2 nas equacoes seguintes, tem-se umsistema de equacoes equivalente ao anterior que tem somente uma variavelbasica por linha:

    x2 = 32 1

    3x1

    1

    15x3

    x4 = 32 8

    3x1

    4

    15x3

    x5 = 550 85

    3x1

    4

    3x3

    Obviamente, a variavel x3 continua fora da base; nas equacoes anterio-res interessa saber qual das tres variaveis basicas (x2, x4, x5) limita o cres-cimento de x1. A entrada de x1 implica em uma diminuicao da producaoda cerveja escura representada por x2 e na alteracao dos estoques de lupuloe cevada, representados por x4 e x5. Examinando as equacoes, ve-se que aprimeira delas indica que o valor maximo de x1 e 96; pela segunda equacaoconclui-se quex1pode chegar ate 12 e, finalmente, a terceira equacao impoe

    um limite de 165085 ao valor de x1.

    Logo,x1entra na base com o valor 12; o maior valor que x1pode assumirsem tornar negativa as variaveis basicas (x2, x4, x5). Comox4 esta saindo,fica claro que o vertice atual e oC.

    Computando-se a nova solucao, tem-se:

    x2 = 32 1

    3.12 = 28,

    x1 = 12,

    x5 = 550

    85

    3 .12 = 210.

    21

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    23/42

    PO 3.8 O Simplex utilizando quadros

    Esta solucao corresponde a seguinte receita:

    Receita = 736 +16

    3x1

    23

    15x3

    Receita = 736 +16

    3 .12

    23

    15.0

    Receita = 800.

    Na ultima expressao da funcao objetivo aparecex1, agora tornada basica,que tem ser substituda para realizar o teste de otimalidade.

    Como

    x1= 12 1

    10x3

    3

    8x4,

    a nova expressao da funcao objetivo, expressa somente em termos de variaveisnao basicas, fica:

    Receita= 800 x3 2x4.

    A presente solucao e otima; a entrada ou de x3, ou de x4 na base naoaumenta o valor da receita.

    3.8 O Simplex utilizando quadros

    Usualmente, o metodo Simplex e sistematizado por meio de quadros com asntese de cada uma das iteracoes. No quadro a seguir tem-se a primeiraiteracao. Nele estao anotados os coeficientes da funcao objetivo, a com-posicao da base, o valor das variaveis basicas e os coeficientes das restricoes.

    Para ficar claro o teste de otimalidade, a funcao objetivo foi expessa da se-guinte forma:

    (z) + 13x1+ 23x2= 0

    No caso, Receita foi substituda por z por economia de notacao.

    Variaveis (-z) x1 x2 x3 x4 x5 LadoBasicas direito

    x3 5 15 1 480 L1x4 4 4 1 160 L2x5 35 20 1 1190 L3

    Funcao 1 13 23 0 L4Objetivo

    22

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    24/42

    PO 3.8 O Simplex utilizando quadros

    Metodo simplex - solucao inicial para o problema da cervejaria

    Nesta primeira iteracao conclui-se pela nao otimalidade da solucao depoisde examinar os coeficientes da funcao objetivo; a presente solucao

    x1= x2 = 0, x3= 480, x4= 160, x5= 1190 ez= 0

    nao e otima. Sex1 ou x2 entrar na base, o valor da receita (z) aumenta.Escolhe-se, arbitrariamente,x2, para entrar na base.

    Deixa a base (x3, x4, x5) aquela variavel que mais limitar o crescimentodex2que vai entrar. Assim, computando as razoes dos termos independentespelos coeficientes da coluna que vai entrar

    (480

    15 ,

    160

    4 ,

    1190

    20 )

    conclui-se pela sada de x3, que e a menor das razoes positivas.

    Para calcular a nova solucao, a linha 1 e dividida por 15 e x2 e subs-titudo nas linhas 2, 3 e 4. Estas substituicoes correspondem, no jargaoalgebra linear, as pivotagens. onde Multiplos de uma linha sao somados asdemais linhas para obter os zeros em posicoes desejadas. As operacoes quetransformam o quadro 1 na forma padrao da segunda iteracao estao anota-das a direita do proximo quadro.

    Variaveis (-z) x1 x2 x3 x4 x5 Lado OperacoesBasicas direito

    x21

    3 1 1

    15 32 L1 L1. 1

    15

    x48

    3

    4

    15 1 32 L2 L1.

    415

    +L2x6

    85

    3 4

    3 1 550 L3 L1.

    2015

    +L3Funcao 1 16

    3 23

    15 -736 L4 L1.

    2315

    +L4Objetivo

    Metodo Simplex - segunda iteracao

    Examinando-se os coeficientes da funcao objetivo neste ultimo quadro,ve-se que a solucao ainda nao e otima. Se x1 entrar na base, z aumenta.Para saber quem sai, computa-se as razoes dos termos independentes pelacoluna de x1. A menor das razoes positivas corresponde a linha da variavel

    x4. A intersecao da coluna da variavel que vai entrar na base (x1) com alinha da variavel que vai sair define o pivot. No novo quadro a nova colunade x1 tem de ter o valor 1 na linha 2 e zero nas demais.

    23

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    25/42

    PO

    Variaveis (-z) x1 x2 x3 x4 x5 Lado OperacoesBasicas direito

    x2 1 1

    15 28 L1 L2.

    1

    15+ L1

    x1 1 1

    10

    3

    8 12 L2 L2.

    8

    3

    x5 4

    3 1 210 L3 L2.

    2015

    L3

    Funcao 1 -1 -2 -800 L4 L2.2315 +L4Objetivo

    Metodo Simplex - ultima iteracao

    4 Analise de sensibilidade

    Para extrair o maximo de um modelo de programacao linear, o praticantetem de dominar alguns conceitos de economia relativos a solucao otima.Dois dos mais uteis sao o custo marginal das restricoes e o custo reduzidodas variaveis de decisao. Nao e exagero afirmar que tudo o que fornece a

    analise de sensibilidade de um ppl e tao importante quanto os valores otimosdas variaveis de decisao.

    O processo de otimizacao naturalmente fornece precos para os recur-sos; perguntas como quanto custa uma unidade de milho em estoque, umaunidade de lupulo ou uma unidade de cevada, sao facilmente respondidas.Discute-se aqui o custo intrnseco atribudo pelo processo de resolucao; naoo custo de mercado. Bastante util tambem e saber se uma variacao nos cus-tos dos produtos (coeficientes na funcao objetivo) afeta o nvel de producaootimo das variaveis de decisao.

    4.1 Variacao dos termos independentes das restricoesQual o impacto causado no valor da funcao objetivo no ponto otimo quandoo estoque de milho e alterado de 480u para 481u?

    Com uma regua transparente, traca-se uma reta paralela a reta que foiutilizada para delinear o semi-espaco associado a restricao da disponibili-dade do milho. Ha uma ligeira ateracao do conjunto de solucoes viaveis(ver figura); o vertice C e a nova solucao otima. O novo valor otimo dex= (x1, x2)

    T e a solucao do seguinte sistema de equacoes:

    5x1+ 15x2 = 481

    4x1+ 4x2 = 160,

    dada por x= (11.9 12.1)T. A receita correspondente e

    13 11.9 + 23 28.1 = 801.

    24

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    26/42

    PO 4.1 Variacao dos termos independentes das restricoes

    O impacto da variacao de +1 unidade na disponibilidade de milho e dado por

    = 801 800 = 1.

    Cada unidade de milho acrescentada ao estoque (ate um certo limite, eclaro!) causa um aumento de 1 unidade monetaria na solucao otima. Da-seo nome de custo marginal a esta taxa de variacao. Para nao haver sobre-posicao de efeitos, os outros termos independentes sao mantidos inalterados.

    E muito util o uso desse tipo de informacao em analises pos-otimizacao.Se o valor do milho no mercado for inferior a R$1/u; por exemplo, R$0.40;ha uma indicacao de ganho incorporar ao estoque uma certa quantidade demilho a ser adquirida. Para cada unidade agregada ao sitema produtivo, haum potencial de ganho de R$0, 60, aqui descontados os R0, 40 gastos paracompra-la.

    Para calcular o custo marginal do lupulo, intercepta-se as retas associ-

    adas aos semi-espacos do milho e do lupulo, esta ultima com o seu termoindependente alterado em +1 unidade;

    5x1+ 15x2 = 480

    4x1+ 4x2 = 161;

    que resulta emx= (12, 375 27, 875)T. O novo vertice otimo propiciauma receita de R$802. A variacao no valor da funcao objetivo e de R$2/u.

    Quanto a cevada, observa-se que seu custo marginal e zero. De nada adi-anta acrescentar novas unidades ao estoque; o vertice otimo nao e alterado.

    Somente as sobras e que aumentam. Em economia, so tem custo diferente dezero os recursos escassos. Pense no ar que voce respira. Enquanto e abun-dante, seu custo e zero. Mas, se ele ficar escasso, certamente, vai passar ater um custo diferente de zero.

    A viabilidade de diversificar a linha de producao, com o acrescimo denovos produtos, pode ser analisada com os custos marginais, sem que umnovo problema seja formulado e resolvido. Nao e necessario acrescentar no-vas variaveis ao modelo e novamente operar o simplex para saber, a priori, seum novo produto tera a sua producao incentivada. Por exemplo, considerea fabricacao de chopp, que consome milho, lupulo e cevada nas proporcoesde 20, 25 e 18 unidades por barril. Ele pode ser colocado no mercado aopreco de R$55 por barril. Vale a pena produz-lo?

    Para produzir o primeiro barril, tudo se passa como se os estoques demilho, lupulo e cevada passassem a ser 460, 135 e 1172 unidades. O impacto

    25

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    27/42

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    28/42

    PO 4.2 Variacao dos coeficientes da funcao objetivo

    a e o coeficiente angular ou a inclinacao e b e o termo independente.Colocando a reta associada a curva de nvel que passa pelo vertice otimoneste formato;

    x2= 13

    23+ 800;

    tem-se que a = 1323 . Uma mudanca no coeficiente de x1 na funcao objetivoimplica em uma mudanca desta inclinacao. Ate um limite, pode-se seguiraumentando o custo do produto 1 (cerveja clara) sem que o vertice Cdeixede ser a solucao otima. Quando a inclinacao desta reta modificada coincidircom aquela associada a restricao do lupulo;

    x2 = 4

    4+ 160;

    tem-se a situacao em que tanto o vertice Cquanto o vertice D sao solucaootima para o problema. Este e um limite para as alteracoes do coeficientede x1. Para computa-lo, basta fazer

    13 + s

    23 =1

    ou,s= 10.

    Os nveis otimos das variaveis de decisao nao sao alterados mesmo queo custo do produto associado a variavelx1 atinja o valor 13 + s= 23. So-mente a partir deste valor e que ha a modificacao do vertice otimo. Cumpreobservar que a funcao objetivo

    23x1+ 23x2

    passa pelos vertices C e D; ambos sao solucoes otimas. Em particular,qualquer combinacao linear entre eles resulta em um ponto que tambem esolucao otima. Neste caso, o problema tem infinitas solucoes otimas.

    Um outro limite e dado pela inclinacao da reta associada ao milho;

    x2= 5

    15+ 480.

    Fazendo-se

    13 + i

    23 =

    1

    3,

    tem-sei=

    16

    3 .

    Se o preco do produto associado a x1 cair ate 13 + i = 7.66, o verticeCainda continua sendo solucao otima. Sintetizando, a atual solucao x =

    27

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    29/42

    PO 4.3 Analise de sensibilidade - utilizacao dos quadros do simplex

    (12 28)T e otima mesmo que o custo do produto 1 sofra uma variacao efique no intervalo [7, 66, 23, 00].

    Manipulando o coeficiente da variavel x2 para que a curva de nvel dafuncao objetivo no vertice Ccoincida com a inclinacao da reta associada a

    restricao do milho, tem-se um dos limites para as alteracoes do coeficientede x1. Para computa-lo, basta fazer

    13

    23 + s=

    1

    3

    ou,s= 16.

    Para o outro limite, basta fazer

    13

    23+ i= 1

    ou,i= 10.

    Assim, se o preco da cerveja escura pertencer ao intevalo [13, 39], o vetorx= (12 28)T continua respondendo pelo melhor faturamento possvel.

    4.3 Analise de sensibilidade - utilizacao dos quadros do sim-

    plex

    No item anterior foram determinados os limites de variacao dos coeficien-tes da funcao objetivo para os quais os nveis de producao indicados nasolucao otima permanecem inalterados. Tambem foram computados os cus-

    tos marginais de cada um dos recursos envolvidos na fabricacao dos produtosassociados as variaveis de decisao. O calculo destes parametros teve comoesteio o grafico do conjunto de solucoes viaveis.

    Se voce esta preocupado com o fato de que nao e facil proceder dessaforma nos problemas reais, voce tem razao. Nos problemas praticos nao epossvel representar graficamente o conjunto de solucoes viaveis.

    Para extrair o maximo dos procedimentos algebricos para a analise pos-otimizacao, passaremos a utilizar um outro exemplo. Como primeira licao,o problema a seguir, nos servira.

    Maximizar 5x1+ 4, 5x2+ 6x3 (2)

    28

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    30/42

    PO 4.3 Analise de sensibilidade - utilizacao dos quadros do simplex

    sujeito a:

    6x1+ 5x2+ 8x3 60

    10x1+ 20x2+ 10x3 150

    x1 8

    x1, x2, x3 0

    O quadro inicial e mostrado a seguir.

    Variaveis (z) x1 x2 x3 x4 x5 x6 LadoBasicas direito

    x4 6 5 8 1 60x5 10 20 10 1 150x6 1 1 8

    Funcao 1 4,5 6 0Objetivo

    Metodo Simplex - quadro inicial para o problema 2

    Depois de aplicar o metodo simplex, tem-se o seguinte quadro final:

    Variaveis (z) x1 x2 x3 x4 x5 x6 LadoBasicas direito

    x2 1 2

    7 1

    7

    3

    35 42

    7

    x6 11

    7 2

    7

    1

    14 1 14

    7

    x1 1 11

    7

    2

    7 1

    14 63

    7

    Funcao 1 47

    1114

    135

    51 37

    Objetivo

    Ultima iteracao do problema 2

    A seguir, vemos como determinar os custos marginais e os custos redu-zidos utilizando diretamente os quadros do simplex.

    4.3.1 Determinacao dos custos marginais e reduzidos

    As variaveis de folga estao diretamente relacionadas aos termos independen-

    tes. Na primeira equacao do modelo;

    6x1+ 5x2+ 8x3+x4= 60;

    29

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    31/42

    PO 4.3 Analise de sensibilidade - utilizacao dos quadros do simplex

    para passar o terno independente de 60 para 61, basta, aritmeticamentefalando, que a variavel de folga x4 assuma o valor 1. Na ultima expressaoda funcao objetivo;

    z = 513

    7

    4

    7

    x3 11

    14

    x4 1

    35

    x5;

    fazendox4 = 1, ha um aumento de 11

    14no valor otimo. Este e o custo mar-

    ginal associado a primeira restricao. Da mesma forma, o custo marginal dasegunda restricao e 1

    35. A variavel de folga da terceira equacao do modelo

    (x6) tem coeficiente igual a zero na ultima expressao da funcao objetivo;logo o custo marginal e zero. De fato, na solucao otima, x6 = 0; ha umasobra de 1 4

    7na disponibilidade do recurso 3.

    A variavelx3 e nao basica na solucao otima. Os coeficientes tecnologicosassociados a coluna 3 sao (8, 10, 0)T. Caso seja produzida uma unidade doproduto 3, os termos independentes sao decrescidos de (60 8, 150 10, 8

    0)T

    , o que implicaria no seguinte impacto no valor da funcao objetivo:

    8 11

    14 +

    10 1

    35 +

    0 0

    64

    7

    Descontando o valor com que o produto 3 e vendido, apura-se o seguinteprejuzo:

    = 6 64

    7=

    4

    7,

    que e o custo reduzido associado a variavel 3.

    Nao e necessario fazer os calculos acima para computar o custo reduzido;ele e o coeficiente das variaveis de decisao na ultima expressao da funcaoobjetivo.

    Voce tambem pode interpretar o coeficiente de x3 como sendo o customarginal associado a restricao de nao negatividadex3 0. Por definicao, o

    custo marginal e o impacto causado no valor da funcao objetivo quando otermo independente e aumentado de +1. Se a restricao de nao negatividadeda variavelx3 fosse alterada para

    x3 1,

    30

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    32/42

    PO 4.3 Analise de sensibilidade - utilizacao dos quadros do simplex

    o valor de x3 salta de zero para 1 na solucao otima (a sua producao emnveis mais elevados nao e incentivada). Com x3 = 1, o novo valor dafuncao objetivo passa a ser

    513

    7

    4

    7x3= 51

    3

    7

    4

    7.

    Os custos reduzidos das variaveisx1 e x2 sao zero.

    Resumindo, os coeficientes das variaveis de decisao na ultima expressaoda funcao objetivo sao os custos reduzidos dessas variaveis. Ja os custosmarginais das restricoes sao os coeficientes das variaveis de folga multiplica-dos por 1.

    4.3.2 Limites de variacao dos coeficientes da funcao objetivo

    Para determinar o intervalo dentre o qual uma alteracao em um dos coe-ficientes da funcao objetivo, mantendo os outros constantes, nao altera os

    nveis das variaveis na solucao otima, procede-se tambem a partir do ultimoquadro do simplex.

    Considere o coeficiente dex1sendo alterado de c1na expressao originalda funcao objetivo:

    z= (5 + c1)x1+ 4, 5x2+ 6x3.

    Operando as mesmas iteracoes do metodo simplex, sem nenhuma al-teracao, chega-se a seguinte expressao na ultima iteracao:

    z= 513

    7+ c1x1

    4

    7x3

    11

    14x4

    1

    35x5.

    Para o teste de otimalidade, a funcao objetivo tem de ser expressa emfuncao de variaveis nao basicas; uma operacao de pivotagem resolve o pro-blema. Multiplicando a linha correspondente a variavel x1 no quadro finalpor c1 e somando a funcao objetivo, tem-se:

    z= 513

    7+ (

    4

    7

    11

    14c1)x3+ (

    11

    14

    2

    7c1)x4+ (

    1

    35+

    1

    14c1)x5.

    Para a solucao continuar otima, os coeficientes das variaveis nao basicasx3,x4 e x5 tem de ser nao positivos:

    47 x3 1114 c

    1 0 c1 411 ;

    11

    14x4

    2

    7c1 0 c1

    11

    14;

    1

    35x5+

    1

    14c1 0 c1

    2

    5.

    31

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    33/42

    PO 4.3 Analise de sensibilidade - utilizacao dos quadros do simplex

    Logo,

    4

    11c1

    2

    5.

    Fazendocnovo1 =c1+ c1, tem-se

    4 27

    cnovo1 5 25,

    ondec1 foi substitudo pelo seu valor original (c1= 5).

    Para incentivar a fabricacao do produto associado a variavel nao basicax3, tem de ser compensado o decrescimo na funcao objetivo que a atividadeacarreta; fabricando e vendendo uma unidade do produto x3 ao preco dec3= 6, tem-se uma reducao de custo de cr3=

    4

    7. Entao, a partir de

    c3+cr3,

    a sua producao e incentivada. Por outro, diminuindo-se c3, com mais razao

    ainda,x3continua fora da base. Assim, os limites de variacao do coeficientede x3 na funcao objetivo, para os quais os nveis de producao permanecemotimos sao

    cnovo3 6 +4

    7.

    4.3.3 Limites de variacao dos termos independentes

    Existem limites para aplicar o raciocnio com os custos marginais. Comoja foi visto, o custo marginal relativo a primeira restricao e 11

    14. Para uma

    alteracao suficientemente pequena nos estoques desse recurso, tem-se umimpacto na funcao objetivo prorcional a este valor. Enquanto o acrescimo

    (ou diminuicao) dos estoques nao implicar em uma mudaca da base; no casoformada pelas variaveis

    x2, x6, x1;

    o impacto e dado, proporcionalmente, pelo custo marginal.

    Na subitem anterior, nos nao procedemos aos calculos dos limites usandoo desenho do conjunto de solucoes viaveis pelo fato de que, nas circunstancias,eles seriam tediosos. O mesmo nao ocorre aqui; as contas sao mais simplese diretas.

    A adicao de b2 unidades do recurso 2 a disponibilidade do recurso 2;

    10x1+ 20x2+ 10x3+x5= 150 + b2

    repercute no valor da variavel de folga x5; o impacto na solucao e avaliadosubstituindox5 por

    x5 b2

    32

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    34/42

    PO 4.3 Analise de sensibilidade - utilizacao dos quadros do simplex

    na formulacao original. Dessa forma, as seguintes relacoes podem ser ex-tradas do quadro final:

    x2 2

    7x3

    1

    7x4 +

    3

    35(x5 b2) = 4

    2

    7;

    x6

    11

    7 x3

    2

    7 x4 +

    1

    14 (x5 b2) = 1

    4

    7 ;

    x1+11

    7x3+

    2

    7x4

    1

    14(x5 b2) = 6

    3

    7.

    Para que as mesmas variaveis continuem na base, faz-se, nas equacoesanteriores,

    x3= x4= x5= 0,

    o que resulta em

    x2+ 3

    35(b2) = 4

    2

    7;

    x6+ 114

    (b2) = 1 47

    ;

    x1 1

    14(b2) = 6

    3

    7.

    Para que a composicao da base nao seja alterada,

    x2 = 42

    7+

    3

    35b2 0 b2 50;

    x6 = 14

    7+

    1

    14b2 0 b2 22;

    x1 = 6

    3

    7+

    1

    14 b2 0 b2 90.

    Logo,22 b2 90

    implicando em128 bnovo2 240.

    No caso da variavel de folga pertencer a base, como e o caso do terceirorecurso 3 (x6 = 1

    4

    7), qualquer acrescimo no terceiro termo independente

    repercute diretamente no valor de x6, isto e,

    x6= 1 47+ b3.

    Para que x6 continue na base,

    14

    7+ b3 0 b3 1

    4

    7,

    33

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    35/42

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    36/42

    PO

    etc.) que atenda uma certa especificacao.

    Para estudar a dualidade, abordaremos o problema de determinar a racaode custo mnimo a ser ministrada aos animais de uma fazenda. Os exemplosmostram um par de modelos, conhecido como par primal dual, creditado a

    Kaufman e reportado por Luna em 1973.

    Dado um ppl, e sempre possvel formular um outro, conhecido comoproblema dual, que guarda estreitas relacoes como o problema original, cha-mado de problema primal.

    Estuda-se a dualidade com um duplo proposito. Procedimentos es-pecficos para resolver classes de problemas existem gracas a dualidade. Ooutro proposito refere-se a interpretacao economica. Ela e esclarecida e per-mite um maior entendimento do relacionamento entre os diversos elementosque compoem o problema.

    5.0.1 Problema 1 - Mistura de racoes

    Um fazendeiro dispoe de quatro alimentos (M , N , O e P) para alimentar,diariamente, seus animais. Foi prescrita uma dieta especificando um padraode qualidade, sintetizado pelas quantidades mnimas de nutrientes que cadaanimal deve ingerir por dia. A composicao dos alimentos, as necessidadesde nutrientes e o preco das mesmas estao no quadro 6. Deseja-se uma racao,composta a partir da mistura dos quatro alimentos, que atenda as necessi-dades diarias dos animais e que custe o mnimo possvel.

    Seguindo o programa dos tres passos (descrito no incio do captulo) paraformular o modelo de pl, primeiramente deve-se escolher as variaveis de de-cisao. Aqui sao obvias; sejam x1, x2, x3 e x4 as quantidades dos alimentosM , N , Oe Ppresentes na mistura otima.

    Vencida esta etapa, segundo o programa, agora devem ser expressas asrestricoes. No caso, elas referem-se as quantidades dos nutrientes presentesna racao; a presenca de cada um dos nutrientes nas quantidades especifica-das tem de ser garantida.

    Para o nutriente A, tem-se que

    a quantidade do nutriente A presente emx1 unidades do alimento M+

    a quantidade do nutriente A presente emx2 unidades do alimentoN+

    35

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    37/42

    PO

    a quantidade do nutriente A presente emx3 unidades do alimento O+

    a quantidade do nutrienteA presente emx1 unidades do alimento Ptem de ser, no mnimo,

    a quantidade especificada na dieta.

    A restricao correspondente e

    10x1+ 5x2+ 9x3+ 10x4 80

    Analogamente, para os nutrientes B , C e D tem-se:

    8x1+ 7x2+ 6x3+ 6x4 70

    15x1+ 3x2+ 4x3+ 7x4 80

    20x1+ 2x2+ 3x3+ 9x4 80

    As restricoes de nao negatividade,

    x1, x2, x3, x4 0

    sao pertinentes.

    No processo de modelagem do problema, o ultimo passo corresponde aescolha da funcao ob jetivo; conforme especificado, o objetivo e minimizar odispendio com os alimentos:

    Minimizar z = x1+ 0, 8x2+ 1, 2x3+ 3, 5x4.

    5.0.2 Problema 2 - Custo dos nutrientes

    Um laboratorio deseja saber que precos atribuir aos nutrientes A,B ,CeDpara que o fazendeiro sinta-se atrado em utilizar diretamente os nutrientessinteticos ao inves de busca-los nos alimentos. O objetivo do laboratorio efaturar o maximo possvel com a alimentacao de cada animal por dia.

    Tambem aqui, nao e difcil perceber as variaveis de decisao; sao os precosdos nutrientes. Sejamy1, y2, y3 e y4 os precos dos nutrientes A, B , C e D .

    E claro que o fazendeiro tem de ser atrado para comprar os nutrientesdiretamente; ele naturalmente vai comparar o preco de cada alimento com osprecos dos nutrientes presentes. O alimentoM tem (10, 5, 9, 20)T unidadesdos nutrientesA,B,Ce D; assim o custo de compor o alimentoMem funcaodos nutrientes vendidos aos precos y1, y2, y3 e y4 nao pode ser superior aocusto do alimentoM:

    10y1+ 8y2+ 15y3+ 20y41.

    36

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    38/42

    PO

    Corespondente aos outros alimentos tem-se:

    5y1+ 7y2+ 3y3+ 2y4 0, 8

    9y1+ 6y2+ 4y3+ 3y4 1, 2

    10y1+ 6y2+ 7y3+ 9y4 3, 5

    As restricoes de nao negatividade,

    y1, y2, y3, y4 0

    fazem sentido.

    O objetivo do laboratorio e auferir a maior receita possvel com a ali-mentacao de cada animal por dia:

    Maximizar d= 80y1+ 70y2+ 100y3+ 60y4.

    5.0.3 Solucao dos problemas 1 e 2

    A solucao otima do problema do fazendeiro (problema primal) e

    x1 = 7, x2= 2, x3= 0 e x4 = 0,

    comz= 8, 60 e os seguintes custos marginais:

    y1= 0, 02, y2= 0, 10, y3 = 0 e y4 = 0.

    Os custos marginais iguais a zero para a terceira e quarta restricao indicamque as especificacoes, na solucao otima, sao excedidas para os nutrientes Ce D .

    Ja o problema dual, referente aos precos com que os nutrientes do labo-ratorio devem ser vendidos, tem a seguinte solucao:

    y1= 0, 02, y2= 0, 10, y3 = 0 e y4 = 0.

    O laboratorio deve fornecer gratuitamente os nutrientes C e D e cobrarsomente pelos nutrientes A e B. Os custos marginais sao

    x1 = 7, x2= 2, x3= 0 e x4 = 0,

    O valor otimo da funcao objetivo dual e d= 8, 60.

    Os problemas 1 e 2 tem estreitas relacoes. A matriz de coeficientes dasrestricoes do problema dual e a transposta do primal; os termos independen-tes de um dos problemas sao os coeficientes da funcao objetivo do outro; asvariaveis de decisao de um deles sao os custos marginais do outro. Nota-se

    37

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    39/42

    PO

    tambem que um dos problemas e de minimizar e as restricoes tem desigual-dades do tipo; o outro prblema maximiza uma funcao e as desigualdadestem sinais .

    A funcao objetivo de ambos tem o mesmo valor na solucao otima.

    Ao problema 1 (primal) associamos, hipoteticamente, um problema 2(dual), como que para justificar a relacao existente entre os varios elemen-tos dos dois problemas. Na pratica, expressar o problema dual de um dadoprimal envolve um conjunto de regras; em particular, a cada restricao doprimal deve associada uma variavel dual, que, na verdade, e o custo mar-ginal associado a restricao. Para evitar o tedio que e enumerar todas asregras, proceda sempre colocando o primal no formato do problema 1; de-pois, obtenha o dual seguindo o modelo do problema 2.

    Nem sempre sera possvel interpretar de forma tao simples um dual.

    Ajuda muito quando a funcao objetivo e simples, como no exemplo. Ma-ximizar receita ou minimizar despezas e prefervel a maximizar lucro, porexemplo, pois envolve uma diferenca entre receita e despeza, que nem sem-pre e facil de interpretar no dual.

    6 Exerccios propostos

    ....

    6.1 Parte 1

    ....

    7 Introducao a programacao convexa diferenciavel

    ...

    8 Algoritmos baseados na nocao de centro

    A nocao de centro tem tido um papel fundamental na teoria da otimizacao.Utilizando centros geometricos de politopos, Levin obteve um algoritmo com

    convergencia geometrica para minimizacao restrita de funcoes diferenciaveisque independe da forma da funcao e das dimensoes do problema. O al-goritmo e conceitual, pois nao se tem notcia de uma forma eficiente paracalcular centros geometricos de politopos gerais. Khachian em 1979, esta-beleceu a polinomialidade de pplcom coeficientes inteiros utilizando como

    38

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    40/42

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    41/42

    PO 8.1 Metodo das secoes centrais, esferas e elipsoides

    Usando o lema de Mitiagin, Levin mostrou que a solucao x de (3) eenvolvida por regioes cujos volumes diminuem a uma razao q

  • 8/13/2019 Pesquisa Operacional_Metodo Simplex

    42/42

    PO 8.1 Metodo das secoes centrais, esferas e elipsoides

    mais, mostra-se que cada nova iteracao fica mais proxima do conjunto desolucoes viaveis (a uma taxa fixa) que a iteracao anterior.

    O algoritmo de Agmon, segundo uma interpretacao de (Bland, Goldfarb,Todd, 1981), e um metodo baseado na nocao de centro, onde Sk e uma es-

    fera. Suponha que no instante inicial, x0

    S0

    e que S0

    contenha algumasolucao para o problema. Em uma iteracao tpica, escolhe-se o centro nosegmento (xk, xk + 2(xkp x

    k)), onde xkp e a projecao de xk no hiperplano

    associado a restricao mais violada. E sempre possvel obter Sk+1 tal que{x : aTi xbi} S

    k Sk+1 . Segundo Goffin em 1992, o metodo podedispender um numero exponencial de iteracoes para alcancar a solucao.