Programação de Computadores I Aula 08 Programação: Estruturas ...
programação linear.pdf
Click here to load reader
-
Upload
augusto-augusto -
Category
Documents
-
view
52 -
download
0
Transcript of programação linear.pdf
-
UNIVERSIDADE DE SO PAULO
ESCOLA DE ENGENHARIA DE LORENA
GUILHERME ARANTES PEDRO
DESENVOLVIMENTO DE UMA INTERFACE VBA PARA A PRO-
GRAMO MATEMTICA DA PRODUO UTILIZANDO PRO-
GRAMAO LINEAR
Lorena
2012
-
GUILHERME ARANTES PEDRO
Desenvolvimento de uma interface VBA para a programao matem-
tica de produo utilizando programao linear
Trabalho de concluso de curso apresentado
Escola de Engenharia de Lorena - USP, como
requisito parcial para obteno do ttulo de En-
genheiro Qumico.
Orientador: Prof. Dr. Domingos Svio Giordani
Lorena
2012
-
Autorizo a reproduo e divulgao total ou parcial deste trabalho, por
qualquer meio convencional ou eletrnico, para fins de estudo e pesquisa, desde
que citada a fonte.
-
AGRADECIMENTOS
Primeiramente a Deus, por me conceder sade, sabedoria, f e perseve-
rana para a concluso do meu curso.
Aos meus pais, Edna e lcio, por toda pacincia, amor, apoio e suporte
para a concluso da graduao.
Dayane, por todo seu amor, carinho e companheirismo durante esses
quatro anos inesquecveis ao seu lado.
Ao meu orientador Prof. Dr. Domingos Svio Giordani, pela confiana,
exemplo de profissional, e por acreditar neste trabalho.
Aos meus familiares e amigos, por todo apoio e reconhecimento, em es-
pecial minha irm Gabriela e meu cunhado Diego que sempre me apoiaram e me
serviram de exemplo de f e amor.
Aos grandes amigos da banda LHopital: Tlio, Taynara, Dayane, Martini
e Tales pela grande amizade e momentos nicos que ficaro eternamente grava-
dos na memria.
Aos atuais e antigos companheiros e amigos de repblica, pelo convvio e
momentos de descontrao inigualveis ao longo destes anos de graduao.
Escola de Engenharia de Lorena, pela oportunidade de realizao do
Curso de Engenharia Qumica.
A todos os colegas e professores de graduao, pelo convvio e aprendi-
zado.
-
EPGRAFE
"Feliz aquele que transfere o que
sabe e aprende o que ensina"
Cora Coralina
-
Pedro, G. A. Desenvolvimento de uma interface VBA para a programao ma-
temtica da produo utilizando programao linear. 2012. 63f. Trabalho de
Concluso de Curso (Graduao em Engenharia Qumica), Universidade de So
Paulo, Lorena, 2012.
RESUMO
Este trabalho dedica-se ao desenvolvimento de uma interface computaci-
onal para a resoluo de problemas envolvidos com a programao da produo
em sistemas produtivos, com o objetivo de auxiliar o processo de tomada de deci-
so dentro de pequenas empresas. Visto a dificuldade das pequenas empresas
em permanecer no mercado, o uso de ferramentas de auxlio na produo um
diferencial para seu estabelecimento no mercado atual. Um mtodo para a abor-
dagem de problemas de programao da produo trata-los como um problema
de Programao Linear e resolv-los usando programao matemtica. Para
atender proposta do trabalho, foi feito um estudo na literatura no qual se notou o
grande crescimento no uso de softwares para o planejamento de produo, em
especial o Solver. Tambm, foi elabora uma estrutura lgica para o desenvolvi-
mento do modelo por parte do usurio do aplicativo construdo. Por fim, foi desen-
volvida uma planilha eletrnica no Microsoft Excel com interface amigvel feita em
Visual Basic for Applications para a realizao das macros nas quais a resoluo
do problema feita pelo suplemento Solver do Excel. O desempenho das interfa-
ces foi satisfatrio, suas rotinas e execues agiram como o esperado, alm de
fornecer dados comparveis aos da literatura. O aplicativo desenvolvido neste
trabalho atende s expectativas das pequenas empresas, por ser um aplicativo
eficaz ao auxlio na tomada de deciso e sem custos de aquisio e implantao.
Palavras-chave: Planilhas do Excel, Programao da Produo, Programao
Linear, Sistemas de apoio deciso.
-
Pedro, G. A. Desenvolvimento de uma interface VBA para a programao ma-
temtica da produo utilizando programao linear. 2012. 63f. Trabalho de
Concluso de Curso (Graduao em Engenharia Qumica), Universidade de So
Paulo, Lorena, 2012.
ABSTRACT
This work is dedicated to the development of an interface for solving com-
putational problems involved on the production scheduling in production systems,
in order to aid the process of decision in small businesses. Because of the difficul-
ty of the small businesses to maintain themselves in the market, the use of tools to
aid in the production can make the difference for their establishment in the current
market. One method for addressing problems of production scheduling is to treat
them as a Linear Programming problem and solving them using mathematical
programming. To reach the proposed work, it was done a study in the literature in
which it could be noted the increasing use of software for production planning, in
particular Solver. It was also developed a logical framework for the development of
the model by the user of the application. Finally, It was developed a user-friendly
interface to the spreadsheet in Microsoft Excel, it was done in Visual Basic for Ap-
plications. The performance of the interface was satisfactory, their routines and
plays acted as expected, and provided data comparable with those in the litera-
ture. The application developed in this work meets the expectations of small busi-
nesses, being an effective application to aid in decision making with no cost of ac-
quisition and deployment.
Keywords: Excel spreadsheets, Production Scheduling, Linear Programming, De-
cision Support Systems.
-
LISTA DE FIGURAS
Figura 1 Definio da Programao Linear (Imagem adaptada de Paulo, et al.,
2003) ............................................................................................................ 23
Figura 2- Esquema lgico para a elaborao do modelo geral ............................ 31
Figura 3 Esquema da funcionalidade para a criao das interfaces e macros ..... 31
Figura 3 - Arquitetura da funcionalidade das interfaces e macros adotadas. ....... 32
Figura 4 - Interface inicial construda no Visual Basic for Applications ................. 33
Figura 5 - Interface para a insero dos parmetros necessrios para a Funo
Objetivo ........................................................................................................ 33
Figura 6 - Interface das Restries do problema .................................................. 34
Figura 7 - Interface na qual o usurio insere uma restrio por vez ..................... 34
Figura 8 - Interface dos resultados da otimizao com os valores das variveis e o
total da otimizao ........................................................................................ 35
Figura 9 - Planilha padro com os arranjos de linhas e colunas para a
generalizao do modelo .............................................................................. 36
Figura 10 Interface de resultados da anlise de desempenho 1 ....................... 39
Figura 11 - Interface de resultados da anlise de desempenho 2 ........................ 41
Figura 12 - Interface de resultados da anlise de desempenho 3 ........................ 43
Figura 13 - Interface de resultados da anlise de desempenho 4 ........................ 46
Figura 14 - Interface de resultados da primeira maximizao da anlise 5 .......... 48
Figura 15 - Interface de resultados da segunda maximizao da anlise 5 ......... 49
-
LISTA DE TABELAS
Tabela 1 - Coeficientes das funes para os parmetros utilizados no Solver ..... 48
Tabela 2 - Resultados da simulao na Interface proposta utilizando-se o solver
como ferramenta de resoluo. .................................................................... 49
Tabela 3 - Resultados obtidos por MARETH (2012) utilizando o software pago
LINDO ........................................................................................................ 50
Tabela 4 - Quantidade disponvel do Petrleo .........Erro! Indicador no definido.
Tabela 5 - Percentuais para Limites de Qualidade das Gasolinas . Erro! Indicador
no definido.
-
LISTA DE QUADROS
Quadro 1 - Sumrio das Influncias nos aspectos administrativos. Erro! Indicador
no definido.
Quadro 2 - Influencia do tipo de indstria sobre o planejamento e controle da
produo. ..........................................................Erro! Indicador no definido.
Quadro 3 - Restries comuns em sistemas de produo ...... Erro! Indicador no
definido.
-
SUMRIO
1. INTRODUO ............................................................................................. 13
1.1. Justificativa ................................................................................................... 13
1.2. Objetivo Geral ............................................................................................... 15
1.3. Objetivos Especficos .................................................................................... 15
2. REVISO DA LITERATURA ........................................................................ 16
2.1. Programao da Produo ........................................................................... 16
2.2. Sistemas de Produo .................................................................................. 18
2.3. Programao Linear...................................................................................... 20
2.4. Planilhas Eletrnicas e o suplemento SOLVER ............................................ 24
2.5. A Pequena Empresa e o Processo Decisrio ................................................ 26
3. DESENVOLVIMENTO .................................................................................. 28
3.1. Estudo das aplicaes de Programao Linear ............................................ 28
3.2. Desenvolvimento de modelos matemticos .................................................. 30
3.3. Preparao das interfaces VBA .................................................................... 31
3.4. Preparao das macros e planilhas eletrnicas ............................................ 35
3.5. Teste de desempenho da interface ............................................................... 37
3.5.1. Anlise de desempenho 1 (JNIOR; SOUZA, 2004) ....................... 37
3.5.2. Anlise de desempenho 2 Notaes da Disciplina Mtodos de Apoio
a Deciso, Grupo de Controle e Gesto. ...................................................... 39
3.5.3. Anlise de desempenho 3 (ECKER; KUPFERSCHMID, 1988) ........ 41
3.5.4. Anlise de desempenho 4 Problema 1.2.5. (JNIOR; SOUZA, 2004)
..................................................................................................................... 43
3.5.5. Anlise de desempenho 5 ................................................................... 47
4. CONCLUSES ............................................................................................ 51
REFERNCIAS BIBLIOGRFICAS .................................................................... 52
-
APNDICE A Manual de utilizao da Interface de Programao da
Produo por Programao Linear Interface PPPL ..................................... 57
APNDICE B Macros: Cdigo VBA ................................................................ 63
Macro 1 Interface Inicial .................................................................................... 63
Macro 2 Interface da Funo Objetivo .............................................................. 65
Macro 3 Interface das Restries ...................................................................... 67
Macro 4 Interface de adio de restries ........................................................ 69
Macro 5 Interface dos resultados ...................................................................... 75
Macro 6 Aplicao Solver ................................................................................. 76
ANEXO Artigo de referncia para teste de desempenho ............................. 78
Anlise de desempenho 5 - (MARETH, et al., 2012) ............................................ 78
-
13
1.INTRODUO
Hoje as pequenas empresas passam por dificuldades em permanecer no
mercado muitas vezes por no conseguirem gerir sua produo de modo efetivo.
Vrios trabalhos propem utilizar a programao linear como ferramenta de aux-
lio s decises. Contudo, os gerentes responsveis pela tomada de deciso, mui-
tas vezes, tm dificuldade em organizar e arranjar mtodos para a resoluo de
problemas de decises.
1.1. Justificativa
Nos dias atuais a competitividade define a permanncia de uma empresa
no mercado. Na busca por diferenciais competitivos, uma produo de qualidade
e de baixo custo um grande diferencial entre empresas, para as quais a pro-
gramao da produo se torna uma ferramenta essencial. Para isto as empresas
necessitam adotar estratgias com relao metodologia de planejamento e con-
trole da programao (VIEIRA, et al., 2011). Sendo assim, a programao da pro-
duo promove melhorias quanto ao uso de matrias primas e produtividade de
uma empresa, portanto, mantendo-a competitiva no mercado atual.
Muitos so os fatores que podem influenciar a tomada de deciso dos ge-
rentes. Esses tomadores de decises vm se deparando com problemas de deci-
ses conflitantes: minimizar custos de produo frente escassez de recursos
produtivos e o crescimento das exigncias do mercado (JNIOR; SILVA, 2005).
A soluo de um problema de programao da produo possvel se ele
reunir todas as limitaes de recursos, restries de fabricao e necessidades
impostas do produto (POLON, 2010). A programao linear pode ser aplicada
com resultados satisfatrios otimizando os recursos disponveis, maximizando
resultados ou minimizando custos.
O processo de tomada de deciso de quando, onde, o que e como
produzir de modo efetivo pode ser demorado visto o grande volume de informa-
es necessrias. Assim, a programao linear uma ferramenta usada para en-
contrar a melhor alternativa que atenda os vrios objetivos da tomada de deciso
(PEKNY,1998). BISPO (1998) afirma que, quando o tomador de decises possui
-
14
informaes precisas e confiveis, melhor ser a identificao do problema e das
alternativas, favorecendo a escolha da melhor soluo. Deste modo, as empresas
podem fazer uso da programao linear para resolver seus problemas de otimiza-
o de recursos, seja com o objetivo de reduo de custos, otimizao de resul-
tados, ou qualquer outro processo de tomada de deciso gerencial. (KLANN, et
al., 2010)
A utilizao de planilhas eletrnicas, juntamente com o suplemento SOL-
VER do Microsoft Excel, uma ferramenta poderosa no apoio ao processo deci-
srio quando se trata de equacionamentos lineares. Como afirma ROCHA (2011),
planilhas eletrnicas so de uso comum e acessvel grande parte da populao
de um modo geral, em especfico o Excel, sendo assim, uma alternativa importan-
te para auxiliar a tomada de deciso.
OLISZESKI (2010) ressalta que os modelos propostos servem apenas
como auxlio no processo decisrio, no descartando a interpretao ou conheci-
mento tcito do empreendedor. Assim, frente aos resultados propostos pelo mo-
delo, os tomadores de decises devem ter a capacidade de compreender tais re-
sultados de modo a minimizar a incerteza das decises.
Embora seja uma ferramenta de auxlio, resultados convincentes foram
obtidos como no estudo de caso feito por VIEIRA (2011) que constatou, com o
uso do modelo da programao linear, um aumento em 6,21% no ganho do pro-
cesso comparado ao processo sem o uso do modelo proposto. FEY e SANTOS
(2000) concluem que o plano proposto ao seu estudo teve um incremento de
8,8% na renda lquida. JNIOR (2009) afirma um ganho na faixa de 4% a 8,5%
em seu sistema de produo. NETO e ZANELLA (2007) demostram um ganho no
faturamento de 6,31 %. Um aumento significativo no lucro foi alcanado por
BELLIS, PINHO e PAMPLONA (2004) de aproximadamente 26,4% e de 40,68%
por NETO, DEIMLING e TOSATI (2006). Para OLIVEIRA (2011) os resultados
mostram que a abordagem utilizada capaz de tratar com sucesso um problema
real. ROCHA (2011), no entanto, conclui que possvel utilizar planilhas eletrni-
cas com interface amigvel em problemas de pequeno porte. E segundo ALVES
(2007) o uso das planilhas contribui para a diminuio drstica do tempo de
tomada de deciso, alm de disponibilizar ao usurio a possibilidade de simular
diversos cenrios, tarefa impossvel de ser feita em tempo hbil de forma manual.
-
15
A motivao para este trabalho surgiu da simplicidade de programao,
da facilidade de acesso ao software por pequenas empresas, do menor grau de
complexidade dos processos envolvidos na pequena empresa e, tambm, dos
bons resultados obtidos com a programao linear em trabalhos anteriores. As-
sim, busca-se neste trabalho a criao de uma interface amigvel que atenda s
necessidades das pequenas empresas no que diz respeito ao apoio gerencial.
1.2. Objetivo Geral
Desenvolver uma Interface em VBA para o apoio ao processo de tomada
de deciso em sistemas de produo de pequenas empresas, utilizando planilhas
do Excel, juntamente com o suplemento Solver, e a programao linear, como
recurso de resoluo dos problemas de programao de produo.
1.3. Objetivos Especficos
Estudar as atividades de planejamento dos sistemas de produo mais
comumente encontrados;
Estabelecer o modelo matemtico que seja ajustvel aos interesses do to-
mador de deciso baseado em programao linear;
Elaborar uma arquitetura da funcionalidade das interfaces e as rotinas das
macros necessrias para se trabalhar com o Solver;
Criar uma interface intuitiva e amigvel utilizando o Microsoft Visual Ba-
sic;
Desenvolver macros para a operao automtica das planilhas;
Teste da interface em simulaes e problemas de lgica pouco detalhada;
Validao da modelagem e metodologia.
-
16
2.REVISO DA LITERATURA
2.1. Programao da Produo
FROSSARD (2009) afirma que uma administrao dos recursos dispon-
veis na empresa feita com eficincia, atravs do planejamento, controle e execu-
o das atividades relacionadas utilizao destes, um fator fundamental na
busca da otimizao dos resultados.
Assim, a programao da produo visa otimizar o uso de recursos para
satisfazer objetivos predefinidos, sujeito s restries do processo considerado
(GIROTTI; NISHIMURA; MESQUITA, 2011). A programao da produo usa-
da quando se procura encontrar as quantidades de cada tipo de produto que de-
vem ser fabricados em perodos sucessivos (COSTA, 2009).
Segundo JNIOR e SILVA (2005) o planejamento, ou programao, da
produo possui uma gama enorme de informaes essenciais para uma
execuo eficiente, que dificilmente pode ser sumarizada pela mente humana.
Para tanto, o planejamento da produo busca transformar informaes de
estoque, pedidos, equipamento e processos em ordem de fabricao (COSTA,
2009).
BRITO (2000) resume os objetivos da programao produo em:
Cumprimento dos prazos de entrega;
Controle de nvel de estoque em processo;
Reduo constante dos leads times de produo;
Controle das filas de espera nos estoques de produo;
Preveno dos gargalos de produo;
Minimizao do tempo ocioso dos recursos de produo.
Portanto a programao da produo uma funo que consiste em pla-
nejar as operaes que necessitam ser predeterminadas e executadas. Para
GITOTTI; NISHIMURA e MESQUITA (2011) tais atividades podem ser divididas
em: (i) Programao: consiste no sequenciamento e programao das operaes,
e a elaborao da carga dos centros de trabalho; (ii) Execuo: envolve a libera-
o das ordens, tambm chamada despacho, e (iii) Controle: inclui o apontamento
da produo e o controle de seu status.
-
17
Em especfico, os problemas de programao da produo tratam de si-
tuaes em que certo nmero de recursos, tais como homens, materiais e mqui-
nas, esto disponveis e podem ser combinados para produzir um ou mais produ-
tos.
A atividade de programao, segundo SEVERO (2007), uma das mais
complexas no gerenciamento da produo. Primeiramente, por lidar com diversos
tipos de recursos simultaneamente. As mquinas tero diferentes capacidades e
capacitao; o pessoal ter diferentes habilidades. Sendo assim, o nmero poss-
vel de programaes da produo aumenta medida que o nmero de atividades
e processos torna-se maior. Deste modo, a programao computacional fornece a
ajuda para a tomada de deciso nos problemas de programao industrial.
Ainda, SEVERO (2007) afirma que, nas ltimas dcadas, observou-se um
destacado desenvolvimento cientfico na rea de programao de produo para
processos em batelada. Isto se deve tendncia de construo de plantas flex-
veis e pequenas, para que possam atender s necessidades do mercado.
Devido grande variedade de produtos da indstria qumica para atender
s necessidades do mercado, POLON (2010) define que no fluxograma de um
sistema de produo em batelada no existe uma estrutura e receita fsica fixa no
tempo. E, ainda, afirma que a complexidade das atividades de programao de
produo em processos em batelada consequncia de um sistema com equi-
pamentos e armazenagens compartilhados, com necessidade de sincronizar a
produo de produtos no horrio especificado e por fim, a existncia de opes
diferentes de produo com custos diferentes.
SEVERO (2007) assegura que diversas reas na indstria qumica utili-
zam plantas que operam em batelada, como por exemplo, a indstria farmacuti-
ca, de alimentos e, em geral, o setor de qumica fina. SEVERO (2007) ainda colo-
ca que desta forma, torna-se importante implantao de sistemas de gesto de
produo e de tcnicas que visem produo otimizada dos diferentes produtos;
incluindo o uso de equipamentos, produtos e utilidades de forma eficiente. Portan-
to, as previses de produo em processos batelada geram um problema de pro-
gramao.
Em geral, a resoluo dos problemas envolvidos com a programao da
produo de vrios tipos de processo feita tornando tais problemas um caso de
-
18
programao linear como encontrados em pequenas empresas que possuem falta
de instrumentos para tratar tais problemas.
2.2. Sistemas de Produo
Seja a empresa de grande ou pequeno porte, de suma importncia res-
saltar a diferena entre suas fbricas e seus respectivos sistemas de programa-
o e controle de produo. Como afirma ROCHA (2011), Sistema de Produo
pode ser visto de diversas maneiras, o que lhe confere caractersticas especficas,
e resultam em arranjos particulares de programao de produo.
Existe uma grande dificuldade em encontrar uma soluo geral para a
programao de produo segundo ZACCARELLI (1982). Isso porque cada fbri-
ca tem suas particularidades. O autor salienta trs particularidades importantes
desta diferenciao:
O tipo de indstria;
O tamanho da empresa;
As diferenas entre estruturas administrativas.
Sendo assim, mesmo empresas semelhantes em produo possuem es-
truturas administrativas diferentes que geram sistemas de programao de produ-
o diferentes.
Assim, ZACCARELLI (1982) classifica e subdivide as industrias conforme
sua influencia nos processos administrativos conforme os Quadros 1 e 2:
-
19
Quadro 1 - Sumrio das Influncias nos aspectos administrativos (Fonte: ZACCARELLI (1982))
Tipo Contnuo Tipo Intermitente
Caracteristicas
Produz relativamente grande volume e pequena variedade de
produtos. Regimes de produo pouco
flexvel.
Produz grande variedade de produtos em pequenos volumes.
Regime de produo muito flexvel.
Exemplos Indstrias qumicas, usina de ao,
linhas de montagem. Mquinas pesadas, grandes
transmissores de rdio, navios
Previso de vendas Relativamente fcil para um perodo de um ano ou mais
Em geral, para poucos meses.
Projeto do produto
Estudado com grande detalhe antes de iniciar a produo.
Alteraes pouco frequentes no projeto do produto.
frequentemente alterado durante a produo.
O produto projetado de forma a poder ser executado com o
equipamento disponvel.
Equipamento
Especialmente projetado. Poucas ajustagens das mquinas. Necessita de grande manuteno
preventiva. A carga de trabalho das mquinas
uniforme.
Do tipo universal. Ajustagens muito frequntes.
Carga de trabalho das mquinas sujeita a variaes.
Movimentao dos materiais
Altamente mecanizado, distncias pequenas, equipamento com
propsito nico, material movido continuamente de uma operao
para outra.
Feito com equipamento flexvel, geralmente com pouca repetio;
necessita de corredores e passagens entre o quipamento. necessrio instruir sobre o que e
para onde mover.
Material
Consumo pouco varivel de material, mnimo de material em
processamento, sem bancos entre operaes.
Materiais de grande variedade se acumulam, geralmente, em cada operao; estoque relativamente
grande.
Pessoal
Operrios pouco especializados executam sempre a mesma operao; pessoal altamente
qualificado planeja o processo produtivo e estuda o produto.
Operrios especializados tem trabalho variado.
H necessidade de determinar a cada dia que trabalhos o pessoal
dever executar.
Operaes Frequentes as operaes
altamente repetitivas. Operaes muito variadas
requerem instrues frequentes.
-
20
Quadro 2 - Influencia do tipo de indstria sobre o planejamento e controle da produo (Fonte: ZACCARELLI (1982)).
Sistema de PCP para produo
Altamente Repetitiva Sistema de PCP para
produo por Encomenda
Complexidade Relativamente simples, mas
pequenas falhas tem grandes repercusses no lucro.
Relativamente complexo, as falhas tem pequena
repercursso no custo.
Planejamento do processo produtivo
(preparao de informaes tcnicas
para a execuo, programao e controle
das operaes)
Feito antes da venda do produto. Deve dispor de informaes precisas sobre os tempos de
processamento, velocidade de transporte, custo de operao,
caractersticas dos materiais etc.
Feito quase todo aps a venda do produto.
Como o produto varia muito, deve dispor de elementos para
calcular com rapidez os tempos de processamento, estimativa de custos e para determinar o melhor roteiro
para as operaes.
Programao (agenda de produo)
Feita, principalmente, com base na previso de vendas.
Programa o nvel geral de atividade.
Feita com base nos pedidos recebidos.
Programa cada operao.
Ordens de produo (documentos para instruir, autorizar e
controlar as operaes)
Poucas e simples. Pequeno nmero de impressos.
Para cada operao com respectivas requisies de
material e ferramentas, instrues para inspeo etc.
Estoques Planejados em funo da
programao.
Apenas parte dos materiais mantida em estoque, os
demais so adquiridos para atender aos pedidos
especficos.
Liberao da produo (distribuio das ordens
de produo) Muito simples.
Complexa e de grande importncia
Controle de custos Pouco trabalhoso. Muito trabalhoso.
Pela anlise dos quadros se nota a necessidade de programaes de
produo especficos para cada indstria evidenciando a necessidade de um bom
planejamento e controle da produo por parte do tomador de decises. Portanto,
a busca pelo melhor desempenho do sistema de produo, acarreta em um
processo de modelagem matemtica, como por exemplo a aplicao do mtodo
da Programao Linear (ROCHA, 2011).
2.3. Programao Linear
MIRANDA; MARTINS e FARIA (2007) relatam que a tcnica de progra-
mao linear foi consolidada por George Dantzig, em 1.947, quando desenvolvia
tcnicas de otimizao para problemas militares, e tambm do desenvolvimento
do mtodo simplex, capaz de resolver qualquer problema linear.
-
21
POLON (2010) expe que problemas de planejamento e programao da
produo so geralmente estudados como parte da Pesquisa Operacional, que,
segundo o autor, um ramo da engenharia relacionada aplicao de mtodos
cientficos para problemas de tomada de deciso que por fim se estabelece solu-
es timas.
BELLIS; PINHO e PAMPLONA (2004) explicam que a pesquisa
operacional trabalha da seguinte forma:
Formulao do problema: em que sero definidos os objetivos do estudo
e estabelecidas as restries do sistema em estudo;
Construo do modelo: nesta fase construdo um modelo matemtico
constitudo por equaes e inequaes, as quais formaram a funo obje-
tivo e as restries, sendo estas representadas por variveis de deciso e
variveis no controladas;
Soluo atravs do modelo: realizado atravs de tcnicas matemticas
especficas;
Teste do modelo e da soluo: pode ser realizado com dados histricos
do sistema. Na ausncia destes dados, o sistema deve operar sem mu-
danas e em seguida existe o confronto dos dados com o desempenho do
modelo. Nesta fase ser decidido se o modelo dever continuar em uso
ou ser reformulado;
Estabelecimento de controles da soluo: a partir do momento em que o
modelo aceito, seus parmetros devem ser continuamente controlados
para garantir a validade da soluo adotada;
Implementao e acompanhamento: a implantao deve ser acompa-
nhada de perto para se observar o comportamento do sistema e possveis
adequaes que se fizerem necessrias.
COSTA (2009) complementa afirmando que a Programao Linear uma
ferramenta da Pesquisa Operacional que usa um modelo matemtico composto
por funes necessariamente lineares para minimizar ou maximizar parmetros.
OLIVEIRA (2009) define a funo da programao linear como sendo uma
ferramenta aplicada a solues de problemas que objetivam a otimizao de um
-
22
sistema em estudo. Portanto a Programao Linear fornece uma ferramenta ao
processo de tomada de deciso visando alcanar os melhores resultados.
Na programao linear, o tratamento destes problemas feito a partir de
modelagens representadas por expresses lineares. Cabe ressaltar, que existe a
dificuldade em se modelar estudos reais, mas que tais tratamentos apresentam
confiabilidade satisfatria.
ALVES (2007) define que a programao linear tem como tarefa bsica a
maximizao ou minimizao de uma funo linear, definida como Funo Objeti-
vo, que respeita um sistema linear de igualdades ou desigualdades, as quais so
chamadas Restries do Modelo.
Para COSTA (2009), um modelo de programao linear constitudo por
uma equao, que descreve a funo objetivo com parmetros a serem maximi-
zados ou minimizados, e um conjunto de equaes ou inequaes que descre-
vem as restries do problema real.
MIRANDA; MARTINS e FARIA (2007) estabelecem premissas para a
criao de modelo matemtico. So elas:
1) Definir as variveis do problema;
2) Definir a funo-objetivo: expresso matemtica linear para a qual se
deseja otimizar por meio da melhor combinao das variveis bsicas
(maximizao ou minimizao);
3) Definir o conjunto de restries: uma inequao ou igualdade que de-
ve ser satisfeita pelas variveis de um modelo matemtico.
Para PAULO, et al., (2003) a modelagem da Programao Linear uma
programao matemtica em que a funo-objetivo e as restries assumem ca-
ractersticas lineares observando-se limitaes impostas pelo processo produtivo
ou pelo mercado.
-
23
De modo geral, segundo PAULO, et al., (2003), a Programao Linear
pode ser descrita conforme ilustra a Figura 1:
Figura 1 Definio da Programao Linear (Imagem adaptada de Paulo, et al., 2003)
ROCHA (2011) afirma que a programao linear uma tcnica de resolu-
o de equaes lineares, considerada como uma tcnica de otimizao para re-
solver problemas de maximizao ou minimizao de um determinado objetivo.
OLIVEIRA (2009) estabelece que a otimizao se refere: (i) a maximizao de
parmetros tais como: lucro, vendas, uso efetivo de uma rea, nvel de produo
e uso de um determinado recurso; ou (ii) a minimizao de parmetros tais como:
custo de produo, uso de um determinado recurso de alto valor monetrio e em-
prego de mo de obra.
ALVES (2007) denota que para a resoluo de problemas de programa-
o linear, so necessrios dois passos fundamentais: primeiramente deve-se
fazer a modelagem do problema, e posteriormente aplicar uma tcnica para resol-
v-lo.
Para este trabalho, o mtodo de resoluo proposto a aplicao do su-
plemento SOLVER do Microsoft Excel.
-
24
2.4. Planilhas Eletrnicas e o suplemento SOLVER
JUNIOR e SILVA (2005) ressaltam a importncia de se ter o conhecimen-
to apurado dos custos de produo e margens de lucros dos produtos, pois estes
so fatores de importncia na tomada de deciso de se produzir maiores ou me-
nores quantidades de um determinado produto. Assim, um modelo matemtico
para um sistema de produo pode ser trabalhado em planilhas eletrnicas com
facilidade.
Planilhas eletrnicas so ferramentas comumente usadas para analisar
dados e modelar problemas quantitativos gerenciais, como sustentam LEON;
PRZASNYSKI e SEAL (1996). Os autores, ainda, afirmam que razovel assumir
que a maior parte da modelagem feita no mundo dos negcios, em que se tem
aspecto temporal, realizada utilizando planilhas eletrnicas. Isto se d, princi-
palmente, devido ao custo acessvel do software e tambm por serem ferramen-
tas de fcil uso. Para CEZARINO; FILHO e RATTO (2009), o grande atrativo des-
tas planilhas a facilidade de criar interfaces flexveis para o usurio com um cus-
to baixo, e assim, permitir que ele possa tomar decises dentro de um ambiente
customizado.
NETO e ZANELLA (2007) sustentam que o Excel uma poderosa ferra-
menta capaz de realizar clculos e sistematizar dados, e vai alm de construir
planilhas de controle de despesas domsticas ou relatrios sobre um projeto, e de
possibilitar a integrao e automatizao de sistemas inteiros de gerenciamento
de empresas e indstrias. Os autores ainda ressaltam: Muitas das maiores em-
presas do mundo usam o Excel para criar aplicaes personalizadas..
CEZARINO, FILHO e RATTO (2009) discorrem que, devido ao alto custo
de software de sistemas de gerenciamento e sua ausncia em pequenas empre-
sas, abre-se uma oportunidade para o desenvolvimento de ambientes de apoio
deciso de baixo custo e que, ambientes computacionais baseados em planilhas
eletrnicas, juntamente com suplementos adicionais de modelagem e soluo de
problemas, so uma tima alternativa. Os autores ainda acrescentam que o uso
da planilha eletrnica mais simples que tais softwares e permite gravao de
modelos sem necessidade das montagens das planilhas pelo usurio, possibili-
tando que tcnicos, sem conhecimento aprofundado em informtica, possam se
beneficiar desta ferramenta.
-
25
Dentre as varias ferramentas disponveis no mercado, ROCHA (2011) diz
que, para auxiliar os gestores na tomada de deciso, pode-se utilizar o Solver pa-
ra resoluo de problemas de produo. O Solver uma ferramenta disponvel no
Excel que visa a encontrar uma soluo tima para os problemas de programao
linear. Para NETO e ZANELLA (2007) o Solver possibilita a realizao de
simulaes em um modelo criado, para, depois de testado e aprovado, ser
usado no ambiente real, ou seja, a empresa tem a possibilidade de simular
diferentes cenrios e optar por aquele que apresentar maior lucro financeiro.
E, ainda, ROCHA (2011) ressalta que as planilhas eletrnicas do Excel
vm conquistando um timo espao no mercado, principalmente, em grandes in-
dstrias, pois o Excel permite o desenvolvimento de aplicaes personalizadas,
alm de possibilitar a automatizao de sistemas de gerenciamento.
JNIOR e SOUZA (2004) explicam que o Solver faz parte de um conjunto
de programas algumas vezes chamado de ferramentas de anlise hipottica. Os
autores ainda explicam que o Solver trabalha com um grupo de clulas relaciona-
das direta ou indiretamente com a frmula na clula de destino. Assim, o Solver
ajusta os valores nestas clulas variveis especificadas, chamadas de clulas
ajustveis, para produzir o resultado especificado na frmula da clula de destino.
ROCHA (2011) completa afirmando que possvel aplicar restries a c-
lulas ajustveis, clulas de destino ou a outras clulas direta ou indiretamente re-
lacionadas clula de destino para restringir os valores que o Solver poder usar.
NETO e ZANELLA (2007) explicam que esta ferramenta pode ser utiliza-
da para determinar solues de problemas envolvendo mltiplas variveis e res-
tries determinando a melhor soluo e pode representar economia de capital e
recursos ao determinar as melhores e mais eficientes maneiras de aloc-los. E
completam afirmando que se pode economizar o tempo que se levaria buscando
solues por tentativas e erro.
Ainda, ROCHA (2011) destaca que a linguagem Visual Basic for Applica-
tions (VBA) uma importante alternativa para automatizao do uso da planilha
do Excel. O autor ainda ressalta que a linguagem permite a criao de macros
para a realizao de tarefas repetidas e ainda permite integrao com os produtos
da Microsoft Office, tais como: Word, Excel, Access, Outlook, PowerPoint,
FrontPage e tambm em produtos como o AutoCAD.
-
26
CEZARINO, FILHO e RATTO (2009) lembra que a ferramenta Solver,
presente na verso padro comercial do Excel, resolve apenas problemas de pe-
quena dimenso (i.e. at duzentas variveis), porm possvel, com um pequeno
investimento, obter uma licena para uso desta mesma ferramenta para proble-
mas com mais de 8000 variveis. Em todo caso, para a proposta deste trabalho a
verso padro atende ao esperado.
2.5. A Pequena Empresa e o Processo Decisrio
O planejamento da produo fundamental para a otimizao da produ-
o e, consequentemente, para a maximizao dos resultados financeiros das
empresas. No entanto, apesar dos avanos nas tecnologias de informao,
MIGLIOLI; OSTANEL e TACHIBANA (2004) observam que existe nas pequenas
empresas uma grande dificuldade com relao gerao de conhecimento e
crescimento, o que leva concluso que muitas das pequenas empresas brasilei-
ras perdem espaos e oportunidades de mercado devido ao improviso na tomada
de decises e na formulao de estratgias.
Assim, necessrio que pequenas empresas desenvolvam planos de
produo que permitam melhorar suas aes. Para isso a programao linear e o
solver so ferramentas de grande potencial para diminuir a incerteza e o improvi-
so nas tomadas de decises.
De fato, como afirmam CEZARINO; FILHO e RATTO (2009), empresas
menores convivem com problemas de menor escala e, ferramentas sofisticadas,
por certo, no seriam de grande valia. Neste caso, ento, o uso de planilhas ele-
trnicas, associado ao solver, apresenta-se como alternativa de baixo custo e bai-
xa complexidade para soluo de problemas gerenciais em pequenas empresas.
MIGLIOLI, OSTANEL e TACHIBANA (2004) enfatizam que deve-se criar
ambientes de aprendizagem, atravs de cursos e treinamentos internos, dirigidos
sua realidade, em que o gestor da pequena empresa possa adquirir
conhecimentos necessrios para manipular as planilhas eletrnicas como
ferramenta de apoio deciso.
A ideia deste trabalho que a construo de uma interface que utiliza
recursos de planilha Excel e o suplemento Solver que permita aos tomadores de
-
27
deciso, pouco familiarizados com modelos matemticos e ferramentas computa-
cionais, tomar decises gerenciais dirias.
-
28
3.DESENVOLVIMENTO
3.1. Estudo das aplicaes de Programao Linear
Inicialmente, fez-se um estudo na literatura buscando as aplicaes da
programao linear. Nesta pesquisa, focou-se nas aplicaes em processos pro-
dutivos industriais para constatar em quais, os problemas de programao foram
representados em modelos lineares, alm de suas restries para a otimizao.
Na explorao de problemas de produo, variadas aplicaes foram en-
contradas tais como as listadas abaixo:
Maximizao de lucros;
Minimizao de custos de produo;
Minimizao de tempo em estoques;
Melhor rota de transporte;
Melhor nmero de frotas;
Melhor rota de processamento a custo mnimo;
Minimizao de produo em excesso;
Reduo no nmero de lotes;
Determinao do melhor mix de produo;
Determinao de misturas ideais de matrias-primas;
Minimizao de alocao de mquinas;
Minimizao do desperdcio de matria-prima;
Melhor uso das linhas de produo;
Melhor rotao de culturas;
Notou-se a abrangncia de reas nas quais a programao linear pode
ser aplicada para a sua otimizao, podendo ser aplicada em Processos de Pro-
duo, Investimento em aes, Finanas Corporativas, Distribuio, Aquisitivos e
Recursos Humanos.
Embora a rea de aplicao seja grande, verificou-se, tambm, uma a
grande aplicao de modelos lineares em Indstrias de Processos, ou seja, aque-
-
29
las que agregam valor a materiais por meio de processos de mistura, separao,
conformao ou reaes qumicas visando validar a proposta do trabalho.
Tambm, buscou-se nos estudos da literatura as restries aplicadas nas
otimizaes. A partir das restries observadas, listou-se (QUADRO 3) alguma
das restries mais comumente encontradas:
Quadro 3 - Restries comuns em sistemas de produo
Restries
Sistemas de produo
Capacidade produtiva
Volume de processadores
Nmero de processadores disponveis
Tempo de processamento
Tempo de folga de equipamentos
Tempo de trabalho de equipamentos
Limite de estocagem
Manuteno de estoque
Meios de transportes disponveis
Tempo de transporte
Tempo para entrega
Quantidades de cada componente
Matria-Prima disponvel
Gerao de subprodutos
Consumo de subprodutos
Mo de obra disponvel (tempo)
Subcontrataes
Demanda mxima ou mnima de vendas
Recursos financeiros
Pela anlise do Quadro 3, notou-se que as restries podem ser classifi-
cadas e resumidas da seguinte forma:
Produtivas - Quantidades de produtos a serem feitos;
Operacionais Equipamentos e mo de obras disponveis;
Mercadolgicas - Limites de vendas (mxima ou mnima).
O Quadro 3 pode ser usado para o auxlio ao usurio a estabelecer as
restries de seu modelo. Lembrando que estas so algumas das restries pos-
sveis de serem encontradas e, cabe ao usurio analisar seu sistema produtivo e
determinar quais restries so aplicveis.
-
30
3.2. Desenvolvimento de modelos matemticos
Aps os estudos feitos no levantamento de aplicaes de programao li-
near, foi observado que existe um padro ao se construir os modelos e as suas
restries. Por se tratar de equacionamento linear as variaes de um modelo
para outro ocorrem somente nos nmeros de variveis trabalhadas.
A maior complexidade ocorre na elaborao das restries, pois estas li-
mitaes so impostas pelo processo produtivo ou pelo mercado, ou ainda, traba-
lham com muitas restries, que so combinaes de etapas de processo sendo
necessria uma anlise combinatria.
Para este trabalho, foi estabelecida a funo objetivo como sendo a defi-
nio da programao linear que descrita da seguinte forma:
( )
Sujeito a
{ }
( )
...
( )
Condio de No-Negatividade
Em que:
( ) Funo objetivo
xi varivel de deciso
ci coeficiente da funo objetivo
aii coeficiente da restrio
n nmero de variveis
m nmero de restries
Para a determinao do modelo geral pelo usurio, foi elaborada a se-
guinte estrutura lgica (FIGURA 2): (i) primeiramente definir as variveis que pre-
tende controlar no problema e represent-la de modo algbrico, (ii) criar uma fun-
Restries
-
31
o linear em termos das variveis de deciso, (iii) definir o objetivo central do
problema: maximizar ou minimizar a funo objetivo, (iv) e, por ltimo, identificar
as limitaes impostas pelo problema e express-las como equaes ou inequa-
es lineares em funo das variveis de deciso. Portanto, a definio do pro-
cesso que se vai modelar determinado pela gerncia e deve ser focado em uma
rea ou um processo chave em especfico.
Figura 2- Esquema lgico para a elaborao do modelo geral
Para um melhor entendimento da construo do modelo e sua utilizao,
por parte da pequena empresa, foi tambm elaborado um manual de utilizao da
interface, o qual se encontra disponvel no APNDICE A.
3.3. Preparao das interfaces VBA
Para criao da interface levou-se em considerao a estrutura lgica pa-
ra a construo do modelo geral apresentado na seo 3.2. Assim, elaborou-se a
arquitetura da funcionalidade das interfaces e as rotinas das macros necessrias
para se trabalha com o Solver. A Figura 3 mostra o esquema elaborado.
Para a criao das interfaces e para controle e personalizao do ambien-
te proposto foi utilizado o Visual Basic for Applications (VBA).
A interface inicial (Figura 4) foi criada para que o usurio fornea o nme-
ro de variveis a serem analisadas e, ao avanar, toda a estrutura das planilhas
criada.
-
32
A interface seguinte (Figura 5) trata da funo objetivo em que o usurio
dever escolher a opo de maximizar ou minimizar sua funo objetivo, bem
como fornecer os coeficientes da funo objetivo. Para tanto, foi criada a interface
com uma caixa de texto na qual o usurio fornece o valor do coeficiente e clica
em um boto de comando que insere o valor do coeficiente. Uma lista de visuali-
zao foi adicionada para o usurio acompanhar os dados j inseridos.
A interface seguinte mostra as restries inseridas (Figura 6). Para a in-
sero das restries foi construda outra interface que chamada por um boto
de comando. Essa interface (Figura 7) de insero de restrio foi construda de
modo semelhante interface da funo objetivo. Nela o usurio pode inserir v-
rias restries seguidas, clicando no boto de comando Nova Restrio, sem a
necessidade de sair da interface de insero de restries.
Por fim, a macro de execuo do Solver chamada e uma ltima interfa-
ce apresentada com os valores da otimizao (Figura 8).
Figura 3 - Arquitetura da funcionalidade das interfaces e macros adotadas.
-
33
Figura 4 - Interface inicial construda no Visual Basic for Applications
Figura 5 - Interface para a insero dos parmetros necessrios para a Funo Objetivo
-
34
Figura 6 - Interface das Restries do problema
Figura 7 - Interface na qual o usurio insere uma restrio por vez
-
35
3.4. Preparao das macros e planilhas eletrnicas
A programao das rotinas das macros foi estruturada para que, a cada
avano nas interfaces, a planilha fosse construda e organizada em um modelo
padro. Este modelo padro significa colocar cada valor e equaes em arranjos
organizados de linhas e colunas para que fiquem disponveis para realizar a gene-
ralizao do modelo.
A Figura 9 mostra como foi organizada e construda a planilha para exe-
cuo do Solver.
Figura 8 - Interface dos resultados da otimizao com os valores das variveis e o total da otimizao
-
36
Figura 9 - Planilha padro com os arranjos de linhas e colunas para a generalizao do mo-delo
O primeiro procedimento para a preparao das planilhas foi determinar
um espao para o intervalo das constantes da funo objetivo, denominas por Ci,
e seus respectivos valores. Da mesma maneira, foi determinado um espao para
as variveis de deciso, denominadas Xi, sem valores, pois o Solver ir determi-
nar valores timos para elas. A planilha tambm inclui uma tabela com os valores
das restries do sistema trabalhado.
A partir da planilha organizada, foi implementado o cdigo VBA para pos-
sibilitar a criao automtica da planilha e interligao das macros, planilhas e
interface para a utilizao generalizada do suplemento Solver. O cdigo VBA en-
contra-se disponvel no APNDICE B.
-
37
3.5. Teste de desempenho da interface
O teste de desempenho da interface foi feito por meio da aplicao de ca-
sos de programao linear encontrados na literatura. Com a proposta de se traba-
lhar com casos rotineiros e de baixo grau de complexidade.
3.5.1. Anlise de desempenho 1 (JNIOR; SOUZA, 2004)
1.2.3 Problema da Fbrica de Motores
A LCL Motores Ltda., uma fbrica de motores especiais, recebeu recen-
temente R$90.000,00 em pedidos de seus trs tipos de motores. Cada motor ne-
cessita de um determinado nmero de horas de trabalho no setor de montagem e
de acabamento.
A LCL pode terceirizar parte da sua produo. A tabela a seguir resume
estes dados.
Modelo 1 2 3 Total
Demanda 3000 un. 2500 un. 500 un. 6000 un.
Montagem 1 h/un. 2 h/un. 0,5 h/un. 6000 h
Acabamento 2,5 h/un. 1 h/un. 4 h/un. 10000 h
Custo Produo R$ 50 R$ 90 R$ 120
Terceirizado R$ 65 R$ 92 R$ 140
A LCL Motores deseja determinar quantos motores devem ser produzidos
em sua fbrica e quantos devem ser produzidos de forma terceirizada para aten-
der demanda de pedidos.
3.5.1.1. Soluo esperada por programao linear.
Sendo Fi o nmero de motores dos modelos i (i = 1, 2, 3). E T i o nmero
de motores terceirizados dos modelos i (i = 1, 2, 3).
A funo-objetivo em funo dos custos de cada motor, ento se escre-
ve como funo objetivo o custo total:
Sujeito a;
(Tempo de Montagem)
(Tempo do Acabamento)
(Demanda modelo 1)
-
38
(Demanda modelo 2)
(Demanda modelo 3)
3.5.1.2. Utilizao da Interface
Neste caso tem-se uma fbrica que produz trs modelos de motores e tambm
terceiriza a fabricao dos mesmos modelos de motores. O que se deseja mi-
nimizao do custo total. Ento a funo-objetivo, em funo dos custos individu-
ais :
Sujeito a;
(Tempo de Montagem)
(Tempo do Acabamento)
Assim, os parmetros para o Solver so:
Coeficientes da funo objetivo = 50; 90; 120; 65; 92 e140
Coeficientes das restries
Restrio 1 1; 2; 0,5; 0; 0 e 0 | menor igual | 6000
Restrio 2 2,5; 1; 4; 0; 0 e 0 | menor igual | 10000
Restrio 3 1; 0; 0; 1; 0 e 0 | igual | 3000
Restrio 4 0; 1; 0; 0; 1 e 0 | igual | 2500
Restrio 5 0; 0; 1; 0; 0 e 1 | igual | 500
O resultado da otimizao pela interface mostrada na Figura 10. Pela
otimizao recomendvel a terceirizao de 2000 motores do modelo 2. A fabri-
ca dever fazer 3000, 500 e 500 dos modelos 1, 2 e 3, respectivamente.
-
39
3.5.2. Anlise de desempenho 2 Notaes da Disciplina Mtodos de
Apoio a Deciso, Grupo de Controle e Gesto.
Uma empresa propriedade de dois scios. A empresa em questo pro-
duz bicicletas de dois modelos, uma mais sofisticada para todo-o-terreno (modelo
TT) e outra mais simples para passeio (modelo PP). Dada a qualidade dos seus
produtos e com a primavera a chegar, os dois scios sabem que iro vender to-
das as bicicletas que conseguirem, estando apenas limitado pelo processo produ-
tivo.
Para definir o melhor plano de produo para o prximo ms fizeram uma
anlise ao seu sistema produtivo, tendo chegado s seguintes concluses:
- Cada bicicleta TT requer 3 horas de soldagem e cada PP requer 3 de
soldagem
- As bicicletas TT necessitam de 6 horas de maquinao e as PP ape-
nas 4 horas
- As bicicletas TT consomem 9 horas de trabalho no departamento de
montagem e as PP apenas 4
Figura 10 Interface de resultados da anlise de desempenho 1
-
40
O nmero de horas de trabalho disponveis no prximo ms nos depar-
tamentos de maquinagem, soldagem e montagem so respectivamente
2400, 1500 e 2700
Sabendo que as bicicletas PP originam um lucro de R$40 e as TT R$80,
ajude os dois scios a encontrarem o melhor plano de produo para o prximo
ms.
3.5.2.1. Soluo esperada por programao linear.
Sendo x1 a quantidade de bicicletas PP e x2 a quantidade de bicicletas
TT, se tem como funo objetivo o lucro total:
Sujeito a;
(Maquinagem)
(Soldagem)
(Montagem)
3.5.2.2. Utilizao da Interface
A elaborao do modelo seguiu a expectativa de maximizar o lucro, tendo
como funo objetivo o lucro total descrito por:
E sujeito a;
(Maquinagem)
(Soldagem)
(Montagem)
Assim, os parmetros para o Solver so:
Coeficientes da funo objetivo = 80 e 40
Coeficientes das restries
Restrio 1 6 e 4 | menor igual | 2400
Restrio 2 3 e 3 | menor igual | 1500
Restrio 3 9 e 4 | menor igual | 2700
Aps a insero dos dados na interface trabalhada obteve-se como resul-
tado de maximizao de lucros, uma produo de 140 bicicletas do modelo TT e
360 bicicletas do modelo PP com lucro total de R$25600,00. Os resultados da
interface so mostrados na Figura 11.
-
41
3.5.3. Anlise de desempenho 3 (ECKER; KUPFERSCHMID, 1988)
Exercise 2.14
The Wood Products Company uses three machines to produce two prod-
ucts. The following technology table gives the hours on each machine required to
produce one unit of each product, and the total time available on each machine
during the production period.
Machine Time Used in Making Total Machine Time
Availible in Produc-tion Period Product 1 Product 2
Lathe 1,1 2 1000
Sander 3 4,5 2000
Polisher 2,5 1,3 1500
The problem faced by the company is that it wants to maximize the total
number of products made, but it wants to be sure that the amount of product 1 is
at least one third the total number produced.
(a) Formulate a linear programming model for this problem.
(b) Suppose that instead of 3 machines and 2 products, 300 machines are
used to produce 200 products. Let
Figura 11 - Interface de resultados da anlise de desempenho 2
-
42
rij = number of hours on machine j required to produce one unit of product i
cj = available machine time on machine j
Formulate a linear programming model for this enlarged version of the prob-
lem.
3.5.3.1. Soluo esperada por programao linear.
Sendo x1 e x2 a quantidade de produtos 1 e 2, respectivamente temos
que:
Sujeito a;
(lathe)
(sander)
(polisher)
( ) (proporcionalidade)
Para nosso caso somente a questo (a) nos interessa.
3.5.3.2. Utilizao da Interface
Pela utilizao da lgica para construo do modelo teve-se as seguintes
condies:
Sujeito a;
(lathe)
(sander)
(polisher)
( ) (proporcionalidade)
Para este caso tem-se:
Coeficientes da funo objetivo = 1 e 1
Coeficientes das restries
Restrio 1 1,1 e 2 | menor igual | 1000
Restrio 2 3 e 4,5 | menor igual | 2000
Restrio 3 2,5 e 1,3 | menor igual | 1500
Restrio 4 0,67 e - 0,33 | menor igual | 0
-
43
A Figura 12 mostra a interface de resultados com os valores otimizados.
Para este caso os valores timos seriam produzir 165 unidades do produ-
to 1 e 335 unidades do produto 2.
3.5.4. Anlise de desempenho 4 Problema 1.2.5. (JNIOR; SOUZA,
2004)
Uma refinaria processa vrios tipos de petrleo. Cada tipo de petrleo
possui uma planilha de custos diferente, expressando, condies de transporte e
preos na origem. Por outro lado, cada tipo de petrleo representa uma configu-
rao diferente de subprodutos para a gasolina. Na medida em que certo tipo de
petrleo utilizado na produo da gasolina, possvel a programao das con-
dies de octanagem e outros requisitos. Esses requisitos implicam na classifica-
o do tipo de gasolina obtida.
Supondo que a refinaria trabalhe com uma linha de quatro tipos diferentes
de petrleo e deseje produzir as gasolinas amarela, azul e superazul, programar a
mistura dos tipos de petrleo atendendo s condies que se seguem nas tabelas
a seguir:
Figura 12 - Interface de resultados da anlise de desempenho 3
-
44
Tabela 1 - Quantidade disponvel do Petrleo
Tipo de Petrleo Quantidade Mxima Dis-
ponvel (barril/dia) Custos por Bar-
ril/dia (R$)
1 3500 19
2 2200 24
3 4200 20
4 1800 17
Tabela 2 - Percentuais para Limites de Qualidade das Gasolinas
Tipo de Gasolina Especificao Preo de Venda
(R$/Barril)
Superazul No mais que 30% de 1 No mais que 40% de 2 No mais que 50% de 3
35
Azul No mais que 30% de 1 No mais que 10% de 2
28
Amarela No mais que 70% de 1 22
3.5.4.1. Soluo esperada por programao linear.
Sendo xij = nmero de barris de petrleo de tipo j (j = 1, 2, 3, 4) que sero
destinados produo da gasolina i (i = A-gasolina amarela, Z-gasolina azul e S-
gasolina superazul).
O modelo para a funo-objetivo de maximizao de vendas fica:
Sujeito a;
(Quantidade disponvel do petrleo tipo 1)
(Quantidade disponvel do petrleo tipo 2)
(Quantidade disponvel do petrleo tipo 3)
(Quantidade disponvel do petrleo tipo 4)
(Especificaes para gasolina do tipo S)
(...)
(...)
(Especificaes para gasolina do tipo Z)
(...)
(Especificaes para gasolina do tipo A)
-
45
3.5.4.2. Utilizao da Interface
O sistema de produo em questo deseja otimizar a mistura de petrleo
4 tipos de petrleo para a fabricao de trs tipos de gasolina relacionando seus
preos. O modelo proposto de 12 variveis :
Sujeito a;
(Quantidade disponvel do petrleo tipo 1)
(Quantidade disponvel do petrleo tipo 2)
(Quantidade disponvel do petrleo tipo 3)
(Quantidade disponvel do petrleo tipo 4)
Especificaes da mistura de petrleo:
(gasolina do tipo S)
(...)
(...)
(gasolina do tipo Z)
(...)
(gasolina do tipo A)
Para este caso temos:
Coeficientes da funo objetivo = 3; -2; 2; -5; 9; 5; 8; 1; 16; 11; 15 e 8
Coeficientes das restries
Restrio 1 1; 0; 0; 0; 1; 0; 0; 0; 1; 0; 0 e 0 | menor igual | 3500
Restrio 2 0; 1; 0; 0; 0; 1; 0; 0; 0; 1; 0 e 0 | menor igual | 2200
Restrio 3 0; 0; 1; 0; 0; 0; 1; 0; 0; 0; 1 e 0 | menor igual | 4200
Restrio 4 0; 0; 0; 1; 0; 0; 0; 1; 0; 0; 0 e 1 | menor igual | 1800
Restrio 5 0; 0; 0; 0; 0; 0; 0; 0; 0,7; -0,3; -0,3; -0,3 | menor igual | 0
Restrio 6 0; 0; 0; 0; 0; 0; 0; 0; -0,4; 0,6; -0,4; -0,4 | maior igual | 0
Restrio 7 0; 0; 0; 0; 0; 0; 0; 0; -0,5; -0,5 0,5; -0,5 | menor igual | 0
Restrio 8 0; 0; 0; 0; 0,7; -0,3; -0,3; -0,3, 0; 0; 0; 0 |menor igual | 0
Restrio 9 0; 0; 0; 0; 0,9; -0,1; -0,1; -0,1, 0; 0; 0; 0 |maior igual | 0
Restrio 10 0,3; -0,7; -0,7; -0,7; 0; 0; 0; 0; 0; 0; 0; 0; | menor igual | 0
-
46
A janela de resultados deste problema mostrada na Figura 13. Portanto
tm-se os barris destinados a apenas algumas gasolinas: Z1, Z3, Z4,S1, S2 e S3.
Figura 13 - Interface de resultados da anlise de desempenho 4
-
47
3.5.5. Anlise de desempenho 5
Este teste foi realizado a partir da modelagem feita por MARETH, et al.,
(2012) para a gesto de produo de uma indstria de usinagem. O modelo foi
construdo a partir do clculo da margem de contribuio e lucro lquido utilizando
como ferramenta de resoluo de programao linear o software pago LINDO .
O artigo apresentou dois modelos a partir da gesto de custos da empre-
sa. Um modelo para a Margem de Contribuio e outro modelo para o Lucro L-
quido.
Modelo para Margem de Contribuio:
Modelo para Lucro Lquido:
Sujeito as seguintes restries:
(Tempo
de mquina);
(Custo
de Mo de Obra);
(Custo de
Matria Prima);
(Demanda Mnima produto 1);
(Demanda Mnima produto 2);
(Demanda Mnima produto 3);
(Demanda Mnima produto 4);
(Demanda Mnima produto 5);
(Demanda produto 6);
(Demanda Mxima produto 1);
(Demanda Mxima produto 2);
(Demanda Mxima produto 3);
(Demanda Mxima produto 4);
(Demanda Mxima produto 5);
(Custos e Despesas Fixas).
-
48
Para este caso, construiu-se a Tabela 1 com os coeficientes das funes
do processo.
Tabela 3 - Coeficientes das funes para os parmetros utilizados no Solver
Maximizar Z1 3,21 6,17 15,33 5,36 13,05 419,32
Maximizar Z2 0,96 2,08 0,91 0,15 7,24 267,35
Restrio 1 4,89 2 1,5 2,5 3,75 35,73
= 50
Restrio 5 0 1 0 0 0 0
>= 50
Restrio 6 0 0 1 0 0 0
>= 50
Restrio 7 0 0 0 1 0 0
>= 50
Restrio 8 0 0 0 0 1 0
>= 50
Restrio 9 0 0 0 0 0 1
= 25
Restrio 10 1 0 0 0 0 0
-
49
Os resultados da interface so apresentados conforme a Tabela 2:
Tabela 4 - Resultados da simulao na Interface proposta utilizando-se o solver como fer-ramenta de resoluo.
Margem de Contribuio
Lucro Lquido
Z maximizado = 43690,84
Z maximizado = 18953,09
Varivel Valor
Varivel Valor
c1 2774,00
c1 2774,00
c2 1050,00
c2 1050,00
c3 302,00
c3 302,00
c4 68,48
c4 50,00
c5 983,00
c5 986,19
c6 25,00 c6 25,00
De modo comparativo, os resultados obtidos por MARETH, et al. (2012)
so apresentados na Tabela 3:
Figura 15 - Interface de resultados da segunda maximizao da anlise 5
-
50
Tabela 5 - Resultados obtidos por MARETH (2012) utilizando o software pago LINDO
Margem de Contribuio Lucro Lquido
Total funo obj. (Z maximizado) =
46042,93
Total funo obj. (Z maximizado) =
18050,33
Varivel Valor
Varivel Valor
x1 2774,00
x1 2774,00
x2 1050,00
x2 1050,00
x3 302,00
x3 199,83
x4 1084,00
x4 50,00
x5 746,13
x5 925,60
x6 25,00 x6 25,00
Nota-se que nas duas otimizaes, tanto pelo Solver quanto pelo LINDO,
tem-se um valor prximo de maximizao, apresentando um desvio na diferena
de valores de 5,1 % para a Margem de Contribuio e de 5% para o Lucro Lqui-
do. No entanto, visvel que na Maximizao 1 os produtos 4 e 5 possuem valo-
res significativamente diferentes. O mesmo acontece na Maximizao 2 em que
os produtos 3 e 5 tambm apresentam uma diferena significante. Acredita-se
que a fonte desta variao seja o mtodo de resoluo utilizado pelo SOLVER e
do LINDO.
-
51
4. CONCLUSES
No estudo de busca por aplicaes da programao linear pde-se con-
cluir que, notavelmente, o uso de ferramentas computacionais para planejamento
cresceu muito nos ltimos anos. E tambm, devido facilidade e preo acessvel,
o Excel vem despontando entre os softwares de otimizao para o uso da pro-
gramao linear. Isso se deve, em grande parte, ao fato dele possuir um ambiente
customizado e, muitas vezes, sem custo de implantao.
Ainda, pde-se confirmar a larga aplicao da Programao Linear em di-
versas reas, desde Recursos Humanos at Sistemas de Produo.
plausvel afirmar que se deve estimular a utilizao destes ambientes,
devido aos timos resultados de trabalhos envolvendo esses aplicativos.
Todos os trabalhos encontrados mostram que os modelos aplicados em
programao linear so eficazes ao produzir solues otimizadas e muitos deles
com um ganho significativo.
Com a utilizao do Visual Basic for Applications pde-se desenvolver
uma interface amigvel para a fcil utilizao do suplemento Solver , restando ao
usurio somente a insero das constantes sem se preocupar com a organizao
e layout das tabelas. Nas anlises de desempenho as interfaces agiram como
esperado, fornecendo e integrando a planilha interface. O resultados obtidos
nas otimizaes comparvel aos da literatura evidenciando a correta programa-
o das rotinas e interao com o recurso Solver. Ainda, o Solver mostra-se uma
poderosa ferramenta comparvel a softwares pagos como o LINDO.
Assim pode-se afirmar que o aplicativo desenvolvido neste trabalho aten-
de s expectativas das pequenas empresas, por ser um aplicativo auxiliar na to-
mada de deciso sem custos de aquisio e implantao.
-
52
REFERNCIAS BIBLIOGRFICAS
ABREU, J. D. O estudo da pesquisa operacional no campo da programao
de produo em sistemas agroindustriais. Disponvel em:
.
ALVES, J. M. C. B. Um sistema para o planejamento de produo e vendas
de uma empresa mineradora. Dissertao de Mestrado em Engenharia Mineral,
Universidade Federal de Ouro Preto, Ouro Preto, 2007.
BELLIS, P. M. D.; PINHO, A. F.; PAMPLONA, E. D. O. Definio de mix de
produo com uso de programao linear e custos empresariais. p. 14 XI
Congresso Brasileiro de Custos, Porto Seguro , 2004.
BISPO, C. A. F. Uma anlise da nova gerao de sistemas de apoio
deciso. Dissertao de Mestrado, Escola de Engenharia de So Carlos,
Universidade de So Paulo, So Carlos, 1998.
BRITO, R. G. F. A. Planejamento Programao e Controle da Produo. 2
Ediao. So Paulo: Editora Imam, 2000. 108 p. p.
CEZARINO, W.; FILHO, O. S. S.; RATTO, J. R. Planejamento agregado da
produo: Modelagem e soluo via planilha Excel & Solver. Revista
Produo. ABEPRO, v. IX, n. N III, p. 28, 2009.
COSTA, A. R. N. Programao da produo otimizada em indstrias de
panificao. 2009. 119f. Dissertao (Mestrado em Mtodos Numricos em
Engenharia), Universidade Federal do Paran, Curitiba, 2009.
ECKER, J. G.; KUPFERSCHMID, M. Introdution to operations research. New
York: John Wiley & Sons, v. Vol. 1, 1988. 509 p. p.
-
53
FEY, E.; SANTOS, S. R. Planejamento de um sistema agrcola utilizando
programao linear.. Congresso e Mostra de AgroInformtica, Ponta Grossa,
2000.
FROSSARD, A. C. P. Programao linear: Maximizao de lucros e
minimizao de custos. Revista Cientfica da Faculdade Loureno Filho. v. Vol.
6 , n. 1, p. 19-48, 2009.
GITOTTI, L. J.; NISHIMURA, V. S.; MESQUITA, M. A. Simulao em planilhas
para programo de ordens de produo em sistemas Job Shop. XXXI
Encontro NAcional de Engenharia de Produo , Belo Horizonte, 2011.
GRANDI, B. Uso da programao linear, atravs de planilha eletrnica
(Excel), como auxlio no planejamento de sistemas de produo agrcola. p.
5 Congresso e Mostra de AgroInformtica, Ponta Grossa, 2000.
JNIOR, A. D. C. G.; SOUZA, M. J. F. Solver (excel): Manual de Referncia.
Apostila, Universidade Federal de Ouro Preto, Ouro Preto, 2004.
JNIOR, J. C. M. Programao linear no planejamento agregado de
produo e vendas de uma indstria siderrgica. 2009. 77 f. Dissertao
(Mestrado em Engenharia de Produo), Universidade Federal de MInas Gerais,
Belo Horizonte, 2009.
JNIOR, J. F. D. A.; SILVA, A. B. D. Um sistema de apoio deciso baseado
em planilhas eletrnicas para o planejamento da produo na indstria de
laticnios. Revista Brasileira de Agroinformtica. v. Vol. 7, n. n. 2, p. 17-31, 2005.
KLANN, R. et al. Utilizao da programao linear na otimizao de
resultados de uma empresa do ramo de transporte rodovirio de cargas. Vol.
1, ABCustos Associao Brasileira de Custos, [S.l.], 2010.
LEON, L.; PRZASNYSKI, Z.; SEAL, K. C. Spreadsheets and OR/MS models: an
enduser perspective. Interfaces. p. 92-104, 1996.
-
54
MARETH, T. et al. Programao linear como ferramenta de apoio a gesto de
custos: Um estudo de caso em uma indstria de usinagem. Revista Eletrnica
Pesquisa Operacional para o Desenvolvimento. v. Vol.4, n. 2 Edio, Rio de
Janeiro, p. p. 125-138, 2012.
MIGLIOLI, M.; OSTANEL, L. H.; TACHIBANA, W. K. Planilhas eletrnicas como
ferramentas para apoio deciso e gerao de conhecimento na pequena
empresa. p. 8 XXIV Encontro Nacional de Engeneharia de Produo ,
Florianpolis, 2004.
MIRANDA, J.; MARTINS, V. F.; FARIA, A. F. D. O uso da programao linear
num contexto de laticnios com vrias restries na capacidade produtiva.
Revista Custos e @gronegcio. v. Vol. 3, n. Edio Especial, p. 40 - 58, 2007.
MUNHOZ, J. R.; MORABITO, R. Um modelo baseado em programao linear
e programao de metas para anlise de um sistema de produo e
distribuio de suco concentrado congelado de laranja. Revista Gesto &
Produo. v. Vol. 8, n. n.2, p. 139-159, ago. 2001.
NETO , A. R.; ZANELLA, C. Planejamento da produo com a utilizao do
solver-excel na empresa Bondio Alimentos S.A. XXVII Encontro NAcional de
Engenharia de Produo , Foz do Iguau, 2007.
NETO, A. R.; DEIMLING, M. F.; TOSATI, M. C. Aplicao da programao
linear no planejamento e controle de produo: Definio do mix de
produo de uma indstria de bebidas. p. 10 XIII SIMPEP, Bauru, 2006.
OENNING, V. et al. Teoria das restries e programao linear. Uma anlise
sobre o enfoque de otimizao da produo. p. 8 XXIV Encontro Nacional de
Engenharia de Produo , Florianpolis, 2004.
OLISZESKI, C. A. N. Modelos de planejamento agrcola: Um cenrio para
otimizao de processos agroindustriais. Dissertao (Mestrado em
Engenharia de Produo - Programa de de Ps-Graduao em Tenologia),
Universidade Tecnolgica Federal do Paran, Ponta Grossa, 2010.
-
55
OLIVEIRA, L. V. Utilizao da programao linear para produo de sopa
desidratada em leito de jorro. VII Congresso Brasileiro de Engenharia Qumica
em Iniciao Cientfica, Uberlndia, 2009.
OLIVEIRA, V. A. D. Programao da produo de um estaleiro nutico. 2011.
126 f. Dissertao (Mestrado em Engenharia Mecnica e de Materiais),
Universidade Tecnolgica Federal do Paran, Curitiba, 2011.
PAULO, E. et al. Aplicao da programao linear para reduo de custos de
produo: Enfoque sobre o planejamento de produo e do quadro
funcional. p. 17 Fundao Visconde de Cairu, Salvador, 2003.
PEKNY, J. F.; REKLAITIS, G. V. Towards the Convergence of theory and
practice: A technoloy guide for scheduling/planning methodology in
proceedings of the foundations of computer aided process operations. p. 1-
20 Conference - FOCAPO, Snowbird. Utah, 1998.
POLON, P. E. Otimizao da produo da indstria de embutidos. Tese
(Doutorado em Engenharia Qumica), Universidade Estadual de Maring,
Maring, 2010.
ROCHA, P. T. Programao matemtica da produo em processos batelada
utilizando planilhas do Excel com interface amigvel. Dissertao de
Mestrado em Engenharia Qumica, Universidade Estadual de Maring, Maring,
2011.
SEVERO, L. S. Aplicao de modelo de programao da produo na
indstria de couros. Dissertao de Mestrado em Engenharia Qumica,
Universidade Federal do Rio Grande do Sul, Porto Alegre, 2007.
VIEIRA, C. et al. Otimizao de um processo produtivo por meio do uso
conjunto da teoria das restries com programao linear: Estudo de caso
no segmento de plsticos descartveis. p. 13 XXXI Encontro Nacional de
Engenharia de Produo, Belo Horizonte, 2011.
-
56
ZACCARELLI, S. B. Programao e controle da produo. 6 Edio. So
Paulo: Pioneira, 1982. 292 p. p.
-
57
APNDICE A Manual de utilizao da Interface de Programao
da Produo por Programao Linear Interface PPPL
-
58
-
59
-
60
-
61
-
62
-
63
APNDICE B Macros: Cdigo VBA
Macro 1 Interface Inicial
Private Sub CommandButton1_Click() 'Testar se alguma opo de aplicao foi selecionada Dim Checar As Boolean Dim C As Object Checar = False For Each C In Controls If TypeName(C) = "OptionButton" Then If C.Value = True Then Checar = True End If End If Next C 'Caso no encontre nenhuma opo seleciona mostrar mensagem de erro If Checar = False Then MsgBox "Selecione uma opo de Aplicao" Exit Sub End If 'Caso tudo estaja selecionado seguir em frente 'Este calcula o caso de Aplicao Geral 'Primeiramente testa se o nmero de variveis foi fornecido If TextBox3 = "" Then MsgBox "Informe o nmero de variveis" Exit Sub End If Var = TextBox3.Value UserForm1.Hide ' 'Macro 1 'Cria a planilha na forma correta de aplicao Solver ' ' Range("A1").Select ActiveCell.FormulaR1C1 = "Planejamento de Produo por Programao Linear" With Selection.Font .Name = "Calibri" .Size = 18 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone
-
64
.ThemeColor = xlThemeColorLight1 .TintAndShade = 0 .ThemeFont = xlThemeFontMinor End With Selection.Font.Italic = True Range("D2").Select ActiveCell.FormulaR1C1 = "N de variveis=" Columns("D:D").Select Columns("D:D").EntireColumn.AutoFit Range("A4").Select ActiveCell.FormulaR1C1 = "Funo Objetivo" Range("D5").Select ActiveCell.FormulaR1C1 = "Total funo Otimizada" Columns("D:D").Select Columns("D:D").EntireColumn.AutoFit Range("D5").Select ActiveCell.FormulaR1C1 = "Total funo obj." Range("D7").Select ActiveCell.FormulaR1C1 = "Varivel Otimizada" Columns("D:D").Select Columns("D:D").EntireColumn.AutoFit Range("E7").Select ActiveCell.FormulaR1C1 = "Valor" Range("A7").Select ActiveCell.FormulaR1C1 = "Coeficientes" Columns("B:B").Select Columns("A:A").ColumnWidth = 11.86 Range("B7").Select ActiveCell.FormulaR1C1 = "Valor" Range("A4:E4").Select Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone With Selection.Borders(xlEdgeLeft) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlThin End With With Selection.Borders(xlEdgeTop) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlThin End With Selection.Borders(xlEdgeBottom).LineStyle = xlNone With Selection.Borders(xlEdgeRight) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlThin End With Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Dim z_obj As Integer 'Cria as colunas das n variveis For z_obj = 1 To Var
-
65
Range("A" & z_obj + 7).Select ActiveCell.FormulaR1C1 = "x" & z_obj Next z_obj Dim w As Integer 'Cria as colunas das n variveis a ser otimizada For w = 1 To Var Range("D" & w + 7).Select ActiveCell.FormulaR1C1 = "c" & w Next w Range("E2").Select ActiveCell.FormulaR1C1 = "" & Var UserForm2.Show End Sub Private Sub CommandButton2_Click() UserForm1.Hide End Sub
Macro 2 Interface da Funo Objetivo
Option Explicit Private Sub CommandButton1_Click() ' 'Checa se todos os parmetros fora preenchidos Dim Checar As Boolean Dim C As Object Checar = False For Each C In Controls If TypeName(C) = "OptionButton" Then If C.Value = True Then Checar = True End If End If Next C If Checar = False Then 'Caso no encontre nenhuma opo seleciona mostrar men-sagem de erro MsgBox "Selecione uma opo de Otimizao" Exit Sub End If ' 'Insere o somatrio da funo objetivo Call SomatorioObjetivo
-
66
' 'Marcada a opo, seguir em frente UserForm2.Hide UserForm3.Show End Sub Private Sub CommandButton2_Click() UserForm2.Hide UserForm1.Show End Sub Private Sub CommandButton3_Click() Dim w w = Plan1.Range("T5").Value If w < Range("E2") Then Dim q q = Plan1.Range("B65000").End(xlUp).Row Range("B" & q + 1).Select ActiveCell.FormulaR1C1 = TextBox1.Text Range("T5").Select ActiveCell.FormulaR1C1 = w + 1 TextBox1 = "" Call PreencherListBox Else MsgBox "Todas as variveis j foram preenchidas!" TextBox1 = "" End If End Sub Private Sub OptionButton1_Click() 'MMV usado para se referir ao MaxMinVal do parametro SolverOk ' 'Caso deseja-se Maximizar a funo objetivo ' If OptionButton1.Value = True Then Range("T4").Value = 1 End If End Sub Private Sub OptionButton2_Click() ' 'Caso deseja-se Minimizar a funo objetivo ' If OptionButton2.Value = True Then Range("T4").Value = 2 End If End Sub Private Sub UserForm_Initialize() 'ao inicializar o form preenche o controle Call PreencherListBox
-
67
End Sub Sub PreencherListBox() Dim lastRow As Long Dim i As Integer ListBox1.Clear With ListBox1 'define n colunas .ColumnCount = 2 End With ' Verifica qual a ultima linha preenchida lastRow = Plan1.Range("A65000").End(xlUp).Row 'adiciona dados For i = 8 To lastRow Me.ListBox1.AddItem Plan1.Range("A" & i) Me.ListBox1.List(Me.ListBox1.ListCount - 1, 1) = Plan1.Range("B" & i) Next End Sub Sub SomatorioObjetivo() ' 'Adiciona a somatria da funo objetivo Dim f As String 'Salva o somatrio Dim y As String 'Intermedirio para o somatrio Dim m As Long 'Contador para percorrer todos os coeficientes f = "=" For m = 1 To Plan1.Range("E2").Value y = "B" & m + 7 & "*E" & m + 7 f = f & "+" & y Next m Range("E5").Select 'Insere o somatrio na clula correspondente ActiveCell.Formula = f End Sub
Macro 3 Interface das Restries
Option Explicit Private Sub CommandButton1_Click() Mdulo1.Solver UserForm3.Hide UserForm5.Show End Sub Private Sub CommandButton3_Click()
-
68
UserForm4.Show End Sub Private Sub UserForm_Activate() ' 'Preenche ListBox com o nmero de restries inseridas Call PreencherListBoxRestricoes End Sub Private Sub UserForm_Initialize() ' 'Cria o cabealho das Restries ' Range("H4:I4").Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False End With Selection.Merge ActiveWindow.SmallScroll ToRight:=2 ActiveCell.FormulaR1C1 = "Restries" Range("G4:I4").Select Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone With Selection.Borders(xlEdgeLeft) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlThin End With With Selection.Borders(xlEdgeTop) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlThin End With Selection.Borders(xlEdgeBottom).LineStyle = xlNone With Selection.Borders(xlEdgeRight) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlThin End With
-
69
Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone ' 'Cria um contador para construo da planilha de restrio ' Range("T7").Select ActiveCell.FormulaR1C1 = 7 ' 'Cria um contador de restries ' Range("T8").Select ActiveCell.FormulaR1C1 = 1 End Sub Sub PreencherListBoxRestricoes() Dim sa ListBox1.Clear With ListBox1 .ColumnCount = 1 End With sa = Plan1.Range("T8") Me.ListBox1.AddItem sa End Sub
Macro 4 Interface de adio de restries
Option Explicit Private Sub CommandButton1_Click() '################################ 'Checar se tudo foi preenchido '################################ 'Checa se foi fornecido valores dos coeficientes If Range("T6") = 0 Then MsgBox "Nenhum valor dos coeficientes foram Digitados" Exit Sub End If If Range("T6") < Range("E2") Then MsgBox "Ainda falta valores dos coeficientes" Exit Sub End If 'Checa se foi selecionado o igualador Dim Checar As Boolean Dim C As Object Checar = False For Each C In Controls If TypeName(C) = "OptionButton" Then If C.Value = True Then
-
70
Checar = True End If End If Next C 'Caso no encontre nenhuma opo seleciona mostrar mensagem de erro If Checar = False Then MsgBox "Selecione o igualador: = !" Exit Sub End If 'Checa se foi dado valor a igualdade If TextBox2 = "" Then MsgBox "Fornea o valor da igualdade ou desigualdade" Exit Sub End If '################################# 'Caso tudo OK, prosseguir '################################# 'Inserir somatrio das multiplicaes LHS Call Somatorio ' 'Conta para a prxima restrio Dim d As Integer d = Plan1.Range("T7") d = d + Range("E2") + 5 Range("T7").Select ActiveCell.FormulaR1C1 = "" & d ' 'Conta o nmero de restries Dim h As Integer h = Plan1.Range("T8") h = h + 1 Range("T8").Select ActiveCell.FormulaR1C1 = "" & h ' 'Controle para manter o valor de t Range("T6").Select ActiveCell.FormulaR1C1 = 0 UserForm4.Hide End Sub Private Sub CommandButton3_Click() ' 'Checagem se foi digitado o valor da varivel If TextBox1 = "" Then
-
71
MsgBox "Nenhum valor foi digitado!" Else ' 'Caso digitado, armazena valor na clula correspondente Dim w w = Plan1.Range("T6").Value 'Controla o nmero de variveis digitadas If w < Range("E2") Then Dim q q = Plan1.Range("I65000").End(xlUp).Row Range("I" & q + 1).Select ActiveCell.FormulaR1C1 = TextBox1.Text Range("T6").Select 'Controle do nmero de variveis adiciona-das ActiveCell.FormulaR1C1 = w + 1 TextBox1 = "" Call PreencherListBox Else MsgBox "Todas as variveis j foram preenchidas!" TextBox1 = "" End If End If End Sub Private Sub CommandButton4_Click() UserForm4.Hide End Sub Private Sub CommandButton5_Click() '################################ 'Checar se tudo foi preenchido '################################ 'Checa se foi fornecido valores dos coeficientes If Range("T6") = 0 Then MsgBox "Nenhum valor dos coeficientes foram Digitados" Exit Sub End If If Range("T6") < Range("E2") Then MsgBox "Ainda falta valores dos coeficientes" Exit Sub End If 'Checa se foi selecionado o igualador Dim Checar As Boolean Dim C As Object Checar = False
-
72
For Each C In Controls If TypeName(C) = "OptionButton" Then If C.Value = True Then Checar = True End If End If Next C 'Caso no encontre nenhuma opo seleciona mostrar mensagem de erro If Checar = False Then MsgBox "Selecione o igualador: = !" Exit Sub End If 'Checa se foi dado valor a igualdade If TextBox2 = "" Then MsgBox "Fornea o valor da igualdade ou desigualdade" Exit Sub End If '################################# 'Caso tudo OK, prosseguir '################################# 'Inserir somatrio das multiplicaes LHS Call Somatorio ' 'Conta para a prxima restrio Dim d As Integer d = Plan1.Range("T7") d = d + Range("E2") + 5 Range("T7").Select ActiveCell.FormulaR1C1 = "" & d ' 'Conta o nmero de restries Dim h As Integer h = Plan1.Ra