Projeto Integrador - TIO[1]
-
Upload
fernandoroldao -
Category
Documents
-
view
70 -
download
7
description
Transcript of Projeto Integrador - TIO[1]
GRUPO EDUCACIONAL DRUMMOND
FACULDADE CARLOS DRUMMOND DE ANDRADE
ENGENHARIA DE PRODUÇÃO
PROJETO INTEGRADOR DE ENGENHARIA (TIO)
Programação Linear com o Software Microsoft Excel via Solver e LINDO
FERNANDO ROLDÃO
DIEGO MARQUES NASCIMENTO
WELINGTON TEIXEIRA
FÁBIO SANTOS
São Paulo
2012
FERNANDO ROLDÃO
DIEGO MARQUES NASCIMENTO
WELINGTON TEIXEIRA
FÁBIO SANTOS
PROJETO INTEGRADOR DE ENGENHARIA (TIO)
Programação Linear com o Software Microsoft Excel via Solver e LINDO
Orientador: Profº Mestre João Alves
São Paulo
2012
RESUMO
Este trabalho tem como objetivo encontrar soluções para problemas de programação apresentados pelos orientadores do projeto. São problemas de equações lineares que serão resolvidos utilizando o programa Solver da Microsoft e o LINDO – um programa livre.
ABSTRACT
This work aims to find solutions to programming problems suggested by guiding of the project. They are problems of linear equations that are solved using the Solver program by Microsoft and LINDO - a free program.
SUMÁRIOINTRODUÇÃO............................................................................................................1
1. PROGRAMAÇÃO LINEAR...................................................................................2
2. SOLVER...............................................................................................................3
2.1. Desenvolvimento..........................................................................................3
2.2. Parâmetros....................................................................................................3
3. LINDO (Linear, Interactive, and Discrete Optimizer)........................................4
4. PROBLEMAS PROPOSTOS................................................................................4
4.1. Primeiro Problema........................................................................................4
4.2. Apresentação da Solução Ótima Através do Solver.................................5
1° cenário:.............................................................................................................5
2° cenário:.............................................................................................................6
3° cenário:.............................................................................................................7
4.3. Apresentação da Solução Ótima através do LINDO..................................7
1
INTRODUÇÃO
O projeto integrador é um trabalho gerenciado que visa encontrar soluções
para um determinado problema ou a execução de determinada proposta. O projeto
proposto para os alunos do 5° semestre de Engenharia de Produção período
noturno é a solução de dois problemas através de programação linear via software.
O software destinado à solução destes problemas é a ferramenta Solver
utilizada via Microsoft Excel, contudo resolvemos realizar a solução dos problemas
utilizando também a ferramenta LINDO (Linear, INteractive, and Discrete Optimizer),
para que assim possamos oferecer um comparativo entre os dois métodos de
resolução de problemas de programação linear.
2
1. PROGRAMAÇÃO LINEAR
Através de pesquisa podemos observar que a Programação Linear é uma das
técnicas da Pesquisa Operacional mais utilizada em se tratando de problemas de
otimização.
Os problemas de Programação Linear buscam a distribuição eficiente de
recursos limitados para atender um determinado objetivo e este é expresso através
de uma função linear, denominada de "Função Objetivo".
É necessário que se defina quais as atividades que consomem recursos e em
que proporções os mesmos são consumidos. Essas informações são apresentadas
em forma de equações e inequações lineares, uma para cada recurso. Ao conjunto
dessas equações e/ou inequações, denomina-se "Restrições do Modelo".
Normalmente se tem inúmeras maneiras de distribuir os recursos escassos
entre as diversas atividades em estudo, bastando para com isso que essas
distribuições estejam coerentes com as restrições do modelo. No entanto, o que se
busca, num problema de Programação Linear é a função objetivo, isto é, a
maximização do lucro ou a minimização dos custos. A essa solução dá-se o nome
de solução ótima.
Assim, a Programação linear se incube de achar a solução ótima de um
problema, uma vez definida o modelo linear, ou seja, a função objetivo e as
restrições lineares.
3
2. SOLVER
O Solver faz parte de um conjunto de programas algumas vezes chamado de
ferramentas de análise hipotética e é um componente opcional do Software
Microsoft Excel, ele não vem automaticamente disponível, mas sim deve ser
instalado como um suplemento.
2.1. Desenvolvimento
A versão original do Solver saiu em fevereiro de 1991, incluído como um
componente opcional para o Excel 3.0. A versão inicial foi escrita para um ambiente
que possuía memória limitada se comparado aos computadores modernos.
Na versão do Excel 2010 o Solver recebeu otimização do desempenho o que
acelerou o método de modelagem Simplex o mais utilizado no Excel para os casos
de negócios e o método GRG não-linear. Um método de solução adicional, chamado
Evolutionary Solver também foi implementado este utiliza de algoritmos genéticos
para encontrar a melhor solução e tem a vantagem adicional de ser capaz de usar
todas as funções do Excel como parte dos parâmetros de entrada. Versões
anteriores do Solver não poderiam extrair dados de tabelas usando o INDEX ou
funções PROCV.
2.2. Parâmetros
Com o Solver você pode localizar um valor ideal para uma fórmula em uma
célula chamada de célula de destino em uma planilha. O Solver trabalha com um
grupo de células relacionadas direta ou indiretamente com a fórmula na célula de
destino. O Solver ajusta os valores nas células variáveis que você especificar
chamadas de células ajustáveis para produzir o resultado especificado por você na
fórmula da célula de destino. Você pode aplicar restrições para restringir os valores
que o Solver poderá usar no modelo e as restrições podem se referir a outras
células que afetem a fórmula da célula de destino.
S1 S2 S3 S4 S5A 0 1 5 4 3B 2 1 0 3 2C 3 1 0 9 0CUSTO 4 2 1 10 5
4
3. LINDO (Linear, Interactive, and Discrete Optimizer)
LINDO (Linear, Interactive and Discrete Optimizer) foi desenvolvido por Linus
Schrage (1986). Ele é um programa de computador que pode ser usado para
resolver problemas de programação linear, inteira e quadrática.
Utilizado para resolução de problemas reais de mais de 10.000 variáveis,
dispõe de características que mostram os passos e quadros intermediários do
método simplex.
4. PROBLEMAS PROPOSTOS
4.1. Primeiro Problema
Uma 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, S5. O quadro seguinte dá o numero de unidades
das vitaminas A, B e C em cada unidade desses cinco alimentos como o seu custo
por unidade.
O problema está em calcular a quantidade dos cinco alimentos que devem ser incluídas na dieta diária, a fim de garantir os teores de cada vitamina e com o menor custo possível.
0X1 + 1X2 + 5X3 + 4X4 + 3X5 > 10
2X1 + 1X2 + 0X3 + 3X4 + 2X5 > 30
3X1 + 1X2 + 0X3 + 9X4 + 0X5 > 18
MIN 4 2 1 10 5
S1 S2 S3 S4 S54 2 1 10 51 1 1 1 1
A 0 1 5 4 3 13 10
B 2 1 0 3 2 8 30
C 3 1 0 9 0 13 18
22
Requisitos nutricionais
Vita
min
as
Alimentos
Custo total
Custo por unidadeTotal de unidades
Total de Vitamina
5
4.2. Apresentação da Solução Ótima Através do Solver
Com base nos dados do problema elaboramos o modelo de programação linear:
Para utilizar o Solver na resolução deste problema, nós transcrevemos estas informações para uma planilha do Excel e podemos o seguinte cenário:
1° cenário:
Na situação acima onde apenas uma unidade de cada alimento é adquirida, não completamos o objetivo, pois temos carência das vitaminas B e C.
S1 S2 S3 S4 S54 2 1 10 52 4 1 4 5
A 0 4 5 16 15 40 10
B 4 4 0 12 10 30 30
C 6 4 0 36 0 46 18
82
Requisitos nutricionais
Vita
min
as
Alimentos
Custo total
Custo por unidadeTotal de unidades
Total de Vitamina
6
2° cenário:
No cenário acima as necessidades nutricionais foram cumpridas e isto gerou um custo total de R$ 82,00.
Utilizamos o Solver para saber se o custo encontrado pode ser minimizado.
Para isto definimos:
A função objetivo a ser minimizada.
As células variáveis.
As restrições.
S1 S2 S3 S4 S54 2 1 10 510 10 0 0 0
A 0 10 0 0 0 10 10
B 20 10 0 0 0 30 30
C 30 10 0 0 0 40 18
60
Requisitos nutricionais
Vita
min
as
Alimentos
Custo total
Custo por unidadeTotal de unidades
Total de Vitamina
0X1 + 1X2 + 5X3 + 4X4 + 3X5 > 10
2X1 + 1X2 + 0X3 + 3X4 + 2X5 > 30
3X1 + 1X2 + 0X3 + 9X4 + 0X5 > 18
MIN 4 2 1 10 5
7
3° cenário:
Como podemos observar abaixo, obtemos o menor custo possível respeitando os teores impostos para cada vitamina.
Sendo assim a solução ótima para o problema proposto seria a aquisição de 10 unidades do alimento S1 e 10 unidades do alimento S2.
4.3. Apresentação da Solução Ótima através do LINDO
Para a apresentação da solução ótima utilizando o LINDO, utilizamos os mesmos dados e modelo utilizados anteriormente para a resolução através do Solver.
Para utilizar o Solver na resolução deste problema, nós transcrevemos estas informações para o campo de entrada do software:
8
Depois de digitado o modelo clicamos no menu SOLVE / COMPILE MODEL(CTRL+E), em seguida clicamos novamente em SOLVE / SOLVE(CTRL+S).
Após estas etapas é exibida a solução ótima para o problema:
Podemos observar que é exatamente a mesma solução apontada pelo Solver onde teremos 10 unidades do alimento S1 e 10 unidades do alimento S2 com um custo total de R$ 60,00.
4.4 Segundo Problema
Classe 1 Classe 2 Classe 3
Cálcio 0,7 0,8 0
Ferro 0,9 0,8 0,8
Proteinas 0,8 1,5 0,9Gordura 0,5 0,6 0,4
Ingredientes da ração (unidades por l ibra)
9
A Colorado Cattle Company (CCC) pode comprar três tipos de ingredientes de ração animal de atacadistas. O gado da empresa tem certas necessidades nutricionais em relação á gordura, proteínas, cálcio e ferro. Cada vaca exige, no mínimo, 10 unidades de cálcio, não mais de 7,5 unidades de gordura, no mínimo 12 unidades de ferro e 15 unidades de proteínas por dia. A tabela abaixo mostra a quantidade de gordura, proteínas, cálcio e ferro em cada libra dos três ingredientes da ração animal. A ração de classe um custa $ 0,25/libra, a de classe 2, $ 0,10/libra e a da classe 3, $ 0,08/libra. O gado pode ser alimentado com uma mistura dos três tipos de ração. Portanto, a CCC gostaria de alimentar seu rebanho da forma mais econômica possível.
4.5 Apresentação da Solução Ótima Através do Solver
Com base nos dados do problema elaboramos o modelo de programação linear:
Para utilizar o Solver na resolução deste problema, nós transcrevemos estas informações para uma planilha do Excel e podemos o seguinte cenário:
10
1° cenário:
Na situação acima onde apenas uma unidade de cada Classe é adquirida, não completamos o objetivo, pois temos carência de todos os requisitos.
Utilizamos o Solver para saber se o custo encontrado pode ser minimizado.
Para isto definimos:
A função objetivo a ser minimizada.
As células variáveis.
As restrições.
Classe 1 Classe 2 Classe 3Custo por unidade 0,25 0,1 0,08Total de unidades 8 5,5 0,5
Cálcio 5,6 4,4 0 10 10
Ferro 7,2 4,4 0,4 12 12
Proteinas 6,4 8,25 0,45 15 15
Gordura 4 3,3 0,2 7,5 7,5
Custo Total 2,59
AlimentosTota l de
necesss idades nutricionais
Requisitos nutricionais
11
2° cenário:
Como podemos observar abaixo, obtemos o menor custo possível respeitando requisitos impostos para cada classe.
Sendo assim teremos 8 unidades da classe 1, 5,5 unidades da classe 2 e 0,5 unidades da classe 3, totalizando um custo de R$ 2,59.
4.6 Apresentação da Solução Ótima através do LINDO
Para a apresentação da solução ótima utilizando o LINDO, utilizamos os mesmos dados e modelo utilizados anteriormente para a resolução através do Solver.
Classe 1 Classe 2 Classe 3Custo por unidade 0,25 0,1 0,08Total de unidades 8 5,5 0,5
Cálcio 5,6 4,4 0 10 10
Ferro 7,2 4,4 0,4 12 12
Proteinas 6,4 8,25 0,45 15 15
Gordura 4 3,3 0,2 7,5 7,5
Custo Total 2,59
AlimentosTota l de
necesss idades nutricionais
Requisitos nutricionais
12
Para utilizar o Solver na resolução deste problema, nós transcrevemos estas informações para o campo de entrada do software:
Depois de digitado o modelo clicamos no menu SOLVE / COMPILE MODEL(CTRL+E), em seguida clicamos novamente em SOLVE / SOLVE(CTRL+S).
Após estas etapas é exibida a solução ótima para o problema:
13
Podemos observar que é exatamente a mesma solução apontada pelo Solver onde teremos 8 unidades da classe 1, 5,5 unidades da classe 2 e 0,5 unidades da classe 3, totalizando um custo de R$ 2,59.
5. Conclusão
Observamos que as duas ferramentas utilizadas na resolução do problema proposto apresentaram a mesma solução.
Ao discutirmos sobre qual o melhor método para a apresentação da solução ótima chegamos a algumas vantagens e desvantagens.
14
Sendo assim chegamos a conclusão que as duas ferramentas cumprem com o seus objetivos, entretanto o LINDO consegue apresentar a solução do problema de maneira mais objetiva.
6. Referencias Bibliográficas
Introdução a Programação Linear Parte 1 – Prof. Alexandre Stamford.
www.ceset.unicamp.br/~marlih/ST565/2003_1_pl1%5B1%5D.ppt
Softwares de otimização: manual de referência - Aloísio de Castro Gomes Júnior