Pesquisa Operacional e Métodos Quantitativos II
SUMÁRIO 1. ENTENDENDO A PROGRAMAÇÃO LINEAR... 2 2. UTILIZAÇÃO DA PLANILHA ELETRÔNICA EXCEL PARA RESOLVER PROBLEMAS DE LP... 4 2.1. Elementos da Planilha... 4 2.2. Desenvolvendo o Problema na Planilha... 5 2.3. Exercícios... 8 3. O PROBLEMA DA PROGRAMAÇÃO LINEAR E MODELO DE TRANSPORTE... 9 3.1. Apresentação... 9 3.2. Exercício Prático... 10
2 1. ENTENDENDO A PROGRAMAÇÃO LINEAR A programação linear tem como objetivo alocar de forma otimizada os recursos limitados de um empreendimento entre atividades ou produtos que competem entre si.. É particularmente útil em problemas de: Análise de Sistemas; Engenharia de Produção; Economia e Finanças; Administração e Logística. Nessas áreas os problemas envolvendo maximização e minimização são constantes, como por exemplo Maximização: lucro e receita de um produto, tempo de vida útil de um bem, carga de um caminhão ou avião em rota, etc.. Minimização: custo ou perdas de um produto, tempo de produção, parada para escalas, transportes e rotas, etc. Para cada problema, sempre ocorrerão condições limitantes que dependem do meio onde ocorre o problema. Um outro aspecto importante de problemas envolvendo decisões é o de otimização, quando se procura estabelecer quais as maneiras mais eficientes de utilizar os recursos disponíveis para atingir certos objetivos. Em geral, trata-se de recursos limitados e sua utilização criteriosa possibilita melhorar o rendimento ou produtividade do processo em estudo. A própria continuidade do processo pode mesmo depender de tal utilização criteriosa. Na prática, tais recursos são usualmente de natureza econômica capital, matéria-prima, mão-de-obra, equipamento, tempo, mercado, etc. mas, em geral, podem tomar os aspectos mais variados. Dessa forma, a Programação Linear (PL) visa fornecer métodos eficientes para a análise e resolução de problemas de otimização cujo modelo matemático é de um tipo particularmente simples, mas muito freqüente na prática. Num problema típico de PL tem-se: a) um número finito de variáveis xj; b) um número finito de restrições ou vínculos, do tipo desigualdade linear; que as variáveis devem satisfazer;
3 c) procura-se maximizar ou minimizar conforme o caso, uma certa função real do tipo linear nas variáveis xj, chamada de função objetivo EX. 1 Um joalheiro produz colares (x1) e braceletes (x2). As margens de lucro são R$ 320,00 para os colares e R$ 240,00 para os braceletes. Os colares requerem 2 horas para o corte das pedras, 7 horas para a montagem e 6 horas para o polimento. Os braceletes requerem 5 horas para o corte das pedras, 7 horas para a montagem e 3 horas para o polimento. O joalheiro trabalha sozinho e dispõe mensalmente de 40 horas para o corte das pedras, 70 horas para a montagem e 48 horas para o polimento. Calcule o número de jóias de cada tipo que maximiza o lucro do joalheiro. EX. 2 Para uma boa alimentação, o corpo necessita de vitaminas e proteínas. A necessidade mínima de vitaminas é de 32 unidades por dia e a de proteínas de 26 unidades por dia. Uma pessoa tem disponível carne e ovos para se alimentar. Cada unidade de carne contém 4 unidades de vitaminas e 6 unidades de proteínas. Cada unidade de ovo contém 8 unidades de vitaminas e 6 unidades de proteínas. Cada unidade de carne custa R$ 3,00 e cada unidade de ovo custa R$ 2,50. Qual a quantidade diária de carne e ovos que deve ser consumida para suprir as necessidades de vitaminas e proteínas com o menor custo possível? EX. 3 Uma empresa fabrica 2 artigos de camping: sacos de dormir e barracas. Cada saco de dormir requer 2 horas para cortar os tecidos, 5 horas para costurar e 1 hora para impermeabilizar. Cada barraca requer 1 hora para cortar os tecidos, 5 horas para as costuras e 3 horas de impermeabilização. Dados os recursos limitados da empresa, ela dispõe de 14 horas para o corte, 40 horas para a costura e 18 horas para a impermeabilização, por dia. A margem de lucro é de R$ 50,00 por saco de dormir e de R$ 30,00 por barraca. Maximize a função lucro em termos da quantidade de barracas e sacos de dormir a serem produzidos por dia.
4 2. UTILIZAÇÃO DA PLANILHA ELETRÔNICA EXCEL PARA RESOLVER PROBLEMAS DE LP Existem dois modos de se formular um problema em programação linear: o modo tradicional, onde se usa o método gráfico (até duas variáveis) e o método Simplex (3 ou mais variáveis), ou o método computacional, onde existem programas prontos para resolver problemas de LP (como por ex. o programa "LINDO") ou então, utilizando as planilhas eletrônicas como EXCEL, LOTUS 1-2-3 ou Quattro Pró. O objetivo do presente texto é fornecer um roteiro para a resolução de um problema típico de LP utilizando o software EXCEL. O exemplo a seguir é considerado um protótipo de problemas de LP, visto que muitos casos se reduzem a simples variações do mesmo. O problema básico se resume a achar a "quantidade otimizada de produtos" a serem fabricados de modo a maximizar o lucro ou a receita. Na Lista 2 existem vários problemas desse tipo. Examinemos então o problema do "dilema do fabricante", que foi resolvido em classe: Um fabricante deseja maximizar a receita bruta. A tabela abaixo ilustra as composições das ligas, seus preços e as limitações na disponibilidade de matéria prima. Modele e resolva o problema. Liga Tipo A Liga Tipo B Matéria prima disponível Cobre 2 1 16 Zinco 1 2 11 Chumbo 1 3 15 Preço unitário R$ 30,00 R$ 50,00 2.1. Elementos da Planilha Dados de Entrada: são os dados fornecidos no problema, isto é, os dados da função objetivo e os dados das equações de restrição (maior igual ou menor igual, incluindo as condições de não-negatividade). Esses dados devem aparecer em algum lugar na
5 planilha. Apesar de não ser absolutamente necessário, nossa convenção é envolver os dados de entrada com uma borda azul e fundo cinza. É aconselhável colocar o máximo de dados de entrada no canto superior esquerdo da planilha, apesar de que em alguns problemas específicos iremos mudar essa regra. Células variáveis: Ao invés de usarmos nomes de variáveis como x 1 ou y 1, utilizamos um conjunto de células pré-definidas que fazem o papel das variáveis de decisão. Os valores nessas células podem ser mudados a fim de otimizar a função objetivo. Para evidenciar essas células, convencionamos envolvê-las em uma borda vermelha. Célula destino: essa célula irá acumular o valor calculado da função objetivo. A ferramenta SOLVER sistematicamente varia os valores das células variáveis a fim de otimizar o valor da célula destino. Nossa convenção é envolver a célula destino em uma borda preta dupla. Restrições ou vínculos: no EXCEL, as restrições não aparecem diretamente na planilha. Ao invés disso, iremos especificar as desigualdades diretamente num quadro de diálogo da ferramenta SOLVER. Deve-se entrar todas as desigualdades, inclusive os vínculos de não-negatividade. Em geral, a solução completa do problema envolve dois estágios: O primeiro estágio é a entrada de todos os dados fornecidos no problema, os valores iniciais das células variáveis (que adotaremos como sendo 1) e as fórmulas que relacionam essas células com os dados de entrada e cujo resultado é armazenado na célula destino. Esse primeiro estágio é o mais importante pois é nele que todos os ingredientes do modelo são incluídos e relacionados entre si. No segundo estágio chamamos a ferramenta SOLVER no menu Ferramentas do Excel, que irá pedir a localização das células variáveis e da célula destino, bem como uma lista de todas as restrições envolvidas no problema, que são escritas em termos de endereços de células. Ao final é só pedir para que o SOLVER ache a solução otimizada. 2.2. Desenvolvendo o Problema na Planilha Dados de entrada: Entre com os dados conforme mostrado no quadro abaixo. As quantidades de cada tipo de matéria prima nas células C5:D7, as quantidades
6 disponíveis de cada tipo nas células G5:G7 e a receita de cada tipo de liga nas células C9:D9. Níveis de produção: entre com qualquer valor inicial nas células C14:D14. Usualmente utilizaremos o valor 1, mas isso não é uma regra, visto que o programa achará a solução qualquer que seja o valor inicial. Essas são as células variáveis, isto é, as células onde os valores das variáveis de decisão são colocados. Recursos utilizados: entre com a fórmula abaixo na célula E5 =SOMARPRODUTO(C5:D5;$C$14:$D$14) e a copie para as células E6 e E7. Essa fórmula calcula as unidades de cobre, chumbo e zinco utilizadas pelas quantidades de ligas digitadas inicialmente. A função somarproduto é particularmente útil em modelos de LP. Aqui ela multiplica cada valor do intervalo de células C5:D5 pelos correspondentes valores nas células C14:D14 e depois soma esses produtos, do mesmo modo que é feito na multiplicação de matrizes. O propósito de colocar o dólar das células variáveis é o de fixá-las quando copiamos a mesma fórmula para as outras restrições. Receita obtida: entre com a fórmula abaixo na célula E9: =SOMARPRODUTO(C9:D9;C14:D14) Essa fórmula calcula o total de receita de acordo com o número de ligas presentes nas células variáveis. Se você fez tudo certo deverá obter uma planilha como a que está abaixo.
7 Usar o SOLVER: a ferramenta SOLVER consegue atingir 2 objetivos: inicialmente ela pede que você especifique a célula destino (resultado da função objetivo), as células variáveis (valores das variáveis de decisão) e as restrições do problema, inclusive os vínculos de não-negatividade. Então a ferramenta resolve o problema através de ajustes nas células variáveis até que o máximo valor da célula destino seja encontrado. Para os problemas de PL, a ferramenta utiliza o chamado "Modelo SIMPLEX", que será visto em classe. Para chamar o Solver, clique em ferramentas e escolha Solver. Se você não encontrar essa ferramenta, escolha o item suplementos (d0 menu ferramentas) e procure o Solver e clique no respectivo quadrinho. Se ele não estiver presente, clique em procurar e ache o arquivo SOLVER.XLA e o selecione. Dê OK em tudo e feche as janelas e clique novamente em Ferramentas e agora sim o Solver estará lá. A janela do Solver se abrirá conforme mostrado abaixo: a) Selecione como célula destino a célula E9 e clique na opção Max. b) Selecione as células variáveis de acordo com a janela acima. c) Adicione cada restrição, com a respectiva desigualdade correta. Note que você deve dar corretamente os endereços de cada desigualdade e, por esse motivo, não importa muito onde você as coloque na planilha. Modelo Linear: antes de pedir para Resolver, clique em Opções e selecione "Presumir modelo Linear", pois afinal se trata de PL. Resolver: clique em resolver e então o Solver mostrará nas células variáveis o valor ótimo das quantidades de ligas e na célula destino o valor máximo da Receita. Antes ele diz que achou uma solução ótima e, se você selecionar nas opções de relatórios, ele criará até 3 tipos de relatórios diferentes, os quais serão muito úteis futuramente.
8 Escolha os 3 relatórios e dê OK. Você verá que o Excel criará mais 3 pastas, cada uma com um tipo de relatório. 2.3. Exercícios Resolver todos exercícios aplicados em PO I
9 3. O PROBLEMA DA PROGRAMAÇÃO LINEAR E MODELO DE TRANSPORTE 3.1. Apresentação Na aula anterior fomos apresentados ao problema no caso bem simples de apenas duas variáveis de decisão, x1 e x2. Em geral o número de variáveis é muito maior, o que impossibilita visualizações gráficas. Na presente aula, concentrar-nos-emos tão somente na formulação de problemas de programação linear mais complexos. Não trataremos de como resolver estes problemas, mas tão-somente de como formulá-los. Ao estruturarmos um problema sob a forma de um modelo matemático, o intuito é o de nos ajudar no processo de decisão: que atividades empreender e o quanto de cada uma, a fim de satisfazer um dado objetivo. Programação Linear é uma ferramenta de planejamento que nos ajuda a selecionar que atividades (variáveis de decisão) empreender, dado que essas atividades (diversas alternativas) competem entre si pela utilização de recursos escassos (restrições) ou então precisam satisfazer certos requisitos mínimos. O objetivo será maximizar (minimizar) uma função das atividades, geralmente lucros (perdas). A ferramenta Programação Linear exige, para seu uso, que todas as funções sejam lineares. Em formulação matemática, o problema de programação linear é do tipo: Max Z = c1x1 + c2x2 +...+ cnxn (1) sujeito a: a11x1 + a12x2 +...+a1nxn b1 a21x1 + a22x2 +...+a2nxn b2 (2)... am1x1 +am2x2 +...+amnxn bm onde bi 0 para i =I,...,m; e mais as restrições de não negatividade x1 0,...,xN 0 Onde (1) é a função objetiva;
(2) são as restrições principais. 10 O problema resume-se na maximização (ou minimização) de uma função linear, a função objetiva, sujeita a restrições também lineares. Interpretação Econômica dos símbolos acima: N são as atividades que competem, sendo x1,...,xn seus níveis de atividades. Cj é o aumento em Z por unidade de atividade j. M são os recursos escassos cujos níveis são b1,...,bm. aij é o quanto de recurso i é consumido pela atividade j. Lista de Exercícios (Programação Linear ) Administração Pesquisa Operacional 3.2. Exercício Prático EX. 1 Um nutricionista precisa estabelecer uma dieta contendo, pelo menos, 10 unidades de vitamina A, 30 unidades de vitamina B e 18 unidades de vitamina C. Essas vitaminas estão contidas em quantidades variadas em cinco alimentos que vamos chamar de s1, s2, s3, s4 e s5. O quadro dá o número de unidades das vitaminas A, B e C em cada unidade desses cinco alimentos bem com o seu custo, em reais, por unidade. s1 s2 s3 s4 s5 A 0 1 5 4 3 B 2 1 0 3 2 C 3 1 0 9 0 Custo 4 2 1 10 5 Calcular as quantidades dos cinco elementos que devem ser incluídas na dieta diária, a fim de encontrarmos esses teores de vitaminas com o menor custo. EX2. Uma empresa tem fábricas nos locais I e II, que abastecem armazéns situados em A, B e C. As capacidades mensais das fabricas são 11 unidades e 13 unidades respectivamente para I e II. As necessidades mensais dos armazéns são 6, 4, 14
respectivamente para A, B e C. Os custos unitários de transporte, em U.M. são respectivamente: 11 A B C I 60.000 40.000 30.000 II 20.000 30.000 50.000 Pergunta: Fazer as distribuições de mínimo custo e calculara este custo. EX. 3 Uma fabrica produz um determinado produto em quatro filiais: A; B; C e D; o produto destina-se a cinco centro de consumo: I, II, III, IV e V. Sabendo-se que: as filiais A; B; C e D dispõem, respectivamente, de 40, 50, 20 e 80 unidades de produto; os centros de consumo I; II; III, IV e V necessitam, respectivamente, de 20, 50, 10, 5 e 105 unidades do produto; Custo unitário de transporte ( em reais) I II III IV V A 2 3 10 5 7 B 8 1-3 4 C 5 5 6 7 1 D 2 1 1 4 7 Como seria o modelo correspondente? EX. 4 Um gerente de produção deseja estabelecer um plano de produção mensal para os produtos P1, P2 e P3. Esses produtos são feitos com os materiais A e B. Ele tem em estoque, para serem usadas no próximo mês, 2.000 unidades de A e 3.000 unidades de B. As quantidades de A e B necessárias para a produção de uma unidade de P1, P2 e P3, estão na tabela a seguir: P1 P2 P3 A 2 3 5 B 4 2 7 Se toda mão de obra fosse destinada para a produção de P1, teríamos 700 unidades. O tempo de mão de obra para produzir uma unidade de P1 é duas vezes maior que P2 e 3 vezes maior que P3.
12 O lucro unitário de P1 é $ 100,00, de P2 é $ 110,00 e P3 é de $ 90,00. Além disso, temos a informação revelada por uma pesquisa de mercado, de que as demandas mínimas mensais dos consumidores as 200, 200 e 150 unidades de P1, P2 e P3 respectivamente. EX. 05: O problema da produção: duas fábricas produzem 3 diferentes tipos de papel. A companhia que controla as fábricas tem um contrato para produzir 16 toneladas de papel fino, 6 toneladas de papel médio e 28 toneladas de papel grosso. O custo de produção da primeira fábrica é de R$ 10.000,00 por dia e o da Segunda fábrica é de R$ 20.000,00 por dia. A primeira fábrica produz 8 toneladas de papel fino, 1 tonelada de papel médio e 2 toneladas de papel grosso por dia, enquanto que a segunda fábrica produz 2 toneladas de papel fino, 1 tonelada de papel médio e 7 toneladas de papel grosso, por dia. A questão central é descobrir quantos dias cada fábrica deve operar para suprir o contrato mais economicamente. EX. 06: O problema da pesquisa: uma companhia de pesquisa deseja realizar uma enquête pelo telefone. Para isso ela precisa contatar no mínimo 150 esposas, 120 maridos, 100 homens solteiros e 110 mulheres solteiras. O custo é de R$ 2,00 para fazer cada ligação na parte da manhã, R$ 3,50 na parte da tarde e R$ 5,00 na parte da noite. A tabela abaixo mostra os resultados que são esperados. Por exemplo, 30% de todas as ligações durante a manhã são respondidas por esposas, e 15% de todas as ligações noturnas são respondidas por homens solteiros. Devido a diversos fatores, no mínimo a metade de todas as ligações devem ser feitas durante o período noturno. O objetivo é descobrir quantas ligações fazer durante a manhã, quantas durante a tarde e quantas durante a noite. Pessoa respondendo % de chamadas na % de chamadas na % de chamadas manhã tarde noturnas Esposa 30 25 30 Marido 10 15 30 Homem solteiro 10 15 15 Mulher solteira 10 20 20 Ninguém 40 25 5 EX. 7: O problema do investidor: um investidor possui R$ 18.000,00 e tem à sua disposição 3 alternativas para aplicar seu capital, além de deixá-lo na poupança, rendendo
13 6% ao ano: Alternativa 1: comprar um lote de ações cujo preço unitário é R$ 4,50 e cuja rentabilidade anual esperada é de 47%. Alternativa 2: comprar letras de câmbio cujo preço unitário é R$ 3,00 e cuja rentabilidade anual é de 32%.. Alternativa 3: comprar Obrigações do Tesouro Nacional cujo preço unitário é de R$ 1,50 e cuja rentabilidade anual é de 8%. Supondo que: a) o investidor não deseja adquirir mais do que 1750 ações e/ou letras de câmbio; b) seu corretor só possa conseguir até 1000 ações e 1500 letras de câmbio; c) que o investidor queira, por medida de segurança deixar, pelo menos, R$ 2.000,00 na poupança d) que o investimento feito em OTN não ultrapasse 1,7 vezes o investimento na poupança; Que quantidades deve o investidor alocar a cada alternativa, considerando que o seu objetivo é maximizar o seu capital no fim do ano? Formule o problema em termos da PL. EX 8 - O problema da mistura balanceada: Formule, sob forma de programação linear, o problema a seguir. Deseja-se determinar as misturas de 4 derivados do petróleo, que serão os constituintes de três tipos de gasolina (extra, super e comum). 0 objetivo é maximizar o lucro. Constituintes Máximo disponível (barris) Custo/barril 1 5000 4 2 2000 7 3 6000 3 4 1000 6 A fim de manter a qualidade de cada tipo de gasolina, é preciso manter as porcentagens dos diversos constituintes. Os preços de venda de cada tipo de gasolina por barril também estão indicados na tabela abaixo. Tipo de gasolina Especificações Preço A Não mais que 30% de 1 5,50 Não mais que 50% de 3 Não menos que 40% de 2 B Não mais que 60% de 1 4,50 Não menos que 10% de 2 C Não mais que 80% de 1 3,50
14 EX 9.Um vendedor de frutas pode transportar 800 caixas de frutas para sua região de vendas. Ele necessita transportar 200 caixas de laranjas, a 20 reais de lucro por caixa, pelo menos 100 caixas de pêssegos a 10 reais de lucro por caixa, e no máximo 200 caixas de tangerinas a 30 reais de lucro por caixa. De que forma deverá ele carregar o caminhão para obter o lucro máximo? Construa o modelo do problema. EX. 10 Uma refinaria produz três tipos de gasolina, verde, azul e comum. Cada tipo requer gasolina pura, octana e aditivo que são disponíveis nas quantidades de 9.600.000, e 4.800.000 e 2.200.000 litros por semana, respectivamente, As especificações de cada tipo são: Um litro de gasolina verde requer 0,22 litro de gasolina pura, 0,50 litro de octana e 0,28 litro de aditivo; Um litro de gasolina azul requer 0,52 litro de gasolina pura, 0,34 litro de octana e 0,14 litro de aditivo. Um litro de gasolina comum requer 0,74 litro de gasolina pura, 0,20 litro de octana e 0,06 litro de aditivo. Como regra de produção, baseada em demanda de mercado, o planejamento da refinaria estipulou que a quantidade de gasolina comum deve ser no mínimo igual a 16 vezes a quantidade de gasolina verde e que a quantidade de gasolina azul seja no máximo igual a 600.000 litros por semana. A empresa sabe que cada litro de gasolina verde, azul e comum dá uma margem de contribuição para o lucro de $0,30, $0,25 e $0,20 respectivamente, e seu objetivo e determinar o programa de produção que maximiza a margem total de contribuição de lucro EX. 11 O processo de fabricação de cimento pode ser representado por um fluxo de materiais, conforme figura a seguir: Depósito de Clínquer Pré- Homog e- neizado r Moinho de cru e silo de farinha Forno Moinh o de Ciment o Silo e ensaca -deira AF 250 CP 320 Britador GESSO Jazida ADITIVO ESCÓRIA DE ALTO FORNO
15 Dois Produtos são Fabricados: Cimento portland: CP 320 Cimento alto-forno: AF 250 As formulas convencionais de fabricação dos dois tipos de cimento são mostradas na tabela que se segue: COMPONENTES CP 320 AF 250 Clínquer 85% 50% Escória de alto-forno 7% 45% Gesso 3% 3% Aditivo 5% 2% A produção de clínquer é limitada a um máximo de 1.100.000 toneladas por ano (capacidade do forno). Da mesma forma, a produção dos sois tipos de cimento também é limitada a 1.100.000 toneladas por ano (capacidade do moinho). As seguintes limitações adicionais são conhecidas: Venda de clínquer a outros fabricantes de cimento: Compra de escória de usinas siderúrgicas: Compra de gesso a aditivo( cada um ): Máximo de 200.000 t/ano Máximo de 180.000 t/ano Máximo de 50.000 t/ano Por outro lado, os seguintes dados de lucro e custos são os seguintes: Contribuição marginal do CP 320: Contribuição marginal do AF 250: Contribuição marginal do clínquer: Preço da escória de siderurgia: Preço do gesso: Preço do aditivo: $ 41,00 / t $ 37,80 / t $ 34,40 / t $ 22,10 / t $ 34,20 / t $ 1,70 / t
16 A contribuição marginal é calculada como a receita líquida menos os custos fixos e variáveis, exceto escória, gesso e aditivo. O objetivo da empresa é calcular a produção total anual que maximiza o lucro total.