Você está na página 1de 850

1101025599

11111111111
INTRODUAO A PESQUISA OPERACIONAL
8 Edio

,...,,

'

FREDERICK S. HILLIER
Stanford University

GERALD

J.

LIEBERMAN

Ex-Professor Titular da Stanford University

Traduo
ARIOVALDO GRIESI

CARO LEITOR NO RISQut O LIVRO .

Reviso Tcnica
JOO CHANG JUNIOR Doutor em Administrao - FEA/USP Professor Titular do Programa de Mestrado da UNIP Professor Titular da FAAP

FACULDADE DE EIOEIHAiUA DE GUAR ATllGUETA

2 55 99

BIBLIOTECA
Bangcoc Bogot Beijing Caracas Cidade do Mxico Cingapura Lisboa Londres Madri Milo Montreal Nova Delhi Toronto Santiago So Paulo Seul Sydney Taip

Data: ''
8 Edio ISBN 85-86804-68-1

Cl i 0r,

Valor:

Kl, k-o, ,_,s;,

C I D I T: G Ir:(;:V.,

Nenhuma parte desta publicao poder ser reproduzida ou distribuda de qualquer forma ou por qualquer meio, ou armazenada em um banco de dados ou sistema de recuperao, sem o consentimento, por escrito, da Editora, incluindo, mas no limitado a, qualquer rede ou outro dispositivo eletrnico de armazenamento ou transmisso ou difuso para ensino a distncia. Todos os direitos reservados. 2006 de McGraw-Hill Interamericana do Brasil Ltda. Av. Engenheiro Lus Carlos Berrini, 1.253 - 10 andar 04571-010 - So Paulo - SP

Traduo do original em ingls Introduction operations research Copyright 2005, 2001, 1995, 1990, 1986, 1980, 1974, 1967 de The McGraw-Hill Companies, Inc. ISBN da obra original: 0-07-252744-7 - Parte de 0-07-301779-5 (Acompanha CD)

Diretor-geral: Adilson Pereira Editora de Desenvolvimento: Ada Santos Seles Preparao de Texto: Mateus Potumati Capa e Ilustrao: Lisa Gravunder Editorao Eletrnica: ERJ Composio Editorial e Artes Grficas Ltda.

Dados Internacionais de Catalogao na Publicao (CIP) (Cmara Brasileira do Livro, SP, Brasil)

Hillier, Frederick S. Introduo pesquisa operacional/ Frederick S. Hillier, Gerald J. Lieberman; traduo Ariovaldo Griesi; reviso tcnica Joo Chang Junior. - So Paulo: McGraw-Hill, 2006. Ttulo original: Introduction operations research 8. ed. norte-americana Inclui CD-ROM. ISBN 85-868046-81 1. Pesquisa operacional 1. Lieberman, Gerald J. II. Ttulo. 06-3483
ndices para catlogo sistemtico:
1. Pesquisa operacional 003

CDD-003

Se voc tem dvidas, crticas ou sugestes, entre em contato pelo endereo eletrnico mh_brasil@mcgraw-hill.com. Em Portugal, use o endereo servio_clientes@mcgraw-hill.com.

SOBRE OS AUTORES

Frederick S. Hillier nasceu e se criou em Aberdeen, Washington, onde foi ganhador de prmios em concursos estaduais para o ensino mdio em dissertaes, matemtica, debates e msica. Ainda como estudante da Stanford University ganhou o primeiro lugar em sua turma de engenharia com mais de 300 alunos. Ganhou tambm o McKinsey Prize para redao tcnica, conquistou o Prmio de Debatedor Brilhante para universitrios cursando o segundo ano de faculdade, tocava no Stanford Woodwind Quintet e tambm obteve o Hamilton Award por combinar excelncia na engenharia com xitos notveis em cincias humanas e sociais. Logo aps ter se formado em engenharia industrial, ganhou trs bolsas de estudo de mbito nacional (National Science Foundation, Tau Beta Pi e Danforth) para ps-graduao na Stanford com especializao em pesquisa operacional. Aps receber seu ttulo de Ph.D., associou-se ao quadro de professores da Stanford University e tambm como professor visitante na Comell University, Carnegie-Mellon University, Technical University of Denmark, University of Canterbury (Nova Zelndia) e University of Cambridge (Inglaterra). Aps 35 anos no quadro de professores da Stanford, aposentou-se precocemente de suas responsabilidades como docente, em 1996, para poder se dedicar em tempo integral redao de livros e hoje Professor Emrito de Pesquisa Operacional na Stanford. A pesquisa do Dr. Hillier se estendeu para uma srie de reas, incluindo programao inteira, teoria das filas e sua aplicao, controle de qualidade estatstico e a aplicao da pesquisa operacional ao projeto de sistemas de produo e oramento de capital. Ele tem inmeras publicaes e seus trabalhos de grande influncia foram selecionados para republicao em livros com leituras selecionadas pelo menos dez vezes. Foi o ganhador do primeiro prmio de um concurso de pesquisas sobre "Oramento de Capital de Projetos Inter-relacionados", patrocinado pelo The Institute of Management Sciences (Tims) e pelo U.S. Office of Naval Research. Dr. Hillier e Dr. Lieberman tambm receberam meno honrosa na edio de 1995 do Lanchester Prize (melhor publicao em lngua inglesa de qualquer campo da pesquisa operacional), que foi concedida pelo Institute of Operations Research and the Management Sciences (lnforms) para a 6 edio deste livro. Dr. Hillier ocupou vrios cargos de liderana em sociedades de profissionais em sua rea. Por exemplo, foi tesoureiro da Operations Research Society of America (Orsa), vicepresidente para Reunies da Tims, co-presidente geral da edio de 1989 da Reunio Internacional da Tims em Osaka, Japo, presidente do Comit de Publicao da Tims, presidente do Comit de Pesquisa para Editor de Operations Research da Orsa, presidente do Comit de Planejamento de Recursos da Orsa, presidente do Comit de Reunies Conjuntas Orsaffims e presidente do Comit de Seleo do John von Neumann Theory Prize da Informs. Atualmente, atua como editor de sries para a International Series in Operations Research and Management Science publicada pela Kluwer Academic Publishers. Alm de Introduction to Operations Research e outros dois volumes complementares, Introduction to Mathematical Programming (2. ed., 1995) e Introduction to Stochastic Models in Operations Research (1990), suas obras so: The Evaluation of Risky Interrelated Investments (North-Holland, 1969), Queueing Tables and Graphs (North-Holland: Elsevier 1981, em co-autoria com O. S. Yu, alm de D. M. Avis, L. D. Fossett, F. D. Lo e M. 1. Reiman) e Introduction to Management Science: A Modeling Studies Approach with Spreadsheets (2. ed., McGraw-Hill/lrwin, 2003, em co-autoria com M. S. Hillier). Gerald J. Lieberman infelizmente nos deixou em 1999, ano de sua morte. Foi Professor Emrito de Pesquisa Operacional e Estatstica na Stanford University, onde exerceu o cargo de presidente-fundador do Departamento de Pesquisa Operacional. Engenheiromecnico pela Cooper Union e estatstico em pesquisa operacional, recebeu o ttulo de
Ili

IV

SOBRE OS AUTORES

mestrado em estatstica matemtica da Columbia University e de Ph.D. em estatstica pela Stanford University). Dr. Lieberman foi um dos lderes mais eminentes da Stanford em dcadas recentes. Aps presidir o Departamento de Pesquisa Operacional, atuou como diretor associado da Escola de Cincias Humanas, vice-diretor e decano de pesquisa, vice-diretor e decano de ps-graduao, presidente do conselho administrativo, membro do conselho consultivo da Universidade e presidente do Comit de Celebrao do Centenrio. Tambm atuou como diretor ou diretor interino no mandato de trs presidentes distintos da Stanford. Ao longo desses anos de liderana na Universidade, tambm permaneceu ativo profissionalmente. Sua pesquisa foi realizada nas reas de estocstica da pesquisa operacional, normalmente na interface de estatstica e probabilidade aplicada. Publicou extensivamente nas reas de confiabilidade e controle de qualidade e na modelagem de sistemas complexos, inclusive seu projeto timo, quando os recursos so limitados. Altamente respeitado como experiente defensor do campo da pesquisa operacional, Dr. Lieberman atuou em inmeros papis de liderana, inclusive como presidente eleito do The Institute of Management Sciences. Entre suas honrarias profissionais esto: eleito para o National Academy of Engineering, agraciado com a Shewhart Medal da American Society for Quality Control e com o Cuthbertson Award por servios excepcionais Stanford University e por sua atuao como membro no Centro para Estudos Avanados nas Cincias Comportamentais. Alm disso, o Institute of Operations Research and the Management Sciences (lnforms) o agraciou com o prmio de meno honrosa na edio de 1995 do Lanchester Prize pela 6 edio deste livro. Em 1996, o lnforms tambm o premiou com a prestigiosa Medalha Kimball por suas contribuies excepcionais ao campo da pesquisa operacional e administrao. Alm de Introduction to Operations Research e outros dois volumes complementares, Introduction to Mathematical Programming (2. ed., 1995) e Introduction to Stochastic Models in Operations Research (1990), suas obras so: Handbook of Industrial Statistics (PrenticeHall, 1955, com co-autoria de A. H. Bowker), Tables of the Non-Central t-Distribution (Stanford University Press, 1957, com co-autoria de G. J. Resnikofi), Tables of the Hypergeometric Probability Distribution (Stanford University Press, 1961, com co-autoria de D. Owen), Engineering Statistics, 2. ed. (Prentice-Hall, 1972, com co-autoria de A. H. Bowker) e Introduction to Management Science: A Modeling and Case Studies Approach. with Spreadsheets (McGraw-Hill/Irwin, 2000, com co-autoria de F. S. Hillier e M. S. Hillier).

SOBRE OS AUTORES DOS ESTUDOS DE CASO


Karl Schmedders professor-adjunto do Departamento de Economia Gerencial e Cincias da Deciso da Kellogg Graduate School of Management (Northwestem University), onde leciona mtodos quantitativos para tomada de deciso gerencial. Entre seus interesses de pesquisa esto aplicaes da pesquisa operacional teoria econmica, teoria de equilbrio geral com mercados incompletos, avaliao de ativos e economia computacional. Dr. Schmedders recebeu seu doutorado em pesquisa operacional da Stanford University, onde lecionou tanto em cursos de graduao como de ps-graduao em pesquisa operacional. Entre as aulas dadas destacam-se um curso de estudos de caso em pesquisa operacional e o convite subseqente para se apresentar em uma conferncia patrocinada pelo Institute of Operations Research and the Management Sciences (lnforms) sobre sua bem-sucedida experincia com esse curso. Recebeu vrias premiaes por sua atuao como professor na Stanford, inclusive o prestigioso Walter J. Gores Teaching Award da Universidade. Tambm foi nomeado L. G. Lavengood Professor of the Year na Kellogg School of Management. Aps dar um curso na WHU Koblenz (uma escola de administrao de empresas alem de primeira linha) em 2003, recebeu o Prmio de Melhor Professor dessa escola, bem como para aquele semestre. Molly Stephens associada na unidade de Los Angeles da Quinn, Emanuel, Urquhart, Oliver & Hedges, LLP. Formou-se pela Stanford University em engenharia industrial e tem mestrado em pesquisa operacional por essa mesma Universidade. Stephens lecionou o curso de oratria na Escola de Engenharia de Stanford e atuou como professora-assistente para um curso de estudos de caso em pesquisa operacional. Como professora-assistente, ela analisou problemas de pesquisa operacional encontrados no mundo real e a transformao desses problemas em estudos de caso para sala de aula. Sua pesquisa foi premiada quando ganhou uma bolsa destinada pesquisa para no-graduados da Stanford que lhe permitiu continuar seu trabalho e foi convidada para dar uma palestra em uma conferncia da lnforms para apresentar suas concluses referentes aos bem-sucedidos estudos de caso. Aps sua formatura, Stephens trabalhou na Andersen Consulting como integradora de sistemas, vivenciando casos reais de perto, antes de retomar seus estudos para obter o ttulo de Doutora em Direito (com honra ao mrito) da Escola de Direito da University of Texas em Austin.

DEDICATORIA

memria de nossos pais e memria do meu dileto mentor, Gerald J. Lieberman, que foi um dos verdadeiros gigantes de nosso campo

VI

SUMARIO

PREFCIO

XVIII

CAPTULO 1 Introduo 1
1. 1 As Origens da Pesquisa Operacional 1.2 A Natureza da Pesquisa Operacional 2 1.3 O Impacto da Pesquisa Operacional 3 1.4 Algoritmos e/ou Courseware 5 Referncias Selecionadas 6 Problemas 7

CAPTULO 2 Viso Geral da Abordagem de Modelagem da Pesquisa Operacional


2. 1 Definio do Problema e Coleta de Dados 8 2.2 Formulando um Modelo Matemtico 11 2.3 Derivando Solues a Partir do Modelo 15 2.4 Testando o Modelo 17 2.5 Preparando-se para Aplicar o Modelo 19 2.6 Implementao 20 2.7 Concluses 22 Referncias Selecionadas 22 Problemas 23

CAPTULO 3 Introduo Programao Linear

25

3.1 Exemplo de Prottipo 26 3.2 O Modelo de Programao Linear 31 3.3 Hipteses da Programao Linear 36 3.4 Exemplos Adicionais 43 3.5 Alguns Estudos de Caso Clssicos 58 3.6 Formulando e Solucionando Modelos de Programao Linear em uma Planilha 3. 7 Formulando Modelos de Programao Linear de Grandes Dimenses 7 1 3.8 Concluses 78 Apndice 3.1 A Linguagem de Modelagem Lingo 78 Referncias Selecionadas 88 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM 88 Problemas 88 Caso 3.1 Montagem de Automveis 98 Apresentao Prvia dos Casos Adicionais no CD-ROM 99 Caso 3.2 Cortando Custos na Lanchonete 99 Caso 3.3 Dotando uma Central de Atendimento de Pessoal 99 Caso 3.4 Promovendo um Cereal Matinal 100

64

VII

VIII

SUMRIO
CAPTULO 4 Solucionando Problemas de Programao Linear: O Mtodo Simplex 4. 1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 A Essncia do Mtodo Simplex 1O1 Configurando o Mtodo Simplex 106 A lgebra do Mtodo Simplex 109 O Mtodo Simplex em Forma Tabular 114 Desempate no Mtodo Simplex 118 Adaptando a Outras Formas de Modelo 122 Anlise de Ps-otimalidade 139 Implementao Via Computador 146 Sistemtica do Ponto Interno na Resoluo de Problemas de Programao

1 O1

Linear 149 4.1 O Concluses 154 Apndice 4.1 Uma Introduo para Emprego do Lindo

154 157

Referncias Selecionadas 157 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 158 Caso 4.1 Tecidos e Moda Outono-inverno 166 Apresentao Prvia dos Casos Adicionais no CD-ROM Caso 4.2 Novas Fronteiras 168 Caso 4.3 Distribuindo Alunos em Escolas 168 CAPTULO 5 Teoria do Mtodo Simplex

168

1 69

5.1 Fundamentos do Mtodo Simplex 169 5.2 Mtodo Simplex Revisado 180 5.3 Um lnsight Fundamental 188 5.4 Concluses 195 Referncias Selecionadas 196 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 197

196

CAPTULO 6 Teoria da Dualidade e Anlise de Sensibilidade 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8

203

A Essncia da Teoria da Dualidade 203 Interpretao Econmica da Dualidade 211 Relaes Primai-Dual 214 Adaptando para outras Formas Primais 218 O Papel da Teoria da Dualidade na Anlise de Sensibilidade A Essncia da Anlise de Sensibilidade 224 Aplicando a Anlise de Sensibilidade 232 Efetuando Anlise de Sensibilidade em uma Planilha 251

222

6. 9 Concluses 264 Referncias Selecionadas 265 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 266 Caso 6.1 Controlando a Poluio do Ar 279 Apresentao Prvia dos Casos Adicionais no CD-ROM 280 Caso 6.2 Administrao de uma Propriedade Rural 280 Caso 6.3 Redistribuio de Alunos por Escolas, Revisitada Caso 6.4 Redigindo um Memorando No-tcnico 280

265

280

SUMRIO
CAPTULO 7 Outros Algoritmos para Programao Linear

IX

281

7. 1 O Mtodo Simplex Dual 281 7.2 Programao Linear Paramtrica 284 7.3 A Tcnica do Limite Superior 289 7.4 Um Algoritmo de Ponto Interno 292 7.5 Concluses 302 Referncias Selecionadas 303 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 304

303

CAPTULO 8 Os Problemas de Transporte e da Designao

308

8. 1 O Problema de Transporte 309 8.2 Um Mtodo Simplex Aperfeioado para o Problema de Transporte 322 8.3 O Problema da Designao 337 8.4 Algoritmo Especial para o Problema da Designao 344 8.5 Concluses 349 Referncias Selecionadas 349 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM 350 Problemas 350 Caso 8.1 Entregando Madeira para o Mercado 358 Apresentao Prvia dos Casos Adicionais no CD-ROM 359 Caso 8.2 Continuao do Estudo de Caso da Texago 359 Caso 8.3 Escolha de Projetos 359

CAPTULO 9 Modelo de Otimizao de Redes

360

9.1 Exemplo-Prottipo 361 9.2 A Terminologia das Redes 362 9.3 O Problema do Caminho Mais Curto 366 9.4 O Problema da rvore de Expanso Mnima 370 9.5 O Problema do Fluxo Mximo 374 9.6 O Problema do Fluxo de Custo Mnimo 382 9.7 O Mtodo Simplex de Rede 390 9.8 Modelo de Rede para Otimizar a Relao Conflitante Tempo-custo 399 9. 9 Concluses 4 1O Referncias Selecionadas 4 12 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM 4 12 Problemas 4 12 Caso 9.1 Dinheiro em Movimento 421 Apresentao Prvia dos Casos Adicionais no CD-ROM 423 Caso 9.2 Ajudando os Aliados 423 Caso 9.3 Passos para o Sucesso 423 CAPTULO 10 Programao Dinmica

424
429

1O.1 Exemplo-Prottipo para Programao Dinmica 424 10.2 Caractersticas dos Problemas de Programao Dinmica 10.3 Programao Dinmica Determinstica 431

SUMRIO
10.4 Programao Dinmica Probabilstica 450 10.5 Concluses 455 Referncias Selecionadas 455 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 456

456

CAPTULO 11 Programao Inteira 1 1. 1 11.2 1 1.3 11.4 1 1. 5

462

Exemplo-Prottipo 463 Algumas Aplicaes de PIB 466 Usos Inovadores das Variveis Binrias na Formulao de Modelos 4 7 1 Alguns Exemplos de Formulao 477 Algumas Consideraes Sobre a Resoluo de Problemas de Programao

Inteira 484 11.6 A Tcnica da Ramificao e Avaliao Progressiva e sua Aplicao Programao Inteira Binria 488 11 .7 Algoritmo de Ramificao e Avaliao Progressiva para Programao Inteira Mista 498 11 .8 Metodologia da Ramificao e Corte para Solucionar Problemas de PIB 1 1.9 Incorporao da Programao de Restries 5 1O 1 1. 1O Concluses 5 16 Referncias Selecionadas 5 16 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM 5 17 504

Problemas 5 17 Caso 11 . 1 Preocupaes com Capacidade 526 Apresentao Prvia dos Casos Adicionais no CD-ROM 528 Caso 11.2 Designao de Obras de Arte 528 Caso 11 .3 Estocando Conjuntos 529 Caso 11.4 Redistribuindo Estudantes em Escolas, Retornando ao Caso mais uma vez 529

CAPTULO 12 Programao No-Linear 12. 1 12.2 12.3 12.4 12.5 12.6

530

Exemplos de Aplicaes 531 Representao Grfica de Problemas de Programao No-linear 535 llpos de Problemas de Programao No-linear 539 Otimizao Irrestrita com Uma Varivel 544 Otimizao Irrestrita com Variveis Mltiplas 550 As Condies de Karush-Kuhn-Tucker (Kkt) para Otimizao Restrita 555

12.7 Programao Quadrtica 559 12.8 Programao Separvel 565 12.9 Programao Convexa 572 12.1 O Programao No-convexa (com Planilhas) 580 12. 11 Concluses 584 Referncias Selecionadas 585 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 586 Caso 12.1 Seleo Pragmtica de Aes 597 Apresentao Prvia dos Casos Adicionais no CD-ROM 598 Caso 12.2 Investimentos Internacionais 598 Caso 12.3 Retornando ao Caso de Promoo de um Cereal

585

598

SUMRIO CAPTULO 13 Meta-heurstica 599 13.1 A Natureza da Meta-heurstica 600 13.2 Busca de Tabus 607 13.3 Maleabilizao Simulada 617 13.4 Algoritmos Genticos 626 13.5 Concluses 635 Referncias Selecionadas 636 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 637

XI

637

CAPTULO 14 Teoria dos Jogos

641

14.1 Formulao de Jogos Entre Dois Participantes de Soma Zero 641 14.2 Resolvendo Jogos Simples - Um Exemplo-prottipo 643 14.3 Jogos com Estratgias Mistas 648 14.4 Procedimento Grfico para Resoluo 649 14.5 Resoluo pela Programao Linear 652 14.6 Extenses 655 14. 7 Concluses 656 Referncias Selecionadas 656 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM 657 Problemas 657 CAPTULO 15 Anlise de Deciso 15. 1 15.2 15.3 15. 4 15.5

662

Exemplo-Prottipo 663 Tomada de Deciso sem Experimentao 664 Tomada de Deciso com Experimentao 669 rvores de Deciso 6 7 5 Usando Planilhas para Realizar Anlise de Sensibilidade em rvores de

Deciso 679 15.6 Teoria da Utilidade 689 15.7 A Aplicao Prtica da Anlise de Deciso 696 15.8 Concluses 699 Referncias Selecionadas 699 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 700 Caso 15.1 Negcio Cerebral 709 Apresentao Prvia dos Casos Adicionais no CD-ROM 7 12 Caso 15.2 Sistema de Suporte da Direo Inteligente 712 CAPTULO 16 Cadeias de Markov 16. 1 16.2 16.3 16.4 16.5 16.6

700

71 3

Processos Estocsticos 7 13 Cadeias de Markov 715 Equaes de Chapman-Kolmogorov 720 Classificao de Estados de uma Cadeia de Markov 723 Propriedades Duradouras das Cadeias de Markov 726 Tempos de Primeira Passagem 731

XII

SUMRIO
16.7 Estados Absorventes 733 16.8 Cadeias de Markov de Tempo Contnuo 736 Referncias Selecionadas 7 4 1 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM Problemas 74 1

74 1

CAPTULO 1 7 * Teoria das Filas

746

CAPTULO 1 8 * Teoria dos Estoques

748

CAPTULO 19 Processos de Deciso de Markov

750

19. 1 Exemplo-prottipo 750 19.2 Modelo para Processos de Deciso de Markov 753 19.3 Programao Linear e Polticas timas 756 19.4 Algoritmo de Melhoria de Polticas para Encontrar Polticas timas 760 19.5 Critrio do Custo Descontado 765 19.6 Concluses 771 Referncias Selecionadas 77 2 Ferramentas de Aprendizado para este Captulo Includas no CD-ROM 772 Problemas 77 3

CAPTULO 20* Simulao 477

APNDICES 1. Documentao para o Courseware de PO 779 2. Convexidade 782 3. Mtodos Clssicos de Otimizao 788 4. Matrizes e Operaes com Matrizes 791 5. Tabela para uma Distribuio Normal 796

RESPOSTAS PARCIAIS AOS PROBLEMAS SELECIONADOS

798

NDICES ndice Onomstico 809 ndice Remissivo 81 1

*NE: Os captulos 17, 18 e 20 esto disponveis, em portugus, no site da Editora: www.mcgraw-hill.com.br. Para acess-los, cadastre-se e obtenha a sua senha.

PREFACIO

uando Jerry Lieberman e eu comeamos a trabalhar na primeira edio deste livro h 40 anos, nosso objetivo era desenvolver um material didtico inovador que ajudaria a estabelecer o futuro rumo da educao naquilo que na poca era o emergente campo da pesquisa operacional. Aps a publicao, no estava claro em que nvel essa meta em particular havia sido atingida, porm, o que se tomou claro era que a demanda pelo livro era maior do que podamos esperar. Nenhum de ns dois poderia ter imaginado que a enorme demanda mundial continuaria em tais nveis por um perodo to extenso. A resposta entusistica s nossas sete primeiras edies foi gratificante. Foi um prazer especial a 6 edio ter sido agraciada com meno honrosa na edio de 1995 do Lanchester Prize (o prmio concedido anualmente publicao em lngua inglesa de maior destaque em qualquer campo da pesquisa operacional) da lnforms, recebendo, inclusive, o seguinte comentrio: "Esta a edio mais recente do livro didtico que introduziu aproximadamente meio milho de estudantes aos mtodos e modelos da pesquisa operacional. Embora acrescentando material sobre uma srie de tpicos novos, a 6 edio mantm o alto padro de clareza e excelncia expositiva pelas quais os autores se tomaram conhecidos. Ao homenagear esse trabalho, o comit de premiao percebeu o enorme impacto acumulativo que o texto de Hillier-Lieberman havia tido sobre o desenvolvimento de nossa rea, no somente nos Estados Unidos, como tambm ao redor do mundo por meio de suas diversas edies em lngua estrangeira". Ao comearmos a trabalhar no livro 40 anos atrs, Jerry j era um proeminente membro dessa rea, um escritor de livros didticos bem-sucedido alm de presidente de um renomado programa de pesquisas na Stanford University. Eu era um professor-assistente muito jovem iniciando carreira. Foi uma oportunidade maravilhosa poder trabalhar e aprender com o mestre. Ficarei em dbito com Jerry para sempre por ter me dado essa oportunidade. Agora, infelizmente, Jerry no se encontra mais entre ns. Durante sua progressiva doena que o levou morte aproximadamente cinco anos depois, decidi que eu mesmo manteria a chama acesa e me dedicaria a edies subseqentes deste livro, mantendo um padro que honraria Jerry plenamente. Portanto, aposentei-me precocemente de minhas responsabilidades como membro do corpo docente na Stanford para poder dedicar-me em tempo integral redao de livros didticos em um futuro prximo. Isso me permitiu investir muito mais tempo que o usual no preparo desta nova edio. Tambm me possibilitou monitorar mais de perto as novas tendncias e avanos na rea de modo a deixar esta edio completamente atualizada. Esse monitoramento levou escolha dos tpicos novos descritos a seguir.

Um objetivo especial desta edio foi o de acrescentar ampla abrangncia de grandes avanos recentes que esto comeando a revolucionar a maneira pela qual certas reas da pesquisa operacional esto sendo praticadas. Entre esses avanos recentes temos: 1. o uso de meta-heurstica para resolver problemas complexos de grande dimenso; 2. a integrao da programao de restries com a programao matemtica (especialmente programao inteira) para expandir enormemente nossa capacidade de formular problemas complexos; e 3. o emprego de modelos de inventrio em vrias escalas para auxiliar na administrao de cadeias de abastecimento. Embora esses tpicos no tenham tradicionalmente sido abordados em cursos introdutrios de pesquisa operacional, sua importncia cada vez maior para

XIII

XIV

PREFCIO

futuros profissionais do campo da pesquisa operacional agora exigem sua incluso em um livro-texto de PO introdutrio moderno, de modo que acrescentei o seguinte material: Captulo 13 (novo): Meta-heurstica. Seo 11.9 (nova): Incorporao da Programao de Restries. Seo 18.5 (nova): Modelos de Inventrio em Vrias Escalas para Administrao de Cadeias de Abastecimento. Outro avano impressionante dos ltimos anos tem sido uma exploso no uso de planilhas e software de planilhas para formular e resolver modelos de PO, inclusive modelos de programao matemtica e modelos de simulao especiais. Portanto, adicionei o seguinte material referente a planilhas: Expanso da Seo 3.6: Formulando e Solucionando Modelos de Programao Linear em uma Planilha. Seo 6.8 (nova): Efetuando Anlise de Sensibilidade em uma Planilha. Seo 12.10 (nova): Programao No-convexa (com Planilhas). Seo 15.5 (nova): Usando Planilhas para Realizar Anlise de Sensibilidade em rvores de Deciso. Nova redao completa da Seo 20.6: Realizando Simulaes em Planilhas. Seo 20.7 (nova): Otimizando com o OptQuest. Captulo 21 (novo) (no CD-ROM): A Arte da Modelagem com Planilhas. Seo 27.7 (novo) (no CD-ROM): Previso de Sries Temporais com o CB Predictor. Captulo 28 (novo) (no CD-ROM): Exemplos de Realizao de Simulaes com o Crystal Ball. Novo suplemento para o Captulo 8 (no CD-ROM): Estudo de Caso com Vrios Problemas de Transporte. Entretanto, alguns professores preferem que seus alunos usem software tradicional (Lindo e Lingo) ou software de ponta para PO (MPL e CPLEX) em vez de planilhas. Mantive a filosofia da 7 edio de fornecer material introdutrio suficiente no livro para permitir o emprego de qualquer uma das trs opes (alm do Tutor PO e Tutorial IOR para auxililo no aprendizado eficiente dos algoritmos) sem desviar a ateno daqueles que empregam uma das outras opes (fornecendo, ao mesmo tempo, amplo material de suporte para cada opo no CD-ROM). Portanto, esse novo material em planilha sempre se encontra prximo a ou no final de cada captulo (ou no CD-ROM) de modo que ele possa ser facilmente desprezado por aqueles que estiverem adotando outra opo de software. Ao mesmo tempo, atualizei o material referente a Lindo/Lingo e MPL/CPLEX, inclusive certa expanso da Seo 3.7 (Formulando Modelos de Programao Linear de Grandes Dimenses) que usam MPL. Solicitamos a opinio de muitos professores para nos orientar no planejamento desta nova edio. Em resposta a um nmero significativo de solicitaes, acrescentamos os seguintes tpicos tradicionais. Seo 8.4 (nova): Algoritmo Especial para o Problema da Designao, apresentando o algoritmo hngaro. Acrscimo s Sees 12.4 e 12.5: mtodo de Newton para otimizao sem restries. Voc tambm encontrar uma srie de pequenos acrscimos em diversas partes do livro.
Reduo no Tamanho do Livro

Ao longo dos anos, novas edies de livros didticos de introduo PO (inclusive o nosso) tiveram uma tendncia de ficar substancialmente maiores. Por exemplo, um livro destes (no o nosso) agora tem 1.418 pginas! Recebemos inmeras opinies nos anos recentes condenando essa tendncia inoportuna de fornecer muito mais material do que seria apropriado para um livro didtico introdutrio. Os livros didticos tm-se tomado cada vez mais caros e os estudantes no gostam de pagar tanto por um livro maior que o normal quando grande

PREFCIO

XV

parte dele jamais ser vista durante seus cursos, alm do mais, diversos professores no gostam de impor isso a seus alunos. Tambm muito menos conveniente usar um livro didtico que fornea muito mais material que pode ser visto em um curso. Desculpando-me pela 7 edio ter sido maior do que pretendia, ouvi esses pedidos e os levei em profunda considerao. Portanto, uma meta especial desta nova edio foi a de reduzir substancialmente seu tamanho, apesar do acrscimo de todos esses tpicos novos de extrema importncia listados anteriormente. Embora pretendssemos ter avanado ainda mais, temos o prazer de anunciar uma reduo substancial nas 1.214 pginas da 7 edio. Essa importante reduo foi alcanada parcialmente transferindo uma quantidade substancial de material de pouco uso para o CD-ROM.* Primeiramente nos valemos do conselho de vrios revisores sobre o que poderia ser transferido dessa maneira e tambm reunimos seus planos de estudo para determinar que tpicos eles esto cobrindo atualmente em seus cursos introdutrios de PO. Havia um nvel surpreendente de consenso sobre os tpicos que no esto sendo mais abordados, pois agora eles esto sendo vistos em outros cursos. Com base nessas informaes, decidiu-se efetuar a transferncia do material a seguir.

Material Transferido para o CD-ROM:


A seo sobre Programao Linear por Objetivos e seus Procedimentos de Resoluo. O captulo sobre Gerenciamento de Projetos com Pert!CPM (mas com uma seo, Modelo de Rede para Otimizar a Relao Tempo-Custo de um Projeto, acrescentado no final do captulo Modelos de Otimizao de Redes) do livro. O captulo sobre Aplicao da Teoria de Filas (porm com uma seo introdutria com esse mesmo ttulo inserida no final do captulo sobre Teoria das Filas) do livro. A seo sobre Modelos Estocsticos de Reviso Peridica. O captulo sobre Previses. A seo sobre Tcnicas de Reduo de Varincia. A seo sobre Mtodo Regenerativo da Anlise Estatstica. Assim, todo esse material e muito mais (inclusive cinco outros captulos) agora se encontram prontamente disponveis no CD-ROM, para eventuais consultas daquele professor que queira abordar qualquer um desses tpicos sem alongar desnecessariamente o livro para todos os demais. Uma caracterstica popular da 7 edio foi a incluso de muitos estudos de caso (32) que complementam os problemas ao final de cada captulo exigindo uma anlise mais ampla e desafiadora com uso substancial do computador. Inserido em um ambiente realista e empregando uma estimulante forma de narrativa, a maior parte desses casos elaborados foi desenvolvida por dois talentosos autores de estudos de caso, Karl Schmedders (membro do corpo docente da Kellogg Graduate School of Management da Northwestem University) e Molly Stephens (ex-consultora em PO da Andersen Consulting). Entretanto, o inconveniente foi que todos esses casos acrescentaram cerca de 100 pginas ao volume final do livro. Normalmente um professor tem tempo durante um curso para designar apenas alguns poucos casos (se realmente designa algum) e no mais do que um caso para qualquer captulo em particular. Portanto, baseados em uma recomendao quase unnime dos revisores que usaram a 7 edio, mantivemos apenas 12 estudos de caso no livro, o que equivale a mais ou menos um caso por captulo (com uma exceo). Todos os demais casos foram destinados ao CD-ROM, porm mantendo um resumo de um pargrafo sobre eles no livro. Tambm acrescentamos oito casos novos, de modo que um total de 28 casos agora poder ser encontrado no CD-ROM sem adicionar preciosas pginas ao volume do livro. Uma abundncia de bons problemas sempre foi citada como um dos pontos fortes do livro. A cada nova edio (inclusive esta), acrescentamos um nmero substancial de problemas novos. Entretanto, isso levou a dedicar aproximadamente 200 pginas a problemas na
*NE: Na edio brasileira, tambm disponibilizamos alguns captulos (17, 18 e 19) em nosso site para reduzir pginas. O material disponvel no CD-ROM anexo encontra-se no idioma ingls. Sua atualizao no de responsabilidade desta Editora.

XVI

PREFCIO

7 edio, inclusive um grande nmero redundante de problemas do mesmo tipo. Portanto, um nmero significativo de pginas foi poupado nesta nova edio cortando um nmero modesto de problemas demasiadamente redundantes. Sempre que possvel tambm foi cortado um pouco do texto. Embora cada corte individual tivesse pouco efeito, a combinao de todos esses mtodos para poupar pginas de uma forma disciplinada ao longo do livro ajudou consideravelmente na reduo de seu tamanho para um nvel mais apropriado para um livro didtico introdutrio.

Maior Gama de Opes de Software


A 7 edio era provida de ampla gama de opes de software. Praticamente todas essas opes foram mantidas, conforme descrito a seguir.

Opes de Software Ainda Fornecidas no CD-ROM:


Planilhas Excel: formulaes de planilhas avanadas so apresentadas no CD-ROM para todos os exemplos relevantes ao longo do livro. Vrios mdulos de programa adicionais ao Excel, inclusive o Premium Solver for Education (um aperfeioamento do Excel Solver bsico), o TreePlan (para anlise de deciso), o Senslt (para anlise probabilstica) e o RiskSim (para simulao). Uma srie de gabaritos em Excel para soluo de modelos bsicos. Verses educacionais do MPL (uma popular linguagem de modelagem algbrica) e seu excelente solucionador CPLEX (o mais usado otimizador de ponta), juntamente com um Tutorial MPL e formulaes e resolues MPL/CPLEX para todos os exemplos relevantes ao longo do livro. Uma verso educacional do Conopt (para programao convexa) na forma de um solucionador MPL extra. Formulaes e solues usando tanto o Lindo (um otimizador tradicional) quanto o Lingo (uma linguagem de modelagem algbrica) so apresentadas no CD-ROM para todos os exemplos relevantes ao longo do livro. Queueing Simulator (para a simulao de sistemas de filas). Tutor PO para exemplificar vrios algoritmos em ao. Tutorial IOR (lnteractive Operations Research) para aprendizado eficiente e execuo interativa de algoritmos, implementado em Java 2 de modo a ser independente de plataforma. Esta nova edio tambm fornece vrias melhorias das opes de software, conforme enumeradas a seguir.

Novos Aperfeioamentos das Opes de Software:


As verses educacionais do Lindo e do Lingo agora fornecidas no CD-ROM em vez de ter de fazer downloads gratuitos do fornecedor. As verses educacionais do MPL e CPLEX no CD-ROM tambm so atualizaes importantes e muito recentes (verses 5.0 e 9.0, respectivamente). Uma verso educacional do LGO (tanto para otimizao global quanto para programao convexa) dada na forma de um solucionador MPL extra. Formulaes de planilhas revisadas e de ltima gerao so proporcionadas no CD-ROM para todos os exemplos relevantes ao longo do livro. Um novo mdulo de programao adicional para Excel chamado Solver Table oferecido para automatizar a anlise de sensibilidade em problemas de otimizao. Um importante pacote de software novo contido no CD-ROM (para avaliao durante 140 dias) a edio acadmica do Crystal Bali Professional Edition 2000.5 (verso 5.5), um poderoso mdulo de programa adicional para Excel para realizao de anlise de riscos (especialmente simulao) que tambm inclui um mdulo do OptQuest para simulaes de otimizao e um mdulo CB Predictor para realizao de previses de sries de tempo dentro do ambiente de planilha.

PREFCIO

XVII

O Tutorial IOR foi aperfeioado de modo substancial adicionando uma srie considervel de procedimentos interativos, bem como automticos. Agradeo equipe editorial da McGraw-Hill pelo apoio necessrio no fornecimento de tantas opes de software de qualidade.

~OUTROS

RECURSOS
Alm de todas as melhorias j descritas, esta edio tambm recebeu aperfeioamentos importantes enumerados a seguir. Vrios exemplos novos para praticamente todos os captulos do livro foram acrescentados em uma nova seo de Exemplos Trabalhados do CD-ROM para fornecer ajuda adicional a estudantes ocasionais que precisam disso sem causar distrbios no fluir do texto e sem adicionar pginas desnecessrias para outros. (O livro menciona toda vez que um exemplo extra sobre o tpico atual se encontrar disponvel.) Um novo glossrio para cada captulo tambm foi acrescentado ao CD-ROM. Arquivos de dados para diversos casos foram acrescentados ao CD-ROM para possibilitar que os estudantes se concentrem na anlise e no na introduo de enormes conjuntos de dados. Uma abundncia de material de texto suplementar (inclusive oito captulos completos) agora se encontra convenientemente disponvel para todos no CD-ROM. As Referncias Selecionadas no final de cada captulo foram cuidadosamente atualizadas para fornecer as melhores referncias atuais. Diversas notas de rodap foram acrescentadas ou atualizadas para proporcionar as referncias mais atualizadas sobre tendncias atuais na pesquisa. As varias sees descrevendo aplicaes do mundo prtico do campo de pesquisa operacional foram aperfeioadas ainda mais acrescentando-se um considervel nmero de aplicaes muito recentes, inclusive renomadas aplicaes prticas de empresas. Muitas outras pequenas atualizaes e refinamentos foram acrescentadas ao longo do livro. fornecida aos professores uma nova bateria de testes apresentando questes moderadamente difceis que requerem que os alunos demonstrem seus exerccios. A maioria das questes nessa bateria de testes foi aplicada com sucesso como questes de provas pelos autores. Um grande esforo foi dedicado ao desenvolvimento de todos esses recursos pedaggicos adicionais e atualizados. Esperamos que voc os considere teis.

c,~-'~JMPREGO

DESTE LIVRO
A essncia de todos os esforos de reviso foi o de se apoiar nos pontos forte.s de edies anteriores para atender completamente s necessidades do estudante de hoje. Tanto os tpicos novos quanto as amplas atualizaes tomaram o livro ainda mais adequado para uso em um curso moderno que reflita a prtica atual nessa rea. A reduo no tamanho do livro o toma mais til como livro-texto para um curso introdutrio de pesquisa operacional. O uso de software faz parte da prtica no campo da pesquisa operacional, portanto, a ampla gama de opes de software que acompanha o livro d grande flexibilidade ao professor na escolha dos tipos de software preferidos para uso por parte do aluno. Todos os recursos pedaggicos que acompanham o livro ampliam ainda mais a experincia de aprendizado. Portanto, o livro e seu CD-ROM devem se adequar a um curso no qual o professor deseje que os alunos tenham um nico livro-texto independente que complemente e apie o que acontece em sala de aula.

XVIII

PREFCIO
A equipe editorial da McGraw-Hill e eu imaginamos que o efeito prtico desta reviso foi o de tomar esta edio com mais "cara" ainda de "livro para o aluno" - clara, interessante e bem organizada com grande quantidade de exemplos e ilustraes teis, boa motivao e perspectiva, material importante fcil de encontrar e tarefas agradveis, sem muita anotao, terminologia e complexos clculos matemticos. Acreditamos e confiamos que os inmeros professores que usaram edies anteriores vo concordar que esta a melhor edio at ento. Esse sentimento foi reforado pelas crticas geralmente entusiastas das verses preliminares desta edio. Os pr-requisitos para um curso que adote este livro podem ser relativamente modestos. Como em edies anteriores, a matemtica foi mantida em um nvel relativamente elementar. A maior parte dos Captulos 1a14 (introduo, programao linear e programao matemtica) no exige nenhum conhecimento de matemtica que v alm daquele adquirido no ensino mdio. empregado clculo somente no Captulo 12 (Programao No-linear) e em um exemplo do Captulo 10 (Programao Dinmica). A notao matricial usada no Captulo 5 (Teoria do Mtodo Simplex), Captulo 6 (Teoria da Dualidade e Anlise de Sensibilidade), Seo 7.4 (Algoritmo de Ponto Interno) e Captulo 12, mas o nico conhecimento prvio para este apresentado no Apndice 4. Para os Captulos 15 a 20 (modelos probabilsticos), supe-se uma introduo prvia teoria da probabilidade e usado clculo em poucos pontos. Em termos gerais, o conhecimento matemtico que um aluno atinge fazendo um curso de clculo elementar til ao longo dos Captulos 15 a 20 e para o material mais avanado dos captulos precedentes. O contedo do livro destina-se em grande parte ao nvel universitrio mais avanado (inclusive estudantes do segundo ano de faculdade bem preparados) e para alunos graduados do primeiro ano (nvel de mestrado). Em razo da grande flexibilidade do livro, existem diversas maneiras de se produzir o material de um curso. Os Captulos 1 e 2 do uma introduo ao tema pesquisa operacional. Os Captulos 3 a 14 (sobre programao linear e programao matemtica) podem ser essencialmente abordados de forma independente dos Captulos 15 a 20 (sobre modelos probabilsticos) e vice-versa. Alm do mais, captulos individuais entre os Captulos 3 e 14 so quase independentes, exceto pelo fato de todos eles usarem o material bsico apresentado no Captulo 3 e, talvez, do Captulo 4. O Captulo 6 e a Seo 7.2 tambm se baseiam no Captulo 5. As Sees 7.1 e 7.2 usam partes do Captulo 6. A Seo 9.6 supe uma familiaridade com formulao de problemas nas Sees 8.1 e 8.3, ao passo que uma exposio prvia s Sees 7.3 e 8.2 til (mas no essencial) na Seo 9.7. Dos Captulos 15 a 20, existe uma flexibilidade de abordagem considervel, embora haja certa integrao do material. Um curso elementar de pesquisa abordando programao linear, programao matemtica e certos modelos probabilsticos pode ser apresentado em um trimestre (40 horas) ou semestre, extraindo seletivamente material ao longo do livro. Por exemplo, uma boa pesquisa de campo pode ser obtida dos Captulos 1, 2, 3, 4, 15, 17, 18 e 20, juntamente com partes dos Captulos 9 a 13. Um curso elementar de pesquisa mais extenso pode ser completado em dois trimestres (60 a 80 horas) excluindo apenas alguns captulos, por exemplo, Captulos 7, 14 e 19. Os Captulos 1 a 8 (e quem sabe parte do Captulo 9) formam uma excelente base para um curso (de um trimestre) em programao linear. O material dos Captulos 9 a 14 aborda tpicos para outro curso (de um trimestre) sobre outros modelos determinsticos. Finalmente, o material dos Captulos 15 a 20 abrange os modelos probabilsticos (estocsticos) da pesquisa operacional para apresentao em um curso (de um trimestre). De fato, esses trs ltimos cursos (o material do texto integral) podem ser vistos como uma seqncia bsica de um ano sobre as tcnicas da pesquisa operacional, formando o cerne de um programa de mestrado. Cada curso descrito foi apresentado seja em nvel de graduao ou ps-graduao na Stanford University e este texto foi usado na maneira sugerida.

PREFCIO

XIX

ADECIMENTOS
Estou em dbito com um excelente grupo de revisores que me deram sbios conselhos em diversos estgios do processo de reviso. Fazem parte deste grupo:
Erin Baker, University of Massachusetts at Amherst Richard Bemhard, North Carolina State University at Raleigh Joseph Domblesky, Marquette University Richard Feldman, Texas A&M University Jill Hardin, Virginia Commonwealth University Kathy Hoke, University of Richmond Cerry Klein, University of Missouri at Columbia Emanuel Melachrinoudis, Northeastem University Robert Molzan, University of Kentucky John Mullen, New Mexico State University Joseph Pignatiello, Florida A&M University and Florida State University Pakize Simin Pulat, University of Oklahoma Jayant Rajgopal, University of Pittsburgh Christopher Rump, State University of New York at Buffalo Paul Savory, University of Nebraska at Lincoln James Simpson, Florida State University Reha Tutunca, Carnegie Mellon University Jose Ventura, Pennsylvania State University John Wu, Kansas State University

Tambm sou muito grato a lrv Lustig, Fred Glover e Sven Axster pelos seus comentrios especializados sobre os esboos das novas sees ou captulos sobre programao de restries, meta-heurstica e modelos de inventrio em vrias escalas, respectivamente. Ed Rothberg forneceu-me informao atualizada sobre os tamanhos dos problemas que estavam sendo resolvidos de forma bem-sucedida pelos programas de otimizao mais recentes. Alm disso, sou grato a vrios professores e estudantes que me enviaram mensagens via e-mail fazendo comentrios sobre a 7 edio. A presente edio deve-se em grande parte a um trabalho em equipe. Os autores dos estudos de caso, Karl Schmedders e Molly Stephens (ambos graduados de nosso departamento), redigiram 24 elaborados casos para a 7 edio e todos esses casos continuam a acompanhar esta nova edio. Um dos alunos atuais para Ph.D. de nosso departamento, Che-Lin Su, realizou um excelente trabalho preparando arquivos de dados para os estudos de caso e fez o rascunho da nova seo de Exemplos Trabalhados do CD-ROM, assim como da bateria de testes. Um de nossos ex-alunos do curso para Ph.D., Michael O'Sullivan, desenvolveu o Tutor PO para a 7 edio (e que continua na presente edio), baseado em parte do software que meu filho Mark Hillier havia desenvolvido para a 5 e 6 edies. Mark (que nasceu no mesmo ano da primeira edio, recebeu seu ttulo de Ph.D. da Stanford e que hoje membro permanente do corpo docente no Departamento de Administrao de Empresas da University of Washington) criou tanto as planilhas quanto os arquivos em Excel (inclusive vrios gabaritos em Excel) para a presente edio, bem como o Solver Table e o Queueing Simulator. Ele tambm me aconselhou tanto no novo material de texto quanto no novo software para esta edio e contribuiu enormemente para os Captulos 21 e 28 do CD-ROM. Outro Ph.D. pela Stanford, William Sun (CEO da empresa de software Accelet Corporation) e sua equipe realizaram um brilhante trabalho, partindo de grande parte do software anterior de Mark e implementando-o de novo em Java 2 na forma do Tutorial IOR para a 7 edio. Eles novamente fizeram um trabalho magistral de melhorar

ainda mais o Tutorial IOR para esta nova edio. Linus Schrage da Universidade de Chicago e do Lindo Systems (e que fez um curso introdutrio de pesquisa operacional comigo h 41 anos) foi o responsvel pelo Lingo, Lindo e What's Best do CD-ROM. Ele tambm supervisionou o desenvolvimento adicional de arquivos Lingo/Lindo para os diversos captulos, bem como forneceu material tutorial para o CD-ROM. Outro amigo de longa data, Bjarni Kristjansson (que dirige a Maximal Software), fez o mesmo em relao aos arquivos MPL/CPLEX e ao material tutorial em MPL, bem como providenciando verses educacionais do MPL, CPLEX, Conopt, LGO e OptiMax 2000 Component Library para o CD-ROM deste livro. Minha esposa, Ann Hillier, dedicou inmeros dias e noites em frente a seu Macintosh, digitando texto e construindo muitas figuras e tabelas. Todos eles foram membros vitais desta equipe. A ltima pgina lista as vrias empresas e indivduos que forneceram software para o CD-ROM. Agradecemos muito suas contribuies fundamentais. Foi um verdadeiro prazer trabalhar com as equipes editorial e de produo da McGrawHill, entre os quais Suzanne Jeans (Editora Associada), Lisa Kalner Williams (Editora de Desenvolvimento), Debra Matteson (Editora-executiva de Desenvolvimento), Katie White (Editora de Desenvolvimento) e Mary Powers (Gerente de Projetos Snior). Da mesma forma como tantos indivduos deram importantes contribuies a esta edio, gostaria de convidar cada um de vocs para comear a contribuir para a prxima edio usando meu endereo de e-mail para envio de comentrios, sugestes e errata, ajudando-me assim a aperfeioar o livro no futuro. Ao dar meu endereo de e-mail, permita-me tambm garantir aos professores que continuarei a adotar a poltica de no fornecer a ningum que me contate, incluindo seus alunos, a soluo de problemas e de estudos de caso contidos no livro. Boa leitura! Frederick S. Hillier Stanford University (fhillier@Stanford.edu)

CAP

U LO

Introduo

1.1

AS ORIGENS DA PESQUISA OPERACIONAL


Desde o advento da Revoluo Industrial, o mundo presencia um crescimento extraordinrio no tamanho e na complexidade das organizaes. As pequenas oficinas de artesos de outrora evoluram para as corporaes bilionrias de hoje. Um fator crucial dessa mudana revolucionria foi o extraordinrio aumento na diviso do trabalho e a segmentao das responsabilidades gerenciais nessas organizaes. Os resultados foram espetaculares. Entretanto, juntamente com seus pontos positivos, essa crescente especializao criou problemas novos, problemas estes que ainda ocorrem em muitas organizaes. Um deles a tendncia de as diversas unidades de uma organizao crescerem em ilhas relativamente autnomas com seus prprios objetivos e sistemas de valor, perdendo, conseqentemente, a viso de como suas atividades e objetivos se entremeiam com aquelas da organizao como um todo. O que pode ser melhor para uma das unidades freqentemente prejudicial a outra, de forma que as unidades podem acabar trabalhando em direo a objetivos conflitantes. Um problema relativo a isso aquele no qual, medida que aumentam a complexidade e a especializao em uma organizao, toma-se cada vez mais difcil alocar os recursos disponveis para as diversas atividades da maneira mais eficiente para a organizao como um todo. Esses tipos de problema e a necessidade de encontrar o melhor caminho para solucion-los criaram condies necessrias para o surgimento da pesquisa operacional (comumente referida como PO). As origens da PO podem ser remontadas muitas dcadas atrs quando foram feitas tentativas iniciais no emprego de uma abordagem cientfica na gesto das organizaes. Porm, o incio da atividade, assim denominada pesquisa operacional, geralmente atribudo s atividades militares nos primrdios da Segunda Guerra Mundial. Em razo do empreendimento da guerra, havia uma necessidade premente de se alocar de forma eficiente os escassos recursos para as diversas operaes militares e atividades internas a cada operao. Conseqentemente, os comandos militares britnico e norte-americano convocaram grande nmero de cientistas para aplicar uma abordagem cientfica para lidar com este e outros problemas tticos e estratgicos. Na prtica lhes foi solicitado a realizao de pesquisas sobre operaes (militares). Essas equipes de cientistas foram as primeiras de PO. Por meio do desenvolvimento de mtodos eficientes de emprego da nova ferramenta radar, essas equipes se tomaram instrumentos na vitria da Batalha Area em cus da Gr-Bretanha. Por intermdio dessas pesquisas sobre como melhor administrar operaes de comboio e anti-submarinos, esses cientistas desempenharam papel fundamental na vitria da Batalha do Atlntico Norte. Esforos semelhantes ajudaram na Campanha Britnica no Pacfico.
1

CAPTULO 1

INTRODUO

Quando a guerra acabou, o sucesso da PO no empreendimento blico despertou interesse na sua aplicao fora do ambiente militar. medida que se ia desenrolando o boom industrial ps-guerra, os problemas causados pela crescente complexidade e especializao nas organizaes foram novamente ganhando o primeiro plano. Tomava-se aparente para um nmero cada vez maior de pessoas, entre as quais consultores de negcios que trabalharam nas equipes de PO ou em conjunto com elas durante a guerra, que estes foram basicamente os problemas enfrentados pelos militares, porm, agora, em um contexto diferente. No incio dos anos 1950, esses indivduos haviam introduzido o emprego da PO em uma diversidade de organizaes nos setores comercial, industrial e governamental. A rpida disseminao da PQ veio a seguir. Podem-se identificar pelo menos dois fatores que desempenharam papel fundamental no rpido crescimento da PO durante esse perodo. O primeiro foi o progresso substancial feito no incio em termos de melhoria das tcnicas da PO. Aps a guerra, muitos dos cientistas que haviam participado das equipes de PO ou que ouviram falar a esse respeito motivaram-se para desenvolver pesquisas relevantes nesse campo resultando em avanos importantes no estadoda-arte. Um exemplo essencial o mtodo simplex para soluo de problemas com programao linear, desenvolvido por George Dantzig em 1947. Vrias ferramentas-padro da PO, como programao linear, programao dinmica, teoria das filas e teoria do inventrio, atingiram um estado relativamente bem desenvolvido antes do final dos anos 1950. Um segundo fator que deu grande mpeto ao crescimento desse campo foi a "avalanche" da revoluo computacional. Requer-se grande volume de processamento de clculos para o tratamento eficiente dos problemas complexos tipicamente considerados pela PO. Normalmente, fazer isso mo seria uma hiptese fora de cogitao. Portanto, o desenvolvimento de computadores eletrnicos digitais, com a capacidade de realizarem clculos matemticos milhares ou at mesmo milhes de vezes mais rpido que o ser humano, deu um impulso enorme PO. Outro estmulo veio nos anos 1980 com o desenvolvimento de computadores pessoais cada vez mais poderosos munidos de excelentes pacotes de software para emprego da PO. Isso permitiu que o emprego da PO ficasse ao alcance de um nmero muito maior de pessoas. Hoje em dia, praticamente milhes de pessoas tm pronto acesso a software de PO. Por conseguinte, enorme gama de computadores, de mainframes a laptops, , hoje, rotineiramente utilizada para solucionar problemas relativos PO.

,,,ti~ia:~}.' NATUREZA DA PESQUISA OPERACIONAL


Como o prprio nome indica, a pesquisa operacional envolve "pesquisa sobre operaes". Portanto, a pesquisa operacional aplicada a problemas envolvendo como conduzir e coordenar as operaes (isto , as atividades) em uma organizao. A natureza das organizaes essencialmente secundria e, de fato, a PO tem sido largamente aplicada em reas to distintas como manufatura, transportes, construo, telecomunicaes, planejamento financeiro, assistncia mdica, militar e servios pblicos, somente para citar algumas. Portanto, a gama de aplicaes excepcionalmente grande. O trecho pesquisa do termo significa que a pesquisa operacional usa uma abordagem que relembra a maneira pela qual so conduzidas as pesquisas em campos cientficos usuais. Em um grau considervel, o mtodo cientfico utilizado para investigar o problema empresarial (de fato, a expresso cincias da administrao algumas vezes usada como sinnimo de pesquisa operacional). Em particular, o processo comea observando-se e formulando-se cuidadosamente o problema, incluindo a coleta de dados relevantes. A prxima etapa construir um modelo cientfico (tipicamente matemtico) que tenta abstrair a essncia do problema real. Parte-se, ento, da hiptese de que esse modelo uma representao suficientemente precisa das caractersticas essenciais da situao e de que as concluses (solues) obtidas do modelo tambm so vlidas para o problema real. A seguir, so realizadas experimentaes adequadas para testar essa hiptese, modific-la conforme necessrio e, eventualmente, verificar algum tipo de hiptese (essa etapa freqentemente conhecida como validao do modelo). Assim, at certo ponto, a pesquisa operacional envolve a pesquisa

1.3 O IMPACTO DA PESQUISA OPERACIONAL

cientfica criativa das propriedades fundamentais das operaes. Entretanto, h outros fatores envolvidos alm desse. Especificamente, a PO tambm trata da gesto prtica da organizao. Portanto, para ser bem-sucedida, a PO tambm precisa, quando necessrio, fornecer concluses positivas e inteligveis para o(s) tomador(es) de deciso. Outra caracterstica da PO seu ponto de vista abrangente. Conforme implcito na seo anterior, a PO adota um ponto de vista organizacional. Dessa forma, ela tenta solucionar os conflitos de interesses entre as unidades da organizao da maneira que seja a melhor soluo para a organizao com um todo. Isso no implica que o estudo de cada problema deve considerar explicitamente todos os aspectos da organizao; ao contrrio, os objetivos buscados devem ser consistentes com aqueles de toda a organizao. Uma caracterstica adicional que a PO tenta, freqentemente, encontrar uma melhor soluo (conhecida como soluo tima) para o problema considerado (dissemos uma melhor soluo em vez de a melhor soluo, pois pode haver vrias solues consideradas como melhores). Em vez de simplesmente melhorar o status quo, o objetivo identificar o melhor caminho a seguir. Embora ele deva ser interpretado com cuidado em termos das necessidades prticas da administrao, essa busca pela "otimalidade" um tema importante na PO. Todas essas caractersticas levam quase naturalmente a mais uma. evidente que no se espera que ningum seja um especialista em todos os vrios aspectos do trabalho em PO ou dos problemas tipicamente considerados; isso exigiria um grupo de indivduos com background e habilidades diversas. Portanto, quando se realiza um estudo de PO totalmente maduro de um novo problema, geralmente necessrio adotar-se uma abordagem de equipe. Uma equipe de PO desse tipo precisa, tipicamente, incluir indivduos que coletivamente sejam altamente treinados em matemtica, estatstica e teoria da probabilidade, economia, administrao de empresas, informtica, engenharia e fsica, cincias comportamentais e as tcnicas especiais de PO. A equipe tambm precisa ter a experincia necessria e diversidade de habilidades para dar a ateno adequada a muitas ramificaes do problema que permeiam a organizao.

1.3 O IMPACTO DA PESQUISA OPERACIONAL


A pesquisa operacional teve um impacto impressionante na melhoria da eficincia de inmeras organizaes pelo mundo. No processo, a PO deu uma contribuio significativa no aumento da produtividade das economias de diversos pases. H alguns pases-membros na Federao Internacional das Sociedades de Pesquisa Operacional (Ifors), com todo pas tendo uma sociedade de pesquisa operacional nacional. Tanto a Europa quanto a sia possuem federaes de PO para coordenar a realizao de conferncias internacionais e a publicao de jornais de circulao internacional nesses continentes. Alm disso, o Instituto para Pesquisa Operacional e Cincias da Administrao (lnforms) uma sociedade de PO internacional. Entre os diversos jornais, tem-se o chamado Inteifaces, que publica artigos regularmente descrevendo estudos importantes no campo da PO e o impacto que teriam sobre suas organizaes. Para se ter uma idia melhor da ampla aplicabilidade da PO, enumeramos algumas aplicaes reais e consagradas na Tabela 1.1. Observe a diversidade das organizaes e das aplicaes nas duas primeiras colunas. O leitor que tiver interesse poder encontrar um artigo completo descrevendo cada uma das aplicaes na edio de janeiro-fevereiro da Inteifaces para o ano citado na terceira coluna da tabela. A quarta coluna enumera os captulos deste livro que descrevem os tipos de tcnicas de PO que foram empregadas na aplicao (note que muitas das aplicaes combinam uma variedade de tcnicas). A ltima coluna indica que essas aplicaes resultaram tipicamente em uma economia anual de milhes (ou at mesmo dezenas de milhes) de dlares. Alm disso, benefcios adicionais no registrados na tabela (por exemplo, melhoria nos servios aos clientes e melhor controle gerencial) algumas vezes foram considerados at mais importantes que os benefcios financeiros (voc ter uma oportunidade de investigar estes benefcios menos tangveis nos Problemas 1.3-1e1.3-2).

CAPTULO 1

INTRODUO

TABELA 1.1
Organizao

Algumas aplicaes da pesquisa operacional


Natureza da Aplicao
Desenvolver a poltica nacional de gesto de recursos hdricos, inclusive combinao de novas instalaes, procedimentos operacionais e tarifas.

Ano da Captulos Publicao* Relacionadost


1985 2-8, 12, 20

Economia Anual (US$)


15 milhes

-----~--~--------

The Netherlands Rijkswaterstaat Monsanto Corp. United Airlines Citgo Petroleum Corp. San Francisco Police Department Texaco, lnc.

Otimizar operaes de produo nas fbricas qumicas para atender a objetivos de produo a um custo mnimo. Programar turnos de trabalho nos balces de reserva para atender s necessidades dos clientes a um custo mnimo. Otimizar operaes de refinarias e o abastecimento, a distribuio e o marketing de produtos. Programar e empregar de forma otimizada os patrulheiros por meio de um sistema computadorizado. Misturar, de forma otimizada, a produtos da gasolina, componentes disponveis, visando atender s exigncias de qualidade e de comercializaiio. Integrar uma rede nacional de inventrios de peas de reposio para melhorar os servios de suporte. Otimizar o desenho de uma rede nacional de transporte rodovirio e suas rotas.

1985 1986 1987 1989

2, 11 2-9, 11, 17, 26, 27 2-9, 27 2-4, 11, 27

2 milhes 6 milhes 70 milhes 11 milhes

1989

2, 12

30 milhes 20 milhes + 250 milhes em decorrncia de inventrios menores 17,3 milhes 33% de reduo de casos de HIV/Aids 750 milhes 100 milhes 800 milhes

IBM

1990

2, 18, 20

Yellow Freight System, lnc.

1992 1993 1993 1994 1995

2, 9, 12, 20, 27

Desenvolvimento de um programa de troca de agulhas Departamento de Sade de New Haven eficiente para combater o alastramento da Aids/HIV. AT&T Delta Airlines Digital Equipment Corp. China Fora de defesa da frica do Sul Proctor and Cambie Desenvolver um sistema baseado em PCs para orientar clientes comerciais no projeto de cal/ centers. Maximizar o lucro na alocao de tipos de aeronaves em mais de 2.500 vos domsticos. Reestruturar a cadeia global de abastecimento de fornecedores, fbricas industriais, centros de distribuio, localizaes potenciais e reas de mercado. Selecionar e programar, de forma otimizada, projetos em grande escala para atender s necessidades futuras de energia do pas. Redesenhar, de forma otimizada, o tamanho e o formato das foras de defesa e seus sistemas de armamentos. Redesenhar o sistema de distribuio e de produo nos Estados Unidos para reduzir custos e aumentar a velocidade de chegada ao mercado. Programar, de forma otimizada, a escala de funcionrios para fornecer um nvel de atendimento ao cliente adequado a um custo mnimo. Redesenhar os tamanhos e as localizaes de buffers em uma linha de produo de impressoras para atender aos objetivos de produo. Desenvolver um sistema de programao e rotas de veculos para as frotas de entrega e de atendimento domiciliar. Fazer a reengenharia de sua cadeia global de abastecimento para responder mais rapidamente aos clientes, mantendo, ao mesmo tempo, o menor estoque possvel. Desenvolver opes de cotaes on-line diretos e baseadas em ativos para fornecimento de servios na rea financeira. Desenvolver mtodos de reduo de tempos de fabricao e nveis de estoque. Otimizar a realocao de tripulaes quando da ocorrncia de desajustes nos horrios de vo.

2
17, 20, 26 11 11

1995 1997

11 11

425 milhes

1,1 bilho 200 milhes

1997

Taco Bell

1998

11, 20, 27

13 milhes 280 milhes a mais em receitas 42 milhes 750 milhes no primeiro ano 80 milhes a mais em receitas 200 milhes a mais em receitas 40 milhes

Hewlett-Packard Sears, Roebuck

1998

17, 26

1999

11

IBM

2000

18

Merrill Lynch Samsung Electronics Continental Airlines

2002 2002 2003

2, 20 2-7 2, 11

Pertence edio de janeiro-fevereiro da Interfaces na qual pode-se encontrar um artigo completo descrevendo a aplicao. Refere-se aos captulos deste livro que descrevem os tipos de tcnicas de PO empregadas na aplicao.

1.4 ALGORITMOS

COURSEWARE

A Referncia 1 entre as selecionadas no final do captulo nos d umfollow-up sobre o impacto estratgico no longo prazo que vrias dessas aplicaes tiveram nas empresas referidas. A Referncia 3 descreve algumas outras aplicaes e o papel fundamental que a pesquisa operacional desempenha no aumento da lucratividade e na produtividade de inmeras empresas. Embora a maioria dos estudos rotineiros de pesquisa operacional fornea benefcios consideravelmente mais modestos que as aplicaes consagradas sintetizadas na Tabela 1.1, os nmeros na coluna mais direita desta tabela refletem, de forma acurada, o impacto drstico que estudos de PO amplos e bem planejados podem ter ocasionalmente. Descrevemos de forma sucinta algumas dessas aplicaes no Captulo 2 e, a seguir, apresentamos detalhadamente duas delas na forma de estudos de caso na Seo 3.5.

ALGORITMOS E/OU COURSEWARE


Uma importante parte deste livro sobre a apresentao dos principais algoritmos (procedimentos sistemticos para soluo) da PO para resolver certos tipos de problema. Alguns desses algoritmos so incrivelmente eficientes e so usados de forma rotineira em problemas envolvendo centenas ou milhares de variveis. Daremos uma introduo sobre como esses algoritmos funcionam e o que os toma to eficientes. A seguir, voc usar esses algoritmos para solucionar uma srie de problemas via computador. O Courseware de PO contido no CD-ROM que acompanha o livro ser uma ferramenta-chave na implementao de tudo isso. Uma caracterstica especial em nosso Courseware de PO refere-se a um programa chamado Tutor PO. Esse programa destina-se a ser seu tutor pessoal para ajud-lo no aprendizado desses algoritmos. Ele consiste em diversos exemplos de demonstrao que mostram e explicam os algoritmos em ao. Essas demos complementam os exemplos contidos neste livro. Alm disso, nosso Courseware de PO inclui um pacote de software especial denominado Tutorial Interativo de Pesquisa Operacional, ou simplesmente Tutorial IOR. Implementado em Java, esse pacote inovador foi desenvolvido especificamente para melhorar o aprendizado de nossos leitores. O Tutorial IOR engloba vrios procedimentos interativos para execuo interativa dos algoritmos em um formato conveniente. O computador executa todos os clculos de rotina ao passo que voc se concentra no aprendizado e na execuo da lgica do algoritmo. Certamente voc achar esses procedimentos interativos muito eficientes e uma forma de esclarecimento na execuo de vrios exerccios apresentados. O Tutorial IOR tambm abrange uma srie de outros procedimentos teis, incluindo alguns procedimentos automticos para execuo automtica de algoritmos e diversos procedimentos que apresentam telas grficas sobre como as solues fornecidas por um algoritmo variam conforme os dados do problema. Na prtica, os algoritmos normalmente so executados por pacotes de software comerciais. Acreditamos que seja importante para os estudantes familiarizarem-se com a natureza desses pacotes que usaro aps se formarem. Portanto, nosso Tutorial IOR inclui um grande volume de material para introduzi-lo em trs pacotes de software comerciais descritos a seguir. Juntos, esses pacotes o habilitaro a solucionar, de forma muito eficiente, 'praticamente todos os modelos de PO encontrados no livro. Acrescentamos nossos procedimentos automticos prprios ao Tutorial IOR em alguns poucos casos nos quais esses pacotes comerciais no puderam ser aplicados. Hoje em dia, uma abordagem muito popular o uso do programa de planilhas mais popular do momento, o Microsoft Excel, para formular pequenos modelos de PO em um formato de planilha. O Excel Solver (ou uma verso aperfeioada desse programa adicional como o Premium Solver for Education, incluso em nosso Courseware de PO) usado ento para solucionar esses modelos. Nosso Courseware de PO contm arquivos Excel parte para praticamente todos os captulos do livro. Toda vez que um captulo indicar um exemplo que possa ser solucionado usando-se o Excel, sero apresentadas a formulao

CAPTULO 1

INTRODUO

completa da planilha e a soluo nos arquivos Excel referentes ao captulo em questo. Tambm fornecido um gabarito Excel para muitos dos modelos deste livro, j contendo todas as equaes necessrias para solucionar o modelo. Alguns programas Excel complementares so fornecidos no CD-ROM. Aps vrios anos o Lindo (e tambm a linguagem de modelagem que o acompanha, o Lingo) continua a ser um pacote de software de PO popular. As verses educacionais do Lindo e do Lingo agora podem ser baixadas da Internet. Esta verso educacional tambm dada em nosso Courseware de PO. Da mesma forma que ocorre com o Excel, toda vez que um exemplo puder ser solucionado por intermdio desse pacote, sero fornecidos em nosso Courseware de PO todos os detalhes na forma de um arquivo Lindo/Lingo para o captulo em questo. O CPLEX um pacote de software de ponta usado largamente para solucionar problemas de PO extensos e desafiadores. Ao lidar com tais problemas, comum tambm se usar um sistema de modelagem para formular eficientemente o modelo matemtico e introduzilo no computador. MPL um sistema de modelagem amigvel que utiliza o CPLEX como seu principal solucionador. Uma verso educacional do MPL e uma do CPLEX se encontram disponveis para download gratuito na Internet. Para sua convenincia, tambm inclumos essas verses educacionais em nosso Courseware de PO. Repetindo, todos os exemplos que podem ser resolvidos com esse pacote so detalhados em arquivos MPL/CPLEX para os respectivos captulos em nosso Courseware de PO. Posteriormente, descreveremos com mais detalhes esses trs pacotes de software e como us-los (especialmente no final dos Captulos 3 e 4). O Apndice 1 tambm fornece documentao para o Courseware de PO, inclusive o Tutor PO e o Tutorial IOR. Para chamar a sua ateno sobre material relevante em nosso Courseware de PO, o final de cada captulo, a partir do Captulo 3, possui uma lista intitulada Ferramentas de Aprendizado para Este Captulo Contidas no CD-ROM. Conforme explicado, no incio da seo de problemas para cada um desses captulos, tambm so colocados smbolos esquerda de cada nmero de problema (ou parte deles) onde quaisquer desses materiais (inclusive exemplos de demonstrao e procedimentos interativos) possam ser teis. Outra ferramenta de aprendizado fornecida com o CD-ROM um conjunto de Exemplos Trabalhados para cada captulo (do Captulo 3 em diante). Esses exemplos completos complementam aqueles contidos no livro para uso conforme a necessidade, mas sem interromper o fluxo do material naquelas diversas ocasies em que voc no tem necessidade de exemplos adicionais. Provavelmente voc achar interessantes esses exemplos complementares ao preparar-se para um exame. Sempre mencionaremos toda vez que um exemplo complementar sobre o tpico atual estiver incluso na seo Exemplos Trabalhados do CD-ROM. O CD-ROM tambm apresenta um glossrio para cada captulo.

1. BELL, P. C. et al. Strategic Operations Research and the Edelman Prize Finalist Applications 1989-1998, Operations Research, v. 51, n. 1, p. 17-31, jan./fev. 2003. 2. GASS, S. I.; HARRlS, C. M. (Eds.). Encyclopedia of Operations Research and Management Science. 2. ed. Boston: Kluwer Academic Publishers, 2001. 3. HORNER, P. (Ed.). Special Issue: Executive's Guide to Operations Research. ORIMS Today. lnstitute for Operations Research and the Management Sciences, v. 27, n. 3, jun. 2000. 4. KIRBY, M. W. Operations Research Trajectories: TheAnglo-American Experience from the 1940s to the 1990s. Operations Research, v. 48, n. 5, p. 661-670, set./out. 2000. 5. MISER, H. J. The Easy Chair: Wbat OR/MS Workers Should Know About the Early Formative Years of Their Profession. Interfaces, v. 30, n. 2, p. 99-111, mar./abr. 2000. 6. WEIN, L. M. (Ed.). 50th Anniversary Issue. Operations Research (edio especial contendo relatos personalizados de algumas das primeiras inovaes de fundamental importncia tanto no campo prtico como no terico), v. 50, n. 1, jan./fev. 2002.

REFERNCIAS SELECIONADAS

PROBLEMAS

PROBLEMAS
1.3-2. Selecione trs das aplicaes de pesquisa operacional enumeradas na Tabela 1.1. Leia os artigos que descrevem as aplicaes na edio de janeiro-fevereiro da Inteifaces para o ano indicado na terceira coluna da tabela. Para cada um deles, redija um resumo de uma pgina sobre a aplicao e os benefcios (inclusive benefcios no-financeiros) gerados por ela.

1.3-1. Selecione uma das aplicaes de pesquisa operacional fornecidas na Tabela 1.1. Leia o artigo que descreve a aplicao na edio de janeiro-fevereiro da Inteifaces para o ano indicado na ter.:-eira coluna da tabela. Redija um resumo de duas pginas sobre a aplicao e os benefcios (inclusive benefcios no-financeiros) gerados por ela.

Viso Geral da Abordagem de Modelagem da Pesquisa Operacional

rande parte deste livro dedicada aos mtodos matemticos da pesquisa operacional (PO). Isso bastante apropriado j que essas tcnicas quantitativas formam a principal parte do que conhecido como PO. Porm, isso no implica que estudos prticos no campo da PO sejam basicamente exerccios matemticos. Na realidade, a anlise matemtica normalmente representa apenas uma parte relativamente pequena do esforo total requerido. O propsito deste captulo o de oferecer uma melhor perspectiva descrevendo todas as principais fases de um estudo de PO tpico. Uma forma de se sintetizar as fases usuais (que se sobrepem) de um estudo de PO a seguinte: 1. Definir o problema de interesse e coletar dados. 2. Formular um modelo matemtico para representar o problema. 3. Desenvolver um procedimento computacional a fim de derivar solues para o problema a partir do modelo. 4. Testar o modelo e aprimor-lo conforme necessrio. 5. Preparar-se para a aplicao contnua do modelo conforme prescrito pela gerncia. 6. Implementar. Cada uma dessas fases ser discutida nas sees a seguir. A maioria dos estudos de PO consagrados introduzidos na Tabela 1.1 fornece exemplos de como executar adequadamente essas fases. Iremos intercalar pequenos trechos desses exemplos ao longo do captulo, convidando-o para leitura adicional.

1.1

DEFINIO DO PROBLEMA E COLETA DE DADOS


Em contraste com os exemplos do texto, a maioria dos problemas prticos enfrentados pelas equipes de PO inicialmente descrita a eles de uma forma vaga e imprecisa. Conseqentemente, a primeira ordem do dia estudar o sistema relevante e desenvolver um enunciado bem-definido do problema a ser considerado. Isso abrange determinar coisas como os objetivos apropriados, restries sobre o que pode ser feito, relao entre a rea a ser estudada e outras reas da organizao, possveis caminhos alternativos, limites de tempo para tomada de deciso e assim por diante. Esse processo de definio de problema crucial, pois afeta enormemente quo relevantes sero as concluses do estudo. difcil obter uma resposta "correta" a partir de um problema "incorreto"!

2.1

DO PROBLEMA E COLETA DE DADOS

A primeira coisa a ser reconhecida que uma equipe de PO normalmente trabalha na qualidade de consultores. Aos membros da equipe no somente apresentado um problema e solicitado a resolv-lo conforme julguem apropriado. Em vez disso, eles aconselham a gerncia (geralmente um tomador de decises importante). A equipe realiza uma anlise tcnica detalhada do problema e a seguir apresenta recomendaes gerncia. Freqentemente, o relatrio gerncia identificar uma srie de alternativas particularmente atrativas de acordo com diversas suposies ou segundo um intervalo de valores diferente de algum parmetro da poltica adotada que pode ser avaliado somente pela gerncia (por exemplo, o conflito entre custo e benefcios). A gerncia avalia o estudo e suas recomendaes, leva em considerao uma srie de fatores intangveis e toma a deciso final baseada em seu melhor julgamento. Conseqentemente, vital para a equipe de PO sintonizar-se com a gerncia, inclusive identificando o problema "correto" segundo o ponto de vista da gerncia e obter o seu apoio ao longo do projeto. Determinar os objetivos apropriados um aspecto muito importante na definio de um problema. Para tanto, necessrio, primeiramente, identificar o membro (ou membros) da gerncia que efetivamente decidir( o) no que se refere ao sistema em estudo e, depois, sondar o pensamento desse(s) indivduo(s) no que tange aos objetivos pertinentes (envolver o tomador de decises desde o princpio essencial para obter seu apoio implementao do estudo). Em razo de sua natureza, a PO se preocupa com o bem-estar de toda a organizao e no apenas com aquele de certos membros da organizao. Um estudo de PO busca solues que so timas para a organizao como um todo em vez de solues subotimizadas que so boas apenas para um membro. Portanto, os objetivos que so formulados idealmente devem ser aqueles de toda a organizao. Entretanto, isso nem sempre conveniente. Muitos problemas referem-se primariamente apenas a uma poro da organizao, de forma que a anlise passaria a ser incontrolvel caso os objetivos declarados fossem muito genricos e se fosse dada considerao categrica a todos os efeitos colaterais no restante da organizao. Em vez disso, os objetivos usados no estudo devem ser os mais especficos possveis e, ao mesmo tempo, englobar os principais objetivos do tomador de decises e manter um grau de consistncia razovel .com os objetivos mais altos da organizao. Para organizaes com fins lucrativos, uma abordagem possvel para contornar o problema de subotimizao usar a maximizao de lucros no longo praza (levando-se em conta o valor do dinheiro no tempo) como o nico objetivo. A qualificao no longo praza indica que esse objetivo fornecea flexibilidade de considerar-se atividades que no se traduzem imediatamente em lucros (por exemplo, projetos de pesquisa e desenvolvimento), mas precisam faz-lo com o tempo de modo a valer a pena. Essa abordagem tem seus mritos. Esse objetivo suficientemente especfico para ser usado de forma conveniente e ainda assim ser suficientemente abrangente para abarcar o objetivo bsico das organizaes que visam ao lucro. De fato, algumas pessoas acreditam que todos os demais objetivos legtimos podem ser traduzidos nesse nico. Entretanto, na prtica, muitas organizaes com fins lucrativos no adotam esse enfoque. Uma srie de estudos de corporaes norte-americanas revela que a gerncia tende a adotar o objetivo de lucros satisfatrios, combinados com outros objetivos, em vez de focalizar na maximizao de lucros no longo prazo. Tipicamente, alguns desses outros objetivos podem ser o de manter lucros estveis, aumentar (ou manter) a fatia de mercado, propiciar a diversificao de produtos, manter preos estveis, levantar o moral dos trabalhadores, manter o controle familiar do negcio e aumentar o prestgio da companhia. Completando-se esses objetivos, pode ser que se alcance a maximizao, porm o inter-relacionamento pode ser suficientemente obscuro para no ser conveniente incorporar todos eles nesse nico objetivo. Alm disso, h consideraes adicionais envolvendo responsabilidades sociais que so distintas do motivo lucro. As cinco partes geralmente afetadas por uma empresa comercial localizada em um nico pas so: (1) os proprietrios (acionistas etc.) que desejam lucros (dividendos, valorizao das aes e assim por diante); (2) os empregados, que desejam emprego estvel com salrios razoveis; (3) os clientes, que desejam um produto confivel a preos razoveis; (4) os fornecedores, que desejam integridade e um preo de venda razo-

10

CAPTULO 2

VISO GERAL DA ABORDAGEM DE MODELAGEM DA PESQUISA ...

vel para suas mercadorias; e (5) o governo e, conseqentemente, a nao, que desejam o pagamento de impostos razoveis e considerao pelo interesse nacional. Todas as cinco partes do contribuies essenciais para a empresa e esta no deve ser vista como um servidor exclusivo de qualquer uma das partes para explorao das demais. Pelo mesmo critrio, corporaes internacionais assumem obrigaes adicionais para seguirem prticas socialmente responsveis. Portanto, mesmo que a principal responsabilidade da gerncia seja a de gerar lucros (o que, em ltima instncia, acabar beneficiando as cinco partes envolvidas), percebemos que suas responsabilidades sociais mais amplas tambm devam ser reconhecidas. As equipes de PO tipicamente investem uma quantidade de tempo surpreendentemente grande coletando dados relevantes sobre o problema. Grande parte dos dados normalmente necessria tanto para se obter um entendimento preciso sobre o problema como tambm para fornecer a entrada necessria para o modelo matemtico que est sendo formulado na prxima fase do estudo. Freqentemente, grande parte dos dados necessrios no estar disponvel quando se inicia o estudo, seja porque as informaes jamais foram guardadas, seja pelo fato de o que foi registrado se encontrar desatualizado ou, ento, na forma incorreta. Conseqentemente, s vezes, normalmente necessrio instalar um sistema de informaes gerenciais baseado em computadores para coletar regularmente os dados necessrios e no formato desejado. A equipe de PO, em geral, precisa obter o apoio de diversos outros indivduos-chave da organizao para conseguir todos os dados vitais. Mesmo com esse empenho, grande parte dos dados pode ser relativamente "frgil", isto , estimativas grosseiras baseadas apenas em conjeturas. Tipicamente, uma equipe de PO despender um tempo considervel tentando melhorar a preciso dos dados para depois se adequar e trabalhar com o que de melhor possvel possa ser obtido. Com a ampla difuso do emprego de bancos de dados e o crescimento explosivo em seus tamanhos em anos recentes, as equipes de PO agora freqentemente acham que o maior problema relativo a dados no so aqueles poucos disponveis, mas sim o fato de haver dados em demasia. Podem haver milhares de fontes de dados e a quantidade total de dados pode ser medida em gigabytes ou at mesmo em terabytes. Nessas condies, localizar os dados particularmente relevantes e identificar os padres de interesse nesses dados toma-se uma tarefa assustadora. Uma das ferramentas mais novas para as equipes de PO uma tcnica chamada data mining que atende a essa tarefa. Os mtodos de data mining pesquisam grandes bancos de dados na busca de padres de interesse que possam levar a decises teis. A Referncia 1 selecionada no final do captulo fornece mais informaes sobre data mining. Exemplos. Um estudo de PO realizado para o Departamento de Polcia de So Francisco 1 resultou no desenvolvimento de um sistema computadorizado para escala e emprego de patrulheiros. O novo sistema gerou uma economia anual de US$ 11 milhes e um aumento de US$ 3 milhes em receitas por multas de trnsito e melhoria de 20% em tempos de resposta. Ao avaliar os objetivos apropriados para esse estudo, trs objetivos foram identificados: 1. Manter alto nvel de segurana para o cidado. 2. Manter o moral da tropa elevado. 3. Minimizar o custo de operaes. Para satisfazer o primeiro objetivo, o Departamento de Polcia e o governo municipal estabeleceram conjuntamente um nvel de proteo desejado. O modelo matemtico imps ento a necessidade de que esse nvel de proteo fosse atingido. De forma semelhante, o modelo imps a exigncia de equilibrar a carga de trabalho entre os policiais de modo a trabalhar rumo ao segundo objetivo. Finalmente, o terceiro objetivo foi incorporado adotando o objetivo de longo prazo de minimizar o nmero de policiais necessrios para atender a esses dois primeiros objetivos.
TAYLOR, P. E.; HUXLEY, S. J. A Break from Tradition for the San Francisco Police: Patrol Officer Scheduling Using an Optimization-Based Decision Support System. Interfaces, v. 19, n. 1, p. 4-24, jan./fev. 1989. Leia especialmente as pginas 4 a 11.

2.2

FORMULANDO UM MODELO MATEMTICO

11

O Departamento de Sade de New Haven, Connecticut, usou uma equipe de P0 2 para desenvolver um programa de troca de agulhas eficiente para combater o alastramento do vrus que provoca a Aids (HIV) sendo bem-sucedido ao reduzir em 33% a taxa de infeco por HIV em clientes do programa. A parte fundamental desse estudo foi um programa de coleta de dados inovador para obter a entrada necessria para os modelos matemticos de transmisso por HIV. Esse programa envolveu o acompanhamento completo de cada agulha (e seringa), incluindo a identidade, o local e a data para cada uma das pessoas que recebeu a agulha e cada pessoa que devolvia uma agulha durante uma troca, bem como o teste para verificar se a agulha devolvida era soropositiva ou no. No final dos anos 90, empresas de servios financeiros com atendimento completo sofreram uma investida vigorosa por parte de empresas de corretagem eletrnicas oferecendo custos de operao extremamente baixos. A Merrill Lynch 3 respondeu por meio da conduo de um importante estudo de PO que levou a uma completa reviso de como ela cobrava seus servios, desde uma opo de servios completos baseados em ativos (cobrando uma porcentagem fixa do valor dos ativos em carteira em vez de operaes individuais) at uma opo de baixo custo para clientes que desejavam investir diretamente on-line. A coleta e o processamento de dados desempenharam papel fundamental no estudo. Para analisar o impacto do comportamento individual dos clientes em resposta a diferentes opes, a equipe precisou montar um banco de dados cliente de 200 gigabytes envolvendo 5 milhes de clientes, 10 milhes de contas, 100 milhes de registros de operaes e 250 milhes de registros de lanamentos contbeis. Isso exigiu a fuso, reconciliao, filtragem e limpeza de dados de inmeros bancos de dados de produo. A adoo das recomendaes do estudo levou a um aumento anual de aproximadamente US$ 50 bilhes em ativos de clientes em carteira e aproximadamente US$ 80 milhes adicionais em termos de receitas. Um estudo de PO realizado pela Citgo Petroleum Corporation4 otimizou tanto as operaes da refinaria quanto o fornecimento, a distribuio e a comercializao de seus produtos, alcanando, portanto, um aumento de lucros de aproximadamente US$ 70 milhes por ano. A coleta de dados tambm desempenhou papel-chave nesse estudo. A equipe de PO realizou reunies com a cpula da Citgo para discutir exigncias em relao aos dados coletados a fim de garantir a qualidade contnua e final dos dados. Um sistema de gerenciamento de bancos de dados de ponta foi desenvolvido e instalado em um mainframe. Nos casos em que no existiam os dados necessrios, foram criadas telas no Lotus 1-2-3, para auxiliar o pessoal de operaes na introduo de dados e, a seguir, foi feito o upload de dados de PCs (Personal Computers) para o mainframe. Antes de os dados serem alimentados no modelo matemtico, um programa pr-carregador foi usado para verificar possveis erros e inconsistncias nos dados. Inicialmente, o pr-carregador gerava um numeroso log de mensagens de erro! Finalmente, o nmero de mensagens de erros e de alerta (indicando nmeros ruins ou questionveis) foi reduzido para menos de 10 para cada novo processamento. Descreveremos o estudo completo da Citgo com muito mais detalhes na Seo 3.5.

FORMULANDO UM MODELO MATEMTICO


Aps a questo do tomador de decises estar resolvida, a prxima fase reformular esse problema em uma forma que seja conveniente para anlise. O mtodo de PO convencional para fazer isso o de construir-se um modelo matemtico que represente a essncia do proKAPLAN, E. H.; O'KEEFE, E. Let the Needles Do the Talking! Evaluating the New Haven Needle Exchange. Interfaces, v. 23, n. 1, p. 7-26, jan./fev. 1993. Leia especialmente as pginas 12 a 14. ALTSCHULER, S. et ai. Pricing Analysis for Merrill Lynch Integrated Choice. Interfaces, v. 32, n. 1, p. 519, jan./feb. 2002. Leia especialmente a pgina 10. KLINGMAN, D. et al. The Challenges and Success Factors in lmplementing and Integrated Products Planning System for Citgo. Interfaces, v.16, n. 13, p. 1-19, maio-jun. 1986. Leia especialmente as pginas 11 a 14. Ver tambm KLINGMAN, D. et ai. The Successful Deployment of Management Science Throught Citgo Petroleum Corporation. Interfaces, v. 17, n. 1, p. 4-25, janAev. 1987. Leia especialmente as pginas de 13 a 15. Essa aplicao ser descrita na Seo 3.5

12

CAPTULO 2 VISO GERAL DA ABORDAGEM DE MODELAGEM DA PESQUISA ...

blema. Antes de discutirmos como formular tal modelo, exploraremos primeiramente a natureza dos modelos em geral e dos modelos matemticos em particular. Os modelos, ou representaes ideais, so partes integrantes da vida do dia-a-dia. Exemplos comuns so os modelos de avies, os retratos, os globos e assim por diante. Similarmente, os modelos desempenham importante papel nas cincias e no mundo dos negcios, conforme ilustrado pelos modelos do tomo, modelos da estrutura gentica, equaes matemticas descrevendo leis fsicas de movimentos ou reaes qumicas, grficos, organogramas e sistemas contbeis industriais. Esses modelos so inestimveis na abstrao da essncia da matria da investigao, mostrando inter-relacionamentos e facilitando a anlise. Os modelos matemticos tambm so representaes idealizadas, porm so expressos em termos de smbolos e expresses matemticas. Leis da Fsica como F = ma e E = mc2 so exemplos familiares. De forma similar, o modelo matemtico de um problema de negcios o sistema de equaes e de expresses matemticas relativas que descrevem a essncia do problema. Portanto, se houver n decises quantificveis relacionadas a serem feitas, elas sero representadas na forma de variveis de deciso (digamos xi. x 2 , ... , xn) cujos valores respectivos devem ser determinados. A medida de desempenho apropriada (por exemplo, lucro) ento expressa como uma funo matemtica dessas variveis de deciso (como, P = 3x1 + 2x2 + ... + Sxn). Essa funo chamada funo objetivo. Quaisquer restries nos valores que podem ser atribudos a essas variveis de deciso tambm so expressas de forma matemtica, tipicamente por meio de desigualdades ou equaes (por exemplo, x 1 + 3x 1x2 + 2x2 :::; 10). Essas expresses matemticas para limitaes so normalmente denominadas restries. As constantes (a saber, os coeficientes e os lados direitos) nas restries e na funo objetivo so denominadas parmetros do modelo. O modelo matemtico poderia ento nos dizer que o problema escolher os valores das variveis de deciso de forma a maximizar a funo objetivo sujeita s restries especificadas. Um modelo desse tipo, e pequenas variaes dele, tipifica os modelos usados em PO. Determinar os valores apropriados a serem atribudos aos parmetros do modelo (um valor por parmetro) , ao mesmo tempo, uma parte crtica e desafiadora do processo de construo do modelo. Em contraste com os problemas do texto, nos quais os nmeros so fornecidos, estabelecer valores de parmetros para problemas reais requer a coleta de dados relevantes. Conforme discutido na seo anterior, coletar dados precisos normalmente difcil. Portanto, o valor atribudo a um parmetro geralmente , forosamente, apenas uma estimativa grosseira. Em razo da incerteza sobre o valor real do parmetro, importante analisar como a soluo derivada do modelo eventualmente modificaria se o valor atribudo ao parmetro fosse modificado para outros valores plausveis. Esse processo conhecido como anlise de sensibilidade, conforme ser discutido na prxima seo (e em grande parte do Captulo 6). Embora nos refiramos "ao" modelo matemtico de um problema de negcios, os problemas reais no possuem apenas um nico modelo "correto". A Seo 2.4 vai descrever como o processo de teste de um modelo tipicamente induz a uma sucesso de modelos que fornecem representaes cada vez melhores do problema. possvel at mesmo que dois ou mais tipos completamente diferentes de modelos possam ser desenvolvidos para ajudar na anlise do mesmo problema. Veremos inmeros exemplos de modelos matemticos ao longo do restante deste livro. Um tipo particularmente importante a ser estudado nos captulos seguintes o modelo de programao linear, em que as funes matemticas que aparecem tanto na funo objetivo quanto nas restries so funes lineares. No Captulo 3, so construdos modelos de programao linear especficos para atender a problemas bem diversos como: (1) o mix de produtos que maximiza o lucro, (2) o planejamento de sesses de radioterapia que ataquem efetivamente um tumor e, ao mesmo tempo, minimizem os danos causados a tecidos sos vizinhos ao tumor, (3) a alocao de terras para plantaes que maximize o retomo lquido total e (4) a combinao de mtodos de combate poluio que atendam a padres de qualidade do ar a um custo mnimo. Os modelos matemticos apresentam muitas vantagens em relao a uma descrio verbal do problema. Uma delas que o modelo matemtico descreve um problema de forma muito mais concisa. Isso tende a tomar mais compreensvel a estrutura geral do problema e ajuda a revelar importantes relacionamentos causa-efeito. Desse modo, ele indica mais claramente quais dados adicionais so relevantes para a anlise. Tambm facilita o tratamento

2.2

FORMULANDO UM MODELO MATEMTICO

13

do problema como um todo, considerando todos os seus inter-relacionamentos de forma simultnea. Finalmente, um modelo matemtico forma uma ponte para o emprego de tcnicas matemticas e computadores potentes para analisar o problema. De fato, pacotes de software tanto para PCs como para mainframes podem ser encontrados em abundncia para solucionar muitos modelos matemticos. Entretanto, h dificuldades a serem evitadas ao usar-se modelos matemticos. Um modelo desse tipo , necessariamente, uma idealizao abstrata do problema, de forma que geralmente se requer aproximaes e suposies simplificadas caso queira que o modelo seja tratvel (capaz de ser resolvido). Portanto, deve-se tomar cuidado para garantir que o modelo permanea uma representao vlida do problema. O prprio critrio para julgar a validade de um modelo se o modelo prev ou no os efeitos relativos dos caminhos alternativos com preciso suficiente para permitir uma deciso sensata. Conseqentemente, no necessrio incluir detalhes sem importncia ou fatores que tm praticamente o mesmo efeito para todas as alternativas consideradas. No nem mesmo necessrio que a magnitude absoluta da medida de desempenho seja aproximadamente correta para as diversas alternativas desde que seus valores relativos (isto , as diferenas entre eles) sejam suficientemente precisos. Assim, necessrio haver alta correlao entre a previso feita pelo modelo e o que realmente acontece no mundo real. Para determinar se essa exigncia ser atendida, importante realizar uma bateria de testes considervel e conseqente modificao do modelo, o que ser tema da Seo 2.4. Embora essa fase de testes seja posicionada posteriormente no captulo, grande parte deste trabalho de validao do modelo efetivamente realizada durante a fase de construo do modelo para ajudar a orientar a construo do modelo matemtico. Ao desenvolver o modelo, um mtodo eficiente iniciar com uma verso bem simples e, progressivamente, ir avanando para modelos mais elaborados que reflitam de forma mais prxima a complexidade do problema na realidade. Esse processo de enriquecimento do modelo continua apenas enquanto o modelo permanecer tratvel. O equilbrio bsico a ser sempre considerado entre a preciso e a tratabilidade do modelo (ver a Referncia 8 para uma descrio detalhada desse processo). Uma etapa crucial na formulao de um modelo de PO a construo da funo objetivo. Ela requer o desenvolvimento de uma medida quantitativa de desempenho para cada um dos objetivos finais do tomador de decises que so identificados enquanto o problema est sendo definido. Se houver mltiplos objetivos, suas respectivas medidas sero comumente transformadas e combinadas em uma medida composta denominada medida de desempenho global. Essa medida global pode ser algo tangvel (por exemplo, lucro) correspondente a um objetivo primordial da organizao, ou ento pode ser abstrato (como, utilidade). No ltimo caso, a tarefa de desenvolver-se essa medida tende a ser complexa exigindo uma comparao cuidadosa dos objetivos e da importncia relativa destes. Aps ser definida a medida de desempenho global, obtm-se a funo objetivo expressando essa medida na forma de uma funo matemtica das variveis de deciso. De maneira alternativa, h tambm mtodos para, de maneira explcita, levar em considerao vrios objetivos simultaneamente e um deles (programao por objetivos) discutido no suplemento do Captulo 7. Um estudo de PO realizado pela Monsanto Corp.5 destinava-se a otimizar operaes de produo nas fbricas industriais qumicas da Monsanto para minimizar o custo de atender a quantidade de certo produto qumico (anidrido malico) a ser produzido em determinado ms. As decises a serem tomadas so os ajustes para cada um dos reatores catalticos usados para dar origem a esse produto, no qual o ajuste estabelece tanto a quantidade produzida quanto o custo operacional do reator. A forma do modelo matemtico resultante a seguinte: Escolher os valores das variveis de deciso Ru (i= 1,2, ... ,r;j= 1,2, ... ,s)

Exemplos.

BOYKIN, R. F. Optimizing Chemical Production at Monsanto. Inteifaces, v. 15, n. 1, p. 88-95, jan./fev. 1985. Leia especialmente as pginas 92 a 93.

14

CAPTULO 2 VISO GERAL DA ABORDAGEM DE MODELAGEM DA PESQUISA...

de forma que Minimize sujeito a

i=lj=I

L L ciJRij

I I P;fiiJ 2: T I
onde R = { lj
s
i=lj=I

R;j = 1,

para i = 1, 2, . . . , r

j=I

R;1 =O ou 1,

se o reator i estiver operando no ajuste j caso contrrio

ciJ = custo para o reator i no ajuste j PiJ = produo do reator i no ajuste j T = meta de produo r = nmero de reatores s = nmero de ajustes (inclusive a posio desligado) Afuno objetivo para este modelo I I ciJRiJ. As restries so dadas nas trs linhas abaixo da funo objetivo. Os parmetros so C;1, PiJ e T. Para a aplicao da Monsanto, esse modelo tem mais de 1.000 variveis de deciso RiJ (isto , rs > 1.000). Seu emprego gera uma economia anual de aproximadamente US$ 2 milhes. Um dos problemas mais desafiantes enfrentados pelas companhias areas como rapidamente realocar tripulaes quando ocorrem atrasos ou cancelamento de vos em razo da falta de condies de vo por fatores climticos, problemas mecnicos nas aeronaves ou falta de tripulao. Uma equipe de PO trabalhando na Continental Airlines 6 desenvolveu um modelo matemtico detalhado para realocao imediata de tripulaes em vos assim que ocorram emergncias. Pelo fato de a companhia area ter alguns milhares de tripulantes e vos dirios, o modelo necessrio precisava ser imenso para poder considerar todas as possveis associaes tripulantes versus vos. Por conseguinte, o modelo tinha milhes de variveis de deciso e vrios milhares de restries. No seu primeiro ano de uso (grande parte em 2001), o modelo foi aplicado quatro vezes para recuperar transtornos de horrio importantes (duas tempestades de neve, uma enchente e os ataques terroristas de 11 de setembro). Isso levou a uma economia de aproximadamente US$ 40 milhes. O sistema foi empregado subseqentemente tambm em outros transtornos dirios menores. A agncia governamental holandesa responsvel pelo controle de recursos hdricos e por obras pblicas, a Rijkswaterstaat, encomendou um estudo de P07 para orientar o desenvolvimento de nova poltica nacional de gesto de recursos hdricos. A nova poltica poupou centenas de milhes de dlares em gastos com investimentos e possibilitou menores prejuzos agricultura com uma economia anual de US$ 15 milhes por ano e reduzindo, ao mesmo tempo, a poluio trmica e aquela gerada por algas. Em vez de formular um nico modelo matemtico, esse estudo de PO desenvolveu um abrangente sistema integrado de 50 modelos! Alm disso, para alguns desses modelos foram desenvolvidas tanto as verses simples quanto as complexas. A verso simples era usada para se adquirir insights bsicos, incluindo anlises de compromisso. A verso complexa era ento utilizada para as rodadas finais da anlise ou sempre que fossem necessrias maior preciso ou sadas mais detalhadas. O estudo de PO como um todo envolveu diretamente mais de 125 pessoas/ano de empenho (mais de um tero com a coleta de dados), gerou vrias dezenas de programas de computador e estruturou uma quantidade de dados enorme.

YU, G. et ai. A New Era for Crew Recovery at Continental Airlines. Interfaces, v. 33, n. 1, p. 5-22, jan./fev. 2003. Leia especialmente as pginas 18 a 19. GOELLER, B. F.; Equipe PAWN. Planning the Netherlands' Water Resources. Interfaces, v. 15, n. 1, p. 3-33, jan./fev. 1985. Leia especialmente as pginas 7 a 18.

2.3

DERIVANDO SOLUES A PARTIR DO MODELO

15

DERIVANDO SOLUES A PARTIR DO MODELO


Aps a formulao de um modelo matemtico para o problema em questo, a prxima fase em um estudo de PO desenvolver um procedimento (normalmente baseado em computador) para derivar solues para o problema desse modelo. Voc pode estar pensando que esta deve ser uma parte principal do estudo, porm, na realidade, no o na maioria dos casos. Algumas vezes, de fato, uma etapa relativamente simples em que um dos algoritmospadro (procedimentos de soluo sistemticos) da PO aplicado em um computador usando-se um dos pacotes de software disponveis no mercado. Para profissionais experientes no campo da PO, encontrar uma soluo a parte divertida, ao passo que o verdadeiro trabalho comea nas fases precedentes e seguintes, incluindo-se a anlise de ps-otimalidade discutida posteriormente nesta seo. J que grande parte deste livro dedicada ao tema de como obter solues para diversos tipos importantes de modelos matemticos, pouco deve ser falado a esse respeito neste momento. Porm, precisamos discutir a natureza de tais solues. Um tema co.mum na PO a busca de uma soluo tima ou da melhor soluo possvel. De fato, muitos procedimentos foram desenvolvidos e so apresentados neste livro para descobrir essas solues para certos tipos de problema. Entretanto, precisamos reconhecer que essas solues so timas apenas em relao ao modelo que est sendo usado. Visto que o modelo necessariamente um modelo idealizado e no uma representao exata do problema real, no pode existir nenhuma garantia utpica de que a soluo tima para o modelo se comprovar como a melhor soluo possvel que poderia ter sido implementada para o problema real. Simplesmente h muitos fatores imponderveis e incertezas associadas aos problemas prticos. Porm, se o modelo for bem-formulado e testado, as solues resultantes tendem a ser uma boa aproximao para um caminho a ser adotado para o caso real. Portanto, em vez de se enganar pedindo o impossvel, voc deve testar o sucesso prtico de um estudo de PO que depender se ele fornece uma alternativa melhor do que aquela obtida por outros meios. O eminente cientista e ganhador do Prmio Nobel em economia, Herbert Simon, indica que, na prtica, satisficing muito mais prevalente que otimizao. Ao instituir o termo satisficing como uma combinao das palavras em ingls satisfactory e optimizing (satisfatrio e otimizao), Simon est descrevendo a tendncia dos gerentes de procurarem uma soluo que seja "suficientemente boa" para um problema em questo. Em vez de tentar criar uma medida de desempenho global para conciliar de forma tima conflitos entre vrios objetivos desejveis (inclusive critrios consolidados para julgar o desempenho dos diferentes segmentos da organizao), uma abordagem mais pragmtica pode ser usada. Podem ser estabelecidos objetivos para se atingir nveis mnimos de desempenho satisfatrios em diversas reas, baseados talvez em nveis de desempenho passados ou naqueles que esto sendo alcanados pela concorrncia. Se for encontrada uma soluo que se permita atingir todos esses objetivos, provvel que ela seja adotada sem mais discusses. Assim a natureza do satisficing. A distino entre otimizao e satisficing reflete a diferena entre a teoria e as realidades freqentemente enfrentadas ao tentar-se implementar tal teoria na prtica. Nas palavras de um dos lderes no campo da PO da Inglaterra, Samuel Eilon, "Otimizar a cincia do ideal; satisficing a arte do factvel." 8 Equipes de PO tentam trazer no maior grau possvel a "cincia do ideal" para o processo de tomada de deciso. Entretanto, a equipe bem-sucedida age assim pelo total reconhecimento da necessidade prioritria do tomador de deciso para obter uma diretriz de ao satisfatria em um perodo de tempo razovel. Portanto, o objetivo de um estudo de PO deveria ser o de conduzir o estudo de maneira otimizada, independentemente se isso envolve ou no descobrir uma soluo tima para o modelo. Desse modo, alm de perseguir a cincia do ideal, a equipe tambm deve considerar o custo do estudo e as desvantagens de
EILON, S. Goals and Constraints in Decision-making. Operational Research Quarterly, v. 23, p. 3-15, 1972 - palestra proferida na conferncia anual de 1971 na Canadian Operational Research Society.

16

CAPTULO 2

VISO GERAL DA ABORDAGEM DE MODELAGEM DA PESQUISA...

se postergar sua finalizao e depois tentar maximizar os ganhos lquidos resultantes do estudo. Ao reconhecerem esse conceito, as equipes de PO usam ocasionalmente apenas procedimentos heursticos (isto , procedimentos desenvolvidos intuitivamente que no garantem uma soluo tima) para encontrar uma soluo subtima. Normalmente esse o caso quando o tempo ou o custo necessrios para se encontrar uma soluo para um modelo adequado do problema atingissem dimenses muito grandes. Tm sido feitos grandes progressos no desenvolvimento eficiente e efetivo de meta-heursticas que fornecem tanto uma estrutura geral como diretrizes estratgicas para desenvolver um procedimento heurstico especfico visando atender a determinado tipo particular de problema. O emprego da metaheurstica (o tema do Captulo 13) continua crescendo. A discusso at ento implicava que determinado estudo de PO procura encontrar apenas uma soluo onde se pode ou no exigir que seja tima. De fato, esse normalmente no o caso. Uma soluo tima para o modelo original pode estar longe do ideal para o problema real, de forma que se faz necessria anlise adicional. Dessa maneira, a anlise de ps-otimalidade (anlise feita aps encontrar-se uma soluo tima) uma parte muito importante da maioria dos estudos de PO. Essa anlise tambm , algumas vezes, denominada anlise o-que-se, pois ela envolve responder a algumas perguntas sobre o que aconteceria soluo tima se fossem feitas diferentes suposies sobre condies futuras. Essas questes geralmente so levantadas pelos gerentes que tomaro as decises finais e no pela equipe de PO. O advento de softwares de planilha poderosos freqentemente tem dado s planilhas um papel central na conduo da anlise de ps-otimalidade. Um dos grandes pontos fortes das planilhas a facilidade com a qual elas podem ser usadas interativamente por qualquer um, inclusive pelos gerentes, para ver o que acontece soluo tima quando so feitas mudanas no modelo. Esse processo de experimentao com mudanas no modelo tambm pode ser muito til para se compreender o comportamento do modelo e aumentar a confiana em sua validade. Em parte, a anlise de ps-otimalidade envolve conduzir uma anlise de sensibilidade para estabelecer quais parmetros do modelo so mais crticos (os "parmetros sensveis") na determinao do problema. Uma definio comum de parmetro sensvel (usada ao longo do livro) a seguinte:
Para um modelo matemtico com valores especificados para todos seus parmetros, os parmetros sensveis do modelo so os parmetros cujos valores no podem ser modificados sem se alterar a soluo tima.

importante identificar os parmetros sensveis, pois isso determina os parmetros cujos valores tm de ser atribudos com cuidado especial para evitar a distoro do modelo. O valor atribudo a um parmetro comumente apenas uma estimativa de alguma quantidade (por exemplo, lucro unitrio) cujo valor exato ser conhecido aps a soluo ter sido implementada. Portanto, aps os parmetros sensveis serem identificados, dado ateno especial para se estimar cada um deles mais de perto ou, pelo menos, seu intervalo de valores provveis. Depois se procura uma soluo que permanea particularmente boa para todas as diversas combinaes de valores provveis dos parmetros sensveis. Se a soluo for implementada de forma contnua, qualquer alterao posterior no valor de um parmetro sensvel sinaliza imediatamente a necessidade de se alterar a soluo. Em alguns casos, certos parmetros do modelo representam decises de polticas (por exemplo, alocao de recursos). Se isso acontecer, normalmente h certa flexibilidade nos valores atribudos a esses parmetros. Talvez alguns possam ser aumentados diminuindo-se outros. A anlise de ps-otimalidade inclui a investigao de tais compensaes. Em conjunto com a fase de estudo discutida na Seo 2.4 (testando o modelo), a anlise de ps-otimalidade tambm envolve a obteno de uma seqncia de solues que compreendam uma srie de aproximaes cada vez melhores e prximas do caminho ideal a ser adotado. Assim, os aparentes pontos fracos da soluo inicial so usados para sugerir aperfeioamentos no modelo, em seus dados de entrada e, talvez, no procedimento de soluo. Obtm-se ento uma nova soluo e o ciclo repetido. Esse processo continua at as melhorias nas solues sucessivas tomarem-se muito pequenas para garantir a continuao do pro-

2.4

TESTANDO O MODELO

17

cesso. Mesmo assim, uma srie de solues alternativas (talvez solues que so timas para uma de vrias verses plausveis do modelo e seus dados de entrada) pode ser apresentada gerncia para a seleo final. Conforme sugerido na Seo 2.1, essa apresentao de solues alternativas seria normalmente feita toda vez que a escolha final entre essas alternativas devesse basear-se em consideraes que so deixadas para julgamento pela gerncia. Consideremos novamente o estudo de PO da Rijkswaterstaat sobre poltica nacional de gesto de recursos hdricos para a Holanda, introduzido no final da Seo 2.2. Esse estudo concluiu no recomendar apenas uma soluo. Em vez disso, uma srie de alternativas atrativas foram identificadas, analisadas e comparadas. A escolha final ficou para o processo poltico holands, culminando com a aprovao do Parlamento. A anlise de sensibilidade desempenhou papel fundamental nesse estudo. Por exemplo, certos parmetros dos modelos representavam padres ambientais. A anlise de sensibilidade inclua avaliar o impacto sobre problemas de gesto de recursos hdricos, caso os valores desses parmetros fossem alterados dos atuais padres ambientais para outros valores razoveis. A anlise de sensibilidade tambm foi usada para avaliar o impacto de se alterar as suposies dos modelos, por exemplo, a suposio do efeito de futuros tratados internacionais sobre o volume de poluio na Holanda. Uma variedade de cenrios (por exemplo, um ano extremamente seco e outro extremamente mido) tambm foi analisada, com a atribuio de probabilidades apropriadas.

Exemplo.

C"z.4

TESTANDO

MODELO

Desenvolver um modelo matemtico de grandes dimenses anlogo, sob certos aspectos, a desenvolver um programa de computador muito extenso. Quando a primeira verso do programa de computador estiver terminada, ele inevitavelmente conter muitos bugs. Finalmente, aps uma longa sucesso de programas mais aperfeioados, o programador (ou a equipe de programao) concluir que o programa atual agora, de forma geral, est dando resultados razoavelmente vlidos. Embora alguns pequenos bugs indubitavelmente ainda permaneam ocultos no programa (e talvez jamais venham a ser detectados), os principais bugs foram suficientemente eliminados de maneira que o programa possa ser usado de forma confivel. De modo semelhante, a primeira verso de um modelo matemtico de grandes dimenses contm muitas falhas. Alguns fatores ou inter-relacionamentos relevantes, sem dvida, no foram incorporados ao modelo e alguns parmetros indubitavelmente ainda no foram estimados corretamente. Isso inevitvel dada a dificuldade de comunicao e de compreenso de todos os aspectos e sutilezas de um problema operacional complexo, bem como em razo da dificuldade em coletar dados confiveis. Portanto, antes de se usar o modelo, ele deve ser amplamente testado para tentar identificar e corrigir o maior nmero possvel de falhas. Finalmente, aps longa sucesso de aperfeioamentos do modelo, a equipe de PO conclui que ele agora est apresentando resultados vlidos. Embora, sem dvida nenhuma, ainda restem algumas imperfeies ocultas no modelo (e que talvez jamais sejam descobertas), as principais falhas foram eliminadas para se poder dizer que o modelo agora pode ser usado de forma confivel. Esse processo de teste e aperfeioamento de um modelo para aumentar sua validade comumente referido como validao de modelos. difcil descrever como a validao de modelos feita, pois o processo depende em grande parte da natureza do problema em questo e do modelo que est sendo usado. Entretanto, fizemos alguns comentrios gerais e a seguir damos alguns exemplos (ver a Referncia 3 para uma discusso detalhada). Uma vez que a equipe de PO pode gastar meses desenvolvendo todas as partes detalhadas do modelo, fcil "se perder nos detalhes". Por isso, aps os detalhes da verso inicial do modelo serem completados, uma boa maneira de se iniciar a validao do modelo dar

18

CAPTULO 2 VISO GERAL DA ABORDAGEM DE MODELAGEM DA PESQUISA ...

uma nova olhada rpida nele como um todo em busca de erros bvios ou descuidos. O grupo que efetua essa reviso deve preferivelmente incluir pelo menos um indivduo que no tenha participado da formulao do modelo. Reexaminar a definio do problema e compar-la com o modelo pode ser til na deteco de erros. Tambm til certificar-se de que todas as expresses matemticas so dimensionalmente consistentes nas unidades utilizadas. Pode-se obter insight adicional sobre a validade do modelo variando-se os valores dos parmetros ou as variveis de deciso e checando-se se a sada gerada pelo modelo se comporta de forma plausvel. Isso especialmente revelador quando so atribudos a parmetros ou variveis valores extremos prximos de seus mximos ou mnimos. Uma abordagem mais sistemtica para testar o modelo usar um teste de retrospectiva. Quando aplicvel, esse teste envolve o emprego de dados histricos para reconstruir o passado e depois determinar qual teria sido o desempenho do modelo e da soluo resultante, caso eles tivessem sido usados. A comparao da eficincia desse desempenho hipottico com o que realmente aconteceu indicar, ento, se o emprego desse modelo tende a gerar melhoria significativa em relao prtica atual. Ela tambm poder indicar reas onde o modelo possui pontos falhos e requer modificaes. Alm disso, usando-se solues alternativas do modelo e estimando-se seus desempenhos histricos hipotticos, podem ser colhidas evidncias considerveis referentes a quo bem o modelo prev os efeitos relativos adoo de caminhos alternativos. No outro modelo, uma desvantagem do teste retrospectivo o fato de ele usar os mesmos dados que orientaram a formulao do modelo. A questo crucial se o passado verdadeiramente representativo do futuro. Se no for, ento o modelo deve ter desempenho bem diferente no futuro do que teria tido no passado. Para contornar essa desvantagem do teste retrospectivo, algumas vezes til manter temporariamente o status quo. Dessa forma sero fornecidos dados novos que no se encontravam disponveis quando o modelo foi construdo. Esses dados so usados da mesma maneira que aquelas descritas aqui para avaliar o modelo. importante documentar o processo usado para validao dos modelos. Isso ajuda a aumentar o grau de confiana no modelo para usurios subseqentes. Alm disso, se no futuro surgirem preocupaes em relao ao modelo, essa documentao ser til para diagnosticar onde podem estar os problemas.

Exemplos. Consideremos mais uma vez o estudo de PO da Rijkswaterstaat sobre poltica nacional de gesto de recursos hdricos para a Holanda, discutido no final das Sees 2.2 e 2.3. O processo de validao de modelos, nesse caso, tem trs partes principais. Em primeiro lugar, a equipe de PO verificou o comportamento geral dos modelos observando se os resultados de cada um deles se modificam de forma razovel ao se fazer mudanas nos valores dos parmetros do modelo. Posteriormente, foi feito o teste de retrospectiva. E, por ltimo, foi conduzida uma reviso tcnica dos modelos, da metodologia e dos resultados por pessoas no afiliadas ao projeto, inclusive especialistas da Holanda. Esse processo levou a uma srie de novas vises e melhorias importantes nos modelos. Tambm foram reveladas novas perspectivas durante a fase de validao de modelos do estudo de PO na Citgo Petroleum Corp., discutido no final da Seo 2.1. Nesse caso, o modelo de operaes na refinaria foi testado coletando-se as entradas e sadas reais da refinaria ao longo de vrios meses usando-se essas entradas para fixar as do modelo e, a seguir, comparando-se as sadas do modelo com aquelas reais da refinaria. O processo de calibrar e recalibrar adequadamente o modelo foi longo, porm, finalmente, levou a um emprego rotineiro do modelo para fornecer informaes de deciso crticas. Conforme j mencionado na Seo 2.1, a validao e a correo dos dados de entrada para os modelos tambm desempenharam papel importante nesse estudo. Nosso prximo exemplo trata de um estudo de PO realizado para a IBM 9 visando integrar sua rede nacional de inventrios de peas de reposio para melhorar os servios de
COHEN, M. et ai. Optimizer: IBM's Multi-Echelon lnventory Systern for Managing Service Logistics. Interfaces, v. 20, n. 1, p. 65-82, jan./fev. 1990. Leia especialmente as pginas 73 a 76. Essa aplicao ser descrita na seo 18.8.

2.5

PREPARANDO-SE PARA APLICAR O MODELO

19

suporte aos clientes da empresa. Esse estudo resultou em novo sistema de inventrio trazendo grandes benefcios aos servios prestados ao cliente, bem como reduzindo em mais de US$ 250 milhes o valor dos inventrios da IBM, alm de poupar US$ 20 milhes anuais pela melhoria na eficincia operacional. Um aspecto particularmente interessante da fase de validao de modelos desse estudo foi a maneira pela qual futuros usurios do sistema de inventrio foram incorporados ao processo de testes. Pelo fato de esses futuros usurios (gerentes da IBM em reas funcionais responsveis pela implementao do sistema de inventrio) serem cticos em relao ao sistema em desenvolvimento, foram apontados representantes para uma equipe de usurios que atuaria como conselheiros para a equipe de PO. Aps uma verso preliminar do novo sistema ter sido desenvolvida (baseada em um modelo de inventrio multiescalo ), foi realizado um teste de pr-implementao do sistema. O alto grau de feedback fornecido pela equipe de usurios levou a melhorias importantes no sistema proposto.

~'2.5

PREPARANDO-SE PARA APLICAR O MODELO


O que acontece aps a fase de teste ter sido completada e um modelo aceitvel ter sido desenvolvido? Se o modelo for para ser usado repetidamente, a prxima etapa instalar um sistema bem-documentado para aplicao do modelo conforme prescrito pela gerncia. Esse sistema incluir o modelo, o procedimento de soluo (inclusive anlise de ps-otimalidade) e os procedimentos operacionais para implementao. Depois disso, mesmo quando houver mudanas de pessoal, o sistema poder ser chamado em intervalos regulares para fornecer uma soluo numrica especfica. Esse sistema geralmente baseado em computadores. De fato, normalmente um nmero considervel de programas de computador precisa ser usado e integrado. Sistemas de informaes gerenciais e bancos de dados podem fornecer entradas atualizadas para o modelo cada vez que ele for usado; nesse caso sero necessrios programas de interfaceamento. Aps um procedimento de soluo (outro programa) ser aplicado ao modelo, programas de computador adicionais podem disparar automaticamente a implementao dos resultados. Em outros casos, um sistema interativo baseado em computador denominado sistema de apoio deciso instalado para ajudar os gerentes a utilizar dados e modelos para dar suporte (e no substituir) s suas decises, conforme necessrio. Outro programa pode gerar relatrios gerenciais (na linguagem da administrao) que interpretam a sada do modelo e suas implicaes para a aplicao. Na maioria dos estudos de PO, podem ser necessrios vrios meses (ou mais) para desenvolver, testar e instalar esse sistema computacional. Parte desse esforo envolve o desenvolvimento e a implementao de um processo para manuteno do sistema com seu uso no futuro. medida que as condies mudam ao longo do tempo, esse processo deve modificar de acordo o sistema computacional (inclusive o modelo).

Exemplos. O estudo de PO na IBM introduzido no final da Seo 2.4 um bom exemplo de um sistema computacional particularmente grande na aplicao de um modelo. O sistema desenvolvido, chamado Optimizer, fornece controle otimizado dos nveis de servio e dos inventrios de peas de reposio por meio da rede de distribuio de peas da IBM nos Estados Unidos que inclui dois armazns automatizados, dezenas de centros de distribuio em campo e de estaes de peas e milhares de localizaes externas. O inventrio de peas mantido nessa rede avaliado em bilhes de dlares. O Optimizer formado por quatro mdulos principais. O mdulo de sistema de previso contm alguns poucos programas para estimar taxas de falha de tipos individuais de peas. O mdulo de sistema de entrega de dados consiste em aproximadamente cem programas que processam mais de 15 gigabytes de dados para fornecer a entrada para o modelo. O mdulo de sistema de apoio deciso soluciona ento semanalmente o modelo para otimizar o controle dos inventrios. O quarto mdulo inclui seis programas que integram o Optimizer no Sistema de Gerenciamento de

20

CAPTULO 2 VISO GERAL DA ABORDAGEM DE MODELAGEM DA PESQUISA. ..

Inventrio de Peas (PIMS) da IBM. O PIMS um sofisticado sistema de controle e informaes formado por milhares de linhas de cdigo. Nosso prximo exemplo tambm envolve um grande sistema computacional para aplicao de um modelo visando controlar as operaes de uma rede nacional. Esse sistema, denominado Sysnet, foi desenvolvido como resultado de um estudo de PO para a Yellow Freight System, Inc. 10 A empresa realiza anualmente mais de 15 milhes de embarques via transporte rodovirio por meio de uma rede de 630 terminais espalhados por todo o territrio norte-americano. O Sysnet usado para otimizar tanto as rotas de transporte como o desenho da rede. Pelo fato de o Sysnet exigir grande volume de informaes sobre fluxos e previses de frete, custos de transporte e manuseio e assim por diante, a maior parte do estudo de PO envolveu a integrao do Sysnet no sistema de informaes gerenciais corporativo. Essa integrao permitiu a atualizao peridica de toda a entrada para o modelo. A implementao do Sysnet resultou em uma economia anual de aproximadamente US$ 17 ,3 milhes, assim como em melhores servios aos clientes. O final da Seo 2.2 introduziu um estudo de caso de PO feito pela Continental Airlines que levou formulao de imenso modelo matemtico para realocar tripulaes nos vos em situaes de problemas com os horrios programados. Em virtude de o modelo precisar ser aplicado logo aps a ocorrncia de algum problema nos horrios de vo, foi desenvolvido um sistema de apoio deciso conhecido como CrewSolver para incorporar tanto o modelo quanto enorme data store em memria representando as operaes atuais. O CrewSolver permite que um coordenador de tripulao introduza dados sobre o problema com o horrio de vo e depois utilize uma interface grfica com o usurio para requerer uma soluo imediata a fim de realocar tripulantes nos vos envolvidos. Nosso primeiro exemplo ilustra um sistema de apoio deciso. Um sistema desse tipo foi desenvolvido para a Texaco 11 para ajudar a planejar e a programar suas operaes de mistura de combustvel em suas diversas refinarias. Chamado Omega, o Mtodo de Otimizao para Estimativa de Atributos da Gasolina um sistema interativo baseado em um modelo de otimizao no-linear que implementado tanto em computadores pessoais quanto em computadores maiores. Os dados de entrada podem ser introduzidos tanto manualmente como por interfaces com bancos de dados das refinarias. O usurio possui uma flexibilidade considervel para escolher uma funo objetivo e restries que se encaixem na situao atual, bem como em fazer uma srie de perguntas o-que-se (isto , perguntas sobre o que aconteceria se as condies supostas mudassem). O Omega mantido de forma centralizada pelo Departamento de Tecnologia da Informao da Texaco, o que permite a constante atualizao para refletir novas regulamentaes governamentais, outras mudanas comerciais e mudanas nas operaes das refinarias. implementao do Omega creditada uma economia anual de mais de US$ 30 milhes, assim como melhor planejamento, controle de qualidade e informaes de marketing.

2.6

IMPLEMENTAO
Aps um sistema ter sido desenvolvido para aplicao de um modelo, a ltima fase de um estudo de PO implementar esse sistema conforme prescrito pela gerncia. Essa uma fase crtica, pois aqui, e somente aqui, que os frutos do estudo so colhidos. Portanto, importante para a equipe de PO participar do lanamento dessa fase tanto para garantir que as solues do modelo se traduzam precisamente em um procedimento operacional como para retificar quaisquer falhas nas solues que venham a ser descobertas.

10

11

BRAKLOW, J. W. et ai. Interactive Optimization Improves Service and Performance forYellow Freight System. lnteifaces, v. 22, n. 1, p. 147-172, jan./fev. 1992. Leia especialmente a pgina 163. DeWITI, C. W. et al. OMEGA: An Improved Gasoline Blending System for Texaco. lnteifaces, v. 19, n. 1, p. 85-101, jan./fev. 1989. Leia especialmente as pginas 93 a 95.

2.6

IMPLEMENTAO

21

O sucesso da fase de implementao depende muito do suporte da alta gerncia como o da gerncia operacional. muito mais provvel que a equipe de PO ganhe esse apoio se ela tiver mantido a gerncia bem informada e tiver encorajado a orientao ativa da gerncia ao longo do curso do estudo. A boa comunicao ajuda a garantir que o estudo realize aquilo que a gerncia deseja e tambm d aos gerentes maior senso de propriedade do estudo, o que encoraja seu apoio implementao. A fase de implementao envolve vrias etapas. Primeiro, a equipe de PO d gerncia operacional uma cuidadosa explicao sobre o novo sistema a ser adotado e como ele se relaciona com as realidades operacionais. A seguir, essas duas partes compartilham a responsabilidade pelo desenvolvimento de procedimentos necessrios para colocar esse sistema em operao. A gerncia operacional v ento que um doutrinamento detalhado dado para o pessoal envolvido e o novo rumo a ser trilhado tem incio. Se for bem-sucedido, o novo sistema poder ser usado por anos. Tendo isso em mente, a equipe de PO monitora a experincia inicial com as medidas adotadas e procura identificar quaisquer modificaes que possam ser feitas no futuro. Ao longo de todo o perodo no qual o novo sistema est sendo usado, importante continuar a obter feedback de como o sistema vem-se comportando e se as suposies do modelo continuam a ser satisfeitas. Quando ocorrerem desvios significativos das suposies iniciais, o modelo deve ser revisto para determinar se necessrio fazer alguma modificao no sistema. A anlise de ps-otimalidade feita anteriormente (conforme descrito na Seo 2.3) pode ser til na orientao desse processo de reviso. Aps o encerramento de um estudo, conveniente que a equipe de PO documente sua metodologia de forma clara e suficientemente precisa para que o trabalho possa ser reproduzvel. A replicabilidade deve fazer parte do cdigo de tica profissional do especialista em pesquisa operacional. Essa condio particularmente crucial quando esto sendo estudadas questes de poltica pblica controversas.

Exemplos. O ltimo ponto sobre a documentao de um estudo de PO ilustrado por meio do caso Rijkswaterstaat a respeito da poltica nacional de gesto de recursos hdricos para a Holanda, discutido no final das Sees 2.2, 2.3 e 2.4. A gerncia queria documentao completa e detalhada, tanto para fins de suporte nova poltica como tambm para uso em treinamento de novos analistas ou na realizao de novos estudos. Exigindo vrios anos para ser completada, essa documentao chegou a 4 mil pginas em espao simples e 21 volumes! Nosso prximo exemplo refere-se ao estudo de PO da IBM discutido no final das Sees 2.4 e 2.5. Foi necessrio planejamento cuidadoso para implementar o complexo sistema Optimizer para controle da rede nacional de inventrios de peas de reposio da IBM. Trs fatores provaram ser particularmente importantes para se obter uma implementao bem-sucedida. Conforme discutido na Seo 2.4, o primeiro deles foi a incluso de uma equipe de usurios (formada por gerentes operacionais) como conselheiros para a equipe de PO ao longo de todo o estudo. No momento da fase de implementao esses gerentes operacionais tinham uma slida sensao de propriedade e, portanto, tinham-se tomado ardentes defensores da instalao do sistema Optimizer em suas reas de responsabilidade. Um segundo fator de sucesso foi um abrangente teste de aceitao pelos usurios em que eles tinham de identificar possveis reas problemticas que precisavam ser retificadas antes da implementao completa. O terceiro fator-chave foi que o novo sistema foi gradualmente introduzido, com cuidadosos testes em cada fase, de forma que bugs principais pudessem ser eliminados antes de o sistema "entrar no ar" nacionalmente . O prximo exemplo ilustra como uma fase de implementao bem-sucedida poderia envolver milhares de empregados antes de empreender os novos procedimentos. A Samsung Electronics Corp. 12 iniciou um importante estudo de PO em maro de 1996 para desenvolver novas metodologias e programar aplicaes que iriam tomar mais eficiente todo o pro12

LEACHMAN, R. C. et al. SLIM: Short Cycle Time and Lo\v Inventory in Manufacturing at Samsung Electronics. lntelfaces v. 32, n. 1, p. 61-77, jan./fev. 2002. Leia especialmente as pginas 71 a 72.

22

CAPTULO 2

VISO GERAL DA ABORDAGEM DE MODELAGEM DA PESQUISA ...

cesso de manufatura de semicondutores e reduzir inventrios de trabalhos em andamento. O estudo prosseguiu por mais de cinco anos, terminando em junho de 2001, em grande parte em razo do grande esforo exigido pela fase de implementao. A equipe de PO precisava ganhar o apoio de inmeros gerentes, pessoal da manufatura e engenharia, treinando-os nos princpios e na lgica dos novos procedimentos de fabricao. Em ltima instncia, mais de 3 mil pessoas freqentaram sesses de treinamento. Os novos procedimentos foram introduzidos paulatinamente de forma a conquistar a confiana de todos. Entretanto, esse paciente processo de implementao rendeu enormes dividendos. Com esses novos procedimentos a empresa passou da posio de fabricante menos eficiente do setor de semicondutores para a de mais eficiente. Isso resultou em receitas crescentes superiores a US$ 1 bilho na poca da implementao do estudo de PO. Nosso exemplo final refere-se ao sistema Sysnet da Yellow Freight para escolha de rotas de embarque e transporte por intermdio de uma rede nacional, conforme descrito no final da Seo 2.5. Nesse caso, havia quatro elementos-chave para o processo de implementao. O primeiro deles era "vender a idia" para a alta gerncia. Isso foi feito com sucesso pela validao da preciso do modelo de custos e depois promovendo sesses interativas para a alta gerncia que demonstravam a eficincia do sistema. O segundo elemento era o desenvolvimento de uma estratgia de implementao para gradualmente introduzir o novo sistema, identificando e eliminando, ao mesmo tempo, suas falhas. O terceiro envolvia trabalhar mais de perto com os gerentes operacionais para instalar o sistema de forma apropriada, fornecer as ferramentas de suporte necessrias, treinar o pessoal que usaria o sistema e convenc-los de sua utilidade. O elemento-chave final era a proviso de incentivos e o apoio da gerncia para a efetiva implementao do sistema.

CONCLUSES
Embora o restante do livro se concentre basicamente na construo e resoluo de modelos matemticos, neste captulo tentamos enfatizar que isto constitui apenas uma parte de todo o processo envolvido na conduo de um estudo de PO tpico. As demais fases aqui descritas tambm so muito importantes para que o estudo seja bem-sucedido. Tente manter em vista o papel do modelo e o procedimento de soluo durante todo o processo medida que voc avana para captulos subseqentes. A seguir, aps adquirir melhor entendimento dos modelos matemticos, sugerimos que voc planeje para retomar a este captulo, para uma reviso, de modo a aguar ainda mais essa viso. A pesquisa operacional est intimamente ligada ao emprego de computadores. No incio, estes geralmente eram mainframes, porm, agora, computadores pessoais e estaes de trabalho esto sendo aplicados amplamente para solucionar modelos de PO. Ao concluir esta discusso das principais fases de um estudo de PO, deve-se enfatizar que h muitas excees s "regras" prescritas neste captulo. Pela sua prpria natureza, a PO requer considervel dose de engenhosidade e de inovao, de forma que impossvel colocar no papel qualquer procedimento-padro que sempre deva ser seguido pelas equipes de PO. Em vez disso, a descrio precedente pode ser vista como um modelo que represente grosseiramente como so conduzidos estudos de PO bem-sucedidos.

REFERNCIAS SELECIONADAS
1. BRADLEY P. S. et al. Mathematical Programming for Data Mining: Formulations and Challenges. INFORMS Joumal on Computing, v. 11, n. 3, p. 217-238, vero de 1999. 2. FORTUIN, L. et al. (eds.). OR at wORk: Practical Experiences of Operational Research. Bristol, PA: Taylor & Francis, 1996.

PROBLEMAS

23

3. GASS, S. 1. Decision-Aiding Models: Validation, Assessment, and Related lssues for Policy Analysis. Operations Research, v. 31, p. 603-631, 1983. 4. ___. Model World: Danger, Beware the User as Modeler. Interfaces, v. 20, n. 3, p. 60-64, maio/jun. 1990. 5. HALL, R. W. What's So Scientific about MS/OR? Interfaces, v. 15, n. 2, p. 40-45, mar./abr. 1985. 6. HOWARD, R. A. The Ethical OR/MS Professional. Interfaces, v. 31, n. 6, p. 69-82, nov./dez. 2001. 7. MISER, H. J. The Easy Chair: Observation and Experirnentation. Interfaces, v. 19, n. 5, p. 2330, set./out. 1989. 8. MORRIS, W. T. On the Art of Modeling. Management Science, v. 13, p. B707-717, 1967. 9. MURPHY, F. H. The Occasional Observer: Some Simple Precepts for Project Success. Interfaces, v. 28, n. 5, p. 25-28, set./out. 1998. 10. PIDD, M. Just Modeling Through: A Rough Guide to Modeling. Interfaces, v. 29, n. 2, p. 118132, mar./abr. 1999. 11. SIMON, H. A: Prediction and Prescription in Systems Modeling. Operations Research, v. 38, p. 7-14, 1990. 12. WILLIAMS, H. P. Model Building in Mathematical Programming. 4. ed. Nova York: Wtley, 1999.

PROBLEMAS
2.2-2. Leia a Referncia 5. (a) Identifique exemplos do autor de um modelo em cincias naturais e de um modelo em PO. (b) Descreva o ponto de vista do autor sobre como preceitos bsicos de emprego de modelos para fazer pesquisa em cincias naturais tambm pode ser usado para orientar pesquisa operacional (PO). 2.3-1. Consulte a Referncia 5. (a) Descreva o ponto de vista do autor se o nico objetivo no uso de um modelo deve ser ou no encontrar sua soluo tima. (b) Sintetize o ponto de vista do autor sobre os papis complementares da modelagem, avaliar informaes do modelo e ento aplicar o discernimento do tomador de decises ao decidir sobre o rumo a ser trilhado. 2.4-1. Consulte as pginas 18 a 20 do artigo com nota de rodap na Seo 2.2 que descreve um estudo de PO feito para a Rijkswaterstaar da Holanda. Descreva uma lio importante que se teve a partir da validao do modelo nesse estudo. 2.4-2. Leia a Referncia 7. Sintetize o ponto de vista do autor sobre os papis da observao e experimentao no processo de validao de modelos. 2.4-3. Leia as pginas 603 a 617 da Referncia 3. (a) O que o autor diz sobre o fato de um modelo ser ou no completamente validado? (b) Sintetize as distines feitas entre validade do modelo, validade dos dados, validade matemtica/lgica, validade preditiva, validade operacional e validade dinmica. (c) Descreva o papel da anlise de sensibilidade no teste da validade operacional de um modelo. (d) O que o autor diz a respeito do fato de existir ou no uma metodologia de validao apropriada para todos os modelos? (e) Cite a pgina no artigo que enumera os passos bsicos da validao.

.!.l-1. Leia o artigo com nota de rodap na Seo 2.1 que descre"= mn estudo de PO feito para o Departamento de Polcia de So
~-isco.

Sintetize as condies que levaram implementao desse estudo.


as seis diretrizes para o sistema de programao de vos a ser desenvolvido.

".' ' Defina parte do problema que est sendo tratado identificando

.: Descreva como os dados necessrios foram coletados.


j
1

Enumere os diversos benefcios tangveis e intangveis resultantes do estudo.

!.1-2. Leia o artigo com nota de rodap na Seo 2.1 que descrele um estudo de PO feito para o Departamento de Sade de New ar.en. Connecticut. .1. Faa um resumo das condies que levaram implementao desse estudo. ~. Descreva o sistema desenvolvido para rastrear e testar cada agulha e seringa de modo a coletar os dados necessrios . .: Sintetize os resultados iniciais desse sistema de rastreamento e teste. .:i Descreva o impacto e o impacto potencial desse estudo sobre polticas pblicas.
1

U-1. Leia o artigo com nota de rodap na Seo 2.2 que descre~e o estudo de PO realizado na Rijkswaterstaat da Holanda. (Con.=cre-se principalmente nas pginas 3 a 20 e 30 a 32.) i Elabore um resumo das condies que levaram implantao do estudo. ':- Sintetize o objetivo de cada um dos cinco modelos matemticos descritos nas pginas 10 a 18. Sintetize as "medidas de impacto" (medidas de desempenho) para comparar as polticas que so descritas nas pginas 6 a 7 desse artigo. .i Enumere os vrios benefcios tangveis e intangveis resultantes desse estudo.

24

CAPTULO 2

VISO GERAL DA ABORDAGEM DE MODELAGEM DA

2.5-1. Leia o artigo com nota de rodap na Seo 2.5 que descreve um estudo de PO realizado para a Texaco. (a) Sintetize as condies que levaram ao empreendimento desse estudo. (b) Descreva brevemente a interface com o usurio do sistema de apoio deciso Omega que foi desenvolvido como resultado desse estudo. (c) O Omega constantemente atualizado e expandido para refletir mudanas no ambiente operacional. Descreva brevemente os vrios tipos de mudana envolvidos. (d) Sintetize como o Omega utilizado. (e) Enumere os vrios benefcios tangveis e intangveis resultantes do estudo. 2.5-2. Consulte o artigo com nota de rodap na Seo 2.5 que descreve um estudo de PO realizado para a Yellow Freight System, Inc. (a) Fazendo referncia s pginas 147 a 149 desse artigo, sintetize as condies que levaram adoo desse estudo. (b) Referindo-se pgina 150, descreva brevemente o sistema computacional Sysnet que foi desenvolvido como resultado desse estudo. Resuma tambm as aplicaes do Sysnet. (c) Referindo-se s pginas 162 a 163, descreva por que os aspectos interativos do Sysnet provaram ser importantes. (d) Referindo-se pgina 163, resuma as sadas geradas pelo Sysnet. (e) Fazendo referncia s pginas 168 a 172, sintetize os vrios benefcios resultantes do emprego do Sysnet. 2.6-1. Consulte as pginas 163 a 167 do artigo com nota de rodap na Seo 2.5 que descreve um estudo de PO feito para a Yellow Freight System, Inc. e o sistema computacional resultante Sysnet.

(a) Descreva brevemente como a equipe de PO obteve o apoio da alta gerncia para implementar o Sysnet. (b) Descreva brevemente a estratgia de implementao que foi criada. (c) Descreva brevemente a implementao em campo. (d) Descreva brevemente como foram usados incentivos e apoio gerenciais na implementao do Sysnet.
2.6-2. Leia o artigo com nota de rodap na Seo 2.4 que descreve um estudo de PO feito para a IBM e o sistema computacional resultante Optimizer. (a) Sintetize as condies que levaram implementao desse estudo. (b) Enumere os fatores complicadores que os membros da equipe de PO enfrentaram ao iniciar o desenvolvimento de um modelo e de um algoritmo de soluo. (c) Descreva brevemente o teste de pr-implementao do Optimizer. (d) Descreva brevemente o teste de implementao em campo. (e) Descreva brevemente a implementao nacional. (f) Enumere os diversos benefcios tangveis e intangveis resultantes do estudo. 2.7.1. Leia a Referncia 4. O autor descreve 13 fases detalhadas de qualquer estudo de PO que desenvolva e aplique um modelo baseado em computador, ao passo que o presente captulo descreve seis fases mais abrangentes. Para cada uma dessas fases abrangentes, enumere as fases detalhadas que se enquadram parcial ou basicamente dentro dos limites da fase mais abrangente.

Introduo Programao Linear

desenvolvimento da programao linear tem sido classificado entre os mais importantes avanos cientficos dos meados do sculo XX e temos de concordar com essa afirmao. Seu impacto desde 1950 tem sido extraordinrio. Hoje em dia uma ferramenta-padro que poupou muitos milhares ou milhes de dlares para muitas empresas ou at mesmo negcios de tamanho moderado em diversos pases industrializados ao redor do mundo; e seu emprego em outros setores da sociedade se espalhou rapidamente. A maior parte de toda a computao cientfica realizada em computadores dedicada ao uso da programao linear. Grande nmero de textos foi escrito tratando da programao linear e artigos publicados descrevendo aplicaes importantes agora chegam casa das centenas. Qual a natureza dessa admirvel ferramenta e a que tipos de problemas ela se destina? Voc obter melhor compreenso sobre esse tpico medida que for trabalhando com os exemplos subseqentes. Entretanto, um resumo verbal poder ajud-lo a ter uma perspectiva. Em suma, o tipo mais comum de informao envolve o problema genrico de alocar da melhor forma possvel (isto , tima) recursos limitados para atividades que competem entre si. Mais precisamente, esse problema envolve selecionar o nvel de certas atividades que competem por recursos escassos que so necessrios para realizar essas atividades. A escolha do nvel de atividades determina, ento, quanto de cada recurso ser consumido por atividade. A variedade de situaes para as quais essa descrio se aplica diversa, mudando, de fato, da alocao de recursos de produo a produtos, da alocao de recursos nacionais a necessidades domsticas, da seleo de portflio seleo de padres de embarque, do planejamento agrcola a sesses de radioterapia e assim por diante. Porm, o ingrediente mais comum em cada uma dessas situaes a necessidade de alocar recursos para atividades escolhendo-se o nvel dessas atividades. A programao linear usa um modelo matemtico para descrever o problema em questo. O adjetivo linear significa que todas as funes matemticas nesse modelo so necessariamente funes lineares. A palavra programao, nesse caso, no se refere programao de computador; ela , essencialmente, um sinnimo para planejamento. Portanto, a programao linear envolve o planejamento de atividades para obter um resultado timo, isto , um resultado que atinja o melhor objetivo especificado (de acordo com o modelo matemtico) entre todas as alternativas viveis. Embora a alocao de recursos para atividades seja o tipo de aplicao mais comum, a programao linear tambm tem inmeras outras aplicaes importantes. De fato, qualquer problema cujo modelo matemtico se encaixe no formato bem genrico para o modelo de programao linear um problema de programao linear. (Por essa razo, os problemas de programao linear e seus modelos normalmente so conhecidos de forma intercambivel como simplesmente programas lineares.)

25

26

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Alm disso, um procedimento de soluo extraordinariamente eficiente, chamado mtodo simplex, se encontra disponvel para solucionar at mesmo problemas de programao linear de enormes dimenses. Essas so algumas das razes para o tremendo impacto da programao linear em dcadas recentes. Em virtude de sua grande importncia, dedicamos este e os prximos seis captulos especificamente programao linear. Aps este captulo introduzir as caractersticas gerais da programao linear, os Captulos 4 e 5 se concentraro no mtodo simplex. O Captulo 6 discutir a anlise adicional dos problemas de programao linear aps o mtodo simplex ter sido aplicado inicialmente. O Captulo 7 apresenta vrias extenses amplamente usadas do mtodo simplex e introduz um algoritmo do ponto interno que algumas vezes pode ser usado para solucionar problemas de programao linear ainda maiores que aqueles com os quais o mtodo simplex consegue lidar. Os Captulos 8 e 9 consideram alguns tipos especiais de problemas de programao linear cuja importncia garante o estudo individual. Adiante, voc tambm poder ver aplicaes de programao linear destinadas a outras reas da pesquisa operacional (PO) em vrios captulos posteriores. Comearemos o presente captulo desenvolvendo um exemplo de prottipo miniatura de um problema de programao linear. Esse exemplo suficientemente pequeno para ser resolvido graficamente de uma forma bem direta. As Sees 3.1 e 3.2 apresentam o mpdelo de programao linear genrico e suas hipteses bsicas. As Sees 3.4 e 3.5 fornecem exemplos adicionais de aplicaes de programao linear, incluindo trs estudos de caso. A Seo 3.6 descreve como os modelos de programao linear de tamanho modesto podem ser exibidos e resolvidos convenientemente em uma planilha. Porm, alguns problemas de programao linear encontrados na prtica requerem modelos verdadeiramente macios. A Seo 3.7 ilustra como um modelo macio pode surgir e ainda como ele pode ser formulado com a ajuda de uma linguagem de modelagem especial como o MPI (descrita nesta seo) ou o Lingo (descrito no apndice do presente captulo).

,EXEMPLO DE PROTTIPO
A WYNDOR GLASS CO. fabrica produtos de vidro de alta qualidade, entre os quais janelas e portas de vidro. A empresa possui trs fbricas industriais. As esquadrias de alumnio e ferragens so feitas na Fbrica 1, as esquadrias de madeira so produzidas na Fbrica 2 e, finalmente, a Fbrica 3 produz o vidro e monta os produtos. Em conseqncia da queda nos ganhos, a direo decidiu modernizar a linha de produtos da empresa. Produtos no rentveis esto sendo descontinuados, liberando capacidade produtiva para o lanamento de dois novos produtos com grande potencial de vendas: Produto 1: Uma porta de vidro de 2,5 m com esquadria de alumnio Produto 2: Uma janela duplamente adornada com esquadrias de madeira de 1,20 X 1,80 m O produto 1 requer parte da capacidade produtiva das Fbricas 1 e 3, mas nenhuma da Fbrica 2. O produto 2 precisa apenas das Fbricas 2 e 3. A diviso de marketing concluiu que a empresa poderia vender tanto quanto fosse possvel produzir desses produtos por essas fbricas. Entretanto, pelo fato de ambos os produtos poderem estar competindo pela mesma capacidade produtiva na Fbrica 3, no est claro qual mix dos dois produtos seria o mais lucrativo. Portanto, foi constituda uma equipe de PO para estudar essa questo. A equipe de PO comeou promovendo discusses com a alta direo para identificar os objetivos da diretoria para tal estudo. Essas discusses levaram seguinte definio do problema: Determinar quais devem ser as taxas de produo para ambos os produtos de modo a maximizar o lucro total, sujeito s restries impostas pelas capacidades produtivas limitadas disponveis nas trs fbricas. (Cada produto ser fabricado em lotes de 20, de forma que a taxa de produo definida como o nmero de lotes produzidos por semana.) permitida qualquer combinao de taxas de produo que satisfaa essas restries, inclusive no produzir nada de um produto e o mximo possvel do outro.

3.1

EXEMPLO DE PROTTIPO

27

A equipe de PO tambm identificou os dados que precisavam ser coletados:

1. Nmero de horas de tempo de produo disponvel por semana em cada fbrica para
esses novos produtos. (A maior parte do tempo nessas fbricas j est comprometida com os produtos atuais, de modo que a capacidade disponvel para os novos produtos bastante limitada.) 2. Nmero de horas de tempo de produo usado em cada fbrica para cada lote produzido de cada novo produto. 3. Lucro por lote produzido de cada novo produto. Foi escolhido o lucro por lote produzido como uma medida apropriada aps a equipe de PO ter concludo que o incremento de lucro de cada lote adicional produzido ser aproximadamente constante independentemente do nmero total de lotes produzidos. Pelo fato de nenhum custo adicional incorrer para o incio da produo e a comercializao de tais produtos, o lucro total de cada um deles aproximadamente esse lucro por lote vezes o nmero de lotes produzidos. Obter estimativas razoveis dessas quantidades exigia conseguir o apoio de pessoalchave em vrias unidades da empresa. O pessoal da diviso de manufatura forneceu os dados da primeira categoria citada anteriormente. Desenvolver estimativas para a segunda categoria de dados exigia alguma anlise por parte dos engenheiros de produo envolvidos no desenvolvimento de processos de produo para os novos produtos. Analisando-se os ~dos de custos obtidos desses mesmos engenheiros e da diviso de marketing, juntamente com uma deciso de preos da diviso de marketing, o departmento de contabilidade desenvolveu estimativas para a terceira categoria. A Tabela 3.1 sintetiza os dados reunidos. . A equipe de PO reconheceu imediatamente que se tratava de um problema de programao linear do clssico tipo mix de produtos e ento essa equipe empreendeu a formulao do modelo matemtico correspondente.

Formulao como Problema de Programao Linear


Para formular o modelo matemtico (programao linear) para esse problema, faamos

x 1 =nmero de lotes do produto 1 produzido semanalmente x 2 = nmero de lotes do produto 2 produzido semanalmente Z = lucro total por semana (em milhares de dlares) obtido pela produo desses dois produtos
Portanto, x 1 e x 2 so as variveis de deciso para o modelo. Usando-se a linha inferior da Tabela 3.1, obtemos
Z

= 3x1 + 5x2

O objetivo escolher os valores de x 1 e x 2 de forma a maximizar Z = 3x 1 + 5xz, sujeito s restries impostas em seus valores por limitaes de capacidade de produo disponvel nas trs fbricas. A Tabela 3 .1 indica que cada lote de produto 1 fabricado por semana usa uma hora de tempo de produo por semana na Fbrica 1, ao passo que esto disponveis somente quatro horas semanais. Essa restrio expressa matematicamente pela desigualdade
Ili TABELA

3.1 Dados para o problema da Wyndor Glass Co.


Tempo de Produ~o por Lote (em horas) Produto Tempo de Produ~o Disponvel por Semana (em horas)
4 12 18

Fbrica
1 2

1
1

o
3 U$ 3.000

o
2 2

3
Lucro por lote

U$ 5.000

28

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

x 1 ::5 4. Similarmente, a Fbrica 2 impe a restrio 2x2 ::5 12. O nmero de horas de produo usado semanalmente na Fbrica 3 escolhendo-se x 1 e x 2 como as taxas de produo dos novos produtos seria 3x1 + 2x2 . Portanto, a declarao matemtica da restrio da Fbrica 3 3x1 + 2x2 ::5 18. Finalmente, j que as taxas de produo no podem ser negativas, necessrio restringir as variveis de deciso para serem no-negativas: x 1 ::::: O e x 2 ::::: O. Em suma, na linguagem matemtica da programao linear, o problema escolher os valores de x 1 e x 2 de forma a Maximizar sujeito s restries
X1

::5
2x2 ::5

3x1

+ 2x2
O,

::5

4 12 18

e
X1 2::

(Observe como o layout dos coeficientes de x 1 e x 2 nesse modelo de programao linear essencialmente duplica as informaes sintetizadas na Tabela 3 .1.)

Soluo Grfica
Esse pequeno problema possui apenas duas variveis de deciso e, portanto, somente duas dimenses, de forma que um procedimento grfico pode ser usado para resolv-lo. Esse~pro cedimento envolve construir um grfico bidimensional tendo x 1 e x 2 como eixos. O Primeiro passo identificar os valores de (xi. x 2 ) que so permitidos pelas restries. Isso ~Jeito desenhando-se cada reta que limita o intervalo de valores permissveis para uma restrio. Para comear, observe que as restries de no-negatividade x 1 ::::: O e x2 ::::: O requerem que (xi. x 2 ) estejam no lado positivo dos eixos (inclusive, na realidade, sobre ambos os eixos), isto , no primeiro quadrante. A seguir, observe que a restrio x 1 ::5 4 significa que (xi. x 2 ) no pode estar direita da retax 1 = 4. Esses resultados so mostrados na Figura 3.1, em que a rea sombreada contm os nicos valores de (xi. x 2 ) que ainda so permitidos. De modo semelhante, a restrio 2x2 ::5 12 (ou, equivalentemente, x 2 ::5 6) implica que a reta 2x2 = 12 deve ser adicionada ao contorno da regio de solues viveis. A restrio final, 3x1 + 2x2 ::5 18, requer traar os pontos (xi. x 2 ) de maneira que 3x 1 + 2x2 = 18 (outra reta) complete o contorno. (Observe que pontos como 3x1 + 2x2 :s: 18 so aqueles que esto abaixo ou sobre a reta 3x 1 + 2x2 = 18, de forma que essa a reta limitante acima da qual os pontos no satisfazem a desigualdade.) A regio resultante de valores viveis de (xi. x 2 ), chamada regio de solues viveis, mostrada na Figura 3.2. (O demonstrativo denominado Mtodo Grfico em nosso Tutorial OR fornece um exemplo mais detalhado de construo de uma regio de solues viveis.) O passo final escolher o ponto nessa regio de solues viveis que maximiza o valor de Z = 3x 1 + 5x2 Para descobrir como realizar esse passo de forma eficiente, comece por tentativa e erro. Tente, por exemplo, Z = 10 = 3x1 + 5x2 para ver se h na regio de solues viveis quaisquer valores de (xi, x 2 ) que levem uma funo Z a um valor 10. Desenhandose a reta 3x 1 + 5x2 = 10 (ver a Figura 3.3), podemos observar que h muitos pontos sobre essa reta que se encontram dentro da regio. Tendo ganhado alguma viso tentando esse valor escolhido arbitrariamente de Z = 10, voc deve tentar seguir um valor arbitrrio de Z maior, digamos, Z = 20 = 3x1 + 5x2 . Novamente, a Figura 3.3 revela que um segmento da reta 3x1 + 5x2 = 20 se encontra dentro da regio, de forma que o valor mximo permissvel de Z tem de ser pelo menos 20. Agora, observe na Figura 3.3 que as duas retas que acabaram de ser construdas so paralelas. No se trata de uma coincidncia,visto que qualquer reta construda desse modo tem a forma Z = 3x 1 + 5x2 para o valor escolhido de Z, implicando 5x2 = - 3x 1 + Z ou, equivalentemente, a:

3.1

EXEMPLO DE PROTTIPO

29

x2

= -5x1+5Z

Essa ltima equao, chamada forma de interseo da inclinao da funo objetivo, demonstra que a inclinao da reta -~(uma vez que a cada incremento unitrio em x 1 corresponde a um incremento de -~em x 2 ), ao passo que a interseo da reta com o eixo x 2 ~Z U que x 2 = quando x 1 = O). O fato de a inclinao ser fixada em -~ significa que todas as retas construdas dessa maneira sero paralelas.

kz

FIGURA 3.1

X2

.\ rea sombreada indica alores de (x1 , x2 ) permitidos


:>ar
X1 2:

0,

X2 2: , X1 :S

4.

5 4

3
2

o
X2

x,

10
3x1

+ 2x2 =

18
XI=

8 4

2x2

= 12

sombreada indica o o de valores viveis x2 ), a chamada regio - : ues viveis.


=.ci

Repetindo, comparando-se as retas 10 = 3x 1 + 5x2 e 20 = 3x 1 + 5x2 da Figura 3.3, notamos que a reta que d um valor maior de Z (Z = 20) se encontra bem acima e distante da origem quando comparada com a outra reta (Z = 10). Esse fato tambm est implcito pela forma de interseo da inclinao da funo objetivo que indica que a interseo com o eixo x 1 Z) aumenta quando o valor escolhido para Z se eleva.

30

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

z = 20 =

3.x1

+ 5.x2

2
FIGURA 3.3

O valor de (x1 , xi) que maximiza 3x1 + 5x2 (2, 6).

(
o
2 4 6

10

Essas observaes fazem que nosso procedimento de tentativa e erro para construo de retas na Figura 3.3 envolva mais do que desenhar uma farmlia de retas paralelas contendo pelo menos um ponto na regio de solues viveis e selecionar a reta que corresponde ao maior valor de Z. A Figura 3.3 mostra que essa reta passa pelo ponto (2, 6) indicando que a soluo tima x 1 = 2 e x 2 = 6. A equao dessa reta 3x1 + 5x2 = 3(2) + 5(6) = 36 = Z, indicando que o valor timo de Z Z = 36. O ponto (2, 6) se encontra na interseo das retas 2x2 = 12 e 3x1 + 2x2 = 18, conforme mostrado na Figura 3.2, de forma que esse ponto pode ser calculado algebricamente como a soluo simultnea dessas duas equaes. Aps termos visto o procedimento de tentativa e erro para descobrir o ponto timo (2, 6), podemos agora aperfeioar esse mtodo para outros problemas. Em vez de desenhar vrias retas paralelas, suficiente formar uma nica reta com uma rgua para estabelecer a inclinao. Depois, desloque a rgua com inclinao fixa atravs da regio de solues viveis na direo em que Z cresce. (Quando o objetivo for o de minimizar Z movimente a rgua na direo em que Z decresce.) Pare de deslocar a rgua at o ltimo instante em que ela ainda passa por um ponto dentro dessa regio. Esse ponto a desejada soluo tima. Este procedimento normalmente conhecido como mtodo grfico para programao linear. Pode ser usado para solucionar qualquer problema de programao linear com duas variveis de deciso. Com considervel dificuldade, possvel estender o mtodo para trs variveis de deciso, mas no mais que trs. (O prximo captulo se concentrar no mtodo simplex para solucionar problemas maiores.)

Concluses
A equipe de PO usou esse mtodo para descobrir que a soluo tima x 1 = 2, x 2 = 6 com Z = 36. Essa soluo indica que a Wyndor Glass Co. deveria fabricar os produtos 1 e 2 a uma taxa de, respectivamente, dois lotes por semana e seis lotes por semana, com um lucro total resultante de US$ 36 mil por semana. Nenhum outro mix de produtos seria to lucrativo - de acordo com o modelo. Entretanto, enfatizamos no Captulo 2 que estudos de PO bem conduzidos no encontram simplesmente uma soluo nica para o modelo inicial formulado e depois pra por a. Todas as seis fases descritas no Captulo 2 so importantes, incluindo testes completos do modelo (ver a Seo 2.4) e para uma anlise posterior (ver Seo 2.3). Reconhecendo plenamente essas realidades prticas, a equipe de PO agora est pronta para avaliar a validade do modelo de forma mais crtica (continuao na Seo 3.3) e a rea-

3.2

O MODELO DE PROGRAMAO LINEAR

31

lizar anlise de sensibilidade sobre o efeito das estimativas da Tabela 3.1 sendo diferentes em razo da estimativa imprecisa, mudanas das circunstncias etc. (continua na Seo 6. 7).

Prosseguindo no Processo de Aprendizado com nosso Courseware de PO


Este o primeiro de vrios pontos do texto no qual voc poder achar til usar nosso Courseware de PO contido no CD-ROM que acompanha o livro. Uma parte fundamental desse courseware um programa chamado Tutor PO. Esse programa inclui um exemplo demonstrativo completo do mtodo grfico introduzido nessa seo. Para voc tambm ter outro exemplo de formulao de um modelo, a presente demonstrao comea introduzindo um problema e formulando um modelo de programao linear para o problema antes de aplicar a etapa de mtodo grfico para solucionar o modelo. Como acontece com muitos outros exemplos demonstrativos que acompanham outras sees deste livro, o presente demonstrativo computadorizado reala conceitos que so difceis de ser transmitidos via pgina impressa. Voc poder consultar ao Apndice 1 em termos de doeu-~ mentao do software. Caso queira ver mais exemplos, v seo Exemplos Trabalhados do CD-ROM. Essa seo inclui alguns exemplos com solues completas para praticamente todos os captulos na forma de um complemento aos exemplos do livro e do Tutor PO. Os exemplos para o presente captulo comeam com um problema relativamente direto envolvendo a formulao de um pequeno modelo de programao linear para depois aplicar o mtodo grfico. Os exemplos subseqentes vo se tornando, progressivamente, mais desafiantes. Outra parte fundamental do Courseware de PO um programa denominado Tutorial IOR. Esse programa dispe de vrios procedimentos interativos para executar interativamente diversos mtodos de soluo apresentados no livro, permitindo-lhe focalizar no aprendizado e na execuo eficiente do mtodo deixando para o computador o processo de clculo. Est incluso um procedimento interativo para aplicao do mtodo grfico para programao linear. Assim que voc estiver familiarizado com ele, um segundo procedimento lhe permitir aplicar rapidamente o mtodo grfico para execuo da anlise de sensibilidade sobre o efeito de revisar os dados do problema. Voc poder, ento, imprimir seu trabalho e resultados do exerccio. Como os demais procedimentos do Tutorial IOR, esses procedimentos foram desenvolvidos especificamente para lhe proporcionar um aprendizado eficiente, agradvel e esclarecedor enquanto voc se exercita. Ao formular um modelo de programao linear com mais de duas variveis de deciso (implicando a impossibilidade de uso do mtodo grfico), o mtodo simplex descrito no Captulo 4 lhe permitir ainda encontrar uma soluo tima de forma imediata. Proceder dessa maneira til no processo de validao de modelos j que encontrar uma soluo tima absurda sinaliza que voc cometeu um engano na formulao do modelo. Mencionamos na Seo 1.4 que nosso Courseware de PO oferece-lhe uma introduo para trs pacotes de software particularmente populares - o Excel Solver, o Lingo/Lindo e o MPUCPLEX - para solucionar uma srie de modelos de PO. Todos esses pacotes incluem o mtodo simplex para soluo de modelos de programao linear em um formato de planilha Descries de outros pacotes so fornecidas na Seo 3.7 (MPL e Lingo), no Apndice 3. l (Lingo ), Seo 4.8 (CPLEX e Lindo) e, finalmente, no Apndice 4.1 (Lindo). Alm disso, nosso Courseware de PO contm um arquivo para cada um desses trs pacotes mostrando como ele pode ser usado para resolver cada um dos exemplos do presente captulo.

O MODELO DE PROGRAMAO LINEAR


O problema da Wyndor Glass Co. destina-se a ilustrar um tpico problema de programao linear (verso miniatura). Entretanto, a programao linear bastante verstil para ser completamente caracterizada em um nico exemplo. Nesta seo, discutiremos as caractersticas gerais dos problemas de programao linear, inclusive as diversas formas legtimas do modelo matemtico para programao linear.

32

CAPTULO 3

INTRODUO PRO~RAMAO LINEAR

Iniciamos com alguma terminologia e notao bsica. A primeira coluna da Tabela 3.2 sintetiza os componentes do problema da Wyndor Glass Co. A segunda introduz termos mais genricos para esses mesmos componentes que atendero a muitos problemas de programao linear. Os termos-chave so recursos e atividades, em quem representa o nmero de atividades que esto sendo consideradas. Alguns recursos tpicos so dinheiro e tipos particulares de mquinas, equipamentos, veculos e pessoal. Entre os exemplos de atividades podemos citar investir em determinados projetos, anunciar em uma mdia em particular e transportar mercadorias de certa origem para um determinado destino. Em qualquer aplicao de programao linear, todas as atividades podem ser de um tipo genrico (tal como qualquer um desses trs exemplos) e depois as atividades individuais seriam alternativas particulares dentro dessa categoria genrica. Conforme descrito na introduo deste captulo, o tipo mais comum de aplicao de programao linear envolve alocar recursos a atividades. A quantidade disponvel de cada recurso limitada e, portanto, deve ser feita uma alocao cuidadosa desses recursos para as atividades. Determinar essa alocao envolve escolher os nveis das atividades que atingem o melhor valor possvel da medida de desempenho global. Certos smbolos so comumente usados para representar os diversos componentes df um modelo de programao linear. Esses smbolos so apresentados, a seguir, juntameI1fl:e com suas interpretaes para o problema geral de alocar recursos a atividades. Z = valor da medida de desempenho global
x1 = nvel de atividade j (paraj = 1, 2, ... , n)

c1 = incremento em Z que resultaria de cada incremento unitrio no nvel de atividade j

b; = quantidade do recurso i que se encontra disponvel para alocao em atividades (parai= 1, 2, ... , m)
aiJ = quantidade do recurso i consumido por unidade de atividade j

O modelo formula o problema em termos de tomar decises em relao aos nveis de atividade, de forma que xi. xi. ... , Xn so denominadas variveis de deciso. Conforme sintetizado na Tabela 3.3, os valores de c1, bi e aiJ (parai= 1, 2, ... , m ej = 1, 2, ... , n) so as constantes de entrada para o modelo. c1, b; e aiJ tambm so conhecidos como parmetros do modelo. Observe a correspondncia entre as Tabelas 3.3 e 3.1.
Uma Forma-padro de Modelo

Continuando no problema da Wyndor Glass Co., agora temos condies de formular o modelo matemtico para esse problema genrico de alocao de recursos para atividades. Em particular, esse modelo visa selecionar os valores para xi. xi, ... , Xm de forma a Maximizar

TABELA 3.2 Terminologia comum para programao linear


Exemplo-Prottipo Problema Genrico

Capacidades de produo de trs fbricas industriais Fabricao de produtos Dois produtos Taxa de produo do produto j, xi Lucro Z

Recursos m recursos Atividades n atividades Nvel de atividade j, xi Medida de desempenho global Z

3.2 O MODELO DE PROGRAMAO LINEAR

33

sujeita s restries

a 11 x 1 a21X1

+ a 12x2 + + a22X2 +

+ inXn :::::; b1 + a2,,Xn :::::; b2

e X1
2::

O,

x2

2::

O,

... , Xn

2::

O.

Chamamos isso nossa forma-padro, 1 para o problema de programao linear. Qualquer situao cuja formulao matemtica se encaixe nesse modelo um problema de programao linear. Observe que o modelo para a Wyndor Glass Co. atende nossa forma-padro/ com m = 3 e n = 2. . A terminologia comum para o modelo de programao linear pode agora ser sintetizada. A funo que est sendo maximizada, c 1x 1 + c2x 2 + ... + c,,xm chamada funo objetivo. As limitaes so normalmente denominadas restries. As primeiras m restries (aquelas com umaftmo de todas as variveis a; 1 x 1 + a;2x 2 + + a;nXn do lado esquerdo) so algumas vezes ditas restries funcionais (ou restries estruturais). De forma similar xj 2:: O, as restries so conhecidas como restries de no-negatividade (ou condies no-negativas).

Outras Formas
Agora, temos de nos apressar para acrescentar que, na verdade, o modelo precedente no se encaixa na forma natural de alguns problemas de programao linear. As demais formas legtimas so as seguintes:
1. Minimizar em vez de maximizar a funo objetivo:

Minimizar
2. Algumas restries funcionais com uma desigualdade do tipo maior do que ou igual a:

para alguns valores de i.


3. Algumas restries funcionais na forma de equao:

para alguns valores de i.


TABELA 3.3 Dados necessrios para um modelo de programao linear envolvendo a alocao de recursos para atividades Uso de Recursos por Unidade de Atividade Atividade Recurso
1 1 2
012

...
...

n
01n 02n

Quantidade de Recursos Disponveis


b, bi

o,,
021

022

...
...

...
m
Contribuio a Z por unidade de atividade
Om1

...
Om2 C2

. ..
Omn Cn bm

...
...

e,

Estamos usando nossa forma-padro e no a forma-padro, pois alguns textos adotam outras formas.

34

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

4. Eliminar as restries no-negativas para algumas das variveis de deciso:


xi irrestrita em sinal

para alguns valores de j

Qualquer problema que mescle algumas dessas formas com as partes remanescentes do modelo anterior ainda ser um problema de programao linear. Nossa interpretao das palavras alocar recursos limitados para atividades que competem entre si talvez no se aplique mais muito bem, se que realmente ainda se possa aplicar; porm, independentemente da interpretao ou do contexto, tudo o que exigido que a declarao matemtica do problema se ajuste s formas permitidas.

Terminologia para Solues de Modelos


Voc deve estar acostumado a ver o termo soluo com o significado de resposta final para um problema, porm, a conveno em programao linear (e suas extenses) bem diferente. Aqui, qualquer especificao de valores para as variveis de deciso (x 1, xi, ... , xn) chamada soluo, independentemente de ela ser desejvel ou at mesmo ser un1 rn opo admissvel. Diferentes tipos de solues so ento identificados usando-se ulm adjetivo apropriado. Uma soluo vivel aquela para a qual todas as restries so satisfeitas. Uma soluo invivel aquela para a qual pelo menos uma das restries violada. No exemplo, os pontos (2, 3) e (4, 1) na Figura 3.2 so solues viveis ao passo que os pontos (-1, 3) e (4, 4) so solues inviveis. A regio de solues viveis o conjunto de todas as solues viveis. A regio de solues viveis no exemplo toda a rea preenchida na Figura 3.2. possvel que no haja nenhuma soluo vivel. Isso poderia ter acontecido no exemplo caso os novos produtos tivessem exigido um lucro lquido de pelo menos US$ 50.000 por semana para justificar a descontinuao de parte da linha de produtos atual. A restrio correspondente, 3x1 + 5x2 ;:::: 50, iria eliminar toda a regio de solues viveis, de forma que nenhum mix de novos produtos seria superior ao status quo. Esse caso ilustrado na Figura 3.4. Dado que existem solues viveis, o objetivo da programao linear encontrar a melhor soluo vivel conforme medida pelo valor da funo objetivo no modelo.

FIGURA 3.4

O problema da Wyndor Glass Co. no teria nenhuma soluo vivel caso a restrio 3x1 + 5x2 ~ 50 fosse acrescentada ao problema.

10

Maximizar Z Sujeito a

3x 1 + 5xz, x1 s 3x 1 + 3x1 + 5x2

2x2 s 12 2x2 s 18
~

50

x 1 ~O,

x2

~O

4
X1 ~Q

2
X1
x2 ~o

S4

10

X1

3.2 O MODELO DE PROGRAMAO LINEAR

35

Uma soluo tima uma soluo vivel que tem o valor mais favorvel da funo objetivo. O valor mais favorvel o maior valor se a funo objetivo tiver de ser maximizada, ao passo que ser o menor valor caso ela deva ser minimizada. A maior parte dos problemas ter apenas uma soluo tima. Entretanto, possvel ter mais de uma. Isso ocorreria no exemplo caso o lucro por lote fabricado do produto 2 fosse alterado para US$ 2.000. Isso altera a funo objetivo para Z = 3x1 + 2x2 de forma que todos os pontos no segmento de reta conectando os pontos (2, 6) e (4, 3) seriam timos. Esse caso ilustrado na Figura 3.5. Como acontece nesse caso, qualquer problema tendo solues timas mltiplas ter um nmero infinito delas, cada uma com o mesmo valor timo da funo objetivo. Outra possibilidade que um problema no tenha nenhuma soluo tima. Isso acontece apenas se (l) ela no tiver nenhuma soluo vivel ou (2) as restries no impedirem que se aumente indefinidamente o valor da funo objetivo (Z) na direo favorvel (positiva ou negativa). O ltimo caso conhecido como tendo um Z ilimitado ou umafano objetivo ilimitada. Para fins ilustrativos, esse caso aconteceria se as duas ltimas restries fimcionais fossem eliminadas por engano no exemplo, conforme ilustrado na Figura 3.6. Introduzimos, a seguir, um tipo especial de soluo vivel que desempenha papel fimdamental quando o mtodo simplex procura uma soluo tima. Uma soluo FPE (vivel em ponto extremo) a aquela que est em um vrtice da regio de solues viveis. A Figura 3.7 destaca as cinco solues FPE para o exemplo. As Sees 4.1 e 5.1 se aprofundaro nas diversas propriedades teis das solues FPE para problemas de qualquer dimenso, inclusive a relao a seguir com as solues timas.
Relao entre solues timas e solues FPE: Considere qualquer problema de programao linear com solues viveis e uma regio de solues viveis limitada. O problema certamente ter solues FPE e pelo menos uma soluo tima. Alm disso, a melhor soluo FPE tem de ser uma soluo tima. Portanto, se um problema tiver exatamente uma soluo tima, ela obrigatoriamente uma soluo FPE. Se o problema tiver mltiplas solues timas, pelo menos duas delas so, obrigatoriamente, solues FPE.

n!ll.~j~

3.5 ema da Wyndor -o. teria mltiplas -- timas caso a - objetivo fosse para Z = 3x1 + 2x2

Maximizar Z = 3x1 + 2xz, sujeito a x1 $ 4 2x2 $ }2 3x 1 + 2x2 $ J8 x 1 2::0, x2 2::0 e

Todos os pontos nesse segmento de reta mais escuro so timos, cada um deles com Z = 18.

10

36

CAPTULO 3

INTRODUO PROGRAMAO LINEAR (4, oo), Z = oo

Xz
10

(4, 10),

l l

z = 62
Maximizar Z = 3x 1 + 5x2 , sujeito a X[ :'.'S4 e X[::::: O, Xz 2".

(4, 8), z = 52

(4, 6),

z = 42

FIGURA 3.6 O problema da Wyndor Glass Co. no teria nenhuma soluo tima se a nica restrio funcional fosse x1 :'.'S 4, pois x2 poderia ento ser aumentado indefinidamente na regio de solues viveis sem jamais atingir o valor mximo de Z = 3x1 + 5x2

(4, 4), z = 32

(4, 2),

z = 22

o
Xz
(O, 6)

10

X[

(4, 3)

FIGURA 3.7 Os cinco pontos so as solues FPE para o problema da Wyndor Glass Co.

(O, O)

(4, )

X[

O exemplo tem exatamente uma soluo tima, (x 1, x2 ) = (2, 6), que ma soluo FPE. Imagine como o mtodo grfico leva soluo tima nica sendo uma soluo FPE. Quando o exemplo modificado para conduzir a solues timas mltiplas, conforme ilustrado na Figura 3.5, duas dessas solues timas - (2, 6) e (4, 3) - so solues FPE.

3.3

HIPTESES DA PROGRAMAO LINEAR


Todas as hipteses de programao linear esto, na realidade, implcitas na formulao do modelo apresentada na Seo 3.2. Em particular, do ponto de vista matemtico, as hipteses simplesmente so que o modelo deve ter uma funo objetivo linear sujeita a restries lineares. Entretanto, do ponto de vista de modelagem, essas propriedades matemticas de um modelo de programao linear implicam que certas hipteses tm de ser satisfeitas em relao s atividades e aos dados do problema que est sendo modelado, incluindo hipteses sobre o

3.3

HIPTESES DA PROGRAMAO LINEAR

37

TABELA 3.4 Exemplos que satisfazem ou violam a proporcionalidade


Lucro do Produto 1 (US$ 1.000 por semana) A Proporcionalidade Violada
X1

A Proporcionalidade Satisfeita

Caso 1

Caso 2

Caso 3

o
1 2

o
3 6 9
12

o
2 5 8 11

o
3
7 12 18

o
3 5 6 6

3
4

efeito de se variar os nveis de atividades. bom destac-las para que voc possa avaliar mais facilmente quo bem a programao linear se aplica a qualquer problema dado. Alm disso, ainda precisamos ver por que a equipe de PO da Wyndor Glass Co. concluiu que uma formulao de programao linear forneceria uma representao satisfatria do problema.

Proporcionalidade
Proporcionalidade uma hiptese que se refere tanto funo objetivo quanto s restries funcionais, conforme resumido a seguir.

Hiptese da proporcionalidade: A contribuio de cada atividade ao valor da funo objetivo Z proporcional ao nvel de atividade xj, conforme representado pelo termo cjxj na funo objetivo. De modo semelhante, a contribuio de cada atividade do lado esquerdo de cada restrio funcional proporcional ao nvel de atividade xj, como representado pelo termo aijxj na restrio. Conseqentemente, essa hiptese descarta qualquer expoente que no seja 1 para qualquer varivel em qualquer termo de qualquer funo (seja a funo objetivo ou a funo que se encontra do lado esquerdo na declarao de uma restrio funcional) em um modelo de programao linear.2
Para ilustrar essa hiptese, consideremos o primeiro termo (3xi) da funo objetivo (Z = 3x 1 + 5x2 ) para o problema da Wyndor Glass Co. Esse termo representa o lucro semanal gerado (em milhares de dlares) fabricando-se o produto 1 em uma taxa de x 1 lotes por semana. A coluna proporcionalidade satisfeita na Tabela 3.4 apresenta o caso que foi assumido na Seo 3.1, a saber, que esse lucro de fato proporcional a x 1 de forma que 3x1 seja o termo apropriado para a funo objetivo. Ao contrrio, as trs colunas seguintes mostram casos hipotticos diferentes em que a hiptese da proporcionalidade seria violada. Consulte a coluna do Caso 1 da Tabela 3.4. Esse caso aconteceria se houvesse custos iniciais associados a iniciar-se a fabricao do produto 1. Por exemplo, podem existir custos envolvidos com a implantao das instalaes industriais. Tambm podem existir custos associados a organizar a distribuio do novo produto. Pelo fato de haver custos que ocorrem apenas uma nica vez, eles precisariam ser amortizados semanalmente para serem comensurveis em relao Z (lucro em milhares de dlares por semana). Suponha que essa amortizao fosse feita e que o custo inicial fosse 3x 1 Isto significaria que a contribuio do produto 1 para Z seria 3x 1 - 1 para x 1 > O, ao passo que a contribuio seria 3x1 = O quando x 1 = O (nenhum custo inicial). Essa funo lucro, 3 que representada pela curva completa da Figura 3.8, certamente no proporcional a x 1
Quando a funo incluir quaisquer termos de produto de vetorial, a proporcionalidade deve ser interpretada de forma a significar que alteraes no valor da funo so proporcionais s alteraes em cada uma das variveis (x 1), dados quaisquer valores fixos para todas as demais variveis. Portanto, um termo produto vetorial satisfaz o princpio da proporcionalidade desde que cada varivel do termo tenha um expoente igual a L. (Entretanto, qualquer termo de produto vetorial viola a hiptese da aditividade, discutida a seguir.) Se a contribuio do produto 1 para Z fosse 3x 1 - 1 para todo x 1 ~O, inclusive x 1 = O, ento a constante fixa, -1, poderia ser eliminada da funo objetivo sem alterar a soluo tima e a proporcionalidade seria restaurada. Entretanto, esse "fixa" no funciona no presente caso, pois a constante -1 no se aplica quando x 1 = O.

38

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Contribuio dex 1 aZ 12
/ / / /

/
/ /

9
Satisfaz hiptese da / proporcionalidade//
/

/ /

6
/ /

\ y /
/

FICURA 3.8 A curva completa viola a hiptese da proporcionalidade em razo do custo inicial que acarretado quando x1 Custo inicial aumentado a partir de O. Os valores na curva tracejada so obtidos da coluna Caso 1 -3 da Tabela 3.4.

3
/

/
/ /

Viola a hiptese da proporcionalidade

/
/

Contribuio dex 1 aZ 18

15
/ /

/ / / /

12

Viola a hiptese da proporcionalidade

/
/ /

FICURA 3.9 A curva completa viola a hiptese da proporcionalidade, pois sua inclinao (o lucro marginal do produto 1) prossegue crescendo medida que x1 aumentado. Os valores na curva tracejada so obtidos da coluna Caso 2 da Tabela 3.4.

9
6
/

/ / "'- Satisfaz hiptese da // proporcionalidade /


V

""

/ / /

primeira vista, pode parecer que o Caso 2 da Tabela 3.4 seja bem similar ao Caso 1. Porm, o Caso 2 surge, na verdade, de forma diferente. No h mais o custo inicial e o lucro semanal da primeira unidade do produto 1 de fato 3, conforme suposto inicialmente. Entretanto, agora h um lucro marginal crescente; isto , a inclinao da funo lucro para o produto 1 (ver a curva completa na Figura 3.9) mantm-se crescente medida que x 1 aumenta. Essa violao de proporcionalidade poderia ocorrer em razo da economia de escala que pode, algumas vezes, ser atingida com altos nveis de produo, por exemplo, pelo do emprego de maquinrio mais eficiente com grande capacidade de produo, de sries de produo maiores, descontos por quantidade para grandes compras de matria-prima e o efeito da curva de aprendizado na qual os trabalhadores se tomam mais eficientes medida que ganham experincia com determinado modo de produo. Conforme o custo incremental diminui, o lucro incremental aumenta (supondo-se receitas marginais constantes).

3.3

HIPTESES DA PROGRAMAO LINEAR

39

Consultando novamente a Tabela 3.4, o inverso do Caso 2 o Caso 3, em que h um lucro marginal decrescente. Nesse caso, a inclinao dafuno lucro para o produto 1 (dada pela curva completa da Figura 3.10) mantm-se decrescente medida que x 1 aumenta. Esta violao da proporcionalidade poderia ocorrer em decorrncia de os custos de marketing terem de subir mais do que proporcionalmente para conseguir aumentar o nvel de vendas. Por exemplo, poderia ser possvel vender o produto l a uma taxa de l unidade por semana (x 1 = l) sem nenhuma propaganda, ao passo que atingir vendas que sustentem uma taxa de produo de x 1 = 2 poderia requerer um nvel moderado de propaganda, x 1 = 3 poderia necessitar de uma campanha de propaganda intensa e x 1 = 4 poderia exigir at mesmo a reduo do preo do produto. Todos os trs casos so exemplos hipotticos de como a hiptese da proporcionalidade poderia ser violada. Qual a verdadeira situao? O lucro real de se fabricar o produto 1 (ou qualquer outro produto) derivado das receitas com vendas menos os diversos custos diretos e indiretos. Inevitavelmente, alguns componentes desses custos no so estritamente proporcionais taxa de produo, talvez em virtude de uma das razes expostas anteriormente. Entretanto, a questo real se, aps os componentes de lucro terem sido acumulados, a proporcionalidade ou no uma aproximao razovel para fins prticos de modelagem. Para o problema da Wyndor Glass Co., a equipe de PO analisou tanto a funo objetivo quanto as restries funcionais. A concluso foi que se poderia de fato assumir a proporcionalidade sem distores srias. Para outros problemas, o que aconteceria quando a hiptese da proporcionalidade no se provar suficiente nem mesmo como uma aproximao razovel? Na maioria dos casos, isso significa que devemos usar, em seu lugar, programao no-linear (apresentada no Captulo 12). Entretanto, efetivamente apontamos na Seo 12.8 que certo tipo importante de no-proporcionalidade ainda pode ser tratado por programao linear reformulando-se o problema de forma apropriada. Alm disso, se a hiptese for violada somente por causa de custos iniciais, h uma extenso da programao linear (programao inteira mista) que pode ser usada, conforme discutido na Seo 11.3 (o problema do encargo fixo).

Aditividade
Embora a hiptese da proporcionalidade descarte qualquer expoente que no seja 1, ela no probe termos de produto vetorial (termos envolvendo o produto de duas ou mais variveis). A hiptese da aditividade descarta efetivamente essa ltima possibilidade, conforme sintetizado a seguir.

Hiptese da aditividade: Toda funo em um modelo de programao linear


(seja a funo objetivo, seja a funo que se encontra do lado esquerdo da declarao de uma restrio funcional) a soma das contribuies individuais das respectivas atividades.

FIGURA 3.10

A curva completa viola a hiptese da proporcionalidade, pois sua inclinao (o lucro marginal do produto 1) prossegue decrescendo medida que x1 vai aumentando. Os valores na curva pontilhada so obtidos da coluna Caso 3 da Tabela 3.4.

Contribuio dex1 aZ 12 Satisfaz / // hiptese da proporcionalidade//


~/
/
/

6
/

/
/

Viola a hiptese da proporcionalidade


2 3

40

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Para tomar essa definio mais concreta e esclarecer por que precisamos nos preocupar com essa hiptese, vejamos alguns outros exemplos. A Tabela 3.5 mostra alguns possveis casos para a funo objetivo para o problema da Wyndor Glass Co. Em cada caso, as contribuies individuais dos produtos so simplesmente aquelas supostas na Seo 3.1, a saber: 3x 1 para o produto 1 e 5x2 para o produto 2. A diferena reside na ltima linha que d o valor da funo para Z quando os dois produtos so fabricados conjuntamente. A coluna aditividade satisfeita mostra o caso em que esse valor de funo obtido simplesmente somando-se as duas primeiras linhas (3 + 5 = 8), de forma que Z = 3x 1 + 5xz, conforme suposto previamente. Ao contrrio, as duas colunas seguintes mostram casos hipotticos nos quais a hiptese da aditividade seria violada (mas no a hiptese da proporcionalidade). Consultando a coluna Caso 1 da Tabela 3.5, esse caso corresponde a uma funo objetivo Z = 3x1 + 5x2 + x 1 xz, de forma que Z = 3 + 5 + 1 = 9 para (xi. x 2 ) = (1, 1) e, conseqentemente, violando a hiptese da aditividade de que Z = 3 + 5. (A hiptese da proporcionalidade ainda satisfeita j que o valor de uma varivel fixado, o incremento em Z da outra varivel proporcional ao valor dessa varivel.) Esse caso surgiria se os dois produtos fossem complementares e de modo que aumentassem o lucro. Suponha, por exemplo, que uma grande campanha publicitria fosse exigida para comercializar os dois produtos novos, mas que essa mesma campanha pudesse efetivamente promover ambos os produtos caso a deciso fosse produzir ambos. Pelo fato de um custo significativo ser poupado para o segundo produto, o lucro conjunto de ambos um pouco maior que a soma de seus lucros individuais quando cada produto fabricado sozinho. O Caso 2 da Tabela 3.5 tambm viola a hiptese da aditividade, por causa do termo extra na funo objetivo correspondente, Z = 3x 1 + 5x2 - x 1x 2 , de forma que Z = 3 + 5 - 1 = 7 para (xi. x 2 ) = (1, 1). Ao contrrio do primeiro, o Caso 2 surgiria se os dois produtos competissem entre si de forma que diminusse seu lucro conjunto. Suponha, por exemplo, que os dois produtos precisem usar o mesmo maquinrio e equipamento. Se ambos os produtos fossem fabricados isoladamente, esse maquinrio e equipamento seriam dedicados a esse nico uso. Porm, fabricar ambos os produtos exigiria ficar trocando de processos de produo toda hora, com tempo e custos significativos envolvidos em parar temporariamente a produo de um produto e preparar para fabricar o outro. Por causa desse custo extra significativo, sua produo conjunta algo inferior do que a soma de seus lucros isolados quando cada produto fabricado separadamente. Os mesmos tipos de interao entre atividades podem afetar a aditividade das funes restritivas. Considere, por exemplo, a terceira restrio funcional do problema Wyndor Glass Co.: 3x 1 + 2x2 ::5 18. (Essa a nica restrio envolvendo ambos os produtos.) Essa restrio se refere capacidade de produo da Fbrica 3, na qual 18 horas do tempo de produo semanais se encontram disponveis para os dois novos produtos e a funo que se encontra no lado esquerdo (3x 1 + 2x2 ) representa o nmero de horas de produo por semana que seriam usados por esses produtos. A coluna aditividade satisfeita da Tabela 3.6 expe esse caso assim como ele , independentemente das duas colunas seguintes mostrarem casos nos quais a funo possui um termo de produto vetorial extra que viola a aditividade. Para todas essas trs colunas, as contribuies individuais dos produtos para emprego da capacidade produtiva da Fbrica 3 so exatamente aquelas anteriormente supostas, a saber: 3x 1 para o produto 1 e 2x2 para o produto 2, ou 3(2) = 6 para x 1 = 2 e
, TABELA 3.5 Exemplos que satisfazem ou violam a aditividade para a funo objetivo

Valor de Z A Adltlvldade Violada


(X1 1 X2)

A Adltlvldade Satisfeita
3
5

Caso 1
3
5

Caso 2
3
5
7

(1, O) (O, 1)

(1, 1)

3.3

HIPTESES DA PROGRAMAO LINEAR

41

TABELA 3.6 Exemplos que satisfazem ou violam a aditividade para uma restrio

funcional
Quantidade de Recurso Utlllzado A Adltlvldade Violada
(X1, X2)

A Adltlvldade Satisfeita
6 6
12

Caso 3
6 6
15

Caso 4
6 6
10,8

(2, O) (O, 3) (2, 3)

2(3) = 6 para x 2 = 3. Como acontecia na Tabela 3.5, a diferena reside na ltima linha, que agora fornece o valor total da funo para o tempo de produo usado quando os dois produtos so fabricados em conjunto. Para o Caso 3 (ver Tabela 3.6), o tempo de produo utilizado pelos dois produtos dado pela funo 3x1 + 2x2 + 0,5x 1x2 , de modo que o valor total da funo seja 6 + 6 + 3 = 15 quando (xi, x2 ) = (2, 3), o que viola a hiptese da aditividade de que o valor simplesmente 6 + 6 = 12. Esse caso pode surgir exatamente da mesma forma descrita para o Caso 2 da Tabela 3.5, isto , tempo extra desperdiado em ficar trocando de processos de produo entre os dois produtos. O termo de produto vetorial extra (0,5x 1 x2 ) daria o tempo de produo desperdiado desse modo. Observe que, nesse caso, o tempo desperdiado mudando de produto leva a um termo de produto vetorial positivo, em que a funo total est medindo o tempo de produo utilizado enquanto ele leva a um termo de produto vetorial negativo no Caso 2, pois a funo total l mede o lucro. Para o Caso 4 da Tabela 3.6, a funo para tempo de produo usada 3x 1 + 2x2 0,1.xix2 , de modo que o valor da funo para (xi, x 2 ) = (2, 3) 6 +6 - 1,2 = 10,8. Esse caso poderia surgir do seguinte modo. Como no Caso 3, suponhamos que os dois produtos exijam o mesmo tipo de maquinrio e equipamento. Porm, dessa vez, vamos supor que o tempo exigido para troca de um produto para outro fosse relativamente pequeno. Pelo fato de cada produto passar por uma seqncia de operaes de produo, as instalaes para produo individual normalmente dedicadas quele produto incorreria em perodos ociosos ocasionais. Durante esses perodos ociosos, essas instalaes podem ser utilizadas pelo outro produto. Conseqentemente, o tempo total de produo usado (inclusive perodos ociosos), quando os dois produtos so fabricados em conjunto, seria menor que a soma dos tempos de produo empregados em cada um dos produtos isoladamente. Aps analisar os possveis tipos de interao entre os dois produtos ilustrados por esses quatro casos, a equipe de PO chegou concluso que nenhum deles desempenhava papel fundamental no problema atual da Wyndor Glass Co. Portanto, a hiptese da aditividade foi adotada como uma aproximao razovel. Para outros tipos de problemas, se a aditividade no for uma suposio razovel, de forma que algumas ou todas as funes matemticas do modelo precisem ser no-lineares (em razo dos termos de produto vetorial), voc certamente estar entrando no domnio da programao no-linear (Captulo 12).

Divisibilidade
Nossa prxima hiptese refere-se aos valores permitidos para as variveis de deciso. Hiptese da divisibilidade: As variveis de deciso em um modelo de programao linear podem assumir quaisquer valores, inclusive valores no-inteiros, que satisfaam as restries funcionais e de no-negatividade. Logo, essas variveis no so restritas apenas a valores inteiros. J que cada varivel de deciso representa o nvel de alguma atividade, supoe-se que as atividades possam ser desenvolvidas em nveis fracionrios.

42

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Para o problema da Wyndor Glass Co., as variveis de deciso representam taxas de produo (o nmero de lotes de um produto fabricado semanalmente). Visto que essas taxas de produo podem assumir quaJuer valor fracionrio dentro da regio de solues viveis, a hiptese de divisibilidade permanece vlida. Em certas situaes, a hiptese da divisibilidade no satisfeita, pois algumas ou todas as variveis de deciso tm de se restringir a valores inteiros. Modelos matemticos com essa restrio so chamados modelos de programao inteira, os quais sero discutidos no Captulo li.

Certeza
Nossa ltima hiptese refere-se aos parmetros do modelo, a saber: os coeficientes cj na funo objetivo, os coeficientes aij nas restries funcionais e os lados direitos das restries funcionais, b;.

ffiptese da certeza: O valor atribudo a cada parmetro de um modelo de programao linear assumido como uma constante conhecida.
Em aplicaes reais, a hiptese da certeza raramente satisfeita de forma precisa. Os modelos da programao linear so, em geral, formulados para selecionar alguma medida futura. Portanto, os valores de parmetros usados seriam baseados em uma previso de condies futuras que, inevitavelmente, introduz algum grau de incerteza. Por essa razo normalmente importante realizar a anlise de sensibilidade aps uma soluo ter sido classificada como tima segundo os valores de parmetros assumidos. Conforme discutido na Seo 2.3, um dos objetivos identificar os parmetros sensveis (aqueles cujos valores no podem ser modificados sem alterar a soluo tima), uma vez que qualquer alterao posterior no valor de um parmetro sensvel sinaliza imediatamente a necessidade de mudar a soluo adotada. A anlise de sensibilidade desempenha papel importante na anlise do problema da Wyndor Glass Co., como voc ver na Seo 6.7. Entretanto, necessrio adquirir algum conhecimento adicional antes de terminar essa histria. Ocasionalmente, o grau de incerteza nos parmetros muito grande para ser tratado com a anlise de sensibilidade. Nesse caso, necessrio tratar os parmetros explicitamente como variveis aleatrias. Foram desenvolvidas formulaes desse tipo, conforme discutido nas Sees 23.6 e 23.7 do CD-ROM.

As Hipteses em Perspectiva
Enfatizamos na Seo 2.2 que um modelo matemtico destina-se apenas a ser uma representao idealizada de um problema real. Normalmente so necessrias aproximaes e suposies simplificadoras para que o modelo seja tratado. Acrescentar muito detalhe e preciso pode tomar o modelo incontrolvel para anlise til do problema. Tudo o que realmente necessrio que haja uma correlao relativamente alta entre a previso do modelo e o que realmente aconteceria no problema real. Essa recomendao certamente aplicvel programao linear. muito comum nas aplicaes reais de programao linear que quase nenhuma das quatro hipteses se sustente completamente. Exceto, talvez, pela hiptese da divisibilidade, de esperar pequenas disparidades. Isso particularmente verdadeiro para a hiptese da certeza, de forma que a anlise de sensibilidade normalmente uma exigncia para compensar a violao dessa hiptese. Entretanto, importante para a equipe de PO examinar as quatro hipteses para o problema em estudo e analisar a dimenso dessas disparidades. Se qualquer uma das hipteses for violada de forma significativa, ento h disponibilidade de uma srie de modelos alternativos teis, como apresentado em captulos mais frente neste livro. Uma desvantagem desses outros modelos que os algoritmos disponveis para solucion-los no so nem de perto poderosos como aqueles disponveis para programao linear, embora essa diferena seja pequena em alguns casos. Para algumas aplicaes, o poderoso mtodo da programao linear usado para a anlise inicial e depois se utiliza um modelo mais complexo para refinar essa anlise. medida que for trabalhando com os exemplos da Seo 3.4, voc ver que boa pr~ tica analisar em que nvel cada uma dessas quatro hipteses da programao linear se aplica.

3.4

EXEMPLOS ADICIONAIS

43

EXEMPLOS ADICIONAIS
O problema da Wyndor Glass Co. um exemplo-prottipo de programao linear sob vrios aspectos: ele envolve alocao de recursos limitados entre atividades que competem entre si, seu modelo se encaixa em nossa forma-padro e seu contexto aquele tradicional de melhor planejamento de negcios. Entretanto, a aplicabilidade da programao linear muito mais ampla. Na presente seo comearemos a alargar nossos horizontes. medida que voc for estudando os prximos exemplos, observe que so seus modelos matemticos implcitos e no o contexto que os caracterizam como problemas de programao linear. Passe ento a pensar como o mesmo modelo matemtico poderia surgir em muitos outros contextos simplesmente mudando os nomes das atividades e assim por diante. Esses exemplos so verses em pequena escala de aplicaes reais (inclusive duas que esto inclusas nos estudos de caso a ser apresentados na prxima seo). Assim como o problema da Wyndor e o exemplo de demonstrao para o mtodo grfico no Tutor PO, o primeiro desses exemplos possui apenas duas variveis de deciso e, por isso, pode ser resolvido por mtodos grficos. Pelas novas caractersticas, ele um problema de minimizao e possui uma mistura de formas para as restries funcionais. Os exemplos subseqentes tm um nmero consideravelmente maior que duas variveis de deciso e, portanto, so mais desafiantes em sua formulao. Embora iremos mencionar suas solues timas que so obtidas por meio do mtodo simplex, o foco aqui ser em como formular o modelo de programao linear para esses problemas maiores. As sees seguintes e o prximo captulo passaro para a questo das ferramentas de software e do algoritmo (o mtodo simplex) que so usados para solucionar tais problemas. Se achar necessrio mais exemplos de formulao de modelos de programao linear pequenos e relativamente diretos antes de lidar com esses exemplos de formulao mais complexos, sugerimos que retorne ao exemplo de demonstrao para o mtodo grfico no Tutor PO e para os exemplos na seo Exemplos Trabalhados para este captulo contidos no CD-ROM.

Planejamento de Sesses de Radioterapia


MARY acaba de receber um diagnstico de cncer em um estgio relativamente avanado. Mais especificamente, ela tem um tumor maligno na rea da bexiga (uma "leso integral da bexiga"). Mary est por receber o tratamento mdico mais avanado disponvel oferecendo-lhe todas as chances disponveis de sobrevivncia. Esse tratamento incluir radioterapia. A radioterapia envolve o uso de uma mquina de tratamento externo por fluxo de raios para passar radiao ionizante atravs do corpo do paciente, danificando tanto tecidos cancergenos quanto saudveis. Normalmente, vrios fluxos so administrados precisamente de diferentes ngulos em um plano bidimensional. Em virtude da atenuao, cada fluxo libera mais radiao para o tecido mais prximo do ponto de entrada do que o tecido mais prximo do ponto de sada. A disperso faz que uma parcela de radiao tambm atinja tecidos fora da trajetria direta do fluxo. Pelo fato de as clulas tumorais se posicionarem tipicamente, de forma microscpica, entre clulas saudveis, a dosagem de radiao pela regio do tumor tem de ser grande o bastante para matar as clulas malignas, que so ligeiramente um pouco mais sensveis radiao e, ao mesmo tempo, suficientemente pequena para poupar as clulas saudveis. Ao mesmo tempo, a dose agregada a tecidos crticos no deve exceder os nveis de tolerncia admitidos, de modo a impedir complicaes que podem vir a ser mais srias que a doena em si. Pela mesma razo, a dose total para toda a anatomia saudvel deve ser minimizada. Em virtude da necessidade de se balancear cuidadosamente todos esses fatores, as sesses de radioterapia so processos muito delicados. O objetivo do planejamento das sesses selecionar a combinao de fluxo a serem usados e a intensidade de cada um deles, para gerar a melhor distribuio de dosagem possvel. A potncia da dose em qualquer ponto do corpo medida em unidades chamadas kilorads. Uma vez que o planejamento do tratamento tenha sido desenvolvido, ele administrado em vrias sesses, distribudas ao longo de vrias semanas.

44

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

FIGURA 3.11

Corte do tumor de Mary (visto de cima), tecidos crticos prximos e os fluxos de radiao sendo utilizados.
Fluxo 2

Fluxo 1 1. Bexiga e tumor 2. Reto, cccix etc. 3. Fmur, parte da plvis etc.

No caso de Mary, o tamanho e a localizao do tumor tomam o planejamento de seu tratamento um processo ainda mais complicado que o usual. A Figura 3 .11 mostra um diagrama de um corte transversal do tumor visto de cima, bem como tecidos crticos vizinhos a serem evitados. Entre esses tecidos temos rgos crticos (por exemplo, o reto) assim como estruturas sseas (por exemplo, o fmur e a plvis) que vo atenuar a radiao. Tambm so indicados o ponto de entrada e a direo para os dois nicos fluxos que podem ser usados com um mnimo de segurana nesse caso. Na verdade, estamos simplificando o exemplo nesse ponto, pois normalmente dezenas de possveis fluxos tm de ser considerados. Para qualquer fluxo proposto de uma dada intensidade, a anlise de qual seria a absoro de radiao resultante por vrias partes do corpo requer um processo complicado. Em suma, com base em cuidadosa anlise anatmica, a distribuio de energia dentro da seco transversal bidimensional do tecido pode ser plotada em um mapa de isodosagem, no qual as linhas de contorno representam a potncia da dose na forma de uma porcentagem da potncia da dose no ponto de entrada. Uma fina grade ento colocada sobre o mapa de isodosagem. Somando-se a radiao absorvida nas quadrculas contendo cada tipo de tecido, a dose mdia que absorvida pelo tumor, anatomia saudvel e tecidos crticos pode ser calculada. Com mais de um fluxo (administrado seqencialmente), a absoro da radiao aditiva. Aps ampla anlise desse tipo, a equipe mdica estimou cuidadosamente os dados necessrios para planejar o tratamento de Mary, conforme sintetizado na Tabela 3.7. A primeira coluna enumera as reas do corpo que precisam ser consideradas e as duas colunas seguintes do a frao da dose de radiao no ponto de entrada para cada fluxo que absorvido pelas respectivas reas em mdia. Por exemplo, se o nvel da dose no ponto de entrada para o fluxo 1 for 1 kilorad, ento uma mdia de 0,4 kilorad ser absorvida por toda a anatomia s no plano bidimensional; 0,3 kilorad, pelos tecidos crticos prximos; 0,5 kilorad, pelas vrias partes do tumor; e 0,6 kilorad, pelo ncleo do tumor. A ltima coluna apresenta as restries na dosagem total de ambos os fluxos que so absorvidos na mdia pelas respectivas reas do corpo. Em particular, a absoro de dosagem mdia para a anatomia saudvel deve ser a menor possvel; para os tecidos crticos, no pode exceder a 2,7 kilorads; a mdia por todo o tumor tem de ser igual a 6 kilorads; e para o ncleo do tumor deve ser de pelo menos 6 kilorads.

Formulao como um Problema de Programao Linear. As duas variveis de deciso x 1 e x2 representam, respectivamente, a dose (em kilorads) no ponto de entrada para os fluxos 1 e 2. Pelo fato de a dosagem total atingindo a anatomia saudvel ter de ser minimizada, faamos que Z simbolize essa quantidade. Os dados da Tabela 3. 7 podem ento ser usados diretamente para formular o seguinte modelo de programao linear. 4
ili

TABELA 3.7 Dados para o planejamento das sesses de radioterapia de Mary


Frao da Dose de Entrada Absorvida por rea (Mdia)

rea
Anatomia saudvel Tecidos crticos Regio do tumor Ncleo do tumor

Fluxo 1
0,4 0,3 0,5 0,6

Fluxo 2
0,5 0, 1 0,5 0,4

Restrio sobre a Dosagem Mdia Total, em kllorads


Minimizar
:OS

2,7 =6

~6

Na realidade, a Tabela 3.7 simplifica a situao real, de modo que o modelo real seria um tanto mais complexo que o aqui apresentado e teria dezenas de variveis e restries. Para detalhes sobre a situao geral, consulte SONDERMAN, D.; ABRAHAMSON, P. G. Radiotherapy Treatment Design Using Mathematical Programming Models, Operations Research, v. 33, p. 705-725, 1985, e sua ref. 1. Professor Eva K. Lee do Georgia Institute of Technology um expoente nos esforos atuais de pesquisa para futura extenso da aplicao de programao linear e outras reas da programo matemtica para o desenho da radioterapia.

3.4

EXEMPLOS ADICIONAIS

45

Minimizar Z = 0,4x 1 sujeito a

+ 0,5 x 2

+ O,lx2 :5 2,7 0,5x 1 + 0,5x2 = 6 0,6x 1 + 0,4x2 2:: 6


0,3x 1

e
Xz 2::

Observe as diferenas ensre este modelo e aquele da Seo 3.1 para o problema da Wyndor Glass Co. Esse ltimo envolvia maximizar Z e todas as restries funcionais eram do formato :5. O presente modelo no se encaixa nessa mesma forma-padro, porm ele incorpora trs outras formas legtimas descritas na Seo 3.2, a saber: minimizar Z, restries funcionais na forma = e restries funcionais na forma 2::. Entretanto, ambos os modelos possuem apenas duas variveis, de maneira que esse novo problema tambm pode ser resolvido pelo mtodo grfico ilustrado na Seo 3.1 A Figura 3.12 apresenta a soluo grfica. A regio de solues viveis composta apenas pelo segmento de reta mais escuro entre (6, 6) e (7,5; 4,5), pois os pontos nesse segmento so os nicos que satisfazem simultaneamente todas as restries. Observe que a restrio de igualdade limita a regio de solues viveis reta contendo esse segmento de reta e depois as duas outras restries funcionais determinam as duas extremidades do segmento de reta. A reta pontilhada a reta da funo objetivo que passa pela soluo tima (xi. x 2 ) = (7,5; 4,5) com Z = 5,25. Esta soluo tima, e no o ponto (6, 6) pois Z decrescente (para valores positivos de Z) empurra a reta da funo objetivo em direo origem (em que Z = O). E Z = 5,25 para (7,5; 4,5) menor que Z = 5,4 para (6, 6). Portanto, o planejamento timo usar uma dose total no ponto de entrada de 7 ,5 kilorads para o fluxo 1 e de 4,5 kilorads para o fluxo 2.

Planejamento Regional
A CONFEDERAO MERIDIONAL DE KIBUTZIM um grupo de trs kibutzim (comunidades agrcolas coletivas) em Israel. O planejamento geral para esses grupos feito em seu Centro Tcnico de Coordenao. Esse escritrio est planejando atualmente a produo agrcola para o prximo ano. A produo agrcola de cada kibutz limitada tanto pela quantidade de rea irrigvel disponvel como pela quantidade de gua alocada para a irrigao pelo Comissariado de Recursos Hdricos (um rgo governamental). Esses dados so fornecidos na Tabela 3.8. Entre as plantaes adequadas para essa regio encontram-se beterraba, algodo e sorgo e so estas que esto sendo consideradas para o prximo perodo. Essas plantaes diferem basicamente nos respectivos retornos lquidos esperados e consumo de gua. Alm disso, o Ministrio de Agricultura tem uma cota mxima para a rea total que pode ser dedicada a cada uma dessas plantaes pela Confederao Meridional de Kibutzim, conforme ilustrado na Tabela 3.9. Em razo da limitada disponibilidade de gua para irrigao, a Confederao Meridional de Kibutzim no ser capaz de usar toda sua rea irrigvel para plantao de culturas na prxima temporada. Para garantir equilbrio entre os trs kibutzim, foi acordado que cada um deles vai plantar a mesma proporo de sua rea irrigvel. Por exemplo, se o kibutz 1 plantar 200 de seus 400 acres disponveis, ento o kibutz 2 ter de plantar 300 de seus 600 acres, ao passo que o kibutz 3 plantaria 150 de seus 300 acres. Entretanto, qualquer combinao das plantaes pode ser cultivada no kibutzim. A tarefa que o Centro Tcnico de Coordenao deve enfrentar planejar quantos acres devem ser dedicados a cada plantao no respectivo kibutzim satisfazendo as dadas restries. O objetivo maximizar o retomo lquido total para a Confederao Meridional do Kibutzim como um todo.

46

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

15

10

FIGURA 3.12 Soluo grfica para o planejamento do tratamento radioterpico de Mary.

0,5x 1 + 0,5x2 = 6

o
+

10

TABELA 3.8 Dados de recursos para a Confederao Meridional de Kibutzim


Kibutz

Terra Utilizvel (em acres)


400 600 300

Alocao de gua (em acres ps)


600 800 375

2 3

TABELA 3.9 Dados de plantaes para a Confederao Meridional de Kibutzim Cota Mxima (em acres)
600 500 325

Plantao
Beterraba Algodo Sorgo

Consumo de gua (em acres ps/acre)


600 800 375

Retomo Lquido (US$/acre)


1.000 750 250

Formulao como um Problema de Programao Linear. As quantidades a serem decididas so o nmero de acres a ser dedicado a cada uma das trs plantaes em cada um dos trs kibutzim. As variveis de deciso xj (j = 1, 2, ... , 9) representam essas novas quantidades, conforme mostrado na Tabela 3.10. J que a medida de eficincia Z o retomo lquido total, o modelo de programao linear resultante para esse problema :
Maximizar Z = 1.000(x 1 to s seguintes restries:

+ x2 + x 3 ) + 750(x4 + x 5 + x6 ) + 250 (x7 + x8 + x 9 ), sujei-

3.4 EXEMPLOS ADICIONAIS

47

I! TABELA 3.10 Variveis de deciso para o problema da Confederao Meridional

de Kibutzim
Alocao (em acres}
Klbutz

Plantao
Beterraba Algodo Sorgo

1
Xi

2
X2 X5 Xs

3
X3

Xi
X7

x6
X9

1. Terra utilizvel para cada kibutz:


X1 X2 X3

+ X4 + X7 + X5 + Xg + X6 + X9 + + +

:S :S :S

400 600 300

2. Alocao de gua para cada kibutz:


3x1 3X2 3X3 2x4 2x5 2x6

+ X7 + Xg + X9

:S :S :S

600 800 375

3. rea total (em acres) para cada plantao:


X1 X4 X7

+ X2 + X3 + X5 + X6 + Xg + X9

:S :S :S

600 500 325

4. Proporo igual da terra cultivada:


X2

+ X5 + Xg
600

X2

+ X5 + Xg
600

5. No-negatividade:
paraj = 1, 2, ... , 9. Isso completa o modelo, exceto que as restries de igualdade no esto ainda na forma apropriada para um modelo de programao linear, pois algumas das variveis se encontram do lado direito da equao. Portanto, sua forma final 5

+ X4 + X7) + x 5 + x8 ) 4(x 3 + x 6 + x 9 ) 3(x1 (x 2

2(x3

+ X5 + Xg) = o + x 6 + x 9) = O 3(x 1 + x 4 + x 7 ) = O
2(x2

O Centro Tcnico de Coordenao formulou seu modelo e depois aplicou o mtodo simplex (desenvolvido no Captulo 4) para encontrar uma soluo tima

Na verdade, qualquer uma dessas equaes redundante e pode ser eliminada se desejada. Da mesma forma, pelo fato de essas equaes, quaisquer duas das restries de terra utilizvel tambm poderiam ser eliminadas, pois elas seriam satisfeitas automaticamente quando tanto a restrio de terra utilizvel remanescente quanto essas equaes so satisfeitas. Porm, nenhum dano causado (exceto um esforo computacional um pouco maior) por incluir restries desnecessrias, de modo que voc no precise se preocupar com a identificao e eliminao delas em modelos que formula.

48

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

(xi. xi. x 3 , x 4 , x 5 , x6' x7 , x 8 , x 9 ) = ( 133+, 100, 25, 100, 250, 150, O, O, O}


conforme ilustrado na Tabela 3.11. O valor timo resultante da funo objetivo Z = 633,333t isto , um retomo lquido total de US$ 633.333,33.
TABELA 3.11 Soluo tima para o problema da Confederao Meridional de Kibutzim
Melhor Alocao (em acres)
Klbutz

Plantao
Beterraba Algodo Sorgo

133t 100

100 250

25 150

Controlando a Poluio do Ar A NORI & LEETS CO., um dos maiores produtores de ao em sua regio, localiza-se na cidade de Steeltown e o nico grande empregador nessa localidade. Steeltown cresceu e prosperou juntamente com a companhia que agora emprega cerca de 50.000 residentes. Portanto, o pensamento dos habitantes da cidade sempre foi: "Se bom para a Nori & Leets, ento bom para a cidade". Entretanto, esse tipo de pensamento est mudando: a poluio descontrolada gerada pelos fomos da empresa est destruindo a aparncia da cidade e colocando em risco a sade da populao. Uma revolta recente dos acionistas resultou na eleio de uma nova diretoria mais esclarecida para a empresa. Esses novos diretores esto dispostos a seguir polticas socialmente corretas e vm discutindo com governantes de Steeltown e representantes da sociedade o que fazer em relao ao problema da poluio do ar. Juntos, eles chegaram a rigorosos padres de qualidade do ar para a camada atmosfrica de Steeltown. Os trs tipos principais de poluentes nessa camada atmosfrica so material particulado, xido de enxofre e hidrocarbonetos. Os novos padres requerem que a empresa reduza a emisso anual desses poluentes para os volumes especificados na Tabela 3.12. A diretoria instruiu a gerncia para que fizesse que o pessoal da engenharia determinasse como atingir essas redues do modo mais econmico possvel. As siderrgicas possuem duas fontes primrias de poluio, a saber: os alto-fomos para fabricar lingotes de gusa e os fomos Siemens-Martin para transformar esses lingotes em ao. Em ambos os casos os engenheiros decidiram que os tipos mais eficientes de mtodos para reduo de poluio seriam: (1) aumentar a altura das chamins, 6 (2) usar dispositivos fil-

TABELA 3.12 Padres de ar puro para a Nori & Leets Co.


Poluente
Particulados xido de enxofre Hidrocarbonos

Reduo Necessria na Taxa de Emisso Anual (em Milhes de Libras)


60 150 125

Posteriormente a esse estudo, esse mtodo de reduo de poluio em particular tomou-se controverso. Pelo fato de seu efeito ser o de reduzir a poluio superficialmente, espalhando emisses a uma distncia maior, grupos de ambientalistas sustentam que isso cria mais chuva cida por manter os xidos de enxofre mais tempo no ar. Conseqentemente, a Agncia de Proteo Ambiental norte-americana adotou novas regras em 1985 para eliminar incentivos para o uso de chamins mais altas.

3.4

EXEMPLOS ADICIONAIS

49

trantes (inclusive retentores de gases) nas chamins e (3) incluir materiais limpadores de alta qualidade entre os combustveis usados nos fornos. Cada um desses mtodos possui sua limitao tecnolgica na intensidade em que pode ser utilizado (por exemplo, um aumento mximo permitido na altura das chamins), mas ainda h uma flexibilidade considervel para emprego do mtodo em uma frao de seu limite tecnolgico. A Tabela 3.13 ilustra a quantidade de emisso (em milhes de libras por ano) que pode ser eliminada de cada tipo de forno usando-se completamente o limite tecnolgico para quaisquer dos mtodos de reduo de poluio. Para fins de anlise, parte-se do pressuposto de que cada mtodo pode ser utilizado em nveis inferiores ao mximo para atingir qualquer frao das redues de taxas de emisso apresentadas nessa tabela. Alm disso, as fraes podem ser diferentes para os alto-fornos e para os fornos Siemens-Martin. Para cada tipo de forno, a reduo de emisso alcanada por mtodo no afetada substancialmente por quaisquer que sejam os outros mtodos tambm usados. Aps esses dados terem sido analisados, tornou-se evidente que nenhum mtodo por si s seria capaz de alcanar todas as redues exigidas. No entanto, combinar todos os trs mtodos a plena carga em ambos os tipos de fornos (o que teria um custo proibitivo caso os produtos da empresa tivessem de permanecer com preos competitivos) muito mais adequado. Portanto, os engenheiros chegaram concluso que teriam de usar alguma combinao de mtodos, talvez com capacidades parciais, baseados em custos relativos. Alm disso, em virtudes das diferenas entre os alto-fornos e os fornos Siemens-Martin, os dois tipos provavelmente no usariam a mesma combinao. Foi realizado um estudo para estimar o custo anual total que seria acarretado em cada um dos mtodos de reduo de poluio. O custo anual de um mtodo inclui despesas operacionais e de manuteno crescentes, bem como receitas menores decorrentes de qualquer perda de eficincia do processo de produo provocado pelo uso do mtodo. Outro custo importante o custo inicial (o desembolso inicial de capital) exigido para instalar o mtodo. Para tomar esse custo que ocorre uma nica vez comensurvel em relao aos custos anuais permanentes, o valor temporal do dinheiro foi usado para calcular o gasto anual (em relao vida til do mtodo) que seria equivalente em valor a esse custo inicial. Essa anlise levou a estimativas do custo anual total (em milhes de dlares) dados na Tabela 3.14 para emprego dos mtodos a plena capacidade. Tambm foi determinado que o custo de um mtodo sendo usado em um nvel mais baixo aproximadamente proporcional frao da capacidade de reduo de poluio dada na Tabela 3.13 que alcanada. Portanto, para qualquer frao atingida, o custo anual total seria grosseiramente essa frao da quantidade correspondente da Tabela 3.14. Foram estabelecidas ento as condies para se desenvolver a estrutura do plano de reduo de poluentes da empresa. Esse plano especifica que tipos de mtodos de reduo sero usados e a que parcela de suas capacidades plenas para: (1) os alto-fornos e (2) os fornos Siemens-Martin. Em razo da natureza combinatria do problema de se encontrar um plano que satisfaa as exigncias com o menor custo possvel, foi formada uma equipe de PO para solucionar o problema. A equipe adotou uma abordagem de programao linear, formulando o modelo sintetizado a seguir.

TABELA 3.13 Reduo na taxa de emisso de poluentes (em milhes de libras por ano) a partir do mximo uso permitido de um mtodo de reduo para a Nori & leets Co.
Chamins mais Altas Altofornos Poluente
Particulados xido de enxofre Hidrocarbonetos

Filtros Altofornos Fornos SlemensMartin

Combustveis Melhores Altofornos Fornos SiemensMartin 13 49 20

Fornos SlemensMartin

12 35 37

9 42 53

25 18 28

20 31 24

17 56 29

50

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Formulao como um Problema de Programao Linear. Esse problema possui seis variveis de deciso xj, j = 1, 2, ... 6, cada uma das quais representando o uso de um dos trs mtodos de reduo de poluio para um dos dois tipos de fomos, expressos na forma de uma frao da capacidade de reduo (de modo que Xj no pode ultrapassar 1). A ordem dessas variveis mostrada na Tabela 3.15. Em virtude de o objetivo ser o de minimizar o custo total e, ao mesmo tempo, satisfazer s exigncias de reduo de poluio, os dados das Tabelas 3.12, 3.13 e 3.14 levam ao seguinte modelo:
Minimizar sujeita s seguintes restries: Z

= 8x 1 +

10x2 + 7x3 +6x4 + 1 lx5 + 9x6'

1. Reduo da emisso de poluentes:


12x1 + 9x2 + 25x3 + 20x4 + 17x5 + 13x6 ;:::: 60 35x 1 + 42x2 + 18x3 + 31x4 + 56x5 + 49x6 ;:::: 150 37x1 + 53x2 + 28x3 + 24x4 + 29x5 + 20x6 ;:::: 125 2. Limitaes tecnolgicas:
xj::::;

1,

para j

1, 2, .. ., 6

3. No-negatividade:
xj;::::

O,

para j = 1, 2, ... , 6.

A equipe de PO usou este modelo7 para encontrar um plano de custo mnimo (xi,
Xz, X3, X4, X5, Xfo)

= (l;

0,623; 0,343; 1; 0,048; 1),

com Z = 32,16 (custo anual total de US$ 32,16 milhes). Em seguida, foi aplicada a anlise de sensibilidade para explorar o efeito de se fazer possveis ajustes nos padres do ar dados na Tabela 3.12, bem como verificar o efeito de quaisquer imprecises nos dados de custo dados na Tabela 3.14. (Essa histria continua no Caso 6.1 no final do Captulo. 6.) Posteriormente, veio o planejamento detalhado e a reviso gerencial. Logo depois, esse programa para controle da poluio do ar foi totalmente implementado pela empresa e os cidados de Steeltown respiraram aliviados (com ar mais puro!)

TABELA 3.14 Custo anual total do uso mximo permitido dos mtodos de reduo de poluio para a Nori & Leets Co. (em milhes de dlares)
Alto-fornos
8 7 11

Mtodo de Reduo da Poluio


Chamins mais altas Filtros Combustveis melhores

Fornos Slemens-Martln
10 6 9

li

TABELA 3.15 Variveis de deciso (frao do uso mximo permitido dos mtodos de reduo de poluio) para a Nori & Leets Co.
Alto-fornos Fornos Slemens-Martln

Mtodo de Reduo da Poluio


Chamins mais altas Filtros Combustveis melhores

Uma formulao equivalente pode expressar cada varivel de deciso em unidades naturais para o respectivo . mtodo de reduo de poluio: por exemplo, x 1 e x 2 poderiam representar o nmero de metros em que as alturas das chamins so aumentadas

3.4

EXEMPLOS ADICIONAIS

51

Reciclando Resduos Slidos


A COMPANHIA SAVE-IT opera em um centro de reciclagem que coleta quatro tipos de resduos slidos e os trata de modo que possam ser combinados em um produto vendvel. O tratamento e a composio so processos distintos. Podem ser gerados trs compostos distintos desse produto (ver a primeira coluna da Tabela 3.16), dependendo do mix dos materiais utilizados. Embora haja alguma flexibilidade no mix de cada composto, padres de qualidade podem especificar a quantidade mnima ou mxima permitidas para a proporo de um resduo na composio do produto. Essa proporo o peso do resduo expresso na forma de porcentagem do peso total para a composio do produto. Para cada um dos dois compostos mais elevados especificada uma porcentagem fixa para um dos resduos. Essas especificaes so dadas na Tabela 3.16 juntamente com o custo de combinao e o preo de venda para cada composto. O centro de reciclagem coleta seus resduos slidos de fontes regulares e, portanto, normalmente capaz de manter uma taxa estvel de tratamento dos mesmos. A Tabela 3.17 fornece as quantidades disponveis para coleta e o tratamento de cada semana, bem como o custo de tratamento, para cada tipo de resduo. A nica proprietria da Companhia Save-It Co. a Green Earth, uma organizao dedicada a questes ambientais, de modo que os lucros da Save-It sejam usados para ajudar no suporte s atividades da Green Earth. A Green Earth levantou contribuies e subvenes que chegam a um volume de US$ 30 mil por semana, para serem utilizados exclusivamente para cobrir todo o custo de tratamento de resduos slidos. A diretoria da Green Earth instruiu a gerncia da Save-It para dividir esse dinheiro entre os resduos de maneira que pelo menos metade da quantidade disponvel de cada resduo seja efetivamente coletada e tratada. Essas restries adicionais so enumeradas na Tabela 3 .17. Dentro das restries especificadas nas Tabelas 3.16 e 3.17, a gerncia quer determinar a quantidade de cada composto a ser produzida e o mix de resduos exato a serem usados em cada composto. O objetivo maximizar o lucro lquido semanal (receitas totais por vendas menos o custo total de composio), excludo o custo fixo de tratamento de US$ 30.000 por semana que est sendo coberto por contribuies e doaes.
TABELA 3.16 Dados de produto da Save-lt Co.
Custo de Composio por Libra (peso) (US$) 3,00 Preo de Venda Libra por (peso) (US$) 8,50

Composto

Especificao Resduo Resduo Resduo Resduo 1 : no mais que 30% do total 2: no menos que 40% do total 3: no mais que 50% do total 4: exatamente 20% do total

Resduo 1 : no mais que 50% do total Resduo 2: no menos que 10% do total Resduo 4: exatamente 10% do total Resduo 1 : no mais que 70% do total

2,50

7,00

2,00

5,5

TABELA 3.17 Dados referentes a resduos slidos da Save-lt Co.


Tipo de Resduo
1 2 3 4

Peso em Libras Disponveis por Semana 3.000 2.000 4.000 1.000

Custo do Tratamento por Libra (peso) (US$) 3,00 6,00 4,00 5,00

Restries Adicionais 1. Para cada tipo de resduo pelo menos metade do peso em libras disponvel por semana deve ser coletado e tratado. 2. Devem ser usados US$ 30.000 por semana para tratamento desses resduos.

52

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Formulao como um Problema de Programao linear. Antes de tentarmos construir um modelo de programao linear, temos de considerar com cautela a definio apropriada de variveis de deciso. Embora essa definio seja normalmente bvia, ela algumas vezes se toma ponto crucial de toda a formulao. Aps identificar claramente quais informaes so realmente desejadas e a forma mais conveniente para transmiti-las por meio de variveis de deciso, podemos desenvolver a funo objetivo e as restries sobre os valores dessas variveis de deciso. Nesse problema em particular, as decises a ser tomadas esto bem definidas, porm os meios apropriados para transmitir essas informaes podem exigir certo estudo. Tente e veja se voc obtm primeiramente a escolha inapropriada a seguir das variveis de deciso. Em virtude de um conjunto de decises ser a quantidade de cada composto a ser produzida, pareceria natural definir um conjunto de variveis de deciso de acordo. Prosseguindo por tentativa e erro nessa linha de pensamento, estabelecemos
Y; =nmero de libras do composto i produzido semanalmente
(i =A, B, C).

Outro conjunto de decises o mix de resduos para cada composto. Esse mix identificado pela proporo de cada resduo no composto, o que sugeriria definir o outro conjunto de variveis de deciso como
ZiJ

=proporo do resduo} no composto i

(i =A, B, C;j = 1, 2, 3, 4).

Entretanto, a Tabela 3.17 fornece tanto o custo de tratamento quanto disponibilidade de resduos em termos de quantidade (libras) e no em termos proporcionais, de forma que so essas informaes de quantidade que precisam ser registradas em alguma das restries. Para o resduo} (j = 1, 2, 3, 4) Nmero de libras do resduo} usado semanalmente=
ZAJYA

+ ZsJYB + ZCJYC

Por exemplo, j que a Tabela 3.17 indica que 3.000 libras do resduo tipo 1 se encontram disponveis por semana, uma restrio no modelo seria
ZA1YA

+ Zs1YB + Zc1Yc:::::; 3.000.

Infelizmente essa no uma restrio legtima em programao linear. A expresso que se encontra do lado esquerdo no uma funo linear, pois ela envolve produtos de variveis. Portanto, um modelo de programao linear no pode ser construd9 com essas variveis de deciso. Felizmente, h outra maneira de se definir as variveis de deciso que atender ao formato da programao linear. Voc consegue visualizar como fazer isso? Isso obtido simplesmente substituindo-se cada produto das antigas variveis de deciso por uma nica varivel! Em outras palavras, definimos
xiJ = ZiJYi (parai= A, B, C; j = 1, 2, 3, 4)

= nmero de libras do resduo j alocado semanalmente para o composto i, e depois deixamos que xiJ sejam as variveis de deciso. Combinando-se x;1 em maneiras diferentes leva s seguintes quantidades necessrias no modelo (para i = A, B, C; j = 1, 2, 3, 4).
xil

+ x; 2 +
xAJ

x;3

x;4 = nmero de libras do composto i produzido semanalmente

+ x 81 + xCJ = nmero de libras do resduo j usado semanalmente


+ +
= proporo do resduo j no composto i

X;j ----~--XiJ X;z X;3 X;4

O fato de essa ltima expresso ser uma funo no-linear no causa nenhuma complicao. Consideremos, por exemplo, a primeira especificao para composto A da Tabela 3.16 (a proporo do resduo do tipo 1 no deve exceder 30% ). Essa restrio gera a seguinte restrio no-linear

3.4

EXEMPLOS ADICIONAIS

53

Porm, multiplicando-se ambos os lados dessa desigualdade pelo denominador nos leva a uma restrio equivalente

e, portanto, 0,7xA1 0,3xA 2 - 0,3xA 3 - 0,3xA 4 :5

O,

que uma restrio legtima na programao linear. Com esse pequeno ajuste, as trs quantidades dadas anteriormente levam diretamente a todas as restries funcionais do modelo. A funo objetivo se baseia no objetivo gerencial de maximizar o lucro lquido semanal (receita total por vendas menos o custo total de composio) dos trs compostos. Portanto, para cada composto, o lucro por libra obtido subtraindo-se o custo de composio dado na terceira coluna da Tabela 3.16 menos o preo de venda da quarta coluna. Essas diferenas oferecem os coeficientes para a funo objetivo. Assim, o modelo de programao linear completo ser Maximizar

z= z=

5,5(xA1 +

XA2

XA3

XA4)

+ 4,5(xB1 + Xs2 + XB3 + XB4) + 3,5(xc1 + Xc2 + Xc3 + Xc4),

sujeita s seguintes restries: 1. Especificaes da mistura (segunda coluna da Tabela 3.16):


XAI :5 XA2 2:: 0,4(XA1 XA3 XA4

0,3(XA1 + + :5 0,5(XA1 + = 0,2(XA1 +

XA2 XA2 XA2 XA2 x 82 x 82

+ + + +

XA3 XA3 XA3 XA3 x 83 x 83

+ + + +

XA4) XA4) XA4) XA4)

(composto A, (composto A, (composto A, (composto A, (composto (composto (composto (composto

resduo resduo resduo resduo

1) 2) 3) 4)

+ O.l(xBJ + x 8 4 = O,l(xBJ + xc 1 :5 0,7(xc 1 +


x 81 :5 0,5(xBI x 82 2::

+ + XB2 + Xc2 +

+ XB4) + x 84 ) xB 3 + XB4) xc3 + Xc4)

B, resduo 1) B, resduo 2) B, resduo 4) e, resduo 1)

2. Disponibilidade de resduos (segunda coluna da Tabela 3.17):


XAI XA2 XA3 XA4

+ + + +

XBJ XB2 XB3 XB4

+ Xc1 + Xc2 + Xc3 + Xc4

:5 :5 :5 :5

3.000 2.000 4.000 1.000

(resduo (resduo (resduo (resduo

1)

2) 3) 4)

3. Restries nas quantidades tratadas (lado direito da Tabela 3 .17):


XAI XA2 XA3 XA4

+ + + +

XBJ XB2 XB3 XB4

+ Xc1 + XC2 + Xc3 + Xc4

2:: 2:: 2:: 2::

1.500 1.000 2.000 500

(resduo 1) (resduo 2) (resduo 3) (resduo 4)

4. Restrio no custo do tratamento (lado direito da Tabela 3.17):


3(xAI

Xs1

Xc1)

+ +

6(xA2 5(xA4

+ +

XB2 XB4

+ Xc2) +4 (xA3 + + Xc4) = 30.000.

XB43

Xc3)

5. Restries de no-negatividade:
XA1 2::

O,

XA2 2::

O,

... ,

Xc4 2::

O.

Essa formulao completa o modelo, exceto pelo fato que as restries para as especificaes das misturas precisam ser reescritas na forma apropriada para um modelo de pro-

54

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

gramao linear, trazendo todos os termos combinatrios e as variveis para o lado esquerdo da equao, como indicado a seguir: Especificaes das misturas

0,7xAI -0,4xAI -0,5xAI -0,2.xAI

- 0,3xA2 - 0,3xA3 - 0,3xA4 :::::: - 0,5xA2 - 0,5xA3 - 0,5xA4 :::::: - 0,2xA2 - 0,2.xA3 + 0,8xA4 =

+ 0,6XA2 - 0,4xA3 - 0,4xA4 ;:::: o (composto A, resduo 2)

o o
o

(composto A, resduo 1) (composto A, resduo 3) (composto A, resduo 4) (composto B, resduo 1) (composto B, resduo 2) (composto B, resduo 4) (composto C, resduo 1)

0,5xB1 - 0,5x82 -O,lxs1 + 0,9x82 -0,lxsi - O,lx82 0,3xc 1 - 0,7xcz -

0,5x83 - 0,5x84 :::::: O O,IxB3 - O,lx84 ;:::: O O,lx83 + 0,9x84 =O 0,7xc3 - 0,7xc4 :::::: O

Uma soluo tima para esse modelo apresentada na Tabela 3.18 e, a seguir, esses valores xij so usados para calcular as demais quantidades de interesse dadas na tabela. O valor timo resultante da funo objetivo Z = 35.109,65 (um lucro total semanal de US$ 35.109,65). O problema da Save-It Co. um exemplo de um problema de mistura. O objetivo de um problema de mistura encontrar a melhor mistura de ingredientes nos produtos finais para atender a determinadas especificaes. Algumas das primeiras aplicaes da programao linear foram para misturas de gasolina, nas quais os ingredientes de petrleo eram misturados para se obter vrias qualidades de gasolina. O consagrado estudo de PO da Texaco discutido no final da Seo 2.5 lidava com misturas de gasolina (embora a Texaco tivesse usado um modelo de programao (no-linear). Outros problemas de mistura envolvem produtos finais como ao, fertilizantes e raes para animais.

Escala de Pessoal
A UNION AIRWAYS est acrescentando mais vos de/para seu aeroporto central e, para tanto, precisa contratar mais agentes para o atendimento ao pblico. Entretanto, no est claro quantas pessoas eles devem contratar. A gerncia reconhece a necessidade de controle de custos, embora mantendo, ao mesmo tempo, um nvel de servios satisfatrio a seus clientes. Para isso, uma equipe de PO est estudando como programar as escalas desses agentes para fornecer bons servios aos clientes com o menor custo possvel em termos de pessoal.
TABELA 3.18 Soluo tima para o problema da Save-lt Co.
Libras Utilizadas Semanalmente Tipo de Resduo Composto
A B

1 412,3 (19,2%) 2587,7 (50%)

2 859,6 (40%) 517,5 (10%)

3 447,4 (20,8%) 1552,6 (30%)

Nmero de Libras Produzidas Semanalmente


2149 5175

e
Total

o
3000

429,8 (20%) 517,5 (10%)

o
1377

o
2000

o
947

Tomando como base a nova escala de vos, foi realizada uma anlise do nmero mnimo de agentes de atendimento ao cliente que precisavam estar de servio em diferentes horas do dia para fornecer um nvel de servio satisfatrio. A coluna mais direita da Tabela 3.19 mostra o nmero de agentes necessrios para os perodos dados na primeira coluna. Os demais campos dessa tabela refletem uma das clusulas no contrato atual da empresa com o sindicato que representa os agentes de atendimento ao cliente. Essa clusula diz que cada agente trabalha cinco dias por semana em turnos de oito horas e os turnos autorizados so:

3.4

EXEMPLOS ADICIONAIS

55

Turno 1: Turno2: Turno 3: Turno4: Turno5:

6 h- 14 h 8 h - 16 h meio-dia - 20 h 16 h - meia-noite 22 h-6 h

TABELA 3.19 Dados para o problema de escala de pessoal da Union Airways


Perodos Cobertos Turno Perodo do Dia
6 h- 8 h 8 h- 10 h 1O h - meio-dia Meio-dia - 14 h 14h-16h 16h-18h 18 h - 20 h 20 h - 22 h 22 h - meia-noite Custo dirio por agente Custo dirio por agente

1
1/ 1/ 1/ 1/

2
1/ 1/ 1/ 1/

Nmero Mnimo de Agentes Necessrio


48 79 65 87 64 73 82 43 52 15

1/ 1/ 1/ 1/

1/ 1/ 1/ 1/

1/ 1/

US$ 170 US$ 160

US$ 175 US$ 180 US$ 195

As marcas de verificao(!/) no corpo da Tabela 3.19 indicam os horrios cobertos pelos respectivos turnos. Pelo fato de alguns turnos serem menos desejados do que outros, os salrios especificados no contrato diferem conforme o turno. Para cada turno, o pagamento dirio (incluindo benefcios) para cada agente mostrado na ltima linha da tabela. O problema determinar quantos agentes devem ser alocados para os respectivos turnos dirios a fim de minimizar o custo total com pessoal (agentes) tomando como base a ltima linha da tabela e, ao mesmo tempo, atendendo (ou ultrapassando) as exigncias de nvel de servio dadas na coluna mais direita.

Formulao como um Problema de Programao Linear. Os problemas de programao linear sempre envolvem encontrar o melhor mix de nveis de atividade. O segredo para formular esse problema em particular reconhecer a natureza das atividades. As atividades correspondem aos turnos, nos quais o nvel de cada atividade o nmero de agentes alocados para aquele turno. Portanto, esse problema envolve descobrir o melhor mix de tamanhos de turno. Visto que as variveis de deciso sempre so os nveis de atividade, as cinco variveis de deciso aqui so
x; = nmero de agentes alocados para o turno j, para = 1, 2, 3, 4, 5.

As principais restries nos valores dessas variveis de deciso so: o nmero de agentes trabalhando durante cada perodo deve satisfazer a exigncia mnima dada na coluna mais direita da Tabela 3 .19. Por exemplo, para o perodo das 14 horas s 16 horas, o nmero total de agentes atribudos aos turnos que cobrem esse perodo (turnos 2 e 3) tem de ser pelo menos 64, de modo que
Xz

+ X3

2:

64

a restrio funcional para esse perodo. Pelo fato de a funo objetivo minimizar o custo total dos agentes atribudos aos cinco turnos, os coeficientes na funo objetivo so dados pela ltima linha da Tabela 3.19. Portanto, o modelo de programao linear completo
Minimizar Z
=

l 70x 1

+ l 60x2 +

175x3

l 80x4

+ l 95x5 ,

56

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

sujeito a x, x, x,
X1

2:

+ Xz + Xz + Xz + X3 Xz + X3
X3 X3

2: 2: 2: 2:

+ X4 + X4
X4 X4

2: 2: 2:

+ X5

2:

X5 2:

48 79 65 87 64 73 82 43 52 15

(6 h - 8 h) (8 h - 10 h) (10 h - meio-dia) (Meio-dia - 14 h) (14 h - 16 h) (16 h - 18 h) (18 h - 20 h) (20 h - 22 h) (22 h - meia-noite) (Meia-noite - 6 h)

e
Xj 2:

O,

para}

1, 2, 3, 4, 5.

Com um olhar aguado, voc provavelmente deve ter percebido que a terceira restrio, x 1 + x2 2: 65, na verdade no necessria, pois a segunda restrio, x 1 + x 2 ;:::::: 79, garante que x 1 + x2 ser maior que 65. Portanto, x 1 + x 2 2: 65 uma restrio redundante que pode ser eliminada. Da mesma forma, a sexta restrio, x 3 + x 4 2: 73, tambm redundante porque a stima restrio x 3 + x 4 2: 82. Na realidade, trs das restries no-negativas - x 1 2: O, x 4 2: O, x 5 2: O - tambm so redundantes em razo da primeira, oitava e dcima restries funcionais: x 1 2: 48, x 4 2: 43 e x 5 2: 15. Entretanto, no se ganha nenhuma vantagem em termos computacionais eliminando-se essas trs restries de no-negatividade. A soluo tima para esse modelo (x 1.x2 .x3 .x4 _x5 ) = (48, 31, 39, 43, 15). Isso faz com que Z = 30.610, isto , um custo dirio total com pessoal de US$ 30.610. Esse problema um exemplo no qual a hiptese da divisibilidade da programao linear, na verdade, no satisfeita. O nmero de agentes alocados para cada turno precisa ser um inteiro. Rigorosamente falando, o modelo deveria ter uma restrio adicional para cada varivel de deciso especificando que a varivel deve ter um valor inteiro. Acrescentar essas restries transformaria o modelo de programao linear em um modelo de programao inteira (tema do Captulo 11). Sem essas restries, a soluo tima dada anteriormente resultou, por si s, em valores inteiros, de modo que no houve nenhum prejuzo por no termos includo tais restries. A forma das restries funcionais fez com que este resultado fosse muito provvel. Se alguma das variveis resultasse em no-inteira, a forma mais fcil teria sido arredondar os valores para o inteiro mais prximo acima. Esse arredondamento possvel nesse exemplo porque todas as restries funcionais esto na forma 2: com coeficientes no-negativos. Arredondar para cima no garante a obteno de uma soluo tima no modelo de programao inteira, mas o erro introduzido pelo arredondamento de nmeros to grandes seria insignificante para a maioria das situaes prticas. Como alternativa, poderiam ser usadas as tcnicas de programao inteira descritas no Captulo 11 para encontrar exatamente uma soluo tima com valores inteiros. A Seo 3.5 inclui um estudo de caso de como a United Airlines usou a programao linear para desenvolver um sistema de escala de pessoal em uma escala muitssimo maior que a apresentada aqui nesse exemplo.

Distribuio de Mercadorias por meio de uma Rede de Distribuio


O Problema. A CIA. DISTRIBUIDORA ILIMITADA fabricar novamente o mesmo produto em duas fbricas diferentes e depois o produto ter de ser despachado para dois depsitos onde qualquer uma das fbricas poder suprir ambos os depsitos. A rede de distribuio disponvel para despachar este produto mostrada na Figura 3.13, em que Fl e F2 so as duas fbricas, Wl e W2 os dois depsitos e DC o centro de distribuio. As quantidades a ser enviadas de Fl e F2 esto indicadas esquerda delas e as quantidades a ser recebidas em Wl e W2 se encontram direita destes. Cada seta representa uma rota vivel. Portanto,

3.4

EXEMPLOS ADICIONAIS

57

Fl pode despachar produtos diretamente para Wl e possui trs rotas possveis (Fl ~ DC ~ W2, Fl ~ F2 ~ DC ~ W2 e Fl ~Wl ~ W2) para despachar para W2. A fbrica F2 possui apenas uma rota para W2 (F2 ~ DC ~ W2) e outra para Wl (F2 ~ DC ~ W2 ~ Wl). O custo por unidade enviada atravs de cada rota est indicado prximo seta. Tambm indicados prximos a Fl ~ F2 e a DC ~ W2 esto as quantidades mximas que podem ser enviadas por essas rotas. As demais rotas possuem capacidade de embarque suficiente para lidar com qualquer volume que essas fbricas consigam enviar. A deciso a ser tomada diz respeito a quanto enviar por meio de cada uma dessas rotas. O objetivo o de minimizar o custo total de envio.

Formulao como um Problema de Programao Linear. Para sete rotas, precisamos de sete variveis de deciso XFi-Fz, XFJ-DC Xp1-wi. XFz-oc. Xoc-wz, Xw1-wz, Xw2-w1) para representar as quantidades enviadas pelas respectivas rotas. H vrias restries nos valores dessas variveis. Alm das usuais restries no-negativas, h duas restries com limites superiores, xFl-FZ ::::: 10 e Xoc-w 2 ::::: 80, impostas pelas capacidades limitadas de envio para as duas rotas, Fl ~ F2 e DC ~ W2. Todas as demais restries surgem das cinco restries de fluxo lquido, uma para cada uma das cinco localidades. Essas restries possuem a seguinte forma.
Restrio de fluxo lquido para cada localidade: Quantidade enviada - quantidade recebida = quantidade necessria Conforme indicado na Figura 3.13, essas quantidades necessrias so 50 para Fl, 40 para F2, -30 para Wl e -60 para W2. Qual a quantidade necessria para DC? Todas as unidades produzidas nas fbricas so, em ltima instncia, necessrias nos depsitos, de modo que quaisquer unidades enviadas das fbricas para o centro de distribuio deveriam ser encaminhadas para os depsitos. Por essa razo, a quantidade total enviada do centro de distribuio para os depsitos deve ser igual quantidade total enviada das fbricas para o centro de distribuio. Em outras palavras, a diferena entre essas duas quantidades enviadas (a quantidade necessria para a restrio de fluxo lquido) deve ser zero.

FIGURA 3.13 -'ede de distribuio da C... Distribuidora Ilimitada.

50 unidades produzidas US$ 900/unidade 30 unidades necessrias

US$ 200/unidade 10 unidades no mximo

US$ 200/unidad

US$ 300/unidade

40 unidades 60 unidades necessrias

58

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

J que o objetivo minimizar o custo total de despacho, os coeficientes para a funo objetivo provm diretamente dos custos unitrios de despacho dados na Figura 3.13. Portanto, usando-se unidades monetrias de centenas de dlares nessa funo objetivo, o modelo de programao linear completo fica Minimizar Z = 2xFt-Fz

+ 4xFi-oc + 9xFi-w 1 3xw1-w2 + 2xw2-wi.

+ 3xFz-oc + Xoc-w2

sujeita s seguintes restries:


1. Restries de fluxo lquido:
XFJ-F2 -xFl-F2

XFl-DC

+ XFJ-Wl + XF2-DC
xF2-DC

50 (fbrica 1)
40 (fbrica 2)

- XFJ-DC - XFl-Wl

+ Xoc-w2

O (centro de distribuio) + Xw1-w2 - Xw2-w 1 = -30 (depsito 1) - Xoc-w2 - Xw1-w2 + Xwz-w 1 = -60 (depsito 2)

2. Restries de limite superior:


XFJ-F2
::::

10,

Xoc-w2 :::: 80

3. Restries de no-negatividade:
XFt-F2:::::: O, XFt-DC :::::: O, XFJ-Wl :::::: O, XF2-DC Xw1-w2 :::::: O, Xw2-w1 :::::: O.
::::::

O,

Xoc-w2:::::: O,

Veremos esse problema novamente na Seo 9.6, na qual o foco ser em problemas de programao linear desse tipo (chamado problema do fluxo de custo mnimo). Na Seo 9.7, encontraremos a soluo tima:
XF1-F2 = O, Xw1-w2 = O, XFl-DC = 40, Xw2-w1 = 20. XFJ-Wl

10,

XF2-DC

40,

Xoc-w2 = 80,

O custo de despacho total resultante de US$ 49 mil. Veremos tambm um estudo de caso envolvendo um problema muito maior desse mesmo tipo no final da Seo 3.5.

ALGUNS ESTUDOS DE CASO CLSSICOS


Para lhe oferecer melhor viso sobre o enorme impacto que a programao linear pode ter, apresentaremos agora trs estudos de caso de aplicaes que tiveram impacto drstico na lucratividade das empresas envolvidas. Cada um deles uma aplicao clssica, introduzida no incio dos anos 80, e que se transformou em um padro de excelncia para aplicaes futuras da programao linear. O primeiro deles guarda algumas similaridades com o problema da Wyndor Glass Co., porm em uma escala real. De forma semelhante, o segundo e o terceiro casos so verses reais dos dois ltimos exemplos apresentados na Seo 3.4 (exemplos da Union Airways e da Cia. Distribuidora Ilimitada).

Escolhendo o Mix de Produtos na Ponderosa lndustrial 8


At a sua venda em 1988, a PONDEROSA INDUSTRIAL era um fabricante de madeira compensada sediado em Anhuac, Chihuahua, que fornecia 25% da madeira compensada no Mxico. Como qualquer fabricante de madeira compensada, os diversos produtos da Ponderosa eram diferenciados pela espessura e qualidade da madeixa. O mercado de compensado no Mxico competitivo, de modo que ele quem determina os preos dos produtos. Os preos podem oscilar consideravelmente de um ms para outro, podendo haver grandes
ROY, A. et al. An Optimization-Based Decision Support System for a Product Mix Problem. Interfaces, v. 12, n. 2, p. 26-33, abr. 1982.

3.5

ALGUNS ESTUDOS DE CASO CLSSICOS

59

diferenas entre os produtos nas movimentaes de preos, at mesmo de um ms para o seguinte. Como resultado, a contribuio de cada produto para o lucro total da Ponderosa variava constantemente e de formas diferentes para produtos diversos. Por causa do efeito pronunciado nos lucros, uma questo crtica enfrentada pela gerncia era a escolha do mix de produtos - quanto fabricar de cada produto - mensalmente. Essa escolha era muito complexa j que ela tinha de levar em conta as quantidades atuais disponveis dos vrios recursos necessrios para fabricar os produtos. Os recursos mais importantes eram toras classificadas em quatro categorias de qualidade e capacidades de produo tanto para a operao de prensagem quanto de polimento. Comeando em 1980, a programao linear era usada mensalmente para orientar na deciso do mix de produtos. O modelo de programao linear tinha o objetivo de maximizar o lucro total de todos os produtos. As restries do modelo incluam as diversas restries de recursos, bem como outras relevantes como quantidade mnima de um produto que deve ser fornecida para clientes regulares quanto quantidade mxima que podia ser vendida. Para auxiliar no planejamento da aquisio de matria-prima, o modelo tambm considerava o impacto da deciso sobre o mix de produtos para o ms vindouro na produo do ms seguinte. O modelo tinha 90 variveis de deciso e 45 restries funcionais. Esse modelo foi usado a cada ms para encontrar o mix de produtos para o ms vindouro que seria timo se os valores estimados dos diversos parmetros do modelo comprovassem ser precisos. Entretanto, visto que alguns dos valores de parmetros poderiam mudar rapidamente (por exemplo, os lucros unitrios dos produtos), foi aplicada a anlise de sensibilidade para determinar o efeito caso os valores estimados acabassem sendo imprecisos. Os resultados indicaram quando deveriam ser feitos ajustes no mix de produtos (se o tempo assim permitisse) medida que ocorressem mudanas de mercado previstas que afetassem o preo (e, assim, o lucro unitrio) de certos produtos. Uma deciso-chave a cada ms referia-se ao nmero de toras que deveria ser adquirido em cada uma das quatro categorias de qualidade. As quantidades disponveis para a produo do ms vindouro eram parmetros do modelo. Portanto, aps a deciso de compra ter sido tomada e, a seguir, o mix de produtos timo correspondente ter sido determinado, era realizada uma anlise ps-otimalidade para investigar o efeito de se ajustar a deciso de compra. Por exemplo, muito fcil atravs da programao linear verificar qual seria o impacto sobre o lucro total caso fosse necessria realizar-se uma aquisio imediata de toras adicionais de dada categoria para permitir o aumento da produo para o ms seguinte. O sistema de programao linear da Ponderosa era interativo, de forma que a gerncia recebia resposta imediata a suas "perguntas o-que-acontece-se" sobre o impacto de encontrar-se valores de parmetros que diferissem daqueles do modelo original. O que aconteceria se uma compra repentina de toras tivesse de ser feita? O que aconteceria se os preos dos produtos oscilassem de certo modo? Uma diversidade de situaes desse tipo poderia ser investigada. A gerncia usou efetivamente seu poder para chegar a decises mais acertadas do que o mix de produtos "timo" do modelo inicial. O impacto da programao linear na Ponderosa foi relatado como "enorme". Ele levou a mudanas drsticas nos tipos de produtos de compensado enfatizados pela empresa. As decises de mix de produtos aperfeioadas tiveram como retomo um aumento de 20% na lucratividade da companhia como um todo. Outras contribuies da programao linear foram melhor utilizao da matria-prima, bens de capital e pessoal. Dois fatores ajudaram a tomar essa aplicao de programao linear to bem-sucedida. O primeiro deles que um sistema de planejamento financeiro de linguagem natural foi interfaceado com os programas para encontrar uma soluo tima para o modelo de programao linear. Usar linguagem natural em vez de smbolos matemticos para exibir os componentes do modelo de programao linear e respectivas sadas tomou o processo compreensvel e significativo para os gerentes que decidiam sobre o mix de produtos a ser adotado. necessrio gerar relatrios para a gerncia na linguagem do mundo dos negcios para que uma aplicao de programao linear seja bem-sucedida. Outro fator foi que o sistema de programao linear usado era interativo. Conforme mencionado anteriormente, aps uma soluo tima ter sido encontrada para uma verso

60

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

do modelo, essa caracterstica permitia aos gerentes fazerem uma srie de perguntas "oque-acontece-se" e receberem respostas imediatas. Freqentemente chega-se a melhores decises explorando-se outros cenrios plausveis e esse processo tambm deu aos gerentes maior confiana de que suas decises seriam acertadas na maioria das circunstncias previsveis. Em qualquer aplicao, essa capacidade de se responder rapidamente s necessidades e perguntas da gerncia por meio da anlise de ps-otimalidade (seja ela interativa ou no) uma parte vital de um estudo de programao linear.

Escala de Pessoal na United Airlines 9


Apesar de uma concorrncia sem precedentes no mercado das companhias areas eritre 1983 e 1984, a UNITED AIRLINES conseguiu atingir um crescimento substancial servindo em 48 aeroportos. Em 1984, a empresa se tomou a nica companhia area a atender cidades em todos os 50 estados norte-americanos. Seu lucro operacional em 1984 chegou a US$ 564 milhes, com receitas de US$ 6,2 bilhes, um aumento de 6% em relao a 1983, enquanto os custos aumentaram menos de 2%. O controle de custos essencial para se competir no mercado das companhias areas. Em 1982, a alta direo da United Airlines iniciou um estudo de PO da escala de seu pessoal com parte das medidas de controle de custos associadas expanso sofrida pela empresa no perodo 1983-1984. O objetivo era escalar pessoal nos balces de reserva em aeroportos e em escritrios da companhia para minimizar o custo de atender seus clientes. Na poca, a United Airlines empregava mais de 4.000 representantes de vendas e pessoal de apoio em seus 11 escritrios de reserva e cerca de 1.000 agentes de atendimento a clientes em dez grandes aeroportos. Alguns trabalhavam em regime de perodo parcial, em turnos de duas a oito horas, a maior parte trabalhava em tempo integral, em turnos de oito a dez horas. Os turnos comeavam em diversos horrios diferentes. Cada unidade de reserva ficava aberta (para atendimento via telefone) 24 horas por dia, como acontecia em cada um dos principais aeroportos. Entretanto, o nmero de empregados necessrios em cada local para fornecer o nvel de atendimento exigido variava enormemente durante o perodo de 24 horas do dia, podendo flutuar consideravelmente entre um perodo de meia hora e o prximo. Tentar planejar a escala de todos os funcionrios em dado local para atender s exigncias de nvel de atendimento adequado um verdadeiro pesadelo formado por inmeras consideraes combinatrias. Assim que um empregado comea a trabalhar, ele estar l continuamente durante todo o turno (de duas a dez horas, dependendo do funcionrio), exceto para intervalos de almoo ou pequenos intervalos de descanso a cada duas horas. Dado o nmero mnimo de empregados necessrios em uma tarefa para cada perodo de meia hora ao longo das 24 horas de um dia (onde essas exigncias mudam dia-a-dia durante todos os sete dias da semana), quantos funcionrios de cada turno de determinada extenso deveriam comear a trabalhar em cada dia de 24 horas durante a semana de sete dias? Felizmente, a programao linear se d muito bem com esses pesadelos combinatrios. Na verdade, vrias tcnicas de PO descritas neste livro foram empregadas no sistema de planejamento computadorizado desenvolvido para atacar esse problema. Tanto as previses (Captulo 27) quando a teoria das filas (Captulos 17 e 26) foram usadas para determinar o nmero mnimo de empregados necessrios em servio para cada intervalo de meia hora. A programao inteira (Captulo 11) foi utilizada para estabelecer os perodos do dia nos quais deveriam comear os diversos turnos. Entretanto, o "corao" do sistema de planejamento foi a programao linear, que realizava toda a escala em si para fornecer os servios necessrios com o menor custo de mo-de-obra possvel. Foi desenvolvida uma escala de trabalho completa para a primeira semana integral de um ms e, depois, ela foi reutilizada durante o restante do ms. Esse processo foi repetido a cada ms para refletir condies que mudavam.
9

HOLLORAN, T. J.; BRYN, J. E. United Airlines Station Manpower Planning System. Interfaces, v. 16, n. 1, p. 39-50, jan./fev. 1986.

3.5

ALGUNS ESTUDOS DE CASO CLSSICOS

61

Embora os detalhes sobre o modelo de programao linear no tenham sido publicados, fica claro que o esquema bsico utilizado aquele do exemplo da Union Airways de escala de pessoal na Seo 3.4. Minimizar a funo objetivo representa o custo total com pessoal para o local a que se destina a escala em questo. As principais restries funcionais exigem que o nmero de empregados em servio durante cada perodo no fique abaixo de determinado nvel mnimo aceitvel. Porm, o exemplo da Union Airways possua apenas cinco variveis de deciso. Ao contrrio, o modelo da United Airlines para os mesmos locais tem mais de 20.000 variveis de deciso! A diferena que uma aplicao real deve considerar um nmero incontvel de detalhes importantes que podem ser ignorados em um exemplo didtico. Por exemplo, o modelo da United Airlines leva em considerao coisas como os horrios de refeies e de descanso para cada funcionrio alocado, diferenas na extenso dos turnos para diferentes funcionrios e dias de folga em uma escala semanal, entre outros detalhes de uma escala desse gnero. Relatou-se que a aplicao da programao linear havia tido "enorme impacto no somente sobre a gerncia e os membros do grupo de planejamento de mo-de-obra da United, como tambm para muitos outros que jamais haviam ouvido falar de cincias da administrao (PO) ou de modelagem matemtica". Ela rendeu entusiasmadas resenhas da alta direo, gerentes operacionais e funcionrios afetados tambm. Por exemplo, um gerente descreveu o sistema de escala de trabalhadores como:
"Mgico, ... assim que o telefone comeava a tocar, aparecia algum para atender e, bastava voc pensar que j estava havendo excesso de pessoal em determinado perodo, que as pessoas comeavam a voltar para casa." 10

Em termos mais tangveis, atribuiu-se a essa aplicao uma economia anual de mais de US$ 6 milhes para a United Airlines apenas em termos de custos com salrios diretos e benefcios. Outras vantagens foram melhor atendimento aos clientes e menor necessidade de apoio ao pessoal. Aps algumas atualizaes no incio dos anos 90, o sistema continuava a gerar benefcios similares. Um fator que ajudou a tomar essa aplicao de programao linear to bem-sucedida foi "o apoio dos gerentes operacionais e seus subordinados". Essa foi uma lio aprendida por experincia, pois, inicialmente, a equipe de PO falhou no estabelecimento de boa linha de comunicaes com os gerentes operacionais que, ento, comearam a resistir s recomendaes iniciais da equipe de PO. Os lderes da equipe descreveram seu erro como se segue:
"A regra essencial para ganhar a confiana e o respeito dos gerentes operacionais e do pessoal de apoio - fazer que eles se envolvessem no processo de desenvolvimento - foi violada." 11

A equipe trabalhou ento muito mais prxima aos gerentes operacionais tados proeminentes.

com resul-

Planejando o Fornecimento, a Distribuio e a Comercializao na Citgo Petroleum Corporation 12


A CITGO PETROLEUM CORPORATION especializou-se em refinar e comercializar derivados de petrleo. Em meados dos anos 80, a empresa tinha um volume de vendas anual de vrios bilhes de dlares, posicionando-se entre as 150 maiores indstrias dos Estados Unidos. Aps vrios anos de perdas financeiras, a Citgo foi adquirida em 1983 pela Southland Corporation, a proprietria da rede de lojas de convenincia 7-Eleven (cujas vendas incluam combustveis automotivos de qualidade). Para contornar os prejuzos acumulados pela

10 11

12

Ibid., p. 49. lbid., p. 47. Ver as referncias citadas na nota de rodap 4 da p. 11.

62

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Citgo, a Southland criou uma fora-tarefa composta por pessoal da Southland e da Citgo, alm de consultores independentes. Um eminente consultor na rea de PO foi indicado como diretor dessa fora-tarefa reportando-se diretamente tanto ao presidente da Citgo como ao presidente do conselho de administrao da Southland. Durante os anos de 1984 e 1985, essa fora-tarefa aplicou vrias tcnicas de PO (bem como tecnologias de sistemas de informao) na corporao. Foi relatado que essas aplicaes de PO "mudaram a forma como a Citgo realizava negcios, resultando em aumento de lucro anual de cerca de US$ 70 milhes." 13 As duas aplicaes mais importantes eram sistemas de programao linear que forneciam gerncia poderoso apoio ao planejamento. Uma delas, chamada sistema LP de refinaria levou a grandes melhorias na produo da refinaria, redues substanciais no custo de mo-de-obra, alm de outras redues de custo importantes. Esse sistema contribuiu com aproximadamente US$ 50 milhes no aumento de lucros em 1985. (Ver o final da Seo 2.4 para uma discusso do papel-chave que a validao de modelos desempenhou no desenvolvimento desse sistema.) Entretanto, nos concentraremos no outro sistema de programao linear, denominado sistema de modelagem de fornecimento, distribuio e comercializao (ou, simplesmente, sistema SDM). O sistema SDM particularmente interessante, pois se baseia em um tipo especial de modelo de programao linear que usa redes, da mesma forma que o modelo do exemplo da Cia. Distribuidora Ilimitada apresentado no final da Seo 3.4. O modelo para o sistema SDM fornece uma representao de toda a rede de distribuio e comercializao da Citgo. Na poca que a fora-tarefa conduziu esse estudo de PO, a Citgo possua ou alugava 36 terminais de armazenamento de produtos que eram abastecidos por cinco terminais centrais de distribuio por uma rede de distribuio de oleodutos, caminhes e navios-tanque alm de barcaas. A Citgo tambm vendia produtos de mais de 350 terminais de intercmbio que eram compartilhados com outros comercializadores de petrleo. Para suprir seus clientes, o produto poderia ser adquirido pela Citgo de sua refinaria em Lake Charles, LA, ou de compras vista em um dos cinco principais mercados vista, de troca de mercadorias/produtos e comrcio com outras refinarias. Essas decises de compra de mercadorias eram feitas diariamente. Porm, o tempo entre o momento que a deciso era tomada e a chegada do produto nos clientes desejados poderia chegar at 11 semanas. Portanto, o modelo de programao linear usou um horizonte de planejamento de 11 semanas. O sistema SDM usado para coordenar o fornecimento, a distribuio e a comercializao de cada um dos principais produtos da Citgo (inicialmente, quatro qualidades de combustvel automotor e diesel n~ 2) por todos os Estados Unidos. A gerncia emprega o sistema para tomar decises como onde vender, que preo cobrar, onde comprar ou comercializar, quanto comprar ou comercializar, quanto manter em estoque e quanto despachar por meio de cada meio de transporte. A programao linear orienta essas decises e quando implement-las de modo a minimizar o custo total ou maximizar o lucro total. O sistema SDM tambm usado em sesses "o-que-se", no qual a gerncia faz perguntas do tipo "o que aconteceria se ..." sobre circunstncias que diferem daquelas supostas no modelo inicial. O modelo de programao linear no sistema SDM possui a mesma forma do modelo do exemplo da Cia. Distribuidora Ilimitada apresentado no final da Seo 3.4. De fato, ambos os modelos se encaixam em uma importante categoria particular de problema de programao linear chamada problema do fluxo de custo mnimo, que ser discutido na Seo 9.6. As principais restries funcionais para tais modelos so restries de igualdade, em que cada uma delas prescreve qual deve ser o fluxo lquido de mercadorias partindo de um dado local. O modelo da Cia. Distribuidora possui apenas sete variveis de deciso e cinco restries de igualdade. Contrastando com isso, o modelo da Citgo possui, para cada produto principal, cerca de 15.000 variveis de deciso e 3.000 restries de igualdade! No final da Seo 2.1, descrevemos o importante papel que a coleta e verificao de dados desempenharam no desenvolvimento dos modelos na Citgo. Com modelos dessas propores, preciso coletar uma quantidade enorme de dados para determinar todos os valores
13

Ver a p. 4 da segunda referncia citada na nota de rodap 4 da p. 11.

3.5

ALGUNS ESTUDOS DE CASO CLSSICOS

63

de parmetros. Foi desenvolvido, ento, um sistema de gerenciamento de bancos de dados de ltima gerao para esse fim. Antes de usar os dados, foi empregado um programa pr-carregador para buscar erros e inconsistncias nos referidos dados. A importncia de se agir dessa forma tomou-se evidente para a fora-tarefa quando, conforme mencionado na Seo 2.1, a primeira execuo do programa pr-carregador gerou uma documentao de mensagens de erro em papel com a espessura de 1 polegada! Ficava claro que o processo de coleta de dados precisava ser completamente depurado para garantir a validade dos modelos. O sistema de programao linear SOM melhorou em muito a eficincia das operaes de fornecimento, distribuio e comercializao da Citgo, permitindo uma reduo enorme nos estoques de produtos sem cair os nveis de servio. Durante o primeiro ano, o valor dos derivados de petrleo mantidos em estoque foi reduzido em US$ 116,5 milhes. Essa grande reduo no capital empatado em estoques resultou em uma economia de cerca de US$ 14 milhes anuais em despesas de juros com emprstimos de capital, aumentando os lucros anuais da Citgo em US$ 14 milhes. Com aperfeioamentos nas decises de compra, preos e coordenao, foi estimado um acrscimo de pelo menos US$ 2,5 milhes anuais aos lucros. Muitos benefcios indiretos tambm so atribudos a essa aplicao da programao linear, entre os quais, melhoria nos dados e nas estratgias de preos e eliminao de terminais de produtos desnecessrios, bem como melhor comunicao e coordenao entre os grupos de fornecimento, distribuio, comercializao e refinaria. Alguns dos fatores que contriburam para o sucesso desse estudo de PO foram os mesmos dos dois estudos de caso anteriores. Como para a Ponderosa Industrial, um dos fatores foi a gerao de relatrios na linguagem comercial usada pelos gerentes para realmente atender suas necessidades. Esses relatrios gerados so planejados para facilitar a compreenso e o uso por parte dos gerentes e eles se destinam a resolver questes que so importantes para esse grupo de deciso. Assim com na Ponderosa, outro fator foi habilitar a gerncia a responder rapidamente dinmica do mercado atravs do uso intensivo dos sistemas de programao linear em sesses "o-que-se". Como acontece em diversas aplicaes de programao linear, a anlise de ps-otimalidade provou ser mais importante que a soluo tima inicialmente obtida para uma verso do modelo. Tanto quanto na aplicao da United Airlines, outro fator preponderante foi o apoio entusistico dos gerentes operacionais durante o desenvolvimento e a implementao desse sistema de programao linear. Porm, o fator mais importante foi o apoio incondicional fora-tarefa por parte da alta direo, chegando ao CEO e ao presidente do conselho da empresa co-irm da Citgo, a Southland Corporation. Conforme anteriormente mencionado, o diretor da fora-tarefa (um eminente consultor da rea de PO) reportava-se diretamente tanto ao presidente da Citgo quanto ao presidente do conselho de administrao da Southland. Essa retaguarda por parte da alta direo inclua amplo suporte financeiro e organizacional. O suporte organizacional assumia uma srie de formas. Um exemplo foi a criao e o preenchimento do cargo de vice-presidente snior de coordenao de operaes para avaliar e coordenar recomendaes baseadas em modelos que ultrapassavam as fronteiras da organizao. Ao discutir esse sistema de programao linear, bem como outras aplicaes de PO implementadas pela fora-tarefa, os membros da equipe descreviam o suporte financeiro por parte da alta direo como se segue:
O custo total do sistema implantado, entre US$ 20 milhes e US$ 30 milhes, foi o grande obstculo do projeto. Entretanto, em virtude da exploso de informaes no mercado petrolfero, a alta direo se deu conta que inmeros sistemas de informao eram essenciais para coletar, armazenar e analisar dados. O custo incremental de se adicionar tecnologias de cincias da administrao (PO) a esses computadores e sistemas era pequeno, na realidade muito pequeno em vista dos enormes benefcios gerados. 14

14

Ibid. p. 21.

64

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

FORMULANDO E SOLUCIONANDO MODELOS DE PROGRAMAO LINEAR EM UMA PLANILHA


Pacotes de software de planilhas, como o Excel, so uma ferramenta popular para analisar e resolver pequenos problemas de programao linear. As principais caractersticas de um modelo de programao linear, incluindo todos seus parmetros, podem facilmente ser introduzidas em uma planilha. Porm, podem fazer muito mais do que simplesmente exibir dados. Se incluirmos algumas informaes adicionais a planilha pode ser usada para analisar rapidamente solues em potencial. Por exemplo, poder-se-ia verificar se uma soluo em potencial vivel e que valor Z (lucro ou custo) ela alcana. Grande parte do poder das planilhas reside em sua habilidade de revelar imediatamente os resultados de quaisquer alteraes feitas na soluo. Alm disso, o Excel Solver pode aplicar rapidamente o mtodo simplex para encontrar uma soluo tima para o modelo. Descreveremos como isso feito na ltima parte desta seo. Para ilustrar esse processo de formulao e soluo de modelos de programao linear em uma planilha, retomaremos ao exemplo da Wyndor introduzido na Seo 3.1.

Formulando o Modelo em uma Planilha


A Figura 3.14 ilustra o problema da Wyndor transferindo os dados da Tabela 3.1 para uma planilha. (As Colunas E e F so reservadas para futuras entradas descritas a seguir.) Chamaremos clulas de dados as clulas contendo dados. Essas clulas esto indicadas com um fundo cinza para distingui-las de outras clulas da planilha. 15 Veremos posteriormente que a planilha fica mais fcil de ser interpretada usando-se nomes de faixas. Um nome de faixa um nome descritivo dado a um bloco de clulas que identifica imediatamente o que se encontra l. Por essa razo, as clulas de dados do problema Wyndor recebem os nomes de LucroUnitario (C4:D4), HorasUtilizadasPorLoteProduzido (C7:D9) e HorasDisponiveis (G7:G9). Observe que no permitido nenhum espao entre as palavras contidas em um nome de faixa e, portanto, para fins de distino cada uma destas palavras comea com letra maiscula. Embora opcional, a faixa de clulas s quais esto sendo atribudas cada nome de faixa podem ser especificadas entre parnteses aps o nome. Por exemplo, a faixa C7:D9 a forma abreviada de se dizer no Excelfaixa de C7 a D9; isto , o bloco inteiro de clulas nas colunas C ou D e nas linhas 7, 8 ou 9. Para introduzir um nome de faixa, primeiramente a faixa de clulas, depois selecione Nome\Definir do menu Inserir e digite um nome de faixa (ou clique na caixa de nome esquerda da barra de frmulas acima da planilha e digite um nome). Trs questes precisam ser respondidas para se iniciar o processo de emprego de planilhas para formular um modelo de programao linear para o problema.

FIGURA 3.14

A planilha inicial para o problema da Wyndor aps transferncia dos dados da Tabela 3.1 para as clulas de dados.

2 3 4 5 6 7 8 9

Portas
Lucro or lote

Janelas

Fbrica 1 Fbrica 2 Fbrica 3

15

Podem-se acrescentar bordas e sombreamento pelos botes de bordas e de cores na barra de ferramentas de formatao ou ento clicando em Clulas do menu Formatar e depois selecionando-se a guia Bordas e/ou Padres.

3.6

FORMULANDO E SOLUCIONANDO MODELOS DE PROGRAMAO ...

65

1. Quais so as decises a serem tomadas? Para o presente problema, as decises necessrias so as taxas de produo (nmero de lotes produzidos por semana) para os dois novos produtos. 2. Quais so as restries sobre essas decises? As restries aqui so que o nmero de horas de tempo de produo usado semanalmente pelos dois produtos na respectiva fbrica no pode ultrapassar o nmero de horas disponveis. 3. Qual a medida de desempenho global para essas decises? A medida de desempenho global da Wyndor o lucro total semanal dos dois produtos, de forma que o objetivo seja maximizar essa quantidade. A Figura 3.15 ilustra como essas respostas podem ser incorporadas na planilha. Baseado na primeira resposta, as taxas de produo dos dois produtos so colocadas na clulas C12 e D12 para posicion-las nas colunas para esses produtos logo abaixo das clulas de dados. Como no sabemos ainda quanto devem ser essas taxas de produo, por enquanto elas so simplesmente introduzidas com valor zero. (Na verdade, poder-se-ia introduzir qualquer soluo experimental, embora taxas de produo negativas devessem ser excludas j que so impossveis.) Posteriormente, esses nmeros sero alterados enquanto se procura o melhor mix de taxas de produo. Portanto, essas clulas contendo as decises a serem tomadas so denominadas clulas variveis (ou clulas ajustveis). Para destacar essas clulas variveis, elas so sombreadas e possuem uma borda. Nos arquivos de planilhas contidos no Courseware de PO, as clulas variveis aparecem no monitor com uma cor amarela-brilhante.Atribui-se s clulas variveis o nome de faixa LotesProduzidos (C12:Dl2). Utilizando a resposta pergunta n~ 2, introduz-se o nmero total de horas de produo usadas semanalmente pelos dois produtos nas respectivas fbricas nas clulas E7, E8 e E9, imediatamente direita das clulas de dados correspondentes. As equaes em Excel para essas trs clulas so: E7 E8 E9
= = =

C7*C12 C8*C12 C9*C12

+ D7*D12 + D8*D12 + D9*D12

em que cada asterisco representa a operao de multiplicao. Visto que cada uma dessas clulas fornece sada que depende das clulas variveis (C12 e Dl2), elas so chamadas de clulas de sada. Observe que cada uma das equaes para as clulas de sada envolve a soma de dois produtos. H uma funo do Excel denominada SUMPRODUTCT que somar o produto de cada um dos termos individuais nas duas faixas de clulas diversas quando os dois intervalos possuem o mesmo nmero de linhas e de colunas. Cada produto que est sendo somado o produto de um termo na primeira faixa e o termo na posio correspondente na segunda faixa. Consideremos, por exemplo, os dois intervalos, C7:D7 e C12:D12, de modo que intervalo tenha uma linha e duas colunas. Nesse caso, SUMPRODUCT (C7:D7 e C12:D12) pega cada um dos termos individuais no intervalo C7:D7, multiplica-os pelo termo correspondente no intervalo C12:D12 e depois soma esses produtos individuais conforme ilustrado na primeira

FIGURA 3.15 .l planilha completa para o ;:roblema da Wyndor com ..a soluo experimental noal (ambas com taxa de ::roduo igual a zero) n:.-oduzida nas clulas aar.veis (Cl 2 e Dl 2).

O Problema de Mix de Produtos da W


2
3 Portas Janelas

ss

+-=Lu=c~ro~p=o~r~L~ot=e_,~~~il!W ... - - - - + - - - - + - - - - - - - 1

1--5-=---f---+-------+------.l

---6-~---r--~~~:~~~~:~~:~~--V""' """"'os
9
1 11

' Lote e'""l' u1mr"'I ~ '


1

: _Horas

'

_,.

_ _

H_o_ra_s

Fbrica 3

f::;':

'

12

Lotes Produzidos

66

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

equao anterior. Usando-se o nome de faixa LotesProduzidos (Cl2:Dl2) a frmula se toma SUMPRODUCT (C7:D7, LotesProduzidos). Embora opcionais com equaes curtas como essas, essa funo especialmente til como um atalho para introduo de equaes mais longas. A seguir so introduzidos sinais :5 nas clulas F7, F8 e F9 para indicar que cada valor total sua esquerda no pode exceder o nmero correspondente na coluna G. A planilha ainda permitir que sejam introduzidas solues experimentais que violem os sinais :5. Porm, esses sinais de :5 servem como um lembrete que tais solues experimentais precisam ser rejeitadas caso nenhuma alterao seja feita nos nmeros da coluna G. Finalmente, j que a resposta terceira pergunta que a medida de desempenho global o lucro total dos dois produtos, esse lucro (semanal) introduzido na clula G 12. De forma muito parecida com os valores da coluna E, ela a soma dos produtos. Gl2 = SUMPRODUCT (C4:D4, Cl2:Dl2) Utilizando-se os nomes de faixa LucroTotal (G 12), LucroPorLote (C4:D4) e LotesProduzidos (Cl2:D12), essa equao fica LucroTotal = SUMPRODUCT (LucroPorLote, LotesProduzidos) Esse um bom exemplo da vantagem de se usar nomes de faixa para tomar mais fcil a interpretao de uma equao. Em vez de se fazer referncia planilha para ver o que h nas clulas Gl2, C4:D4 e Cl2:Dl2, os nomes de faixa revelam imediatamente o que a equao est fazendo. LucroTotal (Gl2) um tipo especial de clula de sada. a clula em particular que est sendo alvo para se tomar o maior possvel ao tomarem-se decises referentes a taxas de produo. Portanto, LucroTotal (G 12) chamada clula de destino (ou clula objetivo). A clula de destino apresenta um sombreamento mais escuro que as clulas variveis e distinguida ainda mais por ter uma borda mais grossa. Nos arquivos de planilhas contidos no Courseware de PO, essa clula aparece no monitor com uma cor laranja. A parte inferior da Figura 3.16 sintetiza todas as frmulas necessrias que precisam ser introduzidas na coluna Horas Utilizadas e na clula Lucro Total. Tambm apresentado um resumo dos nomes de faixa (em ordem alfabtica) e os endereos de clulas correspondentes. Isso completa a formulao do modelo de planilha para o problema da Wyndor. Com essa formulao fica fcil analisar qualquer soluo experimental para as taxas de produo. Cada vez que as taxas de produo so introduzidas nas clulas Cl2 e Dl2, o Excel calcula imediatamente as clulas de sada para as horas utilizadas e o lucro total. Porm, no necessrio usar o mtodo de tentativa e erro. Devemos descrever a seguir como o Excel Solver pode ser usado para encontrar-se rapidamente uma soluo.

Utilizando o Excel Solver para Solucionar o Modelo


O Excel inclui uma ferramenta chamada Solver que usa o mtodo simplex para encontrar uma soluo tima. Uma verso mais poderosa do Solver, chamada Premium Solver for Education, tambm pode ser encontrada no Courseware de PO. Para acessar o Solver pela primeira vez, voc precisa instal-lo indo ao menu de Add-in do Excel e acrescentando o Solver, aps o qual voc poder acess-lo no menu Ferramentas. A princpio, introduzimos uma soluo experimental arbitrria na Figura 3.16 colocando zeros nas clulas variveis. O Solver as modificar para valores timos aps solucionar o problema. Esse procedimento iniciado selecionando-se Solver no menu Ferramentas. A caixa de dilogo do Solver mostrada na Figura 3 .17. Antes de o Solver poder iniciar seu trabalho, ele precisa saber exatamente onde cada componente do modelo se localiza na planilha. A caixa de dilogo do Solver utilizada para se introduzir essas informaes. Voc tem a opo de inserir os nomes de faixa, digitando-os

3.6
A
1 2

FORMULANDO E SOLUCIONANDO MODELOS DE PROGRAMAO ...

67

e
Portas US$ 3.0QO

O Problema de Mix de Produtos da Wvndor GI :tss Co.


1 1

3
4 Lucro oor Lote

5 6
7 8 9 1o 11 12 Fbrica 1 Fbrica 2 Fbrica 3

Horas 1 ' Horas Utilizadas por Lote Produzido 1 Utilizadas o o 1 1 o 2 o 1 3 2 o

Janelas US$ 5.000

$ $ $

Horas Disponveis 4 12 18 Lucro Total US$ O

T
1

Portas Lotes Produzidos

Janelas

o
Clulas C12:D12 G7:G9 E7:E9 C7:D9 C4:D4 G12

o
E
5 6 7 8 9

Nome da Faixa de Clulas LotesProduzidos HorasDisponiveis HorasUtilizadas HorasUtilizadasPorLoteProduzido LucroPorLote LucroTotal

Horas Utilizadas =SUMPRODUCT C7:D7 LotesProduzidos =SUMPRODUCT C8:D8 LotesProduzidos =SUMPRODUCT(C9:D9,LotesProduzidos)

G
11 12 Lucro Total =SUMPRODUCT!LucroPorLote LotesProduzidos)

:=

FIGURA 3.16 : "lodelo de planilha para o problema da Wyndor, inclusive as frmulas para a clula de destino Lucro Total (Gl 2) e as u as de sada da coluna E, na qual o objetivo maximizar a clula de destino.

nos endereos de clulas ou, ento, clicando sobre as clulas da planilha. 16 A Figura 3.17 mostra o resultado de se utilizar a primeira opo, de forma que LucroTotal (e no 012) foi introduzido para a clula de destino e LotesProduzidos (e no o intervalo C12:D12) foi introduzido para as clulas variveis. J que o objetivo maximizar a clula de destino, Max tambm foi selecionado.

FlGURA 3.17 :aixa de dilogo do Solver strada, a seguir, especifica as clulas da Figura 3.16 ~:e a clula de destino e a := _. a varivel. Ela tambm ::: ca que a clula de - no deve ser maximizada.

Solver Parameters
Set Target Cell: LucroTotal .~

([ Solve J)

Equal To: Max r By Changing Cells:

O Min O Value of:


__ _
1~

lo

[ Close

f IL.otesProduzidos
,.... Subject to the Constraints: - -

r~fll
_ l[:
J

[~O-p-ti-on-s~J

L 1., l ! : :_ _ _ _]

... w

. Delete .

~:ge: l~

[ResetAll) [ Help ]

16

Se voc selecionar clulas clicando-as, ento, elas aparecero inicialmente na caixa de dilogo com seus endereos de clulas e com smbolos de $ (por exemplo, $C$9:$D$9). Voc pode ignorar os cifres. No final o Solver substituir tanto os endereos de clulas como os cifres pelo nome de faixa correspondente (caso um nome de faixa tenha sido definido para os endereos de clulas dados), porm somente aps adicionar uma restrio ou ento fechar e reabrir a caixa de dilogo do Solver.

68

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

FIGURA 3.18 A caixa de dilogo Add Constraint aps introduzir o conjunto de restries, HorasUtilizadas (E7:E9) ::; HorasDisponiveis (G7:G9), especificando que as clulas E7, E8 e E9 da Figura 3.16 devem ser, respectivamente, menores que ou iguais s clulas G7, G8 e G9.

CeU Reference:

I~ f <==

Lil
[ Hel

:J

A seguir, precisamos especificar as clulas contendo as restries funcionais. Isso feito clicando-se no boto Add da caixa de dilogo do Solver que, por sua vez, acionar a caixa de dilogo Add Constraint mostrada na Figura 3.18. Os sinais::; nas clulas F7, F8 e F9 da Figura 3.16 so um lembrete de que as clulas em HorasUtilizadas (E7:E9) tambm precisam ser menores que ou iguais s clulas correspondentes em HorasDisponiveis (G7:G9). Essas restries so especificadas para o Solver introduzindo-se HorasUtilizadas (ou E7:E9) no lado esquerdo da caixa de dilogo Add Constraint e HorasUtilizadas (ou G7:G9) do lado direito. Para o sinal existente entre esses dois lados, h um menu no qual se pode escolher entre ::; (menor que ou igual a), = ou 2:: (maior que ou igual a), de forma que ::; foi escolhido. Essa opo necessria, embora os sinais ::; tivessem sido introduzidos previamente na coluna F da planilha, pois o Solver usa apenas as restries funcionais que so especificadas pela caixa de dilogo Add Constraint. Caso houvessem mais restries funcionais a serem acrescentadas, clicaramos em Add para acionar uma nova caixa de dilogo Add Constraint. No entanto, como no existem mais no presente exemplo, o prximo passo clicar em OK para retornar caixa de dilogo Solver. A caixa de dilogo Solver agora sintetiza o modelo completo (ver Figura 3.19) em termos da planilha da Figura 3.16. Entretanto, antes de solicitarmos ao Solver para resolver o modelo, outro passo adicional deve ser realizado. Clicar sobre o boto Options aciona a caixa de dilogo mostrada na Figura 3.20. Essa caixa de dilogo permite que especifiquemos uma srie de opes sobre como o problema ser resolvido. As mais importantes delas so as opes Assume Linear Model e Assume Non-Negative. Certifique-se de que ambas as opes estejam marcadas como indicado na figura. Isso informa ao Solver que se trata de um problema de programao linear e que so necessrias restries de no-negatividade para que as clulas variveis rejeitem as taxas negativas de produo. 17 No que tange s demais opes, aceitar os valores-padro expostos na figura normalmente adequado para problemas pequenos. Ao clicarmos sobre o boto OK, retornamos para a caixa de dilogo Solver. Agora voc est pronto para clicar sobre o Solve na caixa de dilogo Solver, que disparar o processo de resoluo do problema. Aps alguns segundos (no caso de um problema pequeno), o Solver indicar o resultado. Tipicamente ele indicar que encontrou uma soluo tima conforme especificado na caixa de dilogo Solver Results da Figura 3.21. Se o modelo no possuir solues viveis ou nenhuma soluo tima, a caixa de dilogo indicar isso afirmando que "O Solver no conseguiu encontrar uma soluo vivel" ou que "Os valores Set Cell no convergem". A caixa de dilogo tambm apresenta a opo de gerar vrios relatrios. Um deles (o Relatrio de Sensibilidade) ser discutido posteriormente nas Sees 4.7 e 6.8.

17

Em verses mais antigas do Excel, anteriores s do Excel 97, a opo Assume Non-Negative no existia, de modo que as restries de no-negatividade tinham de ser acrescentadas por meio da caixa de dilogo Add Constraint. Nem todo modelo de programao linear apresenta restries de no-negatividade, porm quase todos as possuem. Para aqueles modelos incomuns nos quais algumas das clulas variveis tm restries de no-negatividade mas outras no, essas restries devem ser acrescentadas usando-se a caixa de dilogo Add Constraint em vez de se marcar a opo Assume Non-Negative.

3.6

FORMULANDO E SOLUCIONANDO MODELOS DE

69

Set Target Cell:

Equal To: Max O Mi n By Cha04Jing: Cells:

ILucroTotail

1 LotesProduzidos
Suhject to the Coastraints:
FIGURA 3.19 ~ caixa de dilogo do Solver aps ser especificado todo o rnodelo em termos de planilha.

[ oetions 1
[ResetAlll

f H!P

Max Time: lterations: Precision: Tolerance: Convergence:


RGURA 3.20 "' caixa e dilogo Solver Options aps a marcao das :ipes Assume Linear Model .: Assume Non-Negative para ndicar que desejamos ~lver um modelo de :irogramao que possui -estries no-negativas .

[iQQJ

seconds

l 100.
10.000001
1a..=.5_ _

___.l 3
He1p

10.0001

lif Assume linear Model lif Assume Non-Negative


rEstimate

D Use Auto mati e Sca1i ng D Show lteration Resulta


ear-ch
1
1

e Tangent
Quadratic

Der-ivativesl

e Forward
Central

e Newton
Conj ugate

Solver found a solution. 1\11 constraints and opti maHty conditions are satisfied.

RGURA 3.21 .a. caixa de dilogo Solver ~lts indicando que foi a'leontrada uma soluo :ema.

"1 Keep Solver solution O Restoreriginal Values


Cancel )

Reports Ans\Yer SeMitivity Li mits Hei p

1 Save Sceaario_ .. J [

Aps resolver o modelo, o Solver substitui os valores nas clulas variveis pelos valores timos, conforme indicado na Figura 3.22. Portanto, a soluo tima produzir dois lotes de portas por semana e seis de janelas semanalmente, da mesma forma que foi descoberta pelo mtodo grfico na Seo 3.1. A planilha tambm indica o valor correspondente na clula de destino (um lucro total de US$ 36.000 por semana), bem como os valores nas clulas de sada HorasUtilizadas(E7:E9).

70

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

A
1 2 3 4 5 6 7 8 9 1o 11 12
-

e
Portas US$ 3.000

D
1

O Problema de Mix de Produtos da Wvndor


1

Gl~ss

Co.

Lucro QOr Lote

Janelas US$ 5.000

Fbrica 1 Fbrica 2 Fbrica 3

Horas . Horas Utilizadas por Lote Produzido Utilizadas 1 2 o o 12 1 2 3 2 18

$; $; $;

T
Lotes Produzidos 1 Portas 2 Janelas 6

Horas Disponveis 4 12 18

Lucro Total US$ 36.000

Solver Parameters - ,
Set Target Cel 1: lrotal Profit 1~ () Equal To: }Max O Min By Changi ng Cells:
1Bate hes Prod uced

5 6 7 8 9

E Horas Utilizadas =SUMPRODUCT(C7:D7,LotesProduzidos)=SUMPRODUCT<C8:D8 LotesProduzidos) =SUMPRODUCT(C9:D9,LotesProduzidos)

Subject to the Constni nts:

G 11 Lucro Total 1 2 =SUMPRODUCT(LucroPorLote LotesProduzidos\

1HoursUsed <= HoursAvai lable


Nome da Faixa de Clulas LotesProduzidos HorasDisponiveis Horas Utilizadas HorasUtilizadasPorLoteProduzido LucroPorLote LucroTotal Clulas C12:D12 G7:G9 E7:E9 C7:D9 C4:D4 G12

51' Assume Linear Model 51' Assume Non- Negative

FIGURA 3.22 A planilha obtida aps o problema da Wyndor ter sido resolvido.

Neste ponto, talvez voc queira verificar o que aconteceria soluo tima caso qualquer um dos valores nas clulas de dados fossem alterados para outros valores possveis. Isso fcil de se fazer, pois o Solver salva todos os endereos referentes clula de destino, clulas variveis, restries e assim por diante, quando salvamos o arquivo. Basta fazer as alteraes desejadas nas clulas de dados e depois clicar novamente em Solver na caixa de dilogo Solver. (As Sees 4.7 e 6.8 se concentraro nesse tipo de anlise de sensibilidade, incluindo como usar o Relatrio de Sensibilidade do Solver para acelerar esse tipo de anlise "o-que-se".) Para ajud-lo a experimentar essas mudanas, o Courseware de PO inclui arquivos Excel para este captulo (e para outros) que fornecem uma formulao e soluo completas dos exemplos aqui apresentados (o problema da Wyndor e aqueles da Seo 3.4) em um formato de planilha. Ns o encorajamos a "brincar" com esses exemplos para verificar o que acontece com dados diferentes, solues diferentes e assim por diante. Talvez voc ache essas planilhas teis como gabaritos para solucionar seus problemas. Alm disso, sugerimos que voc use os arquivos e Excel deste captulo para dar uma olhada cuidadosa nas formulaes de planilhas para alguns dos exemplos na Seo 3.4. Isso demonstrar como formular modelos de programao linear em uma planilha que so maiores e mais complexos do que o problema da Wyndor. Veremos outros exemplos de como formular e solucionar vrios tipos de modelos de PO usando planilhas em captulos mais frente. Os captulos suplementares contidos no CD-ROM tambm incluem um captulo completo (Captulo 21) que dedicado arte de

3.7

FORMULANDO MODELOS DE PROGRAMAO LINEAR DE GRANDES...

71

modelar em planilhas. Este captulo descreve detalhadamente tanto o processo geral quanto as diretrizes bsicas para construir um modelo de planilha. Ele tambm apresenta algumas tcnicas para depurao de tais modelos.

,,,1.7

FORMULANDO MODELOS DE PROGRAMAO LINEAR DE GRANDES DIMENSES


Os modelos de programao linear se apresentam em diversos tamanhos. Para os exemplos das Sees 3.1 e 3.4, os tamanhos dos modelos variam de trs restries funcionais e duas variveis de deciso (para os casos da Wyndor e de radioterapia) at 17 restries funcionais e 12 variveis de deciso (para o problema da Companhia Save-lt). O ltimo caso, em princpio, parece ser um problema de dimenses maiores. Afinal, ele leva um tempo substancial para escrever um modelo desse tamanho. Porm, contrastando com isso, os modelos para os estudos de caso clssicos apresentados na Seo 3.5 so muitssimo maiores. Por exemplo, os modelos do estudo de caso da Citgo tm, tipicamente, cerca de 3.000 restries funcionais e 15.000 variveis de deciso. O tamanho do modelo da Citgo no de todo incomum. Os modelos de programao linear na vida prtica chegam a centenas ou a milhares de restries funcionais. Na realidade, eles podem, ocasionalmente, chegar at a milhes de restries funcionais. O nmero de variveis de deciso freqentemente so at mesmo maiores que o nmero de restries funcionais e, ocasionalmente, se encaixaro bem na casa dos milhes. Formular modelos assim to gigantescos pode ser uma tarefa desanimadora. At mesmo um modelo de "tamanho mdio" com cerca de mil restries funcionais e de variveis de deciso possui mais de um milho de parmetros (inclusive o milho de coeficientes nessas restries). Simplesmente no prtico escrever a formulao algbrica ou at preencher os parmetros em uma planilha, para um modelo desses. Portanto, como esses modelos to grandes so formulados na prtica? Requer o uso de uma linguagem de modelagem.

Linguagens de Modelagem
Uma linguagem de modelagem matemtica um software que foi projetado especificamente para formular, de forma eficiente, modelos matemticos grandes, entre os quais os modelos de programao linear. Mesmo com milhares de restries funcionais, tipicamente elas so relativamente de poucos tipos e seguem o mesmo padro. De modo semelhante, as variveis de deciso cairo em um nmero pequeno de categorias. Portanto, usando-se grandes blocos de dados em bancos de dados, uma linguagem de modelagem vai, ao mesmo tempo, formular todas as restries do mesmo tipo tratando simultaneamente das variveis de cada tipo. Ilustraremos esse processo em breve. Alm de formular eficientemente modelos de grandes propores, uma linguagem de modelagem agilizar uma srie de tarefas de gerenciamento de modelos como acesso a dados, transformao de dados em parmetros de modelo, modificao de modelos sempre que desejado e anlise de solues a partir do modelo. Tambm poder produzir relatrios sintticos no vernculo dos tomadores de deciso, bem como documentar o contedo do modelo. Foram desenvolvidas vrias linguagens de modelagem excelentes ao longo das ltimas dcadas. Entre elas temos AMPL, MPL, GAMS e Lingo. A verso educacional de uma delas, MPL (abreviatura de Mathematical Programming Language, ou seja, Linguagem de Programao Matemtica), fornecida no CD-ROM, juntamente com grande quantidade de material tutorial. Ficamos lisonjeados em poder dar verso educacional mais recente (verso 5.0) que foi lanada pouco antes de este livro ir para a fase de produo. Como verses subseqentes sempre so lanadas, a verso educacional tambm poder ser baixada do site maximal.software.com. O MPL um produto da Maximal Software, Inc. Um de seus recursos o amplo suporte ao Excel. Isso inclui importar e/ou exportar intervalos de clulas de arquivos Excel do MPL. Tambm oferecido

72

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

suporte total para a macrolinguagem VBA do Excel atravs do OptiMax 2000. (A verso acadmica do OptiMax 2000 se encontra no CD-ROM tambm.) Esse produto permite ao usurio integrar totalmente modelos MPL no Excel e solucion-los por meio de qualquer um dos poderosos solucionadores que o MPL suporta, entre os quais o CPLEX (descrito na Seo 4.8). O Lingo um produto da Lindo Systems, Inc., que tambm comercializa um otimizador tradicional chamado Lindo (descrito no Captulo 4) e um otimizador agregvel a planilhas denominado What's Best, que desenhado para grandes problemas industriais. O CD-ROM inclui uma verso educacional do Lingo, Lindo e do What's Best. A verso experimental mais recente de todos esses trs pacotes de software tambm pode ser baixada do site www.lindo.com. Assim como o MPL, o Lingo uma poderosa linguagem de modelagem genrica. Um recurso notvel do Lingo sua enorme flexibilidade em lidar com ampla gama de problemas de PO, alm daqueles de programao linear. Por exemplo, ao tratar problemas de programao no-linear complexos, ele, assim como o What's Best, contm um otimizador global que vai encontrar uma soluo tima global. (Trataremos mais a esse respeito na Seo 12.10.) O CD-ROM inclui formulaes MPL, Lingo, Lindo e What's Best para essencialmente todos os exemplos deste livro para os quais essas linguagens de modelagem e otimizacfores se aplicam. Vejamos agora um exemplo simplificado que ilustra como pode surgir um modelo de programao linear muito grande.
Exemplo de Problema com um Modelo Enorme

A direo da WORLDWIDE CORPORATION precisa resolver um problema de mix de produtos, porm um que seja muito mais complexo que o problema de mix de produtos da Wyndor introduzido na Seo 3.1. Essa empresa possui dez fbricas industriais em diversas partes do mundo. Cada uma delas fabrica os mesmos dez produtos e depois os vende dentro de sua regio. A demanda (potencial de vendas) para cada um desses produtos de cada fbrica conhecida em um horizonte de dez meses. Embora a quantidade de um produto vendida por uma fbrica em dado ms no possa exceder demanda, a quantidade produzida pode ser maior, na qual a quantidade excedente seria armazenada em estoque (por determinada unidade de custo mensal) para venda em um ms posterior. Cada unidade de cada produto ocupa a mesma rea no estoque e cada fbrica tem algum limite superior referente ao nmero total de unidades que podem ser estocadas (a capacidade do estoque). Cada uma das unidades fabris possui os mesmos dez processos (faremos referncia a eles como mquinas), cada um dos quais pode ser usado para produzir qualquer um dos dez produtos. Tanto o custo de produo unitrio quanto a taxa de produo do produto (o nmero de unidades produzidas por dia dedicada a esse produto) depende da combinao da fbrica e mquina envolvidas (mas no o ms). O nmero de dias teis (dias de produo disponveis) varia um pouco ms a ms. Como algumas fbricas e mquinas so capazes de produzir determinado produto de forma mais barata ou ento mais rpida que as demais fbricas e mquinas, s vezes vale a pena despachar algumas unidades do produto de uma fbrica para outra para ser vendida por essa ltima. Para cada combinao de uma fbrica, da qual sai um produto (jbricadeorigem) e uma fbrica para a qual est sendo embarcado um produto (jbricadedestino), h certo custo por unidade despachada desse produto, em que este custo de despacho unitrio o mesmo para todos os produtos. A gerncia precisa estabelecer, agora, quantas unidades de cada produto devem ser produzidas em cada uma das mquinas em cada uma das fbricas durante cada ms, bem como quanto cada fbrica deveria vender de cada produto em cada ms e quanto cada fbrica deve despachar de cada produto a cada ms para cada uma das demais fbricas. Considerando-se o preo mundial de cada produto, o objetivo encontrar o plano vivel que maximize o lucro total (receita de vendas total menos a soma total dos custos de produo, de estoques e de despacho).

3.7

FORMULANDO MODELOS DE PROGRAMAO LINEAR DE GRANDES...

73

Devemos observar que se trata de um exemplo simplificado de urna srie de aspectos. Partirmos do pressuposto de que os nmeros de fbricas, mquinas, produtos e meses so exatamente os mesmos (10). Na maioria das situaes reais, o nmero de produtos certamente ser bem maior e o horizonte de planejamento provvel que venha a ser consideravelmente mais longo que dez meses, ao passo que o nmero de "mquinas" (tipos de processos de produo) deve ser bem menor que 10. Tambm estamos supondo que cada unidade fabril tenha exatamente os mesmos tipos de mquinas (processos de produo) e cada tipo de mquina seja capaz de fabricar todos os tipos de produtos. No mundo real, as fbricas podem ter algumas diferenas em termos de seus tipos de mquinas e dos produtos que elas so capazes de produzir. O resultado que o modelo correspondent para algumas empresas pode ser menor que aquele desse exemplo, porm, o modelo para as demais empresas pode ser consideravelmente maior (talvez at mesmo imensamente maior) que este.

A Estrutura do Modelo Resultante


Em decorrncia dos custos de armazenamento e da capacidade limitada dos depsitos, necessrio controlar, ms a ms, a quantidade de cada produto mantida em estoque em cada fbrica. Conseqentemente, o modelo de programao linear possui quatro tipos de variveis de deciso: quantidades produzidas, quantidades estocadas, quantidades vendidas e quantidades despachadas. Com 10 fbricas, 10 mquinas, 10 produtos e 10 meses, isso d um total de 21.000 variveis de deciso conforme descrito a seguir:

Variveis de Deciso
10.000 variveis de produo: uma varivel para cada combinao de uma fbrica, mquina, produto e ms 1.000 variveis de estoque: uma varivel para cada combinao de uma fbrica, produto e ms 1.000 variveis de vendas: uma varivel para cada combinao de uma fbrica, produto e ms 9.000 variveis de despacho: uma varivel para cada combinao de um produto, ms, fbrica (fbricadeorigem) e uma outra (fbricadedestino) Multiplicando-se cada uma dessas variveis de deciso pelo custo unitrio correspondente ou receita unitria e depois somando-se cada um dos tipos, a seguinte funo objetivo pode ser calculada:

Funo Objetivo
Maximizar lucro =receita de vendas total - custo total em que Custo total = custo de produo total custo de despacho total

+ custo de armazenamento total +

Ao maximizar essa funo objetivo, as 21.000 variveis de deciso precisam satisfazer restries de no-negatividade, bem como quatro tipos de restries funcionais - restries de capacidade de produo, restries de equilbrio de fbrica (restries de igualdade que fornecem valores apropriados para as variveis de armazenamento), restries de estoque mximo e restries de vendas mximas. Conforme enumerado a seguir, h um total de 3.100 variveis funcionais, mas todas as restries de cada tipo seguem o mesmo padro.

Restries Funcionais
1.000 restries de capacidade de produo (uma para cada combinao de uma fbrica, mquina e ms): Dias de produo utilizados :::; dias de produo disponveis em que o lado esquerdo da desigualdade a soma de 1O fraes, uma para produto, no qual cada frao a quantidade produzida daquele produto (uma varivel de deciso) dividida pela taxa de produo do produto (uma constante dada).

74

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

1.000 restries de equilbrio de fbrica (uma para cada combinao de uma fbrica, produto e ms): Quantidade produzida + estoque do ltimo ms + quantidade despachada vendas + estoque atual + quantidade despachada
=

na qual a quantidade produzida a soma das variveis de deciso representando as quantidades de produo nas mquinas, a quantidade recebida a soma das variveis de deciso representando as quantidades recebidas de outras fbricas e a quantidade enviada a soma das variveis de deciso representando as quantidades despachadas para as demais fbricas. 100 restries de estoque mximo (uma para cada combinao de uma fbrica e ms) Estoque total
:S

capacidade de armazenamento

em que o lado esquerdo da desigualdade a soma das variveis de deciso representando as quantidades estocadas para cada um dos produtos. 1.000 restries de vendas mximas (uma para cada combinao de uma fbrica, produto e ms): Vendas
:S

demanda

Vejamos como a linguagem de modelagem MPL, um produto da Maximal Software Logical, Inc., pode formular esse modelo imenso de forma muito compacta. Formulao do Modelo em MPL O modelador comea atribuindo um ttulo ao modelo e listando um ndice para cada uma das entidades do problema, conforme indicado a seguir:
TITLE
Production_Planning;

INDEX
product month plant fromplant toplant machine : : : : : : = (Al, A2, A3, A4, AS, A6, A7, A8, A9, Al); = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, = (pl, p2, p3, p4, p5, p6, p7, p8, p9, pl); = plant; =plant; = (ml, m2, m3, m4, m5, m6, m7, m8, m9, ml); Oct);

Exceto para os meses, as entradas no lado direito so rtulos arbitrrios para os respectivos produtos, fbricas e mquinas nos quais esses mesmos rtulos so usados nos arquivos de dados. Observe que, aps o nome de cada entrada, colocado dois-pontos e no final de cada sentena, inserido um ponto-e-vrgula (porm, permitido que uma sentena se estenda por mais de uma linha). Uma tarefa rdua em qualquer modelo de grandes dimenses aquela de coletar e organizar os diversos tipos de dados nos arquivos de dados. Um arquivo de dados pode estar tanto em formato denso quanto esparso. No fonnato denso, o arquivo conter uma entrada para cada possvel combinao dos ndices sobre os quais os dados cobrem. Suponha, por exemplo, que o arquivo de dados contenha as taxas de produo para fabricar os diversos produtos como as diversas mquinas (processos de produo) nas vrias fbricas. No formato denso, o arquivo conter uma entrada para cada combinao de uma fbrica, uma mquina e um produto. No entanto, pode ser necessrio que a entrada seja zero para a maioria das combinaes, pois pode ser que aquela dada fbrica no tenha certa mquina ou, at mesmo se ela a tiver, pode ser que essa mquina, em particular, no seja capaz de fabricar aquele produto em particular naquela determinada fbrica. A porcentagem de entradas em formato denso que so no-zero so conhecidas como a densidade do conjunto de dados. Na prti-

3.7

FORMULANDO MODELOS DE PROGRAMAO LINEAR DE GRANDES...

75

ca, mais comum para conjuntos de dados grandes apresentar uma densidade abaixo de 5% e ela freqentemente se encontra abaixo de 1%. Conjuntos de dados com densidades to baixas so designados esparsos. Em tais situaes, mais eficiente usar um arquivo de dados no formato esparso. Nesse formato, apenas os valores no-zero (e uma identificao dos valores-ndice aos quais eles se referem) so introduzidos no arquivo de dados. Geralmente, os dados so lidos no formato esparso de um arquivo de texto ou de bancos de dados corporativos. A capacidade de manipular eficientemente conjuntos de dados esparsos um segredo para ser bem-sucedido na formulao e soluo de modelos de otimizao em grande escala. O MPL capaz de trabalhar diretamente tanto com dados no formato denso quanto no formato esparso. No exemplo da Worldwide Corp., so necessrios oito arquivos de dados para armazenar os preos dos produtos, demandas, custos de produo, taxas de produo, dias de produo disponveis, custos de estocagem, capacidades de armazenamento e custos para despacho das mercadorias. Partimos do pressuposto de que esses arquivos de dados se encontram disponveis no formato esparso. A prxima etapa atribuir um breve nome sugestivo a cada um deles e identificar (entre colchetes) o ndice ou ndices sobre os quais os dados no arquivo rodam, conforme indicado a seguir.
DATA Price [product] : = SPARSEFILE ( "Price. dat") ; Demand[plant, product, month] .- SPARSEFILE("Demand.dat"); : = SPARSEFILE ( "Produce. da t", ProdCost[plant, machine, product] ProdRate[plant, machine, product] : = SPARSEFILE ( "Produce. da t", ProdDaysAvail[month] .- SPARSEFILE("ProdDays.dat"); InvtCost [plant, product] . - SPARSEFILE ( "InvtCost. dat") ; InvtCapacity[plant] .- SPARSEFILE("InvtCap.dat"); := SPARSEFILE ("ShipCost.dat"); ShipCost [ fromplant, toplant]

4);

5);

Para ilustrar o contedo desses arquivos de dados, considere aquele que fornece os custos e as taxas de produo. Eis um exemplo das primeiras entradas de SPARSEFILE produce.dat:
Produce.dat ProdCost[plant, ProdRate[plant, pl, pl, pl, pl, mll, mll, ml2, m13, Al, A2, A3, A3, Production Cost and Rate machine, machine, 73.30, 52.90, 65.40, 47.60, product]: product]:

500, 450, 550, 350,

A seguir, o modelador d um nome curto para cada tipo de varivel de deciso. Aps o nome, entre colchetes, temos o ndice ou ndices ao longo dos quais os subndices so executados.
VARIABLES Produce[plant, machine, product, month] Inventory[plant, product, month] Sales[plant, product, month] Ship[product, month, fromplant, toplant] WHERE ( fromplant <> toplant) ;
->

Prod;

-> Invt; -> Sale;

No caso das variveis de deciso com nomes mais longos do que quatro letras, as setas direita apontam para abreviaturas de quatro letras para atender s limitaes de tamanho de vrios solucionadores. A ltima linha indica que os subndices fbricadeorigem e fbricadedestino no podem ter o mesmo valor.

76

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

H mais uma etapa antes de escrevermos o modelo. Para tomar o modelo mais legvel, interessante primeiramente introduzir macros para representar os totais na funo objetivo.
MACROS Total Revenue TotalProdCost TotalinvtCost TotalShipCost TotalCost :=SUM(plant, product, month: Price*Sales); :=SUM(plant, machine, product, month: ProdCost*Produce); :=SUM(plant, product, month: InvtCost*Inventory); :=SUM(product, month, fromplant, toplant: ShipCost*Ship); : = TotalProdCost + TotalinvtCost + TotalShipCost;

As primeiras quatro macros usam a palavra-chave SUM do MPL para executar os somatrios envolvidos. Aps cada palavra-chave SUM (entre parnteses), temos primeiramente o ndice ou ndices ao longo do(s) qual(is) ocorre o somatrio. Em seguida (aps doispontos) temos, o produto vetorial de um vetor de dados (um dos arquivos de dados) multiplicado por um vetor varivel (um dos quatro tipos de variveis de deciso). Agora, esses modelo com 3.100 restries funcionais e 21.000 variveis de deciso podem ser escritos na seguinte forma compacta:
MODEL MAX Profit = TotalRevenue - TotalCost; SUBJECT TO ProdCapacity[plant, machine, month] SUM(product: Produce/ProdRate) s
-> PCap: ProdDaysAvail;

PlantBal[plant, product, month] -> PBal: SUM (machine: Produce) + Inventory [month - l] + SUM ( fromplant: Ship [ fromplant, toplant: = plant] ) Sales

+ Inventory

+ SUM ( toplant: Ship [ from plant: = plant, toplant] ) ;


Maxinventory [plant, month] -> MaxI: SUM(product: Inventory) <= InvtCapacity; BOUNDS Sales END

<=

Demand;

Para cada um dos quatro tipos de restries, a primeira linha d o nome para esse tipo. H uma restrio desse tipo para cada combinao de valores para os ndices dentro dos colchetes aps o nome. direita dos colchetes, a seta aponta para uma abreviatura de quatro letras do nome que um solucionador capaz de usar. Abaixo da primeira linha, a forma geral de restries desse tipo mostrada utilizando o operador SUM. Para cada restrio de capacidade de produo, cada termo no somatrio consiste em uma varivel de deciso (a quantidade de produo de determinado produto em certa mquina em dada fbrica em um ms estipulado) dividido pela taxa de produo correspondente, que d o nmero de dias de produo que esto sendo utilizados. Somando-se seguidamente os produtos resulta no nmero total de dias de produo que esto sendo utilizados em dada mquina em determinada fbrica durante certo ms, de modo que esse nmero no exceda o nmero de dias de produo disponveis. O objetivo da restrio de equilbrio da fbrica para cada fbrica, produto e ms fornecer o valor correto para a varivel de estoque atual, dado os valores de todas as demais variveis de deciso, inclusive o nvel de estoque para o ms anterior. Cada um dos operadores SUM nessas restries envolve simplesmente uma soma de variveis de deciso e no um produto vetorial. Esse o caso tambm do operador SUM nas restries de esto-

3.7

FORMULANDO MODELOS DE PROGRAMAO LINEAR DE GRANDES...

77

que mximo. De forma contrastante, o lado esquerdo das restries de vendas mximas apenas uma nica varivel de deciso para cada uma das 1.000 combinaes de uma fbrica, produto e ms. Separar essas restries de limites superiores em variveis individuais das restries funcionais regulares vantajoso em termos de economia de processamento computacional que pode ser obtida usando a tcnica do limite superior descrita na Seo 7.3. No so apresentadas restries de limites inferiores aqui, porque o MPL assume automaticamente que todas as 21.000 variveis de deciso possuem restries de no-negatividade, a menos que sejam especificados limites inferiores no-zero. Para cada uma das 3.100 restries funcionais, observe que o lado esquerdo uma funo linear das variveis de deciso e o lado direito, uma constante extrada do arquivo de dados apropriado. Visto que a funo objetivo tambm uma funo linear das variveis de deciso, esse modelo um modelo de programao linear legtimo. Para solucionar o modelo, o MPL suporta vrios solucionadores (pacotes de software para solucionar modelos de programao linear e modelos relacionados) de ponta que podem ser instalados no MPL. Conforme discutido na Seo 4.8, o CPLEX um solucionador particularmente proeminente e poderoso. A verso do MPL no Courseware de PO j instalou a verso acadmica do CPLEX, que usa o mtodo simplex para resolver modelos de programao linear. Portanto, para solucionar um modelo desses com o MPL, basta selecionar Solve CPLEX do menu Run ou pressionar o boto Run Solve na Barra de Ferramentas. A seguir, voc poder exibir o arquivo de solues em uma janela de visualizao pressionando o boto View na parte inferior da janela Status. Essa breve introduo ao MPL ilustra a facilidade com a qual os modela,dores conseguem usar linguagens de modelagem para formular modelos de programao linear imensos de maneira clara e concisa. Para ajud-lo a usar o MPL, incluso um tutorial MPL no CD-ROM. Esse tutorial percorre todos os detalhes de formular verses menores do planejamento de produo apresentado aqui. Voc poder ver no CD-ROM como todos os demais exemplos de programao linear deste e de captulos seguintes poderiam ser formulados com MPL e solucionados pelo CPLEX.

A Linguagem de Modelagem Lingo


O Lingo mais uma linguagem de modelagem popular apresentada neste livro. Como mencionado anteriormente, a empresa que produz o Lingo, a Lindo Systems, tambm produz um solucionador largamente utilizado chamado LINDO, bem como um solucionador para planilhas, o What's Best. No CD-ROM, voc poder encontrar verses educacionais desses trs pacotes (as verses para teste mais recentes tambm podero ser baixadas do site www.lindo.com). Todos os trs compartilham um conjunto comum de solucionadores baseados no mtodo simplex e, em verses mais avanadas, e tambm no tipo de tcnicas algortmicas introduzidas nas Sees 4.9 e 7.4. Os solucionadores ainda incluem alguns algoritmos, inclusive um otimizador global para lidar com problemas que saem do mbito da programao linear. (Discutiremos o Lindo posteriormente na Seo 4.8 e no Apndice 4.1) Como o MPL, o Lingo permite a um modelador formular eficientemente um modelo de programao linear imenso de forma concisa e clara. Tambm pode ser usado para uma ampla gama de outros modelos. O Lingo usa conjuntos como seu componente bsico fundamental. Por exemplo, no problema de planejamento de produo da Worldwide Corp., os conjuntos de interesse incluem os conjuntos de produtos, fbricas, mquinas e meses. Cada membro de um conjunto pode ter um ou mais atributos associados a ele, como o preo de um produto, a capacidade de armazenamento de uma fbrica, a taxa de produo de uma mquina e o nmero de dias de produo disponveis em um ms. Esses atributos oferecem dados para o modelo. Alguns atributos de conjuntos, como quantidades de produo e quantidades despachadas, podem ser variveis de deciso para o modelo. Como acontece com o MPL, o operador SUM usado comumente para escrever a funo objetivo e cada tipo de restrio em uma forma compacta. Aps completar a formulao, o modelo pode ser resolvido selecionando-se o comando Solve do menu do Lingo ou pressionando-se o boto Solve na barra de ferramentas.

78

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Um apndice deste captulo descreve melhor o Lingo e ilustra seu uso em uma srie de exemplos pequenos. Um suplemento no CD-ROM mostra como o Lingo pode ser usado para formular o modelo para o exemplo de planejamento de produo da Worldwide Corp. Um tutorial sobre o Lingo no CD-ROM fornece os detalhes necessrios para realizar modelagem bsica empregando essa linguagem de modelagem. As formulaes do Lingo e solues para os vrios exemplos tanto deste captulo quanto de muitos outros captulos tambm esto includas no CD-ROM.

CONCLUSES
A programao linear uma tcnica poderosa para lidar com o problema de alocao de recursos limitados entre atividades que competem entre si, bem como outros problemas com uma formulao matemtica similar. Ela se tomou uma ferramenta-padro de grande importncia para inmeras organizaes comerciais e industriais. Alm disso, praticamente todas as organizaes sociais esto preocupadas com a alocao de recursos em algum contexto e h um reconhecimento crescente da enorme aplicabilidade dessa tcnica. Porm, nem todos os problemas de alocao de recursos limitados podem ser formulados para atender ao modelo de programao linear, nem mesmo com uma aproximao razovel. Quando uma ou mais das hipteses da programao linear violada gravemente, pode ser ento possvel aplicar-se outro modelo de programao matemtica em seu lugar, por exemplo, os modelos de programao inteira (Captulo 11) ou programao no-linear (Captulo 12).

APNDICE 3.1

A LINGUAGEM DE MODELAGEM LINGO


O Lingo uma linguagem de modelagem matemtica desenvolvida particularmente para formular e resolver uma ampla gama de problemas de otimizao, entre os quais problemas de programao linear, de programao inteira (Captulo 11) e de programao no-linear (Captulo 12). Problemas simples so introduzidos no Lingo de forma relativamente natural. Para ilustrarmos, consideremos o problema de programao linear a seguir:
Maximizar Z = 20x

+ 31y,

sujeito a
2x + 5y :::; 16 4x - 3y = 6

e
X 2:

O,

y 2:

o.

A captura de tela da metade superior da Figura A3 .1 mostra como esse problema poderia ser formulado com o Lingo. A primeira linha dessa formulao apenas um comentrio descrevendo o modelo. Observe que o comentrio precedido por um ponto-de-exclamao e encerrado com um ponto-e-vrgula. Esta uma exigncia para todos os comentrios em uma formulao em Lingo. A segunda linha d a funo objetivo (sem se preocupar em incluir a varivel Z) e indica que esta deve ser maximizada. Note que cada multiplicao precisa ser indicada por um asterisco. A funo objetivo encerrada por um ponto-e-vrgula da mesma forma que cada uma das restries funcionais nas duas linhas seguintes. As restries de no-negatividade no so mostradas nessa formulao, pois essas restries so assumidas automaticamente pelo Lingo. Se alguma varivel x no tiver uma restrio de no-negatividade, voc precisaria acrescentar @FREE(x); no final da formulao.

APNDICE 3.1

A LINGUAGEM DE MODELAGEM LINGO

79

As variveis podem ser indicadas em letras maisculas ou minsculas, j que o Lingo diferencia letras maisculas de minsculas. Por exemplo, uma varivel x 1 pode ser escrita tanto na forma x 1 como x 1. Da mesma forma, as palavras podem ser tanto em letras maisculas quanto minsculas (ou uma combinao de ambas). Para fins de clareza, usaremos letras maisculas para todas as palavras reservadas que possuem um significado predefinido no Lingo. Observe a barra de menus na parte superior da janela do Lingo na FiguraA3.l. Os itens de menu 'File' e 'Edit' comportam-se da maneira-padro do Windows. Para solucionar um modelo assim que ele tiver sido introduzido, clique no cone 'alvo' (caso esteja usando uma plataforma que no seja um PC baseado em Windows, digite ento o comando GO no prompt de dois-pontos e pressione a tecla Enter). Antes de tentar solucionar o modelo, o Lingo checar primeiramente se o seu modelo possui algum erro de sintaxe e, em caso positivo, indicar onde eles ocorrem. Partindo-se do pressuposto de que no existam erros, um solver comear a solucionar o problema, em cujo perodo aparecer uma janela solver status na tela. Quando o solver terminar, aparecer na tela um Solution Repor!. A metade inferior da Figura A3.l exibe o relatrio de soluo para nosso exemplo. A coluna Valor apresenta os valores timos das variveis de deciso. A primeira entrada na coluna Capacidade Ociosa ou Excedente mostra o valor correspondente da funo objetivo. As duas entradas seguintes indicam a diferena entre os dois lados das respectivas restries. As colunas Custo Reduzido e Preo Dual fornecem alguma informao de anlise de sensibilidade para o problema. Aps discutirmos a anlise de ps-otimalidade (incluindo anlise de sensibilidade) na Seo 4.7, iremos explicar o que so custos reduzidos e preos duais e descrevendo o Lindo no Apndice 4.1. Essas quantidades fornecem apenas uma parcela de informaes teis sobre anlise de sensibilidade. Para gerar um relatrio completo de anlise de sensibilidade (como aquele indicado no Apndice 4.1 para o Lingo ), o comando Range no menu Lindo precisaria ser selecionado a seguir.

GURA A3.1

_Jas de tela exibindo a formulao do Lingo e o relatrio de soluo do Lingo para um problema de programao
--- sim ples.
LINGO LINGO Mudei {T ei.;I OnlyJ LINGUl

J;': UHGO Model llei.:I Only) UNGU1

lll~EJ

A .z i tnple line: ar progreuri;


MAX"" .ZOx 2x t'* X

+ +

31Ty; 5'"Y <= 16; 3Ty "" 6;

Var iab le
-

Va lue
JLI 1oon

Reduced Cost
o UUOOJC)

y
Row

; irnnnn
Slack or Surp l us 122. 0000

r nnnr -1> < Dua l Price


1.000000
7.076923 1.'t51538

o . 0000000 o .0000000

[ft.:f!P.Ji1.~ F1

---

,JAOD

[ln7.Col25

1134am

;jlStartf il:YMicioroltWord{ .o.,,,d

!~ll:!i~L-IN ~-(l-. L-IN-GO_M_od_e _ .. :-----------~--- _ftllt "1J ~ AOif:.J ~

80

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Da mesma forma como ilustrado com o MPL na Seo 3.7, o Lingo projetdo principalmente para formular em termos eficientes modelos muito grandes lidando simultaneamente como todas as restries ou variveis do mesmo tipo. Usaremos em breve o exemplo seguinte para ilustrar como o Lingo faz isso.

Exemplo. Consideremos um problema de mix de produtos, no qual estamos preocupados com qual mix de quatro produtos devemos fabricar durante a prxima semana. Para cada produto, cada unidade produzida requer uma quantidade de tempo de produo conhecida em cada uma das trs mquinas. Cada mquina possui um certo nmero de horas de tempo de produo disponvel por semana. Cada produto fornece determinado lucro por unidade produzida. A Tabela A3.l mostra trs tipos de dados: dados relacionados a mquinas, dados relacionados a produtos e dados relacionados a combinaes de uma mquina e produto. O objetivo determinar quanto produzir de cada produto de forma que o lucro total seja maximizado e, ao mesmo tempo, no excedendo a capacidade de produo limitada de cada mquina. Em forma algbrica-padro, a estrutura do modelo de programao linear para esse problema escolher os nveis de produo de no-negatividade (nmero de unidades produzidas durante a semana seguinte) para os quatro produtos de modo a
Maximizar

sujeito a
4

2,aijxj::::: bj
j~l

parai

1, 2, 3;

em que
x1 = nvel de produo para o produto P01
a;1

c1 = lucro unitrio para o produto PO 1 = tempo de produo na mquina i por unidade do produto PO 1 b; =tempo de produo disponvel por semana na mquina i

Esse modelo pequeno o bastante, com apenas quatro variveis de deciso e trs restries funcionais, para ser escrito completamente, termo a termo, porm isso seria tedioso. Entretanto, em algumas aplicaes similares poder haver centenas de variveis de deciso e restries funcionais, de modo que escrever uma verso desse modelo termo a termo a cada semana no seria prtico. O Lingo apresenta uma formulao muito mais eficiente e compacta, comparvel ao resumo do modelo mostrado anteriormente, como veremos a seguir.
TABELA A3.1 Dados necessrios para o exemplo de mix de produtos
Tempo de Produo por Unidade (em horas) Produto Tempo de Produo Disponvel por Semana (em horas)
28 34 21

Mquina
Laminar Cortar Soldar Lucro por unidade

P01 1,7 1, 1 1,6 26

P02 2, 1 2,5 1,3 35

P03 1,4 1,7 1,6 25

P04

2,4 2,6 0,8 37

APNDICE 3.1

A LINGUAGEM DE MODELAGEM LINGO

81

Formulao do Modelo no Lingo


Esse modelo possui uma natureza repetitiva. Todas as variveis de deciso so do mesmo tipo e todas as restries funcionais, tambm. O Lingo usa conjuntos para descrever essa natureza repetitiva. 18 Os conjuntos simples de interesse no presente caso so:
1. O conjunto de mquinas, {Laminar, Cortar, Soldar} 2. O conjunto de produtos {POl, P02, P03, P04}

Os atributos de interesse para os membros desses conjuntos so:


1. Atributo para cada mquina: Nmero de horas de tempo de produo disponvel sema-

nalmente.
2. Atributos para cada produto: Lucro por unidade produzida; Nmero de unidades produ-

zidas semanalmente . Portanto, os dois primeiros tipos de atributos so dados de entrada que se tomaro parmetros do modelo, ao passo que o ltimo tipo (nmero de unidades produzidas semanalmente dos respectivos produtos) fornece as variveis de deciso para o modelo. Abreviemos esses atributos da seguinte forma: mquina: HorasProdDisp produto: Lucro, Produo Outro tipo de informao fundamental o nmero de horas de produo que cada unidade de cada produto empregaria em cada uma das mquinas. Esse nmero pode ser visto na forma de um atributo para os membros do conjunto de todas as combinaes de um produto e uma mquina. Visto que esse conjunto derivado de dois conjuntos simples, ele pode ser chamado de um conjunto derivado. Abreviemos o atributo para membros desse conjunto como indicado a seguir: MaPr (mquina, produto): HorasProdUtiliz Uma formulao do Lingo possui, tipicamente, trs sees:
1. Uma seo SETS que especifica os conjuntos e seus atributos. Voc poderia imagin-lo

como um descritor da estrutura de dados.


2. Uma seo DATA que fornece os dados a serem usados ou indica onde devem ser obti-

dos. 3. Uma seo que fornece o modelo matemtico em si. Comeamos mostrando a seguir as duas primeiras sees do exemplo em questo.
LING03h; Product mix example; Notice: the SETS section says nothing about the number or names of the machines or products. That information is determined completely by supplied data; SETS: ! The simple sets; Machine: ProdHoursAvail; Product: Profit, Produce; ! A derived set; MaPr (Machine, Product): ProdHoursUsed; ENDSETS DATA: Get the names of the machines; Machine = Roll Cut Weld; Hours available on each machine; ProdHoursAvail = 28 34 21;
!

Get the names of the products;

18

Em arquivos de conjuntos do Lingo, a ordem j est implcita; portanto, em termos rigorosos, eles no so verdadeiramente conjuntos, segundo o sentido matemtico usual.

82

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Product = Pl P02 P03 P04; Profit contribution per unit; Profit = 26 35 25 37; Hours needed per unit ProdHoursUsed = 1. 7 2.1 1.1 2.5 1. 6 1. 3 ENDDATA of product; 1. 4 2.4 Roll; 1. 7 2.6 Cut; 1. 6 o. 8; Weld;

Antes de apresentarmos o modelo matemtico em si, precisamos usar duas funes de looping de conjuntos fundamentais que permitem aplicar uma operao a todos os membros de um conjunto usando-se uma nica sentena. Uma delas a funo @SUM, que calcula a soma de uma expresso de todos os membros de um conjunto. A forma geral de @Sl)M @SUM ( set: expression). Para cada membro do conjunto calculada a expresso e depois todas elas so somadas. Por exemplo:
@SUM( Produto(j): Lucro(j)*Producao(j))

soma a expresso aps os dois-pontos - o lucro unitrio de um produto vezes a taxa de produo do produto - aplicado a todos os membros do conjunto indicados antes dos doispontos. Em particular, j que esse conjunto o conjunto de produtos {Produto(j) paraj = 1, 2, 3, 4}, a soma percorre os ndicesj. Portanto, essa funo @SUM especfica fornece a funo objetivo.

dada anteriormente para o modelo. A segunda funo de looping de conjuntos fundamental a funo @FOR. Essa funo usada para gerar restries para todos os membros de um conjunto. A forma geral @FOR (set: constrain). Por exemplo:
@FOR(Machine(i): @SUM ( Product ( i) :
) ;

ProdHoursUsed ( i, j) *Produce ( j)) < = ProdHoursAvai 1 ( i, j) ;

diz para gerar a restrio indicada aps os dois-pontos para cada um dos membros do conjunto apresentado antes dos dois-pontos. O sinal de "menor que ou igual a",::::;, no se encontra em um teclado-padro, de forma que o Lingo trata os sinais de teclado-padro < = como equivalente a::::;_ Esse conjunto o conjunto de mquinas {Maquina (i) i = 1, 2, 3}, de modo que essa funo fica em loop, percorrendo os ndices i. Para cada ndice i, a restrio indicada aps os dois-pontos foi expressa algebricamente anteriormente como
4

LijXj :s bj.
j~I

Portanto, aps a terceira seo da formulao Lingo (o modelo matemtico em si) ser acrescentada, obtemos a formulao completa exibida a seguir:
! LING03h; ! Product mix example; SETS: ! The simple sets; Machine: ProdHoursAvail; Product: Prof i t, Produce; ! A deri ved set; MaPr( Machine, Product): ProdHoursUsed; ENDSETS DATA: !Get the names of the machines; Machine = Roll Cut Weld;

APNDICE 3.1

A LINGUAGEM DE MODELAGEM LINGO

83

! Hours available on each machine; ProdHoursAvail = 28 34 21;

Get the names of the products; Product = POl P02 P03 P04; Profit contribution per unit; Profit = 26 35 25 37; Hours needed per unit of product; ProdHoursUsed = 1. 7 2.1 1. 4 2.4 Roll; 1.1 2.5 1. 7 2.6 Cut; 1. 6 1. 3 1. 6 o. 8; Weld; ENDDATA ! Maximize total profit contribution; MAX=@SUM( Product(i): Profit(i) * Produce(i)); For each machine i; @FOR( Machine( i): Hours used must be <= hours available; @SUM ( Product ( j ) : ProdHoursUsed ( i, j ) <= ProdHoursAvail (i);
) ;

* Produce (

j ))

O modelo resolvido pressionando-se o boto 'alvo' na barra de comandos do Lingo. Pressionar o boto 'x =' na barra de comandos gera um relatrio que se parece, em parte, com o seguinte:
variable PRODUCE( POl) PRODUCE( P02) PRODUCE( P03) PRODUCE( P04) Row 1 2 3 4 Value 0.0000000 10.00000 5.000000 0.0000000 Slack or Surplus 475.0000 0.0000000 0.5000000 0.0000000 Reduced Cost 3.577921 0.0000000 0.0000000 1.441558 Dual Price 1.000000 15.25974 0.0000000 2.272727

Portanto, devemos produzir dez unidades do produto P02 e cinco unidades do produto P03, nos quais a Linha 1 nos d o lucro total resultante de 475. Observe que essa soluo usa exatamente a capacidade disponvel da primeira e terceira mquinas (j que as Linhas 2 e 4 indicam Capacidade Ociosa ou um Excedente igual a O) e deixa a segunda mquina com 0,5 hora de ociosidade. (Discutiremos custos reduzidos e preos duais no Apndice 4.1 juntamente com o Lindo.) A seo de linhas desse relatrio ligeiramente ambgua visto que precisamos lembrar que a Linha 1 no modelo se refere funo objetivo e as linhas subseqentes envolvem as restries relativas a capacidades das mquinas. Essa associao pode ser realizada de forma mais clara no relatrio atribuindo-se nomes a cada restrio do modelo. Isso feito colocando-se o nome entre [],imediatamente antes da restrio. Ver o seguinte trecho modificado do modelo:
[Totprof] MAX= @SUM( Product: Profit * Produce);

For each machine i; @FOR( Machine( i): Hours used must be <= hours available; [Cape] @SUM ( Product ( j) : ProdHoursUsed ( i, <= ProdHoursAvail;
) ;

j)

* Produce ( j) )

O relatrio de solues agora contm os seguintes nomes de linhas


Row TOTPROF Slack or Surplus 475.0000 Dual Price 1.000000

84

CAPTULO 3

INTRODUO PROGRAMAO LINEAR


CAPC( CAPC( CAPC( ROLL) CUT) WELD)

0.0000000 0.5000000 0.0000000

15.25974 0.0000000 2.272727

Uma caracterstica importante de um modelo Lingo como este que ele completamente "escalvel" em produtos e mquinas. Em outras palavras, se quisssemos resolver outra verso desse problema de mix de produtos cm um nmero diferente de mquinas e produtos, teramos apenas de introduzir os novos dados na seo DATA No seria preciso alterar a seo SECTIONS nem qualquer uma das equaes. Essa converso poderia ser feita por pessoal administrativo sem nenhum conhecimento terico sobre modelagem e equaes matemticas.

Importando e Exportando Dados de Planilhas usando o Lingo


O exemplo anterior foi completo e independente no sentido que todos os dados foram incorporados diretamente na formulao Lingo. Em algumas outras aplicaes, grande nmero de dados seria armazenado em alguma fonte e teriam de ser introduzidos no modelo a partir dessa fonte. Um local muito usado para armazenamento de dados so as planilhas. O Lingo possui uma funo simples, @OLE ( ), para recuperar e inserir dados de/para planilhas. Para fins ilustrativos, suponhamos que os dados para o nosso problema de mix de produtos fossem introduzidos originalmente em uma planilha conforme mostrado na Figura A3.2. No momento, estamos interessados apenas nas clulas sombreadas das colunas A-B e E-H. Os dados destas clulas descrevem completamente nosso pequeno exemplo de mix de produtos. Queremos evitar a redigitao desses dados em nosso modelo Lingo. Suponhamos que essa planilha seja armazenada no arquivo d:\diifred7\wbest03i.xls. A nica parte do modelo Lingo que precisa ser alterada a seo DATA conforme indicado a seguir:
DATA: Get the names of the machines; Machine = @OLE ( 'd: \dirfred7 \wbest03 i. xls') ; Hours available on each machine; ProdHoursAvail = @OLE ( 'd: \dirfred7 \wbest03i. xls') ; Get the names of the products; Product = @OLE ( 'd: \dirfred7 \wbest03 i. xls') ; Profit contribution per unit; Prof it = @OLE ( 'd: \dirfred7 \wbest03i. xls') ; Hours needed per unit of product; ProdHoursUsed = @OLE ( 'd: \dirfred7 \wbest03i. xls') ; Send the solution values back; @OLE( 'd:\dirfred7\wbest03i.xls') = Produce; ENDDATA

A funo @OLE ( ) atua como seu "empreiteiro de encanamentos". Ele permite o fluxo de dados para o Lingo e de volta para a planilha. O assim denominado OLE (Interligao e Incorporao de Objetos) um recurso do sistema operacional Windows. O Lingo explora esse recurso para estabelecer uma ligao entre o modelo Lingo e a planilha. Os cinco primeiros empregos da @OLE ( ) anteriores ilustram que essa funo pode ser usada direita de uma declarao de atribuio para recuperar dados de uma planilha. O ltimo emprego anterior ilustra que essa funo pode ser colocada esquerda de uma declarao de atribuio para inserir resultados da soluo na planilha. Observe na Figura A3.2 que a soluo tima foi colocada de volta na planilha nas clulas E6:H6. Uma etapa simples, mas oculta que deveria ter sido feita de antemo na planilha era definir faixas de nomes para os diversos conjuntos de clulas contendo os dados. As faixas de nomes podem ser definidas no Excel usando-se o mouse e os comandos Inserir, Nome do item de menu Definir. Por exemplo, foi atribudo ao conjunto de clulas A9:Al 1 o nome de faixa Mquina. Do mesmo modo, o conjunto de clulas E4:H4 recebeu o nome Produto.

APNDICE 3.1

A LINGUAGEM DE MODELAGEM LINGO

85

Pmducon time/11nil jn hot1rn gn machjne

1-7
1.t 1-6

2.1 21i 13

14 1.7 1.6

2.-4 2.6 0.6

A plilnllha foj oonh9urada para S9f compat1ve! com o solucionador WhafsBesl; COfH".dtt o endereo http:tlwww.~ndo.com pa~~-~ software '

FlGURA A3.2 :3:Jtura de tela exibindo - ~os para o exemplo de mix ::irodutos introduzidos em - ~ planilha.

'

r
-!

-=

No exemplo citado, a referncia @ OL E ( ) continha o nome de caminho completo para o arquivo Excel que estava sendo referido. Se o arquivo (digamos, wbest03i.xls) j estiver aberto no Excel no momento que o modelo Lingo estiver sendo executado, voc no ter de se preocupar em usar o nome de caminho completo visto que @OLE ( , wbe s to 3 i . xl s , ) seria suficiente. De fato, se wbest03i.xls fosse o nico arquivo aberto no Excel, voc at poderia omitir o nome do arquivo. Nesse caso, por exemplo:
Profit S @OLE ( ) ;

iria recuperar os dados de lucro da planilha. A conexo Lingo/planilha pode ser forada ainda mais, de forma que o modelo Lingo seja armazenado em um "tabulador" em uma planilha. Portanto, o usurio poderia imaginar o modelo como residente completamente em uma nica planilha. Podem-se combinar os melhores recursos de planilha e de linguagem de modelagem. (Leia o manual do Lingo para mais detalhes.) Importando e Exportando de um Banco de Dados Usando o Lingo Outro repositrio de dados comum em uma grande empresa so os bancos de dados. De maneira similar a @OLE ( ) , o Lingo possui uma funo de conexo, @ODBC ( ) , para transferir dados de/para um banco de dados. Essa funo se baseia no padro ODBC (Open DataBase Connectivity) para comunicao com bancos de dados SQL (Linguagem de Consulta Estruturada). Os bancos de dados mais populares, como Oracle, Paradox, DB/2, MS Access e SQL Server, suportam o padro ODBC. Ilustremos a conexo ODBC para nosso pequeno exemplo de mix de produtos. Suponhamos que todos os dados que descrevem nosso problema estejam armazenados em um banco de dados chamado access03j. A modificao necessria no modelo Lingo quase insignificante. Somente a seo DATA precisa ser alterada, conforme ilustrado no trecho a seguir do modelo Lingo:
DATA .: Get the names of the machines and available hours; Machine , ProdHoursAvail = @ODBC ( 'acces03 j ' ) ;

86

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Get the names of the products and profits; Product, Prof it = @ODBC ( 'acces03 j') ; Hours needed per unit of product; ProdHoursUsed = @ODBC ( 'acces03j'); Send the solution values back; @ODBC( 'acces03j') =Produce; ENDDATA

Observe que, similarmente ao modelo baseado em planilhas, o tamanho do modelo em termos do nmero de variveis e restries determinado completamente pelo que se encontra no banco de dados. O modelo Lingo ajusta-se automaticamente quilo que se encontra no banco de dados. Vejamos agora o que se encontra no banco de dados considerado anteriromente. Ele contm trs tabelas relacionadas. Atribumos a essas tabelas nomes que coincidam com aqueles do modelo Lingo, a saber: 'Maquina', para armazenar dados relativos s mquinas, 'Produto', para armazenar dados relacionados a produtos e 'MaPr', para armazenar dados relativos s combinaes de mquinas e produtos. Eis o aspecto das tabelas na tela:

Maquina

Maquina
Laminar Cortar Soldar

HorasProdDlsp 28 34 21

Produto

Produto POl P02 P03 P04

lucro 26 35 25 37

Producao

MaPr

Maquina
Laminar Laminar Laminar Laminar Cortar Cortar Cortar Cortar Soldar Soldar Soldar Soldar

Produto POl P02 P03 P04 POl P02 P03 P04 POl P02 P03 P04

HorasProdUtlllz 1,7 2,1 1,4 2,4 1,1 2,5 1,7 2,6 1,6 1,3 1,6 0,8

Observe que a coluna 'Producao' foi deixada em branco na tabela Produto. Assim que solucionarmos o modelo, os valores referentes 'Producao' so inseridos no banco de dados e a tabela Produto ficar:

APNDICE 3.1
Produto

A LINGUAGEM DE MODELAGEM LINGO

87

Produto POl P02 P03 P04

Lucro 26 35 25 37

Producao

o
10 5

H um fator complicador no emprego de ODBC no Windows 95. O usurio ter de "registrar" o banco de dados com o administrador Windows ODBC. Para isso acesse (com cliques de mouse) a janela Meu Computador/Painel de Controle/Ferramentas Administrativas/Fontes de Dados. Assim que tiver chegado nesse ponto, o usurio ter de atribuir um nome ao banco de dados (que poder deferir do nome efetivo do arquivo no qual as tabelas de dados se encontram) e especificar o diretrio no qual o arquivo de banco de dados reside. esse nome registrado que deve ser usado no modelo Lingo. Pelo fato de o banco de dados ter sido registrado, no vemos uma especificao de diretrio na instruo @ODBC ( 'acces03j, ) no modelo Lingo. O gerenciador de ODBC sabe a localizao do banco de dados apenas pelo seu nome.

Mais Detalhes sobre o Lingo


Neste apndice, foram ilustrados apenas alguns dos recursos do Lingo. O Lingo contm documentao embutida nele prprio. Para acessar o Manual do Usurio quando estiver no ambiente Lingo, clique em
Help 1 Help topics 1 Contents 1Lingo Users Manual.

Ou ento, procurando na lista de termos do ndice clicando em


Help 1 Help topics 1Index.

O Lingo se encontra disponvel em diversos tamanhos. A verso apresentada no CD-ROM limitada a um mximo de 150 restries funcionais e 300 variveis de deciso. (Ao lidar com problemas de programao inteira no Captulo 11 ou problemas de programao nolinear no Captulo 12, sero permitidas no mximo 30 variveis inteiras ou 30 variveis nolineares. No caso dos problemas de otimizao global discutidos na Seo 12.10, o nmero total de variveis de deciso no pode exceder 5.) A maior verso (chamada verso estendida) limitada somente pela quantidade de memria disponvel no computador. A presena de dezenas de milhares de restries funcionais e centenas de milhares de variveis de deciso no so casos incomuns. O Lingo pode ser encontrado para a maioria dos sistemas operacionais, inclusive para o Linux. Caso queira ver como o Lingo capaz de formular um modelo imenso como o exemplo de planejamento de produo introduzido na Seo 3.7, um suplemento a este apndice que se encontra no CD-ROM mostra a formulao do Lingo para esse exemplo. Reduzindo o nmero de produtos, fbricas, mquinas e meses, o suplemento tambm introduz dados reais na formulao e depois exibe a soluo completa. O suplemento prossegue discutindo e ilustrando os processos de depurao e de verificao desse enorme modelo, alm de descrever mais a fundo como recuperar dados de arquivos externos (incluindo planilhas) e como inserir resultados em arquivos existentes. Alm desse suplemento, o CD-ROM inclui um tutorial sobre o Lingo e arquivos Lingo /Lindo com inmeros exemplos de formulaes Lingo. Esses arquivos Lingo/Lindo para certos outros captulos incluem outras fmmulaes Lingo para problemas que esto fora do escopo da programao linear. Alm disso, a Seo 12.10 discute um recurso de otimizao global do Lingo para lidar com complexos problemas de programao no-linear. Vertambm as Referncias Selecionadas 4 e 6 para mais detalhes sobre o Lingo.

88

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

REFERNCIAS SELECIONADAS
1. ANDERSON, D. R. et al. An lntroduction to Management Science. 10. ed. Captulos. 2, 4. St. Paul, MN: West, 2003. 2. GASS, S. An Jllustrated Cuide to Linear Programming. Nova York: Dover Publications, 1990. 3. HILLIER, F. S.; HILLIER, M. S. Jntroduction to Management Science: A Modeling and Case Studies Approach with Spreadsheets. 2. ed. Captulos 2 e 4. Burr Ridge, IL: McGraw-Hill/Irwin, 2003. 4. LJNCO User's Cuide. Chicag-0, iL: LINDO Systems, Inc., 2003. 5. MPL Modeling System (Release 5.0) manual. Arlington, VA: Maximal Software, Inc., 2004. Disponvel em: e-mail: info@maximalsoftware.com. 6. SCHRAGE, L. Optimization Modeling with LJNCO. Chicago, IL: LINDO Systems Press, 2003. 7. WILLIAMS, H. P. Model Building in Mathematical Programming. 4. ed. Nova York: Wiley, 1999.

FERRAMENTAS DE APRENDIZADO PARA ESTE CAPTULO INCLUDAS NO CD-ROM


Exemplos Trabalhados:
Exemplos para o Captulo 3

Um Exemplo Demonstrativo no Tutor PO:


Mtodo Grfico

Procedimentos no Tutorial IOR:


Mtodo Grfico Interativo Mtodo Grfico e Anlise de Sensibilidade

Programa Adicional para Excel


Premium Solver for Education

Arquivos "Ch. 3 Arquivos em Excel Arquivo Lingo/Lindo Arquivo MPL/CPLEX

lntro to LP" para Solucionar os

Glossrio para o Captulo 3 Suplemento para o Apndice 3.1:


Mais Detalhes sobre o Lingo. Ver o Apndice 1 para obter documentao sobre o software.

Os smbolos esquerda de alguns problemas (ou parte deles) tm o seguinte significado: D: O exemplo demonstrativo listado anteriormente pode ser til. 1: Pode ser que voc ache til usar o procedimento correspondente no Tutorial IOR (a impresso registra seu trabalho).

C:

Use o computador para solucionar problema aplicando o mtodo simplex. Entre as opes de software disponveis para fazer isso temos o Excel Solver ou o Premium Solver (Seo 3.6), o MPLEX/CPLEX (Seo 3.7), Lingo (Apndice 3.1) e Lindo (Apndice 4.1), porm siga quaisquer instrues dadas por seu professor em relao a que opo utilizar.

PROBLEMAS
Um asterisco no nmero do problema indica que pelo menos h uma resposta parcial no final do livro.
D

89

3.1-1.* Para cada uma das restries a seguir, desenhe um grfico separado para mostrar as solues de no-negatividade que satisfazem essa restrio.
(a) x 1

(b) 4x 1
(e)

+ 3x2 :S 6 + 3x2 :S 12 4x1 + X2 :'.S 8


trar a regio de solues viveis para todo o conjunto de restries funcionais, alm das restries de no-negatividade.

(d) Agora, combine essas restries em um nico grfico para mos-

3.1-6. A Whitt Window Co. uma empresa com apenas trs funcionrios que fazem dois tipos diferentes de janelas feitas mo: uma com esquadria de alumnio e outra com esquadria de madeira. Eles tm um lucro de US$ 60 por janela com esquadria de madeira e de US$ 30 para janela com esquadria de alumnio. Joo faz as de esquadria de madeira e capaz de construir seis delas por dia. Maria faz as janelas com esquadrias de alumnio e capaz de construir quatro delas por dia. Roberto monta e corta os vidros e capaz de fazer 48 ps 2/dia. Cada janela com esquadria de madeira usa 6 ps 2 de vidro e cada janela com esquadria de alumnio usa 8 ps 2 de vidro.

3.1-2. Considere a funo objetivo a seguir para um modelo de programao linear:

A empresa quer determinar quantas janelas de cada tipo de esquadria podem ser fabricadas diariamente para maximizar o lucro total.
(a) Descreva a analogia entre esse problema e o problema da Wyn-

Maximizar Z = 2x 1
la)

+ 3x2

Desenhe um grfico que mostre as retas de funo objetivo correspondentes para Z = 6, Z = 12 e Z = 18. tbl Localize a forma de interseo de inclinao da equao para cada uma dessas trs retas de funo objetivo. Compare a inclinao dessas retas. Compare tambm a interseo com o eixo x2.

dor Glass Co. discutido na Seo 3.l. A seguir, construa e preencha uma tabela semelhante Tabela 3.1 para esse problema, identificando ambas as atividades e os recursos.
(b) Formule um modelo de programao linear para este problema.
0,1

(e) Use o mtodo grfico para solucionar esse modelo. (d) Um novo concorrente na cidade tambm comeou a fabricar janelas com esquadria de madeira. Isso pode forar a empresa a baixar o preo que eles cobram e, portanto, baixar o lucro feito para cada janela com esquadria de madeira. Como a soluo tima mudaria (se mudasse realmente) se o lucro por janela com esquadria de madeira diminusse de US$ 60 para US$ 40? E de US$ 60 para US$ 20? (Voc pode achar til usar o procedimento de Anlise Grfica e Anlise de Sensibilidade no Tutorial IOR.)
(e) Joo est considerando diminuir sua quantidade de horas de

3.1-3. Considere a seguinte equao de uma reta: 20x 1

+ 40x2 =

400

1a1 Encontre a forma de interseo da inclinao dessa equao.


1b1

1e1

Use essa forma para identificar a inclinao e a interseo com o eixo x2 para essa reta. Use as informaes da parte (b) para desenhar um grfico dessa reta.

:i. 1

3.1-4. * Use o mtodo grfico para solucionar o seguinte prot>lcma:

:\faximizar
;;ujeito a
X2

trabalho o que reduziria o nmero de esquadrias de madeira que ele fabrica por dia. Como a soluo tima mudaria caso ele fizesse apenas cinco esquadrias por dia? (Pode ser que voc ache til utilizar o procedimento de Anlise Grfica e Anlise de Sensibilidade no Tutorial IOR.)
3.1-7 A WorldLight Company produz dois tipos de luminrias (produtos l e 2) que requerem tanto estruturas metlicas quanto componentes eltricos. A direo quer determinar quantas unidades de cada produto devem ser produzidas de forma a maximizar o lucro. Para cada unidade do produto 1, so necessrias uma unidade de estrutura metlica e duas de componentes eltricos. Para cada unidade do produto 2 so necessrias trs unidades de estrutura metlica e duas unidades de componentes eltricos. A empresa possui 200 unidades de estruturas metlicas e 300 unidades de componentes eltricos. Cada unidade do produto 1 d um lucro de US$ 1 e cada unidade do produto 2 fornece lucros na seguinte base: at 60 unidades, US$ 2 de lucro e acima de 60 unidades no d lucro nenhum, de forma que essa hiptese foi descartada.
(a) Formule um modelo de programao linear para esse pro-

:'.S lO :'.S :'.S :'.S

2.T1

+ 5x2 -'1 + Xz 3x1 + X2

60 18 44

:..: 3.1-5. Use o mtodo grfico para solucionar o problema:

:\laximizar ;;::eito a
-xi
-'1

+ 2x2 + X2 5x 1 + 3x2

:S

:'.S
:S

15 12
45

blema.
D,I

(b) Use o mtodo grfico para solucionar esse modelo. Qual

o lucro total resultante?

---

90

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

3.1-8. A Cia. de Seguros Primo est introduzindo duas novas linhas de produtos: seguro de risco especial e hipotecas. O lucro esperado de US$ 5 por unidade em um seguro de risco especial e de US$ 2 por unidade nas hipotecas. A direo quer estabelecer cotas de vendas para as novas linhas de produtos de modo a maximizar o lucro total esperado. As exigncias, em termos de trabalho, so as seguintes:
Horas de Trabalho por Unidade Departamento
Subscrio Administrao Pedidos de indenizao

O nmero de horas-mquina exigidas para cada unidade dorespectivo produto : Coeficiente de produtividade (horas-mquina por unidade)
Tipo de Mquina
Fresadora Torno Retificadora

Produto 1
9 5 3

Produto 2
3
4

Produto 3

Risco Especial
3

Hipotecas

Horas de Trabalho Disponveis

o
2

o
2

2 1

2400 800 1200

O departamento de vendas sinaliza que o potencial de vendas para os produtos l e 2 excede a taxa de produo mxima e que o potencial de vendas para o produto 3 de 20 unidades por semana. O lucro unitrio seria, respectivamente, de US$ 50, US$ 20 e US$ 25 para os produtos 1, 2 e 3. O objetivo determinar quanto de cada produto a mega deveria produzir para maximizar os lucros.
(a) Formule um modelo de programao linear para esse

D,I

(a) Formule um modelo de programao linear para esse problema. (b) Use o mtodo grfico para solucionar esse modelo. (e) Verifique o valor exato de sua soluo tima do item (b) calculando algebricamente a soluo simultnea das duas equaes relevantes.

problema. (b) Use um computador para solucionar esse modelo pelo mtodo simplex.

3.1-9. Bolos e Pes uma fbrica de processamento de alimentos que produz salsichas e pes para cachorro-quente. A empresa moe sua prpria farinha para fazer os pes em uma taxa mxima de 200 libras (peso) por semana. Cada pozinho para cachorro-quente requer O, l libra de farinha. Atualmente, possui um contrato com a Pigland, Inc. que especifica que uma entrega de 800 libras de carne suna entregue toda segunda-feira. Cada salsicha precisa de de libra de carne suna. Todos os demais ingredientes para fabricao de salsicha e pes se encontram em estoque pleno. Finalmente, a fora de trabalho da empresa formada por cinco empregados em perodo integral (40 h/semana cada). Cada salsicha requer trs minutos de trabalho e cada pozinho, dois minutos. Cada salsicha gera um lucro de US$ 0,20 e cada pazinho, US$ 0,10. A empresa gostaria de saber quantas salsichas e quantos pes deve produzir para obter o maior lucro possvel.

D 3.1-11. Considere o problema a seguir, no qual o valor de c 1 ainda no foi determinado.

Maximizar sujeito a
X1

x1

+ Xz :S + 2x2 :s

10

Use a anlise grfica para determinar a(s) soluo(es) tima(s) para (xi. x 2 ) para os diversos possveis valores de c 1 ( - oo < c 1 < oo).
D

(a) Formule um modelo de programao linear para esse problema. D,I (b) Use o mtodo grfico para solucionar esse modelo.
3.1-10.* A Empresa de Manufatura mega descontinuou a produo de uma determinada linha de produtos no-lucrativa. Esse fato acabou criando um considervel excesso de capacidade produtiva. A direo est levando em conta a possibilidade de dedicar esse excesso de capacidade produtiva para um ou mais produtos; a estes vamos cham-los produtos 1, 2 e 3. A capacidade disponvel nas mquinas que poderiam limitar a produo est sintetizada na tabela a seguir:

3.1-12. Considere o problema a seguir, no qual o valor de k ainda no foi determinado.

Maximizar sujeito a

-x 1 +x2 :S2 X2 :S 3
kx1

+ Xz

:S

2k

+ 3,

onde k

2'.

Tipo de Mquina
Fresadora Torno Retificadora

Tempo Disponvel (Horas-Mquina por Semana)

A soluo que est sendo utilizada atualmente x 1 = 2, x2 = 3. Use a anlise grfica para determinar os valores de k de forma que essa soluo seja efetivamente otimizada.
D 3.1-13. Considere o problema a seguir, no qual os valores de c 1 e c 2 ainda no foram determinados.

500 350 150

Maximizar

PROBLEMAS
ito a
2X 1

91

(e) O ponto (O, 0) no pode ser uma soluo tima .

-xi

+ X2 '.S 11 + 2x2::::; 2
O,
X2 2::

x,

2::

0.

__ ~ a anlise grfica para determinar a( s) soluo( es) tima( s) _ x i> x2 ) para os diversos valores possveis de c 1 e c 2 . (Dica: ;ue os casos onde c 2 = O, c2 > O e c2 < O. Para os dois lticasos, concentre-se na razo entre c 1 e c2 .)

' 1. A tabela a seguir sintetiza as informaes-chave sobre dois pro-. A e B, e os recursos, Q, R e S, necessrios para produzi-los.

Emprego de Recurso por Unidade ecurso Produto A Produto B 1 2 3 Quantidade de Recurso Disponvel

Q R

s
;:::m por :.ade

2 1 3

2 2 4

3.2-3. * Este o seu dia de sorte. Voc acaba de ganhar um prmio de US$ 10.000. Voc separa US$ 4.000 para impostos e despesas para o lazer, porm decidiu investir os outros US$ 6.000. Aps ouvir esses comentrios, dois amigos diferentes lhe oferecem uma oportunidade de se tomar scio em dois empreendimentos distintos, cada um deles planejado por um amigo destes. Em ambos os casos, esse investimento envolveria gastar parte de seu tempo no prximo vero, bem como entrar com dinheiro. Tomarse um scio integral no empreendimento do primeiro amigo exigiria um investimento de US$ 5.000 e de 400 horas e seu lucro estimado (ignorando-se o valor de seu tempo) seria de US$ 4.500. Os nmeros correspondentes para o seu segundo amigo seriam de US$ 4.000 e 500 horas, com um lucro estimado para voc de US$ 4.500. Entretanto, ambos os amigos so flexveis e lhe permitiriam entrar com qualquer frao de uma parceria integral caso voc quisesse. Se voc optar por uma frao dessa parceria, todos os valores apresentados na figura anterior para uma parceria integral (investimento em dinheiro e de tempo e o seu lucro) seriam multiplicados por essa mesma frao. Pelo fato de estar pensando em procurar, de qualquer maneira, um emprego para o vero (no mximo de 600 horas), voc decide participar do empreendimento de um ou de ambos os amigos seja qual for a combinao que viesse a maximizar seu lucro total estimado. Agora, voc precisa resolver o problema de encontrar a melhor combinao.
(a) Descreva a analogia entre esse problema e o problema da Wyndor Glass Co. discutido na Seo 3.1. A seguir, construa

as hipteses da programao linear so satisfeitas.

:'onnule um modelo de programao linear para esse modelo. b Resolva o modelo graficamente. -::ri.fique o valor exato de sua soluo tima do item (b) resolendo o problema algebricamente para encontrar as solues = ultneas das duas equaes relevantes. -' A rea sombreada do grfico a seguir representa a regio .ies viveis de um problema de programao linear cuja .:.::: objetivo deve ser maximizada. G sifique cada uma das afirmaes seguintes como Ver- ou Falsa e, a seguir, justifique sua resposta baseando-se no o grfico. Em cada caso, d um exemplo de uma funo obje- e ilustre sua resposta.

e preencha uma tabela como a Tabela 3.1 para o presente problema, identificando tanto as atividades quanto os recursos. (b) Formule um modelo de programao linear para esse problema. o,r (e) Use o mtodo grfico para solucionar esse modelo. Qual o seu lucro estimado total?
o,r 3.2-4. Use o mtodo grfico para encontrar todas as solues

timas do seguinte modelo: Maximizar sujeito a 15x1 10x1 8x 1 Z = 500x 1 + 300x2 ,

+ 5x2 + 6x2 + 12x2


O,

::::;

:S :S

300 240 450

e
X1 2:: X2 2::

0.

o 3.2.5. Use o mtodo grfico para demonstrar que o modelo, a seguir, no tem nenhuma soluo vivel.
Maximizar sujeito a
(6, O)
Xi

Z = 5x 1

+ 7x2,

2x1 -

Xz '.S

-xi+
~ 3. 3) produz um valor maior da funo objetivo do que (0, :: e 6, 3), ento (3, 3) deve ser uma soluo tima. ~ 3. 3) for uma soluo tima e existirem solues timas ~tiplas, ento (0, 2) ou (6, 3) tambm tm que ser uma solu~ tima.

2x2::::;

-1 -1

e
X1 2::

O,

X2 2::

0.

92

CAPTULO 3

INTRODUO PROGRAMAO LINEAR (b) Escala de pessoal (Union Airways). (e) Distribuio de Mercadorias por uma Rede de Distribuio (Cia. Distribuidora Ilimitada).
D,I

D 3.2-6. Suponha que as restries, a seguir, tenham sido fornecidas para um modelo de programao linear.

-x 1 -3x 1

+ 3x2 s + x2 s

30 30

e x1
2:

3.4-3. Use o mtodo grfico para solucionar o seguinte problema:

O,

Minimizar sujeito a

(a) Demonstre que a regio de solues viveis ilimitada.

(b) Se o objetivo for maximizar Z = -x1 + x 2 , o modelo possui uma soluo tima? Em caso positivo, descubra-a. Em caso negativo, explique o porqu. (e) Repita o item (b) quando o objetivo for o de maximizar Z = X1 - Xz. (d) Para as funes objetivo nas quais esse modelo no tem nenhuma soluo tima, isso significa que no h nenhuma soluo de acordo com o modelo? Explique. O que provavelmente deu errado ao formular o modelo?

x, + 2x2 2: 10 2x, - 3x2 s 6


X1

Xz

2:

e x1
0,1

2:

O,

3.4-4. Use o mtodo grfico para resolver o problema a seguir:

3.3.1. Reconsidere o Problema 3.2-3. Indique por que cada uma das quatro hipteses da programao linear (Seo 3.3) parece ser razoavelmente satisfeita para o presente problema. Alguma das hipteses mais duvidosa que as demais? Em caso positivo, o que deveria ser feito para levar isso em considerao? 3.3-2. Considere um problema com duas variveis de deciso, x 1 e xz, que representam, respectivamente, os nveis de atividade l e 2. Para cada varivel os valores permitidos so O, 1 e 2, nos quais as combinaes viveis desses valores para as duas variveis so determinadas a partir de uma srie de restries. O objetivo maximizar certa medida de desempenho simbolizada por Z. Os valores de Z para os valores possivelmente viveis de (xi, x 2 ) so estimados como os apresentados na tabela a seguir:

Minimizar sujeito a

x, + 2x2
2x, 2x1 e

+ 3x2 + X2

=
2:

12 12 8

o 3.4-5. Considere o problema a seguir, no qual o valor de c 1 ainda no foi determinado: Maximizar sujeito a

X2 X1

1 4 8 12

2 8

4x1

+ X2
Xz

X1 -

2:

12 2

o
1 2

o
3 6

13
18

e
x1
2:

O,

Tomando como base essas informaes, indique se esse problema satisfaz completamente cada uma das quatro hipteses da programao linear. Justifique suas respostas.
3.4-1. * Para cada uma das quatro hipteses da programao linear discutidas na Seo 3.3, redija uma anlise de um pargrafo de quo bem voc acha que elas se aplicam a cada um dos exemplos a seguir, apresentados na Seo 3.4:
(a) Planejamento de sesses de radioterapia (Mary). (b) Planejamento Regional (Confederao Meridional de Kibutzim). (e) Controle de poluio do ar (Nori & Leets Co.).

Use a anlise grfica para determinar a(s) soluo(es) tima(s) para (xi, x2 ) para as vrios possveis valores de c 1 .
0,1

3.4-6. Considere o modelo a seguir.

Minimizar sujeito a 2x1 + 3x2 2: 30 X1 + Xz 2: 12 2x1 + x 2 2: 20

e
x 1 2: O,

3.4-2. Para cada uma das quatro hipteses da programao linear discutidas na Seo 3.3, redija uma anlise de um pargrafo de quo bem voc acha que elas se aplicam a cada um dos exemplos a seguir, apresentados na Seo 3.4:
(a) Reciclando Resduos Slidos (Companhia Save-lt).

(a) Use o mtodo grfico para solucionar esse modelo.


(b) Como a soluo tima muda se a terceira restrio funcional

for alterada para Z = 40x 1 + 70 x 2 ? Voc pode achar til usar o procedimento de Anlise Grfica e Anlise de Sensibilidade no Tutorial IOR.

PROBLEMAS
lc) Como muda a soluo caso a terceira restrio funcional seja

93
O objetivo minimizar o custo total de aluguel para atender s exigncias de espao.
(a) Formule um modelo de programao linear para esse problema.

alterada para 2.x1 + x2 2':: 15? (Talvez seja til usar os procedimentos de Anlise Grfica e de Anlise de Sensibilidade descritos no Tutorial IOR.)
3.4-7. Edmundo adora bifes e batatas. Assim, decidiu entrar em uma dieta regular usando somente esses alimentos (alm de alguns lquidos e suplementos vitamnicos) em todas as suas refeies. Ele percebe que essa no a dieta mais saudvel e, portanto, quer certificar-se de que se alimenta das quantidades certas desses dois tipos de alimentos, a fim de atender a determinados requisitos nutricionais. Ele obteve as seguintes informaes nutricionais e de custo:

(b) Solucione esse modelo pelo mtodo simplex.

3.4-9. Edson Cordeiro o diretor do Centro de Informtica da Faculdade Jaboato. Ele precisa fazer a escala de pessoal do centro de informtica. Este abre das 8 horas at a meia-noite. Edson monitorou a utilizao desse centro em vrios perodos do dia e determinou que o seguinte nmero de consultores em informtica seria necessrio:

de Gramas do Ingrediente por Exigncia Diria (gramas) lllgredlente


Carboidratos ?rotena Gordura Custo por refeio

N~

Perodo do Dia Exigncia Diria (Gramas)


50 40 :s 60
2':
2':

Nmero Mnimo de Consultores Necessrios para Estar de Planto


4 8 10 6

Bife
5 20 15 US$ 4

Batatas
15 5 2 US$ 2

8 h/ meio-dia Meio-dia/16 h 16 h/20h/ 20h/meia-noite/

Edmundo quer determinar o nmero de refeies dirias (pode ser iracionrio) com bife e batatas que atender a essas exigncias a :IIIl custo mnimo.
i.al Formule um modelo de programao linear para esse problema. ::u (b) Utilize o mtodo grfico para solucionar esse modelo. (C) Use um computador para solucionar esses modelo pelo mtodo simplex.

3.4-8. A Mercantil Web vende produtos domsticos mediante um .:3llogo on-line. A empresa precisa de bastante espao em depjll{)S para armazenar os produtos. Por enquanto esto sendo feitos pianos para aluguel desse espao para os prximos cinco meses. Quanto de espao ser necessrio em cada um destes meses .:i.."lllhecido. Entretanto, j que essas exigncias de espao so bem ~tas, pode ser que seja mais econmico alugar somente o espa.;t.' necessrio para cada ms, em um regime mensal. No entanto, ,:.. custo adicional para alugar espao para meses adicionais muito :menor que o do primeiro ms, de forma que poderia ser muito mais imato alugar o espao mximo necessrio para todos os cinco D!Si:S. Outra opo uma soluo intermediria de alterar o total Je espao alugado (acrescentando-se um novo aluguel e/ou um alu!UCl provisrio) pelo menos uma vez, porm nem todos os meses. A exigncia de espao e os custos do aluguel para os diversos ;:ieriodos so os seguintes:

Podem ser contratados dois tipos de consultores: em tempo integral e em tempo parcial. Os consultores em tempo integral trabalham por oito horas consecutivas em qualquer um dos seguintes turnos: manh (8 h-16 h), tarde (12 h-20 h) e noite (16 h-00 h). Os consultores em tempo integral recebem US$ 14 por hora. J os consultores em tempo parcial podem ser contratados para trabalhar em qualquer um dos turnos indicados na tabela anterior. Estes recebem US$ 12 por hora. Outro requisito que durante qualquer perodo deve haver pelo menos dois consultores integrais de planto para cada consultor de perodo parcial. Lus quer determinar quantos consultores em tempo integral e quantos em tempo parcial sero necessrios em cada turno para atender s condies anteriores a um custo mnimo .
(a) Formule um modelo de programao linear para esse problema. e (b) Solucione esse modelo aplicando o mtodo simplex.

3.4-10.* A Cia. Medequip produz equipamento de diagnstico mdico de preciso em duas fbricas. As clnicas mdicas fizeram pedidos para a produo deste ms. A tabela direita mostra qual seria o custo para despachar cada unidade do equipamento de cada fbrica para cada um desses clientes. Tambm indicado o nmero de unidades que ser produzido em cada fbrica, bem como o nmero de unidades destinado a cada cliente.

lls
1
2

Espao Necessrio (ps 2 )


30.000 20.000 40.000 10.000 50.000

Perodo de Aluguel (Meses)


2 3 4 5

Custo do Aluguel por p2


US$ US$ US$ US$ US$ 65 100 135 160 190

Fbrica 1 Fbrica 2

~
e

Custo de Remessa por Unidade Cliente 1 Cliente 2


US$ 600 US$ 400 300 unidades US$ 800 US$ 900 200 unidades

Cliente 3
US$ 700 US$ 600 400 unidades

Produo
400 unidades 500 unidades

Tamanho do pedido

3 -4

Agora, necessrio tomar uma deciso em relao ao plano de remessa da mercadoria, ou seja, quantas unidades de cada fbrica para cada cliente.

94

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

(a) Formule um modelo de programao linear para o presente problema. e (b) Solucione o modelo pelo mtodo simplex. 3.4-11. * O Sr. Ferris tem US$ 60.000 que ele deseja investir agora, de modo a utilizar os rendimentos para comprar um plano de aposentadoria em cinco anos. Aps falar com seu consultor financeiro, lhe foram propostos quatro tipos de investimentos de renda fixa que chamaremos investimentos A, B, C e D. Os investimentos A e B se encontram disponveis no incio de cada um dos prximos cinco anos (denominados anos 1 a 5). Cada dlar investido em A no incio de um ano gera como retorno US$ 1,40 (um lucro de US$ 0,40) dois anos mais tarde (edisponvel ento para reinvestimento imediato). Cada dlar investido em B no incio de um ano gera como retomo US$ 1,70 trs anos mais tarde. Os investimentos C e D estaro disponveis em algum momento no futuro. Cada dlar investido em C no incio do ano 2 gera como retomo US$ 1,90 no final do ano 5. O Sr. Ferris deseja saber que plano de investimento maximiza a quantia que pode ser acumulada no incio do ano 6. (a) Todas as restries funcionais para esse problema podem ser expressas na forma de restries de igualdade. Para tanto, faamos com que A,, B,, C, e D, sejam a quantia investida, respectivamente, nos investimentos A, B, C e D no incio do ano t para cada t no qual o investimento se encontra disponvel e com vencimento no final do ano 5. Faamos tambm que R, seja a quantidade de dlares disponvel no investida no incio do ano t (e, portanto, disponvel para investimento em um ano futuro). Portanto, a quantia investida no incio do ano t mais R, tem de ser igual quantidade de dlares disponvel para investimento naquele momento. Escreva as equaes necessrias em termos das variveis relevantes anteriores para o incio de cada um dos cinco anos para obter as cinco restries funcionais para esse problema. (b) Formule um modelo de programao linear completo para o problema. e (e) Solucione esse modelo pelo mtodo simplex. 3.4-12. A Cia. Metalco deseja misturar uma nova liga composta de 40% de estanho, 35% de zinco e 25% de chumbo a partir de diversas ligas disponveis com as seguintes propriedades: Liga Propriedade
Porcentagem de estanho Porcentagem de zinco Porcentagem de chumbo Custo (US$/lb) 1 60 10 30 22

Compartimento
Anterior Centeral Posterior

Capacidade em Peso (t)


12 18 10

Capacidade em Volume (ps 3 )


7.000 9.000 5.000

Alm disso, o peso da carga no respectivo compartimento deve ser da mesma proporo da capacidade em termos de peso desse compartimento para manter o equilbrio da aeronave. As quatro cargas a seguir sero embarcadas em um prximo vo, uma vez que h espao disponvel:

Carga
1 2 3 4

Peso (t)
20 16 25

Volume (ps 3 /t)


500 700 600 400

Lucro (US$/t)
320 400 360 290

13

Qualquer parcela dessas cargas pode ser aceita. O objetivo determinar quanto (se alguma) de cada carga deve ser aceita e como distribuir cada uma delas entre os compartimentos de modo a maximizar o lucro total por vo. (a) Formule um modelo de programao linear para esse problema. e (b) Solucione esse modelo pelo mtodo simplex para encontrar uma das vrias solues timas. 3.4-14. A Universidade de Oxbridge mantm um poderoso mainframe para fins de pesquisa utilizado pelo seu corpo docente, alunos dos cursos de Ph.D. e pesquisadores associados. Durante todo o perodo de funcionamento, preciso estar disponvel um operador para operar e fazer a manuteno do computador, bem como realizar alguns servios de programao. Beryl Ingram, a diretora desse centro de computao, supervisiona a operao. Agora o incio do semestre letivo e Beryl est se deparando com a questo de fazer a escala de seus diversos operadores. Pelo fato de todos os operadores estarem atualmente matriculados na universidade, eles esto disponveis para trabalho somente durante um perodo limitado em cada dia da semana, conforme mostra a tabela a seguir: Nmero Mximo de Horas de Dlsponlbllldade Operadores Salrio/hora
K. C. D. H. H. B. US$ US$ US$ US$ US$ US$ 10,00/hora 1O,1 O/hora 9,90/hora 9,80/hora 10,80/hora 11,30/hora

2
25 15 60 20

3
45 45 10 25

4 20 50 30 24

5
50 40 10 27

Seg. Ter. Qua. Qul. Sex.


6

O objetivo determinar as propores dessas ligas que devem ser misturadas para produzir a nova liga a um custo mnimo. (a) Formule um modelo de programao linear para esse problema. C (b) Solucione esse modelo pelo mtodo simplex. 3.4-13.* Um avio de carga possui trs compartimentos para armazenamento de carga: anterior, central e posterior. Esses compartimentos possuem limites na capacidade de carga tanto em termos de peso quanto de espao, conforme sintetizado abaixo:

o
4

o
6 8

o
4

o
6

s. e.
K. S. N. K.

5
3

o o

5
3

o o
8 6

o
4

o
2

H seis operadores (h dois estudantes diplomados e quatro ainda no curso). Todos eles tm salrios diferentes em razo da

PROBLEMAS
experincia diversa com computadores e em termos de habilidade de programao. A tabela anterior mostra seus salrios juntamente com o nmero mximo de horas que cada um trabalha por dia. Cada operador tem a garantia de certo nmero de horas por semana que far que eles mantenham um conhecimento adequado sobre a operao. O nvel estabelecido arbitrariamente em oito horas por semana para os estudantes no formados (K. C., D. H., H. B. e S.C.) e sete horas por semana para os estudantes diplomados (K. S. e N. K.). O centro de computao deve permanecer aberto para operao das 8 h at as 22 h, de segunda-feira sexta-feira com exatamente um operador de planto durante esse perodo. Aos sbados e domingos o computador deve ser operado por outro pessoal. Por causa de um oramento apertado, Beryl tem de minimizar o custo. Ela quer determinar o nmero de horas que deve atribuir a cada operador em cada dia da semana.

95
(a) Descreva os dois fatores que, de acordo com o artigo, normalmente impedem o uso de modelos de otimizao por parte dos gerentes. (b) A Seo 3.5 indica sem entrar em detalhes que o emprego de programao linear na Ponderosa "levou a mudanas drsticas nos tipos de produtos de compensado enfatizados pela empresa". Identifique essa mudana. (e) Com o sucesso dessa aplicao, a direo est vida por usar a otimizao para outros problemas tambm. Identifique os outros problemas. (d) Faa uma fotocpia das duas pginas dos apndices que do a formulao matemtica do problema e a estrutura do modelo de programao linear.
3.5-2. Leia o artigo na nota de rodap na Seo 3.5 que descreve o segundo estudo de caso apresentado nesta seo: "Escala de Pessoal na United Airlines".
(a) Descreva como a United Airlines preparou todos os turnos de

ca) Formule um modelo de programao linear para esse problema. e (b) Solucione esse modelo pelo mtodo simplex.
3.4-15. Joyce e Marvin dirigem uma creche para crianas em idade pr-escolar. Eles esto tentando decidir o que servir no almoo para essas crianas. Eles gostariam de manter custos baixos, mas tamxm precisam atender s necessidades nutricionais das crianas. Eles j decidiram oferecer sanduches de pasta de amendoim e gelia e alguma combinao de biscoitos integrais, leite e suco de :.aranja. O contedo nutricional de cada alimento e seu custo so Jai:ios na tabela a seguir.

(b)

(e)

.-...ento
~ (1 fatia) >a:st.a de amendoim ,,1 colher de sopa) :.elia de morango '1 colher de sopa) k:oito integral :1 unidade) ...fte (1 copo) S.Xo (1 copo)

Total de Calorias Calorias

Vitamina c (mg)

Protena Custo (cent.) (g)

(d)

10 75

70 100 50 60 150 100

o o
3

(e)

4
7

escalas nos balces de reserva em aeroportos e em escritrios da companhia antes deste estudo de PO. Quando esse estudo comeou, a fase de definio do problema estabelecia cinco exigncias especficas de projeto. Identifique-as. No final da apresentao do exemplo correspondente na Seo 3.4 (escala de pessoal na United Airlines), destacamos que a hiptese de divisibilidade no era satisfeita nesse tipo de aplicao. necessria uma soluo total, porm, pode ser que a programao linear fornea uma soluo tima que no seja total. Como a United Airlines trata esse problema? Descreva a flexibilidade incorporada no sistema de escala de pessoal que satisfaz a cultura do grupo em cada escritrio. Por que essa flexibilidade era necessria? Descreva brevemente os benefcios tangveis e intangveis resultantes desse estudo.

o
20 70

o
1

o
2 120

8
15 35

8
1

3.5-3. Leia o artigo de 1986 na nota de rodap da Seo 2.1 que descreve o terceiro estudo de caso apresentado na Seo 3.5: "Planejando o Fornecimento, a Distribuio e a Comercializao na Citgo Petroleum Corporation".
(a) O que aconteceu durante os anos que precederam esse estudo

As necessidades nutricionais so as seguintes: cada criana ~e receber entre 400 a 600 calorias. No mais que 30% do total z calorias deve provir de gorduras. Cada criana deve consumir ~lo menos 60 mg de vitamina C e 12 g de protena. Alm disso, ?OI" razes prticas, cada criana precisa exatamente de duas fatias .te po (para fazer o sanduche), pelo menos o dobro de pasta de ~ndoim em relao gelia e ao menos um copo de lquido "rite e/ou suco). Joyce e Marvin gostariam de selecionar opes de pratos para .::irla criana a fim de minimizar custos sem deixar de atender s cUgncias nutricionais anteriores.

(b)

(e) (d) (e)


(f) (g)

''

Formule um modelo de programao linear para esse problema. cb) Solucione esse modelo pelo mtodo simplex.

(h)

de PO que tomou muito mais importante controlar o volume de capital empatado em estoque? Que rea geogrfica coberta pela rede de distribuio de oleodutos, caminhes-tanque, navios-tanque e barcaas? Onde eles comercializam seus produtos? Que perodos esto inclusos no modelo? Que computador a Citgo usou para solucionar esse modelo? Quais eram os tempos tpicos de processamento? Quais so os quatro tipos de usurios de modelo? Como cada um deles usa o modelo? Enumere os principais tipos de relatrio gerados pelo sistema SDM. Quais foram os principais desafios de implementao para esse estudo? Descreva os benefcios diretos e indiretos obtidos com esse estudo .

.L.'-1. Leia o artigo da nota de rodap na Seo 3.5 que descreve ~eiro estudo de caso apresentado naquela seo: "Escolhendo 1 _lli.'C de Produtos na Ponderosa Industrial".

3.6-1.* So fornecidos a voc os seguintes dados para um problema de programao linear no qual o objetivo maximizar o lucro de alocar trs recursos a duas atividades no-negativas.

96

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

Emprego do Recurso por Unidade de Cada Atividade Recurso


1 2 3
Contribuio por unidade

Atividade 1
2 3 2

Atividade 2
1 3 4

Quantidade de Recursos Disponveis


10 20 20

3.6-3. So fornecidos os seguintes dados para um problema de programao linear em que o objetivo minimizar o custo de conduzir duas atividades no-negativas de modo a atingir trs benefcios que estejam abaixo de seus nveis mnimos.
Contribuio de Benefcio por Unidade de Cada Atividade Benefcio Atividade 1
5 2 7
US$ 60

Atividade 2
3 2 9 US$ 50

Nvel Mnimo Aceitvel


60 30 126

US$ 20

US$ 30

Contribuio por unidade = lucro por unidade da atividade.

1 2 3
Custo unitrio

(a) Formule um modelo de programao linear para esse problema. 0,1 (b) Use o mtodo grfico para solucionar esse modelo. (e) Exiba o modelo em uma planilha do Excel. (d) Use a planilha para verificar as seguintes solues: (xi. x 2 ) = (2, 2), (3, 3), (2, 4), (4, 2), (3, 4), (4, 3). Qual delas vivel? Qual dessas solues viveis possui o melhor valor da funo objetivo? e (e) Use o Excel Solver para solucionar o modelo pelo mtodo simplex. 3.6-2. Eduardo Siqueira o gerente de produo da Bilco Corporation que produz trs tipos de peas de reposio para automveis. A manufatura de cada pea requer processamento em cada uma das duas mquinas, com os seguintes tempos de processamento (em horas):

(a) Formule um modelo de programao linear para esse proble-

ma. (b) Use o mtodo grfico para solucionar esse modelo. (e) Exiba o modelo em uma planilha do Excel. (d) Use a planilha para verificar as seguintes solues: (x 1, x2 ) = (7, 7), (7, 8), (8, 7), (8, 8), (8, 9), (9, 8). Qual delas vivel? Qual dessas solues viveis possui o melhor valor da funo objetivo? e (e) Use o Excel Solver para solucionar o modelo pelo mtodo simplex.
0,1

Pea Mquina
2

A
0,02 0,05

B
0,03 0,02

c
0,05 0,04

3.6-4.* Fred Jonasson dirige uma propriedade rural familiar. Para complementar sua receita proveniente de diversos produtos alimentcios que so plantados na propriedade, Fred tambm cria sunos. Agora ele quer determinar as quantidades disponveis de rao (milho, tancagem e alfafa) que devem ser dadas a cada porco. J que os porcos comero qualquer mistura desses tipos de rao, o objetivo determinar qual mistura atender certos requisitos nutricionais a um custo mnimo. O nmero de unidades de cada tipo de ingrediente nutricional bsico contido em um quilo de cada tipo de rao dado na tabela a seguir, juntamente com as necessidades nutricionais dirias e os custos de rao.

Cada mquina est disponvel 40 horas por ms. Cada pea manufaturada gerar um lucro unitrio conforme indicado a seguir:
Ingrediente Nutricional

Pea
A Lucro B

Quilo de Milho
90 30 10 84

Quilo de Tancagem
20 80 20 72

Quilo de Alfafa
40 60 60 60

Necessidade Mnima Diria


200 180 150

c
US$ 30

US$ 50

US$ 40

Carboidratos Protenas Vitaminas Custo (centavos)

Eduardo quer determinar o mix de peas de reposio a ser produzido de modo a maximizar o lucro total. (a) Formule um modelo de programao linear para esse problema. (b) Exiba o modelo em uma planilha do Excel. (e) D trs palpites por conta prpria para a soluo tima. Use a planilha para verificar cada uma delas em termos de viabilidade e, sendo realmente vivel, encontre o valor da funo objetivo. Que palpite vivel tem o melhor valor de funo objetivo. (d) Use o Excel Solver para solucionar o modelo pelo mtodo simplex.

(a) Formule um modelo de programao linear para esse problema. (b) Exiba o modelo em uma planilha do Excel. (e) Use a planilha para verificar se (x" xi, x3 ) = (1, 2, 2) uma soluo vivel e, em caso positivo, qual o custo dirio para essa dieta. Quantas unidades de cada ingrediente nutricional essa dieta forneceria diariamente? (d) Reserve alguns minutos para usar um mtodo de tentativa e erro com a planilha para voc elaborar melhores palpites para tentar encontrar a soluo tima. Qual o custo dirio para sua soluo?

PROBLEMAS

97

(e) Use o Excel Solver para solucionar o modelo pelo mtodo simplex.

Fbrica 1 Produto
1 2

Fbrica 2 Fevereiro
4.900 5.100

3.6-5. Maureen Laird o CEO da Alva Electric Co., uma gran.:ie empresa de servio pblico do Meio-Oeste. A empresa prop-amou a construo de novas hidreltricas daqui a cinco, dez e :0 anos a partir de agora para atender s necessidades da popu:.i.,o crescente na regio onde atua. Para cobrir pelo menos os .::ustos de construo, Maureen precisa investir parte do dinheiro .ia empresa agora visando atender essas necessidades futuras de :luxo de caixa. Maureen pode comprar apenas trs tipos de ati.0s financeiros, cada um dos quais custa US$ 1 milho por unilde. Tambm possvel comprar unidades fracionrias. Os ati,-os geram receita daqui a cinco, dez e 20 anos contados a partir .:ie agora e essa receita necessria para cobrir pelo menos as !loeeessidades de caixa nesses anos. Qualquer receita acima da exi~ncia mnima para cada perodo ser usada para aumentar o ;:ugamento de dividendos a acionistas em vez de poup-la para 2}udar a atender s exigncias de fluxo de caixa mnimas no pero.i:> seguinte. A tabela a seguir mostra tanto a receita gerada por midade de cada ativo como tambm o mnimo de receita neces;.iria para cada um dos perodos futuros quando uma nova hidre1.!rrica ser construda.

Fevereiro
3.600 4.500

Maro
6.300 5.400

Maro
4.200 6.000

Cada fbrica possui 20 dias de produo disponveis em fevereiro e 23 em maro para produzir e embarcar esses produtos. Os estoques so esvaziados no final de janeiro, porm cada fbrica tem capacidade de estoque suficiente para armazenar um total de 1.000 unidades dos dois produtos se for produzida uma quantidade em excesso em fevereiro para venda em maro. Em ambas as fbricas o custo de manter estoques dessa maneira de US$ 3 por unidade do produto 1 e US$ 4 por unidade do produto 2. Cada fbrica emprega os mesmos processos de produo, cada um dos quais pode ser usado para produzir qualquer um dos dois produtos. O custo de produo por unidade produzida mostrado a seguir para cada processo em cada uma das fbricas.

Fbrica 1 Produto Processo 1 Processo 2


US$ 62 US$ 78 US$ 59 US$ 85

Fbrica 2 Processo 1 Processo 2


US$ 61 US$ 89 US$ 65 US$ 86

Receita por Unidade de Ativo


Ano
5 10
20

Ativo 1
US$ 2 milhes US$

Ativo 2

Ativo 3

Fluxo de Caixa Mnimo Exigido

1 2

US$ 1 milho US$ 0,5 milho US$ 400 milhes 0,5 milho US$ 0,5 milho US$ 1 milho US$ 100 milhes US$ 1,5 milho US$ 2 milhes US$ 300 milhes o

A taxa de produo para cada produto (nmero de unidades produzidas por dia dedicadas a cada produto) tambm dada para cada processo em cada fbrica.

'.laureen quer determinar o mix de investimentos nesses ativos que .::Dbriro as necessidades de fluxo de caixa e, ao mesmo tempo, ::'..inimizando a quantia total investida.

Fbrica 1 Produto
1 2

Fbrica 2 Processo 1 Processo 2


130 160 110 130

Processo 1 Processo 2
100 120 140 150

a 1 Formule um modelo de programao linear para esse problema. bl Exiba o modelo em uma planilha do Excel. CI Use a planilha para verificar a possibilidade de adquirir cem unidades do Ativo 1, cem unidades do Ativo 2 e 200 unidades do Ativo 3. Quanto de fluxo de caixa esse mix de investimentos geraria nos prximos cinco, dez e 20 anos? Qual seria a quantia total investida? dl Reserve alguns minutos para usar um mtodo de tentativa e erro com a planilha para voc elaborar melhores palpites para tentar encontrar a soluo tima. Qual seria a quantia total investida para sua soluo? (e) Use o Excel Solver para solucionar o modelo pelo mtodo simplex.
3. 7-1. A Philbrik Company tem duas unidades fabris nas costas :ipostas dos Estados Unidos. Cada uma delas fabrica os mesmos .1ois produtos e depois os vende para atacadistas dentro de cada ::netade do pas. Os pedidos de atacadistas j foram recebidos para JS prximos dois meses (fevereiro e maro), nos quais o nmero Je unidades solicitadas mostrado a seguir. A empresa no obri~ada a atender completamente esses pedidos, mas o far caso possa .ilend-los sem diminuir seus lucros.

A empresa recebe a receita lquida por vendas (preo de venda menos custos normais de remessa) quando uma fbrica vende os produtos para seus prprios clientes (os atacadistas em sua metade do pas) de US$ 83 por unidade do produto 1 e US$ 112 por unidade do produto 2. Entretanto, tambm possvel (e ocasionalmente desejvel) para uma fbrica fazer uma remessa para a outra metade do pas a fim de ajudar a completar as vendas da outra fbrica. Quando isso acontece, h um custo extra de remessa de US$ 9 por unidade do produto 1 e US$ 7 por unidade do produto 2. A direo agora precisa determinar quanto de cada produto deve ser fabricado por processo de produo em cada fbrica durante cada ms, bem como quanto cada fbrica vende de cada produto em cada ms e quanto cada fbrica deve remeter de cada produto em cada ms para os clientes da outra fbrica. O objetivo estabelecer qual plano vivel maximizaria o lucro total (receita total de vendas lquidas menos a soma do custo de produo, custos de estoque e custos de remessa extras).

98

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

(a) Formule um modelo de programao linear completo em forma algbrica que mostre as restries individuais e as variveis de deciso para esse problema. e (b) Formule esse mesmo modelo em uma planilha do Excel. A seguir use o Excel Solver para solucionar o modelo. e (e) Use o MPL para formular esse modelo em uma forma compacta. Depois use o solucionador do MPL, o CPLEX, para solucionar o modelo. e (d) Use o Lingo para formular esse modelo em uma forma compacta. A seguir, use o solver do Lingo para solucionar o modelo. e 3.7-2. Reconsidere o Problema 3.1-10. (a) Use o MPL/CPLEX para formular e solucionar o modelo para esse problema. (b) Use o Lingo para formular e solucionar esse modelo. e 3.7-3. Reconsidere o Problema 3.4-10. (a) Use o MPL/CPLEX para formular e solucionar o modelo para esse problema. (b) Use o Lingo para formular e solucionar esse modelo. e 3.7-4. Reconsidere o Problema 3.4-14. (a) Use o MPL/CPLEX para formular e solucionar o modelo para esse problema. (b) Use o Lingo pra formular e solucionar esse modelo. e 3.7-5. Reconsidere o Problema 3.6-4. (a) Use o MPL/CPLEX para formular e solucionar o modelo para esse problema. (b) Use o Lingo pra formular e solucionar esse modelo. e 3.7-6. Reconsidere o Problema 3.6-5. (a) Use o MPL/CPLEX para formular e solucionar o modelo para esse problema. (b) Use o Lingo pra formular e solucionar esse modelo.

3.7-7. Uma grande empresa fabricante de papel, a Quality Paper Corporation, tem dez fbricas de papel a partir das quais abastece mil clientes. Ela usa trs tipos alternativos de mquinas e quatro tipos de matria-prima para fabricar cinco tipos diferentes de papel. Portanto, a empresa precisa desenvolver mensalmente um plano de distribuio detalhado e distribuir o papel durante o ms. Mais especificamente, necessrio determinar em conjunto a quantidade de cada tipo de papel a ser fabricado em cada fbrica em cada tipo de mquina e a quantidade de cada tipo de papel a ser enviada de cada fbrica para cada cliente. Os dados relevantes podem ser expressos simbolicamente como se segue:
Djk

= nmero de unidades de tipo de papel k solicitado pelo

cliente j
rktm

= nmero de unidades de matria-primam necessrio para

produzir uma unidade de tipo de papel k na mquina tipo l R;m = nmero de unidades de matria-prima m disponvel na fbrica de papel i Ckt = nmero de unidades de capacidade de mquina tipo l que vai produzir uma unidade de papel do tipo k Cil = nmero de unidades de capacidade de mquina do tipo l disponvel na fbrica de papel i P;kt = custo de produo para cada unidade de papel tipo k produzida na mquina tipo l na fbrica i Tijk = custo de transporte para cada unidade de papel tipo k remetida da fbrica i para o cliente j (a) Usando esses smbolos, formule manualmente um modelo de programao linear para esse problema. (b) Quantas restries funcionais e variveis de deciso esse modelo possui? e (e) Use o MPL para formular esse problema. e (d) Use o Lingo para formular esse problema.

CASOS
Montagem de Automveis
e cada Classy Cruiser vendido gera um lucro de US$ 5.400 para a empresa. Rachel Rosencrantz, a gerente da unidade de montagem, est decidindo no momento a programao de produo para o prximo ms. Especificamente, ela tem de decidir sobre o nmero de Family Thrillseekers e Classy Cruisers que deve ser produzido na fbrica para maximizar o lucro da empresa. Ela sabe que a fbrica processa uma capacidade de 48.000 horas de trabalho durante o ms. Tambm sabe que so consumidas seis horas de trabalho para montar um Family Thrillseeker e 10,5 horas para um Classy Cruiser. Pelo fato de a fbrica ser apenas uma unidade de montagem, as peas necessrias para montar os dois modelos no so produzidas a, mas sim provenientes de outras unidades nos arredores de Michigan. Por exemplo, pneus, volantes, janelas, bancos e portas provm de vrios fabricantes fornecedores. Para o prximo ms,

Caso 3.1

A Aliana Automveis, uma grande empresa fabricante de automveis, organiza os veculos que ela fabrica em trs famlias: caminhes, carros pequenos e uma terceira farru1ia composta por carros mdios e de luxo. Uma fbrica fora de Detroit, MI, monta dois modelos da farru1ia de carros mdios e de luxo. O primeiro modelo, o Family Thrillseeker, um sed de quatro portas com bancos de vinil, interior de plstico, acessrios-padro e de excelente autonomia. Ele considerado uma boa compra para farru1ias de classe mdia com oramentos apertados, e cada Family Thrillseeker vendido gera um modesto lucro de US$ 3.600 para a empresa. O segundo modelo, o Classy Cruiser, um sed de luxo de duas portas com bancos de couro, interior em madeira, acessrios personalizados e com instrumentos para navegao. Ele comercializado como um privilgio acessvel a famlias de classe mdia-alta,

APRESENTAO PRVIA DOS CASOS ADICIONAIS NO CD-ROM


Rachel sabe que ela ser capaz de obter apenas 20.000 portas ' 10.000 para o lado esquerdo dos veculos e 10.000 para o lado direito) do fornecedor. Uma greve recente forou o fechamento da fbrica desse fornecedor em particular por vrios dias e, portanto, i:=ssa fbrica no poder cumprir seu cronograma de produo para o prximo ms. Tanto o Family Thrillseeker quanto o Classy Cruiser usam o mesmo tipo de porta. Alm disso, uma recente previso da empresa de demandas mensais para diferentes modelos de automveis sugere que a .ernanda pelo Classy seja limitada a 3.500 carros. No h restri.;:o de demanda para o Thrillseeker dentro dos limites de capaci.iade da unidade de montagem.
1a1

99

(f)

(g)

Formule e solucione um problema de programao linear para determinar o nmero de Family Thrillseekers e o de Classy Cruissers que deve ser produzido.

(h)

.\ntes de ela tomar sua deciso final, Rachel pretende explorar as ;eguintes questes independentemente, exceto onde indicado de j,:onna contrria. O departamento de marketing reivindica uma campanha publicitria de US$ 500.000 que elevaria a demanda do prximo ms pelo Classy em 20%. A campanha dever ser levada adiante? ,e Rachel sabe que pode aumentar a capacidade da fbrica para o prximo ms lanando mo de horas extras. Ela pode aumentar em 25% a capacidade em horas de trabalho. Com a nova capacidade da unidade, quantos Thrillseekers e quantos Classy devem ser produzidos? dt Rachel sabe que jornadas de trabalho extraordinrio implicam custos extras. Qual a quantia mxima que ela deveria pagar para todas estas jornadas alm daquele custo em perodos normais de trabalho? Expresse sua resposta na forma de uma soma nica. ,~ Rachel explora a possibilidade de lanar mo tanto da campanha publicitria quanto das jornadas extraordinrias de trabalho. A campanha publicitria aumentaria a demanda por Classy em 20% e as jornadas extras aumentariam a capacidade de produo/hora em 25%. Quantas unidades de Thrillseeker e de Classy deveriam ser produzidas usando-se ambos os recursos
,"b1

(i)

(j)

se o lucro obtido de cada Classy vendido continua a ser 50% superior a cada Thrillseeker vendido? Sabendo que a campanha publicitria custa US$ 500.000 e o emprego mximo de horas extras custa US$ 1.600.000, alm dos custos regulares, a soluo encontrada no item (e) uma deciso inteligente quando comparada com a soluo encontrada no item (a)? A Aliana Automveis constatou que seus revendedores esto, na prtica, dando enormes descontos nas Thrillseekers para diminurem seus estoques. Em virtude de acordo de diviso de lucros com seus revendedores, a empresa no est mais lucrando US$ 3.600 por unidade vendida da Thrillseeker, mas sim um lucro de apenas US$ 2.800. Determine o nmero de Thrillseekers e de Classy a ser produzido dado esse novo preo com desconto. A empresa constatou problemas de qualidade nas Thrillseekers testando-as aleatoriamente no final da linha de montagem. Os inspetores descobriram que em mais de 60% dos casos, duas das quatro portas em um Thrillseeker no fechavam adequadamente. Pelo fato de a porcentagem de Thrillseekers determinada por teste aleatrio ser to alta, o supervisor de cho de fbrica decidiu realizar testes de controle de qualidade em cada um dos Thrillseekers no final da linha de montagem. Por causa desses testes adicionais, o tempo para montar um Thrillseeker aumentou de seis a 7,5 horas. Determine o nmero de unidades de cada modelo que deve ser montado dado o novo tempo de montagem para o Thrillseeker. A diretoria da empresa quer conquistar uma fatia maior do mercado de seds de luxo e, portanto, gostaria de atender demanda total pelos Classy Cruisers. Eles solicitaram a Rachel que determinasse em quanto diminuiria o lucro da unidade de montagem quando comparado ao lucro encontrado no item (a). A seguir, eles solicitam a ela para atender demanda total por Classy Cruisers se a diminuio no lucro no for superior a US$ 2.000.000. Rachel agora toma sua deciso final combinando todas as novas consideraes descritas nos itens (j), (g) e (h). Quais so suas decises finais sobre levar adiante a campanha publicitria, as jornadas extraordinrias de trabalho, sobre o nmero de Thrillseekers e de Classy a ser produzido?

APRESENTAO PRVIA DOS CASOS ADICIONAIS NO CD-ROM


Caso 3.3 Dotando uma Central de Atendimento de Pessoal

Caso 3.2 Cortando Custos na Lanchonete


E-u caso se concentra em um assunto que toca a muitos estudanrs. Como o gerente da lanchonete de uma faculdade deve escolher ::i; mgredientes de um ensopado para tom-lo suficientemente sabo'.QS() para os estudantes e, ao mesmo tempo, minimizando seus cusDS? ~esse caso, podem ser usados os modelos de programao i::::iear com apenas duas variveis de deciso para tratar de sete quesfrs especficas que esto sendo enfrentadas pelo gerente.

O Hospital Infantil da Califrnia usa atualmente um confuso processo descentralizado de cadastramento e marcao de consultas para seus pacientes. Portanto, foi decidido centralizar o processo estabelecendo uma nova central de atendimento dedicada exclusivamente marcao de consultas e ao cadastramento de pacientes. O gerente do hospital agora precisa desenvolver um plano de

100

CAPTULO 3

INTRODUO PROGRAMAO LINEAR

quantos empregados de cada tipo (tempo integral ou parcial, que falem ingls, espanhol ou ambas as lnguas) tero de ser contratados para cada um dos diversos turnos possveis. preciso usar programao linear para determinar um plano que minimize o custo total de fornecer um nvel de atendimento satisfatrio durante as 14 horas em que a central de atendimento fica aberta nos dias teis da semana. O modelo requer mais de duas variveis de deciso e, portanto, um pacote de software como aqueles descritos nas Sees 3.6 e 3.7 ou no Apndice 3.1 sero necessrios para solucionar as duas verses do modelo.

Caso 3.4

Promovendo um Cereal Matinal

O vice-presidente de marketing da Super Grain Corporation precisa desenvolver uma campanha promocional para o novo cereal matinal da empresa. Foram escolhidas trs mdias para a campa-

nha, porm agora precisa ser decidido quanto tempo de cada mdia deve ser utilizado. Entre as restries tem-se um oramento limitado tanto para publicidade quanto para planejamento, um nmero limitado de espaos comerciais disponveis na TV, bem como exigncias para se atingir efetivamente os dois pblicos-alvo especiais (crianas pequenas e seus pais) e para fazer uso pleno de um programa de debates. O modelo de programao linear correspondente requer mais do que duas variveis de deciso de modo que um pacote de software como aqueles descritos nas Sees 3.6 e 3.7 ou no Apndice 3.1 sero necessrios para solucionar o modelo. Este caso tambm pede uma anlise de quo bem as quatro hipteses da programao linear so satisfeitas nesse problema. A programao linear realmente fornece uma base razovel para tomada de deciso nessa situao? (O Caso 12.3 ser uma continuao do presente caso.)

ACULDADE DE EtlGENHARIA DE GUAR ATINGUETA

BIBLIOTECA

25599

Solucionando Problemas de ogramao Linear: O Mtodo Simplex

gora, estamos prontos para estudar o mtodo simplex, um procedimento para solucionar problemas de programao linear. Desenvolvido por George Dantzig em 1947, provou ser um mtodo extremamente eficiente que usado rotineiramente para solucionar problemas imensos nos computadores de hoje. Exceto pelo seu emprego em problemas muito pequenos, esse mtodo sempre executado num computador e pacotes de softwares sofisticados se encontram largamente disponveis. Extenses e variaes do mtodo simplex tambm so usadas para executar anlise de ps-otimalidade (inclusive anlise de sensibilidade) no modelo. Este captulo descreve e executa as principais caractersticas do mtodo simplex. A primeira seo introduz sua natureza genrica, incluindo sua interpretao geomtrica. As trs sees seguintes desenvolvem, ento, o procedimento para solucionar qualquer modelo de programao linear que se encontra em nossa forma-padro (maximizao, todas restries funcionais na forma ::5 e restries de no-negatividade em todas as variveis) e possui apenas lados direitos no-negativos b; em suas restries funcionais. Ct<rtos detalhes sobre a resoluo de empates referem-se Seo 4.5 e a Seo 4.6 descreve como adaptar o mtodo simplex para outras foril)aS de modelo. A seguir, discutimos a anlise de ps-otimalidade (Seo 4.7) e descrevemos a implementao em computador do mtodo simplex (Seo 4.8). A Seo 4.9 introduz ento uma alternativa para o mtodo simplex (o mtodo do ponto interno) para solucionar problemas de programao linear de grande porte .

.1

A ESSNCIA DO MTODO SIMPLEX


O mtodo simplex um procedimento algbrico. Entretanto, seus conceitos subjacentes so geomtricos. Entender esses conceitos geomtricos nos d uma forte sensao intuitiva de como o mtodo simplex opera e o que o toma to eficiente. Portanto, antes de nos aprofundarmos nos detalhes algbricos, nesta seo nos concentraremos na viso geral do ponto de vista geomtrico. Para ilustrar os conceitos geomtricos gerais, usaremos o exemplo da Wyndor Glass Co. apresentado na Seo 3.1. (As Sees 4.2 e 4.3 usam a lgebra do mtodo simplex para solucionar esse mesmo exemplo.) A Seo 5.1 estender esses conceitos geomtricos para aplic-los em problemas maiores. Para refrescar sua memria, o modelo e o grfico para o presente exemplo so repetidos na Figura 4.1. Os cinco limites de restries e seus pontos de interseo so destacados nessa figura, pois eles so os pontos-chave para a anlise. Aqui, cada limite de restrio
101

102

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

X2
XJ

Maximizar Z = 3x1 sujeito a


x,
:S
2x2 :S 2.x2 :S

+ Sx2,

(0, 9)

3x 1 + 2.x2 = 18

3x 1 + e x 1 2: O,

4 12 18

X2 2:

(O, 6)

(4, 6)
2x2

= 12

x,

=4

Regio de solues viveis

(4, 3)

FIGURA 4.1 Limites de restries e solues em pontos extremos para o problema da Wyndor Glass Co.

(O, O) (4, O) (6, O)

X2

x,

uma reta que forma o limite do que permitido pela restrio correspondente. Os pontos da interseo so as solues em pontos extremos do problema. Os cinco pontos que esto nos vrtices da regio de solues viveis - (0, O), (O, 6), (2, 6), (4, 3) e (4, 0) - so as solues viveis em pontos extremos (solues FPE). As outras trs - (O, 9), (4, 6) e (6, 0) - so as chamadas solues inviveis em pontos extremos. Nesse exemplo, cada soluo em ponto extremo est na interseo de dois limites de restries. Para uma programao linear com n variveis de deciso, cada uma de suas solues em pontos extremos est na interseo de n limites de restries. 1 Certos pares de solues FPE na Figura 4.1 compartilham um limite de restrio e outros pares no. Ser importante distinguir entre esses casos usando as seguintes definies gerais.
Para qualquer problema de programao linear com n variveis de deciso, duas solues FPE so adjacentes entre si, caso compartilhem n - 1 limites de restries. As duas solues FPE adjacentes so conectadas por um segmento de reta que desce sobre esses mesmos limites de restries compartilhados. Tal segmento de reta conhecido como um lado da regio de solues viveis.

J no exemplo n = 2, duas de suas solues FPE so adjacentes, se elas compartilharem um limite de restrio; por exemplo, (0, O) e (0, 6) so adjacentes, pois elas compartilham o mesmo limite de restrio x 1 = O. A regio de solues viveis na Figura 4.1 possui cinco lados, composto de cinco segmentos de reta formando o limite dessa regio. Note que dois lados provem de cada soluo FPE. Portanto, cada soluo FPE possui duas solues FPE adjacentes (cada uma das quais estando na outra extremidade de um dos dois lados), conforme enumerado pela Tabela 4.1. (Em cada linha dessa tabela, a soluo FPE na primeira coluna adjacente a cada uma das solues FPE da segunda coluna, porm as duas solues FPE da segunda coluna no so adjacentes entre si.) Uma razo para nosso interesse em solues FPE adjacentes a propriedade geral a seguir sobre tais solues, que fornece uma maneira muito til de verificar se uma soluo FPE ou no uma soluo tima.

Embora uma soluo em ponto extremo seja definida em termos de n limites de restries cuja interseo fornece a soluo, tambm possvel que um ou mais limites de restries adicionais passem pelo ponto extremo.

4.1

A ESSNCIA DO MTODO SIMPLEX TABELA 4.1 Solues FPE adjacentes para cada soluo FPE do problema da Wyndor Glass Co.

103

Soluo FPE

Suas Solues FPE Adjacentes


(O, (2, (4, (4, (O, 6) 6) 3) O) O)

(O, O)
(O, (2, (4, (4, 6) 6) 3) O)

e e e e e

(4, (O, (O, (2, (4,

O) O) 6) 6) 3)

Teste de otimalidade: Considere qualquer problema de programao linear que possua pelo menos uma soluo tima. Se uma soluo tima FPE no tiver nenhuma soluo FPE adjacente que seja melhor (conforme medido por Z), ento ela tem de ser uma soluo tima.
Portanto, por exemplo, (2, 6) tem de ser tima simplesmente, pois seu Z = 36 maior que Z = 30 para (O, 6) e Z = 27 para (4, 3). (Veremos com maior profundidade por que essa propriedade vlida na Seo 5 .1.) Esse teste de otimalidade aquele usado pelo mtodo simplex para determinar quando uma soluo tima foi atingida. Agora, estamos prontos para aplicar o mtodo simplex ao exemplo.

Solucionando o Exemplo
Eis uma descrio do que o mtodo simplex faz (do ponto de vista geomtrico) para solucionar o problema da Wyndor Glass Co. A cada passo, primeiramente, a concluso afirmada e, depois, a razo dada entre parnteses. (Consulte a Figura 4.1 para uma visualizao.) Inicializao: Selecione (O, O) como a soluo FPE inicial a examinar. (Essa uma opo conveniente, pois no necessrio nenhum clculo para identificar essa soluo FPE.) Teste de otimalidade: Conclui-se que (0, O) no uma soluo tima. (Solues FPE adjacentes so melhores.) Iterao 1: Mova-se para uma soluo FPE adjacente melhor, (O, 6), realizando as trs etapas a seguir.

1. Considerando os dois lados da regio de solues viveis que provm de (O, O), desloque-se ao longo do lado que faz que o eixo x2 suba. (Com uma funo objetivo Z = 3x 1 + Sxz, deslocar-se para cima o eixo x2 aumenta Z a uma taxa maior que se deslocar ao longo do eixo x 1 .) 2. Pare no primeiro limite de restrio novo: 2x2 = 12. Deslocar-se mais na direo selecionada na etapa 1 acaba saindo da regio de solues viveis; por exemplo, deslocando-se para o segundo limite de restrio novo atinge-se uma interseo no ponto (O, 9), que uma soluo em ponto extremo invivel. 3. Ache a soluo para a interseo do novo conjunto de limites de restries: (0, 6). As equaes para esses limites de restries, x 1 = O e 2x2 = 12 conduzem-no imediatamente a essa soluo.
Teste de otimalidade: Chega-se concluso que (O, 6) no uma soluo tima (uma soluo FPE adjacente melhor). Iterao 2: Desloque-se para uma soluo FPE melhor, (2, 6), realizando os seguintes passos:

1. Considerando os dois lados da regio de solues viveis provenientes de (0, 6), desloque-se ao longo do lado que vai para a direita. Deslocar-se ao longo desse eixo aumenta Z, ao passo que retomando para mover de volta para baixo o eixo x2 diminui Z. 2. Pare no primeiro limite de restrio novo encontrado ao mover-se na seguinte direo: 3x 1 + 2x2 = 12. Deslocar-se mais na direo selecionada na etapa 1 acaba saindo da regio de solues viveis.

104

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

FIGURA 4.2

Este grfico mostra a seqncia de solues FPE (@, G), @) examinadas pelo mtodo simplex para o problema da Wyndor Glass Co. A soluo tima (2, 6) encontrada apenas aps terem sido examinadas trs solues.

Regio
de solues

(4, 3)

viveis

'\ z =

27

3. Ache a soluo para a interseo do novo conjunto de limites de restries: (2, 6). As equaes para esses limites de restries, 3x 1 + 2x2 = 18 e 2x2 = 12 conduzem-no imediatamente a essa soluo.
Teste de otimalidade: Conclui-se que (2,6) uma soluo tima; portanto, pare (nenhuma das solues FPE adjacentes melhor).

Essa seqncia de solues timas FPE examinadas mostrada na Figura 4.2, em que cada nmero dentro de um crculo identifica qual iterao obteve determinada soluo. Consulte a seo Exemplos Trabalhados no CD-ROM para ver outro exemplo de como o mtodo simplex funciona por meio uma seqncia de solues FPE at atingir a soluo tima. Agora, vejamos os seis conceitos-chave de solues do mtodo simplex que fornecem a base lgica por trs das etapas descritas anteriormente. Tenha em mente que esses conceitos tambm se aplicam para solucionar problemas com mais de duas variveis de deciso nas quais um grfico como o da Figura 4.2 no est disponvel para ajudar a encontrar rapidamente uma soluo tima.

Conceitos-chave para Solues


O primeiro conceito para soluo se baseia diretamente no relacionamento entre solues timas e solues FPE dados no final da Seo 3.2. Conceito para soluo 1: O mtodo simplex se concentra exclusivamente em solues FPE. Para qualquer problema com pelo menos uma soluo tima, para encontr-la uma basta encontrar a melhor soluo FPE. 2 J que o nmero de solues viveis geralmente infinito, reduzir o nmero de solues que precisam ser examinadas a um nmero finito pequeno (apenas trs na Figura 4.2) uma enorme simplificao. O prximo conceito para soluo define o fluxo do mtodo simplex. Conceito para soluo 2: O mtodo simplex um algoritmo iterativo (um procedimento sistemtico para soluo que fica repetindo uma srie de passos, chamados iterao, at que se chegue a um resultado desejado) com a seguinte estrutura:

A nica restrio que o problema tem de possuir solues FPE. Isso garantido se a regio de solues viveis for limitada.

4.1

A ESSNCIA DO MTODO SIMPLEX

105

Inicializao:

1
Teste de otimalidade: Em caso negativo

Configurar para iniciar iteraes, inclusive encontrar uma soluo FPE inicial. A soluo FPE atual tima?

Em caso - - t Pare. positivo

Iterao:

Execute uma iterao para encontrar uma soluo FPE melhor.

Quando o exemplo foi solucionado, observe como esse fluxograma foi seguido, passando por duas iteraes at chegar-se a uma soluo tima. A seguir, nos concentraremos em como iniciar o processo. Conceifo para soluo 3: Sempre que possvel, a inicializao do mtodo simplex opta pela origem (todas as variveis de deciso iguais a zero) como a soluo FPE inicial. Quando h muitas variveis de deciso para encontrar graficamente uma soluo FPE inicial, essa opo elimina a necessidade de usar procedimentos algbricos para encontrar uma soluo FPE inicial. Normalmente possvel escolher-se a origem quando todas as variveis de deciso possuem restries de no-negatividade, pois a interseo desses limites de restries conduz origem como uma soluo em ponto extremo. Essa soluo ento uma soluo FPE a menos que ela seja invivel, porque viola uma ou mais das restries funcionais. Se ela for invivel, so necessrios procedimentos especiais descritos na Seo 4.6 para se encontrar a soluo FPE inicial. O prximo conceito para soluo se refere escolha de uma soluo FPE melhor a cada iterao. Conceito para soluo 4: Dada uma soluo FPE, muito mais rpido em termos computacionais coletar informaes sobre suas solues FPE adjacentes do que sobre outras solues FPE. Portanto, cada vez que o mtodo simplex executar uma iterao para se deslocar da soluo FPE atual para uma melhor, ele sempre opta por uma soluo FPE que adjacente soluo atual. No considerada nenhuma outra soluo FPE. Conseqentemente, o percurso todo seguido para eventualmente se chegar a uma soluo tima ao longo dos lados da regio de solues viveis. O prximo foco qual soluo FPE adjacente escolher a cada iterao. Conceito para soluo 5: Aps a soluo FPE atual ter sido identificada, o mtodo simplex examina cada um dos lados da regio de solues viveis provenientes dessa soluo FPE. Cada um desses lados leva a uma soluo FPE adjacente na outra extremidade, porm o mtodo simplex nem mesmo tenta chegar a uma soluo FPE adjacente. Em vez disso, ele simplesmente identifica a taxa de crescimento em Z que seria obtida deslocando-se ao longo do lado. Entres os lados com uma taxa de crescimento positiva em Z, ele opta ento por deslocar-se ao longo do lado com a maior taxa de crescimento em Z. A iterao completada tentando primeiramente encontrar a soluo FPE adjacente na outra extremidade desse lado e depois renomeando essa soluo FPE adjacente como a soluo FPE atual para o teste de otimalidade e (se necessrio) a prxima iterao. Na primeira iterao do exemplo, deslocar-se de (O, O) ao longo do lado no eixo x 1 daria uma taxa de crescimento em Z de 3 (Z sobe para 3 a cada aumento unitrio em x 1 ), ao passo que se mover ao longo do lado no eixo x 2 resultaria numa taxa de crescimento em Z de 5 (Z sobe para 5 a cada aumento unitrio em x 2 ), de modo que se decide fazer o deslocamento ao longo

106

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

desse ltimo lado. Na segunda iterao, o nico lado proveniente de (O, 6) que levaria a uma taxa de crescimento positiva em Z o lado que vai para (2, 6), de forma que se opta por mover-se ao longo desse lado. O ltimo conceito para soluo esclarece como o teste de otimalidade realizado eficientemente. Conceito de soluo 6: O conceito de soluo 5 descreve como o mtodo simplex examina cada um dos lados da regio de solues viveis que provm da soluo FPE atual. Esse exame de um lado leva a identificar rapidamente a taxa de aumento em Z que seria obtida deslocando-se ao longo do lado na direo da soluo FPE adjacente na outra extremidade. Uma taxa positiva de crescimento em Z implica que a soluo FPE adjacente melhor que a soluo FPE atual, ao passo que uma taxa negativa de crescimento em Z implica que a soluo FPE adjacente pior. Logo, o teste de otimalidade consiste simplesmente em verificar se qualquer um dos lados d uma taxa de crescimento em Z positiva. Se nenhum atender a isso, ento a soluo FPE atual a soluo tima. No exemplo, deslocar ao longo de qualquer um dos eixos a partir de (2, 6) diminui Z. Visto que queremos maximizar Z, esse fato resulta imediatamente na concluso de que (2, 6) tima.

CONFIGURANDO O MTODO SIMPLEX


A Seo 4.1 enfatizou os conceitos geomtricos subjacentes ao mtodo simplex. Porm, esse algoritmo normalmente executado em um computador, que pode seguir somente instrues algbricas. Portanto, necessrio traduzir 'procedimento conceitualmente geomtrico apenas descrito num procedimento algbrico til. Nesta seo, introduzimos a linguagem algbrica do mtodo simplex e a relacionamos aos conceitos da seo anterior. O procedimento algbrico se baseia em sistemas de equaes para soluo. Desse modo, a primeira etapa na configurao do mtodo simplex converter restries funcionais de desigualdade em restries de igualdade equivalentes as restries de no-negatividade so deixadas como desigualdades, pois elas so tratadas separadamente. Essa converso realizada introduzindo-se variveis de folga. Para fins de ilustrao, consideremos a primeira restrio funcional no exemplo da Wyndor Glass Co. da Seo 3.1

A varivel de folga para essa restrio definida como

que a quantidade de folga no lado esquerdo da desigualdade. Logo,

xi

Dada essa equao, xi :s 4 se e somente se 4 - xi = x3 :s 4 inteiramente equivalente ao par de restries e

2::

O. Portanto, a restrio original

Aps a introduo de variveis de folga para as demais restries funcionais, o modelo de programao linear original para o exemplo (mostrado esquerda na pgina 107) pode agora ser substitudo pelo modelo equivalente (chamado forma aumentada do modelo) exposto a seguir direita:

4.2

CONFIGURANDO O MTODO SIMPLEX


Forma Original do Modelo Forma Aumentada do Modelo 3

107

Maximizar sujeito a

Z = 3x 1

+ 5x2 ,
(1) (2) (3)

Maximizar sujeito a

,,; 4
2x2,,;

12 18

+ X4 + X5
=

12 18

3x1

+ 2x2 s
O,

e
X1 2:

e
Xz 2:

O.

para}= 1, 2, 3, 4, 5.

Embora ambas as formas do modelo representem exatamente o mesmo problema, a nova forma muito mais conveniente para manipulao algbrica e para a identificao das solues FPE. Chamamos isso forma aumentada do problema, pois a forma original foi aumentada por algumas variveis suplementares necessrias para aplicar o mtodo simplex. Se uma varivel de folga for igual a Ona soluo atual, ento essa soluo est no limite de restrio para a restrio funcional correspondente. Um valor maior que O significa que a soluo est no lado vivel desse limite de restrio, ao passo que um valor menor que O 1 significa que a soluo est no lado invivel desse limite de restrio. Uma demonstrao dessas propriedades fornecida pelo exemplo demonstrativo no Tutor PO intitulado Interpretao de Variveis de Folga. A terminologia usada na Seo 4.1 (solues em pontos extremos etc.) aplica-se forma original do problema. Introduzimos agora a terminologia correspondente para a forma aumentada. Uma soluo aumentada uma soluo para as variveis originais (as variveis de deciso) que foi aumentada pelos valores correspondentes das variveis de folga. Por exemplo, aumentando a soluo (3, 2) no exemplo leva soluo aumentada (3, 2, 1, 8, 5), pois os valores correspondentes das variveis de folga so x3 = 1, x 4 = 8 e x 5 = 5. Uma soluo bsica uma soluo em ponto extremo aumentada. Para fins de ilustrao, consideremos a soluo invivel em ponto extremo (4, 6) na Figura 4.1. Aumentando-a com os valores resultantes das variveis de folga x 3 = O, x4 = O e x 5 = -6 resulta na soluo bsica correspondente (4, 6, O, O, -6). O fato de as solues em pontos extremos (e algumas solues bsicas) poderem ser viveis ou no implica a seguinte definio: Uma soluo bsica vivel (BV) uma soluo FPE aumentada. Portanto, a soluo FPE (O, 6) no exemplo equivalente soluo BV (O, 6, 4, O, 6) para o problema na forma aumentada. A nica diferena entre solues bsicas e solues em pontos extremos (ou entre solues BV e FPE) se os valores das variveis de folga esto ou no includos. Para qualquer soluo bsica, a soluo em ponto extremo correspondente obtida simplesmente eliminando-se as variveis de folga. Desse modo, as relaes geomtricas e algbricas entre essas duas solues so muito prximas, conforme descrito na Seo 5.1. Pelo fato de os termos soluo bsica e soluo bsica vivel serem partes muito importantes do vocabulrio-padro da programao linear, precisamos agora esclarecer suas propriedades algbricas. Para a forma aumentada do exemplo, observe que o sistema de restries funcionais possui cinco variveis e trs equaes, portanto: Nmero de variveis - nmero de equaes = 5 - 3 = 2

As variveis de folga no so mostradas na funo objetivo, pois os coeficientes que multiplicam as variveis de folga na funo objetivo valem zero.

108

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

Esse fato resulta em 2 graus de liberdade na soluo do sistema, j que quaisquer das duas variveis podem ser escolhidas para ser iguais a qualquer valor arbitrrio de modo a resolver as trs equaes em termos das trs variveis restantes. 4 O mtodo simplex usa zero para este valor arbitrrio. Assim, duas das variveis (chamadas variveis no-bsicas) so configuradas em zero e, ento, a soluo simultnea das trs equaes para as outras trs variveis (denominadas variveis bsicas) a soluo bsica. Essas propriedades so descritas nas definies genricas a seguir: Uma soluo bsica possui as seguintes propriedades: 1. Cada varivel designada como uma varivel bsica ou uma varivel no-bsica. 2. O nmero de variveis bsicas igual ao nmero de restries funcionais (agora equaes). Portanto, o nmero de variveis no-bsicas igual ao nmero total de variveis menos o nmero de restries funcionais. 3. As variveis no-bsicas so configuradas em zero. 4. Os valores das variveis bsicas so obtidos como a soluo simultnea das equaes (restries funcionais na forma aumentada). (O conjunto de variveis bsicas normalmente conhecido como a base.) 5. Se as variveis bsicas satisfizerem as restries de no-negatividade, a soluo bsica uma soluo BV. Para ilustrar essas definies, considere novamente a soluo BV (O, 6, 4, O, 6). Essa soluo foi obtida antes de aumentar a soluo FPE (O, 6). Porm, outra forma de se obter essa mesma soluo escolher x 1 e x4 para serem as duas variveis no-bsicas e, portanto, configurar as duas variveis iguais a zero. As trs equaes resultam ento, respectivamente, em x3 = 4, x 2 = 6 e x 5 = 6 como a soluo para as trs variveis, conforme mostrado a seguir (com as variveis bsicas em negrito):
x 1 = O e x4 = O assim
(1) (2) (3)
=

X3 =
X2 = X5

+ X4

+ X5

12 = 18

4 6 =6

Em virtude de essas trs variveis bsicas serem no-negativas, essa soluo bsica (O, 6, 4, O, 6) , de fato, uma soluo BV. A seo de Exemplos Trabalhados do CD-ROM inclui outro exemplo da relao entre as solues FPE e solues BV. Da mesma forma que certos pares de solues FPE so adjacentes, os pares correspondentes de solues BV tambm so ditas adjacentes. Eis uma forma fcil de dizer quando duas solues BV so adjacentes. Duas solues BV so adjacentes se todas exceto uma de suas variveis nobsicas forem iguais. Isso implica que todas exceto uma de suas variveis bsicas tambm sero iguais entre si, embora talvez com valor diferente daquele da varivel no-bsica. Conseqentemente, deslocar-se da soluo BV atual para uma adjacente envolve ficar mudando de uma varivel no-bsica para uma varivel bsica e vice-versa para outra varivel (e depois ajustar os valores das variveis bsicas para continuar satisfazendo o sistema de equaes). A fim de ilustrar as solues BV adjacentes, considere um par de solues FPE adjacentes na Figura 4.1: (O, O) e (0, 6). Suas solues aumentadas (O, O, 4, 12, 18) e (0, 6, 4, O, 6) so, automaticamente, solues BV adjacentes. Entretanto, no preciso observar a Figura 4.1 para se chegar a essa concluso. Outro indicador que suas variveis no-bsicas, (x 1 , x 2 ) e (x 1 , x4 ) so iguais, exceto por um detalhe - x 2 foi substituda por x4 . Por conseguinte, deslocar-se de (O, O, 4, 12, 18) para (O, 6, 4, O, 6) envolve ficar trocando x2 de bsica para no-bsica e vice-versa para x4 .
4

Esse mtodo de determinao do nmero de graus de liberdade para um sistema de equaes vlido desde que o sistema no inclua equaes redundantes. Essa condio sempre vale para os sistemas de equaes formados pelas restries funcionais na forma aumentada de um modelo de programao linear.

4.3

A LGEBRA DO MTODO SIMPLEX

109

Quando lidarmos com o problema na forma aumentada, conveniente considerar e manipular a equao da funo objetivo ao mesmo tempo que as novas equaes de restries. Logo, antes de iniciar o mtodo simplex, o problema precisa ser reescrito mais uma vez numa forma equivalente: Maximizar sujeito a

Z,

(0)
(1) (2) (3)
X1

o
4

+ X3
2x2

+ X4 + X5

= 12
=

3x I

2x2

18

e
para}= 1, 2, ... , 5.

como se Eq. (O) fosse, na verdade, uma das restries originais, porm, pelo fato de ela j se encontrar na forma de igualdade, no necessrio nenhuma varivel de folga. Ao acrescentarmos mais uma equao, tambm acrescentamos mais um (Z) desconhecido ao sistema de equaes. Portanto, ao usar as Eqs. (1) a (3) para obter uma soluo bsica, conforme descrito anteriormente, usamos a Eq. (0) para solucionar Z ao mesmo tempo. De certa forma fortuita, o modelo para o Wyndor Glass Co. se encaixa em nossa fonnapadro e todas as suas restries funcionais possuem lados direitos no-negativos bi. Se esse no tivesse sido o caso, ento teriam sido necessrios ajustes adicionais nesse ponto antes de o mtodo simplex poder ter sido aplicado. Esses detalhes referem-se Seo 4.6 e, no momento, nos concentraremos no mtodo simplex em si.

4.J

A LGEBRA DO MTODO SIMPLEX


Continuamos a usar o exemplo prottipo da Seo 3.1, como reescrito no final da Seo 4.2, para fins ilustrativos. Para comear a ligar os conceitos geomtricos e algbricos do mtodo simplex, passamos a descrever lado a lado na Tabela 4.2 como o mtodo simplex soluciona esse exemplo tanto segundo o ponto de vista geomtrico quanto o algbrico. A viso geomtrica (apresentada inicialmente na Seo 4.1) se baseia na forma original do modelo (nenhuma varivel de folga); portanto, consulte novamente a Figura 4.1 para uma visualizao ao examinar a segunda coluna da tabela. Consulte tambm a forma aumentada do modelo apresentada no final da Seo 4.2 ao examinar a terceira coluna da tabela. Vejamos agora os detalhes para cada passo da terceira coluna da Tabela 4.2.

Inicializao
A opo de fazer que x 1 e x 2 sejam variveis no-bsicas (as variveis so configuradas iguais a zero) para a soluo BV inicial se baseia no conceito de soluo 3 da Seo 4.1. Essa opo elimina o trabalho que seria necessrio para encontrar uma soluo para as variveis bsicas (x 3 , x4 , x5 ) do seguinte sistema de equaes (em que as variveis bsicas so indicadas em negrito):
(1) (2) (3)

X1

+ X3
2Xz

= 4

+ X4

= 12

3x 1

+ 2x2

+ X5

= 18

x 1 =O e x 2 =O assim X3 = 4 X4 = 12 X5 = 18

Portanto, a soluo BV inicial (O, O, 4, 12, 18). Note que essa soluo pode ser lida imediatamente, pois cada equao possui apenas uma varivel bsica, que tem um coeficiente igual a 1, e essa varivel bsica no aparece na outra equao. Em breve, veremos que, quando o conjunto de variveis bsicas muda, o mtodo simplex usa um procedimento algbrico (eliminao gaussiana) a fim de converter

110

CAPTULO 4

SOLUC\ONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

TABELA 4.2 Interpretaes geomtricas e algbricas de como o mtodo simplex

soluciona o problema da Wyndor Glass Co.


Mtodo Seqncia
Inicializao

Interpretao Geomtrica
Escolha (O, O) como a soluo FPE inicial. No tima, pois, movimentando-se qualquer um dos lados a partir de (O, O), aumenta Z. Desloque para cima o lado sobre o eixo x2 Pare, quando for atingido o primeiro limite de restrio novo (2x2 = 12) . Encontre a interseo do novo par de limites de restries: (O, 6) a nova soluo FPE. No tima, pois, movimentando-se para a direita ao longo do lado a partir de (O, 6), aumenta Z. Deslocar para a direita ao longo desse lado. Pare, quando for atingido o primeiro limite de restrio novo (3x1 + 2x2 = 18). Encontre a interseo do novo par de limites de restries: (2, 6) a nova soluo FPE.

Interpretao Algbrica
Escolha x1 e x2 para serem variveis no-bsicas ( = O) para a soluo BV inicial: (O, O, 4, 12, 18). No tima, pois, aumentando-se qualquer uma das variveis no-bsicas (x1 ou x2 ), aumenta Z. Aumente x2 enquanto ajusta os valores de outras variveis para satisfazer o sistema de equaes. Pare, quando a primeira varivel bsica (x 3 , x4 , ou x5 ) cair para zero (x4 ). Agora com x2 endo uma varivel bsica e x4 uma varivel no-bsica, resolva o sistema de equaes (O, 6, 4, O, 6) para que seja a nova soluo BV. No tima, pois, aumentando-se uma varivel no-bsica (x1 ) aumenta Z.

Teste de otimalidade Iterao 1 Passo 1

Passo 2 Passo 3

Teste da otimalidade Iterao 2 Passo 1

Passo 2 Passo 3

Teste da otimalidade

(2, 6) tima, pois, movimentando-se ao longo de qualquer um dos lados a partir de (2, 6), diminui Z.

Aumente x1 enquanto ajusta os valores de outras variveis para satisfazer o sistema de equaes. Pare, quando a primeira varivel bsica (x2 ,. x3 , ou x5 ) cair para zero (x5 ). Agora com x1 sendo uma varivel bsica e x5 uma varivel no-bsica, resolva o sistema de equaes: (2, 6, 2, O, O) para que seja a nova soluo BV. (2, 6, 2, O, O) tima, pois, aumentando-se qualquer varivel no-bsica (x4 ou x5 ) diminui Z.

as equaes para a mesma forma conveniente para ler tambm qualquer soluo BV subseqente. Essa forma denominada forma apropriada da eliminao gaussiana.

Teste de otimalidade
A funo objetivo
Z = 3x 1

+ 5x2,

de forma que Z = O para a soluo BV inicial. Pelo fato de nenhuma das variveis bsicas (x3 , x 4 , x5 ) ter um coeficiente no-zero nessa funo objetivo, o coeficiente de cada varivel no-bsica (xi. x2 ) fornece a taxa de crescimento em Z, caso essa varivel tivesse de ser aumentada a partir de zero (enquanto os valores das variveis bsicas so ajustados para continuarem a satisfazer o sistema de equaes). 5 Essas taxas de crescimento (3 e 5) so positivas. Portanto, baseando-se no conceito para soluo n 6 da Seo 4.1, conclumos que (O, O, 4, 12, 18) no tima. Para cada soluo BV examinada aps sucessivas iteraes, pelo menos uma varivel bsica tem um coeficiente no-zero na funo objetivo. Portanto, o teste de otimalidade

Note que essa interpretao de coeficientes das variveis x1 se baseia nessas variveis que se encontram no lado direito da equao Z = 3x 1 + 5x2 . Quando essas variveis forem trazidas para o lado esquerdo para Eq. (O), Z - 3x 1 - 5x2 = O, os coeficientes no-zero mudam seus sinais.

A LGEBRA

MTODO SIMPLEX

111

usar, ento, a nova Eq. (0) para reescrever a funo objetivo em termos apenas de variveis no-bsicas, como ser visto adiante.

Determinando a Direo de Deslocamento {Passo 1 de uma Iterao)


Aumentar uma varivel no-bsica a partir de zero (enquanto se ajusta os valores das variveis bsicas para continuar satisfazendo o sistema de equaes) corresponde a movimentarse ao longo de um lado proveniente da soluo FPE atual. Baseando-se nos conceitos para soluo de nmeros 4 e 5 da Seo 4.1, a escolha de quais variveis no-bsicas devem ser aumentadas feita da seguinte forma: Z = 3x1 + 5x2 Aumentar x 1? Taxa de crescimento em Z = 3. Aumentar x 2 ? Taxa de crescimento em Z = 5. 5 > 3, portanto opte por x 2 para crescer. Conforme indicado a seguir, chamamos x 2 de varivel bsica que entra para a iterao 1.
Em qualquer interao do mtodo simplex, o propsito do passo 1 escolher uma varivel no-bsica para ser aumentada (enquanto os valores das variveis bsicas so ajustados para continuar satisfazendo o sistema de equaes). Aumentar essa varivel no-bsica a partir de zero a converter numa varivel bsica para a soluo BV seguinte. Assim, essa varivel conhecida como varivel bsica que entra para a iterao atual (pois est introduzindo a base).

Determinando Onde Parar {Passo 2 de

um~

Iterao)

O passo 2 trata da questo de quanto aumentar a varivel bsica que entra, x 2 , antes de parar. Aumentando-se xi, eleva-se Z; portanto, queremos ir o mais longe possvel sem sair da regio de solues viveis. A exigncia de satisfazer restries na forma aumentada (mostrada a seguir) significa que aumentar x 2 (enquanto se mantm a varivel no-bsica x 1 = O) muda os valores de algumas das variveis bsicas, conforme ilustrado direita.
x1 =
(1) (2) (3)

= 4

X3

+ X4 + X5

= 12
=

X4 x5

18

O, logo = 4 = 12 - 2xz = 18 - 2x2 .

O outro requisito para viabilidade que todas as variveis sejam no-negativas. As variveis no-bsicas (inclusive a varivel bsica que entra) so no-negativas, porm precisamos ver quanto x 2 pode ser aumentada sem violar as restries de no-negatividade para as variveis bsicas.

x3 = 4
X4 =

2:

12 -

2x2 2: ~

nenhum limite superior em x 2 12 X2 '.5 2 = 6 ~mnimo. 18 2

X5

= 18 -

2X2 2: ~ Xz '.5

= 9.

Desse modo, x 2 pode ser aumentada apenas at 6, no qual o ponto x 4 chega a O. Aumentar x 2 alm de 6 faria que x 4 se tomasse negativa, o que violaria a viabilidade. Esses clculos so conhecidos como o teste da razo mnima. O objetivo do teste determinar qual varivel bsica cai a zero primeiro, medida que a varivel bsica que entra aumentada. Podemos descartar imediatamente a varivel bsica em qualquer equao, em que o coeficiente da varivel bsica que entra zero ou negativo, j que uma varivel bsica desta no decresceria medida que a varivel bsica que entra fosse aumentando. isso o que acontece com x 1 na Eq. (1) do exemplo. Entretanto, para cada equao na qual o coeficiente da varivel bsica que entra for estritamente positivo (> O), esse teste calcula a razo entre o lado direito da equao e o coeficiente da varivel bsica que entra. A varivel bsica na equao com a razo mnima aquela que cai para zero primeiro medida que a varivel bsica que entra aumentada.

112

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

A qualquer iterao do mtodo simplex, o passo 2 usa o teste da razo mnima para determinar qual varivel bsica cai para zero primeiro medida que a varivel bsica que entra aumentada. Diminuir esta varivel bsica at zero a converter em uma varivel no-bsica para a soluo BV seguinte. Portanto, essa varivel chamada varivel bsica que sai para a iterao atual (pois ela est saindo da base).

Portanto, x 4 a varivel bsica que sai para a iterao 1 do exemplo.

Mtodo de Resoluo para se Chegar Nova Soluo BV (Passo 3 de uma Iterao)


Aumentando-se x 2 = O para x 2 = 6 nos desloca da soluo BV inicial esquerda para a nova soluo BV da direita. Soluo BV inicial Variveis no-bsicas: x 1 = O, x 2 = O Variveis bsicas: x 3 = 4, x 4 = 12, x 5 = 18 Nova soluo BV
X1 X3

=O, = ?,

X4 X2

=o = 6,

X5

= ?

O objetivo do passo 3 o de converter o sistema de equaes em uma forma mais conveniente (forma apropriada da eliminao gaussiana) para conduzir o teste de otimalidade e (se necessrio) a prxima iterao com essa nova soluo BV. No processo, essa forma tambm identificar os valores de x 3 e x 5 para a nova soluo. Eis novamente o sistema de equaes completo no qual as novas variveis bsicas so indicadas em negrito (com Z desempenhando o papel da varivel bsica na equao da funo objetivo):
(0) (1) (2) (3)

Z - 3x 1
X1

5x 2

+ X3
2x1

= o = 4

+ X4

3x1

+ 2x1

+ X5

= 12 = 18.

Portanto, x substituiu x 4 como varivel bsica na Eq. (2). Para solucionar esse sistema de 2 equaes para Z, x 2 , x 3 e x 5 , precisamos executar algumas operaes algbricas elementares para reproduzir o padro atual de coeficientes de x 4 (O, O, 1, O) como os novos coeficientes de x Podemos usar qualquer um dos dois tipos de operaes algbricas elementares:
2

1. Multiplicar (ou dividir) uma equao por uma constante diferente de zero.
2. Somar (ou subtrair) um mltiplo de uma equao a (de) outra equao. Para preparar-se para realizar tais operaes, observe que os coeficientes de x2 no sistema de equaes anterior so, respectivamente, -5, O, 2 e 2, enquanto queremos que esses coeficientes se tomem iguais a O, O, 1 e O. Para transformar o coeficiente 2 da Eq. (2) em 1, usamos o primeiro tipo de operao algbrica elementar dividindo a Eq. (2) por 2 para obter
(2)

Para transformar os coeficientes - 5 e 2 em zeros, precisamos usar o segundo tipo de operao algbrica elementar. Em particular, adicionamos cinco vezes essa nova Eq. (2) Eq. (O) e subtramos duas vezes essa nova Eq. (2) da Eq. (3). O novo sistema resultante completo de equaes fica 5

(O)
(1)
(2)

Z- 3x 1
X1 X2

+ 2X4 + X3 + 2X4
X4

= 30

4
1

(3)

3x1

+ X5

6.

J que x = O e x 4 = O, as equaes nesse formato levam imediatamente nova solu1 o BV, (xi. xi. x 3 , x 4 , x 5 ) = (O, 6, 4, O, 6), que resulta em Z = 30.

4.3

A LGEBRA DO MTODO SIMPLEX

113

Esse procedimento para obter a soluo simultnea de um sistema de equaes lineares chamado mtodo da eliminao de Gauss-Jordan ou, simplesmente, eliminao gaussiana.6 O conceito-chave para esse mtodo o uso de operaes algbricas elementares para reduzir o sistema de equaes original forma apropriada da eliminao gaussiana em que cada varivel bsica foi eliminada de todas, exceto uma equao (a sua prpria equao) e tem um coeficiente + 1 nessa equao.

Teste de Otimalidade paira a Nova Soluo BV


A Eq. (0) atual d o valor da funo objetivo em termos somente de suas variveis no-bsicas atuais Z = 30

+ 3x 1 - 2x4.

Aumentando-se qualquer uma dessas variveis no-bsicas a partir de zero (e, ao mesmo tempo, ajustando os valores das variveis bsicas para continuar satisfazendo o sistema de equaes) resultaria em movimentar-se em direo de uma das duas solues BV adjacentes. Pelo fato de x 1 ter um coeficiente positivo, aumentar xi levaria a uma soluo BV adjacente que melhor que a soluo BV adjacente atual; portanto, a soluo atual no tima.

Iterao 2 e a Soluo tima Resultante


Uma vez que Z = 30 + 3xi - ~x4 , Z pode ser elevado aumentando-se Xi, mas no x 4. Portanto, o passo 1 opta por xi como varivel bsica que entra. Para o passo 2, o sistema de equaes atual nos leva s seguintes concluses sobre quanto x 1 pode ser aumentada (com x 4 = O):
X3

4 - X1

2:
=:}

=:}

Xi ::s

4.

x 2 = 6 2: O

nenhum limite superior em Xi.


=:}

x 5 = 6 - 3x 1 2: O

xi ::s

6 3 =2

mnimo.

Assim, o teste da razo mnima indica que x 5 a varivel bsica que sai. Para o passo 3, com xi substituindo x 5 como varivel bsica, realizamos operaes algbricas bsicas sobre o sistema de equaes para reproduzir o padro atual dos coeficientes de x 5 (O, O, O, 1) como os novos coeficientes de Xi. Isso leva ao novo sistema de equaes a seguir:

(0)
(1)
(2)

z
x3
X2

+ 2x4 + X5 = + 3x4 - 3xs =


+2x4 - 3x4
1 1 1

36
2

(3)

X1

+ 3xs =

2.

Conseqentemente, a prxima soluo BV (xi. x2' x 3 , x 4, x5) = (2, 6, 2, O, O), resultando em Z = 36. Para aplicar o teste de otimalidade a essa nova soluo BV, usamos a atual Eq. (0) para expressar Z em termos somente das variveis no-bsicas atuais.

Na verdade h algumas diferenas tcnicas entre o mtodo da eliminao de Gauss-Jordan e a eliminao gaussiana, porm no entraremos nesse mrito.

114

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

Aumentar seja x4 como x 5 diminuiria Z; portanto, nenhuma das solues BV adjacentes to boa como a atual. Logo, baseado no conceito de soluo 6 da Seo 4.1, a soluo BV atual tem de ser tima. Em termos da forma original do problema (nenhuma varivel de folga), a soluo tima x 1 = 2, x 2 = 6, resultando em Z = 3x1 + 5x2 = 36. Para outro exemplo de aplicao do mtodo simplex, recomendamos que voc veja agora a demonstrao intitulada Mtodo Simplex - Forma Algbrica no Tutor PO. Esse vvido demonstrativo apresenta, ao mesmo tempo, a lgebra e a geometria do mtodo simplex medida que ele evolui dinamicamente passo a passo. Como os vrios outros exemplos demonstrativos presentes em outras sees deste livro (inclusive a prxima), esse demonstrativo computacional destaca os conceitos que so difceis de se transmitir pela escrita. Alm disso, a seo de Exemplos Trabalhados do CD-ROM inclui outro exemplo de aplicao do mtodo simplex. Para ajud-lo a aprender ainda mais o mtodo simplex de forma eficiente, o Courseware de PO inclui um procedimento intitulado Resolva Interativamente pelo Mtodo Simplex. Essa rotina executa praticamente todos os clculos enquanto voc toma as decises passo a passo, habilitando-o, portanto, a se concentrar nos conceitos e no ficar "atolado" numa "montanha" de clculos. Ento, provavelmente voc vai querer usar essa rotina para seus trabalhos durante a presente seo. O software vai ajud-lo a comear e lhe informar toda vez que voc cometer um erro na primeira iterao de um problema. Aps aprender o mtodo simplex, voc vai querer simplesmente aplicar uma verso computadorizada automtica dele para obter solues timas de problemas de programao linear. Para sua convenincia, tambm inclumos um procedimento automtico denominado Resolva Automaticamente pelo Mtodo Simplex no Tutorial IOR. Esse procedimento foi desenvolvido para lidar somente com problemas de dimenses compatveis com o escopo didtico deste livro, inclusive verificando as respostas que voc receber para problemas com o procedimento interativo. A Seo 4.8 descrever opes de software mais poderosas para programao linear que tambm so fornecidas no CD-ROM. A prxima seo inclui um resumo do mtodo simplex numa forma tabular mais conveniente.

]lli4"'4

O M

SIMPLEX EM FORMA TABULAR


A forma algbrica do mtodo simplex apresentada na Seo 4.3 pode ser a melhor para aprender a lgica subjacente do algoritmo. Entretanto, no a forma mais conveniente para realizar os clculos necessrios. Quando voc tiver de resolver um problema manualmente (ou interativamente via Courseware de PO), recomendados a forma tabular descrita nesta seo. 7 A forma tabular do mtodo simplex registra somente as informaes essenciais, a saber: (1) os coeficientes das variveis, (2) as constantes dos lados direitos das equaes e (3) a varivel bsica que aparece em cada equao. Isso poupa ficar escrevendo os smbolos das variveis em cada uma das equaes, mas o que mais importante o fato de ela permitir destacar os nmeros envolvidos em clculos matemticos e registrar os clculos de forma compacta. A Tabela 4.3 compara o sistema de equaes inicial para o problema da Wyndor Glass Co. em forma algbrica ( esquerda) e na forma tabular ( direita), em que a tabela da direita chamada tabela simplex. A varivel bsica para cada equao indicada em negrito no lado esquerdo e na primeira coluna da tabela simplex direita. Embora somente as variveis x1 sejam bsicas ou no-bsicas, Z desempenha o papel de varivel bsica para a Eq. (0). Todas as variveis no listadas nessa coluna de variveis bsicas (xi. x 2 ) so, automaticamente, variveis no-bsicas. Aps estabelecermos que x 1 = O, x 2 = O, a coluna do lado

A forma mais conveniente para execuo automtica em computador apresentada na Seo 5.2.

4.4

O MTODO SIMPLEX EM FORMA TABULAR

115

TABELA 4.3 Sistema inicial de equaes para o problema da Wyndor Glass Co.
(a) Forma Algbrica Varivel Bsica
(O) Z - 3x1 (1) X1 (2)
5x2

(b) Forma Tabular Coeficiente de: Eq.


(O) (1) (2)

z
1

X1 -3
1

X2

X3

X4

X5

Lado Direito

+ X3
2x2 2X2

+ X4 + X5

(3)

3X1 +

= o = 4 =12 = 18

z
X3
X4 X5

-5

(3)

o o o

o
3

o
2 2

o
1

o o

o o
1

o o o
1

o
4 12 18

direito nos d a soluo resultante para as variveis bsicas, de forma que a soluo BV inicial seja (xi. x 2 , x 3 , x 4 , x5 ) = (0, O, 4, 12, 18), resultando em Z = O.
Afonna tabular do mtodo simplex usa uma tabela simplex para exibir de modo compacto o sistema de equaes que levam atual soluo BV. Para essa soluo, cada varivel na coluna mais esquerda igual ao nmero correspondente na coluna mais direita (e as variveis no listadas so iguais a zero). Quando for realizado o teste de otimalidade ou uma iterao, os nicos nmeros relevantes so aqueles direita da coluna Z. 8 O termo linha refere-se apenas a uma linha de nmeros direita da coluna Z (inclusive o nmero do lado direito), no qual agora i corresponde a Eq. (i).

Sintetizamos a forma tabular do mtodo simplex a seguir e, ao mesmo tempo, descrevemos rapidamente sua aplicao no problema da Wyndor Glass Co. Tenha em mente que a lgica idntica quela da forma algbrica apresentada na seo anterior. Somente a forma para exibio tanto do sistema de equaes atual como da iterao subseqente mudou (alm do que no queremos nos incomodar mais em trazer variveis para o lado direito de uma equao antes de chegarmos a concluses no teste de otimalidade nos passos 1 e 2 de uma iterao).

Sntese do Mtodo Simplex (e Iterao 1 para o Exemplo)


Inicializao. Introduza variveis de folga. Selecione as variveis de deciso para serem variveis no-bsicas iniciais (configure-as para ficarem iguais a zero) e as variveis de folga para serem as variveis bsicas iniciais. Leia a Seo 4.6 para os ajustes necessrios, caso o modelo no esteja em nossa forma-padro - maximizao, somente restries funcionais de :S e todas as restries de no-negatividade - ou se quaisquer valores b; forem negativos. Para o Exemplo: Essa seleo leva tabela simplex inicial mostrada na coluna (b) da Tabela 4.3, de modo que a soluo BV inicial (O, O, 4, 12, 18). Teste de Otimalidade. A atual soluo BV tima se e somente se todos os coeficientes
na linha O forem no-negativos (2: O). Se verdadeiro, pare; caso contrrio, realize uma iterao para obter a prxima soluo BV, que envolve mudar uma varivel no-bsica para uma varivel bsica (passo 1) e vice-versa (passo 2) e depois se chegar nova soluo (passo 3). Para o Exemplo: Da mesma forma que Z = 3x 1 + 5x2 indica que aumentando-se x 1 ou xz, Z aumentar, indicando que a soluo atual no tima, a mesma concluso obtida a partir da equao Z - 3x 1 - 5x2 =O. Esses coeficientes -3 e -5 so mostrados na linha da coluna (b) da Tabela 4.3.

Iterao. Passo 1: Determine a varivel bsica que entra selecionando a varivel (automaticamente uma varivel no-bsica) com o coeficiente negativo tendo o maior valor absoluto (isto , o coeficiente "mais negativo") na Eq. (O). Coloque um retngulo em torno da coluna abaixo do coeficiente e denominei-a coluna piv.

Por essa razo, permitido eliminar as colunas Eq. e Z para reduzir o tamanho da tabela simplex. Optamos por manter essas colunas como um lembrete de que a tabela simplex est exibindo o sistema de equaes atual e que Z uma das variveis na Eq. (O).

116

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE

LINEAR ...

TABELA 4.4 Aplicando o teste da razo mnima para determinar a primeira

varivel bsica que sai para o problema da Wyndor Glass Co.


Coeficiente de: Varivel Bsica Lado Direito

Eq.
(O) (1)

z
1

X1

Xz

X3

X4

X5

Razo

z
X3 X4

-3
1

-5

(2)

o o o

o
3

X5

(3)

o
1

o o
1

o o

o o o
1

o
4

12 -> 12 = 6

, . <--- m1nimo

18->~=9 2

Para o Exemplo: O coeficiente mais negativo -5 para x 2 (5 > 3), de modo que x 2 deve ser transformado numa varivel bsica. (Essa mudana indicada na Tabela 4.4 pelo retngulo em tomo da coluna x 2 abaixo de -5.) Passo 2: Determine a varivel bsica que sai aplicando o teste da razo mnima.

1. Selecione cada coeficiente na coluna piv que seja estritamente positivo (> 0). 2. Divida cada um dos coeficientes da coluna denominada lado direito pelos coeficientes da coluna piv nas respectivas linhas. 3. Identifique a linha que possui a menor dessas razes. 4. A varivel bsica para esta linha a varivel bsica que sai; portanto, substitua-a pela varivel bsica que entra na coluna varivel bsica da prxima tabela simplex. Coloque um retngulo em tomo dessa linha e chame-a linha piv. Denomine tambm o nmero que se encontra em ambos os retngulos nmero piv. Para o Exemplo: Os clculos para o teste da razo mnima so mostrados na parte direita da Tabela 4.4. Portanto, a linha 2 a linha piv (observe o retngulo em tomo dessa linha na primeira tabela simplex da Tabela 4.5) e x 4 a varivel bsica que sai. Na tabela simplex seguinte (ver a parte inferior da Tabela 4.5), x 2 substitui x 4 como varivel bsica para a linha 2. Passo 3: Encontre a nova soluo BV usando operaes elementares em linhas (multiplique ou divida uma linha por uma constante no-zero; adicione ou subtraia um mltiplo de uma linha para outra) visando construir uma nova tabela simplex na forma apropriada de eliminao gaussiana abaixo da atual e ento retome para o teste de otimalidade. As operaes elementares em linhas especficas que precisam ser realizadas so indicadas a seguir:

1. Divida a linha piv pelo nmero piv. Use essa nova linha piv nos passos 2 e 3. 2. Para cada outra linha (inclusive a linha O) que possua um coeficiente negativo na coluna piv, adicione a essa linha o produto do valor absoluto desse coeficiente pela nova linha piv. 3. Para cada outra linha que tiver um coeficiente positivo na coluna piv, subtraia dessa linha o produto desse coeficiente pela nova linha piv.
Para o Exemplo: J que x 2 est substituindo x 4 como varivel bsica, precisamos reproduzir o padro de coeficientes na coluna x4 (O, O, 1, O) da primeira tabela na coluna x2 da segunda tabela. Inicialmente, divida a linha piv (linha 2) pelo nmero piv (2), o que d a nova linha 2 mostrada na Tabela 4.5. A seguir, adicionamos linha O o produto cinco vezes a nova linha 2. Depois, subtramos da linha 3 o produto 2 vezes a linha 2 (ou, de forma equivalente, subtramos da linha 3 a antiga linha 2). Esses clculos resultam na nova tabela mostrada na Tabela 4.6 para a iterao 1. Portanto, a nova soluo BV (O, 6, 4, O, 6) com Z = 30. A seguir, retomamos o teste de otimalidade para verificar se a nova soluo BV tima. J que a nova linha O ainda possui um coeficiente negativo (-3 para x 1), a soluo no tima e ser necessrio pelo menos mais uma iterao.

4.4

O MTODO SIMPLEX EM FORMA TABULAR

117

TABELA 4.5 Tabela simplex para o problema da Wyndor Glass Co. aps a primeira linha piv ter sido dividida pelo primeiro nmero piv
Varivel Bsica Coeficiente de:
Eq.

Iterao

z
1

X1

Xz

X3

X4

Xs

Lado Direito

X3

X4 X5

(O) (1) (2) (3) (O) (1)

o o o
1

-3 1 10 3

-5

ll
121

o
1

w
1

o o o

o o
1

o
1

o o o
1
~

o
4

12 1 18

z
1
X3

X2 X5

(2) (3)

o o o

Iterao 2 para o Exemplo e a Soluo tima Resultante


A segunda iterao comea de novo da segunda tabela da Tabela 4.6 para encontrar a prxima soluo BV. Seguindo as instrues para os passos 1 e 2, localizamos x 1 como varivel bsica que entra e x 5 como varivel bsica que sai, conforme mostrado na Tabela 4.7. Para o passo 3 comeamos dividindo a linha piv (linha 3) da Tabela 4.7 pelo nmero piv (3). A seguir, adicionamos linha O o produto trs vezes a nova linha 3. Depois, subtramos a nova linha 3 da linha 1. Agora, temos o conjunto de tabelas como pode ser visto na Tabela 4.8. Portanto, a nova soluo BV (2, 6, 2, O, 0) com Z = 36. Partindo para o teste de otimalidade, conclumos que essa soluo tima, pois nenhum dos coeficientes na linha O negativo. Isso encerra, ento, o algoritmo. Conseqentemente, a soluo tima para o caso da Wyndor Glitss Co. (antes de as variveis de folga serem introduzidas) x 1 = 2, x2 = 6. Compare agora a Tabela 4.8 com o trabalho feito na Seo 4.3 para constatar que essas duas formas do mtodo simplex so realmente equivalentes. Observe tambm como a forma algbrica superior em termos de aprendizado da lgica que est por trs do mtodo simplex ao passo que a forma tabular organiza o trabalho que est sendo realizado de maneira muito mais compacta e conveniente. A partir de agora, iremos, geralmente, usar a forma tabular. Um exemplo adicional de aplicao do mtodo simplex na forma tabular pode ser encontrado no Tutor PO. Ver o demonstrativo intitulado Mtodo Simplex - Forma tabular. Outro exemplo tambm includo na seo Exemplos Trabalhados do CD-ROM.
TABELA 4.6 As duas primeiras tabelas simplex para o problema da Wyndor Glass Co.
Varivel Bsica Coeficiente de:
Eq.

Iterao

z
1

X1

Xz

X3

X4

X5

Lado Direito

X3

X4 X5

(O) (1) (2) (3) (O)

o o o
1

-3 1 1 3 -3 1

-5

ol
121

o
1

w
o o
1.

o o o
1

o o
1

o
5
2

o o o
1

o
4 12 18
1

z
1
X3

(1) (2) (3)

X2 X5

o o o

o
1 2 -1

o
3

o o

o o o
1

30
4

6 6

118

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE

TABELA 4.7 Passos 1 e 2 da iterao 2 para o problema da Wyndor Glass Co.


Varivel Bsica Coeficiente de: Eq.
(O)

Iterao

z
1

X1

X2

X3

X4

X5

Lado Direito

Razo

z
X3

-3

o o
1

o
1

5 2

o o o
1

30
4 =4 1

(1) (2)

o o o

o
1 2 -1

1
X2

o
3

o o

6 61

X5

(3)

6 =2

<----

, . m1n1mo

TABELA 4.8 Conjunto completo de tabelas simplex para o problema da Wyndor Glass Co.
Varivel Bsica Coeficiente de: Eq.
(O) (1) (2)

Iterao

z
1

X1

X2

X3

X4

X5

Lado Direito

z
o
X3

-3
1

-5

X4 X5

(3)
(O)

o o o
1

o
3 -3

o
2 2 -

o
1

o o o
1

o o
1

o
5

o o o
1

o
4

12 1 18

z
1
X3

(1) (2)

X2 X5

(3)
(O)

o o o
1

-1
o
3

o o
1

o
1 2 -1

o o o
1

o o o
1

o o o
1 1 1

30
4

6 6 1 36
2

z
X3

o o o
1

3
2 1

(1) (2)

o o o

2
X2

3
1 2

o o

o
1

6
2

x,

(3)

-3

J!z~4~S

DESEMPATE NO MTODO SIMPLEX


Voc deve ter percebido nas duas sees anteriores que jamais dissemos o que fazer caso vrias regras de escolha do mtodo simplex no levem a uma deciso clara em razo de empates ou ento de ambigidades similares. Discutiremos esses detalhes agora.

Empate para a Varivel Bsica que Entra


O passo 1 de cada iterao escolhe a varivel no-bsica com o coeficiente negativo de maior valor absoluto na Eq. (0) atual como a varivel bsica que entra. Suponhamos agora que duas ou mais variveis no-bsicas estejam empatadas por terem o maior coeficiente negativo (em termos absolutos). Isso poderia acontecer, por exemplo, na primeira iterao da Wyndor Glass caso sua funo objetivo fosse alterada para Z = 3x 1 + 3x2 , de forma que a Eq. (O) inicial se tomaria Z - 3x 1 - 3x2 = O. Como esse empate poderia ser desfeito? A resposta que a seleo entre esses contendores pode ser feita de modo arbitrrio. No final das contas a soluo tima ser alcanada, independentemente de qual varivel

4.5

DESEMPATE NO MTODO SIMPLEX

119

empatada fosse escolhida e no h nenhum mtodo conveniente para se prever antecipadamente qual opo levar primeiro a esse resultado. No presente exemplo, o mtodo simplex por acaso chega soluo tima (2, 6) em trs iteraes com x 1 sendo a varivel bsica que entra, versus duas iteraes caso x 2 fosse escolhida. ~

Empate para a Varivel Bsica que Sai -

Degenerescncia

Suponha agora que duas ou mais variveis bsicas empatem como candidatas a serem a varivel bsica que sai do passo 2 da iterao. Importa qual delas seja a escolhida? Teoricamente sim e, segundo uma maneira muito crtica, em virtude da seqncia de eventos que poderia ocorrer. Em primeiro lugar, todas as variveis bsicas empatadas chegam a zero ao mesmo tempo medida que a varivel bsica que entra aumentada. Portanto, aquela (ou aquelas) no escolhida(s) para ser a(s) varivel( eis) bsica(s) que sai (saem) tambm ter (tero) um valor zero na nova soluo BV. Observe que as variveis bsicas com um valor zero so chamadas degeneradas e o mesmo termo aplicado soluo BV correspondente. Em segundo lugar, se uma dessas variveis bsicas degeneradas retiver seu valor zero at ela ser escolhida numa iterao posterior para ser a varivel bsica que sai, a varivel bsica que entra correspondente tambm ter de permanecer em zero G que ela no pode ser aumentada sem tomar negativa a varivel bsica que sai), de modo que o valor de Z deve permanecer inalterado. Em terceiro lugar, se Z permanecer o mesmo em vez de crescer a cada iterao, o mtodo simplex pode entrar num loop, repetindo a mesma seqncia de solues periodicamente em vez de aumentar Z em direo a uma soluo tima. De fato, foram construdos exemplos artificialmente para elas efetivamente carem numa armadilha e ficarem num loop eterno. Felizmente, embora um loop eterno seja teoricamente possvel, raramente ocorre em problemas prticos. Caso fosse ocorrer um loop destes, poder-se-ia sair dele alterando-se a escolha da varivel bsica que sai. Alm disso, foram construdas regras 9 especiais para fazer desempates de forma a no ocorrerem tais loops. Entretanto, as regras so freqentemente ignoradas em aplicaes reais e elas no sero repetidas aqui. Simplesmente faa o desempate de forma arbitrria e prossiga sem se preocupar com as variveis bsicas degeneradas resultantes.

Nenhuma Varivel Bsica que Sai - Z Ilimitado


No passo 2 de uma iterao h outro resultado possvel que no discutimos ainda, ou seja, aquele no qual nenhuma varivel se qualifica para ser a varivel bsica que sai. 10 Este resultado poderia ocorrer se a varivel bsica que entra pudesse ser aumentada indefinidamente sem dar valores negativos a qualquer uma das variveis bsicas atuais. Na forma tabular, isso significa que todos os coeficientes da coluna piv (excluindo-se a linha O) so negativos ou ento zero. Conforme ilustrado na Tabela 4.9, essa situao surge no exemplo mostrado na Figura 3.6. Nesse exemplo, as duas ltimas restries funcionais do problema da Wyndor Glass Co. foram desprezadas e, portanto, no includas no modelo. Observe na Figura 3.6 como x 2 pode ser aumentado indefinidamente (e, conseqentemente, aumentando Z indefinidamente) sem jamais deixar a regio d~solues viveis. Note tambm na Tabela 4.9 que x 2 a varivel bsica que entra, mas o niC coeficiente na coluna piv zero. Pelo fato de o teste da razo mnima usar apenas coeficientes que sejam maiores que zero, no existe nenhuma razo capaz de fornecer uma varivel bsica que sai. A interpretao de uma tabela como a ilustrada na Tabela 4.9 que as restries no impedem que o valor da funo objetivo Z cresa indefinidamente, de modo que o mtodo simplex iria parar com a mensagem de que Z ilimitado. Pelo fato de nem mesmo a prograVer BLAND, R. New Finite Pivoting Rules for the Simplex Method. Mathematics of Operations Research, V. 2, p. 103-107, 1977. Note que o caso anlogo (nenhuma varivel bsica que entra) no pode acontecer no passo l de uma iterao, pois o teste de otimalidade interromperia primeiro o algoritmo indicando que se havia chegado a uma soluo tima.

'

120

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE

LINEAR ...

TABELA 4.9 Aplicando o teste da razo mnima para determinar a primeira varivel bsica que sai para o problema da Wyndor Glass Co.
Coeficiente de: Varivel Bsica
Eq.

z
1

X1

X2

X3

Lado Direito

Razo

z
X3

(O) (1)

-3
1

-5

[]]

o
1

o
4

Com x1 Nenhum

x 3 = 4 - 1 x,

O e x2 crescente, - Ox2 = 4 > O.

mao linear ter descoberto uma maneira de se gerar lucros infinitos, a verdadeira mensagem para problemas prticos que foi cometido algum erro! O modelo provavelmente foi mal formulado, seja por omitir restries relevantes, seja por declar-las de modo incorreto. Outra razo poderia ter sido algum erro em termos computacionais.

Solues timas Mltiplas


Mencionamos na Seo 3.2 (sob a definio de soluo tima) que um problema pode ter mais de uma soluo tima. Esse fato foi ilustrado na Figura 3.5 alterando-se a funo objetivo do problema da Wyndor Glass para Z = 3x 1 + 2x 2 , de modo que qualquer ponto sobre o segmento de reta entre (2, 6) e (4, 3) fosse timo. Portanto, todas as solues timas so uma mdia ponderada dessas duas solues FPE timas

em que os pesos w 1 e w 2 so nmeros que satisfazem as relaes


W1

+ W2 = 1

W2::::::

O.

Por exemplo, w 1 = ~ e w2 = ~ resultam


(Xi, X2) =

1 3(2,

6)

2 + 3(4,

3) =

(2 3

8 + 3'

como uma soluo tima. Em geral, qualquer mdia ponderada de duas ou mais solues (vetores) em que os pesos so no-negativos e cuja soma 1 chamada combinao convexa dessas solues. Portanto, toda soluo tima no exemplo uma combinao convexa de (2, 6) e (4, 3). Esse exemplo tpico de problemas com solues timas mltiplas.
Conforme indicado no final da Seo 3.2, qualquer problema de programao linear com solues timas mltiplas (e uma regio de solues viveis limitada) possui pelo menos duas solues FPE que so timas. Toda soluo tima uma combinao convexa dessas solues FPE timas. Conseqentemente, na forma aumentada, toda soluo tima uma combinao convexa de solues BV timas.

(Os Problemas 4.5-5 e 4.5-6 fornecem uma orientao sobre a lgica existente por trs dessa concluso.) O mtodo simplex pra automaticamente aps uma soluo BV tima ter sido encontrada. Porm, para muitas aplicaes de programao linear, h fatores intangveis no incorporados no modelo que podem ser usados para fazer-se escolhas significativas entre solues timas alternativas. Em tais casos, essas outras solues timas tambm devem ser identificadas. Conforme indicado anteriormente, isso requer encontrar todas as demais solues BV timas e, ento, toda soluo tima ser uma combinao convexa das solues BV timas.

4.5

DESEMPATE NO MTODO SIMPLEX


__,/

121

Aps o mtodo simplex encontrar uma soluo BV tima, voc poder detectar se existem outras e, em caso positivo, encontr-las da seguinte forma:
Toda vez que um problema tiver mais de uma soluo BV tima, pelo menosuma das variveis no-bsicas ter um coeficiente igual a zero na linha Ofinal; portanto, aumentar qualquer varivel desse tipo no vai alterar o valor de Z. Assim, essas outras solues BV timas podem ser identificadas (se desejado) executando-se iteraes adicionais do mtodo simplex e cada vez escolhendo-se uma varivel no-bsica com um coeficiente igual a zero como varivel bsica que entra 11 .

Para fins ilustrativos, considere novamente o caso que acabamos de mencionar, no qual a funo objetivo no problema da Wyndor Glass Co. alterada para Z = 3x 1 + 2x2 . O mtodo simplex obtm as trs primeiras tabelas mostradas na Tabela 4.1 O e pra com uma soluo BV tima. Porm, pelo fato de uma varivel no-bsica (x3 ) ter ento um coeficiente zero na linha O, executamos mais uma iterao na Tabela 4.10 parar identificar a outra soluo BV tima. Portanto, as duas solues BV timas so (4, 3, O, 6, 0) e (2, 6, 2, O, O), cada uma delas levando a Z = 18. Observe que a ltima tabela tambm tem uma varivel nobsica (x4 ) com um coeficiente zero na linha O. Essa situao inevitvel, pois a iterao extra no altera a linha O e, dessa forma, esta varivel bsica que sai retm seu coeficiente zero. Tomando x 4 uma varivel bsica que entra, agora isso somente levaria de volta terceira tabela. (confirme). Logo, estas duas so as nicas solues BV que so timas e todas as demais solues timas so uma combinao convexa dessas duas.

TABELA 4.10 Conjunto completo de tabela simplex para obter todas as solues

BV timas para o problema da Wyndor Glass Co., com c2


Coeficiente de: Iterao Varivel Bsica Lado Direito

=2
Soluo tima?
No

Eq.
(O)
(1) (2)

z
1

X1

X2

X3

X4

X5

z
o
X3 X4 X5

-3
1

-2

(3)
(O)
(1) (2)

o o o
1

o
~

o
2 2

o
1

o o
3
1

o o
1

o o
o
1

o o o
1

o
41
12 18 12

z
1
X1
X4 X5

(3)
(O)
(1) (2)

o o o
1

o
1

-_?__

o o o
1

o
2 2

o
-3

o o o
1

o o o
1 1

No

4
12

61
18

z
2
X1
X4 Xz

(3)
(O)
(1) (2)

o o o
1

o o o
1

o o o
1

___!_
1

Sim

o
-1 1 2 1 1

3 3
~

4 61

o
o
1

3
18 2 2

z
X1

o o o

o o o
1

o o
1

Sim

Extra
X3

3
1

3
1

o o

3
1 2

Xz

(3)

11

Se uma iterao dessas no tiver varivel bsica que sai, isso indica que a regio de solues viveis ilimitada e a varivel bsica que entra pode ser aumentada indefinidamente sem alterar o valor de Z.

122
l:&t . .r

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR...

:6

ADAPTANDO A OUTRAS FORMAS DE MODELO


At agora apresentamos os detalhes do mtodo simplex sob as hipteses que o problema se encontra em nossa forma padro (maximizar Z sujeito a restries funcionais na formf :::; e restries de no-negatividade em todas as variveis) e que b;::::::: Opara todo i = 1, 2, ... , m. Na presente seo, indicamos como fazer os ajustes necessrios para outras formas legtimas do modelo de programao linear. Voc ver que todos esses ajustes podem ser feitos durante a inicializao, de forma que o restante do mtodo simplex pode, ento, ser aplicado conforme j aprendido. O nico problema srio introduzido pelas outras formas para restries funcionais (as formas = ou ::::::: ou tendo um lado direito negativo) est na identificao de uma soluo BV inicial. Anteriormente, essa soluo inicial era encontrada de modo muito conveniente deixando as variveis de folga serem as variveis bsicas iniciais, de modo que cada uma apenas se igualasse com o lado direito no-negativo de sua equao. Agora, algo mais precisa ser feito. A abordagem-padro que usada para todos esses casos se chama tcnica das variveis artificiais. Essa tcnica constri um problema artificial mais conveniente introduzindo uma varivel de ensaio (chamada varivel artificial) em cada restrio que assim necessitar. Essa nova varivel introduzida apenas para atuar como varivel bsica inicial para essa equao. As restries de no-negatividade usuais so colocadas nessas variveis e a funo objetivo tambm modificada para impor um custo extremamente alto naquelas com valor maior que zero. As iteraes do mtodo simplex fora, ento, o desaparecimento das variveis artificiais (tomando-as zero), uma por vez, at que todas tenham sumido, aps o que o problema real resolvido. Para ilustrar a tcnica das variveis artificiais, consideremos primeiramente o caso em que a nica forma no padronizada no problema a presena de uma ou mais restries de igualdade.

Restries de Igualdade
Qualquer restrio de desigualdade

na verdade equivalente a um par de restries de desigualdade.


a;1X1 a;1X1

+ a;2X2 + . + a;nXn:::; b; + a;2X2 + . + a;nXn 2::: b;.

Porm, em vez de fazer essa substituio e assim aumentar o nmero de restries, mais conveniente usar a tcnica das variveis artificiais. Ilustraremos essa tcnica por meio do seguinte exemplo.

Exemplo. Suponha que o problema da Wyndor Glass Co. da Seo 3.1 tenha sido modificado para exigir que a Fbrica 3 seja usada a plena carga. A nica alterao resultante no modelo de programao linear que a terceira restrio, 3x 1 + 2x2 :::; 18, se toma uma restrio de igualdade
3x 1

+ 2x2 = 18,

de modo que o modelo completo fica igual ao indicado no canto superior direito da Figura 4.3. Essa figura tambm mostra em tom mais escuro a regio de solues viveis que agora formada apenas pelo segmento de reta conectando os pontos (2, 6) e (4, 3). Aps as variveis de folga ainda necessrias para as restries de desigualdade serem introduzidas, o sistema de equaes para a forma aumentada do problema fica
(0) (1)

o
4

4.6

ADAPTANDO A OUTRAS FORMAS DE MODELO

123

10 Maximizar sujeito a

Z = 3x1
XJ

+ 5x2,
:S
$

3x 1

+
O,

2x2 2x2

4 12 = 18

X1 2:

X2 2:

FIGURA 4.3

Quando a terceira restrio funcional se torna uma restrio de igualdade, a regio de solues viveis para o problema da Wyndor Glass Co. se torna o segmento de reta entre (2, 6) e (4, 3).

XJ

(2) (3)

+ X4

= =

12 18.

Infelizmente, essas equaes no tm uma soluo BV inicial bvia, pois no h mais uma varivel de folga para ser usada como varivel bsica inicial para a Eq. (3). necessrio encontrar uma soluo BV inicial para comear o mtodo simplex. Essa dificuldade pode ser contornada da seguinte maneira.

Obtendo uma Soluo BV Inicial. O procedimento construir um problema artificial que tenha a mesma soluo tima do problema real introduzindo duas modificaes no problema real.

1. Aplique a tcnica das variveis artificiais introduzindo uma varivel artificial nonegativa (chame-ax5 ) 12 na Eq. (3), como se fosse uma varivel de folga.
(3) 3x 1

+ 2x2 + x5

18.

2. Atribua um custo extremamente alto para ter :X5 > O, alterando a funo objetivo
Z = 3x 1

Z=

+ 5x2 para 3x1 + 5x2 - M:Xs,

em que M representa simbolicamente um nmero positivo enorme. (Este mtodo de forar :X5 a ser :X5 =O na soluo tima se chama mtodo "grande nmero" (do Big M).) Agora encontre a soluo tima para o problema real aplicando o mtodo simplex ao problema artificial, comeando com a seguinte soluo BV adjacente inicial:

Soluo BV Inicial Variveis no-bsicas: Variveis bsicas:

X1 X3

=O, = 4,

x5 = 18.

Pelo fato de :X5 desempenhar o papel de varivel de folga para a terceira restrio no problema artificial, essa restrio equivalente a 3x1 + 2x2 :5 18 (da mesma maneira que

12

Sempre iremos identificar as variveis artificiais colocando uma barra sobre elas.

124

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

para o problema da Wyndor Glass Co. na Seo 3.1). Mostramos a seguir o problema artificial resultante (antes de aumentar) ao lado do problema real.
O Problema Real O Problema Artificial

Define Maximizar sujeito a


$

x5 =

18 - 3x 1 Z = 3x 1

2t2.
-

Z = 3x 1

+ 5x2 ,

Maximizar sujeito a

+ 5x2

Mx
4
12 18

5,

4
12 18 (de modo que

2t2
3x 1

$
$

+ 2t2 =

e
X2 2

3x 1 + 2t2 +

x5 =
O.

18)

O.

e
x1
2

O,

x 2 2 O,

x5 2

...

Portanto, do mesmo modo que na Seo 3.1, a regio de solues viveis para (xi. x 2 ) para o problema artificial aquela mostrada na Figura 4.4. A nica parte desta regio de solues viveis que coincide com a regio de solues viveis do problema real onde i 5 = O (portanto, 3x 1 + 2x2 = 18). A Figura 4.4 tambm mostra a ordem na qual o mtodo simplex examina a solues FPE (ou as solues BV aps aumento), em que cada crculo numerado identifica qual iterao obteve essa soluo. Note que aqui o mtodo simplex se movimenta no sentido anti-horrio ao passo que no sentido horrio para o problema original da Wyndor Glass Co. (ver a Figura 4.2). A razo para essa diferena o termo extra - MX5 na funo objetivo para o problema artificial. Antes de aplicar o mtodo simplex e demonstrar que ele segue a trajetria indicada na Figura 4.4, necessria a seguinte etapa preparatria.

Convertendo a Equao (O) para a Forma Apropriada. aps o problema artificial ser aumentado

O sistema de equaes

(O)
(1) (2) (3)

Z- 3x 1 - 5x2
X1

+Mxs

o
4
= 12

+ X3 +
2x2 2x2

+ X4 +

3x1

x5 =

18

FIGURA 4.4

Esse grfico mostra a regio de solues viveis e a seqncia de solues FPE (@, G), @, @) examinadas pelo mtodo simplex para o problema artificial que corresponde ao problema real da Figura 4.3.

Xz
Z= 30- 6M
(O, 6)

Definir .X5 = 18 - 3x1 - 2xz. Maximizar Z = 3x 1 + 5xz - MX5, sujeito a x1 :S 4 2x2 $ 12 3x 1 + 2x2 :S 18 e x 1 2: O, x 2 2: O, x5 2 O

Regio

de solues viveis

@ (4 , 3) 2
'\

z = 27

Z= 12- 6M

4.6

ADAPTANDO A OUTRAS FORMAS DE MODELO

125

em que as variveis bsicas iniciais (x3 , x 4 , x5 ) so indicadas em negrito. Porm, esse sistema ainda no se encontra na forma apropriada da eliminao gaussiana, pois uma varivel bsica :X5 tem um coeficiente no-zero na Eq. (O). Lembre-se de que todas as variveis bsicas tm de ser algebricamente eliminadas da Eq. (O) antes de o mtodo simplex poder aplicar o teste de otimalidade ou encontrar a varivel bsica que entra. Essa eliminao necessria de modo que o sinal negativo do coeficiente de cada varivel no-bsica dar a taxa na qual Z aumentaria se essa varivel no-bsica tivesse de ser aumentada a partir de O enquanto se ajusta os valores das variveis bsicas de acordo. Para eliminar algebricamente :X5 da Eq. (0), precisamos subtrair da Eq. (0) o produto M vezes a Eq. (3).

Z - 3x1 - Sx2 + Mxs


Nova (O)
-M(3x 1 + 2x2 Z - (3M + 3)x 1 - (2M

=
=

+ x5 + 5)x2

O 18) = -18M.

Aplicao do Mtodo Simplex. veis no-bsicas (xi. x 2 ),

Essa nova Eq. (0) d Z em termos apenas das vari-

Z = -18M + (3M + 3)x 1 + (2M + 5)x2 J que 3M + 3 > 2M + 5 (lembre-se de que M representa um nmero enorme), aumentar x 1 aumenta Z numa taxa mais rpida que diminuindo x2 , de modo que x 1 seja escolhido como varivel bsica que entra. Isso leva ao deslocamento de (O, O) a (4, O) na iterao 1, mostrada na Figura 4.4, aumentando assim Z de 4(3M + 3). As quantidades envolvendo M jamais aparecem no sistema de equaes, exceto pela Eq. (O), de modo que elas precisem ser levadas em conta somente no teste de otimalidade e quan-

TABELA 4.11 Conjunto completo de tabela simplex para o problema mostrado

na Figura 4.4
Coeficiente de: Iterao Varivel Bsica Lado Direito
-18M
41

Eq.
(O) (1) (2) (3) (O) (1) (2) (3) (O)

z
o o o o o o
1 1 1

X1

X2

X3

X4

z
o
X3
X4

-3M- 3 1

-2M-5

o
-

o
2 2 -2M- 5

o o o
3M+ 3 1 1

o o o o o o o o
1 1 1

xs o o o
1

:Xs

12 18
-6M + 12
4

z
1
X1
X4

o o o o o o o
1 1 1

:Xs

2 2

o
9

o o o
1
M+i

-3

12 61 27
4

z
2
X1
X4 X2

(1) (2) (3)

o o o
1

o o o
1

-2
-

-2

1 3 3

o
-1 1 2 M+l 1 3 1

61 3

o
3 2 1

z
X1

(O)

o o o
1

o o
1

36 2 2 6

(1) (2) (3)

o o o

-3
1 3 1 2

Extra
X3

o o

-3

X2

126

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

do uma varivel bsica que entra for determinada. Uma maneira de lidar com essas quantidades atribuir a M algum valor numrico particular (enorme) e usar os coeficientes resultantes na Eq. (O) da forma usual. Entretanto, esse mtodo pode resultar em erros significantes arredondados que invalidam o teste de otimalidade. Portanto, melhor fazer o que acabamos de mostrar, ou seja, expressar cada coeficiente na Eq. (O) como uma funo linear aM + b da quantidade simblica M gravando e atualizando separadamente o valor numrico atual (l).do fator multiplicador a e (2) do termo aditivo b. Pelo fato de M ser supostamente to grande que b seja sempre desprezvel comparado com M quando a O, as decises no teste de otimalidade e a escolha da varivel bsica que entra so feitas usando-se apenas os fatores multiplicadores da forma usual, exceto para os casos de desempate com os fatores aditivos. Usar essa abordagem no exemplo resulta na tabela simplex mostrada na Tabela 4.11. Note que a varivel artificial is a varivel bsica (is > 0) nas duas primeiras tabelas e uma varivel no-bsica (is = 0) nas duas ltimas. Portanto, as duas primeiras solues BV para esse problema artificial so inviveis para o problema real ao passo que as duas ltimas tambm so solues BV para o problema real. Esse exemplo envolveu apenas uma restrio de igualdade. Se um modelo de programao linear tiver mais de uma, cada uma delas deve ser tratada exatamente da mesma forma. Se o lado direito for negativo, primeiramente multiplique ambos os lados por - 1.

lados Direitos Negativos


A tcnica mencionada na sentena anterior para lidar com uma restrio de igualdade com o lado direito negativo (isto , multiplicar ambos os lados por -1) tambm funciona para qualquer restrio de desigualdade com o lado direito negativo. Multiplicando-se ambos os lados de uma desigualdade por - 1 tambm inverte a direo da desigualdade, isto , :;:::; muda para 2: ou vice-versa. Por exemplo, fazendo-se isso para a restrio (isto , x 1 resulta na restrio equivalente
:;:::;

x2

1)

mas agora o lado direito positivo. Ter lados direitos no-negativos para todas as restries funcionais possibilita o disparo do mtodo simplex, pois (aps o aumento) esses lados direitos se tomam os valores respectivos das variveis bsicas iniciais que devem obrigatoriamente satisfazer as restries de no-negatividade. A seguir nos concentramos em como aumentar restries 2:, como -x 1 + x 2 2: 1, com a ajuda da tcnica das variveis artificiais.

Restries Funcionais na Forma

::?:

Para ilustrar como a tcnica das variveis artificiais lida com restries funcionais na forma 2:, usaremos o modelo para planejamento de sesses de radioterapia para Mary, conforme apresentado na Seo 3.4. Para sua convenincia, esse modelo repetido a segulr, no qual colocamos um retngulo em volta da restrio de especial interesse.
Exemplo do Planejamento de Sesses de Radioterapia
Minimizar sujeito a Z = 0,4x 1

+ 0,5x2 ,

0,3x 1 + O,lx2 ~ 2,7 0,5x 1 \ 0,6x 1

+ 0,5x2 = 6 + 0,4x2 2: 6 J
x 2 2: O.

4.6 ADAPTANDO A OUTRAS FORMAS DE MODELO

127

Pontos = solues em pontos extremos Segmento de reta escuro = regio de solues viveis Soluo tima = (7,5; 4,5)

10

FIGURA 4.5

0,5x1

+ 0,5x2 =

Soluo grfica para o exemplo do planejamento de tratamento radioterpico e suas solues em pontos extremos.

10

XJ

A soluo grfica para esse exemplo (apresentada originalmente na Figura 3.12) repetida aqui de maneira ligeiramente diferente na Figura 4.5. As trs retas da figura, juntamente com os dois eixos, constituem os cinco limites de restries do problema. Os pontos sobre a interseo de um par de limites de restries so chamados solues em pontos extremos. As nicas duas solues viveis em pontos extremos so (6, p) e (7,5; 4,5), e a regio de solues viveis, o segmento de reta conectando estes dois pontos. A soluo tima (xi. x 2 ) = (7,5; 4,5), com Z = 5,25. Em breve, iremos mostrar como o mtodo simplex soluciona esse problema, resolvendo diretamente o problema artificial correspondente. Entretanto, primeiramente, temos de descrever como lidar com a terceira restrio. Nossa abordagem envolve a introduo de uma varivel excedente x 5 (definida como x 5 = 0,6x 1 + 0,4x2 - 6), bem como uma varivel artificial Xfo conforme mostrado a seguir.
0,6x 1 0,6x 1
,6X1

+ 0,4x2 + 0,4x2 + ,4Xz -

2::

6
(x5 2:: 0) (x5 ::::: O, x 6
:::::

x5
X5

=6

+ X6

= 6

O).

Aqui x 5 chamada varivel excedente, pois ela subtrai o excedente do lado esquerdo no lado direito para converter a restrio de desigualdade para uma restrio de igualdade equivalente. Assim que essa converso estiver completa, a varivel artificial ser introduzida da mesma forma que para qualquer restrio de igualdade.

128

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

Aps uma varivel de folga x 3 ser introduzida na primeira restrio, uma varivel artificial :X4 introduzida na segunda restrio e o mtodo "do grande nmero" ento aplicado, de maneira que o problema artificial (na forma aumentada) completo fica Minimizar sujeito a

z=

+ 0,5x2 + Mx4 + Mx6' = 2,7 0,3x 1 + O,lx2 + x 3 =6 0,5x 1 + 0,5x2 + x4 0,6x 1 + 0,4x2
0,4X1
X5

X1

:::=::O,

:::=::O,

Note que os coeficientes das variveis artificiais na funo objetivo so + M, e no - M, pois agora estamos minimizando Z. Portanto, embora :X4 >O e/ou :X6 >O seja possvel como soluo vivel para o problema artificial, a imensa infrao de + M impede que isso de ocorra numa soluo tima. Como de praxe, introduzir variveis artificiais aumenta a regio de solues viveis. Compare, a seguir, as restries originais para o problema real com as restries correspondentes em (xi. x 2 ) para o problema artificial.

Restries em (xi, x 2) para o Problema Real


0,3x 1 0,5x 1 0,6x 1

Restries em (xi. x 2 ) para o Problema Artificial 0,3x 1 + O,lx 2 :::; 2,7 0,5x 1 + 0,5x2 :::; 6 ( = satisfeita quando :X4 = O) Nenhuma restrio deste tipo (exceto quando :X6 = O)

+ O, lx2 :::; 2,7 + 0,5x2 = 6 + 0,4x2 :::=:: 6

Introduzir a varivel artificial :X4 para desempenhar o papel de uma varivel de folga na segunda restrio permite valores de (xi. x 2 ) abaixo da reta 0,5x 1 + 0,5x2 = 6 na Figura 4.5. Introduzir x 5 e :X 6 na terceira restrio do problema real (e transferir essas variveis para o lado direito) resulta na equao

0,6x 1

+ 0,4x2 = 6 + x 5

:X6 .

Pelo fato de tanto x 5 quanto :X6 serem restritos apenas a serem no-negativos, sua diferena x 5 - :X6 pode ser qualquer nmero positivo ou negativo. Portanto, 0,6x 1 + 0,4x2 pode assumir qualquer valor, o qual tem o efeito de eliminar a terceira restrio do problema artificial e permitir pontos em ambos os lados da reta 0,6x 1 + 0,4x2 = 6 na Figura 4.5. (Mantemos a terceira restrio no sistema de equaes somente porque ela se tomar relevante novamente mais tarde, aps o mtodo "do grande nmero" forar :X6 a ser zero.) Conseqentemente, a regio de solues viveis para o problema artificial o poliedro todo da Figura 4.5 cujos vrtices so (O, O), (9, O), (7,5; 4,5) e (O, 12). Visto que a origem agora vivel para o problema artificial, o mtodo simplex comea com (O, O) como soluo FPE inicial, isto , com (x 1, xi, x 3 , x4, x 5 , :X6) = (O; O; 2,7; 6; O; 6) como soluo BV inicial. Tomar a origem vivel como um ponto de partida conveniente para o mtodo simplex precisamente o objetivo de criar-se um problema artificial. Mais frente, traaremos a trajetria toda seguida pelo mtodo simplex da origem soluo tima tanto para o problema artificial quanto para o problema real. No entanto, primeiramente, como o mtodo simplex trata da minimizao?

Uma maneira objetiva de minimizar Z pelo mtodo simplex trocar os papis dos coeficientes positivos e negativos na linha O tanto no teste de otimalidade quanto no passo 1 de uma interao. Porm, em vez de alterar nossas instrues para o mtodo simplex, nesse caso, apresentamos, a seguir, uma maneira simples de converter qualquer problema de minimizao num problema de maximizao equivalente:
n

Minimizar

j=l

~ L

CX J J

4.6

ADAPTANDO A OUTRAS FORMAS DE MODELO._ _ __

129

equivale a
n

maximizar

-Z = IC-c)xj;
j~1

isto , as duas formulaes levam (s) mesma(s) soluo(es) tima(s). As duas formulaes so equivalentes, pois quanto menor for Z, maior ser - Z; portanto, a soluo que d o menor valor de Z em toda a regio de solues viveis tem que dar tambm o maior valor de - Z nessa regio. Assim, no exemplo de tratamento radioterpico, fazemos a seguinte alterao_na formulao: Minimizar Maximizar
Z = 0,4x 1 - Z = -0,4x 1

+ 0,5x2
-

0,5x2 .

Aps serem introduzidas as variveis :X4 e :X6 e, a seguir, a aplicao do mtodo "do grande nmero", a converso correspondente ser Minimizar Maximizar

-z =

z=

0,4x 1 + 0,5x2 -0,4x 1 - 0,5x2

+ Mx4 + Mx6
-

Mx4 - M:X6.

Solucionando o Exemplo de Tratamento Radioterpico


Agora, estamos quase prontos para aplicar o mtodo simplex ao exemplo de tratamento radioterpico. Usando a forma de maximizao recm-obtida, o sistema de equaes completo ficar assim
(0) (1) (2) (3)

-Z

+ 0,4x 1 + 0,5x2 + Mx 4 0,3x 1 + O,lx2 + x 3 0,5x 1 + 0,5x2 + X4 0,6X1 + 0,4X2

+ Mx6
X5

=O = 2.7 =6
6.

X6 =

As variveis bsicas (x 3 , x 4 , :X6 ) para a soluo BV inicial (para esse problema artificial) so indicadas em negrito. Observe que esse sistema de equaes ainda no se encontra na forma apropriada da eliminao gaussiana, conforme exigido pelo mtodo simplex, j que as variveis bsicas :X4 e :X6 ainda precisam ser eliminadas algebricamente da Eq. (O). Pelo fato de :X4 assim como :X6 terem um coeficiente M, a Eq. (0) precisa ser subtrada delas duas M vezes a Eq. (2) e M vezes a Eq. (3). Os clculos para todos os coeficientes (e os lados direitos das equaes) so sintetizados a seguir, em que os vetores so as linhas relevantes da tabela simplex correspondentes ao sistema de equaes acima. Linha O:
[0,4, -M[0,5, -M[0,6, 0,5, 0,5, 0,4, O, O, O, O,

M, 1, O,
O,

O, O, -1,

M, O,
1,

O] 6] 6] -12M]

Nova linha O= [-1,IM

+ 0,4, -0,9M + 0,5,

M,

O,

A tabela simplex inicial resultante, pronta para iniciar o mtodo simplex, mostrada na parte superior da Tabela 4.12. Aplicando-se o mtodo simplex exatamente da maneira usual resulta ento na seqncia de tabelas simplex mostradas no restante da Tabela 4.12. Para o teste de otimalidade e a seleo da varivel bsica que entra em cada iterao, as quantidades envolvendo M so tratadas exatamente do mesmo modo que acabamos de discutir em conexo com a Tabela 4.11. Especificamente, toda vez que M estiver presente, somente seu fator multiplicador ser usado, a menos que haja um empate, em cujo caso feito o desempate utilizando-se os termos aditivos correspondentes. Um empate destes ocorre na ltima seleo de uma varivel bsica que entra (ver a penltima tabela), em que tanto os coeficientes de x 3 quanto os de x 5 na linha Opossuem o mesmo fator multiplicador -~.A comparao com os termos aditivos 7 11 . , 1 b, . que entra. 6 < 3 nos 1 eva a esco Ih er x 5 como vanave as1ca

130

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

Ili TABELA 4.12 O mtodo "do grande nmero" para o exemplo do tratamento radioterpico

Coeficiente de: Iterao Varivel Bsica

Eq.
(O) (1) (2) (3) (O) (1) (2) (3) (O) (1) (2) (3) (O) (1) (2) (3)

z
-1

X1

X2

X3

X4

X5

z
o
X3

X4

x6

o o o
-1

-1,1M+04 0,3 0,5


~6

-O 9M +O 5 o, 1 0,5 0,4 16 11 -30M+30 1 3 1 3 0,2

o o
_D_M _ _i_ 3 3 10 3 5 3 -2

o o
1

o o

o o
-1
M

x6 o
1

Lado Direito
-12M 2,7 6 6

o o o o

z
x,
1
X4

o
1

-2,lM- 3,6 9 1.5 0,6 1


-0,5M- 4,7

o o o
-1

o
1

o o
-1

x6

o o o
1

o
1

o
3

z
x,
2
X4
X2

o o

-~M+Z
3 20 3 5 3 -10 0,5 5 1 -5

o o
1

-~M +_D_
3

~M-_D_
3 6

5 3 5 3

-3
5 3 5
M

8
0,5 3 -5,25 7,5 0,3 4,5
1

o o
-1

z
3

x,
X5 X2

o o o

o o o
1

o
1

o
M-1,1 -1 0,6 3

o o

o o o
1

o o
1

o
-1

Z. Comeamos com valores maiores, :X4 = 6 e x6 = 6, com Z = 12M (-Z = -12M). A pri-

Observe na Tabela 4.12 a progresso de valores das variveis artificiais i 4 e

x6 e o de

meira iterao reduz enormemente esses valores. O mtodo "do grande nmero" bemsucedido em termos de levar :X6 a zero (na forma de uma nova varivel no-bsica) na segunda iterao e depois em conseguir o mesmo para :X4 na iterao seguinte. Com x 4 = Oe x 6 = O, a soluo bsica dada na ltima tabela seguramente vivel para o problema real. E j que passa pelo teste de otimalidade, ela tambm tima. Vejamos, agora, na Figura 4.6, o que o mtodo "do grande nmero" fez graficamente. A regio de solues viveis para o problema artificial tem inicialmente quatro solues FPE - (O; O), (9; 0), (O; 12), e (7,5; 4,5) - e depois substitui as trs primeiras por duas novas solues FPE - (8; 3), (6; 6) - aps :X6 decrescer para :X6 = O, de modo que 0,6x 1 + 0,4x2 ;:::: 6 toma-se uma restrio adicional. Note que as trs solues FPE substitudas - (O; O), (9; O), e (O; 12) - na verdade eram solues em pontos extremos inviveis para o problema real mostrado na Figura 4.5. Comeando com a origem como a soluo FPE inicial conveniente para o problema artificial, nos deslocamos em tomo do limite para trs outras solues FPE- (9; O), (8; 3), e (7,5; 4,5). A ltima destas a primeira que ainda vivel para o problema real. Fortuitamente, essa primeira soluo vivel tambm tima, de modo que no necessrio mais nenhuma iterao. Para outros problemas com variveis artificiais pode ser que seja necessrio executar iteraes adicionais para se chegar a uma soluo tima aps a primeira soluo vivel ser obtida para o problema real. Esse era o caso para o exemplo solucionado na Tabela 4.11. Portanto, pode-se imaginar o mtodo "do grande nmero" como tendo duas fases. Na primeira fase, todas as variveis artificiais so levadas a zero (em razo de o custo imposto por M por unidade ser maior que zero) de modo a chegar-se a uma soluo BV inicial para o problema real. Na segunda fase, todas as variveis artificiais so mantidas em zero (por causa deste mesmo custo), ao passo que o mtodo simplex gera uma seqncia de solues BV para o problema real levando a uma soluo tima. O mtodo de duas fases descrito, a

4.6 ADAPTANDO A OUTRAS FORMAS DE MODELO

131

Xz

Restries para o problema artificial: 0,3x 1 + O,lx2 ::s 2.7 0,5x 1 + 0,5x2 :S 6 ( = satisfeita quando .f4 (0,6x 1 + 0,4xz 2: 6 quando x6 = O)
=

O)

x 1 2: O, x2

2:

o (x4 2: O, x6 2: O)

1
\

Este segmento de reta escuro a regio (6, 6 ) / d~ solu_es viveis para o problema real (x4 = O, x 6 = O). (7,5, 4,5) tima

FIGURA 4.6

Este grfico mostra a regio de solues viveis e a seqncia de solues FPE (@, G), @, @) examinadas pelo mtodo simplex (com o mtodo "do grande nmero") para o problema artificial que corresponde ao problema real da Figura 4.5.

Regio de solues viveis para o problema artificial

/Z = 3,6 + 2,IM
(0, 0)

t
Z =O+ 12M

(9, 0)

X]

seguir, um procedimento racionalizado para executar diretamente estas duas fases sem mesmo introduzir M explicitamente.

O Mtodo de Duas Fases


Para o exemplo de tratamento radioterpico que acabamos de resolver na Tabela 4.12, relembremo-nos de sua funo objetivo real

Problema real:

Minimizar

Z = 0,4x 1 + 0,5xz.

Entretanto, o mtodo "do grande nmero" usa a seguinte funo objetivo (ou sua equivalente em forma de maximizao) por todo o procedimento:

Mtodo "do grande nmero":

Minimizar

Uma vez que os dois primeiros coeficientes so desprezveis quando comparados com M, o mtodo de duas fases capaz de diminuir M usando as duas funes objetivos a seguir com definies completamente diversas de Z.

Mtodo das duas fases:


Fase 1: Fase 2: Minimizar Minimizar

Z=i4+i6
Z = 0,4X1

+ 0,5X2

(at que i 4 = O, i 6 = 0). (at que i 4 = O, i 6 = 0).

A funo objetivo da fase 1 obtida dividindo-se a funo objetivo do mtodo "do grande nmero" por Me depois eliminando os termos desprezveis. J que a fase 1 termina com a obteno de uma soluo BV para o problema real (uma na qual i 4 =O e i 6 =O), essa soluo ento usada como soluo BV inicial para aplicao do mtodo simplex ao problema real (com sua funo objetivo real) na fase 2.

132

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR:_---

Antes de solucionarmos o exemplo dessa maneira, sintetizemos o mtodo geral.

Sntese do Mtodo das Duas Fases. Inicializao: Revisar as restries do problema original introduzindo variveis artificiais conforme necessrio para obter uma soluo BV inicial bvia para o problema artificial. Fase 1: O objetivo dessa fase encontrar uma soluo BV para o problema real. Para tanto,
Minimize Z = ~ variveis artificiais, sujeita s restries revisadas. A soluo tima obtida para esse problema (com Z = O) ser uma soluo BV para problema real. Fase 2: O objetivo dessa fase encontrar uma soluo tima para o problema real. Visto que as variveis artificiais no fazem parte do problema real, estas podem ser eliminadas agora (elas so, de qualquer maneira, todas zeros). 13 Iniciando da soluo BV obtida no final da fase 1, usar o mtodo simplex para solucionar o problema real. Para o exemplo, os problemas a serem solucionados pelo mtodo simplex nas respectivas fases so sintetizados a seguir:
Problema da Fase 1 (Exemplo do Tratamento Radioterpico):

Minimizar sujeito a
0,3x 1 0,5x 1 0,6x 1

+ O, Ix 2 + x 3 + 0,5x2 + X4 + 0,4x2
O,

2.7

=6
X5

+ X6

e
X1;:::: X5;::::

O,

Problema da Fase 2 (Exemplo do Tratamento Radioterpico):

Minimizar sujeito a
0,3x 1 0,5x 1 0,6x 1
= 2,7 + O,Ix2 + x 3 =6 + 0,5x2 -xs = 6 + 0,4x2

e
Xi;::::

O,

X5;::::

O.

As nicas diferenas entre esses dois problemas esto na funo objetivo e na incluso (fase 1) ou excluso (fase 2) das variveis artificiais :X4 e :X6 . Sem as variveis artificiais, o problema da fase 2 no tem uma soluo BV inicial bvia. O objetivo exclusivo de solucionar o problema da fase 1 obter uma soluo BV adjacente com x 4 = O e :X6 = O de modo que essa soluo (sem as variveis artificiais) possa ser usada como soluo BV inicial para a fase 2. A Tabela 4.13 mostra o resultado de se aplicar o mtodo simplex a esse problema da fase 1. A linha O na tabela inicial obtida convertendo-se Minimizar Z = 4 + 6 em Maximizar ( -Z) = - x 4 - :X6 e usar as operaes elementares em linhas para eliminar as variveis bsicas :X4 e :X6 de -Z + x 4 + :X6 =O. Na penltima tabela, h um empate para a varivel bsica que entra entre x 3 e x 5 , que desempatado arbitrariamente em favor de x 3 . A

x x

13

Nesse caso, estamos pulando trs outras possibilidades: (1) variveis artificiais > O (discutida na prxima subseo), (2) variveis artificiais que so variveis bsicas degeneradas e (3) manter as variveis artificiais como variveis no-bsicas na fase 2 (e no permitir que elas se transformem em variveis bsicas) como uma forma de ajudar em anlises de ps-otimalidade subseqentes. O Tutorial IOR permite a explorao dessas possibilidades.

4.6

ADAPTANDO A OUTRAS FORMAS DE MODELO

TABELA 4.13 Fase 1 do mtodo das duas fases para o exemplo do tratamento radioterpico
Varivel Bsica Coeficiente de: Lado Direito
-12 2,7 I 6 6 -2,1 9 1,5 0,61 -0,5
8

Iterao

Eq.
(O)
(1)

z
-1 o o o
-1

X1

X2

X3

X4
o o 1 o o o 1 o o o
1

Xs

x6
o o o 1 o o o
1

z
o
X3

X4

x6

(2) (3) (O) (1) (2) (3) (O)


(1)

-1,1 0,3 0,5

~
o
1

-0,9 O, 1 0,5 0,4 16 30 1 3 1 3 0,2 o o o


1 -

o 1 o o 11 3 10 3 5 3 -2 5 3 20 3 5

1 o o -1 1 o o
-1

z
x,
1
X4

o o o -1 o o o
-1

o o o 1 o o o
1

x6

z
x,
2
X4
X2

5 3 5 3 5 3 -5 o -5
1

8 3

5 3 5 3 5
1

(2) (3) (O) (1) (2) (3)

3
-10 o o 1 o

o,51 3 o 6 0,3 6

o
1

z
3

x,
X3 X2

o o o

o o o
1

o o

-4 3 5 6

5
-1

-5

soluo obtida no final da fase 1 , ento, (xi, x 2 , x 3 , x 4 , x 5 , i 6 ) = (6; 6; 0,3; O; O; 0) ou, aps X4 e x6 serem eliminadas, (xi, Xi, X3, Xs) = (6; 6; 0,3; 0). Conforme afirmado no resumo, essa soluo da fase 1 de fato uma soluo BV para o problema real (o problema da fase 2), pois a soluo (aps configurarmos x 5 = O) para o sistema de equaes formado pelas trs restries funcionais do problema da fase 2. De fato, aps eliminarmos as colunas i 4 e i 6 , bem como a linha O para cada iterao, a Tabela 4.13 mostra uma maneira de se usar a eliminao gaussiana para solucionar esse sistema de equaes reduzindo-se o sistema forma apresentada na tabela final. A Tabela 4.14 mostra as preparaes para o incio da fase 2 aps a fase 1 ter sido completada. Partindo-se da tabela final da Tabela 4.13, eliminamos as variveis artificiais (i4 e i 6 ), substitumos a funo objetivo da fase 2 (-Z = -0,4x 1 - 0,5x2 na forma maximizada) na linha O e, depois, restabelecemos a forma apropriada da eliminao gaussiana (eliminando algebricamente as variveis bsicas x 1 e x 2 da linha O). Portanto, a linha Ona ltima tabela obtida realizando-se as seguintes operaes elementares em linhas na penltima tabela: da linha O subtraia o produto 0,4 vezes a linha 1, assim como o produto 0,5 vez a linha 3. Exceto para o caso da eliminao dessas duas colunas, observe que as linhas 1 a 3 nunca mudam. O nico ajuste ocorre na linha O de modo a substituir a funo objetivo da fase 1 pela funo objetivo da fase 2. A ltima tabela da Tabela 4.14 o inicial para aplicao do mtodo simplex ao problema da fase 2, conforme ilustrado na parte superior da Tabela 4.15. Basta ento mais uma iterao para se chegar soluo tima mostrada na segunda tabela: (xi, x 2 , x 3 , x 5 ) = (7,5; 4,5; O; 0,3). Esta a soluo tima desejada para o problema de real interesse e no o problema artificial construdo para a fase 1. Agora, podemos ver o que o mtodo das duas fases fez graficamente na Figura 4.7. Partindo da origem, a fase 1 examina um total de quatro solues FPE para o problema arti-

134

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

TABELA 4.14 Preparo para iniciar a fase 2 do exemplo do tratamento radioterpico


Coeficiente de: Varivel Bsica
Eq.

z
-1

X1

X2

X3

X4
1

X5

x6
1

Lado Direito

z
Tabela final da fase 1
X1 X3

(O) (1)

(2) (3)
(O) (1)

X2

o o 1 o o o o o o
1

o o o
1

o o
1

o
-5
1

o
6

-4 3 5
6

5
-1

0,3
6

o o o
1

-5

z
X1

-1

Eliminar

x4 e x6
X3

o o o
1

o
-5
1

o
6

X2

(2) (3)
(O) (1)

o o o o
-1

o o o
1

0,3
6

z
Substituir a funo objetivo da fase 2
X1 X3

0,4

0,5

X2

(2) (3)
(O) (1)

o 1 o o o o
-1

o o
1

o
-5
1

o
6

o o o
1

0,3
6

5 -0,5 -5
1

z
Restabelecer a forma apropriada da eliminao gaussiana
X1 X3

X2

(2) (3)

o o 1 o o o o

o o o
1

-5,4
6

0,3
6

ficial. As trs primeiras so, na verdade, solues em pontos extremos inviveis para o problema real ilustrado na Figura 4.5. A quarta soluo FPE, em (6, 6), a primeira delas que tambm vivel para o problema real, de modo que ela se toma a soluo FPE inicial para a fase 2. Uma iterao na fase nos conduz soluo FPE tima em (7,5; 4,5). Se o empate para a varivel bsica que entra na penltima tabela da Tabela 4. 13 tivesse sido desfeito de outra maneira, ento a fase 1 poderia ter ido direto de (8, 3) para (7 ,5; 4,5). Aps (7,5; 4,5) ter sido usada para configurar a tabela simplex inicial para a fase 2, o teste de otimalidade teria revelado que essa soluo era tima, de modo que no seriam necessrias mais iteraes. interessante compararmos os mtodos "do grande nmero" e das duas fases. Comecemos com suas funes objetivo. Mtodo "do grande nmero": Minimizar Mtodo das Duas Fases: Fase 1: Fase 2: Minimizar Minimizar
Z
=

x4 + x6.
+ 0,5x2 .

Z = 0,4x 1

TABELA 4.15 Fase 2 do mtodo das duas fases para o exemplo do tratamento

radioterpico
Coeficiente de: Iterao Varivel Bsica
Eq.

z
-1

X1

X2

X3

X5

Lado Direito

X1 X3

(O) (1)

X2

(2) (3)
(O) (1)

o o o
-1

o
1
1

o o o
1

o o o
1

o o
1

-o 5
-5'
1
~

-5,4
6

0,3
6

o
0,5 5
1

z
1
X1

X5 X2

(2)
(3)

o o o

o o

o o o
1

o o
1

-5

-5,25 7,5 0,3 4,5

4.6 ADAPTANDO A OUTRAS FORMAS DE MODELOS

135

Xz
(0, 12)

Esse segmento de reta escuro a regio de solues viveis para o problema real (fase 2).

'--(7,5; 4,5) tima

FIGURA 4.7 Este grfico mostra a seqncia de solues FPE para a fase 1 (@, G), @, @)) e depois para a fase 2 ([Q], T) quando o mtodo das duas fases aplicado ao exemplo do tratamento radioterpico.

Regio de solues viveis para o problema artificial (fase l)

(O, 0 ) - - - - - - - - - - - - - - - - - - - - - - - - - - x,
(9, O)

Pelo fato de os termos Mx4 e Mx 6 dominarem os termos 0,4x 1 e 0,5x2 na funo objetivo para o mtodo "do grande nmero", essa funo objetivo basicamente equivalente funo objetivo da fase 1 desde que x 4 e/ou x 6 seja maior que zero. A seguir, quando tanto x4 = O quanto x6 = O, a funo objetivo para o mtodo "do grande nmero" se torna completamente equivalente funo objetivo da fase 2. Em virtude dessas equivalncias virtuais nas funes objetivo, os mtodos "do grande nmero" e das duas fases geralmente tm a mesma seqncia das solues BV. A nica exceo possvel ocorre quando houver um empate para a varivel bsica que entra na fase 1 do mtodo das duas fases, como realmente aconteceu na terceira tabela da Tabela 4.13. Observe que as trs primeiras tabelas das Tabelas 4.12 e 4.13 so praticamente idnticas, e a nica diferena reside no fato de os fatores multiplicadores de M na Tabela 4.12 se tornarem as quantidades nicas nos pontos correspondentes da Tabela 4.13. Conseqentemente, os termos aditivos que fazem o desempate para a varivel bsica que entra na terceira tabela da Tabela 4.12 no estavam presentes para fazer esse desempate na Tabela 4.13. O resultado para esse exemplo foi uma iterao extra para o mtodo das duas fases. Entretanto, geralmente a vantagem de termos fatores aditivos mnima. O mtodo das duas fases racionaliza o mtodo "do grande nmero" usando apenas os fatores multiplicadores da fase 1 e eliminando as variveis artificiais da fase 2. O mtodo "do grande nmero" poderia combinar os fatores multiplicadores e aditivos atribuindo um nmero realmente imenso a M, porm isso poderia criar problemas de instabilidade numrica. Por esse motivo, o mtodo das duas fases comumente utilizado em cdigos de computador. A seo Exemplos Trabalhados do CD-ROM fornece outro exemplo de aplicao simultnea do mtodo "do grande nmero" e das duas fases ao mesmo problema.

136

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE

Nenhuma Soluo Vivel


At este momento, nesta seo, nos preocupamos basicamente com o problema fundamental de identificar uma soluo BV inicial quando alguma bvia estivesse disponvel. Vimos como a tcnica das variveis artificiais pode ser usada para construir um problema artificial e obter uma soluo BV inicial para esse problema artificial. O emprego simultneo dos mtodos "do grande nmero" e das duas fases permite, ento, que o mtodo simplex inicie sua peregrinao em busca de solues BV para, finalmente, chegar soluo tima, para o problema real. Entretanto, devemos ficar atentos para certo risco ao usarmos essa abordagem. Pode ser que no haja nenhuma opo bvia para a soluo BV inicial pela simples razo de que no exista, na realidade, nenhuma soluo vivel! No obstante, construindo-se uma soluo vivel artificial, no h nada que impea o mtodo simplex de prosseguir como normalmente e, no final, relatar uma suposta soluo tima. Felizmente, a tcnica das variveis artificiais fornece a seguinte sinalizao para indicar quando isso acontece:
Se o problema original no tiver nenhuma soluo vivel, ento tanto o mtodo "do grande nmero" como o mtodo das duas fases levam a uma soluo final que tem pelo menos uma varivel artificial maior que zero. Caso contrrio, todas elas sero iguais a zero.

Para fins ilustrativos, modifiquemos a primeira restrio do exemplo de radioterapia (ver Figura 4.5) como se segue: 0,3x 1

+ O,lx2

:S

1,8,

de modo que o problema no tenha mais uma soluo vivel. Aplicar o mtodo "do grande nmero" do mesmo modo anterior (ver Tabela 4.12) nos conduza tabela mostrada na Tabela 4.16. A fase 1 do mtodo das duas fases leva ao mesmo resultado exceto pelo fato de que cada expresso envolvendo M substituda apenas pelo fator multiplicador. Portanto, normalmente o mtodo "do grande nmero" estaria indicando que a soluo

TABELA 4.16 O mtodo "do grande nmero" para a reviso do exemplo do tratamento radioterpico que no possui nenhuma soluo vivel
Coeficiente de: Iterao Varivel Bsica
Eq.

z
-1

X1

Xz

X3

X4

X5

x6
o o o
1

Lado Direito
-12M 1,8 6 6 -5,4M - 2.4 6 3 2,4 -0,6M- 5,7 3 9 0,6
1

z
o
X3

(O) (1) (2) (3) (O) (1) (2) (3) (O) (1) (2) (3)

X4

:x6

o o o
-1

-1,lM+0,4 0,3 0,5 c..M_

-0,9M + 0,5 O, 1 0,5 0,4 16 11 -30M + 30 1 3


1 3 0,2

o
1

o o
1

o o
.!_!_M - .i_ 3 3 10 3 5 3 -2

o o
-1

o o o
1

z
X1

o
1

o o o
1

o o o
-1

o o
-1

1
X4

:x6

o o o
1

o
1,6M- 1,1 -1 3 -0,6

z
2
X1

X2

:x6

o o o

o o
1

o o

M+ 0,5 5 -5 -1

o o
-1

o o o
1

137

tima (3;"9; O; O; O; 0,6). Porm, j que uma varivel artificial :X6 = 0,6 >O, ento a mensagem real neste caso que o problema no possui nenhuma soluo vivel. 14

A Possibilidade de Variveis Negativas


Na maioria dos casos prticos, valores negativos para variveis de deciso no teriam nenhum significado prtico, de maneira que necessrio incluir restries de no-negatividade nas formulaes de modelos de programao linear. Entretanto, nem sempre esse o caso. Suponhamos, por exemplo, que o problema da Wyndor Glass Co. fosse alterado de modo que o produto 1 j estivesse em produo e a primeira varivel de deciso x 1 representasse o aumento em sua taxa de produo. Conseqentemente, um valor negativo para x 1 indicaria que a fabricao do produto 1 vai ser reduzida dessa quantidade. Tais redues poderiam ser desejveis para permitir maior taxa de produo para o novo produto 2 que mais lucrativo, permitindo-se ento ter valores negativos para x 1 no modelo. Visto que o procedimento para determinar a varivel bsica que sai requer que todas as variveis tenham restries no-negativas, qualquer problema contendo variveis com permisso para serem negativas tem de ser convertido num problema equivalente envolvendo apenas variveis no-negativas antes de o mtodo simplex ser aplicado. Felizmente, essa converso pode ser feita. A modificao exigida para cada varivel depende de se ela tem ou no um limite inferior mais baixo (negativo) nos valores permitidos. Cada um desses dois casos ser discutido agora. Variveis com um Limite nos Valores Negativos Permitidos. Considere qualquer varivel de deciso xi com permisso para assumir valores negativos que satisfazem uma restrio da forma

em que Li alguma constante negativa. Essa restrio pode ser convertida para uma restrio no-negativa fazendo-se a mudana das variveis assim xj
2::

O.

Portanto, xj + Li seria substituda por xi ao longo do modelo, de maneira que a varivel de deciso redefinida xj no possa ser negativa. Essa mesma tcnica pode ser usada quando Li positivo para converter uma restrio funcional xi 2:: Li em uma restrio de nonegatividade x 2:: O. Suponha, por exemplo, que a taxa de produo atual para o produto 1 no caso da Wyndor seja 10. Com a definio de x 1 recm-fornecida, o modelo completo nesse ponto o mesmo que o dado na Seo 3.1 exceto pelo fato de que a restrio de no-negatividade x 1 2:: O substituda por

x, 2::

-10.

Para obter o modelo equivalente necessrio para o mtodo simplex, essa varivel de deciso seria redefinida como a taxa de produo total do produto 1 xj = x 1

+ 10,

o que leva s mudanas na funo objetivo e restries, conforme indicadas a seguir:

14

Foram desenvolvidas tcnicas (e incorporadas em software de programao linear) para analisar o que faz que

um problema programao linear de grandes dimenses no tenha nenhuma soluo vivel de modo que quaisquer erros na formulao possam ser corrigidos. Ver, por exemplo, CHINNECK, J. W.: Feasibility and Viability, Captulo 14 in GAL, T.; GREENBERG, H. J. (eds.): Advances in Sensitivity Analysis and Parametric Programming, Boston, MA: Kluwer Academic Publishers, 1997.

138

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

Z = 3x 1
X1

+ 5x2
S

4 2x2 s 12 3x1 + 2x2 s 18 X1 ~ -10, X2

___,.
~

Z = 3(x - 10) + 5x2 x - 10 s 4 2x2 s 12 3(x - 10) + 2x2 s 18 x - 10 ~ -10, X2 ~ 0

Z = - 30

+ 3x + Sx2
s 14

3x + 2x2 s 48

~O,

Variveis Sem Limites nos Valores Negativos Permitidos. Se o caso em que x1 no


tiver uma restrio de limite inferior no modelo formulado, exigida outra abordagem: x1 substituda por todo o modelo pela diferena das duas novas variveis no-negativas onde

2:

O, xj

2:

O.

Uma vez que x/ e xj podem assumir qualquer valor negativo, essa diferena x/ - xj pode assumir qualquer valor (positivo ou negativo); portanto, legtimo substituir x1 no modelo. No entanto, aps uma substituio desta, o mtodo simplex pode prosseguir apenas com variveis no-negativas. As novas variveis e xj tm uma interpretao simples. Conforme explicado no prximo pargrafo, cada soluo BV para a nova forma do modelo tem, necessariamente, a pro= O ou ento xj =O (ou ambos simultaneamente). Portanto, na soluo priedade que tima obtida pelo mtodo simplex (uma soluo BV).

X+ =
J

{X o
J

se x1 2: O, caso contrrio; se x1 ::::; O, caso contrrio;

- sua parte negativa de modo que x/ representa a parte positiva da varivel de deciso x1 e x1 (conforme sugerido pelos sobrescritos). Se, por exemplo, x1 = 10, as expresses anteriores resultam em x/ = 10 e x1 - = O. Esse mesmo valor de x1 = x/ - x1 - de - = 10 tambm ocorreria com valores maiores de x/ e x1 modo que x/ = xj + 1O. Colocando esses valores de x/ e xj num grfico bidimensional = 10, 1 - = O para evitar violar as restries resulta numa reta com uma extremidade em de no-negatividade. Essa extremidade a nica soluo em ponto extremo sobre a reta. Portanto, somente essa extremidade pode fazer parte de uma soluo FPE global ou soluo BV envolvendo todas as variveis do modelo. Isso ilustra porque cada soluo BV necessariamente tem x/ =O ou ento xj =O (ou ambos simultaneamente). Para ilustrar o emprego de x/ e xj, retomemos ao exemplo da pgina precedente em que x 1 redefinida como o aumento em relao atual taxa de produo de 10 para o produto 1 da Wyndor Glass. Suponha agora, porm, que a restrio x 1 2: -10 no tenha sido includa no modelo original porque ela claramente no modificar a soluo tima. Em alguns problemas certas variveis no precisam de restries de limite inferior explcitas, pois as restries funcionais j impedem valores mais baixos. Portanto, antes de o mtodo simplex ser aplicado, x 1 seria substitudo pela diferena

x/

onde conforme mostrado em:


Maximizar sujeto a

xi 2: O, xj 2: O,

X1

4 2x2 s 12 3x 1 + 2x2 s 18 x 2 ~O (apenas)


S

Maximizar sujeto a ___,.

z=

3xt - 3x1 + 5xz,

xi~

xl

3xt - 3x1 +

:5 4 2x2 s 12 2x2 s 18

4.7

ANLISE DE PS-OTIMALIDADE

139

Do ponto de vista computacional, esse mtodo tem a desvantagem de que o novo modelo equivalente usado ter mais variveis que o modelo original. De fato, se todas as variveis originais carecem de restries de limite inferior, o novo modelo ter o dobro de variveis. Felizmente, o mtodo pode ser alterado ligeiramente de modo que o nmero de variveis seja aumentado apenas de uma, independentemente do nmero original de variveis que precisam ser substitudas. Essa modificao feita substituindo-se cada uma dessas variveis x1 por

x 1 = xJ- x",

onde

xJ ::::: O, :X' ::::: O,

na qual :X' a mesma varivel para todo j relevante. A interpretao de x" nesse caso que - :X' o valor atual da maior varivel negativa original (em termos absolutos), de modo que xJ seja a quantidade pela qual x 1 excede esse valor. Por isso, o mtodo simplex agora pode fazer que algumas das variveis xJ fiquem maiores que zero mesmo quando :X' > O.

!"

4.7

ANLISE DE PS-OTIMALIDADE
Enfatizamos nas Sees 2.3, 2.4 e 2.5 que a anlise de ps-otimalidade - a anlise feita aps uma soluo tima ter sido encontrada para a verso inicial do modelo - constitui-se numa parte extremamente importante da maioria dos estudos de pesquisa operacional. O fato de a anlise de ps-otimalidade ser to importante particularmente verdadeiro para aplicaes de programao linear tpicas. Nesta seo, nos concentraremos no papel do mtodo simplex na realizao de tal anlise. A Tabela 4.17 resume os passos tpicos na anlise de ps-otimalidade em estudos de programao linear. A coluna mais direita identifica algumas tcnicas algortmicas que envolvem o mtodo simplex. Essas tcnicas sero introduzidas brevemente neste ponto, ficando os detalhes tcnicos para captulos posteriores.

Reotimizao
Conforme discutido na Seo 3.7, os modelos de programao linear que surgem na prtica comumente so muito grandes com centenas, milhares ou at mesmo milhes de restries funcionais e variveis de deciso. Em tais casos, muitas variaes do modelo bsico podem ser de interesse na considerao de diversos cenrios. Portanto, aps ter encontrado uma soluo tima para uma verso de um modelo de programao linear, freqentemente, recalculamos (normalmente muitas vezes) em busca de uma soluo ligeiramente diferente do modelo. Quase sempre temos recalcular vrias vezes durante o estgio de depurao do modelo (descrito nas Sees 2.3 e 2.4) e geralmente tambm temos de fazer o mesmo muitssimas vezes durante os estgios posteriores de anlise de ps-otimalidade. Nossa abordagem simplesmente reaplicar o mtodo simplex desde o zero para cada nova verso do modelo, embora cada execuo possa exigir centenas ou at mesmo milhares de iteraes para problemas grandes. Porm, um mtodo muito mais eficiente o da reotimizao. Esta envolve deduzir como alteraes no modelo so transportadas para a tabela
TABELA 4.17 Anlise de ps-otimalidade para programao linear
Tarefa
Depurao do modelo Validao do modelo Decises gerenciais finais sobre alocao de recursos (os valores b;) Avalia as estimativas dos parmetros de modelos Avalia o equilbrio entre os parmetros dos modelos

Propsito
Encontra erros e pontos fracos no modelo Demonstra a validade do modelo final Faz a diviso apropriada dos recursos organizacionais entre as atividades em estudo e outras atividades importantes Determina estimativas cruciais que podem afetar a soluo tima para estudo adicional Determina o melhor equilbrio

Tcnica
Reotimizao Ver Seo 2.4 Preos-sombra

Anlise de sensibilidade Programao linear paramtrica

140

------

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

simplex final (conforme descrito nas Sees 5.3 e 6.6). Essa tabela revisada e a soluo tima para o modelo anterior so, ento, usados como tabela inicial e soluo bsica inicial para solucionar o novo modelo. Se essa soluo for vivel para o novo modelo, o mtodo simplex ser aplicado da maneira tradicional, partindo dessa soluo BV inicial. Se a soluo no for vivel, um algoritmo relacionado chamado mtodo simplex dual (descrito na Seo 7.1) provavelmente poder ser aplicado para se encontrar a nova soluo tima, 15 partindo dessa soluo bsica inicial. A grande vantagem dessa tcnica de reotimizao em relao a recalcular a partir do zero que uma soluo tima para o modelo revisado estar muito mais prxima da soluo tima anterior do que uma soluo BV inicial construda da maneira usual para o mtodo simplex. Portanto, assumindo-se que as revises do modelo tenham sido modestas, seriam necessrias apenas algumas iteraes para reotimizao em vez de centenas ou milhares que poderiam ser necessrias quando se inicia a partir do zero. De fato, as solues timas para os modelos revisados normalmente so as mesmas, em cujo caso a tcnica de reotimizao requer apenas uma aplicao do teste de otimalidade e nenhuma iterao.

Preos-sombra
Recorde-se de que os problemas de programao linear normalmente podem ser interpretados como alocao de recursos a atividades. Em particular, quando as restries funcionais esto na forma:::;, interpretamos os b; (os lados direitos das equaes) como as quantidades dos respectivos recursos sendo disponibilizados para as atividades sob considerao. Em muitos casos, pode haver alguma flexibilidade nas quantidades que estaro disponveis. Se isso ocorrer de fato, os valores b; usados no modelo inicial (validado) podem realmente representar a deciso inicial experimental da diretoria sobre que volume de recursos organizacional ser fornecido para as atividades consideradas no modelo e no para outras atividades importantes do mbito da diretoria. Segundo essa viso mais ampla, parte dos valores b; pode ser aumentada num modelo revisado, mas somente se argumentos suficientemente fortes puderem ser apresentados diretoria de que esta reviso seria benfica. Conseqentemente, informaes sobre a contribuio econmica dos recursos medida de desempenho (Z) para o estudo atual normalmente seriam extremamente teis. O mtodo simplex fornece esse tipo de informao na forma de preos-sombra para os respectivos recursos.
O preo-sombra para o recurso i (representado por yi) mede o valor marginal desse recurso, isto , a taxa na qual Z poderia ser aumentado, elevando-se (ligeiramente) a quantidade deste recurso (b;) que est sendo disponibilizado. 16 17 O mtodo simplex identifica esse preo-sombra pelo coeficiente y7 = coeficiente da i-sima varivel de folga na linha O da tabela simplex final.

Para exemplificar, no caso do problema da Wyndor Glass Co., Recurso i = capacidade de produo da Fbrica i (i = 1, 2, 3) que est sendo disponibilizada para o novo produto sob considerao.
b; = horas de produo por semana que esto sendo disponibilizadas na Fbrica i para esses novos produtos

Fornecer uma quantidade substancial de tempo de produo para o novo produto exigiria ajustar tempos de produo para os produtos atuais; portanto, escolher o valor b; seria uma deciso gerencial difcil. A deciso inicial experimental foi
15

16

17

A nica exigncia para usar o mtodo simplex dual aqui que o teste de otimalidade ainda seja realizado quando aplicado linha O da tabela revisada final. Caso contrrio, ento um outro algoritmo chamado mtodo primai-dual pode ser usado em seu lugar. O acrscimo em bi tem que ser suficientemente pequeno para que o conjunto atual de variveis bsicas permanea timo j que a taxa (valor marginal) muda caso o conjunto de variveis bsicas varie. No caso de uma restrio funcional na forma 2: ou =, seu preo-sombra novamente definido como a taxa na qual Z poderia ser incrementado, o mesmo acontecendo (ligeiramente) com o valor de b,., embora a interpretao de b,. agora normalmente seja algo que no a quantidade disponibilizada de um recurso.

4.7

ANLISE DE PS-OTIMALIDADE

Xz
3x 1 + 2.x2 = 18

Z = 3x 1

+ 5xz

(5 13)
(2, 6)

--= 13-z= 3(D + 374} 6 > - - - - - - - - - - 2 x2 = 12-z = 3(2) + 5(6) = 36

~~----2x2

s(~)=

~z=

3 * 2 = Y2

FIGURA 4.8

Este grfico mostra que o preo-sombra = ~ para o recurso 2 no problema da Wyndor Glass Co. Os dois pontos so as solues timas para b2 = 12 ou b2 = 13, e conectando essas solues funo objetiva revela que aumentando-se b2 de 1 = ~. aumenta Z de

y;

y;

b2 = 12,
conforme refletido no modelo bsico considerado na Seo 3.1 e neste captulo. No entanto, agora a diretoria deseja avaliar o efeito de modificar qualquer um desses valores b;. Os preos-sombra para esses trs recursos fornecem apenas as informaes que a diretoria precisa. A tabela final na Tabela 4.8 resulta em

yj' = O = preo-sombra para o recurso 1,

Yi

3 2

= preo-sombra para o recurso 2,

y~ = 1 =preo-sombra para o recurso 3.

Com apenas duas variveis de deciso, esses nmeros podem ser verificados checando-se graficamente que aumentando-se individualmente qualquer b; de uma unidade de fato aumentaria o valor timo de Z de y{. Por exemplo, a Figura 4.8 demonstra esse aumento para o recurso 2 reaplicando o mtodo grfico apresentado na Seo 3.1. A soluo tima, com Z = 37~ quando b 2 incrementado de 1 (passan(2, 6) com Z = 36, muda para (~, do de 12 para 13), de modo que

1f)

yi

1 3 = liZ = 372 - 36 = 2

J que Z expresso em milhares de dlares de lucro semanal, yi = ~ indica que acrescentar uma hora de tempo de produo por semana na Fbrica 2 para esses dois produtos novos, incrementaria o lucro total em US$ 1.500 por semana. Essa mudana deve ser realmente implementada? Depende da lucratividade marginal dos demais produtos que esto empregando esse tempo de produo no momento. Se houver um produto atual que contribui com menos do que US$ 1.500 de lucro semanal por hora de tempo de produo na Fbrica 2, ento alguma transferncia de tempo de produo para o novo produto valeria a pena. Continuaremos essa histria na Seo 6. 7, em que a equipe de PO da Wyndor usa preos-sombra como parte de sua anlise de sensibilidade do modelo. A Figura 4.8 demonstra que yi = ~ a taxa na qual Z poderia ser aumentada, o mesmo ocorrendo ligeiramente com b2 . Porm, isso tambm demonstra o fenmeno comum de que essa interpretao vale apenas para um pequeno incremento em b 2 . Assim que b2 for aumentado acima de 18, a soluo tima permanece em (O, 9) sem nenhum aumento adicional em Z. (Nesse ponto, o conjunto de variveis bsicas na soluo tima mudou, de modo que uma nova tabela simplex final ser obtida com novos preos-sombra, inclusive yi = 0.)

142

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

Observe agora na Figura 4.8 por que yi = O. Pelo fato de a restrio no recurso 1, x 1 :::; 4, no estar atuando na soluo tima (2, 6), h um excedente deste recurso. Portanto, aumentar b 1 alm de 4 no poderia gerar uma nova soluo tima com um valor Z maior. Ao contrrio, as restries sobre os recursos 2 e 3, 2x2 :::; 12 e 3x 1 + 2x2 :::; 18, so restries atuantes (restries que mantm a condio de igualdade na soluo tima). Em razo de a quantidade limitada desses recursos (b 2 = 12, b 3 = 18) impedir Z de ser aumentado ainda mais, eles possuem preos-sombra positivos. Os economistas chamam esses recursos de recursos escassos, ao passo que recursos disponveis em excesso (como o recurso 1) so recursos livres (recursos com preo-sombra igual a zero). O tipo de informao fornecido pelos preos-sombra certamente valioso para a direo quando ela considera a realocao de recursos dentro da organizao. Tambm muito til quando um aumento em b; pode ser atingido simplesmente saindo-se da organizao para comprar maior quantidade do recurso no mercado. Suponha, por exemplo, que Z represente lucro e que os lucros unitrios das atividades (os valores c) incluam os custos (apreos usuais) de todos os recursos consumidos. Ento um preo-sombra positivo de y[ para o recurso i significa que o lucro total Z pode ser aumentado de y{ adquirindo-se mais uma unidade desse recurso ao preo normal. Alternativamente, se um preo extra tem de ser pago pelo recurso no mercado, ento y'! representa o encargo mximo (excesso em relao ao preo normal) que valeria a pena pagar. 18 A fundamentao terica para os preos-sombra dada pela teoria da dualidade descrita no Captulo 6.

Anlise de Sensibilidade
Ao discutirmos a hiptese da certeza da programao linear no final da Seo 3.3, indicamos que os valores usados para os parmetros do modelo (o a;j, b; e cj identificados na Tabela 3.3) geralmente so apenas estimativas das quantidades cujos valores reais no sero conhecidos at que o estudo de programao linear seja implementado em algum momento no futuro. Um dos objetivos principais da anlise de sensibilidade o de identificar os parmetros sensveis (isto , aqueles que no podem ser alterados sem alterar a soluo tima). Os parmetros sensveis so aqueles que precisam ser estimados com especial cuidado para minimizar o risco de obter-se uma soluo tima errnea. Eles tambm precisam ser monitorados particularmente de perto medida que o estudo implementado. Caso seja descoberto que o valor verdadeiro de um parmetro sensvel difere de seu valor estimado no modelo, isso sinaliza imediatamente que h necessidade de se mudar a soluo . Como os parmetros sensveis so identificados? No caso de b;, acabamos de verificar que essa informao dada pelos preos-sombra fornecidos pelo mtodo simplex. Em particular se y[ > O, ento a soluo tima muda caso b; seja modificado; portanto, b; um parmetro sensvel. Entretanto, y{ = O implica que a soluo tima no sensvel a pequenas alteraes em b;. Conseqentemente, se o valor usado para b; for uma estimativa da quantidade do recurso que estar disponvel (e no uma deciso gerencial), ento os valores b; que precisam ser monitorados mais de perto so aqueles com preos-sombra positivos especialmente aqueles com preos-sombra elevados. Quando houver apenas duas variveis, a sensibilidade dos diversos parmetros pode ser analisada graficamente. Por exemplo, na Figura 4.9, c 1 = 3 pode ser modificado para outro valor qualquer entre O e 7 ,5 sem mudar a soluo tima de (2, 6). A razo que qualquer valor de c 1 dentro desse intervalo mantm a inclinao de Z = c 1x 1 + 5x2 entre as inclinaes das retas 2x2 = 12 e 3x 1 + 2x2 = 18. Similarmente, se c2 = 5 for o nico parmetro modificado, ele pode ter qualquer valor maior que 2 sem afetar a soluo tima. Dessa forma, nem c 1 nem c2 so um parmetro sensvel. O procedimento denominado Mtodo Grfico e Anlise de Sensibilidade no Tutorial IOR permite que realizemos esse tipo de anlise grfica de forma muito eficiente.

18

Se os lucros unitrios no inclurem os custos dos recursos consumidos, ento yj representa o preo unitrio total mximo que ainda valeria a pena pagar para aumentar b1

4.7

ANLISE DE PS-OTIMALIDADE

143

10

Z FIGURA 4.9

Este grfico demonstra a anlise de sensibilidade de c1 e c2 para o problema da Wyndor Glass Co. Comeando com a reta da funo objetivo original [em que c1 = 3, c2 = 5 e a soluo tima (2, 6)], as outras duas retas indicam os extremos de quanto a reta da funo objetivo pode mudar e ainda permanecer com (2, 6) como soluo tima. Portanto, com c2 = 5, o intervalo possvel para c1 e O::::: c1 ::::: 7,5. Com c1 = 3, o intervalo possvel para Cz Cz ~ 2.

= 45 = 7,5x 1 + 5x2 (ou Z = 18 = 3x1 + 2x2)

Regio de solues

viveis
2

A maneira mais fcil de se analisar graficamente a sensibilidade de cada um dos parmetros aiJ verificar se a restrio correspondente limitante na soluo tima. Pelo fato de x 1 :::; 4 no ser uma restrio limitante, qualquer alterao suficientemente pequena em seus coeficientes (a 11 = 1, a 12 = 0) no vai alterar a soluo tima; logo, esses parmetros no so sensveis. No entanto, tanto 2.x2 :::; 12 quanto 3x 1 + 2x2 :::; 18 so restries limitantes, pois mudando-se qualquer um de seus coeficientes (a 21 = O, a 22 = 2, a 31 = 3, a 32 = 2) vai mudar a soluo tima e, portanto, esses so parmetros sensveis. Tipicamente dada maior ateno na realizao da anlise de sensibilidade nos parmetros bi e c1 do que nos parmetros iJ Em problemas reais com centenas ou milhares de restries e variveis, o efeito de alterar um valor aiJ normalmente desprezvel. Ao contrrio, alterar um valor bi ou c1 pode ter um impacto drstico. Alm disso, em muitos casos, os valores iJ so determinados pela tecnologia que est sendo empregada (os valores aiJ so muitas vezes chamados coeficientes tecnolgicos), de modo que pode haver relativamente pouca (ou nenhuma) incerteza em relao aos seus valores finais. Isso oportuno, pois h muito mais parmetros aiJ do que parmetros bi e c1 para problemas grandes. Para problemas com mais de duas (ou possivelmente trs) variveis de deciso, no podemos analisar a sensibilidade dos parmetros graficamente como foi feito para o caso Wyndor. Entretanto, podemos extrair o mesmo tipo de informao do mtodo simplex. Obter essas informaes requer o uso do insight fundamental descrito na Seo 5.3 para deduzir as alteraes que foram feitas ao longo do processo at se chegar tabela simplex final como conseqncia de se modificar o valor de um parmetro no modelo original. O restante do procedimento descrito e ilustrado nas Sees 6.6 e 6.7.

Usando o Excel para Gerar Informaes de Anlise de Sensibilidade


A anlise de sensibilidade est normalmente incorporada em pacotes de software baseados no mtodo simplex. Por exemplo, o Excel Solver vai gerar informaes de anlise de sensibilidade sob demanda. Conforme foi mostrado na Figura 3.21, quando o Solver d a mensagem que ele encontrou uma soluo, ele tambm fornece ( direita) uma lista de trs relatrios que podem ser gerados. Selecionando-se o segundo (intitulado "Sensibilidade") aps solucionar o problema da Wyndor Glass, obtm-se o relatrio de sensibilidade mostrado na Figura 4.1 O. A tabela superior nesse relatrio fornece as informaes de anlise de sensibilidade sobre as variveis de deciso e seus coeficientes na funo objetivo. A tabela inferior faz o mesmo para as restries funcionais e seus lados direitos.

144

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

Clulas Clula
$C$12 $0$12

Nome
Lotes Produzidos Portas Lotes Produzidos Janelas

Coeficiente Acrscimo Valor Custo Final Reduzido Objetivo Possvel


2 6

Decrscimo Possvel
3.000 3.000

o o

3.000 5.000

4.500 1 E+30

FIGURA 4.1 O O relatrio de sensibilidade fornecido pelo Excel Solver para o problema da Wyndor Glass Co.

Clula
$E$7 $E$8 $E$9

Nome
Usada Fbrica 1 Usada Fbrica 2 Usada Fbrica 3

Valor Final
2 12 18

PreoRestrio Acrscimo sombra Lado Direito Possvel

Decrscimo Possvel
2 6 6

o
1.500 1.000

o o o

1 E+30 6 6

Vejamos primeiramente na tabela superior dessa figura. A coluna "Valor Final" indica a soluo tima. A coluna seguinte fornece os custos reduzidos. No discutiremos sobre esses custos reduzidos agora, pois as informaes que eles apresentam tambm podem ser extradas do restante da tabela superior. As prximas trs colunas fornecem as informaes necessrias para identificar o intervalo possvel para permanecer tima para cada coeficiente cj da funo objetivo. Para qualquer cj, seu intervalo possvel para permanecer tima o intervalo de valores para esse coeficiente sobre o qual a soluo tima atual permanece tima, pressupondpse que no haja nenhuma alterao nos demais coeficientes. A coluna "Coeficiente Objetivo" d o valor atual de cada coeficiente e as duas colunas seguintes fornecem o acrscimo possvel e o decrscimo possvel deste valor para permanecer dentro do intervalo possvel. O modelo de planilha (Figura 3.22) expressa os lucros por lote em unidades de dlares, ao passo que cj na verso algbrica do modelo de programao linear usa unidades de milhares de dlares; portanto, as quantidades em todas essas trs colunas precisam ser divididas por 1.000 para fica compatveis com a unidade usada em cj. Portanto, portanto 0
:5 C1 :5

7,5

o intervalo possvel para c 1 sobre o qual a soluo tima atual permanecer tima (assumindo-se c2 = 5), da mesma maneira como foi encontrada graficamente na Figura 4.9. Similarmente, j que o Excel usa lE + 30 (10 30) para representar infinito,
~~~~~~

5.000 - 3.000 < c l. 000 - 2

<
-

~~~~-

5.000 + 1.000

00

portanto

o intervalo possvel para permanecer tima para c2 . O fato de tanto o acrscimo quanto o decrscimo possvel serem maiores que zero para o coeficiente de ambas as variveis de deciso nos d outra informao importante, conforme descrito a seguir.
Quando a tabela superior no relatrio de sensibilidade gerado pelo Excel Solver indicar que tanto o acrscimo quanto o decrscimo possveis forem maiores que zero para todos os coeficientes objetivos, isto , uma sinalizao de que a soluo tima na coluna "Valor Final" a nica soluo tima. Ao contrrio, se houver qualquer acrscimo ou decrscimo possveis iguais a zero uma indicao de que h solues timas mltiplas. Alterando-se um pouquinho o coeficiente correspondente acima do zero permitido e recalculando-se, obtm outra soluo FPE tima para o modelo original.

Considere agora a tabela inferior na Figura 4.10 que se concentra na anlise de sensibilidade para as trs restries funcionais. A coluna "Valor Final" d o valor do lado

4.7

ANLISE DE PS-OTIMALIDADE

145

esquerdo de cada restrio para a soluo tima. As duas colunas seguintes do o preosombra e o valor atual do lado direito (b;) para cada restrio. Esses preos-sombra do modelo de planilha usam unidades de dlares e, portanto, precisam ser divididos por 1.000 para ficarem compatveis com as unidades de milhares de dlares de Z na verso algbrica do modelo de programao linear. Quando somente um valor b; alterado, as duas ltimas colunas fornecem o acrscimo ou, ento, decrscimo possvel de modo a continuar dentro do intervalo possvel.
Para qualquer b;, seu intervalo permissvel o intervalo de valores para o lado direito em relao ao qual a soluo BV tima atual (com valores ajustados 19 para as variveis bsicas) permanece vivel, supondo-se que no ocorra nenhuma alterao nos lados direitos. Uma propriedade fundamental desse intervalo de valores que o preo-sombra atual para b; permanece vlido para avaliar o efeito sobre Z quando se altera b; somente enquanto b; permanecer dentro desse intervalo possvel.

Portanto, usando-se a tabela inferior da Figura 4.1 O, a combinao das duas ltimas colunas com os valores atuais dos lados direitos resulta nos seguintes intervalos possveis para que a soluo permanea vivel: 2 :::; b1 6 :::; b2 :::; 18 12 :::; b3 :::; 24. Esse relatrio de sensibilidade gerado pelo Excel Solver tpico das informaes de anlise de sensibilidade fornecidas por pacotes de software para programao linear. Voc ver no Apndice 4.1 que o Lindo fornece basicamente o mesmo tipo de relatrio. O MPL/CPLEX tambm faz o mesmo quando solicitado via caixa de dilogo Solution File. Repetindo, essas informaes obtidas algebricamente tambm podem ser derivadas da anlise grfica para esse problema de duas variveis (ver o Problema. 4.7-1). Por exemplo, quando b 2 aumentado de 12 na Figura 4.8, a soluo FPE tima na interseo dos dois limites de restrio 2x2 = b 2 e 3x 1 + 2x2 = 18 permanecer vivel (incluindo x 1 ::=::O) somente para b2 ::::: 18. A seo de Exemplos Trabalhados do CD-ROM inclui outro exemplo de aplicao da anlise de sensibilidade (usando anlise grfica, bem como o relatrio de sensibilidade). A ltima parte do Captulo 6 tambm vai se aprofundar mais nesse tipo de anlise.

Programao linear Paramtrica


A anlise de sensibilidade envolve a mudana de um parmetro por vez no modelo original para verificar seu efeito sobre a soluo tima. Ao contrrio, a programao linear paramtrica (ou simplesmente programao paramtrica) envolve o estudo sistemtico de como a soluo tima muda medida que vrios parmetros se alteram simultaneamente dentro de algum intervalo. Esse estudo pode fornecer uma extenso muito til da anlise de sensibilidade para, por exemplo, verificar o efeito de parmetros "correlacionados" que mudam juntos em virtude de fatores exgenos como a situao da economia. Contudo, uma aplicao mais importante a investigao dos conflitos nos valores de parmetros. Se, por exemplo, os valores cj representarem os lucros unitrios das respectivas atividades, pode ser que seja possvel aumentar alguns dos valores cj custa da diminuio de outros por meio de um deslocamento apropriado de pessoal e equipamento entre as atividades. Da mesma forma, se os valores b; representarem as quantidades dos respectivos recursos que esto disponibilizados, pode ser que seja possvel aumentar parte dos valores b; concordando em

19

J que os valores das variveis bsicas so obtidos como a soluo simultnea de um sistema de equaes (as restries funcionais na forma aumentada), pelo menos alguns desses valores mudam caso um dos lados direitos se alterar. Entretanto, os valores ajustados do conjunto atual de variveis bsicas ainda vai satisfazer as restries de no-negatividade e, portanto, ainda sero viveis, desse que o novo valor desse lado direito permanea dentro de seu intervalo possvel. Se a soluo bsica ajustada ainda for vivel, ela tambm ser tima. Falaremos mais a esse respeito na Seo 6.7.

146

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

aceitar diminuies em alguns dos demais. A anlise de tais possibilidades discutida e ilustrada no final da Seo 6.7. Em alguns aplicativos, o principal objetivo do estudo determinar a compensao mais apropriada entre dois fatores bsicos como custos e benefcios. A sistemtica usual expressar um destes fatores na funo objetivo (por exemplo, minimizar o custo total) e incorporar o outro nas restries (por exemplo, benefcios 2: nvel mnimo aceitvel), como foi feito para o problema de poluio do ar da Nori & Leets Co. na Seo 3.4. A programao linear paramtrica permite ento investigao sistemtica do que acontece quando a deciso experimental inicial sobre a compensao (por exemplo, o nvel mnimo aceitvel para os benefcios) alterada aumentando-se um fator em detrimento de outro. A tcnica algortmica para a programao linear paramtrica uma extenso natural daquela da anlise de sensibilidade e, portanto, tambm se baseia no mtodo simplex. O procedimento descrito na Seo 7.2.

f; ~4.8

IMPLEMENTAO VIA COMPUTADOR


Se o computador eletrnico jamais tivesse sido inventado, indubitavelmente voc jamais teria ouvido falar de programao linear e mtodo simplex. Embora seja possvel aplicar manualmente o mtodo simplex para resolver problemas de programao linear minsculos, os clculos so simplesmente muito tediosos para serem realizados rotineiramente. Todavia, o mtodo simplex se ajusta perfeitamente para ser executado em computadores. Foi a revoluo dos computadores que tomou possvel a aplicao disseminada da programao linear nas ltimas dcadas.

Implementao do Mtodo Simplex


Atualmente encontram-se amplamente disposio cdigos de computador para o mtodo simplex para praticamente todos os sistemas computacionais modernos. Esses cdigos comumente fazem parte de um pacote de software sofisticado para programao matemtica que inclui vrios dos procedimentos descritos nos captulos seguintes (inclusive aqueles usados para anlise de ps-otimalidade). Esses cdigos computacionais de produo no seguem de perto nem a forma algbrica nem a forma tabular do mtodo simplex apresentada nas Sees 4.3 e 4.4. Essas formas podem ser aperfeioadas consideravelmente para implementaes via computador. Os cdigos usam em seu lugar uma forma matricial (normalmente chamada mtodo simplex revisado) que particularmente adaptada para uso em computadores. Essa forma realiza exatamente as mesmas coisas que a forma algbrica e tabular, porm ela faz isso enquanto processa e armazena apenas os nmeros que so efetivamente necessrios para a iterao atual e depois transporta os dados essenciais de uma forma muito mais compacta. O mtodo simplex revisado descrito na Seo 5.2. O mtodo simplex usado rotineiramente para resolver problemas de programao linear surpreendentemente grandes. Por exemplo, computadores desktop poderosos (incluindo estaes de trabalho) so usados comumente para solucionar problemas com vrios milhares de restries funcionais e um nmero ainda maior de variveis de deciso. Ocasionalmente, problemas que foram bem-sucedidos em sua resoluo possuem at centenas de milhares de restries funcionais e milhes de variveis de deciso. 20 Para certos tipos especiais de problemas de programao linear (tais como aqueles de transporte, alocao e de fluxo de custo mnimo sero descritos posteriormente neste livro), problemas ainda maiores podero ser resolvidos pelas verses especializadas do mtodo simplex.
20

No tente fazer isso em casa. Atacar um problema assim grande requer sistemas de programao linear particularmente sofisticados que usam as mais recentes tcnicas para explorar escassez na matriz de coeficientes, bem como outras tcnicas especiais (por exemplo, tcnicas crushing para encontrar rapidamente uma soluo BV inicial avanada). Quando os problemas so novamente resolvidos periodicamente aps pequenas atualizaes dos dados, normalmente se poupa muito tempo usando (ou modificando) a ltima soluo tima para fornecer a soluo BV inicial para o novo processamento.

4.8

VIA COMPUTADOR

147

Vrios fatores afetam quanto tempo levar para solucionar um problema de programao linear pelo mtodo simplex genrico. O mais importante deles o nmero de restries funcionais ordinrias. De fato, o tempo de processamento tende a ser, em termos grosseiros, proporcional ao cubo desse nmero, o que faz que o ato de simplesmente dobrarmos este nmero possa multiplicar o tempo de processamento por um fator de aproximadamente 8. Ao contrrio, o nmero de variveis de deciso um fator relativamente insignificante. 21 Portanto, dobrar o nmero de variveis de deciso provavelmente no vai nem mesmo dobrar o tempo de processamento. Um terceiro fator de relativa importncia a densidade da tabela de coeficientes derestries (isto , a proporo dos coeficientes que no so zeros), pois isso afeta o tempo de processamento por iterao. Para os problemas grandes como aqueles encontrados na prtica, comum essa densidade estar abaixo dos 5% ou at mesmo abaixo de 1% e essa "escassez" to grande tende a acelerar muito o mtodo simplex. Uma regra prtica comum para o nmero de iteraes que ele tende a ser aproximadamente o dobro do nmero de restries funcionais. Com problemas de programao linear grandes inevitvel que, inicialmente, sejam cometidos alguns erros e decises errneas na formulao do modelo e na sua introduo no computador. Por conseguinte, conforme discutido na Seo 2.4, necessrio empregar-se um processo abrangente de testes e refinamento do modelo (validao do modelo). O produto final usual no um simples modelo esttico que resolvido de uma vez pelo mtodo simplex. Ao contrrio, a equipe de PO e a gerncia normalmente consideram uma longa srie de variaes num modelo bsico (algumas vezes chegando a milhares de variaes) para examinar diversos cenrios como parte da anlise de otimalidade. Esse processo todo enormemente acelerado quando ele pode ser realizado de forma interativa num computador desktop. E, com o auxlio de linguagens de modelagem de programao matemtica, bem como de tecnologia computacional mais avanada, isso agora est se tomando uma prtica comum. At meados dos anos 80, os problemas de programao linear eram resolvidos quase exclusivamente em mainframes. A partir de ento, ocorreu uma exploso na capacidade de execuo de programao linear em computadores desktop, inclusive PCs, assim como estaes de trabalho. As estaes de trabalho, algumas com recursos de processamento paralelo, so usadas comumente hoje em dia no lugar dos mainframes para resolver modelos de programao linear pesados. Os computadores pessoais mais rpidos no esto muito atrs, embora haja a necessidade de memria adicional para solucionar modelos bem grandes.

Software para Programao Linear que Acompanha Este livro


Hoje, h disponvel um nmero considervel de excelentes pacotes de software para programao linear e suas extenses, atendendo a uma srie de necessidades. Um que largamente considerado um pacote particularmente poderoso para soluo de problemas pesados o CPLEX, um produto da Ilog, Inc., localizada no Vale do Silcio. Desde 1988, a CPLEX tem ajudado a abrir caminho na soluo de problemas de programao linear cada vez maiores. Ampla campanha de pesquisa e desenvolvimento possibilitou uma srie de atualizaes com ganhos de eficincia espetaculares. O CPLEX 8.0 lanado em junho de 2002 deu um grande passo. Esse pacote de software foi bem-sucedido na resoluo de problemas de programao linear reais que surgiam no mercado com at 1O milhes de restries funcionais e 20 milhes de variveis de deciso! O CPLEX normalmente usa o mtodo simplex e suas variantes (como o mtodo simplex dual apresentado na Seo 7.1) para resolver esses problemas enormes. Alm do mtodo simplex, o CPLEX tambm possui algumas outras armas poderosas para enfrentar os problemas de programao linear. Uma delas um algoritmo incrivelmente rpido (conhecido como algoritmo de barreira) que usa a metodologia do ponto interno introduzida na Seo 4.9. Esse algoritmo capaz de resolver alguns problemas de programao linear imensos que o mtodo simplex no seria capaz (e vice-versa). Outro recurso o mtodo simplex de rede (descrito na Seo 9.7) que pode solucionar tipos
21

Essa afirmao assume que est sendo usado o mtodo simplex revisado descrito na Seo 5.2.

148

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE

especiais de problemas ainda maiores. O CPLEX 8.0 tambm vai alm da programao linear, incluindo algoritmos de ponta para programao inteira (Captulo 11) e programao quadrtica (Seo 12. 7), bem como para programao quadrtica inteira. Antecipamos que esses grandes avanos nos pacotes de software de otimizao de ponta, como o CPLEX, continuaro no futuro. No momento em que escrevamos este livro (novembro de 2003), uma verso ainda mais poderosa do CPLEX (verso 9.0) estava sendo lanada. Pelo fato de ser muito usado para solucionar problemas realmente grandes, o CPLEX utilizado normalmente em conjunto com uma linguagem de modelagem de programao matemtica. Conforme descrito na Seo 3.7, as linguagens de modelagem so desenvolvidas para formular eficientemente problemas de programao linear grandes (e seus modelos relacionados) de um modo compacto, aps o qual um solucionador chamado para solucionar o modelo. Vrias das proeminentes linguagens de programao suportam o CPLEX como um solucionador. A Ilog tambm introduziu sua prpria linguagem de programao, denominada OPL Studio, que pode ser usada com o CPLEX. (Voc poder encontrar uma verso demonstrativa do OPL Studio no site da empresa, www.ilog.com.) Conforme mencionado na Seo 3.7, a verso educacional do CPLEX includa no Courseware de PO como o solucionador para a linguagem de modelagem MPL. Essa verso contm o mtodo simplex para resoluo de problemas de programao linear. Ficamos honrados em fornecer a verso educacional do recm-lanado CPLEX 9.0. O Lindo (abreviatura de Linear, lnteractive and Discrete Optimizer) um outro proeminente pacote de software para programao linear e suas extenses. Um produto da Lindo Systems com sede em Chicago, o Lindo tem uma histria ainda mais longa que o CPLEX. Atualmente, ele se encontra disponvel como um otimizador interativo simples e fcil de usar para o usurio iniciante ou ento na forma de uma biblioteca de interfaces de programao de aplicaes que pode ser chamada, a API Lindo. (Essa ltima aquela fornecida no CD-ROM.) Embora normalmente no to poderosa quanto o CPLEX, a verso mais avanada do Lindo resolveu problemas com centenas de milhares de restries funcionais e milhes de variveis de deciso. Sua longa popularidade se deve parcialmente sua facilidade de uso. Para problemas relativamente pequenos (como os apresentados neste livro), o modelo pode ser introduzido e resolvido de maneira direta e intuitiva, de modo que o Lindo fornece uma ferramenta conveniente para emprego por parte dos estudantes. Entretanto, o Lindo carece de algumas das capacidades das linguagens de modelagem no tratamento de problemas de programao linear grandes. Para tais problemas, talvez seja mais eficiente usar a linguagem de modelagem Lingo para formular o modelo e depois chamar o solucionador que ela compartilha com o Lindo para solucionar o modelo. O Lingo agora fornece a opo de incorporar o Lindo e ficar alternando entre o estilo de entrada do Lindo e Lingo. Uma verso educacional do Lindo/Lingo includa no Courseware de PO do CD-ROM. O Apndice 4.1 fornece uma introduo de como usar o Lindo. O CD-ROM tambm inclui um tutorial Lindo, bem como formulaes Lindo para todos os exemplos deste livro para os quais ele pode ser aplicado. Solucionadores baseados em planilhas esto se tomando cada vez mais populares para programao linear e suas extenses. Na dianteira esto os solucionadores desenvolvidos pela Frontline Systems para Excel e outros pacotes de planilha. Alm do solucionador bsico fornecido com estes pacotes, tambm esto disponveis produtos Premium Solver mais poderosos. Em razo do disseminado emprego de pacotes de planilha como o Microsoft Excel, esses solucionadores esto introduzindo pela primeira vez um grande nmero de pessoas para o potencial da programao linear. Para problemas relativamente pequenos (e problemas consideravelmente maiores tambm), as planilhas oferecem uma maneira conveniente de se formular e resolver o modelo, conforme descrito na Seo 3.6. Os solucionadores para planilha mais poderosos so capazes de resolver modelos relativamente grandes com vrios milhares de variveis de deciso. Por exemplo, o solucionador para planilhas What's Best desenvolvido pela Lindo Systems resolveu problemas de programao linear em planilhas que excediam 75 Mb em tamanho e continham mais de um milho de variveis de deciso. Entretanto, quando a planilha cresce para um tamanho

4.9

SISTEMTICA DO PONTO INTERNO NA RESOLUO DE PROBLEMAS...

149

indomvel, uma boa linguagem de modelagem e seu solucionador podem oferecer uma sistemtica mais eficiente na formulao e resoluo de modelos. As planilhas fornecem uma excelente ferramenta de comunicao, especialmente ao se lidar com gerentes tpicos que se sentem muito vontade com esse formato, mas no com as formulaes algbricas de modelos de PO. Portanto, pacotes de software de otimizao e linguagens de modelagem agora so capazes de importar e exportar dados e resultados num formato de planilha. Por exemplo, a linguagem de modelagem MPL agora inclui uma melhoria (chamada OptiMax 2000 Component Library) que possibilita ao modelador criar a sensao de um modelo em planilha para o usurio do modelo enquanto se usa a MPL para formular o modelo de modo muito eficiente. (A verso educacional do OptiMax 2000 pode ser encontrada no Courseware de PO.) Premium Solver for Education um dos add-ins do Excel includos no CD-ROM. Voc pode instal-las para extrair maior funcionalidade do que com o Excel Solver-padro. Conseqentemente, todo o software, tutoriais e exemplos que se encontram no CD-ROM fornecem a voc vrias opes atrativas para programao linear.

Opes de Software Disponveis para Programao linear


1. Exemplos de demonstrao (no Tutor PO) e procedimentos interativos e tambm automticos no Tutorial IOR para uma aprendizagem eficiente do mtodo simplex. 2. Excel e seu Premium Solver para formular e resolver modelos de programao linear num formato de planilha. 3. MPL/CPLEX para formular e resolver de modo eficiente modelos de programao linear de grande dimenso. 4. Lingo e seu solucionador (compartilhado com o Lindo) para uma maneira alternativa de formular e resolver eficientemente modelos de programao linear grandes. 5. Lindo para formular e solucionar modelos de programao linear de maneira direta e objetiva.
Seu professor poder especificar que software usar. Seja qual for a escolha, voc estar ganhando experincia com o tipo de software de ponta que usado pelos profissionais da PO.

4.9

SISTEMTICA DO PONTO INTERNO NA RESOLUO DE PRO PROGRAMAO LINEAR


O avano mais impressionante no campo da pesquisa operacional durante os anos 80 foi a descoberta da sistemtica do ponto interno na resoluo de problemas de programao linear. Esta descoberta foi feita em 1984 por um jovem matemtico na AT&T Bell Laboratories, Narendra Karmarkar, ao desenvolver um novo algoritmo para programao linear com esse tipo de metodologia. Embora esse algoritmo em particular tenha experimentado certo sucesso na concorrncia com o mtodo simplex, o conceito-chave de soluo descrito a seguir parecia ter grande potencial para resolver problemas de programao linear imensos alm do alcance do mtodo simplex. Muitos pesquisadores de alto nvel trabalharam posteriormente no aperfeioamento do algoritmo de Karmarkar para atingir plenamente esse potencial. Grandes progressos foram feitos (e continuam a ser feitos) e uma srie de algoritmos poderosos usando a metodologia do ponto interno foi desenvolvida. Hoje em dia, os pacotes de software mais poderosos que so desenvolvidos para resolver problemas de programao linear realmente grandes (como o CPLEX) incluem pelo menos um algoritmo empregando a metodologia do ponto interno juntamente com o mtodo simplex e suas variantes. medida que continua a pesquisa sobre esses algoritmos, as correspondentes implementaes em computador continuam a avanar. Isso estimulou a pesquisa renovada sobre o mtodo simplex e suas implementaes em computador tambm continuam a progredir. Continua a disputa entre as duas sistemticas pela supremacia na resoluo de problemas enormes. Vejamos agora a idia-chave por trs do algoritmo de Karmarkar e suas variantes subseqentes que usam a metodologia do ponto interno.

150

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

FIGURA 4.11 A curva que vai de (1, 2) at (2,6) mostra um percurso tpico seguido por um algoritmo de ponto interno, diretamente pelo interior da regio de solues viveis para o problema da Wyndor Glass Co.

Conceito-chave de Soluo
Embora radicalmente diverso do mtodo simplex, o algoritmo de Karmarkar compartilha algumas caractersticas em comum. um algoritmo interativo. Inicia-se identificando uma soluo experimental vivel. A cada iterao, move-se da soluo experimental atual para outra melhor dentro da regio de solues viveis. Depois, continua esse processo at chegar soluo experimental que (essencialmente) tima. A grande diferena est na natureza dessas solues experimentais. No mtodo simplex, as solues experimentais so solues FPE (ou solues BV aps aumentar), de forma que todo o movimento ocorra ao longo do eixo dos lados do limite da regio de solues viveis. Para o algoritmo de Karmarkar, as solues experimentais so pontos internos, isto , pontos dentro dos limites da regio de solues viveis. Por essa razo, o algoritmo de Karmarkar e suas variantes so conhecidos como algoritmos dos pontos internos. Alternativamente, tais algoritmos tambm so conhecidos comumente como algoritmo de barreira (ou mtodo da barreira). O termo barreira usado, pois, da perspectiva de uma busca cujas solues experimentais so pontos internos, cada limite de restrio tratado como uma barreira. A maioria dos pacotes de software agora usa o termo barreira ao se referir s suas opes de solucionador que se baseiam na metodologia do ponto interno. Tanto o CPLEX quanto a API Lindo incluem um "algoritmo de barreira" que pode ser usado para solucionar problemas de programao linear, bem como problemas de programao quadrtica (discutidos na Seo 12.7). Para ilustrar a metodologia do ponto interno, a Figura 4.11 revela o percurso seguido pelo algoritmo de ponto interno no Courseware de PO quando aplicado ao problema da Wyndor Glass Co., partindo da soluo experimental inicial (1, 2). Note como todas as solues experimentais (pontos) mostradas neste caminho se encontram dentro dos limites da regio de solues viveis medida que o caminho se aproxima da soluo tima (2, 6). Todas as solues experimentais subseqentes no mostradas tambm se encontram dentro

4.9

SISTEMTICA DO PONTO INTERNO NA RESOLUO DE PROBLEMAS...

151

TABELA 4.18 Sada do algoritmo de ponto interno no Courseware de PO para

o problema da Wyndor Glass Co.


Iterao
X1

Xz

z
13
23,8189 29, 1323 32, 1887 33,9989 34,9094 35,429 35,7115 35,8556 35,9278 35,9639 35,9819 35,991 35,9955 35,9977 35,9989

o
1 2 3 4 5 6 7 8 9 10 11 12 1,27298 1,37744 1,56291 1,80268 1,92134 1,96639 1,98385 1,99197 1,99599 1,99799 1,999 1,9995 1,99975 1,99987 1,99994

13
14 15

2 4 5 5,5 5,71816 5,.82908 5,90595 5,95199 5,97594 5,98796 5,99398 5,99699 5,9985 5,99925 5,99962 5,99981

dos limites da regio de solues viveis. Compare esse caminho com aquele seguido pelo mtodo simplex ao longo do contorno da regio de solues viveis partindo de (O, O) e indo para (O, 6) e depois para (2, 6). A Tabela 4.18 indica a sada real do Tutorial IOR para esse problema. 22 Tente voc mesmo. Observe como as solues experimentais sucessivas vo se aproximando cada vez mais da soluo tima, mas jamais a atinge na prtica. Porm, o desvio.se torna to infinitesimalmente pequeno que a soluo experimental final pode ser assumida como a soluo tima para todos fins prticos. A seo de Exemplos Trabalhados no CD-ROM mostra tambm a sada do Tutorial IOR para um outro problema. A Seo 7.4 apresenta os detalhes do algoritmo de ponto interno especfico que implementado no Tutorial IOR.

Comparao com o Mtodo Simplex


Uma maneira significativa de se comparar os algoritmos de pontos internos com o mtodo simplex examinar suas propriedades tericas em relao complexidade computacional. Karmarkar provou que a verso original de seu algoritmo um algoritmo de tempo polinomial, isto , o tempo necessrio para resolver qualquer problema de programao linear pode ser limitado acima por uma funo polinomial do tamanho do problema. Foram construdos contra-exemplos patolgicos para demonstrar que o mtodo simplex no possui essa propriedade de forma que ele um algoritmo de tempo exponencial (isto , o tempo necessrio pode ser limitado acima somente por uma funo exponencial do tamanho do problema). Essa diferena no desempenho do pior caso notvel. Entretanto, ela no nos informa nada em relao comparao delas em desempenho mdio em problemas reais, que a questo mais crucial. Os dois fatores bsicos que determinam o desempenho de um algoritmo num problema real so o tempo mdio de processamento por iterao e o nmero de iteraes. Nossas prximas comparaes dizem respeito a esses fatores. Os algoritmos de pontos internos so bem mais complexos do que o mtodo simplex. So necessrios clculos consideravelmente mais exaustivos para cada iterao para se encontrar a soluo experimental seguinte. Desse modo, o tempo de processamento por iterao para um algoritmo de ponto interno muitas vezes mais longo do que para o mtodo simplex.
22

O procedimento se chama Solucione Automaticamente pelo Algoritmo de Ponto Interno. O menu de opes fornece duas opes para certo parmetro do algoritmo a (definido na Seo 7.4). A opo usada aqui o valor-padro a= 0,5.

152

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE

LINEAR ...

Para problemas relativamente pequenos, o nmero de iteraes necessrias por um algoritmo de ponto interno e pelo mtodo simplex tende a ser algo comparvel. Por exemplo, num problema com dez restries funcionais, seriam necessrias aproximadamente 20 iteraes para ambos os tipos de algoritmo. Conseqentemente, em problemas de dimenses similares, o tempo de processamento total para um algoritmo de ponto interno tende a ser vrias vezes mais longo que aquele para o mtodo simplex. No entanto, uma vantagem fundamental dos algoritmos de pontos internos que problemas maiores no requerem muito mais iteraes que problemas pequenos. Por exemplo, para um problema com 10.000 restries funcionais provavelmente exigiro algo abaixo de cem iteraes. Mesmo considerando o tempo de processamento bem substancial por iterao necessrio para um problema desse tamanho, um nmero pequeno como este de iteraes toma o problema bem malevel. Ao contrrio, o mtodo simplex poderia precisar de 20.000 iteraes e, portanto, talvez no conseguissem terminar dentro de um tempo de processamento razovel. Portanto, os algoritmos de pontos internos normalmente so mais rpidos que o mtodo simplex para problemas de tal porte. A razo para essa diferena to grande no nmero de iteraes em problemas muito grandes a diferena nos caminhos seguidos. A cada iterao, o mtodo simplex se desloca da soluo FPE atual para a soluo FPE adjacente ao longo de um lado no contorno da regio de solues viveis. Problemas enormes possuem um nmero astronmico de solues FPE. O caminho a partir da soluo FPE inicial at se atingir uma soluo tima pode ser um bem tortuoso ao redor do contorno, avanando apenas um pouco de uma soluo para a soluo FPE seguinte, de modo que pode ser necessrio um nmero enorme de etapas at se atingir efetivamente uma soluo tima. Ao contrrio, um algoritmo de ponto interno contorna tudo isso percorrendo o interior da regio de solues viveis em direo a uma soluo tima. Adicionar mais restries funcionais acrescenta mais restries de limite regio de solues viveis, mas pouco efeito sobre o nmero de solues experimentais necessrias nesse caminho pelo interior. Isso toma possvel para algoritmos de pontos internos resolver problemas com um nmero enorme de restries funcionais. Uma comparao-chave fundamental diz respeito capacidade de realizar os diversos tipos de testes de otimalidade descritos na Seo 4.7. O mtodo simplex e suas extenses se ajustam muito bem e so amplamente utilizados nesse tipo de anlise. Infelizmente, a metodologia do ponto interno tem, atualmente, capacidade limitada nessa rea. 23 Dada a grande importncia da anlise de ps-otimalidade, esse um ponto fraco crucial nos algoritmos de pontos internos. Porm, indicamos a seguir como o mtodo simplex pode ser combinado com a metodologia do ponto interno para suplantar esse inconveniente.

u.,,,. ...,...o: de Complementaridade do Mtodo do Ponto Interno


Pesquisas em curso continuam a gerar melhorias substanciais nas implementaes computacionais tanto do mtodo simplex (incluindo suas variantes) quanto dos algoritmos de pontos internos. Portanto, quaisquer previses sobre seus papis no futuro so arriscadas. Entretanto, sintetizamos efetivamente nossa avaliao atual de suas regras de complementaridade. O mtodo simplex (e suas variantes) continua a ser o algoritmo-padro para o uso rotineiro da programao linear. Ele continua a ser o algoritmo mais eficiente para problemas com menos de algumas centenas de restries funcionais. Ele tambm o mais eficiente para alguns (mas no todos) problemas com at vrios milhares de restries funcionais e um nmero praticamente ilimitado das variveis de deciso; portanto, a maioria dos usurios vai continuar a usar o mtodo simplex para tais problemas. Contudo, aumentando ainda mais o nmero de restries funcionais, fica cada vez mais provvel que uma metodologia de ponto interno ser mais eficiente; de modo que ela agora freqentemente mais usada.
23

Entretanto, continuam a avanar as pesquisas no sentido de aumentar essa capacidade. Ver, por exemplo. YILDIRIM, E. A.: TODD, M. J. Sensitivity Analysis in Linear Programming and Semidefinite Programming Using Interior-Point Methods. Mathematical Programming, Series A. v. 90, n. 2, p. 229-261. abr. 2001.

4.9

SISTEMTICA DO PONTO INTERNO NA RESOLUO DE PROBLEMAS...

153

medida que o tamanho cresce para dezenas de milhares de restries funcionais, a metodologia do ponto interno pode ser a nica capaz de solucionar o problema. Porm, certamente este no sempre o caso. Conforme mencionado na seo anterior, pacotes de software de ponta esto usando com sucesso o mtodo simplex e suas variantes para resolver problemas realmente pesados com centenas de milhares ou at mesmo milhes de restries funcionais e variveis de deciso. Essas generalizaes sobre como a metodologia do ponto interno e o mtodo simplex se comparam para problemas de vrias dimenses no tm muito sentido. Os pacotes de software e equipamentos especficos que esto sendo usados tm um impacto importantssimo. A comparao tambm afetada consideravelmente pelo tipo especfico de problema de programao linear que est sendo resolvido. medida que o tempo avana, deveremos aprender muito mais sobre como identificar tipos especficos de algoritimos que so mais adequados para determinado tipo de problema. Uma das conseqncias da apario da sistemtica do ponto interno tem sido um renovado esforo no sentido de se aumentar a eficincia das implementaes computadorizadas do mtodo simplex. Conforme indicamos, foi feito um progresso incrvel nos ltimos anos, e mais vir frente. Ao mesmo tempo, pesquisa e desenvolvimento em curso sobre a metodologia do ponto interno aumentar ainda mais o seu poder e, talvez, numa taxa de crescimento maior que aquela do mtodo simplex. Aperfeioar a tecnologia dos computadores, como processamento paralelo pesado (um nmero enorme de computadores trabalhando em paralelo em diferentes partes do mesmo problema) tambm aumentar substancialmente o tamanho do problema que ambos os tipos de algoritmos conseguem resolver. Entretanto, parece que, agora, a metodologia do ponto interno tem maior potencial para tirar proveito de processamento paralelo que o mtodo simplex. Como discutido anteriormente, uma desvantagem fundamental da metodologia do ponto interno est em sua capacidade reduzida de realizar anlise de ps-otimalidade. Para suplantar esse ponto fraco, os pesquisadores vm desenvolvendo procedimentos para alternar para o mtodo simplex aps um algoritmo de ponto interno ter sido finalizado. Lembfe-se de que as solues experimentais obtidas por um algoritmo de ponto interno vo se aproximando cada vez mais de uma soluo tima (a melhor soluo FPE), mas jamais chegam l. Portanto, um procedimento de mudana para o outro mtodo requer a identificao de uma soluo FPE (ou soluo BV aps o processo de aumento) que est muito perto da soluo experimental final. Por exemplo, observando-se a Figura 4.11, fcil perceber que a soluo experimental final na Tabela 4.18 est muito prxima da soluo FPE (2, 6). Infelizmente, em problemas com milhares de variveis de deciso (portanto, sem nenhum grfico disponvel), identificar uma soluo FPE (ou BV) prxima uma tarefa desafiante e que toma muito tempo. Porm, tem sido alcanado um bom progresso no desenvolvimento de procedimentos para fazer isso. Assim que essa soluo BV prxima tiver sido encontrada, o teste de otimalidade para o mtodo simplex ser aplicado para verificar se essa realmente a soluo BV tima. Se ela no for tima, so conduzidas algumas iteraes do mtodo simplex a se ir de uma soluo BV para uma soluo tima. Geralmente, so necessrias apenas algumas poucas iteraes (talvez uma), pois o algoritmo de ponto interno nos trouxe para bem prximo de uma soluo tima. Logo, essas iteraes devem ser feitas relativamente rpidas, mesmo em problemas que so to imensos para serem resolvidos da estaca zero. Aps uma soluo tima ter sido realmente alcanada, o mtodo simplex e suas variantes so aplicadas para ajudar a realizar na anlise de ps-otimalidade. Em razo das dificuldades envolvidas na aplicao de um procedimento de mudana (inclusive o tempo de processamento extra), alguns profissionais preferem usar apenas o mtodo simplex desde o princpio. Isso faz sentido quando voc encontra ocasionalmente problemas que so suficientemente grandes para um algoritmo de ponto interno ser modestamente mais rpido (antes de fazer a mudana) que o mtodo, simplex. Essa modesta acelerao no justificaria nem o tempo de processamento extra nem um procedimento de mudana para o outro mtodo alm do alto custo de aquisio (e de aprendizado) de um pacote de software baseado na metodologia do ponto interno. No entanto, para organizaes

154

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

que freqentemente tm de enfrentar problemas de programao linear extremamente grandes, adquirir um pacote de software desse tipo (inclusive um procedimento de mudana de mtodo) provavelmente vale a pena. Para problemas suficientemente pesados, a nica maneira disponvel de solucion-los pode ser com um pacote de software destes. Aplicaes de modelos de programao linear de grandes dimenses algumas vezes levam a uma economia de milhes de dlares. Uma simples aplicao destas pode pagar por vrias vezes um pacote de software de ponta baseado na metodologia do ponto interno, alm do procedimento de mudana para o mtodo simplex no final.

O mtodo simplex um algoritmo confivel e eficiente para solucionar problemas de programao linear. Tambm fornece a base para realizao de vrias partes da anlise de psotimalidade de maneira muito eficiente. Embora possua uma interpretao geomtrica til, o mtodo simplex um procedimento algbrico. A cada iterao, ele se desloca da soluo BV atual para uma soluo BV adjacente melhor escolhendo uma varivel bsica que entra e tambm uma que sai e, depois, aplica a eliminao gaussiana para resolver um sistema de equaes lineares. Quando a soluo atual no tem nenhuma soluo BV adjacente que seja melhor, a soluo atual tima e o algoritmo pra. Apresentamos a forma algbrica do mtodo simplex para transmitir sua lgica e, a seguir, aperfeioamos o mtodo para uma forma tabular mais conveniente. Para configurar a inicializao do mtodo simplex, algumas vezes se faz necessrio o emprego de variveis artificiais para se obter uma soluo BV inicial para um problema artificial. Em caso positivo, o mtodo do "grande nmero" (do Big M) ou ento o mtodo das duas fases usado para garantir que o mtodo simplex obtenha uma soluo tima para o problema real. Implementaes em computador do mtodo simplex e suas variantes se tomaram to poderosas que agora so freqentemente usadas para resolver problemas de programao linear com vrios milhares de restries funcionais e variveis de deciso e, ocasionalmente, problemas muito maiores. Algoritmos de pontos internos tambm fornecem uma ferramenta poderosa para solucionar problemas de grandes dimenses.

APNDICE 4.1

UMA INTRODUO PARA EMPREGO DO LINDO


O software Lindo projetado para ser fcil de ser usado e aprendido, especialmente para problemas pequenos do tipo que voc encontrar neste livro. Alm da programao linear, tambm pode ser usado para resolver problemas de programao inteira (Captulo 11) e problemas de programao quadrtica (Seo 12.7). Nosso foco neste apndice sobre o seu uso na programao linear. O Lindo permite que introduzamos um modelo de maneira algbrica direta. Por exemplo, eis uma maneira interessante de se inserir o modelo Lindo no exemplo da Wyndor Glass Co. apresentado na Seo 3.1.
Wyndor Glass Co. Problern. LINDO rnodel Xl = batches of product 1 per week X2 = batches of product 2 per week Profit, Subject to
! Production time Plantl) Xl <= 4 Plant2) 2 X2 <= 12 Plant3) 3 Xl + 2 X2 <= 18 END

in 1000 of dollars 3 Xl
+

MAX Profit)

5 X2

APNDICE 4.1

UMA INTRODUO PARA EMPREGO DO LINDO

155

Alm do modelo bsico, essa formulao inclui vrios comentrios esclarecedores, em que cada um deles indicado iniciando-se a linha com um ponto-de-exclamao. Portanto, as trs primeiras linhas do o ttulo e as definies das variveis de deciso. As variveis de deciso podem ser tanto em letras minsculas quanto maisculas, porm normalmente se usa maisculas de modo que as variveis no sero diminudas pelos "subscritos" que vm em seguida. Outra opo usar uma palavra sugestiva (ou uma abreviatura de uma palavra), como o nome do produto que est sendo fabricado, para representar a varivel de deciso por todo o modelo, desde que a palavra no exceda oito letras. A quinta linha da formulao Lindo mostra que o objetivo do modelo o de maximizar a funo objetivo, 3x 1 + 5x2 A palavra Lucro seguida por um parntesis esclarece que esta quantidade que est sendo maximizada lucro. O comentrio da quarta linha esclarece ainda mais que a funo objetivo expressa em unidades de milhares de dlares. O nmero 1.000 nesse comentrio no tem a vrgula usual (na notao norte-americana) na frente dos trs ltimos dgitos, pois o Lindo no aceita vrgulas. (Ele tambm no aceita parnteses em expresses algbricas.) O comentrio na stima linha indica que as restries seguintes so sobre os tempos de produo utilizados. As trs linhas seguintes comeam atribuindo um nome diferente (seguido por um parntese) para cada uma das restries funcionais. Essas restries so escritas da maneira usual, exceto pelos sinais de igualdade. Pelo fato de muitos teclados no inclurem sinais :Se::::, o Lindo interpreta< ou<= como :Se> ou>= como::::. (Em sistemas que incluem sinais de :S e ::::, o Lindo no vai reconhec-los.) O final das restries representado pela palavra END. No declarada nenhuma restrio de no-negatividade, porque o Lindo assume automaticamente que todas as variveis possuem esse tipo de restrio. Se, digamos, x 1 no tivesse uma restrio de no-negatividade, isso teria de ser indicado digitando-se FREE Xl na linha seguinte abaixo de END. Para solucionar esse mtodo a verso Windows do Lindo, selecione o comando Solve no menu Solve ou ento pressione o boto Solve na barra de ferramentas. Numa plataforma diferente do Windows, simplesmente digite GO seguido de um retum no prompt de doispontos. A Figura A4. l mostra o relatrio de soluo resultante gerado pelo Lindo. Tanto a linha superior como a inferior nessa figura indicam que foi encontrada uma soluo tima na iterao 2 (STEP 2) do mtodo simplex. A seguir, temos o valor da funo objetivo para essa soluo. Abaixo desta, temos os valores de x 1 e x 2 para a soluo tima. A coluna direita desses valores fornece os custos reduzidos. No discutimos os custos reduzidos neste captulo, pois as informaes que eles fornecem tambm podem ser extradas do intervalo possvel para permanecer tima para os coeficientes na funo objetivo e esses intervalos possveis ainda se encontram prontamente disponveis (como voc ver na figura seguinte). Quando a varivel uma varivel bsica na soluo tima (como acontece para ambas as variveis no problema da Wyndor), seu custo reduzido automati-

FIGURA A4.1 O relatrio de soluo gerado pelo Lindo para o problema Wyndor Glass Co.

LP OPTIMUM FOUND AT STEP 2 OBJECTIVE FUNCTION VALUE Profit) VARIABLE Xl X2 ROW Plantl) Plant2) Plant3) NO. 36.00000 VALUE 2.000000 6.000000 REDUCED COST .000000 .000000 DUAL PRICES .000000 1.500000 1.000000

SLACK OR SURPLUS 2.000000 .000000 .000000

ITERATIONS= 2

156

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE


Xl

CURRENT COEF 3.000000 5.000000

ALLOWABLE INCREASE 4.500000 INFINITY

ALLOWABLE DECREASE 3.000000 3.000000

X2

RIGHTHAND SIDE RANGES ROW


FIGURA A4.2 O relatrio de intervalo gerado pelo Lindo para o problema Wyndor Glass Co.

CURRENT RHS 4.000000 12.000000 18.000000

ALLOWABLE INCREASE INFINITY 6.000000 6.000000

ALLOWABLE DECREASE 2.000000 6.000000 6.000000

Plantl Plant2 Plant3

camente O. Quando a varivel uma varivel no-bsica, seu custo reduzido fornece alguma informao interessante. Essa varivel O porque seu coeficiente na funo objetivo to pequeno (ao maximizar a funo objetivo) ou muito grande (ao minimizar) para justificar empreender a atividade representada pela varivel. O custo reduzido indica quanto esse coeficiente pode ser aumentado (ao maximizar) ou diminudo (ao minimizar) antes que a soluo tima mudasse e essa varivel se tomasse uma varivel bsica. Lembre-se, entretanto, de que essa mesma informao se encontra disponvel no intervalo possvel para permanecer tima ao coeficiente dessa varivel na funo objetivo. O custo reduzido (para uma varivel no-bsica) apenas o acrscimo possvel (ao maximizar) do valor atual desse coeficiente para permanecer dentro de seu intervalo possvel para permanecer tima ou o decrscimo possvel (ao minimizar). Abaixo dos valores das variveis e custos reduzidos na Figura A4. l, temos informaes sobre as trs restries funcionais. A coluna Capacidade Ociosa ou Excedente d a diferena entre os dois lados de cada restrio. A coluna Preos Duais fornece, com outro nome, os preos-sombra discutidos na Seo 4.7 para essas restries. 24 (Esse nome alternativo provm do fato encontrado na Seo 6.1 de que esses preos-sombra so apenas os valores timos das variveis duais introduzidas no Captulo 6.) .Quando Lindo fornece esse tipo de relatrio de soluo, o Lindo tambm lhe pergunta se voc deseja realizar a anlise (de sensibilidade) do intervalo. Respondendo sim (pressionando a tecla Y) gera o relatrio de intervalos adicional mostrado na Figura A4.2. Exceto pelo fato de usar unidades de milhares de dlares em vez de dlares para os coeficientes na funo objetivo, esse relatrio idntico s trs ltimas colunas das tabelas do relatrio de sensibilidade gerado pelo Excel Solver, conforme indicado anteriormente na Figura 4.10. Portanto, conforme j discutido na Seo 4. 7, as duas primeiras colunas desse relatrio de intervalos indicam que o intervalo possvel para permanecer tima para cada coeficiente na funo objetivo (assumindo-se que no haja nenhuma outra mudana no modelo)
S Ct S

7,5

S Cz

24

Entretanto, esteja atento para o fato de que o Lindo usa uma conveno de sinais diversa da comum aqui adotada (consulte a nota de rodap 17 para a definio de preo-sombra na Seo 4.7), de forma que para problemas de minimizao, seus preos-sombra (preos duais) so os negativos dos nossos.

FERRAMENTAS DE APRENDIZADO PARA ESTE CAPTULO INCLUDAS NO CD-ROM

157

similannente, as trs ltimas linhas indicam que o intervalo possvel para permanecer vivel para cada lado direito (assumindo-se que no haja nenhuma outra mudana no modelo)
2 6 12
:'.S :'.S :'.S

b, b2 b3

:'.S :'.S

18 24

Para imprimir os resultados com a verso Windows do Lindo, voc precisa simplesmente usar o comando Print para enviar o contedo da janela ativa para a impressora. Caso esteja rodando o Lindo em outra plataforma diferente do Windows, voc poder usar o comando DIVERT (seguido pelo nome do arquivo) para enviar o contedo da tela para um arquivo que ainda poder ser impresso a partir do sistema operacional ou ento de pacote processador de texto. Esses so os fundamentos para iniciar a usar o Lindo. O tutorial Lindo que se encontra no CD-ROM tambm fornece detalhes adicionais. Os arquivos Lingo/Lindo do CD-ROM para diversos captulos mostram a formulao Lindo para inmeros exemplos. Alm disso, o Lindo inclui um menu de ajuda para lhe orientar. Esses recursos devem habilit-lo a aplicar o Lindo em qualquer problema de programao linear que encontrar no presente li:vIQ. (Discutiremos aplicaes para outros tipos de problema nos Captulos 11 e 12.) Para aplicaes mais avanadas, o Manual do Usurio do Lindo (Referncia Selecionada n 4 para o presente captulo) talvez seja necessrio.

REFERNCIAS SELECIONADAS
1. BIXBY, R. E. Solving Real-World Linear Programs: A Decade and More of Progress. Operations Research, v. 50, n. 1, p. 3-15, jan.-fev. 2002. 2. DANTZIG, G. B. THAPA M. N. Linear Programming 1: lntroduction. Nova York: Springer, 1997. 3. FOURER, R. Survey of Linear Programming Software. ORIMS Today, ago. 2001, p. 58-68. 4. LINDO User's Manual. Chicago, IL: LINDO Systems, Inc., e-mail: info@lindo.com, 1999. 5. MAROS, 1. Computational Techniques of the Simplex Method. Boston, MA: Kluwer Academic Publishers, 2003. 6. VANDERBEI, R. J. Linear Programming: Foundations and Extensions. 2. ed. Boston, MA: Kluwer Academic Publishers, 2001.

FERRAMENTAS DE APRENDIZADO PARA ESTE CAPTULO INCLUDAS NO CD-ROM


Exemplos Trabalhados:
Exemplos para o Captulo 4

Exemplos Demonstrativos no Tutor PO:


Interpretao de Variveis de Folga Mtodo Simplex - Forma Algbrica Mtodo Simplex - Forma Tabular

Procedimentos Interativos no Tutorial IOR:


Introduzindo ou Revisando um Modelo de Programao Linear Genrico Configurando para o Mtodo Simplex - Somente Interativo Resolvendo Problemas Interativamente pelo Mtodo Simplex Mtodo Grfico Interativo

Procedimentos Automticos no Tutorial IOR


Resolvendo Problemas Automaticamente pelo Mtodo Simplex Resolvendo Problemas Automaticamente pelo Algoritmo de Ponto Interno Mtodo Grfico e Anlise de Sensibilidade

158

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

Programa Adicional para Excel


Premium Solver for Education

Arquivos (Captulo 3} para Solucionar os Exemplos da Wyndor e da Radioterapia:


Arquivos em Excel Arquivo Lingo/Lindo Arquivo MPL/CPLEX.

Glossrio para o Captulo 4


Ver o Apndice 1 para obter documentao sobre o software.

PROBLEMAS
e
X2 2::

Os smbolos esquerda de alguns problemas (ou parte deles) tm o seguinte significado: D: O exemplo demonstrativo correspondente listado na pg. 157 pode ser til. I: Sugerimos que voc use o procedimento interativo correspondente listado na pg. 157 (a impresso registra seu trabalho). C: Use o computador com qualquer uma das opes de software disponveis (ou conforme orientao de seu professor) para resolver o problema automaticamente. (Ver a Seo 4.8 para obter uma listagem das opes disponveis neste livro ou no CD-ROM.) Um asterisco no nmero do problema indica que pelo menos h uma resposta parcial no final do livro.
4.1-1. Considere o seguinte problema:

0.

D.I (a) Use o mtodo grfico para solucionar este problema. Cir-

cule todos os pontos extremos do grfico. (b) Para cada soluo FPE, identifique o par de equaes de limite de restrio que ela satisfaz. (e) Para cada soluo FPE, identifique sua soluo FPE adjacente. (d) Calcule Z para cada soluo FPE. Use esta informao para identificar uma soluo tima. (e) Descreva graficamente o que o mtodo simplex faz, passo a passo, para solucionar um problema.
4.1-3. Um certo modelo de programao linear envolvendo duas atividades possui a regio de solues viveis indicada a seguir.

Maximizar sujeito a
X1

Z=

X1

+ 2x2,
8

:5
X2

2
3
N

:5 2 :5

X1

+ X2

e
X2 2::

"O

..,
o:!

0.

;::
;:i

"O

(a) Trace a regio de solues viveis e circule todas as solues FPE. (b) Para cada soluo FPE, identifique o par de equaes de limite de restrio que ela satisfaz. (e) Para a soluo FPE, use este par de equaes de limite derestrio para resolver o problema algebricamente em busca dos valores de x 1 e x 2 no ponto extremo. (d) Para cada soluo FPE, identifique suas solues FPE adjacentes. (e) Para cada par de solues FPE adjacentes, identifique o limite de restrio que elas compartilham dando sua equao.
4.1-2. Considere o problema a seguir:

< o:!
"O

4
Regi.o

'V

.~ z

de solues viveis

(8, 0)

Nvel da Atividade 1 O objetivo maximizar o lucro total das duas atividades. O lucro unitrio para a atividade 1 de US$ 1.000 e o lucro unitrio para a atividade 2 de US$ 2.000. (a) Calcule o lucro total para cada soluo FPE. Use esta informao para encontrar uma soluo tima. (b) Use os conceitos de soluo do mtodo simplex apresentados na Seo 4.1 para identificar a seqncia de solues FPE que

Maximizar sujeito a

2x1
X1

+ X2 + 2x2

:5 6 :5 6

PROBLEMAS
seriam examinadas pelo mtodo simplex para chegar a uma soluo tima. 4.1-4. * Considere o modelo de programao linear (dado no final do livro) que foi formulado para o Problema 3.2-3. (a) Use a anlise grfica para identificar todas as solues em pontos extremos para este modelo. Classifique cada um deles como vivel ou invivel. (b) Calcule o valor da funo objetivo para cada uma das solues FPE. Use esta informao para identificar uma soluo tima. (e) Use os conceitos de soluo do mtodo simplex apresentados na Seo 4.1 para identificar qual seqncia de solues FPE poderia ser examinada pelo mtodo simplex para chegar a uma soluo tima. (Dica: h duas seqncias alternativas a serem identificadas neste modelo em particular.) 4.1-5. Repita o Problema 4.1-4 para o problema a seguir. Maximizar sujeito a
X1 X1

159
4.1-9. As afirmaes a seguir fornecem parfrases imprecisas dos seis conceitos de soluo apresentado na Seo 4.1. Em cada caso, explique o que h de errado na afirmao. (a) A melhor soluo FPE sempre uma soluo tima. (b) Uma iterao do mtodo simplex verifica se a soluo FPE atual tima ou no e, caso no seja, desloque-se para uma nova soluo FPE. (e) Embora qualquer soluo FPE possa ser escolhida para ser a soluo FPE inicial, o mtodo simplex sempre escolhe a origem. (d) Quando o mtodo simplex estiver pronto para escolher uma nov:;u~oluo FPE a atingir partindo da soluo FPE atual, ele considera apenas solues FPE adjacentes, pois uma delas provavelmente uma soluo tima. (e) Para escolher a nova soluo FPE a atingir partindo da soluo FPE atual, o mtodo simplex identifica todas as solues FPE adjacentes e determina qual delas resulta na maior taxa de aumento no valor da funo objetivo. 4.2-1. Reconsidere o modelo no Problema 4.1-4. (a) Introduza variveis de folga de modo a escrever as restries funcionais na forma aumentada. (b) Para cada soluo FPE identifique a soluo BV correspondente calculando os valores das variveis de folga. Para cada soluo BV adjacente, use os valores das variveis para identificar as variveis no-bsicas e as variveis bsicas. (e) Para cada soluo BV demonstre (agregando a soluo) que, aps as variveis no-bsicas serem configuradas em zero, esta soluo BV tambm a soluo simultnea do sistema de equaes obtido no item (a). 4.2-2. Reconsidere o modelo do Problema 4.1-5. Siga as instrues do Problema 4.2-1 para os itens (a), (b) e (e). (d) Repita o item (b) para as solues inviveis em pontos extremos e as solues bsicas inviveis correspondentes. (e) Repita o item (e) para as solues bsicas inviveis.
D,I

+ 3x2 + X2

'.S '.S

8 4

e
X2

0.

4.1-6. Descreva graficamente o que o mtodo simplex faz passo a passo para solucionar o problema a seguir. Maximizar sujeito a -3x1 4x 1
1 s 20 2 4X1 X2 '.S lQ -xi+ 2x2 s 5

+2x

X2 '.S

4.3-1. Trabalhe com o mtodo simplex (em forma algbrica), passo a passo, para solucionar o modelo do Problema 4.1-5.

X2 2

0.

4.1-7. Descreva graficamente o que o mtodo simplex faz passo a ;:iasso para solucionar o problema a seguir. Minimizar ;;:ujeito a

2x 1 3x 1
X1

+ 3x2 + 4x2 + X2

4.3-2. Reconsidere o modelo do Problema 4.1-5. (a) Trabalhe com o mtodo simplex (em forma algbrica) manualmente para solucionar este modelo. D,I (b) Repita o item (a) com a correspondente rotina interativa no Tutor de PO. e (e) Verifique a soluo tima obtida usando um pacote de software baseado no mtodo simplex.
D,! 4.3-3.* Pelo mtodo simplex (na forma algbrica), passo a passo, solucione o problema a seguir.

2 2
2

42 60 18

Maximizar
X2 2

O.

sujeito a
3x 1

4.1-8. Classifique cada uma das afirmaes a seguir como verda.ieira ou falsa e depois justifique sua resposta. ai Para problemas de minimizao, se a funo objetivo avaliada em uma soluo FPE for maior que seu valor em cada uma das solues FPE adjacentes, ento esta soluo tima. 1b1 Somente solues FPE podem ser timas e, portanto, o nmero de solues timas no pode exceder o nmero de solues FPE. cl Se existem mltiplas solues timas, ento uma soluo tima pode ter uma soluo FPE adjacente que tambm tima (o mesmo valor de Z).

2x1
e
X1 2

+ x 2 + 3x3 s + 2x2 + 3x3 s


O,
X2

30 40

O,

D,!

4.3-4. Pelo mtodo simplex (na forma algbrica), passo a passo, solucione o problema a seguir. Maximizar

------------------

160

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...


(e) Quando o mtodo simplex tenta chegar soluo BV seguinte, so usadas operaes algbricas elementares para eliminar cada varivel no-bsica de todas exceto uma equao (a sua prpria equao) e para lhe atribuir um coeficiente + 1 nesta mesma equao.
D,I

sujeito a
3x1
X1

+ x 2 + 5x3 + 4X2 + X3 2x 1 + 2x3

:S :S :S

10 8 7

e
X2 2:

O,

4.4-1. Repita o Problema 4.3-1 usando a forma tabular do mtodo simplex.

4.3-5. Considere o seguinte problema.


Maximizar

D,I,C 4.4-2. Repita o Problema 4.3-2 usando a forma tabulf!r do mtodo simplex.

4.4-3. Considere o seguinte problema:


sujeito a
2x1

Maximizar
:S :S

3x1

+ X2 + X3 + X2 + 2x3

20

30

sujeito a
X1

e e fornecida a informao a seguir: as variveis no-zero na soluo tima so x 1 e x 2 .


(a) Descreva como voc poderia usar esta informao para adap-

4x1

+ X2 + X2

:S :S

40 100

X2 2:

0.

(a) Resolva este problema graficamente de uma maneira livre.

tar o mtodo simplex para a resoluo deste problema no menor nmero de iteraes possvel (quando se parte da soluo BV inicial usual). Na verdade, no execute nenhuma iterao. (b) Use o procedimento desenvolvido no item (a) para solucionar este problema manualmente. (No faa uso do Courseware de PO.)

4.3-6. Considere o seguinte problema:


Maximizar sujeito a

+ 3x2 + 2x3 + X2 + X3 3x 1 + 5x2 + 3x 3


X1 X1

:S :S :S

30 24 60

Identifique tambm todas as solues FPE. (b) Use agora o Tutorial IOR para resolver o problema graficamente. D (e) Use clculos manuais para resolver este problema pelo mtodo simplex na forma algbrica. 0,1 (d) Agora use o Tutorial IOR para resolver o problema interativamente pelo mtodo simplex na forma algbrica. D (e) Use clculos manuais para resolver este problema pelo mtodo simplex na forma tabular. D,I (f) Agora use o Tutorial IOR para resolver este problema interativamente pelo mtodo simplex na forma tabular. e (g) Use um pacote de software baseado no mtodo simplex para solucionar o problema.
D,I

4.4-4. Repita o Problema 4.4-3 para o seguinte problema:


Maximizar

e
X2 2:

O,

sujeito a
X1 X1

Voc recebe a informao de que x 1 > O, x 2 = O, e x 3 > O na soluo tima. (a) Descreva como voc poderia usar esta informao para adaptar o mtodo simplex para a resoluo deste problema no menor nmero de iteraes possvel (quando se parte da soluo BV inicial usual). Na verdade, no execute nenhuma iterao. (b) Use o procedimento desenvolvido no item (a) para solucionar este problema manualmente. (No faa uso do Courseware de PO.)

+ 2X2 + X2

:S :S

30
20

4.4-5. Considere o seguinte problema:


Maximizar sujeito a
3x1
2X1 X1

4.3-7. Classifique cada uma das seguintes afirmaes como verdadeira ou falsa e, a seguir, justifique sua resposta referindo-se a afirmaes especficas (com citao de pgina) no captulo. (a) A regra do mtodo simplex para escolha da varivel bsica que entra usada porque ela sempre nos leva melhor soluo BV adjacente (maior Z). (b) A regra da razo mnima do mtodo simplex para escolha da varivel bsica que sai usada porque fazendo-se uma outra escolha com uma razo maior nos levaria a uma soluo bsica que no vivel.

+ 4x 2 + 2x3 + X2 + 2x3 + 3x2 + 2x3

:S :S :S

60 40 80

Use o mtodo simplex, passo a passo, na forma algbrica. (b) Use o mtodo simplex, passo a passo, na forma tabular. e (e) Use um pacote de software baseado no mtodo simplex para solucionar o problema.
D,I (a) D,I

161
-1.4-6. Considere o seguinte problema:
Maximizar sujeito a
2x1 -3x1

X2 S

30

e x2
ilimitada.
2

O.

+ X2 + X3 S 4 X1 + 2X2 + X3 :$ 4 X 1 + X2 + 2x3 S 4 X1 + Xz + X3 S 3
O,

(a) Demonstre graficamente que a regio de solues viveis


(b) Se o objetivo for o de maximizar Z = -x 1 + x2' o modelo tem uma soluo tima? Em caso positivo, encontre-a. Em caso negativo, explique porque no. (e) Repita o item (b) quando o objetivo for o de maximizar Z = X1 - Xz. (d) Para as funes objetivo onde este modelo no tem nenhuma soluo tima, isto significa que no existem boas solues de acordo com tal modelo? Explique. O que provavelmente deu errado ao formular o modelo? D,I (e) Selecione uma funo objetivo para o qual este modelo no tem nenhuma soluo tima. A seguir, usando o mtodo simplex, passo a passo, demonstre que Z ilimitado. e (f) Para a funo objetivo selecionada no item (e), use um pacote de software baseado no mtodo simplex para determinar que Z ilimitado.

X2 2

D.!

D.!

(a) Use o mtodo simplex, passo a passo, na forma algbrica. (b) Use o mtodo simplex, passo a passo, na forma tabular. e (e) Use um pacote de software baseado no mtodo simplex para solucionar o problema.
D.I 4.4-7. Use o mtodo simplex, passo a passo, (na forma tabular) para resolver o seguinte problema:

Maximizar sujeito a
3x1
X1 X1

+ X2 + X3 - X2 + 2x3 + Xz - X3

6
1

S
S

4.5-3. Siga as instrues do Problema 4.5-2 quando as restries so as seguintes:


2x, -

x1
e

X2 S 20 2x2 s 20

x2

O,
D,!

X1

O,

X2 2 0.

D.I 4.4-8. Use o mtodo simplex, passo a passo, para resolver o .-eguinte problema:

4.5-4. Considere o problema a seguir:


Maximizar

Maximizar ;ujeito a
X1

sujeito a
X3 S 20 2x3 s 60 x 3 s 50 x 1 - 2x2 + 4x3 -4x1 + 6x2 + 5x 3 2x1 - 3x2 + 3x3

+ 3x4
-

+ 2x2

s 20 4x4 s 40

-2x 1 2x 1

+ 4x2 + + 3x2 +

+ 8x4 s 50

e
x 2 2 O,

X2 2 O,

-1.5-1. Considere as afirmaes a seguir sobre a programao linear =o mtodo simplex. Classifique cada uma delas como verdadeira ou falsa e, a seguir, justifique sua resposta. 1a1 Em uma determinada iterao do mtodo simplex, se houver um empate para qual varivel dever ser a varivel bsica que sai, ento a soluo BV seguinte deve ter pelo menos uma varivel bsica igual a zero. b) Se no houver nenhuma varivel bsica que sai na mesma iterao, ento o problema no tem nenhuma soluo vivel. e 1 Se pelo menos uma das variveis bsicas tiver um coeficiente igual a zero na linha O da tabela final, ento o problema tem solues timas mltiplas. 'd 1 Se o problema tiver solues timas mltiplas, ento o problema tem que ter uma regio de solues viveis limitada.
-1.5-2. Suponha as restries a seguir que foram fornecidas para um ~odeio de programao linear com variveis de deciso x 1 e x 2

Use o mtodo simplex, passo a passo, para demonstrar que Z ilimitado.

4.5-5. Uma propriedade bsica de qualquer problema de programao linear com uma regio de solues viveis limitada que toda soluo vivel pode ser expressa como uma combinao convexa das solues FPE (talvez em mais de uma maneira). Similarmente, para a forma aumentada do problema, toda soluo vivel pode ser expressa como uma combinao convexa das solues BV. (a) Demonstre que qualquer combinao convexa de qualquer conjunto de solues viveis tem que ser uma soluo vivel (de modo que qualquer combinao convexa de solues FPE tem que ser vivel). (b) Use o resultado citado na parte (a) para mostrar que qualquer combinao convexa de solues BV deve ser uma soluo vivel. 4.5-6. Usando os fatos dados no Problema 4.5-5, demonstre que as afirmaes a seguir tm que ser verdadeiras para qualquer problema de programao linear que possui uma regio de solues viveis limitada e solues timas mltiplas:

-x 1

+ 3x 2 s 30

162

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE
e para}= l, 2, 3, 4.
(a) Usando o mtodo do "grande nmero", construa a primeira

(a) Toda combinao convexa das solues BV timas tm que ser

timas. (b) Nenhuma outra soluo vivel pode ser tima.

4.5-7. Considere um problema de programao linear de duas variveis cujas solues FPE so (O, O), (6, O), (6, 3), (3, 3), e (0, 2). (Ver o Problema 3.2-2 para um grfico da regio de solues viveis.) (a) Use o grfico da regio de solues viveis para identificar todas as restries do modelo. (b) Para cada par de solues FPE adjacentes, d um exemplo da funo objetivo tal que todos os pontos sobre o segmento de reta entre estes dois pontos extremos sejam solues timas mltiplas. (e) Suponha agora que a funo objetivo seja Z = -x 1 + 2x2 Use o mtodo grfico para encontrar todas as solues timas. D,I (d) Para a funo objetivo no item (e), use o mtodo simplex passo a passo para encontrar todas as solues BV timas. A seguir, escreva uma expresso algbrica que identifique todas as solues timas.
D.I 4.5-8. Considere o seguinte problema.

Maximizar sujeito a
X1 X3

+ X2 + X4

:S :S

3
2

tabela simplex completa para o mtodo simplex e identifique a soluo BV (artificial) inicial correspondente, Identifique tambm a varivel bsica que entra inicial e varivel bsica que sai. (b) Use o mtodo simplex, passo a passo, para resolver o problema. (e) Usando o mtodo das duas fases, construa a primeira tabela simplex completa para a fase 1 e identifique a soluo BV inicial correspondente. Identifique tambm a varivel bsica que entra inicial e a varivel bsica que sai. I (d) Avance, passo a passo, pela fase 2 para solucionar o problema. (e) Construa a primeira tabela simplex completa para a fase 2. 1 (f) Avance, passo a passo, pela fase 2 para solucionar o problema. (g) Compare a seqncia de solues BV obtidas no item (b) com aquelas dos itens (d) e (j). Qual destas solues so viveis somente para o problema artificial obtido pela introduo de variveis artificiais e que so, na verdade, viveis para o problema real? e (h) Use um pacote de software baseado no mtodo simplex para resolver o problema.
4.6-3.* Considere o problema a seguir.

e para}= l, 2, 3, 4. Use o mtodo simplex, passo a passo, para encontrar todas as solues BV timas.
4.6-1.* Considere o problema a seguir.
e

Minimizar sujeito a x1 3x 1

+ 4x2 + 2x3 2:: 8 + 2x2 2:: 6

Maximizar sujeito a
X1 X1

(a) Reformule este problema para que se adapte nossa forma-

+ 2x2
+
X2

4 =3
:S

D,l (a) Resolva este problema graficamente. (b) Usando o mtodo do "grande nmero" (do Big M), construa a primeira tabela simplex completa para o mtodo simplex e identifique a soluo BV (artificial) inicial correspondente. Identifique tambm a varivel bsica que entra e a varivel bsica que sai. I (e) Continue a partir do item (b) usando o mtodo simplex, passo a passo, para resolver o problema.

padro para um modelo de programao linear apresentado na Seo 3.2. (b) Usando o mtodo do "grande nmero'', avance pelo mtodo simplex, passo a passo, para solucionar o problema. (e) Usando o mtodo das duas fases, avance pelo mtodo simplex, passo a passo para resolver o problema. (d) Compare a seqncia das solues BV adjacentes obtidas nos itens (b) e (e). Qual destas solues so viveis somente para o problema artificial obtido introduzindo-se variveis artificiais que so, na verdade, viveis para o problema real? e (e) Use um pacote de software baseado no mtodo simplex para resolver o problema.

4.6-2. Considere o problema a seguir.

4.6-4. Para o mtodo do "grande nmero", explique por que o mtodo simplex jamais escolheria uma varivel artificial para ser uma varivel bsica que entra uma vez que todas as variveis artificiais so no-bsicas. 4.6-5. Considere o problema a seguir.
Maximizar

Maximizar sujeito a
2x1

8x1

+ 3x2 + 4x3 + 2x4 = + X2 + x 3 + Sx4 =

300 300

sujeito a
2x1

+ X2

:S

PROBLEMAS
4.6-8. Considere o problema a seguir.
e Minimizar sujeito a
(a) Demonstre graficamente que este problema no possui nenhu-

163

ma soluo vivel. e (b) Use um pacote de software baseado no mtodo simplex para determinar que o problema no tem nenhuma soluo vivel. I (e) Usando o mtodo do grande nmero, avance pelo mtodo simplex, passo a passo, para demonstrar que o problema no tem nenhuma soluo vivel. I (d) Repita o item (e) ao usar a fase Ido mtodo das duas fases.

5x1 3x1

+ 2x2 + 7x 3 = 420 + 2.x2 + 5x 3 2: 280

(a) Usando o mtodo das duas fases, avance passo a passo pela fase 1. e (b) Use um pacote de software baseado no mtodo simplex para
I

4.6-6. Siga as instrues do Problema 4.6-5 para o seguinte problema.


Minimizar sujeito a
Z

= 5.000x 1 + 7.000x2'

formular e resolver o problema da fase 1. (e) Avance pela fase 2, passo a passo, para resolver o problema original. e (d) Use um cdigo de computador baseado no mtodo simplex para solucionar o problema original.

4.6-9. * Considere o problema a seguir.

-2.x, x1

+
-

X2 2:

Minimizar sujeito a
2x1

2x2

2:

3x 1

+ X2 + 3x3 = + 3x2 + 5x3 2:

60 120

4.6- 7. Considere o problema a seguir.


Maximizar sujeito a
X1 2x1

2x2

+ X3

2:

+ 4X2 + X3

20 50

1a)

Usando o mtodo do "grande nmero", construa a primeira tabela simplex completa para o mtodo simplex e identifique a soluo BV (artificial) inicial correspondente, Identifique tambm a varivel bsica que entra inicial e varivel bsica que sai. I (b) Use o mtodo simplex, passo a passo, para resolver o problema. (e) Usando o mtodo das duas fases, construa a primeira tabela simplex completa para a fase I e identifique a soluo BV inicial correspondente. Identifique tambm a varivel bsica que entra inicial e a varivel bsica que sai. (d) Avance, passo a passo, pela fase 2 para solucionar o problema. 1e) Construa a primeira tabela simplex completa para a fase 2. : (f) Avance, passo a passo, pela fase 2 para solucionar o problema. 1g) Compare a seqncia de solues BV obtidas no item (b) com aquelas dos itens (d) e (j). Qual destas solues so viveis somente para o problema artificial obtido pela introduo de variveis artificiais e que so, na verdade, viveis para o problema real? - (b) Use um pacote de software baseado no mtodo simplex para resolver o problema.

Usando o mtodo do "grande nmero", avance pelo mtodo simplex, passo a passo, para solucionar o problema. 1 (b) Usando o mtodo das duas fases, avance pelo mtodo simplex, passo a passo para resolver o problema. (e) Compare a seqncia das solues BV adjacentes obtidas nos itens (a) e (b). Qual destas solues so viveis somente para o problema artificial obtido introduzindo-se variveis artificiais que so, na verdade, viveis para o problema real? e (d) Use um pacote de software baseado no mtodo simplex para resolver o problema.
1 (a)

4.6-10. Siga as instrues do Problema 4.6-9 para o seguinte problema.


Minimizar sujeito a

-xi+ x 2 2x 1 - x 2
e

= 10

+ x 3 2:

10

4.6-11. Classifique cada uma das afirmaes a seguir como verdadeira ou falsa e, a seguir, justifique sua resposta. (a) Quando um modelo de programao linear possui uma restrio de igualdade, uma varivel artificial introduzida nesta restrio de modo a iniciar o mtodo simplex com uma soluo bsica inicial bvia que seja vivel para o modelo original. (b) Quando criado um problema artificial atravs da introduo de variveis artificiais e usando-se o mtodo do "grande nmero", se todas as variveis artificiais numa soluo tima para

164

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ... --~


(b) Usando o mtodo do "grande nmero", aplique o algoritmo

o problema artificial forem iguais a zero, ento o problema real no possui nenhuma soluo vivel. (e) O mtodo das duas fases usado comumente na prtica, pois ele normalmente requer um nmero menor de iteraes para chegar a uma soluo tima quando comparado ao mtodo do "grande nmero".

modificado desenvolvido no item (a) para solucionar o problema a seguir diretamente mo. No faa uso do Courseware de PO. Minimizar sujeito a
3x1 3x2 + 4x3 :::: 70 + 5x2 + 2x3 :::: 70

4.6-12. Considere o problema a seguir.


Maximizar sujeito a
4X1 -xi

e
::S ::S

+ X2 + X3 + X2 + 2x3

5
10

x1

::::

O,

e (nenhuma restrio de no-negatividade para Xi).


(a) Reformule este problema de modo que todas as variveis pos-

4.6-16. Considere o problema a seguir.


Maximizar sujeito a
X1 X1

suam restries de no-negatividade. D,I (b) Avance, passo a passo, pelo mtodo simplex para solucionar o problema. e (e) Use um pacote de software baseado no mtodo simplex para resolver o problema.

X2

+ 3x3 + 2X4 ::S 4 X3 + X4 2': -1


::S
X3

2x1
X1

+ X2 + 2x2 +

2
2

+ 2X4

e (nenhuma restrio de no-negatividade para x 1). (a) Reformule este problema para que se adapte nossa formapadro para um modelo de programao linear apresentado na Seo 3.2. (b) Usando o mtodo do "grande nmero", construa a primeira tabela simplex completa para o mtodo simplex e identifique a soluo BV (artificial) inicial correspondente. Identifique tambm a varivel bsica que entra e a varivel bsica que sai. (e) Usando o mtodo das duas fases, construa a linha (O) da primeira tabela simplex para a fase 1. e (d) Use um pacote de software baseado no mtodo simplex para resolver o problema.
1

4.6-13.* Considere o problema a seguir.


Maximizar sujeito a
-3xi Xi

Z= -

Xi

+ 4xi.

+ X2 ::S 6 + 2X2 ::S 4


X2 2':

-3 (nenhuma restrio de limite inferior para x 1 ). D,l (a) Solucione o problema graficamente. (b) Reformule este problema de modo que ele tenha apenas duas restries funcionais e todas as variveis tenham restries de no-negatividade. D.I (e) Avance, passo a passo, pelo mtodo simplex para resolver o problema.
4.6-14. Considere o problema a seguir.
Maximizar sujeito a
3x2 X1 -3xi

4.6-17. Considere o problema a seguir.


Maximizar Z=
4x 1

+ 5x2 + 3x3,

sujeito a
Xi

X2

+ 2x3

2':

+
+

X3 ::S 4X3 ::S 2x3 ::S

X2 x2

120 80 100

15xi e x1

+ 6x2 - 5x3 x 1 + 3x2 + 5x 3


::::

20 50 ::S 30
::S

(nenhuma restrio de no-negatividade). (a) Reformule este problema de modo que todas as variveis tenham restries de no-negatividade. D,l (b) Avance, passo a passo, pelo mtodo simplex para resolver o problema. e (e) Use um pacote de software baseado no mtodo simplex para resolver o problema.

O,

Avance, passo a passo, pelo mtodo simplex para demonstrar que este problema no possui nenhuma soluo vivel.

4.6-15. Este captulo descreveu o mtodo simplex conforme aplicado a problemas de programao linear onde a funo objetivo deve ser maximizada. A Seo 4.6 descreveu ento como converter um problema de minimizao num problema equivalente de maximizao para aplicao do mtodo simplex dado no captulo de modo a aplicar o algoritmo diretamente. (a) Descreva quais seriam essas modificaes.

4.7-1. Refira-se Figura 4.10 e o intervalo possvel resultante para os respectivos lados direitos do problema da Wyndor Glass Co. dado na Seo 3 .1. Use a anlise grfica para demonstrar que cada intervalo possvel dado correto. 4.7-2. Reconsidere o modelo do Problema 4.1-5. Interprete o lado direito das respectivas restries funcionais como a quantidade disponvel dos respectivos recursos. 1 (a) Use a anlise grfica como na Figura 4.8 para determinar os preos-sombra para os respectivos recursos.

(b) Use a anlise grfica para realizar a anlise de sensibilidade

no modelo. Em particular, verifique cada parmetro do modelo para determinar se ele ou no um parmetro sensvel (um parmetro cujo valor no pode ser alterado sem alterar a soluo tima) examinando o grfico que identifica a soluo tima. I (e) Use a anlise grfica como na Figura 4.9 para determinar o intervalo possvel para cada valor cj (coeficiente de xj na funo objetivo) sobre o qual a soluo tima atual permanecer tima. (d) Mudando apenas um valor b; (o lado direito da restrio funcional i) ir deslocar o limite de restrio correspondente. Se a soluo FPE tima atual cai sobre este limite de restrio, esta soluo FPE tambm se deslocar. Use a anlise grfica para determinar o intervalo possvel para cada valor b; sobre o qual esta soluo FPE permanecer vivel. e (e) Verifique suas respostas nos itens (a), (e) e (d) usando um pacote de software baseado no mtodo simplex para solucionar o problema e, ento, gerar as informaes de anlise de sensibilidade.

timo para cada coeficiente da funo objetivo e o intervalo possvel para cada lado direito. 4.7-5.* Considere o problema a seguir. Maximizar sujeito a
-xi
X1

2x1 -

+ X2 + X3 Xz + X3 + Xz + 3x3

S
S

4 2
12

(fonte 1) (fonte 2) (fonte 3)

4. 7-3. O seguinte problema de programao linear lhe apresentado.


Maximizar sujeito a
21:1
X1

(a) Use o mtodo simplex, passo a passo, para resolver o problema. (b) Identifique os preos-sombra para os trs recursos e descreva sua importncia. e (e) Use um pacote de software baseado no mtodo simplex para resolver o problema e depois gerar informaes de sensibilidade. Use estas informaes para identificar o preo-sombra para cada recurso, o intervalo possvel para permanecer timo para cada coeficiente da funo objetivo e o intervalo possvel para cada lado direito.
D,!

s 16

+ 3x2 s
Xz S

17 5

(fonte 1) (fonte 2) (fonte 3)

4.7-6. Considere o problema a seguir. Maximizar sujeito a

X1

2:

O,

(a) Resolva este problema graficamente. b 1 Use a anlise grfica para encontrar os preos-sombra para os recursos. e ' Determine quantas unidades adicionais do recurso 1 seriam necessrias para aumentar de 15 unidades o valor timo de Z.
D.!

3x 1 3x 1 e

+ 2x2 - 3x3 + x4 + 3x2 + x 3 + 3x4

s 24 s 36

(fonte 1) (fonte 2)

X2 2:

O,

X4

2:

O.

4.7-4. Considere o problema a seguir.


~aximizar

>jeito a
2r1 4x 1 - 3x1

+
-

Xz -

X3

3x2
2x2

S 4 s 2
S

+ X3

(fonte 1) (fonte 2) (fonte 3)

X3 2:

O.

(a) Use, passo a passo, o mtodo simplex para solucionar o problema. (b) Identifique os preos-sombra para os dois recursos e descreva sua importncia. e (e) Use um pacote de software baseado no mtodo simplex para resolver o problema e depois gerar informaes de sensibilidade. Use estas informaes para identificar o preo-sombra para cada recurso, o intervalo possvel para permanecer timo para cada coeficiente da funo objetivo e o intervalo possvel para cada lado direito.
D,!

::u

(a) Use, passo a passo, o mtodo simplex para solucionar o

problema. b 1 Identifique os preos-sombra para os trs recursos e descreva sua importncia. ~ (C) Use um pacote de software baseado no mtodo simplex para resolver o problema e depois gerar informaes de sensibilidade. Use estas informaes para identificar o preo-sombra para cada recurso, o intervalo possvel para permanecer

4.9.1. Use o algoritmo do ponto interno no Tutorial IOR para solucionar o modelo no Problema 4.1-4. Selecione a = 0,5 do menu Option, use (x 1, x2 ) = (O, 1; 0,4) como soluo experimental inicial e execute 15 iteraes. Desenhe um grfico da regio de solues viveis e, a seguir, trace a trajetria das solues experimentais atravs desta regio de solues viveis.
4.9-2. Repita o Problema 4.9-1 para o modelo do Problema 4.1-5.

166

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE PROGRAMAO LINEAR ...

CASOS
CASO 4.1 Tecidos e Moda Outono-Inverno
Do dcimo andar de seu escritrio, Katherine Rally observa um enxame de nova-iorquinos abrindo caminho pelas ruas infestadas por txis amarelos e as caladas abarrotadas de carrinhos de cachorro-quente. Neste dia de calor sufocante ela presta particular ateno na moda usada pelas mulheres e fica imaginando o que elas escolheriam para usar no prximo outono. Seus pensamentos no so simples divagaes; eles so fundamentais para seu trabalho j que ela proprietria e gerente da TrendLines, uma empresa de alta moda feminina. Hoje um dia especialmente importante, pois ela tem de se reunir com Ted Lawson, o gerente de produo, para decidir sobre o plano de produo do prximo ms para a linha outono-inverno. Especificamente, ela tem de determinar a quantidade de cada item de vesturio que deve produzir dados a capacidade de produo da fbrica, os recursos limitados e as previses de demanda. Um planejamento acurado para a produo do prximo ms crtico para as vendas de outono j que os itens produzidos no ms seguinte aparecero nas lojas em abril e as mulheres normalmente renovam seu vestirio para a moda de outono logo no comeo de abril. Katherine volta-se para sua grande mesa de vidro e olha aquela imensido de papis que a cobrem. Seus olhos vagam pelas amostras de tecidos desenhadas cerca de seis meses atrs, os requisitos de listas de material para cada padro e as listas de previses de demanda para cada padro determinadas por pesquisas de mercado realizadas em feiras de moda. Ela se lembra dos agitados dias e por vezes tambm de pesadelo quando desenhava a linha outono-inverno e de sua apresentao em feiras de moda em Nova York, Milo e Paris. Finalmente, ela pagou sua equipe de seis designers um total de US$ 860.000 pelo trabalho deles na linha outono-inverno. Com o custo de contratar modelos de passarela, cabeleireiros e maquiadores, costura e ajustes das roupas, de montagem de cenrio, coreografia e de ensaios para a apresentao, alm de aluguel de salo de convenes, cada uma das trs feiras lhe custou um adicional de US$ 2.700.000. Katherine estuda o padro dos tecidos e os requisitos de material. Sua linha outono-inverno destinada tanto para roupas sociais como informais. Ela determinou o preo para cada pea levando em conta a qualidade e o custo do material, o custo de mo-deobra e de maquinrio, a demanda por item e o prestgio da marca TrendLines. A linha outono-inverno social da TrendLines inclui:

Item de Vesturio
Calas de l de linhas retas Suter de cashmere Camisa de seda Camisola de seda Saia de linhas retas
Blazer de l

Requisitos de Material
3 metros de l 2 metros de acetato para forro 1,5 metro de cashmere 1,5 metro de seda 0,5 metro de seda 2 metros de raiom 1,5 metro de acetato para forro 2,5 metros de l 1,5 metro de acetato para forro

Preo
US$ 300 US$ US$ US$ US$ 450 180 120 270

Custo de mo-de-obra e de maquinrio


US$ 160 US$ US$ US$ US$ 150 100 60 120

US$ 320

US$ 140

A linha outono-inverno informal da TrendLines inclui:

Item de Vesturio
Calas de veludo Suter de algodo Minissaia de algodo Camisa de veludo Blusa com botes

Requisitos de Material
3 metros de veludo 2 metros de acetato para forro 1,5 metro de algodo 0,5 metro de algodo 1,5 metro de veludo 1,5 metro de raiom

Preo
US$ 350 US$ US$ US$ US$ 130 75 200 120

Custo de mo-de-obra e de maquinrio


US$ 175 US$ US$ US$ US$ 60 40 160 90

CASOS

167

Katherine sabe que, para o prximo ms, ela encomendou 45.000 m de l, 28.000 m de acetato, 9.000 m de cashmere, 18.000 m de seda, 30.000 m de raiom, 20.000 m de veludo e 30.000 m de algodo para a produo. Os preos dos materiais so os seguintes:
Material L Acetato Cashmere Seda Raiom Veludo Algodo Preo por Metro

de 7.000 unidades e a demanda por blazers de l de 5.000 unidades. Katherine quer atender pelo menos 60% da demanda para esses dois itens de modo a manter sua base de clientes fiis e no perder negcios no futuro. Embora a demanda por saias de linhas retas no possa ser estimada, ela acredita que poderia fabricar pelo menos 2.800 unidades. (a) Ted est tentando convencer Katherine a no produzir nenhuma saia de veludo, j que a demanda para essa moda passageira contabiliza sozinha US$ 500.000 dos custos fixos de design e de outros custos. A contribuio lquida (preo do item de vestirio - custo de material - custo de mo-de-obra) pela venda dessa moda passageira dever cobrir esses custos fixos. Cada saia de veludo gera uma contribuio lquida de US$ 22. Ele argumenta que dada a contribuio lquida, mesmo satisfazendo a demanda mxima no vai gerar lucro. O que voc acha a respeito do argumento do Ted? (b) Formule e solucione um problema de programao linear para maximizar o lucro, dadas as restries de produo, recursos e demanda. Antes de tomar suas decises finais, Katherine pretende explorar as seguintes questes de forma independente, exceto onde indicado de forma diversa. (c) O atacadista informa a ela que o veludo no pode ser devolvido, pois as previses de demanda indicam que a demanda por veludo vai diminuir no futuro. Katherine no pode, ento, ser reembolsada por devoluo de veludo. Como esse fato muda o plano de produo? (d) Qual a explicao econmica intuitiva para a diferena entre as solues encontradas nos itens (b) e (e)? (e) O pessoal da costura encontra dificuldades em costurar as mangas e forro nos blazers de l, uma vez que o estilo do blazer tem uma forma estranha e a l pesada difcil de ser cortada e costurada. O acrscimo de tempo de mo-de-obra para costurar um blazer de l aumenta em US$ 80 por blazer os custos de mo-de-obra e de maquinrio. Dado o novo custo, quantas peas de cada item a TrendLines deve produzir para maximizar o lucro? (f) O atacadista txtil informa a Katherine que j que outro cliente cancelou seu pedido, ela pode obter 10.000 m extras de acetato. Quantas peas de cada item a TrendLines deve produzir agora para maximizar o lucro? (g) A TrendLines supe que seja capaz de vender todas as peas que no foram vendidas em abril e maio numa grande liquidao com desconto de 60% no preo original. Portanto, ela pode vender todas as peas numa quantidade ilimitada durante a liquidao de junho. Os limites superiores de demanda anteriormente mencionados se referem somente s vendas durante os meses de abril e maio. Qual deve ser o novo plano de produo para maximizar o lucro?

US$ US$ US$ US$ US$ US$ US$

9,00 1,50 60,00 13,00 2,25 12,00 2,50

Qualquer material que no tenha sido usado na produo pode ser enviado de volta ao atacadista txtil para reembolso total, embora retalhos no possam ser devolvidos para o atacadista. Katherine sabe que, tanto a produo da camisa de seda quanto o suter de algodo deixam sobras de material. Especificamente, para a produo de uma camisa de seda ou um suter de algodo, so necessrios, respectivamente, 2 m de seda e de algodo. Destes, 1,5 m usado para a camisa de seda ou suter de algodo e 0,5 m sobra como retalho. Ela no quer desperdiar o material, portanto planeja usar os retalhos retangulares de seda ou algodo para produzir, respectivamente, uma camisoia de seda ou uma minissaia de algodo. Assim, toda vez que uma camisa de seda produzida, tambm feita uma camisola de seda. De forma similar, toda vez que for produzido um suter de algodo, tambm ser fabricada uma minissaia de algodo. Observe que possvel produzir-se uma camisola de seda sem fazer uma blusa de seda e uma minissaia de algodo sem fabricar um suter de algodo. As previses de demanda indicam que alguns itens tm demanda limitada. Especificamente pelo fato de as calas e saias de veludo serem modas passageiras, a TrendLines previu que pode \ender somente 5.500 unidades de calas de veludo e 6.000 saias de veludo. A empresa no quer produzir mais que a demanda pre" is ta, pois as calas e saias saem de moda. A TrendLines pode produzir menos que a demanda prevista, porm, desde que a empre;.a no tenha de atender demanda. O suter de cashmere tambm ci!m demanda limitada, porque bem caro e a TrendLines sabe que ;:iode vender pelo menos 4.000 suteres de cashmere. As camisas ;: ..:amisolas de seda tm demanda limitada, pois muitas mulheres .:...:ham que a seda muito difcil de ser cuidada e a TrendLines ?fOjeta que pode vender pelo menos 12.000 camisas de seda e :5.000 camisolas de seda. As previses de demanda tambm indicam que as calas de :l. saias de linhas retas e os blazers de l tm grande demanda, .rma vez que so itens bsicos necessrios no guarda-roupa de qual.:;uer profissional. Especificamente, a demanda por calas de l

168

CAPTULO 4

SOLUCIONANDO PROBLEMAS DE

LINEAR ...

APRESENTAO PRVIA DOS CASOS ADICIONAIS NO CD-ROM


Caso 4.2 Novas Fronteiras
O AmericanBank vai em breve oferecer Internet Banking a seus clientes. Para orientar seu planejamento em termos dos servios a serem oferecidos via Internet foi realizada uma pesquisa com quatro grupos de faixa etria diversa em trs tipos de comunidades. O AmericanBank est impondo uma srie de restries na extenso em que cada um desses grupos e comunidades deve ser pesquisada. preciso usar programao linear para desenvolver uma estratgia de pesquisa que minimize seu custo total e, ao mesmo tempo, atenda a todas as restries de pesquisa em diferentes situaes.

Caso 4.3 Distribuindo Alunos em Escolas


Aps decidir fechar uma de suas escolas de nvel mdio, a diretoria da Springfield School precisa redistribuir todos os seus alunos de nvel mdio do prximo ano nas trs escolas remanescentes. Muitos alunos sero transportados em nibus escolares de modo que minimizar esses custos de transporte um dos objetivos. Outro o de minimizar a inconvenincia e os problemas de segurana para alunos que vo a p ou de bicicleta para a escola. Dadas as capacidades das trs escolas, bem como a necessidade de equilibrar o nmero de alunos nas trs sries em cada uma das escolas, como a programao linear pode ser usada para determinar o nmero de alunos de cada uma das seis reas residenciais da cidade que devem ser distribudos em cada escola? O que aconteceria se cada uma dessas reas tivesse de ser alocada inteiramente para a mesma escola? Este caso ter continuao nos Casos 6.3 e 11.4.

LO

Teoria do Mtodo Simplex

Captulo 4 introduziu mecnica do mtodo simplex. Agora, iremos nos aprofundar um pouco mais nesse algoritmo examinando parte da teoria que est por trs dele. A primeira seo desenvolve mais a fundo as propriedades algbricas e geomtricas gerais que formam a base do mtodo simplex. A seguir, descrevemos a forma matricial do mtodo simplex (denominada mtodo simplex revisado), que otimiza consideravelmente o procedimento para implementao em computador. A seguir, apresentamos uma viso fundamental sobre uma propriedade do mtodo simplex que nos permite deduzir como as mudanas, que so feitas no modelo original, so transportadas para a tabela simplex final. Essa viso fornecer a chave para importantes tpicos do Captulo 6 (teoria da dualidade e anlise de sensibilidade).

5.1 FUNDAMENTOS DO MTODO SIMPLEX


A Seo 4.1 introduziu as solues viveis em pontos extremos (FPE) e o papel fundamental que elas desempenham no mtodo simplex. Esses conceitos geomtricos estavam relacionados lgebra do mtodo simplex nas Sees 4.2 e 4.3. Entretanto, tudo isso foi feito no contexto do problema da Wyndor Glass Co. que possua apenas duas variveis de deciso e, portanto, tinha uma interpretao geomtrica direta. Como esses conceitos se generalizam para maiores dimenses quando lidamos com problemas maiores? Respondemos a essa questo na presente seo. Comeamos introduzindo alguma terminologia bsica para qualquer problema e programao linear com n variveis de deciso. Enquanto estivermos fazendo isso, pode ser que voc ache interessante consultar a Figura 5.1 (que repete a Figura 4.1) para interpretar essas definies em duas dimenses (n = 2).

Terminologia
Deve parecer bastante intuitivo que as solues timas para qualquer problema de programao linear residam nos limites da regio de solues viveis e, de fato, essa uma propriedade genrica. Pelo fato de esses limites serem um conceito geomtrico, nossas definies iniciais esclarecem como os limites da regio de solues viveis so identificados algebricamente.
A equao limite de restrio para qualquer restrio obtida substituindo-se seu sinal s, = ou 2: por um sinal = .

Conseqentemente, a forma de uma equao limite de restrio a;ix 1 + a;2x 2 + ... + a;,,xn = b; para restries funcionais e xj = Opara restries de no-negatividade. Cada uma dessas
169

170

CAPTULO 5

TEORIA DO MTODO SIMPLEX

X[=

sujeita a
X[

$.

4
18

(O, 9)

3x 1 +

2x2 2x2

:5. 12 :5.

FIGURA 5.1

Regio de solues viveis

Limites de restries, equaes limite de restrio e solues em pontos extremos para o problema da Wyndor Glass Co .

equaes define uma forma geomtrica "plana" (chamada hiperplano) no espao n-dimensional, anlogo reta no espao bidimensional e ao plano no espao tridimensional. Esse hiperplano forma o limite de restrio para a restrio correspondente. Quando a restrio tiver um sinal ::5 ou ;:o:, esse limite de restrio separa os pontos que satisfazem a restrio (todos os pontos em um lado at chegar ao limite inclusive) dos pontos que violam a restrio (todos aqueles no outro lado do limite). Quando a restrio tiver um sinal =, somente os pontos sobre o limite de restrio satisfaro a restrio. Por exemplo, o problema da Wyndor Glass Co. possui cinco restries (trs restries funcionais e duas restries de no-negatividade) e, dessa forma, tem cinco equaes limite de restrio conforme indicado na Figura 5.1. Pelo fato de n = 2, o hiperplano definido por essas equaes limite de restrio so simplesmente retas. Portanto, os limites de restrio para as cinco restries so as cinco retas mostradas na Figura 5.1 O limite da regio de solues viveis contm apenas aquelas solues viveis que satisfazem uma ou mais equaes limite de restrio. Geometricamente, qualquer ponto sobre o limite da regio de solues viveis cai sobre um ou mais hiperplanos definidos pelas respectivas equaes limite de restrio. Portanto, na Figura 5.1, o limite formado pelos cinco segmentos de reta mais escuros. A seguir, damos uma definio genrica de soluo FPE no espao n-dimensional. Uma soluo vivel em ponto extremo (FPE) uma soluo vivel que no cai sobre
nenhum segmento de reta' conectando duas outras possveis solues viveis.

Como implicao dessa definio, uma soluo vivel que cai sobre um segmento de reta conectando duas outras solues viveis no uma soluo FPE. Para ilustrar, quando n = 2, consideremos a Figura 5.1. O ponto (2, 3) no uma soluo FPE, pois ele cai sobre vrios desses segmentos de reta, por exemplo, o segmento de reta conectando (O, 3) e (4, 3). Da mesma forma, (0, 3) no uma soluo FPE, porque ela cai sobre o segmento de reta conectando os pontos (0, O) e (0, 6). Entretanto, (0, O) uma soluo FPE, visto que impossvel encontrar duas outras solues viveis que caiam em lados completamente opostos de (0, 0). Tente faz-lo.

No Apndice 2 apresentada uma expresso algbrica para um segmento de reta.

5.1

FUNDAMENTOS DO MTODO SIMPLEX

171

Quando o nmero de variveis de deciso n for maior que 2 ou 3, essa definio para soluo FPE no muito convincente na identificao de tais solues. Portanto, ser mais til interpret-las algebricamente. Para o caso da Wyndor Glass Co., cada soluo FPE da Figura 5.1 cai na interseo de duas (n = 2) retas de restrio; isto , ela a soluo simultnea de um sistema de duas equaes limite de restrio. Essa situao sintetizada na Tabela 5.1 na qual as equaes delimitadoras se referem s equaes limite de restrio que conduzem (definem) soluo FPE indicada.
Para qualquer problema de programao linear com n variveis de deciso, cada soluo FPE cai sobre a interseo de n limites de restrio; isto , ela a soluo simultnea de um sistema de equaes limite de restrio.

Porm, isso no significa que todo conjunto de equaes limite de restrio escolhidos das n+m restries (n restries de no-negatividade em restries funcionais) leve a uma soluo FPE. Particularmente, a soluo simultnea de um sistema de equaes deste poderia violar uma ou mais das m restries no escolhidas, em cujo caso ela uma soluo invivel em ponto extremo. O exemplo tem trs dessas solues, conforme sintetizado na Tabela 5.2. (Verifique para ver por que elas so inviveis.) Alm disso, pode ser que um sistema de equaes com n limites de restrio no tenha nenhuma soluo. Isso ocorre duas vezes no presente exemplo, com os pares de equaes (1) x 1 = O e x 1 = 4 e (2) x2 = O e 2x2 = 12. Esses sistemas no nos interessam. A possibilidade final (que jamais ocorre no exemplo) que um sistema de n equaes limite de restrio possua solues mltiplas em razo das equaes redundantes. Voc tambm no precisa se preocupar com esse caso, pois o mtodo simplex contorna tais dificuldades.
li TABELA 5.1 Definindo equaes para cada

soluo FPE para o problema da Wyndor Glass Co.


Soluo FPE
(O, O) (O, 6)

Equaes Delimitadoras
X1 = X2 = X1 =

o o o
18 18 4
4

2x2 = 12

(2, 6)
3x1 (4, 3) (4, O)

2x2 = 12

+ 2x2 3x1 + 2x2

= =

X1 = X1 = X2 =

TABELA 5.2 Equaes delimitadoras para cada soluo invivel em ponto extremo para o caso da Wyndor Glass Co.
Soluo Invivel em Ponto Extremo
(O, 9)
3x1

Equaes Delimitadoras
X1 =

+ 2x2

0 18
4

(4, 6)
(6, O) 3x1

2x2 = 12
X1 =

+ 2x2

X2 =

18 0

172

CAPTULO 5

TEORIA DO MTODO SIMPLEX

Em suma, com cinco restries e duas variveis, h dez pares de equaes limite de restrio. Cinco desses pares se tomam equaes delimitadoras para as solues FPE (Tabela 5 .1 ), trs se tomam equaes delimitadoras para solues inviveis em pontos extremos (Tabela 5.2) e cada um dos dois pares finais no apresentam soluo.

Solues FPE Adjacentes


A Seo 4.1 introduziu as solues FPE adjacentes e seu papel na soluo de problemas de programao linear. Agora, vamos desenvolver mais o assunto. Lembre-se de que, no Captulo 4 (quando ignoramos variveis artificiais, de folga e excedentes), cada iterao do mtodo simplex se desloca da atual soluo FPE para uma adjacente. Qual o caminho percorrido nesse processo? Qual o verdadeiro significado de soluo FPE adjacente? Primeiramente, iremos responder a essas perguntas do ponto de vista geomtrico para depois passarmos paras s interpretaes algbricas. Essas perguntas so fceis de ser respondidas quando n = 2. Nesse caso, o limite da regio de solues viveis constitudo por vrios segmentos de retas interconectados formando um polgono, conforme mostrado na Figura 5.1 pelos cinco segmentos de reta mais escuros. Esses segmentos de reta so os lados da regio de solues viveis. Partindo de cada uma dessas solues FPE, h dois desses lados que levam a uma soluo FPE na outra extremidade. Observe que na Figura 5.1 cada soluo FPE possui duas solues adjacentes. O caminho percorrido em uma iterao deslocar-se ao longo de um desses lados partindo de uma extremidade at chegar outra. Na Figura 5.1, a primeira iterao envolve deslocarse ao longo do lado de (O, O) a (O, 6) e, a seguir, a prxima iterao se desloca ao longo do lado indo de (O, 6) at (2, 6). Conforme ilustrado na Tabela 5.1, cada um desses deslocamentos para uma soluo FPE adjacente envolve apenas uma mudana no conjunto de equaes delimitadoras (restries de limite sobre as quais a soluo recai). Quando n = 3, as respostas so um pouco mais complicadas. Para ajud-lo a visualizar o que est acontecendo, a Figura 5.2 mostra um desenho tridimensional de uma regio de solues viveis tpica quando n = 3, em que os pontos so as solues FPE. Essa regio de solues viveis um poliedro em vez do polgono que tnhamos com n = 2 (Figura 5.1), pois a restrio de limite agora plana em vez de retas. As faces do poliedro formam os limites da regio de solues viveis em que cada uma delas a poro de um limite de restrio que satisfaz tambm as demais restries. Observe que cada soluo FPE cai na interseo de trs limites de restrio (algumas vezes incluindo alguns dos limites de restrio para as restries de no-negatividade como x 1 = O, x 2 = O e x 3 = O) e a soluo tambm satisfaz as demais restries. No entanto, intersees que no satisfazem uma ou mais das demais restries levam a solues inviveis em pontos extremos. O segmento de reta na Figura 5.2 ilustra o caminho do mtodo simplex em uma iterao tpica. O ponto (2, 4, 3) a soluo FPE atual para comear a iterao e o ponto (4, 2, 4) ser a nova soluo FPE no final da iterao. O ponto (2, 4, 3) cai na interseo dos limites de restrio x 2 = 4, x 1 + x 2 = 6 e -x 1 + 2x3 = 4, de modo que essas trs so as equaes delimitadoras para essa soluo FPE. Se a equao delimitadora x 2 = 4 fosse removida, a interseo dos outros dois limites de restrio (planos) formaria uma reta. Um segmento dessa reta, indicado na Figura 5.2 como o segmento de reta em cor mais escura indo de (2, 4, 3) para (4, 2, 4), cai sobre os limites da regio de solues viveis, ao passo que orestante da reta invivel. Esse segmento de reta um lado da regio de solues viveis e seus pontos extremos so (2, 4, 3) e (4, 2, 4) so solues FPE adjacentes. Para n = 3, todos os lados da regio de solues viveis so formados dessa maneira como o segmento de reta vivel que cai na interseo de dois limites de restrio e as duas extremidades de um lado so as solues FPE adjacentes. Na Figura 5.2 h 15 lados da regio de solues viveis e, portanto, h 15 pares de solues FPE adjacentes. Para a soluo FPE atual (2, 4, 3), h trs maneiras de se eliminar uma dessas trs equaes delimitadoras para obter uma interseo dos dois outros limites de restrio, de forma que haja trs lados provenientes de (2, 4, 3). Esses lados levam a (4, 2, 4), (O, 4, 2) e (2, 4, O), de modo que estas so solues FPE adjacentes a (2, 4, 3).

5.1

FUNDAMENTOS DO MTODO SIMPLEX

173

Restries

x 1 2::

4 4 X1 + Xz ::S 6 -xi + 2x3 ::s 4 O, x 2 2:: O, x 3 2:: O


XJ ::S
Xz ::S

(4, O, 4)

(4, O, 0)

(O, O, O)
(0, 4, 2)
(4, 2, O)

RGURA 5.2 A regio de solues viveis e solues FPE para um problema de programao linear de trs variveis.

(O, 4, O)

(2, 4, O)

Para a prxima iterao, o mtodo simplex escolhe um desses trs lados, digamos, o segmento de reta mais escuro na Figura 5.2 e, a seguir, se desloca ao longo desse lado de (2, 4, 3) at atingir o novo limite de restrio, x 1 = 4, na sua outra extremidade. [No podemos prosseguir mais sobre essa reta para o limite de restrio seguinte, x 2 = O, pois este nos levaria a uma soluo invivel FPE- (6, O, 5).] A interseo desse novo limite de restrio com os dois limites de restrio formando o lado conduz nova soluo FPE (4, 2, 4). Quando n > 3, esses mesmos conceitos se generalizam para dimenses maiores, exceto que agora os limites de restrio so hiperplanos em vez de planos. Resumamos tudo isso.
Considere qualquer problema de programao linear com n variveis de deciso e uma regio de solues viveis limitada. Uma soluo FPE cai na interseo de n limites de restrio (e satisfaz as demais restries tambm). Um lado da regio permissvel um segmento de reta que cai na interseo de n- ! limites de restrio, em que cada extremidade cai sobre um limite de restrio adicional (de modo que essas extremidades sejam solues FPE). As duas solues FPE so adjacentes, caso o segmento de reta que as une for um lado da regio de solues viveis. Provenientes de cada soluo FPE so esses n lados, cada um dos quais conduzindo a uma das n solues FPE adjacentes. Cada iterao do mtodo simplex se desloca da soluo FPE atual para uma adjacente movimentando-se ao longo desses n lados.

Quando mudamos do ponto de vista geomtrico para o ponto de vista algbrico, a interseo de limites de restrio muda para soluo simultnea de equaes limite de restrio. As n equaes limite de restrio que levam (delimitam) a uma soluo FPE so suas equaes delimitadoras, nas quais ao eliminar-se uma dessas equaes leva a uma reta cujo segmento de solues viveis um lado dessa regio vivel. A seguir, analisamos algumas propriedades fundamentais das solues FPE e depois descrevemos as implicaes de todos esses conceitos na interpretao do mtodo simplex. Porm, enquanto o resumo da pgina anterior ainda est "vivo" em sua mente, faamos uma apresentao prvia de suas implicaes. Quando o mtodo simplex opta por uma varivel bsica que entra, a interpretao geomtrica que ele est escolhendo um dos lados provenientes da soluo FPE atual sobre o qual ele se deslocar. Aumentar essa varivel a partir de zero (e, simultaneamente, mudar os valores das demais variveis bsicas de acordo) corresponde a deslocar-se sobre esse lado. Permitir que uma dessas variveis bsicas (a varivel bsica que sai) diminua a ponto de chegar a zero corresponde a atingir-se o primeiro novo limite de restrio na outra extremidade desse lado da regio de solues viveis.

174

CAPTULO 5

TEORIA DO MTODO SIMPLEX

Propriedades das Solues FPE


Agora, nos concentraremos em trs propriedades-chave das solues FPE que valem para qualquer problema de programao linear que tenha solues viveis e uma regio de solues viveis limitada.
Propriedade 1: (a) Se houver exatamente uma soluo tima, ento ela obrigatoriamente uma soluo FPE. (b) Se houver duas solues timas mltiplas (e uma regio de solues viveis limitada), ento pelo menos duas delas tm de ser solues FPE adjacentes.

A Propriedade 1 bem intuitiva do ponto de vista geomtrico. Consideremos primeiramente o Caso (a), que ilustrado pelo problema da Wyndor Glass Co. (ver Figura 5.1) na qual a soluo tima (2, 6) de fato uma soluo FPE. Note que no h nada de especial em relao a esse exemplo que leve a esse resultado. Para qualquer problema com apenas uma soluo tima, sempre possvel ficar elevando-se a reta da funo objetivo (hiperplano) at que ela atinja apenas um ponto (a soluo tima) no ponto extremo da regio de solues viveis. A seguir, apresentamos uma prova matemtica para esse caso.
Prova do Caso (a) da Propriedade 1: Estabeleceremos uma prova por contradio supondo que exista exatamente uma soluo tima e que esta no seja uma soluo FPE. Em seguida, mostramos que essa hiptese nos leva a uma contradio e, portanto, no pode ser verdadeira. A soluo supostamente tima ser denotada por x* e o valor de sua funo objetivo por Z*. Lembre-se da definio de soluo FPE (uma soluo vivel que no cai sobre nenhum segmento de reta unindo duas outras solues viveis). J que supusemos que a soluo tima x* no fosse uma soluo FPE, isso implica que deve haver pelo menos duas outras solues viveis de modo que o segmento de reta que as une contenha a soluo tima. Faamos que os vetores x' e x" denotem essas outras duas solues viveis e Z 1 e Z2 os valores das respectivas funes objetivo. Como qualquer outro ponto sobre o segmento de reta unindo x' ex".

x*

= ax"+(l

- a)x'

para algum valor de a de modo que O < a < 1. Portanto, x* = ax" +(1 - a)x' Visto que os pesos a e 1 - a somam 1, as nicas possibilidades para Z*, Z 1 e Z2 serem comparveis so: (1) Z* = Z1 = Z2 , (2) Z 1 < Z* < 0. e (3) Z 1 > Z* > 0_. A primeira possibilidade implica que x' e x" tambm so timas, o que contradiz a hiptese de que x* (que no uma soluo FPE) tima. A concluso resultante que impossvel termos uma nica soluo tima que no seja uma soluo FPE. Consideremos, agora, o Caso (b) que foi demonstrado na Seo 3.2 sob a definio de soluo tima mudando a funo objetivo do exemplo para Z = 3x 1 +2x2 (ver Figura 3.5 da pgina 35). O que acontece ento quando estamos resolvendo graficamente o problema que a reta da funo objetivo fica aumentando at ela conter o segmento de reta que une as duas solues FPE (2, 6) e (4, 3). A mesma coisa poderia acontecer em dimenses maiores, exceto pelo fato de um hiperplano de funo objetivo ficar aumentando at ele conter o(s) segmento(s) de reta unindo duas (ou mais) solues FPE adjacentes. Como conseqncia, todas as solues timas podem ser obtidas como mdias ponderadas das solues FPE. Essa situao descrita com mais detalhes nos Problemas 4.5-5 e 4.5-6. O verdadeiro significado da Propriedade 1 que ela simplifica em muito a busca de uma soluo tima, pois agora somente as solues FPE precisam ser consideradas. A magnitude dessa simplificao enfatizada na Propriedade 2.

5.1

FUNDAMENTOS DO MTODO SIMPLEX

175

Propriedade 2: Existe apenas um nmero finito de solues FPE. Essa propriedade certamente satisfeita nas Figuras 5.1e5.2 em que h apenas, respectivamente, cinco e dez solues FPE. Para ver por que o nmero , em geral, finito, lembre-se de que cada soluo FPE a soluo simultnea de um sistema de n das m+n equaes limite de restrio. O nmero de combinaes diversas de m+n equaes considerando-se n por vez

m+ n) (m + n)!
n

m!n!

'

que um nmero finito. Por sua vez, esse nmero um limite superior no nmero de solues FPE. Na F~gura 5.1, m = 3 e n = 2, de modo que haja dez sistemas diferentes de duas equaes, mas apenas metade delas nos leva a solues FPE. Na Figura 5.2, m = 4 e n = 3, o que nos d 35 sistemas diferentes de trs equaes, e apenas dez conduzem a solues FPE. A Propriedade 2 sugere que, a princpio, uma soluo tima pode ser obtida por meio de exaustiva enumerao, isto , encontrar e comparar todas as solues FPE (um nmero finito). Infelizmente, h nmeros finitos e ento existem nmeros finitos que (para todos os fins prticos) poderiam tambm ser infinitos. Por exemplo, um problema de programao linear relativamente pequeno com apenas m = 50 e n = 50 teria 100!/(50!)2 APROX = 1029 sistemas de equaes a serem resolvidas! Ao contrrio, o mtodo simplex precisaria examinar apenas cerca de cem solues FPE para um problema dessa dimenso. Essa enorme economia pode ser obtida em decorrncia do teste de otimalidade dado na Seo 4.1 e reconfirmado aqui como Propriedade 3. Propriedade 3: Se uma soluo FPE no tiver nenhuma soluo FPE adjacente que seja melhor (segundo a medida de Z), ento no h nenhuma soluo FPE melhor em nenhum outro lugar. Portanto, uma soluo FPE dessas certamente uma soluo tima (pela Propriedade 1), supondo-se apenas que o problema possui pelo menos uma soluo tima (garantido, caso o problema tenha solues viveis e uma regio de solues viveis limitada). Para ilustrar a Propriedade 3, consideremos a Figura 5.1 para o exemplo da Wyndor Glass Co. Para a soluo FPE (2, 6), suas solues FPE adjacentes so (O, 6) e (4, 3) e nenhuma delas tem um valor Z melhor que (2, 6). Esse resultado implica que nenhuma das solues FPE - (O, O) e (4, 0) - pode ser melhor que (2, 6), de modo que (2, 6) deva ser tima. Ao contrrio, a Figura 5 .3 indica uma regio de solues viveis que jamais ocorre para um problema de programao linear (uma vez que a continuao das retas de limite derestrio que passam por (~, 5) iria suprimir parte dessa regio), mas isso viola efetivamente a Propriedade 3. O problema mostrado idntico ao exemplo da Wyndor Glass Co. (inclusive a mesma funo objetivo), exceto pelo aumento da regio de solues viveis para a direita de (~, 5). Por conseguinte, as solues FPE adjacentes para (2, 6) agora so (0, 6) e (~, 5) e, novamente, nenhuma delas melhor que (2, 6). Porm, outra soluo FPE, (4, 5), melhor eiue (2, 6), violando, conseqentemente, a Propriedade 3. O motivo que o limite da regio de solues viveis decresce de (2, 6) para (~, 5) e depois "faz uma curva para fora" para (4, 5), abaixo da reta da funo objetivo passando por (2, 6). O ponto-chave que o tipo de situao ilustrada na Figura 5.3 jamais poderia ocorrer em programao linear. A regio de solues viveis nessa figura implica que as restries 2x2 ::5 12 e 3x 1 +2x2 ::5 18 se aplicam a O ::5 x 1 ::5 ~.Entretanto, sob a condio de que~ ::5 x 1 ::5 4, a restrio 3x 1 +2x2 ::5 18 eliminada e substituda por x 2 ::5 5. Tais "restries condicionais" simplesmente no so permitidas em programao linear. O motivo bsico para que a Propriedade 3 seja vlida para qualquer problema em programao linear que a regio de solues viveis sempre tem a propriedade de ser um conjunto

176

CAPTULO 5

TEORIA DO MTODO SIMPLEX

6------~

(O, 6)

q,s)

FIGURA 5.3

Modificao do problema da Wyndor Glass Co. que viola tanto a programao linear como a Propriedade 3 para solues FPE em programao linear.

(4, O) (O, O)

convexo 2 , conforme definido no Apndice 2 e ilustrado em diversas figuras aqui. Para problemas de programao linear com duas variveis, essa propriedade convexa significa que o ngulo dentro da regio de solues viveis em cada soluo FPE menor que 180. Essa propriedade ilustrada na Figura 5.1, na qual os ngulos em (O, O), (0, 6) e (0, 4) so 90 e aqueles em (2, 6) e (4, 3) esto entre 90 e 180. Ao contrrio, a regio de solues viveis da Figura 5.3 no um conjunto convexo, pois o ngulo em(~, 5) maior que 180. Esse o tipo de "curvatura para fora" em um ngulo maior que 180 que jamais pode acontecer em programao linear. Em dimenses maiores, a mesma noo intuitiva de "jamais uma curvatura para fora" (uma propriedade bsica de um conjunto convexo) continua a valer. Para esclarecer a importncia de uma regio de solues viveis convexa, considere o hiperplano de funo objetivo que passa por uma soluo FPE que no tem nenhuma soluo FPE adjacente que seja melhor que a atual. No exemplo original da Wyndor Glass Co., esse hiperplano a reta da funo objetivo passando por (2, 6). Todas essas solues adjacentes (O, 6) e (4, 3) no exemplo tm de estar sobre o hiperplano ou no lado desfavorvel (conforme medido por Z) do hiperplano. A regio de solues viveis sendo convexa significa que seu limite no pode "curvar para fora" alm de uma soluo FPE adjacente para dar outra soluo FPE que caia no lado favorvel do hiperplano. Portanto, a Propriedade 3 satisfeita.
Extenses para a Forma Aumentada do Problema

Para qualquer problema de programao linear em nossa forma-padro (inclusive restries funcionais na forma :5), a aparncia das restries funcionais aps a introduo de variveis de folga a seguinte:
(1) (2)
allxl
a21X1

+ +

a12X2 a22X2

+ ... + + ... +

a1nXn a2,,Xn

Xn+l

b1

Xn+2

= b2

Se voc j estiver familiarizado com conjuntos convexos, note que o conjunto de solues que satisfazem qualquer restrio de programao linear (seja ela uma restrio de igualdade ou de desigualdade) um conjunto convexo. Para qualquer problema de programao linear, sua regio de solues viveis a interseo dos conjuntos de solues que satisfazem suas restries individuais. J que a interseo de conjuntos convexos um conjunto convexo, sua regio de solues viveis necessariamente um conjunto convexo.

5.1

FUNDAMENTOS DO MTODO SIMPLEX

177

em que Xn+i. Xn+ 2 , ... , Xn+m so as variveis de folga. Para outros problemas de programao linear, a Seo 4.6 descreveu como essencialmente essa mesma aparncia (forma apropriada da eliminao gaussiana) pode ser obtida pela introduo de variveis artificiais etc. Portanto, as solues originais (xi, xi, ... , Xn) agora so aumentadas pelos valores correspondentes das variveis artificiais ou de folga (Xn+ i. Xn+2' ... , Xn+m) e, talvez, algumas variveis excedentes tambm. Esse aumento levou a definir, na Seo 4.2, solues bsicas como solues em pontos extremos aumentadas e solues viveis bsicas (solues BV) como solues FPE aumentadas. Conseqentemente, as trs propriedades de solues FPE tambm so vlidas para solues BV. Esclareamos agora as relaes algbricas entre solues bsicas e solues em pontos extremos. Lembre-se de que cada soluo em ponto extremo a soluo simultnea de um sistema de n equaes limite de restrio que denominamos suas equaes delimitado-ras. A questo-chave : como saber se determinada equao limite de restrio uma das equaes delimitadoras quando o problema se encontra em sua forma aumentada? Aresposta, felizmente, simples. Cada restrio possui uma varivel indicativa que mostra completamente (atravs de seu valor zero ou no) se essa equao limite de restrio satisfeita pela soluo atual. Na Tabela 5.3, apresentamos um resumo. Para o tipo derestrio em cada linha da tabela, observe que a equao limite de restrio correspondente (quarta coluna) satisfeita se e somente se a varivel indicativa dessa restrio (quinta coluna) for igual a zero. Na ltima linha (restrio funcional na forma;::::), a varivel indicativa Xn+i - Xs; , na verdade, a diferena entre a varivel artificial n Xn+i e a varivel excedente Xsi Assim, toda vez que uma equao limite de restrio for uma das equaes delimitadoras para uma soluo em ponto extremo, sua varivel indicativa tem um valor zero na forma aumentada do problema. Cada uma dessas variveis indicativas chamada varivel nobsica para a soluo bsica correspondente. As concluses resultantes e terminologia G introduzida na Seo 4.2) so sintetizadas a seguir.
Cada soluo bsica possui m variveis bsicas e o restante das variveis so variveis no-bsicas configuradas em zero. (O nmero de variveis no-bsicas igual a n mais o nmero de variveis excedentes.) Os valores das variveis bsicas so dados pela soluo simultnea do sistema de m equaes para o problema na forma aumentada (aps as variveis no-bsicas serem configuradas em zero.) Essa soluo bsica a soluo em ponto extremo aumentada cujas n equaes delimitadoras so aquelas indicadas pelas variveis no-bsicas. Em particular, toda vez que uma varivel indicativa na quinta coluna da Tabela 5.3 for uma varivel no-bsica, a equao limite de restrio na quarta coluna ser uma equao delimitadora para a soluo em ponto extremo. Para restries funcionais na forma ~. pelo menos uma das duas variveis suplementares n+i e Xs; sempre uma varivel nobsica, porm a equao limite de restrio se toma uma equao delimitadora apenas se ambas as variveis forem variveis no-bsicas.

TABELA 5.3 Variveis indicativas para as equaes limite de restrio*

Tipo de Restrio
No-negatividade Funcional (::=:) Funcional ( =) Funcional (2)

Forma de Restrio
Xj20

Restrio na Forma Aumentada


Xj20

Equao de Limite de Restrio


xi=

Varivel Indicativa
Xj

j~l

n OijXj::Sb;

j~l

L
n n

O;jXj

+ Xn+i = + Xn+i = + Xn+i -

b;

j~l

n O;jXj= b;

Xn+i

j~l

L
n

aiixi= b;

j~l

L L

O;jXj

b;

j~l

L L
n

aiixi= b;

Xn+i

j~l

O;jXj2 b;

aiixi

x,,

b;

aiixi= b;

Xn+i -

Xs,

-i~l

j~l

*Varivel indicativa = O=> equao limite de restrio satisfeita; Varivel indicativa O=> equao limite de restrio violada.

178

CAPTULO 5

TEORIA DO MTODO SIMPLEX

Consideremos agora as solues viveis bsicas. Note que as nicas exigncias para uma soluo ser vivel na forma aumentada do problema so que ela satisfaa o sistema de equaes e que todas as variveis sejam no-negativas. Uma soluo BV uma soluo bsica na qual todas as m variveis bsicas so no-negativas (2: O). Uma soluo BV dita degenerada se qualquer uma dessas m variveis for igual a zero. Assim, possvel para uma varivel ser igual a zero e ainda assim no ser uma varivel nobsica para a soluo BV atual. Esse caso corresponde a uma soluo FPE que satisfaz outra equao limite de restrio, alm de suas n equaes delimitadoras. Portanto, necessrio controlar qual o conjunto atual de variveis no-bsicas (ou o conjunto atual de variveis bsicas) em vez de basear-se em seus valores nulos. Alertamos anteriormente que nem todo sistema de n equaes limite de restrio. conduz a uma soluo em ponto extremo, pois ou o sistema no possui nenhuma soluo ou ento tem solues mltiplas. Por razes anlogas, nem todo conjunto de n variveis nobsicas conduz a uma soluo bsica. Porm, esses casos so evitados pelo mtodo simplex. Para ilustrar essas definies, consideremos o exemplo da Wyndor Glass Co. mais uma vez. Suas equaes limite de restrio e variveis indicativas so mostradas na Tabela 5.4. Aumentar cada uma as solues FPE (ver Tabela 5.1) nos leva s solues BV listadas na Tabela 5.5. Essa tabela coloca solues BV adjacentes prximas umas das outras, exceto para o par formado pela primeira e ltima solues listadas. Observe que em cada caso as variveis no-bsicas so, necessariamente, as variveis indicativas para as equaes delimitadoras. Portanto, solues BV adjacentes diferem por ter apenas uma varivel no-bsica diversa. Observe tambm que cada uma das solues BV a soluo simultnea do sistema de equaes para o problema na forma aumentada (ver Tabela 5.4) quando as variveis no-bsicas so configuradas para ser iguais a zero.
TABELA 5.4 Variveis indicativas para as equaes limite de restrio do problema da Wyndor Glass Co.*
Restrio
x, ~o X2 ~0 x, :S 4 2x2 :S 12 3X1 + X2 :S 18

Restrio na Forma Aumentada


x, X2
~o

Equao Limite de Restrio


x, =o X2 = 0 x, = 4 2x2 = 12 3x1 + 2x2 = 18

Varivel Indicativa

(1) x, + (2) 2x2 + (3) 3x1 + 2x2 +

0 X3
X4

= 4 = 12 X5 = 18

*Varivel indicativa = O ~ equao limite de restrio satisfeita; Varivel indicativa O ~ equao limite de restrio violada.

TABELA 5.5 Solues BV para o problema da Wyndor Glass Co.


Soluo FPE
(O, O) (O, 6) (2, 6) (4, 3) (4, O)

Equaes Delimitadoras
x, = o X2 = o x, = o 2x2 = 12 2x2 = 12 3x1 +2x2 =18 3x1 + 2x2 = 18 x, = 4 x, = 4 X2 = o

Soluo BV
(O, O, 4, 12, 18) (O, 6, 4, O, 6) (2, 6, 2, O, O) (4, 3, O, 6, O) (4, o, o, 12, 6)

Variveis No-bsicas
x, X2 x, X4 X4 Xs X5

X3 X3
X2

5.1

FUNDAMENTOS DO MTODO SIMPLEX

179

TABELA 5.6

Solues inviveis bsicas para o caso da Wyndor Glass Co.


Equaes Delimitadoras
X1 = 3x1

Soluo Invivel em Ponto Extremo


(O, 9) (4, 6) (6, O)

Soluo Invivel Bsica


(O, 9, 4, -6, O) (4, 6, O, O, -6) (6, O, -2, 12, O)

Variveis No-bsicas
X1
X5 X4 X3 Xs X2

o
18 12 4 18

+ 2x2
2x2

= =

X1 = 3x 1

+ 2x2
X2

= =

De forma similar, as trs solues inviveis em pontos extremos (ver Tabela 5.2) conduzem a trs solues inviveis bsicas conforme mostrado na Tabela 5.6. Os outros dois conjuntos de variveis no-bsicas, (1) x 1 e x 3 e (2) x 2 e x4 , no conduzem a uma soluo bsica, pois configurar qualquer desses pares de variveis em zero leva a no se encontrar nenhuma soluo para o sistema de Eqs. (1) a (3) dadas na Tabela 5.4. Essa concluso anloga observao feita anteriormente nesta seo de que os conjuntos correspondentes de equaes limite de restrio no conduzem a uma soluo. O mtodo simplex comea em uma soluo BV e depois iterativamente se desloca para uma soluo BV adjacente melhor at que uma soluo tima seja atingida. A cada iterao, como a soluo BV adjacente alcanada? Para a forma original do problema, lembre-se de que uma soluo FPE adjacente alcanada a partir da soluo atual das seguintes maneiras: (1) eliminando-se um limite de restrio (equao delimitadora) do conjunto de n limites de restrio definindo a soluo atual, (2) afastando-se da soluo atual na direo vivel ao longo da interseo dos n - l limites de restrio (um lado da regio de solues viveis) e (3) parando quando o primeiro novo limite de restrio (equao delimitadora) for atingido. De modo equivalente, em nossa nova terminologia, o mtodo simplex chega a uma soluo BV adjacente a partir da soluo atual das seguintes maneiras: (1) eliminando-se uma varivel (a varivel bsica que entra), (2) afastando-se da soluo atual aumentando-se essa varivel a partir de zero (e ajustando-se as demais variveis bsicas de modo a ainda satisfazer o sistema de equaes) e, ao mesmo tempo, mantendo as n - 1 variveis no-bsicas restantes em zero e (3) parando quando a primeira das variveis bsicas (a varivel bsica que sai) atingir um valor zero (seu limite de restrio). Com qualquer uma das interpretaes, a escolha entre as n alternativas no passo 1 feita selecionando-se aquela que daria a melhor taxa de desempenho em Z (por unidade de acrscimo na varivel bsica que entra) durante o passo 2. A Tabela 5.7 ilustra a estreita correspondncia entre as interpretaes geomtrica e algbrica do mtodo simplex. Usando-se os resultados j apresentados nas Sees 4.3 e 4.4, a quarta coluna sintetiza a seqncia de solues BV encontradas para o caso da Wyndor Glass Co. e a segunda coluna mostra as solues FPE correspondentes. Na terceira coluna, observe como cada iterao resulta na eliminao de um limite de restrio (equao delimitadora) e na substituio por um novo para obter a nova soluo FPE. De modo similar, observe na quinta coluna como cada iterao resulta na eliminao de uma varivel no-bsica e na substituio por uma nova para se obter a nova soluo BV. Alm disso, as variveis no-bsicas que esto sendo eliminadas e acrescentadas so as variveis indicativas para as equaes delimitadoras que esto sendo eliminadas e acrescentadas na terceira coluna. A ltima coluna revela o sistema inicial de equaes [excluindo a Eq. (O)] para a forma aumentada do problema, com as variveis bsicas atuais mostradas em negrito. Em cada caso, note como configurar as variveis no-bsicas em zero e, depois, resolvendo esse sistema de equaes para as variveis bsicas deve conduzir mesma soluo para (xi. x 2 ) como o par correspondente de equaes delimitadoras na terceira coluna. A seo Exemplos Trabalhados do CD-ROM fornece um exemplo de desenvolvimento do tipo de informao dada na Tabela 5.7 para um problema de minimizao.

180

CAPTULO 5

TEORIA DO MTODO SIMPLEX

TABELA 5.7 Seqncia de solues obtidas pelo mtodo simplex para o problema da Wyndor Glass Co.
Iterao Soluo FPE
(O, O)

Equaes Delimitadoras
x, X2

Soluo BV
(O, O, 4, 12, 18)

Variveis No-bsicas
x, X2

Restries Funcionais na Forma Aumentada

o
1

= o = o = o = 12 = 12 = 18

=o = =o = = =

(O, 6)

X1
2x2

(O, 6, 4, O, 6)

x, X4

(2, 6) 3x1 +

2x2 2x2

(2, 6, 2, O, O)

X4 X5

+ X3 = 4 + X4 = 12 3X1 + 2X2 + X5 = 18 x, + X3 = 4 2X2 + X4 = 12 3X1 + 2X2 + X5 = 18 X1 + X3 = 4 2X2 + X4 = 12 3x, + 2x2 + x 5 = 18


x, 2X2

MTODO SIMPLEX REVISADO


O mtodo simplex conforme descrito no Captulo 4 (daqui em diante denominado mtodo simplex original) um procedimento algbrico direto. Entretanto, essa maneira de executar o algoritmo (seja na forma algbrica, seja na tabular) no o procedimento computacional mais eficiente, pois ele calcula e armazena muitos nmeros que no so necessrios na iterao atual e que podem at mesmo no se tomar relevantes para tomada de deciso em iteraes subseqentes. As nicas informaes relevantes em cada iterao so os coeficientes das variveis no-bsicas na Eq. (O), os coeficientes da varivel bsica que entra nas demais equaes e os lados direitos das equaes. Seria muito til ter um procedimento que pudesse obter essas informaes de modo eficiente sem ter de processar e armazenar todos os demais coeficientes. Conforme mencionado na Seo 4.8, essas consideraes motivaram o desenvolvimento de um mtodo simplex revisado. Esse mtodo foi projetado para realizar exatamente as mesmas coisas que o mtodo simplex original, porm de maneira mais eficiente para execuo em computadores. Portanto, ele uma verso racional do procedimento original. Ele processa e armazena somente as informaes que so necessrias no momento e transmite os dados essenciais de forma mais compacta. O mtodo simplex revisado usa, explicitamente, manipulaes de matrizes, de modo que seja necessrio descrever o problema em notao matricial (ver Apndice 4 para uma reviso de matrizes). Para ajud-lo a distinguir entre matrizes, vetores e escalares, adotamos a seguinte conveno: letras MAISCULAS EM NEGRITO, para representar matrizes; letras minsculas em negrito, para representar vetores; e letras em itlico em face regul~r. para representar escalares. Tambm usamos um zero em negrito (0), para denotar um vetor nulo (um vetor cujos elementos so todos zero) seja na forma de colunas como de linhas (que poder ser entendido conforme o contexto) ao passo que um zero em face regular (0) continua representar o nmero zero. Usando matrizes, nossa forma-padro para o modelo de programao linear genrico dado na Seo 3.2 fica Maximizar sujeita a Ax:::; b

Z= ex,

X 2:

O,

em que e o vetor-linha

x, b e O so os vetores-coluna, tais que

5.2

MTODO SIMPLEX REVISADO

181

e A a matriz

A=

ra,,

12
22

21

'" a2n
Gmn

aml

am2

Para obter a forma aumentada do problema, introduza o vetor-coluna de variveis de folga

Xn+lj
X,= Xn:+2

r
[A, I]

Xn+m

de modo que as restries fiquem

[:J

em que 1 a matriz identidade m X m e o vetor nulo O agora tem n + m elementos. Comentamos no final da seo sobre como lidar com problemas que no se encontram sob nossa forma-padro.

Procedimento para Encontrar uma Soluo Bsica Vivel


Lembre-se de que a sistemtica geral do mtodo simplex obter uma seqncia de solues BV melhores at que se chegue a uma soluo tima. Uma das caractersticas fundamentais do mtodo simplex revisado envolve a maneira pela qual ele chega a cada uma das novas solues BV aps identificar suas variveis bsicas e no-bsicas. Dadas essas variveis, a soluo bsica resultante a soluo das m equaes
[A, I]

[:J

= b,

nas quais as n variveis no-bsicas dos n

+ m elementos de

so configuradas em zero. Eliminar essas n variveis igualando-as a zero deixa um conjunto de m equaes em m desconhecidas (variveis bsicas). Esse conjunto de equaes pode ser denotado
Bx8 = b,

em que o vetor de variveis bsicas

XBJj
Xs =

X~2

Xsm

obtido eliminando-se as variveis no-bsicas de

182

CAPTULO 5 TEORIA DO MTODO SIMPLEX

e a matriz-base

obtida eliminado-se as colunas correspondentes aos coeficientes de variveis no-bsicas de [A, I]. Alm disso, os elementos de x8 e, conseqentemente, as colunas de B podem ser colocadas em uma ordem diferente quando o mtodo simplex for executado. O mtodo simplex introduz somente variveis bsicas tal que B seja no-singular, de maneira que B- 1 sempre existir. Portanto, para resolver Bx8 = b, ambos os lados so previamente multiplicados por B- 1 :
B- 1Bx8 = B- 1b.

J que B- 1B = 1, a soluo desejada para as variveis bsicas

Faamos que c8 seja o vetor cujos elementos so os coeficientes da funo objetivo (inclusive zeros para as variveis de folga) para os elementos correspondentes de x8 . O valor da funo objetivo para essa soluo bsica ento
1

z=

CsXs = CsB-

b.

Exemplo. Para ilustrar esse mtodo de resoluo para se encontrar uma soluo BV, considere novamente o problema da Wyndor Glass Co. apresentado na Seo 3.1 e resolvido pelo mtodo simplex original na Tabela 4.8. Nesse caso,

Consultando a Tabela 4.8, vemos que a seqncia de solues BV obtidas pelo mtodo simplex (original ou revisado) a seguinte:
Iterao O

~] ~ B ',
c8
=

de modo que

::] =
X5

[~ ~ ~][1~] [1~].
=

18

18

[O, O, O],

de forma que

Iterao 1

5.2

MTODO SIMPLEX REVISADO

183

de modo que

o
l

-1

CB =

[O, 5, O],

de maneira que

[O, 5,

o{~ ~

30.

Iterao 2

o
2 2 de modo que

CB

= [0, 5, 3),

de maneira que

z ro. 5,

3H] ~ 36.

Forma Matricial do Conjunto de Equaes Atual


A ltima preliminar antes de sintetizarmos o mtodo simplex revisado mostrar a forma matricial do conjunto de equaes que aparece na tabela simplex para qualquer iterao do mtodo simplex original. Para o conjunto de equaes original, a forma matricial fica

Esse conjunto de equaes tambm exibido na primeira tabela simplex da Tabela 5.8.

TABELA 5.8 Tabela simplex inicial e posterior na forma matricial


Coeficiente de: Iterao Varivel Bsica
Eq.
(O) (1, 2, ... , m)

Variveis Bsicas

Variveis de Folga

Lado Direito

o
<

z
XB

-e A
< <

o
1
>

o
b

Qualquer

z
XB

(O) (1, 2, ... m)

csB- 1A - e B- 1 A

CB

B-1 B-1

c 8 B- 1b B- 1b

CAPTULO 5

TEORIA DO MTODO SIMPLEX

As operaes algbricas executadas pelo mtodo simplex (multiplicar uma equao por uma constante e adicionar um mltiplo de uma operao outra equao) so expressas na forma matricial multiplicando-se previamente ambos os lados do conjunto de equaes original pela matriz apropriada. Essa matriz teria os mesmos elementos da matriz identidade, exceto que cada mltiplo para uma operao algbrica entraria no ponto necessrio para fazer que a multiplicao de matrizes execute essa operao. Mesmo aps uma srie de operaes algbricas em vrias iteraes, ainda podemos deduzir o que essa matriz deve ser (simbolicamente) para a srie inteira usando o que j sabemos sobre os lados direitos do novo conjunto de equaes. Particularmente, aps qualquer iterao, x 8 = B- 1b e Z = c8 B- 1b, de modo que os lados direitos do novo conjunto de equaes fica

Pelo fato de realizarmos a mesma srie de operaes algbricas em ambos os lados do conjunto original de equaes, usamos a mesma matriz que multiplica previamente o lado direito original para multiplicar previamente o lado esquerdo original. Conseqentemente, j que
CsB

B-1

-lj

a forma matricial desejada do conjunto de equaes aps qualquer iterao

[~
A segunda tabela simplex da Tabela 5.8 tambm exibe esse mesmo conjunto de equaes.

Exemplo. Para ilustrar essa forma de matriz para o conjunto atual de equaes, mostraremos como ela leva ao conjunto final de equaes resultante da iterao 2 para o problema da Wyndor Glass Co. Usando o B- 1 e c8 dados para a iterao 2 no final da subseo precedente, temos

B-'A ~ [~
c8

3
1

-3

-m
3

~] ~ [~

B_, ~[O, 3{ ~
5, [O, 5,

!
2
1

-~] ~ ro. J. 11.


[3, 5]

-3

c8

B-'A - e~

3{~

IJ-

~[O,

O].

Usando os valores de x 8 = B- 1b e Z = c8 - i b calculados no final da subseo anterior, esses resultados geram o seguinte conjunto de equaes:

5.2 MTODO SIMPLEX REVISADO

185

r~

o o o
1

o o
1

o
1

2 1

o o

3
1

-3

-~1 {~l
X1 Xz X3
3

X4 X5

conforme mostrado no final da tabela simplex na Tabela 4.8.

Procedimento Global
H duas implicaes fundamentais da forma matriz do conjunto de equaes atual mostrado na parte inferior da Tabela 5.8. A primeira delas que somente B- 1 precisa ser derivada para ser capaz de calcular todos os nmeros na tabela simplex a partir dos parmetros originais (A, b, c8 ) do problema. Essa implicao a essncia do insight fundamental descrito na seo seguinte. A segunda que qualquer um desses nmeros pode ser obtido individualmente, em geral, realizando-se apenas uma multiplicao vetorial (uma linha vezes uma coluna) em vez de uma multiplicao de matrizes completa. Portanto, os nmeros exigidos para realizar uma iterao do mtodo simplex podem ser obtidos conforme necessrio sem gastar tempo de processamento para obter todos os nmeros. Essas duas implicaes fundamentais esto incorporadas no resumo a seguir de todo o procedimento.

Sntese do Mtodo Simplex Revisado


1. Inicializao: O mesmo procedimento adotado para o mtodo simplex original. 2. Iterao: Passo 1 Determinar a varivel bsica que entra: o mesmo procedimento adotado para o mtodo simplex original. Passo 2 Estabelea a varivel bsica que sai: o mesmo procedimento adotado para o mtodo simplex original, exceto pelo clculo apenas dos nmeros exigidos para tanto [os coeficientes da varivel bsica que entra em cada equao, exceto Eq. (O) e, depois, para cada coeficiente estritamente positivo, o lado direito daquela equao].3 Passo 3 Determinar a nova soluo BV: derive B- 1 e configure x8 = B- 1b. 3. Teste de otimalidade: O mesmo para o mtodo simplex original, exceto calcular somente os nmeros exigidos para fazer esse teste, isto , os coeficientes das variveis no-bsicas so Eq. (0).

No passo 3 de uma iterao, B- 1 poderia ser derivado cada vez usando-se uma rotina de computador-padro para inverter uma matriz. Porm, j que B (e, conseqentemente B- 1) muda to pouco de uma iterao para a prxima, muito mais eficiente derivar o novo B- 1 (denote-o por B~~vo) na iterao anterior (denomine-o B~n\igo). (Para a soluo BV inicial, B = 1 = B- 1.) Um mtodo para realizar essa derivao se baseia diretamente na interpretao dos elementos de B- 1 [os coeficientes das variveis de folga nas Eqs. (1), (2), ... (m)] apresentados na prxima seo, bem como o procedimento usado pelo mtodo simplex original para obter o novo conjunto de equaes a partir do conjunto anterior. Para descrever esse mtodo formarnlente, faa que
xk = varivel bsica que entra;
a;k

=coeficiente de x 4 na Eq. (i) atual, parai= 1, 2, .. ., m (calculado no passo 2 de uma iterao);

r = nmero de equaes contendo a varivel bsica que sai.


Pelo fato de o valor de x8 ser o vetor inteiro dos lados direitos, exceto pela Eq. (O), os lados direitos relevantes no precisam ser calculados aqui se x8 fosse calculado no passo 3 da iterao anterior.

186

CAPTULO 5 TEORIA DO MTODO SIMPLEX

Lembre-se de que o novo conjunto de equaes [exceto a Eq. (O)] pode ser obtido do conjunto anterior subtraindo-se a[kla~k Eq. (i), para todos i = 1, 2, ... , m exceto i = r e depois dividindo Eq. (r) por a~k Portanto, o elemento na linha i e coluna} de B~dvo
sei i= r, sei= r.

Essas frmulas so expressas na notao matricial como -1 B novo = EB-1 antigo' em que matriz E uma matriz identidade, exceto pelo fato de sua r-sima coluna ser substituda pelo vetor
sei* r,

no qual
sei= r.

Portanto, E= [Ui. Ui, ... , Ur-i. 71, Ur+i. ... ,Um], onde os m elementos de cada um dos U; vetores coluna serem O exceto por 1 na i-sima posio.
Exemplo. Vamos ilustrar o mtodo simplex revisado aplicando-o ao problema da Wyndor Glass Co. As variveis bsicas iniciais so as de folga

Iterao 1 Pelo fato de B- 1 = 1, inicial, no necessrio nenhum clculo para obter os nmeros exigidos para identificar a varivel bsica que entra x2 (-c 2 = -5 < -3 = -c 1) e a varivel bsica que sai x 4 (a 12 = O, b2/a 22 = 1f < ~ = b3/a32 de modo que r = 2). Portanto, o novo conjunto de variveis bsicas fica

Para obter o novo B- 1,


_En_
22

71 =
22

_a32
ll22

~ul

assim,

de modo que

5.2 MTODO SIMPLEX REVISADO

187

o
1

-1 Para testar se essa soluo tima ou no, calculamos os coeficientes das variveis no-bsicas (x 1 e x 4 ) na Eq. (O). Realizando somente as partes relevantes das multiplicaes matriciais, obtemos

o
1

] - [3, -]

-1

[-3, -],

o
-1 de modo que os coeficientes de x 1 e x 4 sejam -3 e~, respectivamente. Visto que x 1 possui um coeficiente negativo, essa soluo no tima.
Iterao 2 Usando esses coeficientes das variveis no-bsicas na Eq. (0), uma vez que somente x 1 tem um coeficiente negativo, comeamos a prxima iterao identificando x 1 como a varivel bsica que entra. Para determinar a varivel bsica que sai, temos de calcular os demais coeficientes de x 1 :

o
1

-1

Utilizando-se a coluna do lado direito para a soluo BV atual (o valor de x8 ) que acaba de ser dada para a iterao 1, as razes 4/1 > 6/3 indicam que x 5 a varivel bsica que sai, de modo que o novo conjunto de variveis bsicas

.. ~ [;;]
B-'

_ ai1 a31

com

,,, =

_ a1 a31
1
a31

~n1
3
1 1

Portanto, o novo B- 1 fica

~~
[
!
3

o
1

o -~f

o
1

-1

;] ~ [~ -n
2
1

-3

de forma que

.. ~ [~

-3

-m:~l ~m

Aplicando-se o teste de otimalidade, descobrimos que os coeficientes das variveis nobsicas (x 1 e x 4 ) na Eq. (O) so

188

CAPTULO 5

TEORIA DO MTODO SIMPLEX

3
1

-3

-~] ~ r-. i. 11.

Pelo fato de ambos os coeficientes(~ e 1) serem no-negativos, a soluo atual (x 1 = 2, x 2 = 6, x 3 = 2, x 4 = O, x 5 = O) tima e o procedimento termina. A seo de Exemplos Trabalhados do CD-ROM d outro exemplo de aplicao do mtodo simplex revisado. Observaes Gerais A discusso anterior foi limitada para o caso de problemas de programao linear que se encaixavam em nossa forma-padro dada na Seo 3.2. Entretanto, as modificaes para outras formas so relativamente simples. A inicializao seria conduzida do mesmo modo como seria para o mtodo simplex original (ver Seo 4.6). Quando essa etapa envolver a introduo de variveis artificiais para obter uma soluo BV inicial (e, conseqentemente, obter uma matriz identidade como matriz base inicial), essas variveis so includas entre os m elementos de X 5 Sintetizemos as vantagens do mtodo simplex revisado em relao ao mtodo simplex original. Uma vantagem que o nmero de clculos aritmticos pode ser reduzido. Isso especialmente verdadeiro quando a matriz A contiver um grande nmero de elementos zero (que normalmente o caso para problemas grandes que surgem na prtica). A quantidade de informao que deve ser armazenada a cada iterao menor, algumas vezes de modo considervel. O mtodo simplex revisado tambm permite o controle dos erros de aproximao inevitavelmente gerados pelos computadores. Esse controle pode ser exercido obtendo-se periodicamente o B- 1 atual pela inverso de B. Alm disso, alguns problemas de anlise de ps-otimalidade discutidos na Seo 4. 7 podem ser tratados de maneira mais conveniente pelo mtodo simplex revisado. Por todas essas razes, o mtodo simplex revisado normalmente prefervel em relao ao mtodo simplex original para execuo em computa~ores.

l:i~ "UM INSIGHT FUNDAMENTAL


Agora, iremos nos concentrar em uma propriedade do mtodo simplex (em qualquer uma de suas forma~) que foi revelada pelo mtodo simplex revisado na Seo 5.2. 4 Esse insight fundamental fornece a chave tanto para a teoria da dualidade quanto para a anlise de sensibilidade (Captulo 6), duas partes importantes da programao linear. O insight envolve os coeficientes das variveis de folga e as informaes que elas fornecem. Ela o resultado direto da inicializao na qual atribudo i-sima varivel de folga Xn+i um coeficiente + 1 na Eq. (i) e um coeficiente O em cada uma das demais equaes [inclusive a Eq. (O)] parai = 1, 2, ... , m, conforme mostrado pelo vetor nulo O e pela matriz identidade 1 na coluna das variveis de folga para a iterao O na Tabela 5.8. Para a maior parte dessa seo, estamos partindo do pressuposto que o problema se encontra em nossa forma-padro, com b;:?: Opara todo i = 1, 2, ... , m, de modo que no seja necessrio nenhum ajuste adicional na inicializao. O outro fator-chave que iteraes subseqentes mudam as equaes iniciais somente por
1. Multiplicar (ou dividir) uma equao inteira por uma constante no-zero. 2. Adicionar (ou subtrair) um mltiplo de uma equao inteira a outra equao inteira.

Conforme j descrito na seo anterior, uma seqncia desses tipos de operaes algbricas elementares equivale a multiplicar previamente a tabela simplex inicial por alguma
4

Porm, j que algumas instrues no cobrem a seo anterior, redigimos a presente seo de maneira que possa ser entendida sem ter de ler primeiramente a Seo 5.2. til dar uma olhada rpida na notao matricial no incio da Seo 5.2, inclusive a equao-chave resultante, x8 = B- 1b.

5.3

UM INSIGHT FUNDAMENTAL

189

matriz. (Ver o Apndice 4 para uma reviso sobre matrizes.) A correspondncia pode ser resumida como se segue. Descrio verbal do insight fundamental: Aps qualquer iterao, os coeficientes das variveis de folga em cada equao revelam imediatamente como essa equao foi obtida das equaes iniciais. Como exemplo da importncia deste insight, relembre-se de que, conforme indicado na Tabela 5.8, a frmula da matriz para a soluo tima obtida pelo mtodo simplex
Xs

B- 1b,

em que xs o vetor das variveis bsicas, B- 1 refere-se matriz dos coeficientes das variveis de folga para as linhas 1 a m da tabela final e b o vetor dos lados direitos originais (disponibilidade de recursos). Em breve, denotaremos esse B- 1 em particular por S*. A anlise de ps-otimalidade normalmente inclui uma investigao das possveis mudanas em b. Usando essa frmula, podemos ver exatamente como a soluo BV tima muda (ou se ela se toma invivel ou no em razo das variveis negativas) como funo de b. Voc no deve reaplicar o mtodo simplex toda vez para cada novo b, pois os coeficientes das variveis de folga informam tudo! De maneira similar, esse insight fundamental poupa uma quantidade enorme de processamento para o restante da anlise de sensibilidade tambm. Para explicar em detalhes como e o porqu desse insight, vejamos novamente o exemplo da Wyndor Glass Co. O Tutor PO tambm inclui outro exemplo demonstrativo.

Exemplo. A Tabela 5.9 mostra a parte relevante da tabela simplex para demonstrao desse insight fundamental. Foram traadas linhas claras em volta dos coeficientes das variveis de folga em toda a tabela dessa tabela, pois estes so os coeficientes cruciais para aplicao do insight. Para evitar poluio visual, identificamos a seguir a linha-piv e a coluna-piv por um retngulo em tomo apenas do nmero do piv.
Iterao 1 Para demonstrar o insight fundamental, nosso foco se concentra nas operaes algbricas executadas pelo mtodo simplex enquanto usamos a eliminao gaussiana para obter a nova soluo BV.
TABELA 5.9 Tabela simplex sem as colunas mais esquerda para o problema

da Wyndor Glass Co.


Coeficiente de: Iterao

x,
-3 1

X2

X3

X4

Xs

Lado Direito

-5

o
3

[I]
2

o o o o
1 1

o o o
5 2 1

o o o
1

o
4

12 18

-3
1 1

o o
1

o
1

o
[I]

o o o
1

o o o
1

2
-1

o o o
1 1 1 3

30
4

6 6 36
2

o o
2

2
1

o
1

o o

1 2

o
1 3

6
2

-3

190

CAPTULO 5

TEORIA DO MTODO SIMPLEX

Se efetuannos todas essas operaes algbricas com a linha antiga 2 (a linha-piv) em vez da nova, ento as operaes algbricas descritas em detalhes no Captulo 4 para a iterao 1 ficam Linha nova O = linha antiga O + (~)(linha antiga 2), Linha nova 1 = linha antiga 1 + (O)(linha antiga 2), Linha nova 2 = Linha nova 3 = linha antiga 3
(~)(linha antiga 2),

+ (- l)(linha antiga 2).

Ignorando a linha O por enquanto, vemos que essas operaes algbricas equivalem a multiplicar previamente as linhas 1 a 3 da tabela inicial pela matriz

[~

o
1

-1

As linhas 1 a 3 da tabela inicial so Linhas antigas 1-3 = 1 o 1 o oi O 2 O 1 o J 12 , [ 3 2 o o 1 ! 18

4]

em que a terceira, quarta e quinta colunas (os coeficientes das variveis de folga) formam uma matriz identidade. Portanto,

Llnh>< nova' 1-3

~ [~
1

o
1

-1

~m
o o
1

o
2 2

o
1

o o

o o
1

18

1~]

~ [~

o
1

o
1

o 2 o -1

Observe como a primeira matriz reproduzida exatamente no retngulo abaixo dele na forma dos coeficientes das variveis de folga nas linhas 1 a 3 da nova tabela, pois os coeficientes das variveis de folga nas linhas 1 a 3 da tabela inicial formam uma matriz identidade. Assim, da mesma forma que afirmado na descrio verbal do insight fundamental, os coeficientes das variveis de folga na nova tabela simplex fornecem, de fato, um registro das operaes algbricas realizadas. Esse insight no muito entusiasmado aps apenas uma iterao j que podemos deduzir prontamente da tabela inicial quais teriam de ser as operaes algbricas, porm, ele se toma inestimvel aps todas as iteraes terem sido completadas. Para a linha O, a operao algbrica realizada equivale aos seguintes clculos matriciais, nos quais agora nosso foco se concentra no vetor [O, ~. O] que multiplica previamente as linhas 1 a 3 da tabela inicial. Nova linha O= [-3,

-5 ! O, O, O! O] + [O,

~. O][~ ~
3 2

o 1 o 12 o o 1 ! 18
J

o oi

4]

[-3,

0,1 O,

~. 0,1 30].

Note como esse vetor reproduzido exatamente no retngulo abaixo dela na forma dos coeficientes das variveis de folga na linha O da nova tabela, exatamente como havamos dito na afirmao do insight fundamental. (Repetindo, a razo a matriz identidade para os coeficientes das variveis de folga nas linhas 1 a 3 da tabela inicial, juntamente com os zeros para esses coeficientes na linha O da tabela inicial.)

5.3

UM INSIGHT FUNDAMENTAL

191

Iterao 2 As operaes algbricas realizadas na segunda tabela da Tabela 5.9 para a iterao 2 so

Linha nova O = linha antiga O + (1) (linha antiga 3), Linha nova 1 Linha nova 2 Linha nova 3
= =

linha antiga 1 + (-~)(linha antiga 3), linha antiga 2

+ (O) (linha antiga 3),


(linha antiga 3).

= (~)

Ignorando-se a linha O por enquanto, vemos que estas operaes equivalem a multiplicar previamente as linhas 1 a 3 desta tabela pela matriz

~ [o

-ii.
! 3

Escrevendo essa segunda tabela na forma da matriz produto indicada para a iterao 1 (isto , a matriz correspondente vezes as linhas 1 a 3 da tabela inicial) nos leva a

o
1

o
!
3

-~m
~
1

o
1

2 1 -3

-1
o o

-1

m~
1 o o 1 o o
-3
1

o
2 2

1 o o o 1 o o o

18

'~]

o o o 2
3
1

o o
1

2
3
1

18

'~]

o
1

o
1 3

-3

As duas primeiras matrizes expostas na primeira linha desses clculos sintetizam, respectivamente, as operaes algbricas da segunda e primeira iteraes. O seu produto, mostrado na forma da primeira matriz na segunda linha, combinado ento com as operaes algbricas das duas iteraes. Note como essa matriz reproduzida exatamente no retngulo abaixo dela na forma dos coeficientes das variveis de folga nas linhas 1 a 3 da nova tabela (final) exibida na terceira linha. O que esse trecho da tabela revela como a tabela final inteira (exceto pela linha O) foi obtido da tabela inicial. Linha final 1 Linha final 2 Linha final 3
= = =

(l)(linha inicial 1) (O)(linha inicial 1) (O)(linha inicial 1)

+ +

(~)(linha inicial 2)
(~)(linha inicial 2)

(-~)(linha inicial 3),

+ (O)(linha inicial 3),


(~)(linha inicial 3).

+ (-~)(linha inicial 2) +

Para ver por que esses multiplicadores das linhas iniciais esto corretos, voc teria de rastrear todas as operaes algbricas de ambas as iteraes. Por exemplo, por que a linha final 1 inclui (}) (linha inicial 2), embora um mltiplo da linha 2 jamais tenha sido adicionado diretamente linha 1? A razo que essa linha inicial 2 foi subtrada da linha inicial 3 na iterao 1 e, depois, (~) (antiga linha 3) foi subtrada da antiga linha 1 na iterao 2. Entretanto, no h nenhuma necessidade de voc ficar rastreando. Mesmo quando o mtodo simplex tiver passado por centenas ou milhares de iteraes, os coeficientes das variveis de folga na tabela final revelaro como esta foi obtida da tabela inicial. Alm disso, as mesmas operaes algbricas dariam esses mesmos coeficientes mesmo se os valores de alguns dos parmetros no modelo original (tabela inicial) fossem alterados, de modo que esses coeficientes tambm revelam como o restante da tabela final muda com as modificaes realizadas na tabela inicial.

192

CAPTULO 5

TEORIA DO MTODO SIMPLEX

Para completar essa histria da linha O, o insight fundamental revela que toda a linha O final pode ser calculada a partir da tabela inicial usando-se apenas os coeficientes das variveis de folga na linha O final - [O, ~' 1]. Esse clculo mostrado a seguir no qual o primeiro vetor a linha O da tabela inicial e a matriz formada pelas linhas 1 a 3 da tabela inicial.
3

Linha O final = [-3,

-5 i O,

O,

Oi O]+ [O,

2'

1][ ~
3

oi 1 o o 2 io 1 o 2/0 o 1
36].

18

1~]

=[O,

o,io,

2'

1,1

Observe novamente como o vetor que efetua uma pr-multiplicao das linhas 1 a 3 da tabela inicial reproduzido exatamente na forma dos coeficientes das variveis de folga na linha O final. Esses valores tm de ser identificados em virtude dos coeficientes das variveis de folga na tabela inicial (uma matriz identidade abaixo de um vetor nulo). Essa concluso a parte da linha O do insight fundamental.

A seo de Exemplos Trabalhados do CD-ROM inclui outro exemplo que ilustra como toda a tabela simplex final pode ser calculada conhecendo-se apenas os coeficientes das variveis de folga e a tabela inicial.

Resumo Matemtico
Pelo fato de suas principais aplicaes envolverem a tabela final, forneceremos agora uma expresso matemtica geral para o insight fundamental apenas em termos dessa tabela, usando notao matricial. Caso no tenha lido a Seo 5.2, voc precisa saber que os parmetros do modelo so dados pela matriz A = llaijll e pelos vetores b = llb;ll e e = llc)I, conforme exibido no incio desta seo. A nica notao necessria sintetizada e ilustrada na Tabela 5.10. Observe como o vetor t (representando a linha O) e a matriz T (representando as demais linhas) juntos correspondem tabela inicial da Tabela 5.9, ao passo que o vetor t* e a matriz T* em conjunto correspondem s linhas da tabela final da Tabela 5.9. Essa tabela tambm mostra esses vetores e matrizes divididos em trs partes: os coeficientes das variveis originais, os coeficientes das variveis de folga (nosso foco) e o lado direito. Enfatizando, a notao faz a distino entre partes da tabela inicial e da tabela final usando apenas um asterisco no ltimo caso. Para os coeficientes das variveis de folga (a parte do miolo) na tabela inicial da Tabela 5.10, observe o vetor Onulo na linha O e a matriz identidade 1 abaixo, que fornecem os pontos-chave para o insight fundamental. O vetor e a matriz na mesma posio da tabela final, y* e S*, desempenham ento um papel proeminente nas equaes para o insight fundamental. A e b na tabela inicial se transformam em A* e b* na tabela final. Para a alinha O da tabela final, os coeficientes das variveis de deciso so z* - e (de modo que o vetor z* seja aquilo que foi adicionado ao vetor dos coeficientes iniciais, -e) e o lado direito Z* represente o valor timo de Z. til neste ponto retomarmos um pouco Tabela 5.8 da Seo 5.2 e compar-la com a Tabela 5.10. Caso no tenha estudado previamente a Seo 5.2, voc precisar ler as definies de matriz base B e dos vetores x8 e c8 dados anteriormente nesta seo antes de analisar a Tabela 5.8. A notao para os componentes da tabela simplex inicial a mesma nas duas tabelas. O trecho inferior da Tabela 5.8 mostra qualquer tabela simplex posterior na forma matricial, ao passo que a parte inferior da Tabela 5.10 d a tabela.final na forma matricial. Note que a matriz B- 1 da Tabela 5.8 se encontra na mesma posio de S* na Tabela 5.10. Portanto, S* = B- 1 em que B a matriz-base para a soluo tima encontrada pelo mtodo simplex.

5.3
li

UM INSIGHT FUNDAMENTAL

193

TABELA 5.10 Notao genrica para as tabelas simplex inicial e final na forma matricial, ilustrado pelo problema da Wyndor Glass Co.

Tabela Inicial
Linha O:

= [- 3,

-5 : O, O, O : O]

= [-e

: O : O].

Demais linhas:

T =

1 oi1 o 2 iO 1 [O 3 2 o o
!

oi

O 12

4]
=[A: 1: b].

1 ! 18

Combinadas:

~] = [~e ~ ~l
=

1\
iO

Tabela final
Linha O: t* [O, O i O,

1, 1

i 36]

[z* - e : y* i Z*].

o o!
Demais linhas: T*
=

[ 1 o i o -t
i
S*

O 1

t -t ! 2]
~
O 6

ti2
i
b*

[A* i S* i b*].

Combinadas:

t*] = [z* - e [ T* A*

i y* l Z*J

Referindo-nos novamente Tabela 5.10, suponhamos agora que sejam fornecidos a tabela inicial, te Te apenas y* e S* da tabela final. Como essas informaes isoladamente podero ser usadas para calcular o restante da tabela final? A resposta se encontra na Tabela 5.8. Essa tabela inclui algumas informaes que no so diretamente relevantes para a nossa 1 discusso atual, a saber, como os prprios y* e S* podem ser calculados (y* = csB- e 1 S* = B- ) conhecendo-se o conjunto de variveis bsicas e, portanto, a matriz-base B para a soluo tima encontrada pelo mtodo simplex. Entretanto, a parte inferior dessa tabela tambm mostra como o restante da tabela final pode ser obtido a partir dos coeficientes das variveis de folga que so sintetizadas a seguir.
Insight Fundamental
(1) t* = t

(2) T*

+ y*T = [y*A - e: y*: y*b]. S*T = [S*A: S*: S*b].

Portanto, conhecendo-se os parmetros do modelo na tabela inicial (e, A e b) e apenas os coeficientes das variveis de folga da tabela final (y* e S*), essas equaes permitem calcular todos os demais nmeros da tabela final. J usamos essas duas equaes ao tratarmos da iterao 2 para o problema da Wyndor Glass Co. na subseo anterior. Particularmente, o lado direito da expresso para a linha O final para a iterao 2 simplesmente t + y*T e a segunda linha da expresso para as linhas 1 a 3 finais simplesmente S*T. Resumamos agora a lgica matemtica por trs das duas equaes para o insight fundamental. Para derivar a Eq. (2), lembre-se de que toda a seqncia de operaes algbricas executadas pelo mtodo simplex (exceto aquelas envolvendo a linha O) equivale a multiplicar previamente T por alguma matriz, chamada, por exemplo, M. Conseqentemente, T*
=

MT,

porm, agora precisamos identificar M. Escrevendo-se as partes correspondentes de T e T*, essa equao fica [A*! S* i b*]

= =

M [Ai 1 i b]

[MAi~iMb].

194

CAPTULO 5

TEORIA DO MTODO SIMPLEX

Pelo fato de o componente central (ou qualquer outro) dessas matrizes idnticas ter de ser o mesmo, segue que M = S* e, portanto, a Eq. (2) uma equao vlida. A Equao (l) derivada de modo similar notando-se que toda a seqncia de operaes algbricas envolvendo a linha O equivale a adicionar alguma combinao linear das linhas em T a t, o que equivale a adicionar a t algum vetor multiplicado por T. Representando-se esse vetor por v, temos ento
t* = t

+ vT,

no entanto, v ainda precisa ser identificado. Escrevendo-se as partes componentes de t e t* nos leva a
[z* - e l y* i Z*]

= [-e l Oi O] + v [Ai 1 l b] = [-e + vA l v l vb].

Igualando-se o componente central desses vetores idnticos resulta em v = y*, o que valida a Eq. (1).

Adaptaes a Outras Formas de Modelos


At ento, o insight fundamental foi descrito partindo-se do pressuposto de que o modelo original se encontra em nossa forma-padro, conforme descrito na Seo 3.2. Entretanto, a lgica matemtica anterior agora nos revela exatamente quais ajustes so necessrios para outras formas do modelo original. O ponto-chave a matriz identidade 1 na tabela inicial que se transforma em S* na tabela final. Se algumas variveis artificiais tiverem de ser introduzidas na tabela inicial para servir como variveis bsicas iniciais, ento o conjunto de colunas (ordenadas de forma apropriada) para todas as variveis bsicas iniciais (tanto variveis de folga quanto as artificiais) que forma 1 nessa tabela. (As colunas para quaisquer variveis excedentes so suprfluas.) As mesmas colunas na tabela final fornecem S* para a equao T* = S*T e y* para a equao t* = t + y*T. Se Ms fossem introduzidos na linha O preliminar como coeficientes das variveis artificiais, ento, o t para a equao t* = t + y*T a linha O da tabela inicial aps estes coeficientes no-zero para variveis bsicas serem eliminados algebricamente. Alternativamente, a linha O preliminar pode ser usada para t, porm esses Ms tero de ser subtrados ento da linha O final para fornecer y* (ver Problema 5.3-9).

Aplicaes
O insight fundamental tem uma srie de aplicaes importantes no campo da programao linear. Uma delas envolve o mtodo simplex revisado. Conforme descrito na seo anterior (ver Tabela 5.8), esse mtodo usou B- 1 e a tabela inicial para calcular todos os nmeros relevantes na tabela atual para todas as iteraes. Ele vai alm do insight fundamental, usando B- 1 para calcular o prprio y* como csB- 1 Outra aplicao envolve a interpretao dos preos-sombra (yj, yi, ... , y':,.), descritos na Seo 4.7. O insight fundamental revela que Z* (o valor de Z para a soluo tima)
Z* = y*b =

yib;,

i=I

de modo que, por exemplo,


Z* = Ob 1

+ tb2 + b3

para o problema da Wyndor Glass Co. Essa equao nos leva imediatamente interpretao dos valores yj dados na Seo 4.7. Outro grupo de aplicaes extremamente importantes envolve diversas tarefas de ps-otimalidade (tcnica de reotimizao, anlise de sensibilidade, programao linear paramtrica - descritas na Seo 4.7) que investiga o efeito de se realizar uma ou mais

5.4

CONCLUSES

195

modificaes no modelo original. Suponhamos, particularmente, que o mtodo simplex j tenha sido aplicado para obter uma soluo tima (bem como y* e S*) para o modelo original e depois foram processadas tais modificaes. Se tivssemos que aplicar exatamente a mesma seqncia de operaes algbricas tabela inicial revisada, quais seriam as modificaes resultantes na tabela final? Pelo fato de y* e S* no se modificarem, o insight fundamental revela a resposta imediatamente. Consideremos, por exemplo, a mudana de b2 = 12 para b2 = 13 conforme ilustrado na Figura 4.8 para o problema da Wyndor Glass Co. No necessrio encontrarmos a nova soluo tima (xi. x2 ) = (~, pois os valores das variveis bsicas na tabela final (b*) so revelados imediatamente pelo insight fundamental:

'f),

H at uma maneira mais fcil de se efetuar esse clculo, visto que a nica mudana no segundo componente de b (!::i.b2 = 1), que pr-multiplicado somente pela segunda coluna de S*, a modificao em b* pode ser calculada simplesmente como

de modo que os valores originais das variveis bsicas na tabela final (x3 = 2, x2 = 6, x 1 = 2) ficam agora

[~J~m+[JJ~m
Se qualquer um desses novos valores forem negativos e, portanto, inviveis, ento a tcnica da reotimizao descrita na Seo 4.7 teria de ser aplicada, partindo-se dessa tabela final revisada. Aplicando-se anlise incremental equao anterior para Z* tambm nos conduz imediatamente a

O insight fundamental pode ser aplicado investigando-se outras modificaes no modelo original de maneira muito semelhante; ele o ponto crucial do procedimento de anlise de sensibilidade descrito na ltima parte do Captulo 6. Voc tambm ver no prximo captulo que o insight fundamental desempenha papel fundamental na utilssima teoria da dualidade para a programao linear.

CONCLUSES
Embora o mtodo simplex seja um procedimento algbrico, ele se baseia em alguns conceitos geomtricos bastante simples. Esses conceitos permitem que se use o algoritmo para examinar apenas um nmero relativamente pequeno de solues BV antes de se chegar e identificar uma soluo tima. O Captulo 4 descreve como operaes algbricas elementares so usadas para executar aforma algbrica do mtodo simplex e, depois, como aforma tabela do mtodo simplex usa as operaes elementares em linhas do mesmo modo. Estudar o mtodo simplex nessas

196

CAPTULO 5 TEORIA DO MTODO SIMPLEX

formas uma boa maneira de se comear a aprender seus conceitos bsicos. Porm, essas formas do mtodo simplex no se constituem na maneira mais eficiente para e~ecuo em computador. Operaes matriciais so uma maneira rpida de combinar e executar operaes algbricas elementares ou operaes em linhas. Portanto, usando-se a forma matricial do mtodo simplex, o mtodo simplex revisado se constitui em um modo eficiente de adaptar o mtodo simplex para uso em computadores. A tabela simplex final inclui informaes completas sobre como ele pode ser reconstrudo algebricamente diretamente da tabela simplex inicial. Esse insight fundamental tem algumas aplicaes importantes, especialmente na anlise de ps-otimalidade.

REFERNCIAS SELECIONADAS
1. BERTSIMAS, D.; TSITSIKLIS, J. N. lntroduction to Linear Optimization, Belmont, MA: Athena Scientific, 1997.
2. DANTZIG, G. B.; THAPA, M. N. Linear Programming 1: lntroduction. Springer. Nova York, 1997. 3. DANTZIG, G. B.; THAPA, M. N. Linear Programming 2: Theory and Extensions. Nova York: Springer 2003.

4. PADBERG M.; ALEVRAS, D. Linear Optimization and Extensions, Nova York: Springer, 1999.
5. VANDERBEI, R. J. Linear Programming: Foundations and Extensions. 2. ed. Boston, MA: Kluwer Academic Publishers, 2001.

FERRAMENTAS DE APRENDIZADO PARA ESTE CAPTULO INCLUDAS NO CD-ROM


Exemplos Trabalhados:
Exemplos para o Captulo 5

Exemplo Demonstrativo no Tutor PO:


Insight Fundamental

Procedimentos Interativos no Tutorial IOR:


Mtodo Grfico Interativo Introduzindo ou Revisando um Modelo de Programao Linear Genrico Configurando para o Mtodo Simplex - Somente Interativo Resolvendo Problemas Interativamente pelo Mtodo Simplex

Procedimentos Automticos no Tutorial IOR


Resolvendo Problemas Automaticamente pelo Mtodo Simplex Mtodo Grfico e Anlise de Sensibilidade

Arquivos (Captulo 3) para Solucionar os Exemplos da Wyndor:


Arquivos em Excel Arquivo Lingo/Lindo Arquivo MPL/CPLEX

Glossrio para o Captulo 5


Ver o Apndice 1 para obter documentao sobre o software.

PROBLEMAS
Os smbolos esquerda de alguns problemas (ou parte deles) tm o seguinte significado: D: O exemplo demonstrativo correspondente listado na pgina 196 pode ser til. 1: Voc pode verificar parte de seus exerccios usando os procedimentos listados na pgina 196. Um asterisco no nmero do problema indica que pelo menos h uma resposta parcial no final do livro.
5.1-1.* Considere o seguinte problema:
4x1 + 2.x2 5 20 4x 1 - x 2 5 10 -xi+ 2.x2 5 5
e
X2 2::

0.

Maximizar sujeito a
2x1
X1

+ X2 5 6 + 2x2 5 6
O, O.

(a) Solucione esse problema graficamente. Identifique as solues FPE traando crculos em volta delas no grfico. (b) Crie uma tabela fornecendo cada uma das solues FPE e as equaes delimitadoras, soluo BV e variveis bsicas correspondentes. Calcule Z para cada uma dessas solues e use apenas essa informao para identificar a soluo tima. (e) Crie a tabela correspondente para as solues inviveis em pontos extremos etc. Identifique tambm os conjuntos de equaes delimitadoras e variveis no-bsicas que no conduzem a uma soluo.
5.1-4. Considere o seguinte problema:

e
X1

2::

X2 2::

Maximizar sujeito a
3x 1
X1

(a) Solucione esse problema graficamente. Identifique as solues FPE traando crculos em volta delas no grfico. (b) Identifique todos os conjuntos de equaes delimitadoras para esse problema. Para cada conjunto, encontre (se realmente existir) a soluo em ponto extremo correspondente e classifique-a como uma soluo FPE ou soluo invivel em ponto extremo. (e) Introduza variveis de folga de modo a escrever as restries funcionais na forma aumentada. Use essas variveis de folga para identificar a soluo bsica correspondente a ada uma das solues em pontos extremos encontradas no item (b). (d) Faa o seguinte para cada conjunto de duas equaes delimitadoras do item (b): Identifique a varivel indicativa para cada equao delimitadora. Exiba o conjunto de equaes do item (e) aps eliminar essas duas variveis indicativas (no-bsicas). A seguir, use o ltimo conjunto de equaes para encontrar a soluo para as duas variveis restantes (as variveis bsicas). Compare a soluo bsica resultante com a soluo bsica correspondente obtida no item (e). (e) Sem executar o mtodo simplex, use sua interpretao geomtrica (e a funo objetivo) para identificar o caminho (seqncia de solues FPE) que ela seguiria para chegar soluo tima. Usando uma por vez cada uma dessas solues FPE, identifique as seguintes decises que esto sendo tomadas para a prxima iterao: (i) qual equao delimitadora est sendo eliminada e qual est sendo acrescentada; (ii) qual varivel indicativa est sendo eliminada (a varivel bsica que entra) e qual est sendo acrescentada (a varivel bsica que sai).
5.1-2. Repita o Problema 5.1-1 para o modelo do Problema 3.1-5. 5.1-3. Considere o seguinte problema:

X1 -

+ x 2 + x 3 5 60 Xz + 2.x3 5 10 + X2 - X3 5 20

e
X1

2::

O,

X2 2::

O,

Aps a introduo de variveis de folga e, a seguir, a execuo de uma iterao completa do mtodo simplex, obtm-se a seguinte tabela simplex.
Coeficiente de:
ltera~o

Bsica Varivel

Lado
Eq.
(O)

x,

X2

X3

X4

X5

x6 Direito

z
1
X4

x, x6

(1) (2) (3)

1 o o o o 1 o o

-1 4 -1 2

o
1

-5
2 -3

o o

2 -3 1 -1

o o o
1

20 30 10 10

(a) Identifique a soluo FPE obtida na iterao 1.


(b) Identifique as equaes limite de restrio que definem essa

soluo FPE.
5.1-5. Considere o problema de programao linear de trs variveis mostrado na Figura 5.2. (a) Construa uma tabela como a Tabela 5.1, fornecendo o conjunto de equaes delimitadoras para cada soluo FPE. (b) Quais so as equaes delimitadoras para a soluo invivel em ponto extremo (6, O, 5)? (e) Identifique um dos sistemas de trs equaes limite de restrio que no leve nem a uma soluo FPE nem a uma soluo invivel em ponto extremo. Explique por que isso acontece para esse sistema.

Maximizar sujeito a
-3x1

X2 5

198

CAPTULO 5

TEORIA DO MTODO SIMPLEX unindo x* e x** so viveis e Z tem o mesmo valor em todos esses pontos. (e) Se o problema tiver n variveis (antes do aumento), ento a soluo simultnea de qualquer conjunto de n equaes limite de restrio uma soluo FPE. 5.1-11. Considere a forma aumentada de problemas de programao linear que possuam solues viveis e uma regio de solues viveis limitada. Classifique cada uma das afirmaes seguintes como verdadeira ou falsa e, a seguir, justifique sua resposta referindo-se a afirmaes especficas (incluindo citao da pgina) presentes neste captulo. (a) Tem de existir pelo menos uma soluo tima. (b) Uma soluo tima deve ser uma soluo BV. (e) O nmero de solues BV finito. 5.1-12.* Reconsidere o modelo do Problema 4.6-9. Agora lhe fornecida a informao de que as variveis bsicas na soluo tima so x 2 e x 3 . Use essa informao para identificar um sistema de trs equaes limite de restrio cuja soluo simultnea tem de ser essa soluo tima. A seguir, resolva o sistema de equaes para obter tal soluo. 5.1-13. Reconsidere o Problema 4.3-5. Agora use as informaes dadas e a teoria do mtodo simplex para identificar um sistema de trs equaes limite de restrio (emxJ. x2 ex3 ) cuja soluo simultnea tem de ser essa soluo tima, sem aplicar o mtodo simplex. Resolva o sistema de equaes para obter a soluo tima. 5.1-14. Considere o seguinte problema: Maximizar sujeito a
2x1 X1

5.1-6. Considere o seguinte problema: Minimizar sujeito a


2X1

-3x 1
X1

+ X2 + 2x2 + X2

2: lQ
::;

2:

6 6

e
X2

2:

O.

(a) Identifique os dez conjuntos de equaes delimitadoras para esse problema. Para cada um deles, encontre (se realmente existir uma) a soluo em ponto extremo correspondente e classifique-a como uma soluo FPE ou ento como uma soluo invivel em ponto extremo. (b) Para cada soluo em ponto extremo, fornea a soluo bsica correspondente e seu conjunto de variveis no-bsicas. 5.1-7. Reconsidere o modelo do Problema 3.1-4. (a) Identifique os 15 conjuntos de equaes delimitadoras para esse problema. Para cada um deles, encontre (se realmente existir uma) a soluo em ponto extremo correspondente e classifique-a como uma soluo FPE ou ento como uma soluo invivel em ponto extremo. (b) Para cada soluo em ponto extremo, fornea a soluo bsica correspondente e seu conjunto de variveis no-bsicas. 5.1-8. Cada uma das afirmaes a seguir verdadeira na maioria das circunstncias, mas nem sempre. Em cada caso, indique quando a afirmao no ser verdadeira e o porqu. (a) A melhor soluo FPE uma soluo tima. (b) Uma soluo tima uma soluo FPE. (e) Uma soluo FPE a nica soluo tima se nenhuma de suas solues FPE for melhor (medidas pelo valor da funo objetivo). 5.1-9. Considere a forma original (antes do aumento) de um problema de programao linear com n variveis de deciso (cada uma delas com uma restrio de no-negatividade) em restries funcionais. Classifique cada uma das afirmaes seguintes como verdadeira ou falsa e, a seguir, justifique sua resposta com referncias especficas (inclusive, citao de pgina) ao material do presente captulo. (a) Se uma soluo vivel for tima, ela obrigatoriamente uma soluo FPE. (b) O nmero de solues FPE , pelo menos
(m

+ Xz + 2x3 + Xz + X3

::; ::;

4 3

e
X2

2:

O,

+ n)! m!n!

(e) Se uma soluo FPE tiver solues FPE que so melhores (conforme medies em Z), ento uma destas solues FPE deve ser uma soluo tima. 5.1-10. Classifique cada uma das seguintes afirmaes sobre problemas de programao linear como verdadeira ou falsa e, a seguir, justifique sua resposta. (a) Se uma soluo vivel for tima, mas no por uma soluo FPE, ento existem infinitas solues timas. (b) Se o valor da funo objetivo for igual em dois pontos viveis x* e x**, ento todos os pontos sobre o segmento de reta

Faamos com x 4 e x 5 sejam as variveis de folga para as respectivas restries funcionais. Iniciando-se com essas duas variveis como as variveis bsicas para a soluo BV inicial, agora lhe dada a informao de que o mtodo simplex procede da seguinte maneira para obter a soluo tima em duas iteraes: (!)Na iterao 1, a varivel bsica que entra x 3 e a varivel bsica que sai x 4 ; (2) na iterao 2, a varivel bsica que entra x2 e a varivel bsica que sai x 5 . (a) Desenvolva um desenho tridimensional da regio de solues viveis para esse problema e mostre a trajetria seguida pelo mtodo simplex. (b) D uma interpretao geomtrica do porqu o mtodo simplex seguiu essa trajetria. (e) Para cada um dos dois lados da regio de solues viveis percorrida pelo mtodo simplex, d a equao de cada um dos limites de restrio sobre o qual ela cai e, a seguir, d a equao limite de restrio adicional em cada extremidade. (d) Identifique o conjunto de equaes delimitadoras para cada uma das trs solues FPE (inclusive a inicial) obtidas pelo mtodo simplex. Use as equaes delimitadoras para encontrar essas solues.

PROBLEMAS
(e) Para cada soluo FPE obtida no item (d), fornea a soluo BV correspondente e seu conjunto de variveis no-bsicas. Explique como essas variveis no-bsicas identificam as equaes delimitadoras obtidas no item (d).

199
so adjacentes entre si. A seguir use os conjuntos de variveis no-bsicas do item (b) para demonstrar a mesma coisa.

5.1-20. A frmula para a reta que passa por (2, 4, 3) e (4, 2, 4) na Figura 5.2 pode ser escrita como
(2, 4, 3)

5.1-15. Considere o seguinte problema:


Maximizar sujeito a
X1

+ a[(4, 2, 4) - (2, 4, 3)]

(2, 4, 3)

+ a(2, -2, 1),

em que O ::::; a ::::; l apenas para o segmento de reta entre esses pontos. Aps aumentar com as variveis de folga x 4 , x 5 , x 6 , x 7 para as respectivas restries funcionais, essa frmula fica

X1

+ X2 + X3::::; 20 + 2x2 + X3 ::::; 30

(2, 4, 3, 2, O, O, O)+ a(2, -2, 1, -2, 2, O, O).


Use essa frmula diretamente para responder cada uma das seguintes perguntas e, portanto, relacionar a lgebra e a geometria do mtodo simplex medida que ele passa por uma iterao deslocando-se de (2, 4, 3) para (4, 2, 4). dada a seguinte informao: ele se desloca ao longo desse segmento de reta. (a) Qual a varivel bsica que entra? (b) Qual a varivel bsica que sai? (e) Qual a nova soluo BV?

e
X2 ~O,

Faamos que x 4 e x 5 sejam as variveis de folga para as respectivas restries funcionais. Iniciando-se com essas duas variveis como as variveis bsicas para a soluo BV inicial, agora lhe dada a informao de que o mtodo simplex procede da seguinte maneira para obter a soluo tima em duas iteraes: (1) Na iterao 1, a varivel bsica que entra x 2 e a varivel bsica que sai x 5 ; (2) na iterao 2, a varivel bsica que entra x 1 e a varivel bsica que sai x 4 . Siga as instrues do Problema 5.1-14 para essa situao.

5.1-16. Inspecionando-se a Figura 5.2, explique por que a Propriedade lb para solues FPE vlida para o presente problema se ela tem a seguinte funo objetivo. (a) Maximizar Z = x 3 . (b) Maximizar Z = -xi + 2x3 . 5.1-17. Considere o problema de programao linear com trs variveis mostrado na Figura 5.2. (a) Explique em termos geomtricos por que o conjunto de solues que satisfaz qualquer restrio individual um conjunto convexo conforme a definio do Apndice 2. (b) Usando a concluso do item (a) para explicar por que toda a regio de solues viveis (o conjunto de solues que simultaneamente satisfaz qualquer restrio) um conjunto convexo. 5.1-18. Suponha que o problema de programao linear com trs \" ariveis dado na Figura 5.2 tem a seguinte funo objetivo
Maximizar Sem usar a lgebra do mtodo simplex, aplique apenas sua lgica geomtrica (inclusive escolhendo o lado da mxima taxa de aumento de Z) para determinar e explicar o caminho que ele seguiria na Figura 5.2 da origem at se atingir a soluo tima.

5.1-21. Considere um problema de programao matemtica que possui a regio de solues viveis mostrada no grfico, no qual os seis pontos correspondem a solues FPE. O problema tem uma funo objetivo linear e as duas retas tracejadas so retas de funo objetivo passando pela soluo tima (4, 5) e a segunda melhor soluo FPE (2, 5). Note que a soluo no-tima (2, 5) melhor que ambas suas solues FPE adjacentes que viola a Propriedade 3 na Seo 5 .1 para solues FPE na programao linear. Demonstre que esse problema no pode ser um problema de programao linear construindo a regio de solues viveis que resultaria se os seis segmentos de reta sobre o contorno fossem limites de restrio para restries de programao linear.

Xz

'
5

''

''

'' ''

''

''

''

'

5.1-19. Considere o problema de programao linear com trs variveis mostrado na Figura 5.2. a) Construa uma tabela como a Tabela 5.4, fornecendo a varivel indicativa para cada equao limite de restrio e restrio original. <b) Para a soluo FPE (2, 4, 3) e suas trs solues FPE adjacentes (4, 2, 4), (O, 4, 2) e (2, 4, O), construa uma tabela como a Tabela 5.5, mostrando as equaes delimitadoras, soluo BV e variveis no-bsicas correspondentes. e) Use os conjuntos de equaes delimitadoras do item (b) para demonstrar que (4, 2, 4), (O, 4, 2) e (2, 4, O) so, de fato, adjacentes a (2, 4, 3), mas que nenhuma destas trs solues FPE

X]

5.2-1. Considere o seguinte problema:


Maximizar sujeito a

200 xi 4x1 Xi
e
j = l, ... , 5.

CAPTULO S

TEORIA DO MTODO SIMPLEX Faamos que x4 , x 5 e x 6 representem as variveis de folga para as respectivas restries. Aps aplicar o mtodo simplex, parte da tabela simplex final a seguinte:

+ 2.x2 + 3x3 + 3x4 ::; 180 + 3x2 + 2.x3 + x4 + x 5 ::; 270 + 3xz + x4 + 3x5 ::; 180

(recurso 1) (recurso 2) (recurso 3)

Varivel Bsica

Coeficiente de:
Eq.
(O)
(1) (2) (3)

z
1

Lado
X1 X2 X3 X4 Xs

x6 Direito

dada a informao de que as variveis bsicas na soluo tima so x 3, xi e x 5 e que

z
Xz

1 1

o o
1

3 1 2 4 l [ o l 3

]-]

1 [ 11 27 -6 2

-3 9 -3

-~]10

x6
X3

o o o

o
1

3 1 2

(a) Use a informao dada para identificar a soluo tima. (b) Use a informao dada para identificar os preos-sombra para os trs recursos.
I

(a) Use o insight fundamental apresentado na Seo 5.3 para identificar os nmeros faltantes na tabela simplex final. Mostre seus clculos. (b) Identifique as equaes delimitadoras da soluo FPE correspondente soluo BV tima na tabela simplex final.
D

5.2-2*. Usando o mtodo simplex revisado, passo a passo, resolva o seguinte problema. Maximizar

5.3-2. Considere o seguinte problema: Maximizar

sujeito a sujeito a

+ 3x2 + 3x3 + 2.x4 + 2.x5 ::; 20 3xi + 5xz + 4x3 + 2.x4 + 4x5 ::; 30
2.xi

4Xi 3x1
e

+ 2x2 + X3 + X4 ::; 5 + Xz + 2.x3 + X4 ::; 4

e
j = l, 2, 3, 4, 5.

5.2-3. Reconsidere o Problema 5.1-1. Para a seqncia das solues FPE identificadas no item (e), construa a matriz-base B para cada uma das solues BV correspondentes. Para cada uma delas, inverta B manualmente, use este B-i para calcular a soluo atual e, a seguir, realize a prxima iterao (ou demonstre que a soluo atual tima).
I 5.2-4. Usando o mtodo simplex revisado, passo a passo, resolva o modelo dado no Problema 4.1-5.
I

Faamos que x 5 e x 6 representem as variveis de folga para as respectivas restries. Aps aplicar o mtodo simplex, parte da tabela simplex final mostrada a seguir:

Coeficiente de: Varivel Bsica


Eq.
(O)
(1) (2)

z
1

Lado
X1 X2 X3 X4 X5

x6 Direito
1 -1 2

z
X2 X4

1 1 -1

5.2-5. Usando o mtodo simplex revisado, passo a passo, resolva o modelo dado no Problema 4.7-5.

o o

5.2-6. Usando o mtodo simplex revisado, passo a passo, resolva o cada um dos modelos a seguir: (a) Modelo dado no Problema 3.1-5. (b) Modelo dado no Problema 4.7-6.

o 5.3-1 *. Considere o seguinte problema: Maximizar sujeito a

(a) Use o insight fundamental apresentado na Seo 5.3 para identificar os nmeros faltantes na tabela simplex final. Mostre seus clculos. (b) Identifique as equaes delimitadoras da soluo FPE correspondente soluo BV tima na tabela simplex final.
D

5.3-3. Considere o seguinte problema: Maximizar

2xi - 2x2 + 3x3 ::; 5 XJ + Xz - X3 ::; 3 X1 - Xz + X3 ::; 2


e

sujeito a

2x1

+ 2x2 + 2x3 ::; 2

3 -4xi - 2x2 - 2x3 ::; 3

201

(a) Use o insight fundamental apresentado na Seo 5.3 para iden-

e
Xz 2::

O,

Faamos que x 4 , x 5 e x 6 representem as variveis de folga para as respectivas restries. Aps aplicar o mtodo simplex, parte da tabela simplex final a seguinte:

tificar os nmeros faltantes na tabela simplex atual. Mostre seus clculos. (b) Indique qual desses nmeros faltantes seria gerado pelo mtodo simplex revisado de modo a realizar a prxima iterao. (e) Identifique as equaes delimitadoras da soluo FPE correspondente soluo BV na tabela simplex atual. o 5.3-5. Considere o seguinte problema: Maximizar Z = c 1x 1 + c2x2 + c:yX3 ,

Coeficiente de: Varivel Bsica

sujeito a
Xs

Eq.
(O)
(1)

z
1

x,

Xz

X3

X4

Lado x6 Direito
2 2 4
-1

X1 2x1

+ 2Xz +
+
Xz

X3 $

+ 3x3 :S 2b
Xz 2::

z
Xs
X3 X1

2
1

o
1

(2) (3)

o o o

O,

-2 1

o o

Use o insight fundamental apresentado na Seo 5.3 para identificar os nmeros faltantes na tabela simplex final. Mostre seus clculos. o 5.3-4. Considere o seguinte problema: Maximizar sujeito a
8x 1 + 2x2 + 3x3 s 200 4x 1 + 3x2 :S 100 2X1 + X3 :'.S 50 X3 :'.S 20

Note que os valores no foram atribudos aos coeficientes na funo objetivo (e" c2 , c3 ) e que a nica especificao para o lado direito das restries funcionais que a segunda (2b) o dobro da primeira (b). Suponha agora que seu chefe tenha inserido sua melhor estimativa dos valores de ci, c 2 , c 3 e b sem inform-lo e depois tenha executado o mtodo simplex. Voc recebe a tabela simplex final resultante indicada a seguir (em que x4 e x 5 so as variveis de folga para as respectivas restries funcionais), porm voc incapaz de ler o valor de Z*.
Coeficiente de: Varivel Bsica

Eq.

z
1

x,
7

Xz

X3

X4

Xs

Lado Direito
Z*

z
X2

(O)
(1)
(2)

10 1 5 3 5

o
1

o o
1

3 5 3 5 1 5

4
5
1

e
X1 2::

o o

O,
X3

5 2 5

Faamos que x4 , x 5 , x 6 e x 7 representem, respectivamente, da primeira quarta varivel de folga. Suponha que aps uma srie de iteraes do mtodo simplex, parte da tabela simplex atual seja a seguinte:
Coeficiente de:

(a) Use o insight fundamental apresentado na Seo 5.3 para iden-

Varivel Bsica

Eq.
(O)

z
1

x,

Xz

X3

X4

X5

x6

X7

Lado Direito

z
X1

9 4 3 16
1

tificar o valor de (ci, cz, c3 ) que foi usado. (b) Use o insight fundamental apresentado na Seo 5.3 para identificar o valor de b que foi usado. (e) Calcule o valor de Z* de duas maneiras, em que uma delas usa os resultados do item (a) e a outra utiliza o resultado do item (b). Mostre os dois mtodos para encontrar Z*.
5.3-6. Para a iterao 2 do exemplo da Seo 5.3, foi mostrada a seguinte expresso:

2
-8
1 2 1

o o o
1

o o o o
1

(1)
(2)

o o o o

Linha final O= [ -3,

-5 O, O, O: O]
+[O,
3

X2

x6
X7

(3)
(4)

4 3 8

z,

-1
4

li[:

o
2 2

1 o o 1 o o o

~ ~~
1

!41
.

o o

Derive essa expresso combinando as operaes algbricas (na forma matricial) para as iteraes 1 e 2 que afetam a linha O.

202

CAPTULO 5

TEORIA DO MTODO SIMPLEX

5.3-7. A maior parte da descrio do insight fundamental apresentado na Seo 5.3 supe que o problema se encontre em nossa forma-padro. Agora considere cada uma das demais formas mostradas a seguir, em que os ajustes adicionais no passo de inicializao so aqueles apresentados na Seo 4.6, incluindo o emprego de variveis artificiais e do mtodo do "grande nmero" quando apropriado. Descreva os ajustes resultantes no insight fundamental. (a) Restries de igualdade. (b) Restries funcionais na forma 2". (e) Lados direitos negativos (d) Variveis com permisso para ser negativas (sem nenhum limite inferior) 5.3-8. Reconsidere o modelo do Problema 4.6-5. Use variveis artificiais e o mtodo "do grande nmero" para construir a primeira tabela simplex completa para o mtodo simplex e, a seguir, identifique as colunas que contero S* para aplicao do insight fundamental na tabela final. Explique por que essas colunas so as apropriadas. 5.3-9. Considere o seguinte problema: Minimizar sujeito a
X1

(a) Baseado na tabela anterior, use o insight fundamental apresentado na Seo 5.3 para identificar os nmeros faltantes na tabela simplex final. Mostre seus clculos. (b) Examine a lgica matemtica apresentada na Seo 5.3 para validar o insight fundamental (ver as equaes T* = MT e t* = t + vT e as derivaes subseqentes de M e v). Essa lgica supe que o modelo original se adapte nossa formapadro, ao passo que o problema atual no. Mostre como, com pequenos ajustes, essa mesma lgica se aplica ao presente problema quando t a linha O e T corresponde s linhas 1 e 2 na tabela simplex inicial dada anteriormente. Derive M e v para esse problema. (e) Ao aplicar a equao t* = t + vT, outra opo usar t = [2, 3, 2, O, M, O, M, O] que a linha O preliminar antes da eliminao algbrica dos coeficientes no-zero das variveis bsicas iniciais :X5 e :X7 . Repita o item (b) para essa equao com este novo t. Aps derivar o novo v, mostre que essa equao leva mesma linha O final para esse problema como a equao derivada no item (b). (d) Identifique as equaes delimitadoras da soluo FPE correspondentes soluo BV tima na tabela simplex final. 5.3-10. Considere o seguinte problema:

+ 4xz + 2x3
2x2

2".

3x 1 +

2x3 2".

8 6

Maximizar sujeito a
-2x1

e
X1 2".

O,
e

3x 1

+ 2x2 + X3 ::; lQ + x2 - x3 ::; 20

Faamos que x4 e x 6 sejam, respectivamente, as variveis excedentes para a primeira e segunda restries. Faamos que :X5 e :X7 sejam as variveis artificiais correspondentes. Aps voc fazer os ajustes descritos na Seo 4.6 para essa forma de modelo ao usar o mtodo "grande nmero", a tabela simplex inicial pronta para aplicar o mtodo simplex a seguinte:
Coeficiente de: Varivel Bsica Eq. Lado

X1 2".

O,

Xz 2".

O,

z
o o

x,

X2

X3

X4

Jis x6

X7 Direito

z
xs x,

(O) -1
(1) (2)

-4M+ 2 -6M+ 3 -2M + 2 M 1 4 2 2 -1

o
1

o
1

-14M

oo
-1

o o

8 6

Aps aplicar o mtodo simplex, parte da tabela simplex final a seguinte:


Coeficiente de: Varivel Bsica Eq.

z
-1

X1 X2 X3

X4

Xs
M-0,5 0,3 -0,2

x6

X7
M-0,5 -0,l 0,4

Lado Direito

As variveis bsicas na soluo tima so x 1 e x 3 (a) Introduza variveis de folga e, a seguir, use a informao anterior para encontrar a soluo tima diretamente pela eliminao gaussiana. (b) Estenda o trabalho do item (a) para encontrar os preos-sombra. (e) Use as informaes dadas para identificar as equaes delimitadoras da soluo FPE tima e, a seguir, resolva essas equaes para obter a soluo tima. (d) Construa a matriz base B para a soluo BV tima, inverta B manualmente e, a seguir, use B - i para encontrar a soluo tima e os preos-sombra y*. Depois aplique o teste de otimalidade para o mtodo simplex revisado a fim de verificar que essa soluo tima. (e) Dados B- 1 e y* do item (d), use o insight fundamental apresentado na Seo 5.3 para construir a tabela simplex final completa.

z
X2

(O)
(1)

x,

(2)

o o

C A

LO

Teoria da Dualidade e Anlise de Sensibilidade

ma das descobertas mais importantes nos primrdios do desenvolvimento da programao linear foi o conceito da dualidade e suas diversas ramificaes importantes. Essa descoberta revelou que todo problema de programao linear tinha associado a ele outro problema de programao linear chamado dual. As relaes entre o problema dual e o problema original (denominado primai) provam ser extremamente teis de uma srie de maneiras. Por exemplo, em breve, voc ver que os preos-sombra descritos na Seo 4.7, na verdade, so fornecidos pela soluo tima para o problema dual. Tambm iremos descrever muitas outras aplicaes inestimveis da teoria da dualidade neste captulo. Uma das questes-chave da teoria .da dualidade reside na interpretao e implementao da anlise de sensibilidade. Conforme j mencionado nas Sees 2.3, 3.3 e 4.7, a anlise de sensibilidade uma parte muito importante de quase todo estudo de programao linear. Pelo fato de a maioria dos valores dos parmetros usados no modelo original ser apenas estimativas de condies futuras, o efeito na soluo tima, caso outras condies prevaleam, precisa ser investigado. Alm disso, os valores de certos parmetros (como as quantidades de recursos) podem representar decises gerenciais em cujo caso a escolha dos valores dos parmetros pode ser a principal questo a ser estudada, o que pode ser feito por meio da anlise de sensibilidade. Para maior clareza, as trs primeiras sees discutem a teoria da dualidade sob a hiptese de que o problema de programao linear primai se encontra em nossa forma-padro (mas sem nenhuma restrio de que os valores b; tenham de ser positivos). Outras formas so ento discutidas na Seo 6.4. Comeamos o captulo introduzindo a essncia da teoria da dualidade e suas aplicaes. A seguir, descrevemos a interpretao econmica do problema dual (Seo 6.2) e nos aprofundamos nas relaes entre os problemas dual e prima} (Seo 6.3). A Seo 6.5 se concentra no papel da teoria da dualidade na anlise de sensibilidade. O procedimento bsico para a anlise de sensibilidade (que se baseia no insight fundamental da Seo 5.3) sintetizado na Seo 6.6 e ilustrado na Seo 6.7. A Seo 6.8 se concentra em como usar planilhas para realizao de anlise de sensibilidade de maneira objetiva.

(:'~41

A ESSNCIA DA TEORIA DA DUALIDADE


Dada nossa forma-padro para o problema primai esquerda (talvez, aps converso, a partir de outra forma), seu problema dual tem a forma mostrada direita.

203

204

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE


Problema Primai Problema Dual

Maximizar sujeito a

z=

)=1

CjXj,

Minimizar sujeito a

W=

L b;y;,
i=l

j~l

11XJ::::;

bj,

para i = 1, 2, ... , m

i=l

iJYi

~ Cj,

paraj = 1, 2, ... , n

para j = 1, 2, ... , n.

Y;

2:

O,

parai= 1, 2, ... , m.

Portanto, com o problema primai na forma de maximizao, o problema dual, ao contrrio, se encontra na forma de minimizao. Alm disso, o problema dual usa exatamente os mesmos parmetros do problema primai, porm, em posies diferentes, conforme sintetizado a seguir.

1. Os coeficientes na funo objetivo do problema primai so os lados direitos das restries funcionais no problema dual. 2. Os lados direitos das restries funcionais no problema primai so os coeficientes na funo objetivo do problema dual. 3. Os coeficientes de uma varivel nas restries funcionais do problema primai so os coeficientes em uma restrio funcional do problema dual.
Para enfatizar a comparao, vejamos dois problemas iguais na notao matricial (conforme introduzido no incio da Seo 5.2) em que e e y = [yi. y 2 , ... , Yml so vetores-linha, porm b ex so vetores-coluna.
Problema Primai Problema Dual

Maximizar sujeito a
Ax -s b

Z = ex,

Minimizar sujeito a
yA
2:

w =yb,
e

e
X

e
2:

O.

y 2: O.

Para fins ilustrativos, os problemas primai e dual para o exemplo da Wyndor Glass Co. da Seo 3.1 so mostrados na Tabela 6.1 tanto na forma algbrica quanto na forma matricial. A tabela primai-dual para programao linear (Tabela 6.2) tambm auxilia adestacar a correspondncia entre os dois problemas. Ela mostra todos os parmetros da programao linear (au, b; e c) e como eles so usados para construir os dois problemas. Todos os cabealhos para o problema primai so horizontais, ao passo que os cabealhos para o problema dual so lidos virando-se o livro a 90 no sentido horrio. Para o problema primai, cada coluna (exceto a coluna Lado Direito) fornece os coeficientes de uma nica varivel nas respectivas restries e, depois, na funo objetivo, enquanto cada linha (exceto a linha mais abaixo) atribui os parmetros para uma nica restrio. Para o problema dual, cada linha (exceto a linha Lado Direito) fornece os coeficientes de uma nica varivel nas respectivas restries e, depois, na funo objetivo, ao passo que cada coluna (exceto aquela mais direita) d os parmetros para uma nica restrio. Alm disso, a coluna Lado Direito proporciona os lados direitos para o problema primai e os coeficientes da funo objetivo para o problema dual, enquanto a linha mais abaixo d os coeficientes da funo objetivo para o problema primai e os lados direitos para o problema dual. Conseqentemente, temos agora os seguintes inter-relacionamentos entre os problemas primai e dual.

6.1 A ESSNCIA DA TEORIA DA DUALIDADE

205

TABELA 6.1 Problemas primai e dual para o exemplo da Wyndor Glass Co.
Problema Primai na Forma Algbrica Problema Dual na Forma Algbrica

Maximizar sujeito a

Z= 3x1 +5xi,

Minimizar sujeito a

x,

4
e

y,

2x2 s 12
3x1

+ 2x2

s 18

x, 20,
Problema Primai na Forma Matricial

y, 20,
Problema Dual na Forma Matricial

Maximizar sujeito a

Minimizar

sujeito a

[~. Yn yJ [: ~l
e e

> [3, 5]

TABELA 6.2 Tabela primai-dual para programao linear, ilustrada pelo exemplo da Wyndor Glass Co.
(a) Caso Geral

Problema Primai Coeficiente de: Lado Direito

e .!! Gi
~"CI

..
Cll

Ym
VI VI

e,
Coeficientes para a Funo Objetivo (Maximizar)

(b) Exemplo da Wyndor Glass Co.


X1 X2

y, Y2
Y3

o
3
VI

o
2 2 VI

s 4 s 12 s 18

206

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

1. Os parmetros para uma restrio (funcional) em qualquer um dos problemas so os coeficientes de uma varivel em outro problema. 2. Os coeficientes na funo objetivo em qualquer um dos problemas so os lados direitos para o outro problema. Portanto, h uma correspondncia direta entra essas entidades nos dois problemas, conforme sintetizado na Tabela 6.3. Essas correspondncias so a chave para algumas das aplicaes da teoria da dualidade, inclusive a anlise de sensibilidade. A seo de Exemplos Trabalhados do CD-ROM fornece outro exemplo de emprego da tabela primal-dual para construo do problema dual para um modelo de programao linear.

Origem do Problema Dual


A teoria da dualidade se baseia diretamente no insight fundamental (particularmente no que tange linha (0) apresentada na Seo 5.3. Para verificar o porqu, continuamos a usar a notao introduzida na Tabela 5.10 para a linha O da tabela final, exceto pela substituio de Z* por W* e eliminao dos asteriscos de z* e y* ao se referir a qualquer tabela. Assim, em qualquer iterao do mtodo simplex para o problema primal, os nmeros atuais na linha O sero representados conforme mostrados na tabela (parcial) dado na Tabela 6.4. Para os coeficientes de xi, xz, ... , Xm lembre-se de que z = (zi. z2 , .. , Zn) representa o vetor que o mtodo simplex adicionou ao vetor dos coeficientes iniciais, -e, no processo de chegar-se tabela atual. (No confunda z com o valor da funo objetivo Z.) De modo similar, j que os coeficientes iniciais de Xn+ 1' Xn+z, ... , Xn+m na linha O so todos O, y = (yi, yz, ... , Ym) representa o vetor que o mtodo simplex adicionou a esses coeficientes. Lembre-se tambm [ver Eq. (1) na subseo "Resumo Matemtico" da Seo 5.3] de que o insight fundamental conduziu aos seguintes inter-relacionamentos entre essas quantidades e os parmetros do modelo original. W= yb = z = yA,

b;y;, portanto

i=l

z1 =

L a;1Y;,
i=I

para j = 1, 2, . . . , n.

Para ilustrar esses inter-relacionamentos por meio do exemplo da Wyndor Glass Co., a primeira equao d W = 4y 1 + 12y2 + 18y3 , que simplesmente a funo objetivo para o problema dual mostrado no quadro superior direito da Tabela 6.1. O segundo conjunto de equaes fornece z1 = y 1 + 3y 3 e z2 = 2y2 + 2y 3 , que so os lados esquerdos das restries funcionais para esse problema dual. Portanto, subtraindo-se os lados direitos dessas restries 2: (c 1 = 3 e c2 = 5), (z 1 - c 1) e (z2 - c 2 ) podem ser interpretados como as variveis excedentes para essas restries funcionais.

TABELA 6.3 Correspondncia entre entidades nos problemas primai e dual


Um Problema Outro Problema

Restrio i <---------> Varivel i Funo objetivo +------7 Lados direi tos

TABELA 6.4 Notao para as entradas na linha O de uma tabela simplex


Coeficiente de: Iterao
Qualquer

Varivel Bsica

Eq.
(O)

z
1

X1

Xz
Z2 - C2

... ...

Xn
Zn Cn

Xn+l

Xn+2 Y2

... ...

Xn+m Ym

Lado Direito

z, - c1

y,

6.1 A ESSNCIA DA TEORIA DA DUALIDADE

O ponto-chave restante expressar o que o mtodo simplex tenta fazer (de acordo com o teste de otinialidade) em termos desses smbolos. Especificamente, ele procura um conjunto de variveis bsicas e a soluo BV correspondente de modo que todos os coeficientes na linha O sejam no-negativos. Ele ento pra o processo, ficando com essa soluo tima. Usando a notao da Tabela 6.4, esse objetivo expresso simbolicamente por:

Condio para a Otimalidade


ZJ - Cj 2::

Y;

2::

para j = 1, 2, . . . , n, para i = 1, 2, ... , m.

Aps substituirmos a expresso anterior por z 1, a condio para otimalidade diz que o mtodo simplex pode ser interpretado como procurando valores para Yi. y 2 , , Ym tais que

W=

b;Y;,

i=l

sujeito a

I
e

ijYi

Cj,

paraj = 1, 2, ... , n

i=t

Y;

2':

O,

para i

1, 2, ... , m.

Porm, exceto pela falta de um objetivo para W, esse problema precisamente o problema dual! Para completar a formulao; exploremos agora qual deve ser o objetivo faltante. Uma vez que W apenas o valor atual de Z e j que o objetivo para o problema primai maximizar Z, uma primeira reao natural que W tambm deva ser maximizado. Entretanto, isso no correto pela seguinte razo sutil: as nicas solues viveis para esse novo problema so aquelas que satisfazem a condio para otimalidade para o problema primai. Portanto, ela a nica soluo vivel para esse novo problema. Como conseqncia, o valor timo de Z no problema primai o valor vivel mnimo de W no novo problema, de modo que W deva ser minimizado. (A justificativa completa para essa concluso fornecida pelos inter-relacionamentos que desenvolvemos na Seo 6.3.) Acrescentar esse objetivo de minimizar W fornece o problema dual completo. Conseqentemente, o problema dual pode ser visto como uma reafirmao em termos de programao linear do objetivo do mtodo simplex, a saber, chegar a uma soluo para o problema dual que satisfaa o teste de otimalidade. Antes desse objetivo ter sido atingido, o y correspondente na linha O (coeficientes de variveis de folga) da tabela atual deve ser invivel para o problema dual. Entretanto, aps o objetivo ter sido alcanado, o y correspondente tem de ser uma soluo tima (chamada y*) par~o problema dual, pois ela uma soluo vivel que atende condio de valor vivel mnimo de W. Essa soluo tima (yf, yf, ... , y:!;) fornece ao problema primai os preos-sombra que foram descritos na Seo 4.7. Alm disso, esse W timo simplesmente o valor timo de Z, de modo que os valores timos da funo objetivo so iguais para ambos os problemas. Esse fato tambm implica que ex ::::::: yb para qualquer x e y que sejam viveis, respectivamente, para os problemas primai e dual. Para fins ilustrativos, o lado esquerdo da Tabela 6.5 mostra a linha O para as iteraes respectivas quando o mtodo simplex aplicado ao exemplo da Wyndor Glass Co. Em cada caso, a linha O dividida em trs partes: os coeficientes das variveis de deciso (xi. x 2 ), os coeficientes das variveis de folga (x3 , x 4 , x 5 ) e o lado direito da equao (valor de Z). J que os coeficientes das variveis de folga fornecem os valores correspondentes das variveis duais (yi, y 2 , y 3 ), cada linha O identifica uma soluo correspondente para o problema dual, conforme mostrado nas colunas Yi. y 2 e y 3 da Tabela 6.5. Para interpretar as duas colunas seguintes, lembre-se de que (z 1 - c 1) e (z2 - c2 ) so as variveis excedentes para

208

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

as restries funcionais no problema dual, de modo que o problema dual completo aps acrescido dessas variveis excedentes fique e.orno Minimizar sujeito a Y1 2yz

+ 3y3 - (z1 - c1) + 2y3 - (z2 - c2)

3 5

e
Y1 ;::: O, Y3 ;::: O.

Portanto, usando os nmeros das colunas Yi. y 2 e y 3 , os valores dessas variveis excedentes podem ser calculados como Z1 - C1 = Y1 + 3y3 - 3, Z2 - Cz = 2yz + 2y3 - 5. Dessa forma, um valor negativo para cada uma das variveis excedentes indica que a restrio correspondente violada. Tambm est inclusa na coluna mais direita da tabela o valor calculado da funo objetivo dual W = 4y 1 + 12y2 + 18y3. Conforme ilustrado na Tabela 6.4, todas essas quantidades direita da linha O na Tabela 6.5 j so identificadas pela linha O sem exigncia de nenhum clculo adicional. Observe, particularmente, na Tabela 6.5, como cada nmero obtido para o problema dual j aparece na linha no ponto indicado pela Tabela 6.4. Para a linha Oinicial, a Tabela 6.5 mostra que a soluo dual correspondente (yi, Yz, y 3 ) = (O, O, O) invivel, pois ambas as variveis excedentes so negativas. A primeira iterao bem-sucedida na eliminao de um desses valores negativos, mas no do outro. Aps duas iteraes, o teste de otimalidade satisfeito para o problema primal, porque todas as variveis duais e excedentes so no-negativas. Essa soluo dual (yf, yf, yj) =(O,~. 1) tima (como pode ser verificado aplicando-se o mtodo simplex diretamente ao problema dual), de modo que o valor timo de Z e W seja Z* = 36 = W*.

Resumo dos Inter-relacionamentos Primai-Dual


Faamos agora um resumo dos relacionamentos-chave recm-descobertos entre os problemas dual e primai.

Verso fraca da teoria da dualidade: Se x for uma soluo vivel para o problema primai e y uma soluo vivel para o problema dual, ento
ex
::5

yb.

Por exemplo, no caso da Wyndor Glass Co., uma soluo vivel x 1 = 3, x 2 = 3, que leva a Z = ex= 24 e uma soluo vivel para o problema dual y 1 = 1, y2 = 1, y3 = 2, que leva a ufu valor maior da funo objetivo W = yb = 52. So apenas exemplos de solues viveis

TABELA 6.5 Linha O e soluo dual correspondente para cada iterao no caso

da Wyndor Glass Co.


Problema Primai Iterao Linha O
[-3, [-3,
[ O,
Y1 Y2

Problema Dual
Y3 Z1 C1 Z2 C2

o
1

-5

o,
O,

o o

o,

O, 5 2' 3 2'
-

o o
1

O] 30] 36]

o o o

o
5 2 3 2

o o
1

-3
-3

-5

o
30 36

o o

6.1 A ESSNCIA DA TEORIA DA DUALIDADE

209

para os dois problemas. Para qualquer um dos pares de solues viveis essa desigualdade tem de ser satisfeita, pois o valor vivel mximo de Z = ex (36) igual ao valor vivel mnimo da funo objetivo dual W = yb, que nossa prxima verso (propriedade). Verso forte da teoria da dualidade: Se x* for uma soluo tima para o problema primai e y* uma soluo tima para o problema dual, ento ex*= y*b. Portanto, essas duas propriedades implicam que ex < yb para solues viveis se uma ou ambas forem no-timas para seus respectivos problemas, ao passo que a igualdade satisfeita quando ambas forem timas. A verso fraca da teoria da dualidade descreve os inter-relacionamentos entre qualquer par de solues para os problemas primal e dual nos quais ambas as solues so viveis para seus respectivos problemas. A cada iterao, o mtodo simplex encontra um par de solues especfico para os dois problemas em que a soluo primai vivel, porm, a soluo dual no vivel (exceto na ltima iterao). Nossa prxima propriedade descreve essa situao e o inter-relacionamento entre esse par de solues. Propriedade das solues complementares: A cada iterao, o mtodo simplex identifica simultaneamente uma soluo FPE x para o problema primai e uma soluo complementar y para o problema dual (encontrado na linha O, os coeficientes das variveis de folga), em que ex= yb. Se x no for tima para o problema primai, ento y no vivel para o problema dual.
y 2 = ~, y 3 = O, com ex = 30 = yb. Esse x vivel para o problema primai, contudo, esse y no vivel para o problema dual (visto que ele viola a restrio, y 1 + 3y3 ;::::: 3).

Para ilustrar, aps uma iterao no caso da Wyndor Glass Co., x 1 = O, x 2 = 6 e y 1 = O,

A propriedade das solues complementares tambm satisfeita na iterao final do mtodo simplex no qual uma soluo tima encontrada para o problema primai. Entretanto, pode-se dizer mais a respeito da soluo complementar y nesse caso, conforme ser apresentado na prxima propriedade. Propriedade das solues timas complementares: Na iterao final, o mtodo simplex identifica simultaneamente uma soluo tima x* para o problema primai e uma soluo tima complementar y* para o problema dual (encontrada na linha O, os coeficientes das variveis de folga), em que ex*= y*b. Os y{ so os preos-sombra para o problema primai. Por exemplo, a iterao final leva a xi = 2, xi = 6, e y'/' = O, yf = ~, yj = 1, com ex* = 36 = y*b. Vamos dar uma olhada mais de perto em algumas dessas propriedades na Seo 6.3. L, voc ver que a propriedade das solues complementares pode ser estendida consideravelmente. Particularmente, aps as variveis de folga e excedentes terem sido introduzidas para aumentar os respectivos problemas, toda soluo bsica no problema primal tem uma soluo bsica complementar no problema dual. J percebemos que o mtodo simplex identifica os valores das variveis de folga para o problema dual como Zj - cj na Tabela 6.4. Esse resultado leva, ento, a mais uma propriedade, a propriedade de complementaridade da folga que relaciona as variveis bsicas em um problema s variveis no-bsicas do outro (Tabelas 6.7 e 6.8), porm mais em relao a essa ltima. Na Seo 6.4, aps descrever como construir o problema dual quando o problema primai no se encontra em nossa forma-padro, discutimos outra propriedade muito til, que resumida a seguir:

210

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

Propriedade da simetria: Para qualquer problema primal e seu problema dual, todas as relaes entre eles devem ser simtricas, pois o dual desse problema dual esse problema primai.
Portanto, todas as propriedades anteriores so satisfeitas independentemente de qual dos dois problemas for classificado como problema primal. A direo da desigualdade para a verso fraca da teoria da dualidade no requer que o problema primal seja expresso ou reexpresso na forma de maximizao e o problema dual na forma de minimizao. Conseqentemente, o mtodo simplex pode ser aplicado a qualquer problema e ele vai identificar simultaneamente as solues complementares (em ltima instncia uma soluo tima complementar) para o outro problema. At ento, nos concentramos nos inter-relacionamentos entre solues viveis ou timas no problema primai e as solues correspondentes no problema dual. Entretanto, possvel que o problema primai (ou dual) no tenha solues viveis ou ento tenha solues viveis, mas nenhuma soluo tima (pelo fato de a funo objetivo ser ilimitada). Uma propriedade final sintetiza os inter-relacionamentos primai-dual sob todas essas circunstncias.

Teorema da dualidade: A seguir, temos os nicos inter-relacionamentos possveis entre problemas primais e duais.
1. Se um problema tiver solues viveis e uma funo objetivo limitada (e, portanto, tiver uma soluo tima), ento o mesmo acontece para o outro problema e, assim, tanto a verso fraca quanto a forte da teoria da dualidade so aplicveis. 2. Se um problema tiver solues viveis e uma funo objetivo ilimitada (e, portanto, nenhuma soluo tima), ento o outro no ter solues viveis . 3. Se um problema no tiver nenhuma soluo vivel, ento o outro tambm no ter nenhuma soluo vivel ou ento uma funo objetivo ilimitada.

Aplicaes
Como acaba de ficar implcito, uma importante aplicao da teoria da dualidade que o problema dual pode ser resolvido diretamente pelo mtodo simplex de modo a identificar uma soluo tima para o problema primai. Discutimos na Seo 4.8 que o nmero de restries funcionais afeta o processamento computacional do mtodo simplex muito mais que o nmero de variveis. Se m > n, ento o problema dual tem menos restries funcionais (n) que o problema primai (m), assim, aplicando o mtodo simplex diretamente ao problema dual em vez do primai provavelmente vai reduzir substancialmente o nvel de processamento necessrio. As verses fraca e forte da teoria da dualidade descrevem os relacionamentos-chave entre os problemas dual e primai. Uma aplicao til avaliar uma soluo proposta para o problema primai. Suponha, por exemplo, que x seja uma soluo vivel que foi proposta para implementao e que uma soluo vivel y foi encontrada por inspeo para o problema dual tal que ex = yb. Nesse caso, x tem de ser tima sem nem mesmo aplicar o mtodo simplex! Mesmo que ex < yb, ento yb ainda fornece um limite superior no valor timo de Z, de modo que se yb - ex for pequeno, fatores intangveis favorecendo x podem levar sua seleo sem mais delongas. Uma das principais aplicaes da propriedade das solues complementares seu emprego no mtodo simplex dual apresentado na Seo 7. l. Esse algoritmo opera sobre o problema primai exatamente como se o mtodo simplex tivesse sido aplicado simultaneamente ao problema dual, o que pode ser feito em razo dessa propriedade. Em virtude dos papis da linha O e do lado direito na tabela simplex terem sido invertidos, o mtodo simplex dual requer que a linha O comece e permanea no-negativa, ao passo que o lado direito comea com alguns valores negativos (iteraes subseqentes se esforam por alcanar um lado de no-negatividade). Conseqentemente, esse algoritmo usado ocasionalmente, pois mais conveniente configurar a tabela inicial nessa forma que naquela exigida pelo mtodo simplex. Alm disso, ela freqentemente usada para reotimizao (discutida na

6.2

ECONMICA DA DUALIDADE

211

Seo 4.7), pois mudanas no modelo original fazem que a tabela final revisado se ajuste a essa forma. Essa situao comum para certos tipos de anlise de sensibilidade como ser visto posteriormente neste captulo. Em termos gerais, a teoria da dualidade desempenha papel fundamental na anlise de sensibilidade. Esse papel ser tpico da Seo 6.5. Outra aplicao importante seu emprego na interpretao econmica do problema dual e os insights fundamentais resultantes para analisar o problema primai. J apresentamos um exemplo quando discutimos os preos-sombra na Seo 4. 7. A Seo 6.2 descreve como essa interpretao se estende a todo o problema dual e depois ao mtodo simplex.

([,~c'6.2 INTERPRETAO ECONMICA DA DUALIDADE


0.-,"'--:,

A interpretao econmica da dualidade se baseia diretamente na interpretao tpica para o problema primai (problema de programao linear em nossa forma-padro) apresentada na Seo 3.2. Para refrescar sua memria, resumimos essa interpretao do problema primai na Tabela 6.6.

Interpretao do Problema Dual


Para ver como essa interpretao do problema primai conduz a uma interpretao econmica para o problema dual, 1 observe na Tabela 6.4 que W o valor total de Z (lucro total) na iterao atual. Pelo fato de
W = h1Y1

+ h2Y2 + + bmym,

cada b;Y; pode ento ser interpretado como a contribuio atual ao lucro por ter b; unidades do recurso i disponvel para o problema primai. Portanto,
A varivel dual Y; interpretada como a contribuio ao lucro por unidade de recurso i (i = 1, 2, ... , m), em que o conjunto atual de variveis bsicas usado para obter a soluo primal.

Em outras palavras, os valores Y; (ou/; para na soluo tima) so simplesmente os preossombra discutidos na Seo 4.7. Por exemplo, quando a iterao 2 do mtodo simplex encontra a soluo tima para o problema da Wyndor Glass Co., ele tambm encontra os valores timos das variveis duais (conforme ilustrado na linha inferior da Tabela 6.5) para ser y't = O, yi =~e yf = 1. Estes so precisamente os preos-sombra encontrados na Seo 4. 7 para esse problema por meio da anlise grfica. Lembre-se de que os recursos para o problema da Wyndor so as capacidades de produo das trs fbricas que esto sendo disponibilizados para dois produtos novos em considerao, de modo que b; seja o nmero de horas de tempo de produo por semana que esto sendo disponibilizado na Fbrica i para esses novos produtos, onde i = 1,
TABELA 6.6 Interpretao econmica do problema primai

Quantidade
xi ci

Interpretao
Nvel de atividade j (j = 1, 2, ... , n) Lucro unitrio proveniente da atividade j Lucro total de todas as atividades Quantidade do recurso i disponvel ( = 1, 2, ... , m) Quantidade do recurso i consumida para cada unidade de atividade j

b;
a;i

Na verdade, vrias interpretaes ligeiramente diferentes foram propostas. Aquela aqui apresentada nos parece ser a mais til, pois ela interpreta diretamente aquilo que mtodo simplex faz no problema primai.

212

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

2, 3. Conforme discutido na Seo 4.7, os preos-sombra indicam que aumentar individualmente qualquer b; de uma unidade aumentaria o valor timo da funo objetivo (lucro semanal total em unidades de milhares de dlares) de y{. Portanto, y{ pode ser interpretado como a contribuio para o lucro por unidade de recurso i ao usar a soluo tima. Essa interpretao das variveis duais nos leva nossa interpretao do problema dual como um todo. Especificamente, se cada unidade de atividade j no problema primal consumir aij unidades do recurso i,
I~ 1 aijy;

interpretado como a contribuio atual ao lucro do mix de recursos que seriam consumidos caso uma unidade de atividade j fosse usada (j = l, 2, ... , n).

Para o caso da Wyndor, uma unidade de atividade j corresponde a produzir um lote do produto j por semana, onde j = 1, 2. O mix de recursos consumidos para produzir um lote do produto 1 de uma hora de tempo de produo na Fbrica 1 e de trs horas na Fbrica 3. O mix correspondente por lote do produto 2 de duas horas em cada uma das Fbricas 2 e 3. Portanto, y 1 + 3y 3 e 2y2 + 2y 3 so interpretados como as contribuies atuais para o lucro (em milhares de dlares por semana) dos respectivos mixes de recursos por lote produzidos por semana dos respectivos produtos. Para cada atividade j, esse mesmo mix de recursos (e mais) provavelmente pode ser usado tambm de outras maneiras, porm no se deve considerar nenhum uso alternativo se este for menos rentvel que uma unidade de atividade j. J que cj interpretado como o lucro unitrio da atividade j, cada restrio funcional no problema dual interpretada como se segue:
diz que a contribuio atual para o lucro do mix de recursos anteriores tem de ser pelo menos se eles fossem usados por uma unidade de atividade j; caso contrrio, no estaramos fazendo o melhor uso desses recursos.
I~ 1 uY; 2'. cj

Para o caso da Wyndor, os lucros unitrios (em milhares de dlares por semana) so c 1 = 3 e c2 = 5, de modo que as restries funcionais duais com essa interpretao so y 1 + 3y3 ::?: 3 e 2Yz + 2y 3 ::?: 5. Da mesma maneira, a interpretao das restries de no-negatividade a seguinte:
y; 2'. O diz que a contribuio para o lucro do recurso i (i tiva: caso contrrio, seria melhor no usar esse recurso.
=

l, 2, ... , m) deve ser no-nega-

O objetivo Minimizar
'W=

b;y;

;~1

pode ser visto como minimizar o valor implcito total dos recursos consumidos pelas atividades. Para o problema da Wyndor, o valor implcito total (em milhares de dlares por semana) dos recursos consumidos pelos dois produtos W = 4y 1 + 12y2 + 18y3 . Essa interpretao pode ser melhorada um pouco diferenciando-se as variveis bsicas das no-bsicas no problema primai para qualquer soluo BV dada (xi, x 2 , ... , Xn+m). Lembre-se de que as variveis bsicas (as nicas variveis cujos valores podem ser no-zero) sempre possuem um coeficiente zero na linha O. Portanto, referindo-se novamente Tabela 6.4 e equao que acompanha para Zj, vemos que

i~I

a;jYi

= cj,

sexj>O

(j = 1, 2, ... , n),
(i = 1, 2, ... , m).

Y; =O,

se

Xn+i

>O

(Essa uma verso da propriedade da complementaridade da folga discutida na Seo 6.3.) A interpretao econmica da primeira instruo que toda vez que uma atividade j operar em um nvel estritamente positivo (xj > O), o valor marginal dos recursos que ela consome tem de ser igual (e no exceder) ao lucro unitrio proveniente dessa atividade. A segunda

6.2 INTERPRETAO ECONMICA DA DUALIDADE

213

afirmao implica que o valor marginal do recurso i zero (y; = 0) toda vez que o fornecimento desse recurso no for exaurido pelas atividades (Xn+i > O). Na terminologia econmica, tal recurso um "recurso livre"; o preo de recursos que so fornecidos em excesso devem ir a zero pela lei da oferta e da demanda. Esse fato o que justifica interpretar o objetivo do problema dual como minimizar o valor implcito total dos recursos consumidos em vez dos recursos alocados. Pra ilustrar essas duas afirmaes, consideremos a soluo BV tima (2, 6, 2, O, O) para o problema da Wyndor. As variveis bsicas so Xi. x 2 e x 3 , de modo que seus coeficientes na linha O sejam zero, conforme ilustrado na linha inferior da Tabela 6.5. Essa linha inferior tambm fornece a soluo dual: y{ = O, yf = ~' yt = 1, com variveis excedentes (zi - c 1) = O e (zi - c2 ) = O. J que x 1 > O e x2 > O so ambas variveis excedentes e clculos diretos indicam que y{ + 3yt = c 1 = 3 e 2yi' + 2y1 = c 2 = 5. Portanto, o valor dos recursos consumidos por lote dos respectivos produtos fabricados realmente se iguala aos lucros unitrios respectivos. A varivel de folga para a restrio sobre a quantidade da capacidade da Fbrica 1 seria zero (yi = O).

Interpretao do Mtodo Simplex


A interpretao do problema dual tambm fornece uma interpretao econmica do que o mtodo simplex faz no problema primai. O objetivo do mtodo simplex descobrir como usar os recursos disponveis da forma vivel mais rentvel. Para atender a esse objetivo, temos de chegar a uma soluo BV que satisfaa todas as exigncias sobre uso lucrativo dos recursos (as restries do problema dual). Estas exigncias compreendem a condio para otimalidade do algoritmo. Para qualquer soluo BV dada, os requisitos (restries duais) associados s variveis bsicas so automaticamente satisfeitos (com igualdade). Entretanto, aqueles associados a variveis no-bsicas podem ou no ser satisfeitos. Em particular, se uma varivel original xj for no-bsica de maneira que a atividade j no seja usada, ento a contribuio atual dos recursos que seriam necessrios para empreender cada atividade j

poderia ser menor ou maior que ou ento igual ao lucro unitrio cj obtido da atividade. Se menor, ento/zj - cj < O na linha O da tabela simplex, logo esses recursos podem ser usados de modo mais lucrativo iniciando-se essa atividade. Se maior (zj - cj > 0), ento esses recursos j esto sendo alocados em algum outro lugar de modo mais lucrativo, de maneira que eles no devam ser redirecionados para a atividade j. Se z1 - cj = O, no haveria nenhuma mudana em termos de lucratividade iniciando-se a atividade j. De modo similar, se uma varivel de folga Xn+i for no-bsica de modo que a alocao total b; de recursos i esteja sendo usada, ento Y; a contribuio atual para o lucro gerado por esse recurso em uma base marginal. Portanto, se Y; <O, o lucro pode ser aumentado cortando-se o uso desse recurso (isto , aumentando-se Xn+;). Se y; > O, vale a pena continuar a usar plenamente esse recurso, ao passo que essa deciso no afetar a lucratividade se y; = O. Assim, o que o mtodo simplex faz examinar todas as variveis no-bsicas na soluo BV atual para ver quais delas podem fornecer um emprego mais rentvel dos recursos pelo aumento delas. Se nenhuma puder fazer isso, de modo que nenhuma transferncia ou reduo viveis no uso atual proposto dos recursos puder aumentar o lucro, ento a soluo atual tem de ser tima. Se uma ou mais puderem fazer isso, o mtodo simplex seleciona a varivel que, se incrementada de uma unidade, melhoraria a lucratividade do emprego dos recursos ao mximo. Em seguida, ele aumenta efetivamente essa varivel (a varivel bsica que entra) o mximo que puder at que os valores marginais dos recursos mudem. Esse aumento resulta em uma soluo BV nova com uma nova linha O (soluo dual) e o processo todo repetido.

214

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

A interpretao econmica do problema dual expande consideravelmente nossa capacidade de analisar o problema primal. Porm, voc j viu na Seo 6.1 que essa interpretao apenas uma ramificao dos relacionamentos entre os dois problemas. Na Seo 6.3 nos aprofundaremos mais nesses inter-relacionamentos .

J RELAES PRIMAL-DUAL
Pelo fato de o problema dual ser um problema de programao linear, ele tambm possui solues em pontos extremos. Ainda mais, usando-se a forma aumentada do problema, podemos expressar essas solues em pontos extremos como solues bsicas. Em virtude de as restries funcionais terem a forma ::::::, essa forma aumentada obtida subtraindo-se o excesso (e no se adicionando a ociosidade) do lado esquerdo de cada restrio j (j = 1, 2, ... , n). 2 Esse excesso
z1 - c1 =

uY; - c1,

para j

1, 2, . . . , n.

i=l

Por essa razo, z1 - c1 desempenha o papel de variveis excedentes para a restrio j (ou sua varivel de folga se a restrio for multiplicada por -1). Portanto, aumentar cada soluo em ponto extremo (yi, y 2 , . , Ym) conduz a uma soluo bsica (y 1, y 2 , ... , Ym z1 - ci. z2 - c2 , ... , Zn - cn) usando essa expresso para z1 - c1. J que a forma aumentada do problema dual tem n restries funcionais e n + m variveis, cada soluo bsica tem n variveis bsicas em variveis no-bsicas. Note como m e n invertem seus papis anteriores aqui, porque, como indicado na Tabela 6.3, as restries duais correspondem a variveis primais e as variveis duais, a restries primais.

Solues Bsicas Complementares


Uma das relaes importantes entre os problemas primal e dual uma correspondncia direta entre suas solues bsicas. O ponto-chave para essa correspondncia a linha Oda tabela simplex para a soluo bsica primal, como aquele mostrado na Tabela 6.4 ou 6.5. Uma linha O dessas pode ser obtida para qualquer soluo bsica primal, vivel ou no, utilizando-se as frmulas dadas na parte inferior da Tabela 5.8. Observe novamente nas Tabelas 6.4 e 6.5 como uma soluo completa para o problema dual (incluindo as variveis excedentes) pode ser lida diretamente da linha O. Portanto, em decorrncia de seus coeficientes na linha O, cada varivel no problema primal tem uma varivel associada no problema dual conforme sintetizado na Tabela 6. 7, primeiramente para qualquer problema e depois para o problema da Wyndor. Um insight fundamental aqui que a soluo dual lida a partir da linha O tem de ser tambm uma soluo bsica! A razo que as m variveis bsicas para o problema primai precisam ter um coeficiente zero na linha O, o que, conseqentemente, requer que as m variveis duais associadas tenham de ser zero, isto , variveis no-bsicas para o problema dual. Os valores das n variveis (bsicas) remanescentes sero, ento, a soluo simultnea para o sistema de equaes dado no incio desta seo. Na forma matricial, esse sistema de equaes z - e = yA - e e o insight fundamental da Seo 5.3 identifica, de fato, sua soluo para z - e e y como as entradas correspondentes na linha O. Em virtude da propriedade de simetria citada na Seo 6.1 (e a associao direta entre variveis mostrada na Tabela 6.7), a correspondncia entre as solues bsicas nos problemas dual e primai simtrica. Alm disso, um par de solues bsicas complementares tem o mesmo valor de funo objetivo, indicado como W na Tabela 6.4.

Voc pode estar imaginando por que tambm no introduzimos variveis artificiais nessas restries conforme discutido na Seo 4.6. A razo que essas variveis no tm outra finalidade seno mudar temporariamente a regio de solues viveis como uma convenincia para iniciar o mtodo simplex. No estamos interessados agora em aplicar o mtodo simplex ao problema dual e no queremos modificar sua regio de solues viveis.

6.3 RELAES PRIMAL-DUAL

215

Sintetizemos agora nossas concluses sobre a correspondncia entre solues bsicas primais e duais, nas quais a primeira propriedade estende a propriedade das solues complementares da Seo 6.1 para as formas aumentadas dos dois problemas e depois a qualquer soluo bsica (vivel ou no) no problema primai.

Propriedade das solues bsicas complementares: Cada soluo bsica no problema primai tem uma soluo bsica complementar no problema dual, em que os valores de suas funes objetivo correspondentes (Z e W) so iguais. Dada a linha O da tabela simplex para a soluo bsica primai, a soluo bsica dual complementar (y, z - c) encontrada como indicado na Tabela 6.4
A propriedade seguinte mostra como identificar as variveis no-bsicas e bsicas nessa soluo bsica complementar.

Propriedade da complementaridade da folga: Dada a associao entre variveis na Tabela 6. 7, as variveis na soluo bsica primai e na soluo bsica dual complementar satisfazem a relao de complementaridade da folga apresentada na Tabela 6.8. Alm disso, essa relao simtrica de modo que essas duas solues bsicas so complementares entre si.
TABELA 6.7 Associao entre variveis nos problemas primai e dual
Varivel Primai
Um problema qualquer (Varivel de deciso) xi (Varivel de folga) Xn+i Variveis de deciso: Problema da Wyndor Variveis excedentes:
X1

Varivel Dual Associada


zi - Cj (varivel excedente) j

= 1,

2, ... , n

y; (varivel de deciso)
z1
-

i = 1, 2, . . . , m

c1 (variveis de folga)
C2

X2
X3

Z2 -

y,
Y2
Y3

(variveis de deciso)

X4 Xs

TABELA 6.8 Relao de complementaridade da folga para as solues bsicas complementares


Varivel Primai
Bsica No-bsica

Varivel Dual Associada


No-bsica Bsica (m variveis) (n variveis)

TABELA 6.9 Solues bsicas complementares para o exemplo da Wyndor Glass Co.
Problema Primai Problema Dual
Z=W

N
1 2 3 4 5 6 7 8

Soluo Bsica
(O, O, 4, 12, 18) (4, o, o, 12, 6) (6, O, -2, 12, O) (4, 3, O, 6, O) (O, 6, 4, O, 6) (2, 6, 2, O, O) (4, 6, O, O, -6) (O, 9, 4, -6, O)

Vivel?
Sim Sim No Sim Sim Sim No No

Vivel?
No No No No No Sim Sim Sim

Soluo Bsica
(O, O, O, -3, -5) (3, O, O, O, -5) (O, O, 1, O, -3)

o
12 18 27 30 36 42 45

(-%, O, %, O, O)
(O, (O, ( 3,

%, O, - 3, O)

t'

1, O, O)

%, O, O, O) (O, O, %, %, O)

216

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

A razo para usar o nome complementaridade da folga para essa ltima propriedade o fato de ela dizer (em parte) que para cada par de variveis associadas, se uma delas tiver folga em suas restries de no-negatividade (uma varivel bsica > O), ento a outra no poder ter folga (uma varivel no-bsica = 0). Mencionamos na Seo 6.2 que essa propriedade tem uma interpretao econmica til para problemas de programao linear.

Exemplo. Para ilustrar essas duas propriedades, considere novamente o problema da Wyndor Glass Co. da Seo 3.1. Todas suas oito solues bsicas (cinco viveis e trs inviveis) so mostradas na Tabela 6.9. Portanto, seu problema dual (ver Tabela 6.1) tambm deve ter oito solues bsicas, cada complementaridade para uma dessas solues primais, conforme indicado na Tabela 6.9. As trs solues BV obtidas pelo mtodo simplex para o problema primal so a primeira, quinta e sexta solues primais expostas na Tabela 6.9. Vimos na Tabela 6.5 como as solues bsicas complementares para o problema dual podem ser lidas diretamente da linha O, iniciando com os coeficientes das variveis de folga e depois as variveis originais. As demais solues bsicas duais tambm poderiam ser identificadas dessa maneira construindo a linha O para cada uma das demais solues bsicas primais, usando as frmulas dadas na parte inferior da Tabela 5.8. Alternativamente, para cada soluo bsica primal, a propriedade de complementaridade da folga pode ser usada para identificar as variveis bsicas e no-bsicas para a soluo bsica dual complementar, de modo que o sistema de equaes dado no incio da seo possa ser resolvido diretamente para obter essa soluo complementar. Considere, por exemplo, a penltima soluo bsica primai da Tabela 6.9, (4, 6, O, O, -6). Note que xi, x2 e x 5 so variveis bsicas, visto que essas variveis no so iguais a O. A Tabela 6.8 especifica que essas variveis bsicas duais associadas so (z 1 - c 1 ), (z2 - c2 ) e y 3 . A Tabela 6.8 estabelece que essas variveis duais associadas so variveis no-bsicas na soluo bsica complementar, de maneira que
Zt C1

=O,

Y3 =O.

Conseqentemente, a forma aumentada das restries funcionais no problema dual

Yi
2yz

+ 3y3 + 2y3 -

(z1 - c1) = 3 (z2 - c2) = 5,

reduz a
Y1

+O - O= 3

2y2 +o - o= 5,
de modo que y 1 = 3 e y 2 = ~.Combinando esses valores com os valores de O para as variveis no-bsicas, temos a soluo bsica (3, ~, O, O, O), como mostradas na coluna mais direita e na penltima linha da Tabela 6.9. Note que essa soluo dual vivel para o problema dual, pois todas as cinco variveis satisfazem as restries de no-negatividade. Finalmente, observe que a Tabela 6.9 demonstra que (O, ~' 1, O, O) a soluo tima para o problema dual, porque ela a soluo vivel bsica com W mnimo (36).

Relaes entre as Solues Bsicas Complementares


Agora, passamos a atentar para as relaes entre as solues bsicas complementares, comeando com suas relaes de viabilidade. As colunas intermedirias na Tabela 6.9 fornecem algumas dicas valiosas. Para os pares de solues complementares, note como as respostas Sim ou No sobre a viabilidade tambm satisfazem um inter-relacionamento de complementaridade na maioria dos casos. Em particular, com uma exceo, toda vez que uma soluo for vivel, a outra no ser. (Tambm possvel que nenhuma das solues seja vivel, como aconteceu com o terceiro par.) A nica exceo o sexto par, no qual a soluo primai sabidamente tima. A explicao sugerida pela coluna Z = W. Pelo fato de a sexta soluo dual tambm ser tima (pela propriedade das solues timas complementares),

6.3 RELAES PRIMAL-DUAL

217

com W = 36, a primeira das cinco solues duais no pode ser vivel, pois W < 36 (lembre-se de que o objetivo do problema dual o de minimizar W). Pela mesma razo, as ltimas duas solues primais no podem ser viveis porque Z > 36. Essa explicao suportada ainda pela verso forte da teoria da dualidade de que as solues duais e primais timas tm Z = W. A seguir, vamos apresentar a extenso da propriedade das solues timas complementares da Seo 6.1 para as formas aumentadas dos dois problemas. Propriedade das solues bsicas timas complementares: Cada soluo bsica tima no problema primai tem uma soluo bsica tima complementar no problema dual, no qual os valores de suas respectivas funes objetivo (Z e W) so iguais. Dada a linha O da tabela simplex para a soluo primai tima, a soluo dual tima complementar (y*, z* - e) encontrada conforme mostrado na Tabela 6.4. Para rever o raciocnio por trs dessa propriedade, note que a soluo dual (y*, z* - e) tem de ser vivel para o problema dual, pois a condio para otimalidade para o problema primai requer que todas essas variveis duais (inclusive as variveis excedentes) sejam nonegativas. Uma vez que essa soluo vivel, ela deve ser tima para o problema dual pela verso fraca da teoria da dualidade G que W = Z, de modo que y*b = ex* em que x* tima para o problema primai). As solues bsicas podem ser classificadas de acordo a satisfazerem cada uma das duas condies. Uma a condio para viabilidade, a saber, se todas as variveis (inclusive as variveis de folga) na soluo aumentada so no-negativas. A outra a condio para otimalidade, mais especificamente, se todos os coeficientes na linha O (isto , todas as variveis na soluo bsica complementar) so no-negativos. Nossas denominaes para os diferentes tipos de solues bsicas so sintetizadas na Tabela 6.10. Por exemplo, na Tabela 6.9, as solues bsicas primais 1, 2, 4 e 5 so subtimas, 6 tima, 7 e 8 so supertimas e 3 no nem vivel nem supertima. Dadas essas definies, as relaes gerais entre as solues bsicas complementares so sintetizadas na Tabela 6.11. O intervalo resultante de valores possveis (comuns) para as funes objetivo (Z = W) para os primeiros trs pares dados na Tabela 6.11 (o ltimo par pode ter qualquer valor) mostrado na Figura 6.1. Portanto, enquanto o mtodo simplex est

FIGURA 6.1

Problema primai
n

Problema dual
m

Intervalo de possveis valores de Z = W para certos tipos de solues bsicas complementares.

LCX j=I J J

W= Lb;Y;
i=I

Supertima

Subtima

(tima) Z*

- -,. ,. . ,. ..,.,----+----'-'~]~,._'__
I \

Subtima

W* (tima)

Supertima

218

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

TABELA 6.10 Classificao de solues bsicas

Satisfaz a Condio de Otlmalldade? Sim Vivel? Sim No


tima Supertima

No
Subtima No vivel nem supertima

TABELA 6.11 Relaes entre solues bsicas complementares

As Duas Solues Bsicas Soluo Bsica Primai


Subtima tima Supertima No vivel nem supertima

Soluo Bsica Dual Complementar


Supertima tima Subtima No vivel nem supertima

Primai Vivel?
Sim Sim No No

Dual Vivel?
No Sim Sim No

lidando diretamente com solues bsicas subtimas e trabalhando para alcanar a otimalidade no problema primai, ele est, simultaneamente, lidando indiretamente com solues supertimas complementares e trabalhando no sentido da viabilidade no problema dual. Ao contrrio, algumas vezes mais conveniente (ou necessrio) trabalhar diretamente com solues bsicas supertimas e ir em direo viabilidade no problema primai, que o propsito do mtodo simplex dual descrito na Seo 7 .1. A terceira e quarta colunas da Tabela 6.11 introduzem dois outros termos comuns que so usados para descrever um par de solues bsicas complementares. As duas solues so chamadas viveis primais se a soluo bsica primai for vivel, ao passo que elas so denominadas viveis duais se a soluo bsica dual complementar for vivel para o problema dual. Usando essa terminologia, o mtodo simplex lida com solues viveis primais e se esfora pra alcanar tambm a viabilidade dual. Quando isso alcanado, as duas solues bsicas complementares so timas para seus respectivos problemas. Esses inter-relacionamentos provam ser teis, particularmente na anlise de sensibilidade, como veremos posteriormente neste captulo.

:~e ~.4 ADAPTANDO PARA OUTRAS FORMAS PRIMAIS ]AYLY'.!ffK


At agora, se admitiu que o modelo para o problema primai se encontrava em nossa formapadro. Entretanto, indicamos no incio do captulo que qualquer problema de programao linear, esteja ele na nossa forma-padro ou no, possui um problema dual. Portanto, a presente seo se concentra em como o problema dual muda para as demais formas primais. Cada uma das formas no-padronizadas foi vista na Seo 4.6 e indicamos como possvel converter cada uma delas em uma forma-padro equivalente se desejado. Essas converses so resumidas na Tabela 6.12. Assim, temos sempre a opo de converter qualquer modelo para nossa forma-padro e depois construir seu problema dual da maneira usual. Para fins ilustrativos, fazemos isso para nosso problema dual-padro (ele tambm deve ter um dual) na Tabela 6.13. Note que o resultado simplesmente nosso problema primalpadro! J que qualquer par de problemas dual e primai pode ser convertido nessas formas, esse fato implica que o dual do problema dual sempre o problema primai. Desse modo, para qualquer problema primai e seu problema dual, todos os inter-relacionamentos entre eles tm de ser simtricos. Essa simplesmente a propriedade de simetria j declarada na Seo 6.1 (sem prova), porm agora a Tabela 6.13 demonstra por que ela vlida.

6.4 ADAPTANDO PARA OUTRAS FORMAS PRIMAIS


TABELA 6.12 Converses para a forma-padro para os modelos de programao linear Forma No-padronizada
Minimizar

219

Forma-padro Equivalente
Maximizar
(-Z)
-b;

j~l

I I

a;jXj2 b;

-I a;jXj s
j~l
j~l

a;jXj= b;

j~l

a;ixi

s b;

-I

a;jXj s -b;

j~l

xi no sofre restrio em sinal

TABELA 6.13 Construindo o dual do problema dual


Problema Dual Convertido para a Forma-padro

Minimizar sujeito a yA2c

W=yb,

Maximizar sujeito a

(-W)

-yb,

-yA s -e

e
y20.
Convertido para a Forma-padro

e
y20.

Seu Problema Dual

Maximizar sujeito a

Z=cx,

Minimizar sujeito a

(-Z) =-ex,

Ax s b

-Ax2 -b

e
x20.

e
x20.

Uma conseqncia da propriedade de simetria que todas as declaraes feitas anteriormente neste captulo sobre relacionamentos do problema dual com o problema primal tambm valem no sentido inverso. Outra conseqncia que indiferente a qual problema chamado primal e a qual dito dual. Na prtica, podemos encontrar um problema de programao linear que se ajuste nossa forma-padro sendo denominado problema dual. A conveno que o modelo formulado para se adequar ao problema atual chamado problema primal, independentemente de sua forma. Nossa ilustrao de como construir o problema dual para um problema primal nopadronizado no envolve nem restries de igualdade nem variveis sem restrio de sinal. Na verdade, para essas duas formas, h um atalho. possvel mostrar (ver Problemas 6.4-7 e 6.4-2a) que uma restrio de igualdade no problema primal deve ser tratada da mesma forma que uma restrio ::5 ao construir o problema dual, exceto pelo fato de que a restrio de no-negatividade para a varivel dual correspondente deve ser eliminada (isto , essa varivel no sofre restries em sinal). Pela propriedade de simetria, eliminando-se uma restrio de no-negatividade no problema primal afeta o problema dual somente alterando-se a restrio de desigualdade correspondente a uma restrio de igualdade. Outro atalho envolve restries funcionais na forma 2: para um problema de maximizao. A metodologia objetiva (porm mais longa) comearia convertendo cada uma dessas restries na forma ::5

j=I

L aijxJ 2: b; ~ - L a;1x1 ::5 -b;.


j=I

220

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

Construindo-se o problema dual da maneira usual resulta ento em -aiJ como o coeficiente de y; na restrio funcional} (que possui a forma::=:::) e um coeficiente -b; na funo objetivo (que deve ser minimizada), em que Y; tambm tem uma restrio de no-negatividade y; : =: : O. Suponha agora que definamos uma nova varivel y;' = -y;. As mudanas provocadas por expressar o problema dual em termos de y;' em vez de Y; so: (1) os coeficientes da varivel se transformam em a;j para a restrio funcional j e b; para a funo objetivo e (2) a restrio na varivel se transforma em y;' :5 O (uma restrio de no-positividade). O atalho usar y;' em vez de Y; como uma varivel dual de modo que os parmetros na restrio original (aiJ e b;) se transformem imediatamente nos coeficientes dessa varivel no problema dual. Eis um mnemnico til para lembrar-se de quais devem ser as formas das restries duais. Em um problema de maximizao pode parecer sensato para uma restrio funcional estar na forma :5, ligeiramente estranho estar na forma = e um tanto bizarro estar na forma ::=:::. Similarmente, para um problema de minimizao, poderia parecer sensato estar na forma::=:::, ligeiramente estranho na forma = e um tanto bizarro estar na forma :5. Para uma restrio em uma varivel individual em qualquer tipo de problema, poderia parecer sensato ter uma restrio de no-negatividade, um tanto estranho no ter nenhuma restrio (de modo que a varivel no sofra restries de sinal) e bastante bizarro para a varivel com restrio de ser menor que ou igual a zero. Agora, relembre-se da correspondncia entre entidades nos problemas primal e dual indicados na Tabela 6.3, a saber: restrio funcional i em um problema corresponde varivel i no outro e vice-versa. O mtodo do sensatoestranho-bizarro ou, simplesmente, mtodo SEB, diz que a forma de uma restrio funcional ou a restrio em uma varivel bsica no problema dual deve ser sensata, estranha ou bizarra dependendo de se a forma para a entidade correspondente no problema primal for sensata, estranha ou bizarra. Eis um resumo:

O Mtodo SEB para a Determinao da Forma das Restries no Dual 3


1. Formule o problema primal seja na forma de maximizao ou de minimizao e, a seguir, o problema estar automaticamente na outra forma. 2. Classifique as diferentes formas das restries funcionais e das restries em variveis individuais no problema primal como sensatas, estranhas ou bizarras, de acordo com a Tabela 6.14. A classificao das restries funcionais depende de se o problema for de maximizao (use a segunda coluna) ou de minimizao (use a terceira coluna). 3. Para cada restrio em uma varivel individual no problema dual, use a forma que tem a mesma classificao para a restrio funcional no problema primal que corresponde a essa varivel dual (conforme indicado na Tabela 6.3). 4. Para cada restrio funcional no problema dual, utilize a forma que possui a mesma classificao na varivel individual correspondente no problema primal (conforme indicado na Tabela 6.3). As setas entre a segunda e terceira colunas da Tabela 6.14 indicam a correspondncia entre as formas de restries no primal e dual. Observe que a correspondncia sempre se d entre uma restrio funcional e uma restrio em uma varivel individual. J que o problema primal pode ser tanto um problema de maximizao como de minimizao, em que o dual ento ser o tipo oposto, a segunda coluna da tabela proporciona a forma para o problema de maximizao e a terceira coluna d a forma para o outro problema (um problema de minimizao). Para fins ilustrativos, considere o exemplo do tratamento radioterpico apresentado na Seo 3.4. (Seu modelo mostrado na pgina 45.) Para mostrar a converso em ambas as

Esse mnemmico particular (e outro relacionado) para lembrar quais devem ser as formas das restries duais foi sugerido por Arthur T. Benjamin, professor de matemtica no Harvey Mudd College. Um fato interessante e incrivelmente bizarro sobre o professor Benjamin que ele um dos maiores calculistas do mundo, capaz de realizar proezas como multiplicar rapidamente nmeros de seis dgitos de cabea.

6.4 ADAPTANDO PARA OUTRAS FORMAS PRIMAIS

221

direes na Tabela 6.14, comeamos com a forma de maximizao desse modelo como o problema primal, antes de usar a forma de minimizao (original). O problema primal na forma de maximizao mostrado no lado esquerdo da Tabela 6.15. Usando a segunda coluna da Tabela 6.14 para representar esse problema, as setas nessa tabela indicam a forma do problema dual na terceira coluna. Essas mesmas setas so usadas na Tabela 6.15 para indicar o problema dual resultante. (Por causa dessas setas, colocamos as restries funcionais por ltimo no problema dual em vez de sua posio superior usual.) Alm de cada restrio em ambos os problemas, inserimos (entre parnteses) um S, E ou B para classificar a forma como sensata, estranha ou bizarra. Conforme prescrito pelo mtodo SEB, a classificao para cada restrio dual sempre a mesma daquela da restrio primal correspondente. Entretanto, no h nenhuma necessidade (a no ser por aspectos ilustrativos) de se converter o problema primal para a forma de maximizao. Usando a forma de minimizao original, o problema primal equivalente mostrado no lado esquerdo da Tabela 6.16. Agora, utilizamos a terceira coluna da Tabela 6.14 para representar esse problema primal, em que as setas indicam a forma do problema dual na segunda coluna. Essas mesmas setas na Tabela 6.16 indicam o problema dual resultante do lado direito. Enfatizando, as classificaes das restries mostram a aplicao do mtodo SEB. Do mesmo modo que os problemas primais das Tabelas 6.15 e 6.16 so equivalentes, os dois problemas duais tambm so completamente equivalentes. O segredo para reconhecer essa equivalncia est no fato de que as variveis em cada verso do problema dual so as negativas daquelas na outra verso (y = -yi. y = -y 2 , y 3 = -Y:D Portanto, para cada verso, se forem usadas as variveis na outra verso e se tanto a funo objetivo quanto as

TABELA 6.14 Formas primai-dual correspondentes


Classlflca~o

Problema Primai (ou Problema Dual)


Maximizar

Problema Dual (ou Problema Primai)


Minimizar

Z (ou W)

W (ou Z)

Sensato Estranho Bizarro

Restrio i: forma :s forma= forma 2:

Varivel y; (ou x;): y;2: o Irrestrita yf :s o Restrio j: forma 2: ' forma= . forma :s

Sensato Estranho Bizarro

Varivel x1 (ou }'): Xj 2: o , Irrestrita X :S 0

TABELA 6.15 Uma forma primai-dual para o exemplo de tratamento radioterpico


Problema Primai Problema Dual
-

Maximizar sujeito a (S) (E) (B) e (S) (S)

-Z = -0,4x1

0,5x2,

Minimizar sujeito a

w=

2,7y,

+ 6y2 + 6y3,
(S) (E) (B)

0,3x1 + O,lx2 :s 2,7 0,5x1 + 0,5X2 = 6 0,6x1 + 0,4x2 2: 6


e

y,

2:

y2 sem restries em sinal

y3 :s o 0,3y, + 0,5y2 + 0,6y3 O, 1 Y1 + 0,5y2 + 0,4y3

x, X2

2: 2:

o 0

2: 2:

'

-0,4 -0,5

(S) (S)

222

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

TABELA 6.16 A outra forma primai-dual para o exemplo do tratamento radioterpico


Problema Primai Problema Dual

Minimizar sujeito a
(B)

Z = 0,4X1 + 0,5Xz,

Maximizar sujeito a

w=

2,7y + 6y2 + 6y3,

(E) (S)
e ($) (S)

0,3X1 + 0, 1 X2 0,5x1 + 0,5x2 0,6x1 + 0,4x2

:5

=
2:'.

2,7 6 6

y :s O y2 sem restries em sinal Y3 2:'. o


e

(B)

(E) (S)

x, X2

2:'. 2:'.

o 0

0,3y + 0,5y2 + 0,6Y3 :5 0,4 O, 1 y + 0,5y2 + 0,4Y3 :s 0,6

(S) (S)

restries forem multiplicadas por -1, ento a outra verso obtida. (0 Problema 6.4-5 pede para voc verificar isso.) Caso queira ver outro exemplo de emprego do mtodo SEB para construir um problema dual, apresentado um na seo de Exemplos Trabalhados do CD-ROM. Se o mtodo simplex fosse aplicado tanto ao problema primal quanto ao dual que possui quaisquer variveis com restrio de serem no-positivas (como y3 ::::: O, no problema dual da Tabela 6.15), essa varivel poderia ser substituda pelo seu equivalente no-negativo (por exemplo, y 3 = -y3). Quando as variveis artificiais so usadas para ajudar o mtodo simplex resolver um problema primal, a interpretao de dualidade da linha O da tabela simplex a seguinte: j que as variveis artificiais desempenham o papel de variveis de folga, seus coeficientes na linha O agora fornecem os valores das variveis duais correspondentes na soluo bsica complementar para o problema dual. Visto que as variveis artificiais so usadas para substituir o problema real por um artificial mais conveniente, esse problema dual, na verdade, o dual do problema artificial. Porm, aps todas as variveis artificiais se tomarem no-bsicas, estamos de volta aos problemas primal e dual reais. Com o mtodo das duas fases, as variveis artificiais teriam de ser retidas na fase 2 de modo a lerem a soluo dual completa da linha O. Com o mtodo do "grande nmero", uma vez que M foi adicionado inicialmente ao coeficiente de cada varivel artificial na linha O, o valor atual de cada varivel dual correspondente o coeficiente atual dessa varivel artificial menos M. Vejamos, por exemplo, na linha O na tabela simplex final para o exemplo do tratamento radioterpico, dado na parte inferior da Tabela 4.12. Aps M ter sido subtrado dos coeficientes das variveis artificiais :X4 e x6' a soluo tima para o problema dual correspondente na Tabela 6.15 lida a partir dos coeficientes de x 3 , x 4 , e x 6 como (y1' y2 , y3). Como de praxe, as variveis excedentes para as duas restries funcionais so lidas a partir dos coeficientes de x 1 e x2 como z1 - c 1 = O e z2 - c2 = O.

a.s o

PAPEL DA TEORIA DA DUALIDADE NA ANLISE DE SENSIBILIDADE


Conforme detalhes adicionais dados nas duas sees a seguir, a anlise de sensibilidade envolve, basicamente, investigar o efeito sobre a soluo tima de realizar-se mudanas nos valores dos parmetros de modelo au, b; e cj. Entretanto, modificar os valores de parmetros no problema primal tambm modifica os valores correspondentes no problema dual. Portanto, voc pode escolher qual problema usar para investigar cada mudana. Em razo dos inter-relacionamentos primal-dual apresentados nas Sees 6.1 e 6.3 (em particular a propriedade das solues bsicas complementares), fcil ficar alternando entre os dois tipos de problema conforme necessrio. Em alguns casos, mais conveniente analisar o problema dual diretamente para determinar o efeito da complementaridade no problema primal. Comeamos considerando dois desses casos.

6.5 O PAPEL DA TEORIA DA DUALIDADE NA ANLISE DE SENSIBILIDADE

223

Mudanas nos Coeficientes de uma Varivel No-bsica


Suponha que as mudanas feitas no modelo original ocorram nos coeficientes de uma varivel que era no-bsica na soluo tima original. Qual seria o efeito dessas modificaes sobre essa soluo? Ela ainda continua vivel? Ela ainda continua tima? Pelo fato de a varivel envolvida ser no-bsica (valor zero), modificar seus coeficientes no poder afetar a viabilidade da soluo. Portanto, a pergunta aberta nesse caso se ela ainda tima. Como indicam as Tabelas 6.10 e 6.11, uma questo equivalente se a soluo bsica complementar para o problema dual ainda vivel aps terem sido feitas essas modificaes. J que essas alteraes afetam o problema dual modificando apenas uma restrio, essa pergunta poder ser respondida simplesmente verificando se essa soluo bsica complementar ainda satisfaz essa restrio revisada. Iremos ilustrar esse caso na subseo correspondente da Seo 6. 7 aps desenvolver um exemplo relevante. A seo de Exemplos Trabalhados do CD-ROM tambm d um exemplo tanto para este caso quanto para o prximo.

Introduo de uma Nova Varivel


Como indicado na Tabela 6.6, as variveis de deciso no modelo representam tipicamente os nveis de vrias atividades sendo consideradas. Em algumas situaes, essas atividades seriam selecionadas de um grupo maior de atividades possveis, nas quais as atividades remanescentes no foram includas no modelo original, pois elas pareciam menos atrativas. Ou talvez essas outras atividades no tenham vindo tona at o modelo original ser formulado e resolvido. De qualquer maneira, a questo-chave se qualquer uma dessas atividades previamente desconsideradas for suficientemente interessante para se iniciar. Em outras palavras, acrescentar uma dessas atividades ao modelo modificaria a soluo tima original? Acrescentar outra atividade implica introduzir no modelo uma nova varivel, com os respectivos coeficientes das restries funcionais e funo objetivo. A nica mudana resultante no problema dual adicionar uma nova restrio (ver Tabela 6.3). Aps essas modificaes terem sido feitas, a soluo tima original, juntamente com a nova varivel (no-bsica) igual a zero, ainda seria tima para o problema primal? No que tange o caso precedente, uma pergunta equivalente seria se a soluo bsica complementar para o problema dual ainda vivel. E, como antes, essa pergunta pode ser respondida simplesmente verificando se essa soluo bsica complementar satisfaz uma restrio que, nesse caso, a nova restrio para o problema dual. Para exemplificar, suponhamos que para o problema da Wyndor Glass Co. da Seo 3.1 possamos ter um terceiro produto novo a ser considerado para incluso na linha de produtos. Fazendo que Xnova represente a taxa de produo para esse produto, mostramos o modelo revisado resultante como se segue: Maximizar sujeito a
X1

3x1

2x2 2x2

+ + +

2Xnova ::::; 4 3Xnova ::::; 12 Xnova ::::; 18

e
X1

2::

O,

Xnova 2:: .

Aps a introduo de variveis de folga, a soluo tima original para esse problema sem
Xnova (dado na Tabela 4.8) era (xi, x 2, x 3 , x 4 , x 5 ) = (2, 6, 2, O, 0). Essa soluo, juntamente com Xnova ainda tima?

Para responder essa questo, precisamos verificar a soluo bsica complementar para o problema dual. Conforme indicado pela propriedade das solues bsicas timas complementares na Seo 6.3, essa soluo dada na linha O da tabela simplex.fina/ para o problema primal, usando as posies mostradas na Tabela 6.4 e ilustradas na Tabela 6.5.

224

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

Portanto, conforme dado tanto na linha inferior da Tabela 6.5 quanto na sexta linha da Tabela 6.9, a soluo
(yj, Y2, y3,
Z1 -

Cj,

Z2 -

C2) = (O,

f,

1, O, o}

Alternativamente, essa soluo bsica complementar pode ser derivada da maneira que foi ilustrada na Seo 6.3 para a soluo bsica complementar na penltima linha da Tabela 6.9. J que essa soluo era tima para o problema dual original, ela certamente satisfaz as restries duais originais expostas na Tabela 6.1. Mas ela satisfaz essa nova restrio dual?
2y1

+ 3y2 + Y3 ;::::: 4

Agregando essa soluo, vemos que 2(0)

3(f) + (1);::::: 4

satisfeita, de modo que essa soluo dual ainda seja vivel (e, portanto, ainda seja tima). Conseqentemente, a soluo primal original (2, 6, 2, O, O), juntamente com Xnova = O, ainda tima, de maneira que esse possvel terceiro produto novo no deva ser adicionado linha de produtos. Essa metodologia tambm toma muito fcil a realizao da anlise de sensibilidade nos coeficientes da nova varivel acrescentada ao problema primal. Simplesmente verificando a nova restrio dual, podemos observar imediatamente quanto cada um dos valores desses parmetros pode ser alterado antes de eles afetarem a viabilidade da soluo dual e, portanto, a otimalidade da soluo primal.

Outras Aplicaes
J discutimos duas outras aplicaes importantes da teoria da dualidade na anlise de sensibilidade, a saber, os preos-sombra e o mtodo simplex dual. Conforme descrito nas Sees 4.7 e 6.2, a soluo dual tima (y[, yi, ... , y,!) fornece os preos-sombra para os respectivos recursos que indicam como Z mudaria se fossem feitas (pequenas) modificaes em b; (nas quantidades de recursos). A anlise resultante ser ilustrada com algum detalhe na Seo 6.7. Em termos mais genricos, a interpretao econmica do problema dual e do mtodo simplex apresentada na Seo 6.2 fornece alguns insights teis para a anlise de sensibilidade . Ao investigarmos o efeito de modificar os valores de b; e a;j (para as variveis bsicas), a soluo tima original pode tornar-se uma soluo bsica supertima (como definido na Tabela 6.10). Se quisermos ento reotimizar para identificar a nova soluo tima original, o mtodo simplex dual (discutido no final das Sees 6.1 e 6.3) deve ser aplicado, comeando dessa soluo bsica. Essa importante variante do mtodo simplex ser descrita na Seo 7 .1. Mencionamos na Seo 6.1 que algumas vezes mais eficiente resolver o problema dual diretamente pelo mtodo simplex de modo a identificar uma soluo tima para o problema primal. Quando for encontrada a soluo dessa maneira, a anlise de sensibilidade para o problema conduzida diretamente ao problema dual, aplicando-se o procedimento descrito nas duas sees seguintes e, depois, inferindo os efeitos complementares sobre o problema primal (por exemplo, ver Tabela 6.11 ). Essa abordagem para a anlise de sensibilidade relativamente direta em virtude dos inter-relacionamentos descritos nas Sees 6.1 e 6.3 (ver Problema 6.6-3.)

~!6.6 A ESSNCIA DA

SE DE SENSIBILIDADE

O trabalho realizado pela equipe de PO normalmente no est nem mesmo prximo do final quando o mtodo simplex foi aplicado com sucesso para identificar uma soluo tima para o modelo. Como indicado no final da Seo uma hiptese da programao linear que todos os parmetros do modelo (au, b; e c) so constantes conhecidas. Na verdade, os valo-

3.3,

6.6 A ESSNCIA DA ANLISE DE SENSIBILIDADE

225

res dos parmetros usados no modelo normalmente so apenas estimativas baseadas em uma previso de condies futuras. Os dados obtidos para desenvolver essas estimativas normalmente so bastante incipientes ou inexistentes, de modo que os parmetros na formulao original possam representar pouco mais que regras prticas rpidas fornecidas pela rea executiva. Os dados podem at mesmo representar superestimativas ou subestimativas deliberadas para proteger os interesses dos estimadores. Portanto, a equipe de PO e o gerente bem-sucedidos mantero um ceticismo saudvel sobre os nmeros originais provenientes de computadores e os interpretaro em muitos casos como meros pontos de partida para anlise adicional do problema. Uma soluo "tima" tima somente em relao ao modelo especfico que est sendo usado para representar o problema real e uma soluo destas se toma um guia confivel para ao somente aps confirmao de bom desempenho para outras representaes razoveis do problema. Alm disso, os parmetros do modelo (particularmente b;) algumas vezes so configurados como resultado de decises de polticas gerenciais (por exemplo, a quantidade de certos recursos a serem disponibilizados para as atividades) e essas decises devem ser revistas aps suas conseqncias potenciais serem reconhecidas. Por essas razes, importante realizar a anlise de sensibilidade para investigar o efeito sobre a soluo tima fornecida pelo mtodo simplex se os parmetros assumirem outros valores. Normalmente existiro alguns parmetros aos quais podero ser atribudos qualquer valor razovel sem afetar a otimalidade dessa soluo. Contudo, tambm podem haver outros parmetros com valores alternativos provveis que levariam a uma nova soluo tima. Essa situao particularmente grave se a soluo original tivesse ento um valor substancialmente menor da funo objetivo ou, quem sabe, at mesmo vir a ser invivel! Assim, um dos principais objetivos da anlise de sensibilidade o de identificar os parmetros sensveis (isto , parmetros cujos valores no podem ser alterados sem alterar a soluo tima). Para certos parmetros que no so classificados como sensveis, tambm muito til determinar o intervalo de valores do parmetro ao longo do qual a soluo tima permanecer inalterada. Chamamos esse intervalo de valores intervalo possvel para permanecer a soluo tima. Em alguns casos, alterar o valor de um parmetro pode afetar a viabilidade da soluo BV tima. Para tais parmetros, til determinar o intervalo de valores sobre o qual a soluo BV adjacente tima (com valores ajustados para as variveis bsicas) permanecer vivel. Denominamos esse intervalo de valores intervalo possvel para o parmetro envolvido. Esse intervalo de valores tambm o intervalo sobre o qual o preo-sombra atual para a restrio correspondente permanece vlido. Na prxima seo, descreveremos procedimentos especficos para obter esse tipo de informao. Tais informaes so inestimveis sob dois aspectos. Primeiramente, ela identifica os parmetros mais importantes de modo que se deve tomar cuidado especial ao estim-las e ao selecionar uma soluo que tenha bom desempenho para a maioria dos valores provveis. Em segundo lugar, ela identifica os parmetros que precisaro ser particularmente monitorados mais de perto medida que o estudo for implementado. Se for descoberto que o valor verdadeiro de um parmetro sai de seu intervalo possvel, isso sinaliza imediatamente a necessidade de se mudar de soluo. Para problemas pequenos, seria simples verificar o efeito de uma srie de mudanas nos valores de parmetros bastando reaplicar o mtodo simplex cada vez para ver se a soluo tima muda ou no. Isso particularmente conveniente ao usar uma formulao em planilha. Uma vez que o Solver tenha sido configurado para obter uma soluo tima, tudo o que precisamos fazer proceder a qualquer modificao desejada na planilha e, a seguir, clicar novamente no boto Solve. No entanto, para problemas maiores do tamanho tpico encontrado na prtica, a anlise de sensibilidade exigiria uma carga de processamento tremenda se fosse necessrio reaplicar o mtodo simplex desde o princpio para investigar cada nova mudana no valor de um parmetro. Felizmente, o insight fundamental discutido na Seo 5.3 praticamente elimina esse processamento. A idia bsica que o insight fundamental

226

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

revela imediatamente como quaisquer mudanas no modelo original modificariam os nmeros na tabela simplex final (partindo-se do pressuposto de que a mesma seqncia de operaes algbricas executada originalmente pelo mtodo simplex fosse duplicada). Desse modo, aps alguns clculos simples para revisar essa tabela, podemos verificar facilmente se a soluo BV tima original ainda continua tima (ou ento invivel). Em caso positivo, essa soluo seria usada como soluo bsica inicial para reiniciar o mtodo simplex (ou mtodo simplex dual) para encontrar uma nova soluo tima, se desejado. Se as alteraes no modelo no forem grandes, sero necessrias apenas algumas poucas iteraes para se chegar nova soluo tima a partir dessa soluo bsica inicial "adiantada". Para descrever esse procedimento de maneira mais especfica, considere a seguinte situao. O mtodo simplex j foi utilizado para obter uma soluo tima para um modelo de programao linear com valores especificados para os parmetros b;, cj e u Para iniciar a anlise de sensibilidade pelo me~os um desses parmetros deve ser alterado. Aps serem feitas as alteraes, faamos que b;, cj, e a;j representem os valores dos diversos parmetros. Portanto, em notao matricial,
b~b,
c~c,

A~A,

para o modelo reviso. O primeiro passo revisar a tabela simplex final para que reflita sobre essas alteraes. Particularmente, queremos encontrar a tabela final revisada que resultaria se, partindo da nova tabela inicial, fossem repetidas exatamente as mesmas operaes algbricas (inclusive os mesmos mltiplos de linhas sendo adicionados ou subtrados das demais linhas) que, partindo da tabela simplex inicial levaram tabela final. (Isso no necessariamente o mesmo que reaplicar o mtodo simplex j que as alteraes na tabela inicial poderiam fazer que o mtodo simplex mudasse parte das operaes algbricas sendo utilizadas.) Continuando a usar a notao apresentada na Tabela 5.10, bem como as frmulas que a acompanham para o insight fundamental [(l) t* = t + y*T e (2) T* = S*T], a tabela final revisada calculada a partir de y* e S* (que no mudaram) e a nova tabela inicial, conforme mostrado na Tabela 6.17. Note que y* e S* juntas so os coeficientes das variveis de folga na tabela simplex final, em que o vetor y* (as variveis duais) se iguala a esses coeficientes na linha O e a matriz S* fornece esses coeficientes em outras linhas da tabela. Portanto, usando simplesmente y*, S* e os nmeros revisados na tabela inicial, a Tabela 6.17 revela como os nmeros revisados no restante da tabela final so calculados imediatamente sem ter de repetir nenhuma operao algbrica.
Exemplo (Variao 1 do Modelo da Wyndor). Para exemplificar, suponha que a primeira reviso no modelo para o problema da Wyndor Glass Co. da Seo 3.1 seja aquela mostrada na Tabela 6.18.

TABELA 6.17 Tabela simplex final revisada resultante de mudanas feitas no modelo original
Coeficiente de:

Eq.
(O)
Nova tabela inicial

z
1

Variveis Originais Variveis de Folga Lado Direito


-e A
-

o
1

o
-

(1, 2, ... , m)

o
1

(O)
Tabela final revisada

z* - e= y*A- e A*= S*A


-

y* S*

Z* = y*b

(1, 2, ... , m)

b* = S*b

6.6 A ESSNCIA DA ANLISE DE SENSIBILIDADE

227

X]=

(O, 9)

tima

X]=

'\

\
\ \ \ \ \ ------------ --- ------------- 2x2 = 12
(2, 6) \

\ \ \ \ \ \ \

FIGURA 6.2

Deslocamento da soluo em ponto extremo final (2, 6) para (- 3, 12) para a Variao 1 do modelo da Wyndor Glass Co., onde c1 = 3 ~ 4, a 31 = 3 ~ 2 e b2 = 12 ~ 24.

\------"--\ \ \

TABELA 6.18 O modelo original e o primeiro modelo revisado (Variao 1) para conduzir anlise de sensibilidade no modelo do Wyndor Glass Co.
Modelo Original Modelo Revisado

Maximizar sujeito a

z=

[3, 5]

[::J

Maximizar sujeito a

Z = [4, 5]

[::J

e
X 2:

e
O.
X2:0.

Portanto, as alteraes do modelo original so c 1 = 3 ~ 4, a 31 = 3 ~ 2 e b2 = 12 ~ 24. A Figura 6.2 mostra o efeito grfico dessas mudanas. Para o modelo original, o mtodo simplex j identificou a soluo FPE tima como (2, 6), caindo na interseo dos dois limites de restrio, indicados como as retas tracejadas 2.x2 = 12 e 3x 1 + 2x2 = 18. Agora a reviso do modelo deslocou esses dois limites de restrio conforme demonstrado pelas retas cheias 2x2 = 24 e 3x1 + 2.x2 = 18. Conseqentemente, a soluo FPE anterior (2, 6) se desloca para a nova interseco ( - 3, 12), que uma soluo invivel em ponto extremo para o modelo revisado. O procedimento descrito nos pargrafos anteriores encontra esse deslocamento algebricamente (na forma aumentada). Alm disso, ele faz de tal maneira que muito eficiente at mesmo para problemas de grandes dimenses nos quais a anlise grfica impossvel.

228

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

Para desenvolver esse procedimento, comeamos exibindo os parmetros do modelo reviso na forma matricial:

e= [4, s1,

A nova tabela simplex inicial resultante mostrada na parte superior da Tabela 6.19. Abaixo dessa tabela simplex temos a tabela final original (conforme dado inicialmente na Tabela 4.8). Desenhamos quadros escuros em tomo dos trechos dessa tabela final cujas modificaes no modelo definitivamente no alteram, a saber, os coeficientes das variveis de folga tanto na linha O (y*) e o restante das linhas (S*). Assim,
1

y* = [O, ~. l],

-~i o.
1

Esses coeficientes das variveis de folga necessariamente permanecem inalterados com as mesmas operaes algbricas originalmente executadas pelo mtodo simplex, pois os coeficientes dessas mesmas variveis na tabela inicial permanecem inalterados. Entretanto, em virtude de outras partes da tabela inicial terem mudado, haver alteraes no restante da tabela final tambm. Usando as frmulas na Tabela 6.17, calculamos os nmeros revisados no restante da tabela final como se segue:

TABELA 6.19 Obtendo a tabela simplex final revisada para a Variao 1 do

modelo da Wyndor Glass Co.


Coeficiente de: Varivel Bsica
Eq.

z
1

x,
-4 1

Xz

X3

X4

Xs

Lado Direito

z
Nova tabela inicial
X3
X4 X5

(O)
(1) (2) (3)

-5

o o o

o
2

o
2 2

o
1

o o

o o
1

o
3 2 1 3 1 2 1 3 3 2 1

o o o
1

o
4 24 18

z
Tabela final parala original para o modelo original
X2

(O)
(1) (2)
(3)

o o o
1 -2 1 3

o o
1

o
1

1 1 3

36

X3

o o o
1

2
6

o o o
1

o
1 3 1 1 3

x,

o o o
1

2 54
6

z
X3

(O)
(1) (2)
(3)

o o o

Tabela final revisada


X2

3
1 2 1 3

o
2 3

o o

o
1 3

12 -2

x,

6.6 A ESSNCIA DA ANLISE DE SENSIBILIDADE

229

z' -

[O,

l.

H~] -[ ~
4,

51

[- 2, 01.

Z'

~[O, J, 11[~] ~

54,

1 ~ ~[

i
!

A tabela final revisada mostrada na parte inferior da Tabela 6.19. Na verdade, podemos otimizar substancialmente esses clculos para obter a tabela final revisada. Pelo fato de nenhum dos coeficientes de x 2 ter sofrido alterao no modelo original (tabela), nenhum deles pode mudar na tabela final, de modo que possamos eliminar seu clculo. Vrios outros parmetros originais (a 11 , a2 i. bi, b 3 ) tambm foram alterados, de maneira que outro atalho possa calcular somente as mudanas incrementais na tabela final em termos das mudanas incrementais na tabela inicial, ignorando esses termos na multiplicao da matriz ou vetor que no envolvem nenhuma mudana na tabela inicial. Particularmente, as nicas mudanas incrementais na tabela inicial so c 1 = 1, a 31 = -1 e b 2 = 12, de modo que estes so os nicos termos que precisam ser considerados. Essa metodologia racionalizada mostrada a seguir, em que um zero ou um trao aparecem em cada ponto onde no necessrio nenhum clculo.

(z* - e)= y* A - c = '

[O,~, 1][ ~
-1

] - [!,

-1

[-2, -].

AZ*

~ y' Ab ~[O, J, 11[ !~] ~ 18.

AA'

~
~

S' AA

~~
[

3 ! -3
1

-~][ ~
3 -1

]~[J

Ab'

S' Ab

~~
[

3
1

2 1 -3

-ml~l ~uJ

Adicionar esses incrementos s quantidades originais na tabela final (miolo da Tabela 6.19) leva ento tabela final revisada (parte inferior da Tabela 6.19). A anlise incremental tambm fornece um insight geral til, a saber, que mudanas na tabela final tm de ser proporcionais a cada mudana na tabela inicial. Ilustramos na prxima seo como essa propriedade nos permite usar a interpolao ou extrapolao linear para determinar o intervalo de valores para dado parmetro sobre o qual a soluo bsica final permanece tanto vivel quanto tima. Aps obter a tabela simplex final revisada, a seguir convertemos a tabela para a forma apropriada a partir da eliminao gaussiana (conforme a necessidade). Particularmente, a varivel bsica para a linha i deve ter um coeficiente 1 naquela linha e um coeficiente O

230

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

em uma linha sim e outra no (inclusive a linha O) para a tabela estar na forma apropriada para identificao e avaliao da soluo bsica atual. Portanto, se as mudanas tivessem violado essa exigncia (que pode ocorrer somente se os coeficientes de restrio originais de uma varivel bsica tiverem sido modificados), alteraes adicionais precisam ser feitas para recuperar essa forma. Essa recuperao feita usando-se a eliminao gaussiana, isto , aplicando sucessivamente o passo 3 de uma iterao para o mtodo simplex (ver Captulo 4) como se cada varivel bsica violadora fosse uma varivel bsica que entra. Note que essas operaes algbricas podem tambm causar mudanas adicionais na coluna lado direito, de modo que a soluo bsica atual possa ser lida a partir dessa coluna somente quando a forma apropriada da eliminao gaussiana tiver sido completamente restabelecida. Por exemplo, a tabela simplex final revisada mostrada na metade superior da Tabela 6.20 no se encontra na forma apropriada da eliminao gaussiana em decorrncia da coluna para a varivel bsica x 1 Especificamente, o coeficiente de x 1 em sua linha (linha 3) ~ em vez de 1 e ele tem coeficientes no-zero ( - 2 e ~ ) nas linhas Oe 1. Para restaurar a forma apropriada, a linha 3 multiplicada por ~; depois, 2 vezes essa nova linha 3 adicionada linha O e~ vezes a nova linha 3 subtrado da linha 1. Isso leva forma apropriada da eliminao gaussiana exposta na metade inferior da Tabela 6.20, que agora pode ser usada para identificar os novos valores para a soluo bsica (anteriormente tima) atual:

Pelo fato de x 1 ser negativo, essa soluo bsica no mais vivel. Entretanto, ela supertima (conforme definido na Tabela 6.10) e, portanto, vivel dual, pois todos os coeficientes na linha O ainda so no-negativos. Assim, o mtodo simplex dual pode ser usado para reotimizar (se desejado), iniciando dessa soluo bsica. O procedimento de anlise de sensibilidade no Tutorial IOR inclui essa opo. Referindo-se Figura 6.2 (e ignorando variveis de folga), o mtodo simplex dual usa apenas uma iterao para se deslocar da soluo em ponto extremo (-3, 12) para a soluo FPE tima (O; 9). (Normalmente til na anlise de sensibilidade identificar as solues que so timas para algum conjunto de valores provveis dos parmetros do modelo e depois determinar qual dessas solues executa de modo mais consistente e melhor os diversos intervalos de valores de parmetros.)

TABELA 6.20 Convertendo a tabela simplex final revisada para a forma apropriada da eliminao gaussiana para a Variao 1 do modelo Wyndor Glass Co.
Coeficiente de: Varivel Bsica Eq.
(O)

z
1

X1

X2

X3

X4

X5

Lado Direito 54
6

z
Tabela final revisada
Xj

-2 1 3

o o
1

o
1

(1)
(2)

o o o
1

X2

o
2 3

o o o
1

3 2 1 3 1

1 1 3

2
1 3 1 2 1

o
1 3 2 1 2

12 -2

X1

(3)

o o o
1

z
Convertido para a forma apropriada
X3

(O)

o o o
1

48
7

(1) (2)
(3)

o o o

2
1 2 1 2

X2

o o

o
1 2

12
-3

X1

6.6 A ESSNCIA DA ANLISE DE SENSIBILIDADE

231

Se a soluo bsica (-3, 12, 7, O, O) no fosse nem primal vivel nem dual vivel (isto , se a tabela tivesse entradas negativas tanto na coluna lado direito como na linha O), variveis artificiais poderiam ter sido introduzidas para converter a tabela na forma apropriada para uma tabela simplex inicial. 4 Procedimento Genrico. Quando se est testando para verificar quo sensvel uma soluo tima original para os diversos parmetros do modelo, a metodologia comum verificar individualmente cada parmetro (ou pelo menos c1 e b). Alm de encontrar intervalos possveis, conforme descrito na seo seguinte, essa verificao poderia incluir mudar o valor do parmetro de sua estimativa inicial para outras possibilidades no intervalo de valores possveis (inclusive os pontos extremos desse intervalo). A seguir, podem ser investigadas algumas combinaes das mudanas simultneas de valores de parmetros (por exemplo, modificar uma restrio funcional inteira). Cada vez que um ou mais parmetros so alterados, o procedimento descrito e ilustrado aqui seria aplicado. Faamos um resumo desse procedimento.

Sntese do Procedimento para Anlise de Sensibilidade

1. Reviso do modelo: Faa a(s) alterao(es) desejada(s) no modelo a ser investigado a seguir. 2. Reviso da tabela.final: Use o insight fundamental (conforme sintetizado pelas frmulas na parte inferior da Tabela 6.17) para determinar as mudanas necessrias na tabela simplex final. (Ver Tabela 6.19 para um exemplo.) 3. Converso para a forma apropriada da eliminao gaussiana: Converta essa tabela para a forma apropriada a fim de identificar e avaliar a soluo bsica atual aplicando (se necessrio) a eliminao gaussiana. (Ver Tabela 6.20 para um exemplo.) 4. Teste de viabilidade: Teste essa soluo em termos de viabilidade verificando se os valores de todas variveis bsicas na coluna do lado direito da tabela simplex ainda so no-negativos. 5. Teste de otimalidade: Teste essa soluo em termos de otimalidade (se vivel) verificando se todos os seus coeficientes de variveis no-bsicas na linha O da tabela simplex ainda so no-negativos. 6. Reotimizao: Se essa soluo falhar em ambos os testes, a nova soluo tima pode ser obtida (se desejado) usando a tabela atual como tabela simplex inicial (e fazendo quaisquer converses necessrias) para o mtodo simplex ou mtodo simplex dual.
A rotina interativa intitulada anlise de sensibilidade no Tutorial IOR permitir que voc pratique, de forma eficiente, a aplicao desse procedimento. Alm disso, h mais um exemplo em uma demonstrao no Tutorial IOR (tambm intitulada anlise de sensibilidade). Para problemas com apenas duas variveis de deciso, a anlise grfica uma alternativa para o procedimento algbrico acima na realizao de anlise de sensibilidade. O Tutorial IOR inclui um procedimento denominado Mtodo Grfico e Anlise de Sensibilidade que lhe permite realizar esse tipo de anlise grfica de modo muito eficiente. Na prxima seo discutiremos e ilustraremos a aplicao do procedimento algbrico acima para cada uma das principais categorias de revises no modelo original. Tambm usaremos a anlise grfica para esclarecer o que est acontecendo em termos algbricos. Essa discusso vai envolver, em parte, a expanso do exemplo introduzido nesta seo para investigar mudanas no modelo da Wyndor Glass Co. Na realidade, comearemos verificando individualmente cada uma das mudanas anteriores. Ao mesmo tempo, integraremos parte das aplicaes da teoria da dualidade anlise de sensibilidade discutida na Seo 6.5.

Tambm existe um algoritmo primai-dual que pode ser diretamente aplicado a tabelas simplex sem nenhuma converso.

232

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

f'

~~;s+;,

;i.7 APLICANDO A ANLISE DE SENSIBILIDADE


A anlise de sensibilidade normalmente comea pela investigao das mudanas nos valores de b;, a quantidade de recurso i (i = 1, 2, .. ., m) que est sendo disponibilizada para as atividades em considerao. A razo que geralmente h maior flexibilidade em configurar e ajustar esses valores do que haveria para os demais parmetros do modelo. Conforme j discutido nas Sees 4.7 e 6.2, a interpretao econmica das variveis duais (os y;) como preos-sombra extremamente til para decidir que mudanas deveriam ser consideradas.

Caso 1 - Mudanas em b1
Suponha que as nicas modificaes no modelo atual sejam que um ou mais dos parmetros b; (i = 1, 2, ... , m) tenham sido alterados. Nesse caso, as nicas mudanas resultantes na tabela simplex final se encontram na coluna do lado direito. Conseqentemente, a tabela ainda estar na forma apropriada da eliminao gaussiana e todos os coeficientes de variveis no-bsicas na linha O ainda sero no-negativos. Logo, tanto a etapa de converso para a forma apropriada da eliminao gaussiana como a do teste de otimalidade do procedimento geral podem ser omitidas. Aps revisar a coluna do lado direito da tabela, a nica questo ser se todos os valores das variveis bsicas nessa coluna ainda so nonegativos (o teste da viabilidade). Conforme mostrado na Tabela 6.17, quando o vetor dos valores b; for alterado de b para b, as frmulas para calcular a nova coluna do lado direito na tabela final sero Lado direito da linha O final: Lado direito das linhas 1, 2, ... , m finais: Z* = y*~, b* = S*b.

(Ver a parte inferior da Tabela 6.17 para a localizao do vetor y* e matriz S* inalterados na tabela final.) A primeira equao tem uma interpretao econmica natural que se relaciona com a interpretao econmica das variveis duais apresentada no incio da Seo 6.2. O vetor y* d os valores timos das variveis duais nas quais esses valores so interpretados como os preos-sombra dos respectivos recursos. Particularmente, quando Z* representar o lucro de usar-se a soluo primai tima x* e cada b; representar a quantidade de recurso i que est sendo disponibilizada, y[ indica em quanto seria aumentado o lucro por unidade incremental em b; (para pequenos acrscimos em b;).
Exemplo (Variao 2 do Modelo da Wyndor). A anlise de sensibilidade iniciada para o problema original da Wyndor Glass Co. da Seo 3 .1 examinando-se os valores timos das variveis duais Y; (y'f = O, yi = ~, yf = 1). Esses preos-sombra do o valor marginal de cada recurso i (a capacidade produtiva disponvel da Fbrica i) para as atividades (dois produtos novos) em considerao, em que o valor marginal expresso em unidades de Z (milhares de dlares de lucro por semana). Conforme discutido na Seo 4.7 (ver Figura 4.8), o lucro total obtido dessas atividades pode ser aumentado em US$ 1.500 por semana (yi vezes US$ 1.000 por semana) para cada unidade adicional do recurso 2 (hora de produo por semana na Fbrica 2) que disponibilizado. Esse aumento no lucro vlido para mudanas relativamente pequenas que no afetam a viabilidade da soluo bsica atual (e no afetam os valores yi). Conseqentemente, a equipe de PO investigou a lucratividade marginal dos demais empregos desse recurso para determinar se qualquer um deles menor que US$ 1.500 por semana. Essa investigao revela que um produto antigo bem menos lucrativo. A taxa de produo para esse produto j foi reduzida ao mnimo que justificaria suas despesas de comercializao. Entretanto, ele pode ser descontinuado completamente, o que forneceria um adicional de 12 unidades do recurso 2 para os novos produtos. Portanto, a prxima etapa determinar o lucro que poderia ser obtido dos novos produtos caso essa mudana fosse realizada. Essa mudana altera b 2 de 12 para 24 no modelo de programao linear. A Figura 6.3 mostra o efeito grfico dessa mudana, inclusive o deslocamento na soluo em ponto extremo final de (2, 6) para (-2, 12).

6.7 APLICANDO A ANLISE DE SENSIBILIDADE

233

14

x, =o

X]=

- - - 2x2 = 12

FIGURA 6.3

Regio de solues viveis para a Variao 2 do modelo da Wyndor Glass Co. em que b2 = 12 ~ 24.

X]

(Note que essa figura difere da Figura 6.2, que representa a Variao 1 do modelo da Wyndor, pois a restrio 3x 1 + 2x2 :=::; 18 no foi alterada aqui.) Assim, para a Variao 2 do modelo Wyndor, a nica reviso no modelo original a mudana a seguir no vetor dos valores b;:

portanto, somente b 2 tem um novo valor.

Anlise da Variao 2. Quando o insight (Tabela 6.17) aplicado, o efeito dessa mudana em b 2 na tabela simplex final original (miolo da Tabela 6.19) que as entradas na coluna do lado direito mudam para os seguintes valores:

Z'

~ ~[O, J, 1][~] ~ 54,


y')

Equivalentemente, pelo fato de a nica mudana no modelo original ser 6.b2 = 24 - 12


= 12, a anlise incremental pode ser usada para calcular esses mesmos valores de modo mais

rpido. A anlise incremental envolve calcular apenas os incrementos nos valores da tabela causados pela mudana (ou mudanas) no modelo original e depois adicionar esses incrementos aos valores originais. Nesse caso, os incrementos em Z* e b* so

234

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

az

y'db

y [

El ~ ,. [IH
[E:l ~
S*

db

s db

[ln
+ 18 = 54,
=

Portanto, usando o segundo componente de y* e a segunda coluna de S*, os nicos clculos necessrios so ilZ* = 1(12) = 18, de modo que Z* = 36 de modo que de modo que

ilbi

t(l2) = 4,

bi
bi

= =

2 6

+4

6,

ilbi = +(12) = 6,
Libj = -t(12) = -4,

+ 6 = 12,

de modo que bj = 2 - 4 = - 2,

em que os valores originais dessas quantidades so obtidos da coluna direita na tabela final original (parte central da Tabela 6.19). A tabela final revisada resultante corresponde completamente a essa tabela final original, exceto por substituir a coluna do lado direito com esses novos valores. Assim, a soluo bsica atual (anteriormente tima) se toma
(xi.
Xz,

x 3 , x 4 , x 5 ) = (-2, 12, 6, O, O),

que falha no teste de viabilidade em razo do valor negativo. O mtodo simplex dual agora pode ser aplicado, comeando com essa tabela simplex revisada, para encontrar a nova soluo tima. Esse mtodo leva em apenas uma iterao nova tabela simplex final mostrada na Tabela 6.21. Alternativamente, o mtodo simplex poderia ser aplicado a partir do incio, que tambm levaria a esta tabela final em apenas uma iterao nesse caso. Essa tabela indica que a nova soluo tima

com Z = 45, gerando, portanto, um aumento no lucro dos novos produtos de nove unidades (US$ 9.000 por semana) em relao ao Z = 36 anterior. O fato de que x4 = 6 indica que seis das 12 unidades adicionais do recurso 2 no so usadas por essa soluo. Baseado nos resultados com b 2 = 24, o produto antigo relativamente no lucrativo ser descontinuado e as seis unidades do recurso 2 no utilizadas sero poupadas para algum uso futuro. J que yj ainda positivo, um estudo similar feito sobre a possibilidade de mudar a alocao do recurso 3, mas a deciso resultante reter a alocao atual. Assim, o modelo de programao linear atual nesse ponto (Variao 2) tem os valores de parmetro e a soluTABELA 6.21 Dados para a Variao 2 do modelo da Wyndor Glass Co.
Tabela Simplex Final aps a Reotimizao Coeficiente de: Varivel Bsica
Parmetros do Modelo
C1 =

Eq.

z
1

X1

X2

X3

X4

Xs

Lado Direito
45 4

z
X3
X2 X4

(O)
(1) (2)

3,

Cz

11
21

1,
3,

G12 = G22 a32

=o,

G31 =

5 0, = 2, = 2,
=

(n = 2)

bi

= = =

b2 b3

4 24

18

(3)

o o o

9 2 1 3 2 -3

o o
1

o
1

o o

o o o
1

5 2

o
1 2

9
6

-1

6.7 APLICANDO A ANLISE DE SENSIBILIDADE

235

o tima mostrada na Tabela 6.21. Esse modelo ser usado como ponto de partida para investigar outros tipos de mudanas no modelo posterior nesta seo. Entretanto; antes de passarmos a esses outros casos, vejamos o caso atual de maneira mais ampla. Intervalo Possvel para o Lado Direito. Embora b 2 = 12 provou ser grande o aumento em b 2 para manter a viabilidade (e, portanto, otimalidade) com a soluo bsica, em que Xi. Xz, e x 3 so as variveis bsicas (parte central da Tabela 6.19), a anlise incremental anterior mostra imediatamente quanto pode ser o aumento em termos de viabilidade. Note, particularmente, que

b'{ = 2

b2,

*b2 - 6
bj = 2

1 ubz, A +2

-t

bz,

em que essas trs quantidades so os valores de x 3 , x 2 e xi. respectivamente, para essa soluo bsica. A soluo permanece vivel e, portanto, tima, desde que todas as trs quantidades permaneam no-negativas. 1 1 2 + 3 b2:::::: o=> 3 b2:::::: -2 => b2:::::: -6, 6

+ 2 b2 :::::: o => 2 b2 ::::::

-6 => b2 :::::: -12,

2 -

3
::5

b2 :::::: o => 2 ::::::

b2

=> b2

::5

6.

Desse modo, j que b2 = 12

+ b 2, a soluo permanece vivel somente se


6
::5

-6

b2

::5

6,

isto ,

b2

::5

18

(Verifique isso graficamente na Figura 6.3.) Conforme introduzido na Seo 4.7, esse intervalo de valores para b2 referido como seu intervalo possvel. Para qualquer b;, lembre-se de que, da Seo 4.7, seu intervalo possvel o intervalo de valores sobre o qual a soluo BV tima5 (com valores ajustados para as variveis bsicas) permanece vivel. Portanto, o preo-sombra para b; permanece vlido para avaliar o efeito sobre Z de mudar b; somente enquanto b; permanecer dentro desse intervalo possvel. Supe-se que a mudana nesse valor b; seja a nica mudana no model~ Os valores ajustados para as variveis bsicas so obtidos da frmula b* = S*b. O clculo do intervalo possvel se baseia ento em encontrar o intervalo de valores de b; tais que b* :::::: O. Muitos pacotes de software para programao linear usam essa mesma tcnica para gerar automaticamente o intervalo permissvel para cada b;. Uma tcnica similar, discutida nos Casos 2a e 3, tambm utilizado para gerar um intervalo possvel para permanecer timo para cada c1.) No Captulo 4, mostramos a sada correspondente para o Excel Solver e lindo, respectivamente, nas Figuras. 4.1 O e A4.2. A Tabela 6.22 resume essa mesma sada em relao ao b; para o modelo original da Wyndor Glass Co. Por exemplo, tanto o acrscimo permissvel quanto o decrscimo permissvel para b 2 6, isto , -6 ::5 b 2 ::5 6. A anlise acima mostra como essas quantidades foram calculadas. Analisando Mudanas Simultneas nos Lado~ Direitos. Quando vrios valores b; so alterados simultaneamente, a frmula b* = S*b pode novamente ser usada para ver como os lados direitos mudam na tabela final. Se todos os lados direitos ainda forem nonegativos, o teste de viabilidade indicar que a soluo revisada fornecida por essa tabela ainda vivel. Uma vez que a linha O no foi modificada, ser vivel implica que essa soluo tambm tima.
Quando houver mais de uma soluo BV tima para o modelo atual (antes de modificar b,), aqui, estamos nos referindo quele obtido pelo mtodo simplex.

236

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

Embora essa abordagem funcione bem para verificar o efeito de um conjunto especfico de mudanas em b;, ela no nos d muita informao at quanto b; pode ser alterado simultaneamente a partir de seus valores originais antes de a soluo revisada tornar-se no mais vivel. Como parte da anlise de ps-otimalidade, a direo de uma organizao normalmente est interessada em investigar o efeito de vrias mudanas em decises de polticas (por exemplo, as quantidades de recursos disponibilizados para as atividades em estudo) que determinam os lados direitos. &n vez de considerar apenas um conjunto especfico de mudanas, a administrao quer explorar direes das mudanas onde alguns lados direitos aumentam ao passo que outros diminuem. Os preos-sombra so inestimveis para esse tipo de explorao. Entretanto, os preos-sombra permanecem vlidos para avaliar o efeito de tais mudanas em Z somente dentro de certos intervalos de mudana. Para cada b;, o intervalo possvel fornece esse intervalo se nenhum dos demais b; estiver mudando ao mesmo tempo. O que acontece a esses intervalos possveis quando alguns dos b; mudam ao mesmo tempo? Uma resposta parcial a essa pergunta fornecida pela seguinte regra dos 100%, que combina mudanas possveis (acrscimo ou decrscimo) para o b; individual que so dadas pelas duas ltimas colunas de uma tabela como a Tabela 6.22. Regra dos 100% para Mudanas Simultneas nos Lados Direitos: Os preossombra permanecem vlidos para prever o efeito de mudanas simultneas nos lados direitos de algumas das restries funcionais desde que as mudanas no sejam muito grandes. Para verificar se as mudanas so suficientemente pequenas, calcule cada alterao da porcentagem da mudana possvel (acrscimo ou decrscimo) para esse lado direito permanecer dentro de seu intervalo possvel. Se a soma das mudanas porcentuais no exceder 100%, os preos-sombra certamente ainda permanecero vlidos. Se a soma exceder 100%, ento no podemos ter certeza disso.
Exemplo (Variao 3 do Modelo da Wyndor). Para exemplificar essa regra, consideremos a Variao 3 do modelo da Wyndor Glass Co., que revisa o modelo original alterando o vetor do lado direito como se segue:

Os clculos para a regra dos 100% nesse caso so


b2 : 12

15.

Porcentagem de acrscimo possvel = 100 (

15

12

) = 50%

b3 : 18

15.

Porcentagem de decrscimo possvel = 100 (

18

15

) = 50%

Soma= 100%

TABELA 6.22 Sada tpica gerada por software para anlise de sensibilidade dos

lados direitos para o modelo original da Wyndor Glass Co.


Restrio
Fbrica 1 Fbrica 2 Fbrica 3

Preosombra

Lado Atual Direito


4 12 18

Acrscimo Possvel
00

Decrscimo Possvel
2

o
1,5 1

6 6

6 6

6.7 APLICANDO A ANLISE DE SENSIBILIDADE

237

J que a soma dos 100% quase no excede os 100%, certamente os preos-sombra so vlidos para prever o efeito dessas mudanas sobre Z. Particularmente, uma vez que os preossombra de b2 e b3 so, respectivamente, 1,5 e 1, a mudana resultante em Z seria
~=

1,5(3)

+ 1(-3) = 1,5,

de modo que Z* passaria de 36 para 37,5. A Figura 6.4 mostra a regio de solues viveis para esse modelo revisado. As retas tracejadas apontam as posies originais das retas de limite de restrio revisadas. A soluo tima agora a soluo FPE (O, 7 ,5), que resulta em Z = 3x1

+ 5x2 = O + 5(7,5) = 37,5,

conforme previsto pelos preos-sombra. Entretanto, observe o que aconteceria se b2 fosse aumentado ainda mais, acima de 1,5 ou ento b 3 fosse diminudo ainda mais, abaixo de 1,5, de modo que a soma das porcentagens das mudanas possveis excedesse 100%. Isso faria que a soluo em ponto extremo tima anterior se deslocasse para a esquerda do eixo x 2 (x 1 < O), de modo que essa soluo invivel no seria mais tima. Conseqentemente, os preos-sombra antigos no seriam mais vlidos para prever o novo valor de Z*.

Caso 2a - Mudanas nos Coeficientes de uma Varivel No-bsica


Considere uma varivel bsica particular x1 (j fixo) que uma varivel no-bsica na soluo tima exibida pela tabela simplex final. No Caso 2a, a nica alterao no modelo atual que um ou mais coeficientes dessa varivel - c1, a 11 , a 21 , ... , amJ - foram a_!!erados. Portanto, fazen-o qu 1 e 1 representem os novos valores desses parmetros, com A1 (colunaj da matriz A) como o vetor contendo o a;1,temos

c a;

para o modelo revisado.


li FIGURA 6.4 Regio de solues viveis para a Variao 3 do modelo da Wyndor Glass Co. em que b2 = 12 ~ 15 e b3 = 18 ~ 15.

8
9"'--'--'--"-\---------+---

tima
\ \ \ \

2x2

15

---->,;------\ \ \ \ \ \ \
X]=

\ \ \ \ \ \ \ \

\ \ \ \ \

3x 1 +\~x2 = 15
\ \

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

Conforme descrito no incio da Seo 6.5, a teoria da dualidade oferece uma maneira muito conveniente de se verificar essas mudanas. Particularmente, se a soluo bsica complementar y* no problema dual ainda satisfizer a nica restrio dual que foi alterada, ento a soluo tima original no problema primai permanece tima como est. Ao contrrio, se y* violar essa restrio dual, ento essa soluo primal no ser mais tima. Se a soluo tima tiver sido modificada e voc quiser encontrar uma nova, poder faz-lo facilmente. Basta aplicar o insight fundamental para revisar a coluna xj (a nica que foi alterada) na tabela simplex final. Especificamente, as frmulas na Tabela 6.17 reduzemse ao seguinte: Coeficiente de Coeficiente de
Xj Xj

na linha O final: z/ - cj ~y*Aj nas linhas 1 a m finais: A/ = S* Aj.

cj,

Com a soluo bsica atual no sendo mais tima, o novo valor de z/ - cj agora ser o coeficiente negativo na linha O; portanto, reinicie o mtodo simplex com xj sendo a varivel bsica que entra inicial. Note que esse procedimento uma verso otimizada do procedimento geral resumido no final da Seo 6.6. Os passos 3 e 4 (converso para a forma apropriada da eliminao gaussiana e o teste de viabilidade) foram eliminados por serem irrelevantes, visto que a nica coluna que est sendo alterada na reviso da tabela final (antes da reotimizao) para a varivel no-bsicaxj. O passo 5 (teste de otimalidade) foi substitudo por um teste de otimalidade mais rpido a ser realizado logo aps o passo 1 (reviso do modelo). Somente se esse teste revelar que a soluo tima mudou e, voc quiser encontrar uma nova, que os passos 2 e 6 (reviso da tabela final e reotimizao) sero necessrios.
Exemplo (Variao 4 do Modelo da Wyndor). J que xi no-bsica na soluo tima atual (ver Tabela 6.21) para a Variao 2 do modelo Wyndor Glass Co., o prximo passo em sua anlise de sensibilidade verificar se quaisquer alteraes razoveis nas estimativas dos coeficientes de xi poderiam ainda tomar interessante a introduo do produto 1. O conjunto de mudanas que vai o mais longe possvel para tomar o produto 1 mais atrativo seria reconfigurar ci = 4 e a 3 i = 2. Em vez de explorar cada uma dessas alteraes de modo independente (como normalmente feito na anlise de sensibilidade), iremos consider-las em conjunto. Portanto, as modificaes em considerao so

Estas duas alteraes na Variao 2 nos do a Variao 4 do modelo da Wyndor. A Variao 4, na verdade, equivalente Variao 1 considerada na Seo 6.6 e representada na Figura 6.2, uma vez que a Variao 1 combinou essas duas mudanas com a mudana no modelo Wyndor original (b 2 = 12 ~ 24) que nos deu a Variao 2. Entretanto, a diferenachave entre o tratamento da Variao 1 na Seo 6.6 que a anlise da Variao 4 trata a Variao 2 como o modelo original, de modo que nosso ponto de partida seja a tabela simplex final dada na Tabela 6.21 em que xi agora uma varivel no-bsica. A mudana em a 31 revisa a regio de solues viveis daquela mostrada na Figura 6.3 para a regio correspondente na Figura 6.5. A mudana em ci revisa a funo objetivo, passando de Z = 3xi + 5x2 para Z = 4xi + 5x2 . A Figura 6.5 revela que a reta da funo objetivo tima Z = 45 = 4xi + 5x2 ainda passa pela soluo tima atual (O, 9), de modo que essa soluo permanea tima aps essas alteraes em a 3 i e ci. Para usar a teoria da dualidade para chegarmos a essa mesma concluso, observe que as mudanas em ci e a 3 i levaram a uma nica restrio revisada para o problema dual, a saber, a restrio de que uYi + a 2 iY2 + a 3 iy 3 ;::::: c 1 Tanto essa restrio revisada quanto o y* atual (coeficientes das variveis de folga na linha O da Tabela 6.21) so mostradas a seguir.

6.7 APLICANDO A ANLISE DE SENSIBILIDADE

239

12 1 - - - - - - - - - 1 - - - - - - 2x2 = 24

10
(O, 9) tima

x,

FIGURA 6.5 Regio de solues viveis para a Variao 4 do modelo da Wyndor em que a Variao 2 (Figura 6.3) foi revisada de modo que a
031 =

C1

= 3

~ 2 ~ 4.

yf =O,
Y1

yf =O,

* Y3

- 5 -2,

+ 3y3 2:: 3 ~ y 1 + 2y3 2:: 4,

o+

2(%) 4.
2::

Uma vez que y* ainda satisfaz a restrio revisada, a soluo primal atual (Tabela 6.21) tima. Pelo fato de essa soluo ainda ser tima, no h nenhuma necessidade de revisar a coluna xj na tabela final (passo 2). No obstante, fazemos isso a seguir apenas para fins ilustrativos.

zt - e, = y'A, - e, ~ [O, O, li[~]- 4 ~ 1.


o o
1

-1

o [ 1] ][1]
~
=

1 .

-2

O fato de que zi - c1 2:: O, confirma novamente a otimalidade da soluo atual. J que c 1 a varivel excedente para a restrio revisada no problema dual, essa maneira de testar a otimalidade equivalente quela usada anteriormente. Isso completa a anlise do efeito de mudarmos o modelo atual (Variao 2) para a Variao 4. Pelo fato de quaisquer mudanas maiores nas estimativas originais dos coeficientes de x 1 serem irreais, a equipe de PO conclui que esses coeficientes so parmetros insensveis no presente modelo. Portanto, eles sero mantidos fixos em suas melhores estimativas mostradas na Tabela 6.21 (c 1 = 3 e a 31 = 3) para o restante da anlise de sensibilidade.

z1 * -

240

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

Intervalo Possvel para a Soluo Permanecer tima. Acabamos de descrever e exemplificar como analisar mudanas simultneas nos coeficientes de uma varivel nobsica x1. prtica comum na anlise de sensibilidade tambm se concentrar no efeito de mudar apenas um parmetro, c1. Conforme a introduo feita na Seo 4.7, isso envolver racionalizar a metodologia anterior para encontrar o intervalo possvel para a soluo permanecer tima para c1,
Para qualquer c1, relembre-se da Seo 4.7 de que seu intervalo possvel para a soluo permanecer tima o intervalo de valores sobre o qual a soluo tima atual (como obtida pelo mtodo simplex antes de c1 ser modificado) permanece tima. Parte-se do pressuposto de que a mudana nesse c1 a nica alterao feita no modelo atual. Quando x1 for uma varivel no-bsica para essa soluo, a soluo permanece tima desde que zj - c 1 2: O, em que zj = y* A1 uma constante que no afetada por qualquer alterao no valor de c1. Logo, o intervalo possvel para a soluo permanecer tima para c1 pode ser calculado como c1 :S y* A1. Considere, por exemplo, o modelo atual (Variao 2) para o problema da Wyndor Glass Co. sintetizado no lado esquerdo da Tabela 6.21, no qual a soluo tima atual (com c 1 = 3) dada no lado direito. Ao considerar somente as variveis de deciso, x 1 e x 2 , essa soluo tima (x 1, x 2 ) = (O, 9) como mostrado na Figura 6.3. Quando apenas c 1 alterado, essa soluo permanece tima desde que

de modo que c 1 :S 7~ seja o intervalo possvel para a soluo permanecer tima. Uma alternativa para realizar essa multiplicao de vetores observar na Tabela 6.21 que z't - c 1 =~(o coeficiente de x1 na linha O) quando c 1 = 3, de maneira que z't = 3 + ~ = 7~. J que z't = y*Ai. isso nos conduz imediatamente ao mesmo intervalo possvel. A Figura 6.3 fornece uma viso grfica do porqu c 1 :S 7~ o intervalo possvel. Em c 1 = 7~, a funo objetivo se toma Z = 7,5x 1 + 5x2 = 2,5(3x 1 + 2x 2 ), de modo que a reta objetivo tima caia sobre a reta de limite de restrio 3x 1 + 2x2 = 18 mostrada na figura. Portanto, nesse ponto extremo do intervalo possvel, temos vrias solues timas formadas pelo segmento de reta entre (O, 9) e (4, 3). Se c 1 fosse aumentado alm (c 1 > 7~), somente (4, 3) seria tima. Conseqentemente, precisamos que c 1 :S 7~ para (0, 9) permanecer tima. O Tutorial IOR inclui um procedimento denominado Mtodo Grfico e Anlise de Sensibilidade que lhe permite realizar esse tipo de anlise grfica de modo muito eficiente. Para qualquer varivel de deciso no-bsica x1, o valor de zj - c1 algumas vezes chamado custo reduzido para x1, pois ele a quantidade mnima pela qual o custo unitrio da atividade teria de ser reduzido para fazer que valha a pena empreender a atividade j (aumentar x1 a partir de zero). Interpretando c1 como o lucro unitrio da atividade j (portanto, reduzindo o custo unitrio aumentaria c1 da mesma quantidade), o valor de zj - c 1 resultante o aumento mximo permissvel em c1 para manter a soluo BV atual tima. As informaes de anlise de sensibilidade geradas pelos pacotes de software para programao linear normalmente incluem tanto o custo reduzido quanto o intervalo possvel para permanecer tima para cada coeficiente da funo objetivo Guntamente com os tipos de informao mostrados na Tabela 6.22). Isso foi ilustrado nas Figuras. 4.10, A4.1 e A4.2 para o Excel Solver e Lindo. A Tabela 6.23 mostra essas informaes em uma forma tpica para nosso modelo atual (Variao 2 do modelo da Wyndor Glass Co.). As trs ltimas colunas so usadas para calcular o intervalo possvel para a soluo permanecer tima para cada coeficiente de modo que esses intervalos possveis sejam
C1 :S
Cz

2:

3 + 4,5 = 7 ,5, 5 - 3 = 2.

6.7 APLICANDO A ANLISE DE SENSIBILIDADE

241

TABELA 6.23 Sada tpica gerada por software para anlise de sensibilidade dos coeficientes da funo objetivo para a Variao 2 do modelo da Wyndor Glass Co.

Varivel

Valor

Custo Reduzido
4.5

Coeficiente Atual
3

Acrscimo Possvel
4.5
oc

Decrscimo Possvel
3

o
9

Como discutido na Seo 4.7, se qualquer um dos acrscimos ou decrscimos possveis acabarem ficando em zero, isso seria um sinal de que a soluo tima dada na tabela apenas uma de vrias solues timas. Nesse caso, alterando um pouquinho o coeficiente correspondente alm de zero e recalculando-se, iria fornecer outra soluo FPE para o modelo original. At ento, descrevemos como calcular o tipo de informao na Tabela 6.23 somente para variveis no-bsicas. Para uma varivel bsica como x 2 , o custo reduzido automaticamente O. Discutiremos como obter o intervalo possvel para permanecer tima para cj quando xj for uma varivel bsica no Caso 3.

Analisando Mudanas Simultneas nos Coeficientes da


Independentemente se xj for uma varivel bsica ou no, o intervalo possvel para a soluo permanecer tima para cj vlido apenas se o coeficiente dessa funo objetivo for o nico que est sendo alterado. Entretanto, quando forem feitas mudanas simultneas nos coeficientes da funo objetivo, temos disposio uma regra dos 100% para verificar se a soluo original ainda deve permanecer tima ou no. Muito semelhante regra dos 100% para mudanas simultneas nos lados direitos, essa regra dos 100% combina as mudanas possveis (acrscimo ou decrscimo) para os cj individuais que so dados pelas duas ltimas colunas de uma tabela como a Tabela 6.23, conforme descrito a seguir.

Regra dos 100% para Mudanas Simultneas nos Coeficientes da Funo Objetivo: Se forem feitas mudanas simultneas nos coeficientes da funo objetivo, calcule para cada mudana a porcentagem da mudana possvel (acrscimo ou decrscimo) para aquele coeficiente permanecer dentro de seu intervalo possvel para a soluo permanecer tima. Se a soma das mudanas porcentuais no exceder 100%, certamente a soluo tima original ainda permanecer tima. Se a soma exceder os 100%, no podemos ter certeza disso.
Usando a Tabela 6.23 (e referindo-se Figura 6.3 para visualizao), essa regra dos 100% diz que (O, 9) permanecer tima para a Variao 2 do modelo da Wyndor Glass Co. mesmo se aumentarmos, ao mesmo tempo, c 1 de 3 e diminuirmos c 2 de 5 desde que essas alteraes no sejam muito grandes. Por exemplo, se c 1 for aumentado de 1,5 (33,3% da mudana possvel), ento c 2 pode ser diminuda de at duas unidades (66,6% da mudana possvel). De modo similar, se c 1 for aumento de 3 (66,6% da mudana possvel), ento c 2 poder ser diminuda somente de 1 (33,3% da mudana possvel). Essas mudanas possveis revisam a funo objetivo para Z = 4,5x 1 + 3x2 ou ento Z = 6x 1 + 4x2 , o que faz que a reta da funo objetivo tima da Figura 6.3 gire no sentido horrio at ela coincidir com a equao limite de restrio 3x 1 + 2x2 = 18. Em geral, quando os coeficientes da funo objetivo mudam na mesma direo, possvel para as porcentagens das mudanas possveis chegarem a uma soma maior que 100% sem alterar a soluo tima. Daremos um exemplo no final da discusso do Caso 3.

Caso 2b

de uma Varivel Nova

Aps encontrar uma soluo tima, pode ser que descubramos que a formulao de programao linear no levou em conta todas as atividades alternativas atrativas. A considerao

242

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

de uma nova atividade requer a introduo de uma nova varivel com os coeficientes adequados na funo objetivo e nas restries do modelo atual - que o Caso 2b. A maneira conveniente de lidar com esse caso trat-lo simplesmente como se fosse o Caso 2a ! Isso feito fazendo de conta que a nova varivel bsica xj estivesse realmente no modelo original com todos seus coeficientes iguais a zero (de modo que elas ainda sejam zero na tabela simplex final) e que xj uma varivel no-bsica na soluo BV atual. Portanto, se mudssemos esses coeficientes zero para seus valores reais para a nova varivel, o procedimento (inclusive qualquer reotimizao) realmente se toma idntico quele do Caso 2a. Particularmente, tudo o que voc precisa fazer para verificar se a soluo atual ainda tima verificar se a soluo bsica complementar y* satisfaz a nova restrio dual que corresponde nova varivel no problema primai. J descrevemos essa metodologia e depois a exemplificamos para o problema da Wyndor Glass Co. na Seo 6.5.

Caso 3 - Mudanas nos Coeficientes de uma Varivel Bsica


Suponha agora que a varivel xj (j fixo) em considerao uma varivel bsica na soluo tima mostrada pela tabela simplex final. O Caso 3 supe que as nicas modificaes no modelo atual sejam feitas nos coeficientes dessa varivel. O Caso 3 difere do Caso 2a por causa da exigncia de que uma tabela simplex esteja na forma apropriada da eliminao gaussiana. Essa exigncia permite que a coluna de uma varivel no-bsica seja qualquer coisa, portanto ela no afeta o Caso 2a. Porm, para o Caso 3, a varivel bsica xj tem de ter um coeficiente 1 em sua linha da tabela simplex e um coeficiente O em qualquer outra linha (inclusive a linha 0). Portanto, aps as mudanas na coluna xj da tabela simplex final terem sido calculadas, 6 provavelmente ser necessrio aplicar a eliminao gaussiana para recuperar essa forma, como ilustrado na Tabela 6.20. No entanto, esse passo provavelmente modificar o valor da soluo bsica atual e poder at tom-la invivel ou no-tima (de modo que poderia ser necessria a reotimizao). Conseqentemente, todos os passos do procedimento geral sintetizados no final da Seo 6.6 so necessrios para o Caso 3. Antes da eliminao gaussiana ser aplicada, as frmulas para revisar a coluna xj so as mesmas do Caso 2a, como sintetizado a seguir. Coeficiente de xj na linha O final: Coeficiente de xj nas linhas 1 a m finais:

Exemplo (Variao 5 do Modelo da Wyndor). Pelo fato de x 2 ser uma varivel bsica na Tabela 6.21 para a Variao 2 do modelo da Wyndor Glass Co., a anlise de sensibilidade de seus coeficientes se encaixa no Caso 3. Dada a soluo tima atual (x 1 = O, x 2 = 9), o produto 2 o nico produto novo que deveria ser introduzido e sua taxa de produo deveria ser relativamente grande. Portanto, a questo-chave agora se as estimativas iniciais que levaram aos coeficientes de x 2 no modelo atual (Variao 2) poderiam ter superestimado o atrativo do produto 2 de forma a invalidar essa concluso. Essa questo pode ser testada verificando o conjunto mais pessimista de estimativas razoveis para esses coeficientes, que c 2 = 3, a22 = 3 e a 32 = 4. Por conseguinte, as mudanas a serem investigadas (Variao 5 do modelo da Wyndor) so

C2 =

5~C2

= 3,

Para o leitor relativamente sofisticado, devemos alertar sobre um possvel risco para o Caso 3 que seria descoberto nesse ponto. Especificamente, as mudanas na tabela inicial podem destruir a independncia linear das colunas dos coeficientes das variveis bsicas. Esse evento ocorre somente se o coeficiente unitrio da varivel bsica x1 na tabela simplex final tiver sido alterado para zero nesse ponto, em cujo caso teriam de ser usados clculos mais extensos do mtodo simplex para o Caso 3.

6.7 APLICANDO A ANLISE DE SENSIBILIDADE


Xz
X]=

243

12

----------- ------ 2x2 = 24

10
X]=

4 3x2 = 24

(O, 9)
\

>--~\------+-----

\ \ \ \ \

(o,~)
4 FIGURA 6.6 Regio de solues viveis para a Variao 5 do modelo da Wyndor em que a Variao 2 (Figura 6.3) foi revisada de modo que
C2

\
\ \ \ \
---1~---

3x 1 + 2x2

18

3x 1

+ 4x2

= 18

(4, ~)tima
\

=5

032 =

3, 022 = 2 2 ........ 4.
--->

--->

3, e

Xz

O efeito grfico dessas mudanas que a regio de solues viveis muda daquela mostrada na Figura 6.3 para aquela da Figura 6.6. A soluo tima da Figura 6.3 (xi, x 2 ) = (O, 9), que a soluo em ponto extremo que cai na interseo dos limites de restrio x 1 = O e 3x 1 + 2x2 = 18 Com a reviso das restries, a soluo em ponto extremo correspondente na Figura 6.6 (O, ~). Contudo, essa soluo no mais tima, pois a funo objetivo revisada de Z = 3x 1 + 3x2 agora conduz a uma nova soluo tima (xi, x 2) = (4, ~).

Anlise da Variao 5. Vejamos agora como tirar essas mesmas concluses de modo algbrico. Pelo fato de as nicas mudanas no modelo serem nos coeficientes de x 2 , as nicas mudanas resultantes na tabela simplex final (Tabela 6.21) so na colunax2 . Portanto, as frmulas anteriores so usadas para recalcular apenas essa coluna.

-1

k [] [ ] ]
3 4
=

2 .

-1

De modo equivalente, a anlise incremental com Lic 2 = -2, Lia 22 = 1 e Lia 32 = 2 pode ser usada da mesma maneira para obter essa coluna.

244

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

A tabela final revisada resultante mostrada na parte superior da Tabela 6.24. Note que os novos coeficientes da varivel bsica x 2 no tm os valores exigidos, de modo que a converso para a forma apropriada da eliminao gaussiana deva ser aplicada em seguida. Essa etapa envolve dividir a linha 2 por 2, subtrair 7 vezes a nova linha 2 da linha O e adicionar a nova linha 2 linha 3. A segunda tabela resultante na Tabela 6.24 dar o novo valor da soluo bsica atual, a saber, x 3 = 4, x 2 = ~, x 4 = (x 1 = O, x 5 = O). Uma vez que todas essas variveis so nonegativas, a soluo ainda vivel. Porm, em razo do coeficiente negativo de x 1 na linha O, sabemos que ela no mais tima. Assim, o mtodo simplex seria aplicado a essa tabela, com essa soluo como soluo BV inicial, para encontrar a nova soluo tima. A varivel bsica que entra inicial x 1, com x 3 como varivel bsica que sai. Nesse caso, necessria apenas uma iterao para se chegar nova soluo tima x 1 = 4, x 2 = ~, x4 = ~ (x3 = O, x5 = O), como mostrado na ltima tabela simplex da Tabela 6.24. Toda essa anlise sugere que c2' a 22 e a 32 so parmetros relativamente sensveis. Contudo, dados adicionais para estim-los de modo mais preciso podem ser obtidos somente por meio da conduo de um teste-piloto. Portanto, a equipe de PO recomenda que a produo do produto 2 seja iniciada imediatamente em pequena escala (x2 = ~) e que essa experincia seja usada para orientar a deciso sobre se a capacidade de produo remanescente deva ser alocada ao produto 2 ou ao produto 1.

Intervalo Possvel para a Soluo Permanecer tima. Para o Caso 2a, descrevemos como encontrar o intervalo possvel para a soluo permanecer tima para qualquer c1 tal que x1 seja uma varivel no-bsica para a soluo tima atual (antes de c1 ser modificado). Entretanto, quando x1 for a varivel bsica, o procedimento ser um tanto mais complicado em decorrncia da necessidade de se converter para a forma apropriada da eliminao gaussiana antes de se testar a otimalidade. Para ilustrar o procedimento, considere a Variao 5 do modelo da Wyndor Glass Co . (com c2 = 3, a 22 = 3, a 23 = 4) que colocado em forma de grfico na Figura 6.6 e resolvido na Tabela 6.24. J que x 2 uma varivel bsica para a soluo tima (com c 2 = 3) dada

TABELA 6.24 Procedimento de anlise de sensibilidade aplicado Variao 5 do modelo da Wyndor Glass Co. Coeficiente de: Varivel Bsica
Eq.

z
1

X1

X2

X3

X4

Xs

Lado Direito
45 4 9 6

z
Tabela final revisada
X3
X2

(O)
(1)

(2)
(3)
(O)

o o o
1

9 2 1 3 2 -3
--

o
1

o
2
-1

o o o
1

o o o
1

5 2

o
1 2 -1
3 4

X4

z
Convertido para a forma apropriada
X3
X2

(1) (2)
(3)

o o o
1

X4

3 4 1 3 4 9 4

o o
1

o o
3 4 1 3 -4 9 4
-

o o o
1

o
-

o
o o
1

4 3 -4 3 4

27 2 41 9 2 21 2
33 2 4 3 2 39 2
-

z
Nova tabela final aps reotimizao (necessria somente uma iterao do mtodo simplex nesse caso)
X1
X2

(O)

o
1

(1) (2)
(3)

o o o

o o

o o o
1

o
-

X4

1 4 3 4

6.7 APLICANDO A ANLISE DE SENSIBILIDADE

245

~~~~~~~~~~~~~~~~~~

na parte inferior dessa tabela, as etapas necessrias para encontrar o intervalo possvel para a soluo permanecer tima para c2 so os seguintes: 1. Visto que x 2 uma varivel bsica, observe que seu coeficiente na nova linha O final (ver tabela na parte inferior da Tabela 6.24) automaticamente zi - c2 = O antes de c2 ser modificado de seu valor atual 3. 2. Incremente agora c2 = 3 por Llc 2 (portanto c2 = 3 + Llc 2 ). Isso altera o coeficiente observado na etapa 1 para zi - c2 = - Llc 2 , o que muda a linha O para ,\ 3 3 : 33] . [ Lmha O = O, - uc 2 , 4' O, 4 l .

3. Com esse coeficiente agora diferente de zero, temos de realizar operaes de linha elementares para restaurar a forma apropriada da eliminao gaussiana. Particularmente, adicionar linha O o produto Llc 2 vezes a linha 2 para obter a nova linha O, como mostrado na linha a seguir.

+[o,
4. Usando essa nova linha O, encontre o intervalo de valores de Llc 2 que mantenha os coeficientes das variveis no-bsicas (x3 e x5 ) no-negativos.

4- 4

Llc2

:::::

O =>

4::::: 4
-1 Llc 2 4
-

Llc 2
> --

=>
3 4 =>

Llc 2
Llc 2

:5

1. -3.

-3 + -1 Llc2 ::::: O => 4 4

:::::

Portanto, o intervalo de valores - 3 :5 Llc 2 :5 1. 5. J que c2 = 3 + Llci, adicione 3 a esse intervalo de valores, o que nos leva a

:5 C2 :5

como o intervalo possvel para a soluo permanecer tima para c2 Com apenas duas variveis de deciso, esse intervalo possvel pode ser verificado graficamente usando a Figura 6.6 com uma funo objetivo Z = 3x1 + c2x 2 . Com o valor atual de c2 = 3, a soluo tima (4, ~). Quando c2 aumentado, essa soluo permanece tima somente para c2 ::; 4. Para c 2 ::::: 4, (0, ~)se toma tima (com um empate em c2 = 4), em virtude do limite de restrio 3x 1 + 4x2 = 18. Ao contrrio, quando c 2 diminudo, (4, ~)per manece tima somente para c2 ::::: O. Para c2 :5 O, (4, O) se toma tima em razo do limite de restrio x 1 = 4. De maneira similar, o intervalo possvel para a soluo permanecer tima para c 1 (com c 2 fixo em 3) pode ser derivado seja algbrica como graficamente para c 1 ::::: ~-(O Problema 6.7-9 pede para voc verificar essas duas maneiras.) Portanto, o decrscimo possvel para c 1 a partir de seu valor atual 3 de apenas ~ Porm, possvel diminuir c 1 de uma quantidade maior sem alterar a soluo tima se c2 tambm diminuir suficientemente. Suponha, por exemplo, que tanto c 1 quanto c 2 sejam diminudos de 1 de seu valor atual 3, de modo que a funo objetivo mude de Z = 3x 1 + 3x2 para Z = 2x 1 + 2x2 . De acordo com a regra dos 100% para mudanas simultneas em coeficientes da funo objetivo, as porcentagens das mudanas possveis so 133~% e 33}%, respectivamente, o que d uma soma bem maior que 100%. No entanto, a inclinao da reta da funo objetivo no mudou, de modo que (4, ~)ainda seja tima.

CAPTULO 6

TEORIA DA -- DUALIDADE E ANLISE DE SENSIBILIDADE - -----

Caso 4 - Introduo de uma Nova Restrio


Nesse caso, uma nova restrio tem de ser introduzida no modelo aps ele j ter sido resolvido. Esse caso pode ocorrer pelo fato de a restrio ter sido inicialmente desprezada ou porque surgiram novas consideraes desde que o modelo foi formulado. Outra possibilidade que a restrio foi eliminada propositalmente para diminuir o processamento computacional, pois ela parecia ser menos restritiva que as demais restries no modelo, porm agora essa impresso precisa ser verificada com a soluo tima realmente obtida. Para ver se a soluo tima atual seria afetada por uma nova restrio, tudo o que voc precisa fazer verificar diretamente se a soluo tima satisfaz a restrio. Em caso positivo, ento ela ainda seria a melhor soluo vivel (isto , a soluo tima), mesmo se a restrio fosse adicionada ao modelo. A razo que uma nova restrio pode eliminar apenas algumas solues previamente viveis sem adicionar nenhuma nova. Se a nova restrio eliminar efetivamente a soluo tima atual e se voc quiser encontrar a nova soluo, ento introduza essa restrio na tabela simplex final (na forma de uma linha adicional) da mesma forma como se fosse a tabela inicial, em que a varivel adicional usual (varivel de folga ou varivel artificial) projetada para ser uma varivel bsica para essa nova linha. Pelo fato de a nova linha provavelmente v ter coeficientes no-zero para algumas das demais variveis bsicas, a converso para a forma apropriada da eliminao gaussiana aplicada a seguir, e depois a etapa de reotimizao aplicada de forma usual. Do mesmo modo que para alguns casos anteriores, esse procedimento para o Caso 4 uma verso melhorada do procedimento geral resumido no final da Seo 6.6. A nica questo a ser resolvida para esse caso se a soluo anteriormente tima ainda seja vivel, de modo que a etapa 5 (teste de otimalidade) foi eliminada. A etapa 4 (teste de viabilidade) foi substituda por um teste de viabilidade muito mais rpido (a soluo tima anterior satisfaz a nova restrio?) para ser realizado logo aps a etapa 1 (reviso do modelo). Somente se esse teste fornecer uma resposta negativa e voc quiser reotimizar que as etapas 2, 3 e 6 so usadas (reviso da tabela final, converso para a forma apropriada da eliminao gaussiana e reotimizao). Exemplo (Variao 6 do Modelo da Wyndor). Para exemplificar esse caso, consideremos a Variao 6 do modelo da Wyndor Glass Co. que simplesmente introduz a nova restrio

no modelo da Variao 2 dado na Tabela 6.21. O efeito grfico ilustrado na Figura 6.7. A soluo tima anterior (O; 9) viola a nova restrio e, portanto, a soluo tima passa a ser (0, 8). Para analisar esse exemplo algebricamente, observe que (O; 9) leva a 2x 1 + 3x2 = 27 > 24, de modo que essa soluo tima anterior no seja mais vivel. Para encontrar a nova soluo tima, acrescente a nova restrio tabela simplex final atual conforme descrito, com a varivel de folga x 6 como sua varivel bsica inicial. Esse passo leva primeira tabela apresentada na Tabela 6.25. A converso para a forma apropriada da eliminao gaussiana requer ento que o produto de 3 vezes a linha 2 seja subtrado da nova linha 2, que identifica a soluo bsica atual x 3 = 4, x 2 = 9, x 4 = 6, x 6 = -3 (x 1 = O, x 5 = 0), conforme mostrado na segunda tabela. Aplicando-se o mtodo simplex dual (descrito na Seo 7.1) a essa tabela, nos conduz, ento em uma nica iterao, nova soluo tima indicada na ltima tabela da Tabela 6.25 (s vezes necessrio um nmero maior de iteraes).

Anlise de Sensibilidade Sistemtica - Programao Paramtrica


At agora descrevemos como testar mudanas especficas nos parmetros do modelo. Outra metodologia comum para a anlise de sensibilidade variar continuamente um ou mais parmetros ao longo de algum(ns) intervalo(s) para ver quando muda a soluo tima.

6.7 APLICANDO A ANLISE DE SENSIBILIDADE


X2 X]=

247

14

12

2x1

24

10
X]=

FIGURA 6.7

Regio de solues viveis para a Variao 6 do modelo da Wyndor em que a Variao 2 Figura 6.3) foi revisada acrescentando-se a nova restrio, 2x1 + 3x2 ~ 24.

Regio de solues viveis


X2 =

X]

10

12

14

TABELA 6.25 Procedimento de anlise de sensibilidade aplicado Variao 6 do

modelo da Wyndor Glass Co.


Coeficiente de: Varivel Bsica
Eq.

z
1

x,
9 2 1 3 2 -3 2 9

Xz

X~

X4

X5

x6

Lado Direito
45 4 9

z
X3

(O)
(1)

Tabela final revisada

X2 X4

(2) (3)
Nova

x6

o o o o
1

o o
1

o
1

o
3

o o o o
1

o o o
1

2 o
1

2
-1

o o o o
1

o
2 o
1 2 -1

o o o o
1

6 24
45 4 9

z
X3

(O)
(1)

Convertido para a forma apropriada

X2 X4

(2) (3)
Nova

o o o o
1

2
1 3 2 -3

o o
1

o o o o
1

o o o o
1

o o o o
1

6
- 3

x6

5
2
1 3 1 2 3 4

o o o o
1

3 2

Nova tabela final aps reotimizao (necessria somente uma iterao do mtodo simplex nesse caso)

z
X3 X2

(O)
(1)

(2) (3)
Nova

o o o o

o o o

o o o o
1

5
3

40 4 8 8 2

o
1 3 2 3 2

X4

-3
5
3

o o

X5

-3

248

~~~~~~~~~~~~~~~~~~~~~~~~~~-"~~~-'--~~~~~~~~~~~~-

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

Por exemplo, com a Variao 2 do mode~ da Wyndor Glass Co., em vez de comear testando a mudana especfica de b2 = 12 para b2 = 24, poderamos, em seu lugar, configurar

b2 = 12

+ ()

e depois variar() continuamente de O a 12 (o valor de interesse mximo). A interpretao geomtrica na Figura 6.3 que a reta de restrio 2x2 = 12 est sendo deslocada para cima para 2x 2 = 12 + 8, com() sendo aumentado de O a 12. O resultado que a soluo FPE tima original (2, 6) se desloca para cima at a reta de restrio 3x 1 + 2x2 = 18 em direo a (-2, 12). Essa soluo em ponto extremo permanece tima enquanto ainda for vivel (x 1 2: O), aps o qual (O, 9) se transforma na soluo tima. Os clculos algbricos do efeito de termos b.b 2 = () so diretamente anlogos queles para o exemplo do Caso 1 no qual b.b 2 = 12. Particularmente, usamos as expresses para Z* e b* dadas para o Caso 1. Z* = y*~ b* = S*b em que b agora

e no qual y* e S* so dados nos quadros intermedirios da Tabela 6.19. Essas equaes indicam que a soluo tima Z*
X3

36

+ le
2
1

2
6

+ 38 + l()
1
(x4

= O, x 5 = O)

X2

X1 =

1 2 - -() 3

para() suficientemente pequeno de modo que essa soluo ainda continue vivel, isto , para () :S 6. Para 8 > 6, o mtodo simplex dual (descrito na Seo 7 .1) leva tabela mostrada na Tabela 6.21, exceto para o valor de x4 . Portanto, Z = 45, x 3 = 4, x 2 = 9 (juntamente com x 1 = O, x 5 = O) e a expresso para b* resulta em
x4 =

M=

0(4)

102

+ e) -

1(18) = -6

+ e.

Essa informao pode ento ser usada (juntamente com outros dados no incorporados ao modelo sobre o efeito do aumento de b2 ) para decidir se devemos conservar a soluo tima original e, caso contrrio, de quanto aumentar b2 . De maneira similar, podemos investigar o efeito sobre a soluo tima de se diversificar vrios parmetros simultaneamente. Quando variamos apenas os parmetros b;, expressamos o novo valor b; em termos do valor original b; como se segue:
b; = b;

+ a;8,

parai = 1, 2, ... , m,

em que os valores a.; so constantes de entrada especificando a taxa de acrscimo desejada (positiva ou negativa) do lado direito correspondente medida que () aumentado. Suponha, por exemplo, que seja possvel deslocar a produo de determinado produto da Wyndor Glass Co. da Fbrica 2 para a Fbrica 3, aumentando, portanto, b2 pela diminuio de b 3 Suponha tambm que b 3 diminua duas vezes mais rpido que b 2 aumenta. Ento

b2

12

+ ()

b3 = 18 - 28,

6.7 APLICANDO A ANLISE DE SENSIBILIDADE

249

em que o valor (no-negativo) de(} mede a quantidade de produo transferida. (Portanto,


a 1 =O, a 2 = 1 e a 3 = -2 nesse caso.) Na Figura 6.3, a interpretao geomtrica que(}

aumentado a partir de O, a reta de restrio 2t2 = 12 est sendo empurrada para cima at 2t2 = 12 + (}(ignore a reta 2t2 = 24) e, simultaneamente, a reta de restrio 3x 1 + 2t2 = 18 est sendo empurrada para baixo at 3x 1 + 2t2 = 18 - W. A soluo FPE tima original (2, 6) cai na interseo das retas 2x2 = 12 e 3x1 + 2x2 = 18, de modo que deslocar essas retas faz que essa soluo em ponto extremo se desloque. Entretanto, com a funo objetivo de Z = 3x 1 + 5x2 , essa soluo em ponto extremo permanecer tima enquanto ela continuar soluo vivel (x 1 ~O). Uma investigao algbrica de se mudar simultaneamente b2 e b 3 dessa maneira envolve novamente o emprego de frmulas para o Caso 1 (tratando (} como representando um nmero desconhecido) para calcular as mudanas resultantes na tabela final (parte central da Tabela 6.19), a saber:

Z*

y*b =

[O,~,

1][ 12: (} = 36 18 - 2(}

_!] ~[
3
Portanto, a soluo tima fica

4 12 + (} 18 - 2(}

l[ l
=

~(},

2 + (} 6 + 2 - (}

~(}

Z* = 36 - -(} 2
X3

+ (} + l(}
1

X5

=O)

Xz = 6
X1

2 - (}

para (} suficientemente pequeno para essa soluo ainda continuar soluo vivel, isto , para (} ::5 2. (Confirme essa concluso na Figura 6.3). Entretanto, o fato de Z decrescer medida que (} cresce a partir de O indica que a melhor opo para (} (} = O, de forma que nenhuma mudana de produo deveria ser feita. A abordagem de variar-se diversos parmetros c1 similar. Nesse caso, expressamos o novo valor c 1 em termos do valor inicial de c1 como para j = 1, 2, . . . , n, onde a1 so constantes de entrada especificando a taxa de crescimento desejada (positiva ou negativa) de c1 medida que (} aumentado. Para ilustrar esse caso, reconsidere a anlise de sensibilidade de c 1 e c2 para o problema da Wyndor Glass Co. anteriormente resolvido nesta seo. Iniciando-se com a Variao 2 do modelo da Wyndor apresentado na Tabela 6.21 e na Figura 6.3, consideramos separadamente o efeito de se mudar c 1 de 3 para 4 (sua estimativa mais otimista) e c2 de 5 para 3 (sua estimativa mais pessimista). Agora, podemos considerar ambas as mudanas simultaneamente, assim como os diversos casos intermedirios com mudanas menores, fazendo-se

c1

+e

c2 =

5 - W,

em que o valor de(} mede a frao da mxima mudana possvel que feita. O resultado substituir a funo objetivo inicial Z = 3x 1 + 5x2 por uma funo de(}
Z((}) = (3

+ (})x 1 + (5

- W)x 2 ,

250

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

de forma que a otimizao agora possa ser realizada para qualquer valor (fixo) desejado de e entre O e 1. Verificando-se o efeito medida que e aumenta de O a 1, podemos determinar exatamente quando e como a soluo tima muda medida que o erro nas estimativas originais desses parmetros aumenta. Considerar simultaneamente tais alteraes especialmente apropriado caso haja fatores que provoquem a mudana simultnea dos parmetros. Os dois produtos so de alguma maneira competitivos, de forma que o lucro unitrio maior que o esperado de um implicaria um lucro unitrio menor que o esperado para o outro? Ambos so afetados por algum fator externo como a nfase em termos de propaganda de um concorrente? possvel mudar simultaneamente ambos os lucros unitrios pela transferncia de pessoal e equipamento? Na regio de solues viveis mostrada na Figura 6.3, a interpretao geomtrica de mudar a funo objetivo de Z = 3x 1 + 5x2 para Z(O) = (3 + O)x 1 + (5 -W)x2 que estamos alterando a inclinao da reta da funo objetivo original (Z = 45 = 3x 1 + 5x2 ) que passa pela soluo tima (O, 9). Se e for aumentado suficientemente, essa inclinao mudar suficientemente de modo que a soluo tima mudar de (O, 9) para outra soluo FPE (4, 3). (Verifique graficamente se isso ocorre ou no para e ::5 1) O procedimento algbrico para lidar simultaneamente com essas duas mudanas (~c 1 = e e ~c 2 = -20) mostrado na Tabela 6.26. Embora as alteraes agora sejam expressas em termos de e e no em quantidades numricas especficas, e tratado apenas como um nmero desconhecido. A tabela exibe apenas as linhas relevantes da tabela envolvida (linha O) e a linha para a varivel bsica x 2 ). A primeira tabela simplex exposta simplesmente a tabela final para a verso atual do modelo (antes de c 1 e c 2 serem modificados) conforme dado na Tabela 6.21. Consulte as frmulas na Tabela 6.17. As nicas mudanas na tabela final revisada mostradas a seguir so ~c 1 e ~c 2 serem subtrados, respectivamente, dos coeficientes na linha Ode x 1 e x 2 Para converter essa tabela para a forma apropriada da eliminao gaussiana, subtramos W vezes a linha 2 da linha O, resultando na ltima tabela exibida. As expresses em termos de e para os coeficientes das variveis no-bsicas x 1 e x 5 na linha O dessa tabela mostram que a soluo FPE atual permanece tima para e : : ; ~- Pelo fato de e = 1 ser o maior valor possvel de e, isso indica que c 1 e c 2 so parmetros insensveis em relao Variao 2 do modelo na Tabela 6.21. No h nenhuma necessidade de se estimar esses parmetros de forma mais precisa a menos que outros parmetros mudem (como ocorreu para a Variao 5 do modelo da Wyndor).

TABELA 6.26 Lidando com .c1 =

(J e .c2 = -28 para a Variao 2 do modelo da Wyndor dado na Tabela 6.21

Coeficiente de: Varivel Bsica


Eq.

z
1

X1

X2

X3

X4

X5

Lado Direito
45

z
Tabela final
X2

(O)
(2)

o
1

9 2 3 2

o
1

o o o o o o

o o o o o

5 2
1

2
5 2
1

Nova tabela final revisada quando ac, =o e 6.c2 = -20

Z(O)
X2

(O)
(2)

2_
2

_o
3 2

20
1

45

o
1

9
45 - 180

Z(O)
Convertido para a nova forma
X2

(O)
(2)

2_ - 40
2

o
1

o o 2_ 2
1

6.8 EFETUANDO ANLISE DE SENSIBILIDADE EM UMA PLANILHA

251

Conforme discutido na Seo 4.7, essa maneira de variar continuamente diversos parmetros simultaneamente conhecida como programao linear paramtrica. A Seo 7 .2 apresenta o procedimento completo de programao linear paramtrica (incluindo a identificao de novas solues timas para valores maiores de 8) quando apenas os parmetros cj so variados e depois quando apenas os parmetros b; so variados. Alguns pacotes de software de programao linear tambm incluem rotinas para variar somente os coeficientes de uma nica varivel ou apenas os parmetros de uma nica restrio. Alm de outras aplicaes discutidas na Seo 4.7, esses procedimentos oferecem uma maneira conveniente de se realizar anlise de sensibilidade de modo sistemtico.

ii~.8 EFETUANDO ANLISE DE SENSIBILIDADE EM UMA PLANILHA 7


Com o auxlio do Excel Solver, as planilhas fornecem uma maneira alternativa e relativamente fcil de se realizar grande parte da anlise de sensibilidade descrita nas Sees 6-5 a 6.7. A metodologia das planilhas basicamente a mesma para cada um dos casos considerados na Seo 6. 7 para os tipos de mudanas feitas no modelo original. Portanto, nos concentraremos apenas no efeito das mudanas feitas nos coeficientes de variveis na funo objetivo (Casos 2a e 3 na Seo 6.7). Iremos tambm exemplificar esse efeito fazendo mudanas no modelo original da Wyndor formulado na Seo 3.1, na qual os coeficientes de x 1 (nmero de lotes da nova porta produzidos por semana) e x 2 (nmero de lotes da nova janela produzidos por semana) na funo objetivo so c1
=

lucro (em milhares de dlares) por lote do novo tipo de porta

c 2 = 5 = lucro (em milhares de dlares) por lote do novo tipo de janela

Para sua convenincia, a formulao em planilha desse modelo (Figura 3.22) repetida aqui na Figura 6.8. Note que as clulas contendo as quantidades a serem alteradas so LucroPorLote (C4:D4). J que os lucros nessas clulas so expressos em dlares, ao passo que c 1 e c 2 esto em unidades de milhares de dlares, daqui em diante iremos discutir a anlise de sensibilidade em termos das mudanas nos lucros mostrados nessas clulas em vez das mudanas em c 1 e c2 . Para tal, representaremos esses lucros por
PD = lucro por lote de portas atualmente introduzidos na clula C4

Pw = lucro por lote de janelas atualmente introduzidos na clula D4

As planilhas, na verdade, fornecem trs mtodos de execuo da anlise de sensibilidade. O primeiro corresponde a verificar o efeito de uma mudana individual no modelo simplesmente fazendo a mudana na planilha e recalculando. O segundo refere-se a gerar sistematicamente uma tabela em uma nica planilha que mostre o efeito de uma srie de mudanas em um ou dois parmetros do modelo. Um terceiro obter e aplicar o relatrio de sensibilidade do Excel. Descrevemos a seguir, um a um, esses mtodos.

Verificando Mudanas Individuais no Modelo


Um dos grandes pontos fortes de uma planilha a facilidade com a qual ela pode ser usada interativamente para realizar diversos tipos de anlise de sensibilidade. Uma vez que o Solver tenha sido configurado para obter uma soluo tima, podemos descobrir imediatamente o que aconteceria se um dos parmetros do modelo fosse alterado para algum outro valor. Basta efetuar essa alterao na planilha e, a seguir, clicar novamente sobre o boto Solve. Para fins ilustrativos, suponha que a gerncia da Wyndor estivesse insegura em relao a quanto seria o lucro por lote de portas (PD). Embora o nmero US$ 3.000 dado na Figura 6.8 seja considerado uma estimativa inicial razovel, a gerncia sente que o lucro real poderia acabar se desviando substancialmente desse nmero, seja para cima, seja para baixo. Entretanto, o intervalo de PD entre PD = US$ 2.000 e PD US$ 5.000 considerado razoavelmente provvel.

Redigimos a presente seo de maneira que pudesse ser compreendida sem primeiro ter de ler qualquer seo anterior deste captulo. Entretanto, a Seo 4.7 uma base importante para a ltima parte da presente seo.

252

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

A
1 2 3 4 5 6 7 8 9 1o 11 12

e
Portas US$ 3.000

O Problema de Mix de Produtos da Wvndor Glass Co.


1 1

Lucro por Lote

Janelas US$ 5.000 Horas Disponveis 4 12 18 Lucro Total US$36.000

Fbrica 1 Fbrica 2 Fbrica 3

Horas Horas Utilizadas por Lote Produzido Utilizadas 1 o 2 12 o 2 3 2 ' 18


1

r1

< < :5

Lotes Produzidos

Portas 2

Janelas 6

~ Solver

Pt1rameters .~
!Total Profit 1~
5 6 7 8 9

Set Target Cell:

~
FIGURA 6.8 O modelo de planilha e a soluo tima obtida para o problema original da Wyndor antes de se realizar a anlise de sensibilidade.

Equal To : @ Max O Mi n O By Changi ng Cel Is: - - - Bate hes Prod uced

E Horas Utilizadas =SUMPRODUCTIC7:D7 LotesProduzidos) =SUMPRODUCTIC8:D8 LotesProduzidos) =SUMPRODUCT(C9:D9,LotesProduzidos)

Subject to the Constnints: _

lHoursUsed <= HoursAvai lable


Nome da Faixa de Clulas Clulas Lotes Produzidos C12:012 HorasDisponveis G7:G9 HorasUtilizadas E7:E9 HorasUtilizadasPorLoteProduzido C7:09 LucroPorLote C4:04 LucroTotal G12

~ Solver

Options ~

[if Assume Linear Model [if Assume Non- Negative

A Figura 6.9 ilustra o que aconteceria se o lucro por lote de portas casse de Pv = US$ 3.000 para Pv = US$ 2.000. Comparando-se com a Figura 6.8 no h nenhuma alterao em si na soluo tima para o mix de produtos. De fato, as nicas alteraes na nova planilha so o novo valor de Pv na clula C4 e uma diminuio de US$ 2.000 no lucro total mostrado na clula G 12 (pelo fato de cada um dos dois lotes de portas produzidos por semana fornecer US$ 1.000 a menos de lucro). Em virtude de a soluo tima no se alterar, agora sabemos que a estimativa original de Pv = US$ 3.000 pode ser consideravelmente muito alta sem invalidar a soluo tima do modelo.

FIGURA 6.9 O problema revisado da Wyndor no qual a estimativa do lucro por lote de portas foi diminuda, passando de P0 = US$ 3.000 para P0 = US$ 2.000, mas sem causar mudana na soluo tima para o mix de produtos.

A
1

e
Portas US$2.000

O Problema de Mix de Produtos da Wyndor Glass Co.


1

2
3 4 5 6 7 8 9 1 11 12 Lucro por Lote

.1

Janelas US$ 5.000 Horas Disponveis 4 12 18 Lucro Total US$34.000

Fbrica 1 Fbrica 2 Fbrica 3

o
Lotes Produzidos

Horas T Horas Utilizadas por Lote Produzido Utilizadas 1 2 :5 o 2 12 :5 .1 1 :5 3 2 18

T
1

Portas 2

Janelas 6

6.8 EFETUANDO ANLISE DE SENSIBILIDADE EM UMA PLANILHA


A
1 2

253
F G

e
Portas US$ 5.000

O Problema de Mix de Produtos da Wyndor Glass Co.


1
1

FIGURA 6.1 O

O problema revisado da Wyndor no qual a estimativa de lucro por lote de portas foi aumentada de P0 = US$ 3.000 para P0 = US$ 5.000, mas sem alterar a soluo tima para o mix de produtos.

3 4 5 6
7 8

Janelas

Lucro oor Lote

u $$5.000
Horas Disponveis
-::; -::; -::;

9
10 11 12

Fbrica 1 Fbrica 2 Fbrica 3

Horas 1 Horas Utilizadas por Lote Produzido Utilizadas 2 1 o 1 12 o 2 1 3 18 2


1

4
12 18 Lucro Total US$40.000

Portas Lotes Produzidos

Janelas

Mas o que aconteceria se essa estimativa fosse muito baixa? A Figura 6.10 ilustra o que aconteceria se Pv = US$ 5.000. Repetindo, no h nenhuma modificao na soluo tima. Portanto, agora sabemos que o intervalo de valores de P D sobre o qual i!_Soluo tima permanece tima (isto , o intervalo possvel para a soluo permanecer tima discutido na Seo 6.7) abrange o intervalo que vai de US$ 2.000 a US$ 5.000 e pode se estender ainda mais. Pelo fato de o valor original de PD = US$ 3.000 ser alterado consideravelmente em ambas as direes sem modificar a soluo tima, Pv um parmetro relativamente insensvel. No necessrio definir essa estimativa com grande preciso para se ter confiana de que o modelo est fornecendo a soluo tima correta. Talvez essa seja toda a informao necessria sobre PD. Porm, se houver grande pos~ sibilidade de que o verdadeiro valor de Pv acabe ficando at fora desse intervalo abrangente de US$ 2.000 a US$ 5.000, seria interessante investigar-se mais a esse respeito. Quo maior ou menor poderia ser PD antes de a soluo tima mudar? A Figura 6.11 demonstra que, de fato, a soluo tima mudaria caso PD fosse alterado at atingir PD = US$ 10.000. Portanto, sabemos agora que essa mudana ocorre em algum ponto entre US$ 5.000 e US$ 10.000 durante o processo de aumento de PD.

Usando a Tabela do Solver para Executar Sistematicamente Anlise de Sensibilidade


Para precisar exatamente quando a soluo tima mudar, poderamos continuar selecionando aleatoriamente novos valores de PD. Porm, um mtodo melhor seria considerar sistematicamente um intervalo de valores de PD. Um mdulo adicional para Excel desenvolvido pelo professor Mark Hillier, denominado Solver Table, projetado para realizar exatamente esse tipo de anlise. Ele se encontra disponvel no Courseware de PO do CD-ROM. Para instal-lo, basta abrir o arquivo Solver Table no Courseware de PO.

FIGURA 6.11

O problema revisado da Wyndor ~o qual a estimativa do lucro ::>0r lote de portas passou de ::io = US$ 3.000 para ::io = US$ 1 o.ooo, o que -esulta em uma mudana da sol uo tima para o mix de produtos.

A
1 2 3

e
Portas US$10.000

O Problema de Mix de Produtos da Wyndor Glass


1

4 5 6 7
8

Lucro por Lote

Janelas US$ 5.000 Horas Disponveis 4 12 18 Lucro Total

9
1 11 12

Fbrica 1 Fbrica 2 Fbrica 3

Horas T Horas Utilizadas por Lote Produzido Utilizadas 1 4 2 6 1 18 3 2

-::;

-::; -::;

o
Portas Lotes Produzidos

T
1

Janelas 3

U$$l55l.OOO

254

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

A
1 2 3 4 5 6 7 8 9 1 11 12 13 14 15 16 17 18 19

e
Portas US$ 3.000

O Problema de Mix de Produtos da Wyndor Glass


1

Lucro por Lote

Janelas US$ 5.000 Horas Utilizadas 2 12 18 Horas Disponveis 4 12 18 Lucro Total US$36.000

l
Fbrica 1 Fbrica 2 Fbrica 3 Horas Utilizadas por Lote Produzido 1 o o 2 2 3

.:;
.:;

.:;

T
Portas Lotes Produzidos

Janelas 6

..
Lucro por Lote de Portas US$1.000 US$ 2.000 US$ 3.000 US$ 4.000 US$ 5.000 US$ 6.000 US$ 7.000 US$ 8.000 US$ 9.000 US$ 10.000 Lotes Otimos Produzidos Portas Janelas 2 6 Lucro Total US$ 36.000

20
21 22 23 24 25 26 27 28

E
/
k.

Selecione estas clulas (B18:E28) , antes de selecionar i-'o Solver Table


~ ~

e D E 1 Lotes Otimos Produzidos Lucro 16 Portas Janelas Total 17 1 1 8 =LotesdePortasProduzidas l =LotesdeJanelasProduzidas =LucroTotal
FIGURA 6.12
Expanso da planilha da Figura 6.8 para preparar para o uso do Solver Table visando mostrar o efeito de se variar sistematicamente a estimativa do lucro por lote de portas no problema da Wyndor.

D ~~~ Solver Table ~~~ 8


Row input ce li : Co lumn input ce li:

Nome da Faixa de Clulas LotesdePortasProduzidas LucroTotal LotesdeJanelasProduzidas

Clulas C12 G12 012

,L....>C"--4'------~r_-.....I

[ Help J

[Cantei J

[l

OK

l)

O Solver Table usado para mostrar os resultados da mudana de clulas e/ou certas clulas de sada para vrios valores experimentais em uma clula de dados. Para cada valor experimental na clula de dados, o Solver chamado para resolver novamente o problema. Portanto, o Solver Table (ou qualquer outro mdulo adicional comparvel em Excel) oferece uma maneira sistemtica de se realizar anlise de sensibilidade e depois mostrar os resultados para gerentes e outros que no esto familiarizados com os aspectos mais tcnicos da anlise de sensibilidade. Para usar o Solver Table, expanda primeiramente a planilha original (Figura 6.8) para fazer uma tabela com os cabealhos exibidos na Figuras 6.12. Na primeira coluna da tabela (clulas B19:B28), liste os valores experimentais das clulas de dados (o lucro por lote de portas), exceto por deixar em banco a primeira linha (clula B18). Os cabealhos das colunas seguintes especificam qual sada ser analisada. Para cada uma dessas colunas, use a primeira linha da tabela (clulas C18:E18) para escrever uma equao que configure o valor em cada uma dessas clulas igual clula relevante que muda ou clula de sada. Nesse

6.8 EFETUANDO ANLISE DE SENSIBILIDADE EM UMA PLANILHA


A
1 2 3 4 5 6 7 8 9 1o 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

255
F G

e
Portas US$ 3.000

O Problema de Mix de Produtos da Wyndor Glass


Janelas US$ 5.000 Horas Utilizadas 2 12 18 Horas Disponveis 4 12 18 Lucro Total US$ 36.000

Lucro por Lote

Fbrica 1 Fbrica 2 Fbrica 3

Horas Utilizadas por Lote Produzido 1 o o 2 2 3 Portas 2 Janelas 6

::; ::; ::;

Lotes Produzidos

Lucro por Lote de Portas US$ 1.000 US$ 2.000 US$ 3.000 US$ 4.000 US$ 5.000 US$ 6.000 US$ 7.000 US$ 8.000 US$ 9.000 US$10.000

FIGURA 6.13
Uma aplicao do Solver Table que mostra o efeito de se variar sistematicamente a estimativa do lucro por lote de portas no problema da Wyndor.

Lotes timos Produzidos Portas Janelas 2 2 6 2 6 2 6 2 6 2 6 2 6 2 6 4 3 4 3 4 3 T

Lucro Total JS. >6.OO US$ 32.000 US$ 34.000 US$ 36.000 US$ 38.000 US$ 40.000 US$ 42.000 US$ 44.000 US$ 47.000 US$ 51.000 US$ 55.000

l
+

caso, as clulas de interesse so LotesdePortasProduzidas (Cl2), LotesdeJanelasProduzidas (D12) e LucroTotal (Gl2), de modo que as equaes para C18:E18 sejam aquelas mostradas logo abaixo da planilha da Figura 6.12. A seguir, selecione toda a tabela clicando e arrastando das clulas B18 at a E28 e, depois, selecione Solver Table do menu Ferramentas (aps ter instalado esse mdulo adicional do Excel fornecido no Courseware de PO). Na caixa de dilogo Solver Table (conforme apresentado na parte inferior da Figura 6.12), indica a clula de entrada da coluna (C4), que se refere clula de dados que est sendo alterada na primeira coluna da tabela. No introduzimos nada na clula de entrada da linha, pois, nesse caso, no est sendo usada nenhuma linha para listar os valores experimentais de uma clula de dados. O Solver Table mostrado na Figura 6.13 ento gerado automaticamente clicando-se no boto OK. Para cada valor experimental listado na primeira coluna da tabela para a clula de dados de interesse, o Excel recalcula o problema usando o Solver e, a seguir, preenche os valores correspondentes nas demais colunas das tabelas. (Os nmeros na primeira linha da tabela provm da soluo original na planilha antes de o valor original na clula de dados ter sido modificado.) A tabela revela que a soluo tima permanece a mesma no intervalo que vai de PD = US$ 1.000 (e quem sabe, at menos) a PD = US$ 7.000, mas que ocorre uma alterao em algum ponto entre US$ 7 .000 e US$ 8.000. A seguir, poderamos considerar sistematicamente valores de PD entre US$ 7.000 e US$ 8.000 para determinar mais precisamente onde a soluo tima muda. Porm, isso no necessrio j que, conforme ser discutido um pouco mais frente, um atalho usar o relatrio de sensibilidade do Excel para determinar exatamente onde a soluo tima muda. At ento, exemplificamos como investigar sistematicamente o efeito de alterar apenas PD (clula C4 na Figura 6.8). A metodologia a mesma para Pw (clula D4). Na realidade, o Solver Table pode ser usado dessa maneira para investigar o efeito de se mudar qualquer clula de dados no modelo, inclusive qualquer clula em HorasDisponveis (G7:G9) ou Horas UtilizadasPorLoteProduzido (C7 :D9).

256

CAPTULO 6

TEORIA DA DUALIDADE E ANLISE DE SENSIBILIDADE

A
1 2

e
Portas US$ 4.500

O Problema de Mix de Produtos da Wyndor Glass


1

3
FIGURA 6.14
4 5 Lucro por Lote

O problema revisado da Wyndor onde as estimativas dos lucros por lote de portas e de janelas foram alteradas, respectivamente, para P0 = US$ 4.500 e Pw = US$ 4.000, mas sem alterar a soluo tima do mix de produtos.

6 7 8 9
1o 11 12

Fbrica 1 Fbrica 2 Fbrica 3

'

Horas Horas Utilizadas por Lote Produzido Utilizadas 2 o 1 2 12 o 2 18 3

J J

Janelas US$4.000 Horas Disp.onveis 4 12 18 Lucro Total US$33.000

~
~ ~

T
1

Lotes Produzidos

Portas 2

Janelas

A seguir ilustraremos como investigar mudanas simultneas em duas clulas de dados usando uma planilha, primeiramente por si s e depois com o auxlio do Solver Table.

Verificando Mudanas Bidirecionais no Modelo


Ao usar as estimativas originais para P 0 (US$ 3.000) e Pw (US$ 5.000), a soluo tima indicada pelo modelo (Figura 6.8) tem alto peso no sentido de produzir janelas (seis lotes por semana) em vez de janelas (somente dois lotes por semana). Suponha que a direo da Wyndor esteja preocupada em relao a esse desequilbrio e acha que o problema poderia ser que a estimativa para P 0 esteja muito baixa e a estimativa para Pw muito alta. Isso suscita a questo: "Se as estimativas so de fato nesse sentido, isso levaria a um mix de produtos mais equilibrado?" (Tenha em mente que a razo entre P0 e Pw a relevante na determinao do mix de produtos timo e que, portanto, manter essas estimativas no mesmo sentido com pouca alterao nessa razo tem poucas chances de alterar o mix de produtos.) Essa pergunta pode ser resolvida em questo de segundos, bastando substituir as novas estimativas de lucros por lote na planilha original da Figura 6.8 e clicar no boto Solve. A Figura 6.14 exibe que as novas estimativas de US$ 4.500 para as portas e US$ 4.000 para as janelas no geram nenhuma modificao na soluo para o mix de produtos timo. O lucro total muda efetivamente, porm isso ocorre apenas em razo das mudanas nos lucros por lote. Mudanas maiores nas estimativas de lucros por lote iriam finalmente conduzir a uma mudana no mix de produtos timo? A Figura 6.15 mostra que isso realmente acontece, levando a um mix de produtos relativamente equilibrado com (xi, x2 ) = (4, 3), quando so usadas estimativas de US$ 6.000 para as portas e de US$ 3.000 para as janelas. As Figuras 6.14 e 6.15 no revelam onde o mix de produtos timo muda medida que as estimativas de lucro aumentam de US$ 4.500 para US$ 6.000 para as portas e diminuem de US$ 4.000 para US$ 3.000 no caso das janelas. A seguir, descrevemos como o Solver Table pode auxiliar de modo sistemtico a precisar isso melhor.

Usando o Table Solver para Anlise de Sensibilidade Bidirecional


Uma verso bidirecional do Solver Table fornece uma maneira de investigar de forma sistemtica o efeito se as estimativas introduzidas nas duas clulas de dados forem s