Tema 01

March 29, 2019 | Author: Ailson Picanço | Category: Linear Programming, Demand, Economics, Free Software, Tecnologia
Share Embed Donate


Short Description

Download Tema 01...

Description

PROGRAMAÇÃO PROGRAMAÇÃO LINEAR APLICADA A UM PROBLEMA DE ENVIO ENVIO DE COMBUSTÍVEL PARA AEROPORTOS. Ailson Renan Santos Picanço Henrique Evangelista de Oliveira Murilo Wadt FCA - Unicamp Limeira - SP

Resumo: Este trabalho se propõe a utilizar a  programação linear para solucionar um problema de transporte, onde se pretende minimizar os custos de envio de querosene das três companhias para os quatro aeroportos estudados. Primeiramente, a situação foi modelada enquanto um problema de minimização, definindo-se a função objetivo, as variáveis e as restrições. Foi utilizado o software livre GLPK para resolver o modelo. Chegou-se a um resultado de 9,25 milhões de reais, que minimiza o custo total.  Problema  Programação Linear, GLPK

 Palavras-chave:

de

Transporte,

1. INTRODUÇÃO Um problema problema chave da gestão de negócios é de como tomar a decisão econômica de alocação de recursos. A programação linear, ou simplesmente LP, traz soluções relativas consistentes relativas a essa questão [1]. O uso de um pacote computacional como o GLPK, se mostra muito eficiente para a resolução desse tipo de  problema que apresenta poucas variáveis variáveis de decisão. O objetivo desta pesquisa é resolver o problema  proposto encontrando o menor custo total, mediante a demanda e as restrições impostas.

2. APRESENTAÇÃO DO PROBLEMA A Voe Bem precisa decidir a quantidade de querosene para combustível de seus jatos que adquire de 3 companhias vendedoras. Seus jatos são regularmente abastecidos nos aeroportos de Congonhas, Viracopos, Galeão e Pampulha.

Figura 1: Esquema representativo do problema As companhias vendedoras poderão fornecer no  próximo mês as quantidades de combustível, como apresentado na Tabela 1:

1 2 3

250 000 500 000 600 000 Tabela 1: Capacidade de fornecimento das companhias

Comp1

Viracopos

Comp2 Galeão

Comp3 Pampulha

.

Existe também a demanda de cada aeroporto que deve ser atendida completamente, e pdoe ser visualizada na Tabela 2:

AEROPORTOS

DEMANDA

Congonhas Viracopos Galeão Pampulha Tabela 2: Demanda dos aeroportos

 .

100 000 200 000 300 000 400 000

Enfim, o envio de cada companhia para cada aeroporto possui um custo específico, conforme a Tabela 3 apresenta: AEROPORTO

COMP. 1 COMP. 2 COMP. 3 Tabela 3: Custo

Congonhas

CAPACIDADE DE FORNECIMENTO (LITROS)

COMPANHIA

CON.



VIR.

12 10 9 11 10 14 em reais/litro.

GAL.

PAMP.

8 11 13

11 13 9

3. METODOLOGIA Trata-se de uma pesquisa aplicada de base quantitativa e em um estudo de caso hipotético idealizado pelo docente, inspirado em um caso prático real. Para resolver ao problema primeiro o problema foi modelado à luz de um problema de transporte. Utilizou-

se a programação linear, com auxílio de um software livre do tipo  solver   chamado GLPK FOR WINDOWS®.

4. MODELAGEM DO PROBLEMA Esse problema pode ser formulado como um  problema de transporte, onde se pretende definir, quantos galões de querosene de cada companhia deve ser enviado para cada aeroporto, de forma que minimize o custo total.

∑         3.

(3)

Restrição de não negatividade (4) É imprescindível garantir que não se assumam valores negativos para a aolocação das quantidades ( ).

            

1.1 Variável de decisão



requisitado para todos os aeroportos deve ser atendida.

 : Quantidade de querosene enviada da companhia

         ,

para ao aeroporto , e conforme a indexação mostrada nas Tabelas 4 e 5. COMPANHIA

5. RESOLUÇÃO DO PROBLEMA A utilização do GLPK para a solução desse problema gerou o resultado mostrado na Figura 1 plotada do software utilizado:

INDEX

Companhia 1 Companhia 2 Companhia 3

1 2 3

Tabela 4: Indexação das companhias.

AEROPORTO Congonhas Viracopos Galeão Pampulha

INDEX

1 2 3 4

Tabela 5: Indexação dos aeroportos.

1.2  Função objetivo A função objetivo (1) é de minimização do custo total obtida a partir da alocação das quantidades (Xij) e os respectivos custos (Cij).

 

   



1.3  Restrições 1.

Restrição de capacidade (2) das companhias ( supply constrain): O fornecido pelas companhias para os aeroportos deve companhias



   

2.

ser

até

a

capacidade

   

das



Restrição de demanda (3) dos aeroportos ( demand constrain). Como a capacidade do fornecedor é maior que a demanda, então o querosene

Figura 02: Resultado encontrado com o uso do GLPK.

O código utilizado para a resolução do problema se encontra no Anexo I.

6. CONCLUSÕES A utilização da programação linear foi eficaz, por chegar a um resultado ótimo determinístico ao problema de transporte e foi eficiente por, com uso da ferramenta GLPK, resolver o problema em tempo satisfatório (1,3s). Os resultados apontam que, para tomar uma decisão econômica, a companhia 1 deve fornecer penas para o aeroporto do Galeão (250 mil litros) e a companhia 3 apenas para o aeroporto da Pampulha (400 000 litros), entretanto a companhia 2 deve ter um mix mais distribuído, fornecendo para os aeroportos de Congonhas, Viracopos e Galeão, 100, 200 e 50 mil litros, respectivamente. Vale ressaltar a importância no balanceamento entre tempo de resolução e eficácia da resposta, fator cruscial na escolha do método e solução.

7. REFERÊNCIAS [1] REEB, J &LEAVENGOOD, S.(2002)  Transportation  Problem: A Special Case for Linear Programming Problems. Operation Research:Performance excellence in the wood products industry.

ANEXO I: Modelo desenvolvido no GLPK #Modelo de Transporte - Tema 1 set I; /*companhia*/ set J; /*aeroporto*/ param a{i in I}; /* galões de querosene da companhia i */ param b{j in J}; /* consumo no aeroporto j */ param c{i in I, j in J}; /* custo de transporte da companhia i para o aeroproto j #Parametros para impressao dos resultados do modelo em arquivos. param file, symbolic, default "ResumoTema1.txt"; /* quantidade transportada da companhia i para o aeroproto j */ var  x {i in I, j in J}>=0; /* minimizar o custo total de transporte em reais */ minimize cost: sum{i in I, j in J} c[i,j] * x[i,j]; /* restrição de atendimento da demanda j */ s.t. demand{j in J}: sum{i in I} x[i,j] >= b[j]; /* restrição de capacidade i */ s.t. supply{i in I}: sum{j in J} x[i,j]> file; printf '------------------------------------------------------\n' >> file; printf 'Solucao Encontrada \n' >> file; printf '------------------------------------------------------\n' >> file; printf ' Fluxo [Companhia - Aeroporto [litros]] \n' >> file; printf ' \n' >> file; printf '------------------------------------------------------\n' >> file; printf {i in I, j in J} " %10s - %10s: = %8.2f \n ", i, j, x[i,j] >> file; printf '------------------------------------------------------\n' >> file; printf 'Custo total (z): ' >> file; printf ' %10.2f \n', cost >> file; printf '----------------------\n'>> file; printf '\n' >> file; data; set I := Comp1 Comp2 Comp3; set J := Congonhas Viracopos Galeao Pampulha; param a := Comp1 250000 Comp2 500000 Comp3 600000; param b := Congonhas 100000 Viracopos 200000 Galeao 300000 Pampulha 400000;

*/

param c : Congonhas Viracopos Galeao Pampulha := Comp1 12 10 8 11 Comp2 9 11 11 13 Comp3 10 13 13 9 ; end;

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF